计算机硬件组成


一.计算机硬件五大单元

回到顶部

计算机系统分为硬件和软件两大部分。硬件是计算机系统的可见部分,是软件运行和存储的基础。软件则是控制硬件操作的指令序列。
linux操作系统与所运行的硬件环境密切相关,如果想彻底理解操作系统运行的全过程,那么就需要了解它所运行的计算机硬件组成原理。 以常见的个人计算机主机或服务器工作站主机为例。通过观察可以发现,一台个人台式电脑主要由鼠标、键盘、显示器、主机这几大部分组成。这些设备可以分为如下三大类:
1.输入设备:包括键盘、鼠标、扫描仪、手写板、触控屏等;
2.主机部分:主机中最主要的就是主板以及主板上的中央处理器(CPU)、主存储器(内存)、硬盘以及显卡等适配卡设备;
3.输出设备:包括屏幕、打印机等。
计算机通过输入设备如鼠标与键盘将数据输入到主机里面,然后由主机的功能处理成为图表或文章等信息后, 将结果输出到屏幕或打印机等输出设备。
主机里面最重要的是主板,主板上面有各种接口标准的插槽,上面安插了中央处理器CPU、主存储器、硬盘以及一些适配卡设备如显卡等。 大部分智能手机将这些组件直接焊接在主板上而不是插卡!

计算机硬件分为五大基本单元,分别为算数运算单元、逻辑控制单元、存储器单元、输入单元和输出单元。
五大单元中最重要的控制单元和算术逻辑运算单元被整合到中央处理器CPU(Central Processing Unit)中!
CPU作为具有特定功能指令集的芯片, 主要工作在于管理与运算,CPU内部又可分为两个主要的单元,分别是算数逻辑单元与控制单元。 其中算数逻辑单元负责程序运算与逻辑判断,控制单元则主要协调各周边组件与各单元间的工作。
其他三大单元对应的设备还有哪些呢? 主机内的设备大多是通过主板(mainboard)连接在一起, 主板上面有个连结沟通所有设备的芯片组,芯片组可以将所有单元的设备连接起来, 系统单元:系统单元包括CPU与内存及主板相关组件。主板上有很多的连接接口与相关的适配卡, 包括网络卡、磁盘阵列卡、还有显示适配器等。对于3D游戏来说显示适配器是非常重要的,与显示的精细度、色彩与分辨率都有关系。
存储单元:包括主存储器(main memory, RAM)与外部辅助存储设备,辅助存储设备包括硬盘、软盘、光盘、磁带等。
也可以将硬盘、光盘等外部存储设备看作输入设备或输出设备。
输入、输出单元:常用的输入设备有键盘鼠标以及各种传感器设备! 输出设备有显示器、打印机、音效喇叭、HDMI电视、投影仪、蓝芽耳机等!有些设备既可以作为输出设备也可以作为输入设备例如触摸屏! CPU执行运算与判断的数据从哪里来呢? CPU读取的数据都是从主存储器来的! 主存储器内的数据则是从输入单元传输进来!而CPU处理完毕的数据也必须要先写回主存储器中, 最后数据才从主存储器传输到输出单元。
所有的数据都要经过主存储器的传输, 如果内存的容量太小,就会影响数据的读写效率,严重影响系统的整体性能! 对于Linux服务器,要加快系统性能,通常就是将内存容量加大。
计算机由五大基本单元组成,包括CPU内部的控制单元和算数逻辑单元、存储器单元、输入单元、输出单元。如下图所示: 计算机结构图 CPU是整个计算机系统的控制中心,所有的单元都是由CPU内部的控制单元负责协调, CPU处理的数据(不管是程序还是一般文件数据)来自于主存储器,CPU控制指令控制内存数据的读写! 当内存不足时系统的性能就会变差!也是为什么现在人们买智能型手机时,对于可用内存的要求都很高的原因!

二.微型计算机硬件组成原理

回到顶部

传统微型计算机硬件组成结构如下图所示: 传统微型计算机组成框图 其中,CPU作为系统的处理中心,通过总线接口与其他部分相连,CPU通过地址线、数据线和控制信号线组成的本地总线(或称为内部总线) 与系统其他部分进行数据通信。
地址线用于提供内存或IO设备的地址,即指明需要读/写数据的具体位置。
数据线用于在CPU和内存或IO设备之间提供数据传输的通道,而控制线则负责指挥执行的具体读/写操作。
对于使用80386CPU的PC机,其内部地址线和数据线都分别有32根,即都是32位的。因此地址寻址空间范围有2^32字节,从0到4GB。
图中上部控制器和存储器接口通常都集成在计算机主板上,这些控制器分别都是以一块大规模集成电路芯片为主组成的功能电路。 例如,中断控制器由 Intel 8259A 或其兼容芯片构成;DMA 控制器通常采用Intel 8237A 芯片构成;定时计数器的核心则是 Intel 8253/8254 定时芯片; 键盘控制器使用的是 Intel 8042芯片来与键盘中的扫描电路进行通信。

