南桥芯片,这个统管外部IO的芯片组,正在逐步变得面目可憎起来。经历了ICH到PCH的转变,越来越多的人都在质疑它的存在。为什么不把PCH集成进CPU中?DMI 4个lane的小水管下面带那么多PCIe root port加各种USB 3.0/3.1和SATA port,会不会肠梗阻?今天我们一起来分析一下这么做背后深层次的原因。
南桥的江湖地位问题
熟悉计算机系统演变历史的小伙伴们都知道。很久很久以前(也没有多久了),计算机主板上有CPU、北桥(MCH)和南桥(ICH)这三个主要的芯片:
由于FSB变成了系统效能的瓶颈和对多CPU的制约,在台式机和笔记本电脑中,MCH被请进CPU中,服务器市场虽然短暂的出现了IOH,但也慢慢的被CPU吞噬。
前后简单的对比
CPU中MCH原来的部分,在桌面CPU中叫做System Agent(SA),在服务器CPU中叫做uncore(和内核core对应)。它基本还负责原来的功能,那就是内存管理和提供至少16个Lane的PCIe Root port来驱动显卡(服务器uncore还包括QPI)。这绝不是表面看起来“换个马甲”这么简单。脱离了FSB这条小细管道,内存控制器、PICe Root Port的root complex和内核之间的通信变成了ring bus乃至目前的Mesh网络这种片内总线,羊肠小路变成了高速公路。如此改变让原来的瓶颈消失了,计算机效能才在酷睿后有了质的飞跃。
作为统管大部分IO设备的江湖大佬,ICH到PCH的转变却十分的小,时至今日,除了DMI随着PCIe 3.0升级到DMI 3.0,和增加了更多的功能外,变化相对较小。很多人看他不顺眼,欲除之而后快,让江湖最后一个大佬CPU一统主板。如果也把PCH整合进CPU,单芯片解决方案,也就是SOC,会带来很多好处:
主板可以更便宜。少一块芯片的钱,主板设计简单一些,线路少些,这些都会帮助主板成本下降。南桥的设备可以摆脱DMI 3.0 8Gbps * 4的带宽限制。如果我们把PCH中高速的USB 3.0/3.1, SATA ports和PCIe root ports提供的带宽都加在一起,我们就会发现这个数字会远远高于DMI 3.0能够提供的带宽。如果将南桥整合进CPU,这些设备也就可以和原北桥的PCIe root port一样接入