所有提交的EM系统将被重定向到网上投稿系统.作者被要求将文章直接提交给网上投稿系统各自的日志。

多处理器片上系统片上排列网络的设计与实现

希E1,丹那·塞尔维D2
  1. M.Tech Student [DE], ECE系,CMRIT, AECS布局,班加罗尔,卡纳塔克邦,印度
  2. 教授,欧洲经委会,CMRIT AECS布局,班加罗尔,卡纳塔克邦,印度
有关文章载于Pubmed谷歌学者

更多相关文章请访问国际电气、电子和仪器工程高级研究杂志

摘要

新颖的片上网络在硅经过验证的设计,以支持有保证的流量排列在多处理器SOC应用。该网络采用了流水线电路交换技术,采用先进先出(FIFO)方法和多级网络拓扑结构相结合的动态路径设置方案。由动态路径设置方案以及错误纠正块(ECB)为任意流量排列启用的运行时路径排列。电路交换方法提供了排列的数据,其紧凑的开销可以在芯片上的系统中堆叠多个网络。通过一个0.13m的CMOS测试芯片验证了该设计的可行性和有效性。与其他设计方法相比,所提出的片上网络的实验结果实现了1.9到8.2倍的硅开销降低。

关键字

保证吞吐量,片上网络,排列网络,流水线电路交换,多级互连网络。

介绍

与片上网络相连接的多处理器片上系统(MP SoC)设计目前正在兴起,用于并行处理、科学计算等应用。排列流量,片上多处理应用表现为每个输入只向一个输出发送流量,每个输出只从一个输入接收流量的流量模式,是一种重要的流量类别。标准流量发生在通用MP soc中,例如,快速傅里叶变换(FFT)计算、多项式、排序导致洗牌排列,而转置排列则表现在矩阵转置或转角操作中。近年来,针对灵活Turbo/LDPC解码的特定应用MP soc已被开发出来,由于多模式和多标准的特性,它们表现出任意和并发的流量排列。此外,许多MP SoC应用程序(如Turbo/ LDPC解码)是实时计算的,因此,保证吞吐量(即数据无损、有保证的带宽、可预测的延迟和有序传输)对这种排列流量至关重要
在拓扑结构上,常规的直接拓扑结构,如网格和环面,在具有物理布局的二维芯片上是直观可行的。相反,Butterfly或Benes等间接拓扑的大路由器基数和高布线不规则性给物理实现带来了挑战。然而,吞吐量下降是在任意排列模式下导致的,其对单个源目标对的密集负载强调了规则拓扑。间接多级拓扑是片上流量排列密集型应用的首选。

文献综述

动态PA公共交换机架构-设置方案支持运行时路径排列改变。每个路径的设置,基于动态探测机制,从一个输入开始,寻找到相应的输出的路径。探测是在works中引入的,其中一个探测(或设置flit)在路由算法下动态发送,以建立通往目的地的路径。在网络工作中,利用耗尽有利可图回溯(EPB)来路由探针。具有完全排列的路径排列由16个路径设置组成,而具有部分排列的路径排列可由16个路径设置的子集组成。
图像
图像
对于交换技术,分组交换需要大量的片上功率和排队缓冲区(fifo),在交换节点和/或网络接口上预先计算队列深度。在路由算法中,偏转路由与最小路由相比,由于偏转数据传输需要额外的跳数,因此并不节能。此外,偏移使得数据包延迟更难以预测;因此,很难保证延迟和数据的有序下发。与传统的包交换方法不同,我们的片上网络在多级网络拓扑结构下采用了具有动态路径设置方案的电路交换机制。动态路径设置解决了无冲突排列数据的运行时路径安排的挑战。预配置的数据路径可以保证吞吐量。通过消除排队缓冲区的过度开销,实现了紧凑的实现,并在可行的运行时堆叠多个网络以支持并发排列。

片上网络拓扑