控制卡(或者称为适配器)通过扩展插槽与主板上系统总线连接。总线插槽是系统地址总线、数据总线和控制总线与扩展设备控制器的标准连接接口。 这些总线接口标准通常有工业标准结构ISA(Industry Standard Architecture)总线、扩展工业标准结构总线EISA(Extented ISA)、 外围组件互连PCI(Peripheral Component Interconnect)总线、加速图形端口AGP(Accelerated Graphics Port)视频总线等。 这些总线接口的主要区别在于数据传输速率和控制灵活性方面。随着计算机硬件的发展,传输速率更高、控制更灵活的总线接口还在不断推出, 例如采用串行通信点对点技术的高速PCIE (PCI Express)总线。 最初的 80386 机器上只有 ISA 总线,因此系统与外部 IO 设备最多只能使用 16 位数据线进行数据传输。

随着计算机技术的发展,很多原来使用控制卡来完成的功能(例如硬盘控制器功能)都已经集成在计算机主机板上少数几个超大规模集成电路芯片中, 几个甚至是一个这样的芯片就确定了主机板的主要特性和功能,并且为了让系统的不同部分都能达到其最高传输速率,总线结构也发生了很大变化。 现代PC机的组成结构通常可以使用下图来描述: 现代PC机芯片集框图 除了CPU以外,现代PC机主板主要使用2个超大规模芯片构成的芯片组或芯片集(Chipsets)组成:北桥(Northbridge)芯片和南桥(Southbridge)芯片。 北桥芯片用于与CPU、内存和AGP视频接口,这些接口具有很高的传输速率。北桥芯片还起着存储器控制作用,因此Intel把该芯片标号为MCH(Memory Controller Hub)芯片。 南桥芯片用来管理低、中速的组件,例如,PCI 总线、IDE 硬盘接口、USB 端口等,因此南桥芯片的名称为ICH(IO Controller Hub)。 之所以用“南、北”桥来分别统称这两个芯片,是由于在 Intel 公司公布的典型 PC 机主板上,它们分别位于主版的下端和上端(即地图上的南部和北部)位置,并起着与 CPU 进行通道桥接的作用。

虽然总线接口发生了很大变化,甚至今后北桥和南桥芯片都将会合二为一,但是对于我们编程人员来说,这些变化仍然与传统的PC机结构兼容。 因此为传统 PC 机硬件结构编制的程序仍然能运行于现在的PC机上。这从Intel的开发手册上可以证实这个结论。 所以为了便于入门学习,我们仍然以传统PC机结构为框架来讨论和学习PC的组成和编程方法,当然这些方法仍然适合于现代PC机结构。

个人计算机架构与相关设备组件

回到顶部

一般消费者常说的计算机通常指的就是个人计算机x86架构, Linux早期也是依据x86的架构发展而来!
早期两大主流x86开发商Intel和AMD的CPU架构与设计理念有些许差异。 随着两者互相借鉴学习,目前架构已经基本类似。目前市场占有率最大的主要是Intel, 某款Intel主板如下图所示:
主板结构 由于主板是链接各组件的一个重要项目,因此在主板上面沟通各部组件的芯片组设计优劣,就会影响 效能不少喔! 早期的芯片组通常分为两个网桥来控制各组件的沟通, 分别是:
(1)北桥:负责链接速度较快的CPU、主存储器与显示适配器界面等组件;
(2)南桥:负责连接速度较慢的设备接口, 包括硬盘、USB、网络卡等等。
不过由于北桥最重要的就是CPU与主存储器之间的桥接,因此目前的主流架构中, 大多将北桥内存控制器整合到CPU封装中了。 早期芯片组分南北桥,北桥可以连接CPU、主存储器与显示适配器。 只是CPU要读写到主存储器的动作,还需要北桥的支持,也就是CPU与主存储器的交流, 会瓜分掉北桥的总可用带宽,真浪费! 因此目前将记忆控制器整合到CPU后,CPU与主存储器之间的沟通是直接交流,速度较快之外,也不会消耗更多的带宽!
主板上面设计的插槽主要有 CPU (Intel LGA 1150 Socket)、主存储器 (DDR3 3200 support)、显示适配器界面 (PCIe3.0)、SATA 磁盘插槽 (SATA express)等

initroot编辑整理,转载请注明www.initroot.com

100次点赞 100次阅读