Ubuntu Linux中PCIe资源分配:TOMAHAWK

硬件平台:i3 9100T + 微星Z370 TOMAHAWK

最近将个人开发环境从2代Core迁移到9代Core平台,仍然是4核心(i5 2500 -> i3 9100T),但是低功耗(TDP 35W)、睿频3.9Ghz以及完美支持4K电影等算是性价比相当高的处理器,可以参考I3-9100T处理器规格

在多个可选方案的反复对比后,我选择了微星的Z370 TOMAHAWK主板:性价比、良好的可扩展性是它的亮点,TOMAHAWK说明书中提供的主板结构图:

图1:主板结构示意图

TOMAHAWK主板的IO可扩展性

TOMAHAWK主板提供丰富的外设接口:本人为了验证主板资源分配方案,几乎把可用的PCIe 插槽都接上设备,有图有真相:

图2:Ubuntu中显示主板PCIe Port分配

TOMAHAWK利用IntelZ370 PCH提供的高速IO通道(High Speed I/O Lanes)进行灵活配置,提供丰富的IO可扩展性。一方面CPU通过DMI3.0总线连接Z370芯片,理论最大带宽为3.94GB/s(NVME SSD,万兆网络设备对PCIe带宽需求驱动下,DMI总线将成为瓶颈);另一方面Z370集成USB 3.0控制器、SATA 6GB控制器、千兆网络控制器,同时提供最大24条PCIe 3.0通道供用户扩展IO设备。图3为Tomahawk的PCIe插槽示例图,其中PCI_E1是x16的插槽并且直连CPU,可以用来接x8,x16的图形卡,高速NVME SSD; PCI_E2、PCI_E3、PCI_E5为x1插槽;PCI_E4和PCI_E6有点特殊,看起来都可以插入一个x8、x16的PCIe设备,但PCI_E4只能提供x4的带宽,而PCI_E6只能提供x1的带宽。

图3:Tomahawk主板的PCIe Slot信息

本文利用图2的PCIe拓扑分析Ubuntu Linux下TOMAHAWK-Z370如何连接外部设备并分配高速IO通道。TOMAHAWK提供了2个M.2插槽、6个PCIe插槽、6个SATA3接口以及一堆USB扩展接口(后置2个USB 2.0接口,2个USB 3.1Gen2接口,4个USB 3.1 Gen1接口;前置4个USB 2.0接口,4个USB 3.1 Gen1接口),由于Z370 利用IO通道复用的功能进行扩展,图4揭示了TOMAHAWK的M.2,SATA和PCIe的设备接入组合可用方案。

图4:TOMAHAWK M.2 SATA PCI_E可用组合

https://ark.intel.com/content/www/cn/zh/ark/products/125903/intel-z370-chipset.html

https://www.intel.com/content/www/us/en/products/docs/chipsets/200-series-chipset-pch-spec-update.html

https://www.intel.cn/content/dam/www/public/us/en/documents/datasheets/200-series-chipset-pch-datasheet-vol-1.pdf

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容