Clos网络是一种多级网络,用于构建具有数千个节点的可扩展商用多核处理器。典型的三级Clos网络定义为C (n, m, p),其中n表示p个一级交换机每个输入的数量,m是第二级交换机的数量。为了像大多数实际的MP soc一样支持16的并行度,我们建议使用C(4,4,4)作为所设计网络的拓扑。该网络具有可重新排列的特性,可以实现其输入和输出之间所有可能的排列。选择三级Clos网络和中等数量的中间交换机是为了最小化实现成本,而它仍然为网络提供了可重新排列的属性。针对所提出的网络,设计了一种流水线电路交换方案。该方案有三个阶段:设置、转移和发布。一个支持运行时路径安排的动态路径设置方案发生在设置阶段。为了支持这种电路交换方案,提出了一种开关与握手信号互连的开关。握手的比特格式包括1位请求(Req)和2位应答(Ans)。 Req = 1 is used when a switch requests an idle link leading to the corresponding downwstream switch in the setup phase. The Req = 1 is also kept during data transfer along the set up path. A Req = 0 denotes that the switch releases the occupied link. This code is used in both the setup and the release phases. An Ans = 01(Ack) means that the destination is ready to receive data from the source. When the Ans = 01 propagates back to the source, it denotes that the path is set up, then a data transfer can be started immediately. An Ans = 11(nAck) is reserved for end to end flow control when the receiving circuit is not ready to receive data due to being busy with other tasks, or overflow at the receiving buffer, etc. An Ans = 10 (Back) means that the link is blocked. This Back code is used for a back pressure flow control of the dynamic path setup scheme.

动态路径设置,以支持路径安排

所提设计的动态路径设置方案,当排列改变时支持运行时路径排列。在每个路径设置中,从输入开始寻找通往相应输出的路径,是基于动态探测机制的。介绍了探测的概念,其中探测(或设置flit)在路由算法下动态发送,以建立通往目的地的路径。在网络工作中,提出了利用穷尽有利可图回溯(EPB)来路由探针。具有完全排列的路径排列由16个路径设置组成,而具有部分排列的路径排列可由16个路径设置的子集组成。一个问题是,与Clos C(4,4,4)一起使用的基于EPB的路径设置能否实现其输入和输出之间所有可能的完全排列?经工作证明,三级Clos网络C(n, m, p)在m>n时是可重排的,在提出的C(4,4,4)网络m = n = 4中是可重排的。总是存在从空闲输入到空闲输出的可用路径。通过工作证明的EPB的穷举性,基于EPB的路径设置完全搜索在空闲输入和空闲输出之间的路径分集内所有可能的路径。直接将搜索的穷举属性应用到可重新排列的C(4,4,4)中,表明基于EPB的路径设置总能在输入和空闲输出之间的四条可能路径集中找到一条可用路径。 Based on this EPB based path-setup scheme, it is obvious that the path arrangement for full permutation can always be realized in the proposed network with C (4, 4, 4) topology.
图像
图3所示。交换机由交换机互连和路径分集容量决定。
在该网络中,每个输入发送一个包含4位输出地址的探测,以查找通往目标输出的可用路径。在搜索过程中,当探测器向前移动时,它会发现一个空闲的链接,向后移动时,它将面对一个阻塞的链接。在非重复移动中,探针在空闲输入和相应的空闲输出之间找到一条可用路径。基于EBP的路径设置方案设计了一套探测路由算法。下面的示例描述路径设置如何通过使用路径分集集来查找可用路径。假设来自源的探测(例如,交换机01的输入)试图建立到目标目的地的路径(例如,交换机22的可用输出)。首先,探测器将按10»11»12»13的顺序非重复地尝试通过第二级交换机的路径,假设链路01-10可用,探测器首先尝试链路Req = 1,然后到达交换机10。如果链路10-22可用,探针到达交换机22并满足目标输出。如果Ans = Ack,则传播回输入以触发传输阶段。如果链路10-22被阻塞,探针将移回交换机01 (Ans = back),链路01-10释放Req = 0。 From switch 01, the probe can then try the rest of idle links leading to the second stage switches in the same manner. By means of moving back when facing blocked links and trying others, the probe can dynamically set up the path in runtime in a conflict avoidance manner.

仿真结果与讨论

