经典的北桥和南桥架构
北桥和南桥作为处理器与内存以及外设沟通的桥梁。处理器和内存系统通过前端总线(FSB)相连接,当处理器需要读写和回写数据就通过前端总线和内存控制器通信。
该架构中所有的处理器共用一条前端总线与北桥相连,北桥中集成单一内存控制器。北桥作为主桥,主要用来处理高速信号,通常负责与处理器相关的操作,并且控制内存AGP,PCI数据等在北桥内部传输,南桥作为IO桥,负责IO总线之前的通信,比如PCI总线、SATA、USB等。
在该种系统架构中,所有的数据交换都需要通过北桥:
- 处理器访问内存
- 处理访问所有外设
- 处理器之间的数据交换
- 挂载南桥的所有设备访问内存
该架构的缺陷:
其一北桥成为瓶颈。当北桥出现阻塞时,所以有的设备和处理器都要瘫痪。其二对内存的访问,所有的外部设备以及处理器都争相访问内存时,增大了对北桥带宽的竞争,而内桥到内存之间也只有一条总线
改善经典南桥和北桥架构
为了改善对内存访问的瓶颈,单独隔离出内存控制器以协调对应内存的交互,这样北桥可以和多个内存相连。
该架构增加了内存的访问带宽,缓解了不同设备对同意内存访问的拥塞问题。
该架构的缺陷:
并未解决单一北桥芯片的瓶颈问题
NUMA架构(Non-Uniform Memory Architecture, 非一致性内存架构)
为了改善北桥瓶颈,取消北桥芯片,多CPU优先访问每个处理器的本地内存,访问本地内存的时间短,而访问其他的处理器的本地内存即远程内存。将内存的带宽增加到以前的四倍。
NUMA 非一致内存访问结构 , 可以支持CPU扩展, 可以扩展上百 CPU 处理器。
NUMA架构有助于系统处理事务,有较很高的性能。
该架构的缺陷:
当处理器访问远程内存时,至少要经过一个其他处理器,这样导致访问内存的时间变长,且不同的处理所需要的时间也不同。