前面章节从冯·诺依曼结构出发,介绍了现代计算机的理论结构及其组成部分。随着应用需求的变化和工艺水平的不断提升,冯·诺依曼结构中的控制器和运算器逐渐演变为计算机系统中的中央处理器部分,而输入、输出设备统一通过北桥和南桥与中央处理器连接,中央处理器中的图形处理功能则从中央处理器中分化出来形成专用的图形处理器。因此,现代计算机系统的硬件结构主要包括了中央处理器、图形处理器、北桥及南桥等部分。
中央处理器(Central Processing Unit,简称CPU)主要包含控制器和运算器,在发展的过程中不断与其他部分融合。传统意义上的中央处理器在处理器芯片中更多地体现为处理器核,现代的处理器芯片上往往集成多个处理器核。
图形处理器(Graphic Processing Unit,简称GPU)是一种面向2D和3D图形、视频、可视化计算和显示优化的处理器。作为人机交互的重要界面,GPU在计算机体系结构发展的过程中,担任了越来越重要的角色。除了对图形处理本身之外,还开始担负科学计算加速器的任务。
北桥(North Bridge)是离CPU最近的芯片,主要负责控制显卡、内存与CPU之间的数据交换,向上连接处理器,向下连接南桥。
南桥(South Bridge)主要负责硬盘、键盘以及各种对带宽要求较低的IO接口与内存、CPU之间的数据交换。
5.3.1 CPU-GPU-北桥-南桥四片结构
现代计算机的一种早期结构是CPU-GPU-北桥-南桥结构。在该结构中,计算机系统包含四个主要芯片,其中CPU(处理器)芯片、北桥芯片和南桥芯片一般是直接以芯片的形式安装或焊接在计算机主板上,而GPU则以显卡的形式安装在计算机主板的插槽上。
在CPU-GPU-北桥-南桥四片结构中,计算机的各个部件根据速度快慢以及与处理器交换数据的频繁程度被安排在北桥和南桥中。CPU通过处理器总线(也称系统总线)和北桥直接相连,北桥再通过南北桥总线和南桥相连,GPU一般以显卡的形式连接北桥。内存控制器集成在北桥芯片中,硬盘接口、USB接口、网络接口、音频接口以及鼠标、键盘等接口放在南桥芯片中。此外,在北桥上还会提供各种扩展接口用于其他功能卡的连接。采用该结构的微机系统
与英特尔奔腾处理器搭配的430HX芯片组就采用了这样的四片结构。其北桥芯片使用82439HX,南桥芯片采用82371SB,通过PCI总线扩展外接显卡,与处理器组成四片结构,作为计算机系统的主要部分。
5.3.2 CPU-北桥-南桥三片结构
现代计算机的一种典型结构是CPU-北桥-南桥结构。在该结构中,系统包含三个主要芯片,分别为CPU芯片、北桥芯片和南桥芯片。三片结构与四片结构最大的区别是,前者GPU功能被集成到北桥,即一般所说的集成显卡。
在CPU-北桥-南桥三片结构中,CPU通过处理器总线和北桥直接相连,北桥再通过南北桥总线和南桥相连。内存控制器、显示功能以及高速IO接口(如PCIE等)集成在北桥芯片中,硬盘接口、USB接口、网络接口、音频接口以及鼠标、键盘等接口部件放在南桥芯片中。随着计算机技术的发展,更多的高速接口被引入计算机体系结构中,在北桥上集成的IO接口的速率也不断提升。
英特尔845G芯片组就采用类似的三片结构。其北桥芯片使用82845G,集成显示接口,南桥芯片采用82801DB,与处理器组成三片结构,作为计算机系统的主要部分。
5.3.3 CPU-弱北桥-南桥三片结构
随着工艺和设计水平的不断提高,芯片的集成度不断提高,单一芯片中能够实现的功能越来越复杂。内存接口的带宽需求超过了处理器与北桥之间连接的处理器总线接口,导致内存的实际访问性能受限于处理器总线的性能。而伴随着处理器核计算性能的大幅提升,存储器的性能提升却显得幅度较小,这两者的差异导致计算机系统性能受到存储器系统发展的制约,这就是存储墙问题。
因此,对计算机系统性能影响显著的内存控制器开始被集成到CPU芯片中,从而大幅降低了内存访问延迟,提升了内存访问带宽,这在一定程度上缓解了存储墙问题。
于是,北桥的功能被弱化,主要集成了GPU、显示接口、高速IO接口(例如PCIE接口等)。
采用该结构的微机系统如图5.8所示。
相比英特尔,AMD的处理器最早将内存控制器集成到处理器芯片中,780E芯片组就采用上述三片结构,北桥芯片使用RS780E,集成HD3200 GPU,南桥芯片使用SB710,与处理器组成三片结构,作为计算机系统的主要部分。