图像
仲裁器仿真的RTL原理图如上图所示,R(4:0)的图4显示了仲裁器的输入,由输入电路的控制信号组成。当credit和G(4:0)分别表示credit信号和grant信号时,除了这些控制信号外,仲裁器还有一些决定输入信号,即复位信号和时钟信号。
图像
仲裁器的仿真波形如上图所示,R(4:0)的图5显示了仲裁器的输入,由输入电路的控制信号组成。当credit和G(4:0)分别表示credit信号和grant信号时,除了这些控制信号外,还有一些用于仲裁的决定输入信号,这些信号被重置并与下一个寄存器的next-p信号进行时钟。
图像
交叉棒内部电路的RTL原理图如图6所示,由门组成,这些门的输入来自手动数据或任何模块,依次输出由一个多路复用器决定。所示电路是为一个输入横杆。
图像
交叉杆模拟的RTL原理图如图7所示。原理图中显示的完整交叉条是4x4输入输出线和4条选择线。
图像
图8横杆仿真结果
横杆仿真波形如图8所示。其中4x4输入输出行和4选择行。

结论

支持MPSoC应用中流量排列的片上网络设计。通过在Clos网络拓扑下使用电路交换方法与动态路径设置方案相结合,所提出的设计在运行时提供了任意流量排列,实现开销较小。经过硅验证的测试芯片验证了所提出的设计,并建议在未来的MPSoC研究中用作支持流量排列的片上基础设施ip

参考文献

  1. S. Borkar,“千核芯片——一种技术视角”,发表于Proc. ACM/IEEE Design automation。信息学报,2007,pp. 746-749。
  2. 林志信。Pham, P. Mau和C. Kim,“在基于片上网络的应用中保证吞吐量的64-PE折叠环面芯片内通信结构”,发表于《IEEE自定义集成程序》。电路学报,2009,pp. 645-648。
  3. C. Neeb, M. J. Thul,和N.Wehn,“高吞吐量信道解码器中以网络芯片为中心的交织方法”,发表于《IEEE Int》。计算机协会。电路系统。(中国科学),2005,pp. 1766-1769。
  4. H. Moussa, a . Baghdadi,和M. Jezequel,“用于灵活多处理器LDPC解码器的二进制de Bruijn片上网络”,在Proc. ACM/ IEEE设计自动化。[导读],2008,pp. 429-434。
  5. H. Moussa, O. Muller, A. Baghdadi和M. Jezequel,“用于多处理器turbo解码的基于Butterfly和benes的片上通信网络”,载于《自动程序设计》。在欧洲测试。(日期),2007,第654-659页。
  6. S. R. Vangal, J. Howard, G. Ruhl, S.迪格,H. Wilson, J. Tschanz, D. Finan, A. Singh, T. Jacob, S. Jain, V. Erraguntla, C. Roberts, Y. Hoskote, N. Borkar和S. Borkar,“65纳米CMOS中的80瓦次100瓦TeraFLOPS处理器”,IEEE J.固态电路,第43卷,no. 1。1,页29-41,2008年1月。
  7. W. J. Dally和B. Towles,互连网络的原则和实践:。加州旧金山:摩根·考夫曼,2004年。
  8. N. Michael, M. Nikolov, A. Tang, G. E. Suh,和C. Batten,“流量不确定性下的应用程序感知片上路由分析”,发表于《IEEE/ACM Int》。计算机协会。Netw。芯片技术,2011,pp. 9-16。
  9. 林志信。Pham, J. Park, P. Mau,和C. Kim,“支持片上网络有保证吞吐量的回溯波管道交换机的设计和实现,”IEEE Trans。超大规模积分。(VLSI)系统。,10.1109/TVLSI.2010.2096520.
  10. D. Ludovici, F. Gilabert, S. Medardoni, C. Gomez, M. E. Gomez, P. Lopez, G. N. Gaydadjiev和D. Bertozzi,“在纳米技术约束下评估常规片上网络设计的胖树拓扑”,Proc. design, Autom。测试欧元。相依,又美观。(DATE), 2009, pp. 562-565。
全球科技峰会