片上网络设计:原理、挑战与创新解决方案
1. 片上网络架构基础
片上网络(NoC)是应对通信中心趋势的一种架构,典型的NoC架构由多段线路和路由器组成。在城市街区风格的NoC布局中,线路和路由器的配置类似于城市的街道网格,客户端(如逻辑处理器核心)则位于由线路分隔的“街区”上。网络接口模块将客户端逻辑(处理器核心)生成的数据分组转换为固定长度的流量控制数字(flits)。与数据分组相关的flits包括一个头(head)flit、一个尾flit以及若干中间的体flits。这些flit数组将以逐跳的方式从一个路由器路由到其相邻路由器,直至到达目标目的地。
在城市街区风格的NoC中,每个路由器有五个输入端口和五个输出端口,分别对应北、东、南、西方向以及本地处理元素。每个端口通过一组物理互连线路(通道)连接到相邻路由器的另一个端口。路由器的功能是将从每个输入端口进入的flits路由到合适的输出端口,然后导向最终目的地。为实现这一功能,路由器为每个输入端口配备了一个输入缓冲区、一个5×5的交叉开关以将流量重定向到所需的输出端口,以及必要的控制逻辑以确保路由结果的正确性。通常,对于每个数据分组,相应的头flit指定其预期目的地。路由器控制逻辑在检查头flit后,将确定如何路由该分组。
2. 片上网络的分层设计
片上网络设计通常分为物理层、网络层和应用层,各层有不同的关注点和设计挑战。
2.1 物理层
物理层主要关注信号驱动器和接收器,以及线路上信号排序和流水线的设计技术。随着技术发展到超深亚微米(DSM),较小的电压摆幅和缩小的特征尺寸导致噪声容限降低,使得片上互连对噪声的免疫力下降,增加了数据传输中的不确定性(瞬态故障)。