《用于片上网路的容错与容变能力以及面积优化链路.pdf》由会员分享,可在线阅读,更多相关《用于片上网路的容错与容变能力以及面积优化链路.pdf(12页珍藏版)》请在专利查询网上搜索。
1、10申请公布号CN102084349A43申请公布日20110601CN102084349ACN102084349A21申请号200980111352122申请日2009040661/123,02020080404USG06F13/40200601G06F11/00200601H04L12/5620060171申请人亚利桑那董事会,代表亚利桑那大学行事的亚利桑那州法人团体地址美国亚利桑那申请人俄亥俄大学72发明人A劳里JMW罗夫达AK科迪A萨拉兹74专利代理机构中国国际贸易促进委员会专利商标事务所11038代理人叶勇54发明名称用于片上网路的容错与容变能力以及面积优化链路57摘要本发明提供了用。
2、于检测并校正片上网络NOC构架的路由器间链路中的传输错误的方法。NOC具有沿其总线分布的中继器。主中继器的输出与阴影中继器的输出比较并多路复用。如果这些输出相同,则多路复用器输出主中继器的输出,否则错误被检测并且多路复用器输出阴影中继器的输出。30优先权数据85PCT申请进入国家阶段日2010092886PCT申请的申请数据PCT/US2009/0395832009040687PCT申请的公布数据WO2009/146145EN2009120351INTCL19中华人民共和国国家知识产权局12发明专利申请权利要求书2页说明书6页附图3页CN102084358A1/2页21一种用于校正片上网络构架。
3、中的传输错误的方法,所述方法包括配置多个三状态中继器级用于存储数据,作为接收控制信号的响应;检测所述多个三状态中继器级之一中的错误;以及,响应于检测到中继器级中的错误校正所述错误。2如权利要求1所述的方法,其中校正所述错误包括I重新计算每个中继器级的结果;以及,II用正确值替换任何错误。3如权利要求1所述的方法,还包括响应于检测到中继器级中的错误I将所述时钟相位相移180度;以及II用正确信号覆盖错误信号。4如权利要求1所述的方法,其中,检测所述多个三状态中继器级之一中的错误包括比较第一三状态中继器生成的输出与第二三状态中继器生成的输出。5如权利要求4所述的方法,其中,所述第二三状态中继器生成。
4、的输出由阴影中继器生成。6如权利要求1所述的方法,其中,校正错误包括选择阴影中继器生成的输出并在所述三状态中继器级的输出上呈现所述阴影中继器的输出。7如权利要求1所述的方法,还包括传输指示来自所述三状态中继器级的错误存在的信号。8一种用于处理片上网络构架中的传输错误的方法,所述方法包括将位数据传输到第一三状态中继器;将所述位数据传输到第二三状态中继器;检测所述第一三状态中继器的输出与所述第二三状态中继器的输出之间的差别;以及,选择所述第二三状态中继器的输出用于传输。9如权利要求8所述的方法,还包括在将所述位数据传输到所述第一三状态中继器与将所述位数据传输到所述第二三状态中继器之间的延迟时段期间。
5、等待。10如权利要求8所述的方法,其中,检测所述第一三状态中继器的输出与所述第二三状态中继器的输出之间的差别包括将所述中继器的输出应用到比较器上的输入接头。11如权利要求10所述的方法,还包括将所述比较器的输出传输到控制块。12如权利要求8所述的方法,其中,选择所述第二三状态中继器的输出用于传输包括将所述第一三状态中继器的输出应用到多路复用器的第一输入接头,将所述第二三状态中继器的输出应用到所述多路复用器的第二输入接头,以及将所述比较器的输出应用到所述多路复用器的第三输入接头。13如权利要求12所述的方法还包括响应于检测到指示所述错误存在的所述比较器的输出来配置所述多路复用器以选择所述第二三状。
6、态中继器的输出。14如权利要求8所述的方法还包括在所述第一三状态中继器和所述第二三状态中继器上接收控制块传输的控制信号。15如权利要求14所述的方法,其中,所述控制块传输的所述控制信号指示片上网络权利要求书CN102084349ACN102084358A2/2页3构架内的路由器的拥塞状态。16如权利要求15所述的方法,其中,响应于接收指示路由器的拥塞状态的控制信号,所述第一三状态中继器和所述第二三状态中继器存储所述位数据。17一种用于控制片上网络构架中的三状态中继器级的方法,所述方法包括在控制块上接收指示三状态中继器级内的错误存在的信号;以及,响应于接收指示三状态中继器级内的错误存在的信号,传。
7、输信号到三状态中继器级,以命令所述三状态中继器级将所述三状态中继器级上的数据保留在合适的位置。18如权利要求17所述的方法,还包括响应于接收指示三状态中继器级内的错误存在的信号,将时钟相位相移180度。19如权利要求18所述的方法,还包括校正三状态中继器级内的错误。20如权利要求19所述的方法,其中,校正三状态中继器级内的错误包括I选择所述三状态中继器级中的阴影中继器的输出;以及,II用所述三状态中继器级中的所述阴影中继器的输出覆盖所述三状态中继器级内的错误。权利要求书CN102084349ACN102084358A1/6页4用于片上网路的容错与容变能力以及面积优化链路0001相关申请的交叉引。
8、用0002本专利申请要求根据35USC119E享有于2008年4月4日提交的第61/123,020号美国临时专利申请的优先权,其全部内容通过引用并入本文。技术领域0003本发明涉及电子设备中数据的存储和传输。特别地,本发明涉及用于在片上网络构架内存储和传输数据的方法。背景技术0004互补金属氧化物半导体CMOS制造和处理技术的发展已经允许电路部件的缩小,并且能够实现多个处理核到片上系统SOC平台的集成。然而,到深亚毫米制度中的部件缩放已经揭示了互连设计的问题,诸如全局线路延迟GLOBALWIREDELAY,不能如栅极延迟那么快地缩放,并且限制了在传统单芯片构架中通常使用的设计技术的效力。为了解。
9、决SOC构架中的线路延迟的问题,可能采用一组更加灵活、可扩展、分组交换构架之一,被称为片上网络NOC或OCN。发明内容0005在第一方面中,本发明提供了用于校正片上网络构架中的传输错误的方法,该方法包括I配置多个三状态中继器级用于存储数据,作为接收控制信号的响应,II检测多个三状态中继器级之一中的错误,以及III响应于检测中继器级中的错误校正该错误。在第一方面的方法的实例实现中,校正错误可以包括I门控一个时钟周期的时钟边沿,II重新计算每个中继器级的结果,以及III用正确值替换任何错误。0006第一方面的方法的实例实现还可以包括通过I相移时钟相位180度;以及II用正确信号覆盖错误信号,来响应。
10、检测到中继器级中的错误。在第一方面的方法的其他实例实现中,检测多个三状态中继器级之一中的错误可以包括比较第一三状态中继器生成的输出与第二三状态中继器生成的输出。在这样的实例实现中,第二三状态中继器生成的输出可以由阴影SHADOW中继器生成。0007在第一方面的方法的另一实例实现中,校正错误可以包括选择阴影中继器生成的输出并在三状态中继器级的输出上呈现阴影中继器的输出。第一方面的方法还可以包括传输指示来自三状态中继器级的错误存在的信号。0008在第二方面中,本发明提供了用于处理片上网络构架中的传输错误的方法,该方法包括I将位数据传输到第一三状态中继器,II将该位数据传输到第二三状态中继器,III。
11、检测第一三状态中继器的输出与第二三状态中继器的输出之间的差别,以及IV选择第二三状态中继器的输出用于传输。第二方面的方法还可以包括在将该位数据传输到第一三状态中继器与将该位数据传输到第二三状态中继器之间的延迟时段期间等待。说明书CN102084349ACN102084358A2/6页50009在第二方面的方法的实例实现中,检测第一三状态中继器的输出与第二三状态中继器的输出之间的差别可以包括将中继器的输出应用到比较器上的输入接头。在这样的实例实现中,该方法还可以包括将比较器的输出传输到控制块。0010在第二方面的方法的其他实例实现中,选择第二三状态中继器的输出用于传输可以包括将第一三状态中继器的。
12、输出应用到多路复用器的第一输入接头,将第二三状态中继器的输出应用到多路复用器的第二输入接头,以及将比较器的输出应用到多路复用器的第三输入接头。在这样的实例实现中,该方法还可以包括响应于检测指示错误存在的比较器的输出来配置多路复用器以选择第二三状态中继器的输出。0011在第二方面的方法的其他实例实现中,该方法还可以包括在第一三状态中继器和第二三状态中继器上接收控制块传输的控制信号。在这样的实例实现中,控制块传输的控制信号可以指示片上网络构架内的路由器的拥塞状态。在其他实例实现中,响应于接收指示路由器的拥塞状态的控制信号,第一三状态中继器和第二三状态中继器可以存储该位数据。0012在第三方面中,本。
13、发明提供了用于控制片上网络构架中的三状态中继器级的方法,该方法包括I在控制块上接收指示三状态中继器级内的错误存在的信号,以及II响应于接收指示三状态中继器级内的错误存在的信号,将信号传输到三状态中继器级,以命令三状态中继器级将三状态中继器级上的数据保留在合适的位置。0013在第三方面的方法的实例实现中,该方法还可以包括响应于接收指示三状态中继器级内的错误存在的信号,将时钟相位相移180度。在这样的实例实现中,该方法还可以包括校正三状态中继器级内的错误。在第三方面的方法的其他实例实现中,校正三状态中继器级内的错误可以包括I选择三状态中继器级中的阴影中继器的输出,以及II用三状态中继器级中的阴影中。
14、继器的输出覆盖三状态中继器级内的错误。附图说明0014图1示出了根据本发明的一个方面可使用的一种容错中继器的示意图。0015图2示出了根据本发明的一个方面可使用的一种路由器间链路的示意图。0016图3示出了描述根据本发明的一个方面的可以实现的一种双相位设计的时序图。具体实施方式0017根据技术缩放比例,在当前多核构架中增加的线路延迟已经导致了模块化和可扩展分组交换构架片上网络NOC范例。当前NOC设计者面临的挑战之一是功耗。在NOC构架内,大量的NOC路由器功率被路由器的输入缓冲消耗。0018当前高速超大规模集成VLSI设计通常需要中继器沿着有线连接路由器插入,以满足时序要求并避免随着线缆长度。
15、增加导致的延迟的二次叠加。随着部件尺寸迅速缩小,NOC架构内的路由器间链路可能变得更容易受到由耦合噪声、过程变化和其他源产生的瞬态故障的影响。在本文中所述的方法中,鲁棒中继器设计被实现为用于建立能够进行动态纠错的容错链路的多种方法中的一部分。在检测故障之外,该方法提供了将正确数据发送到下一中继器级同时避免数据流的拖延STALL。0019信道缓冲器实现说明书CN102084349ACN102084358A3/6页60020在已知的设计中,传统中继器被沿着路由器之间的链路插入,并且根据第一级阻容RC线路延迟模型设定尺寸和间距。根据本发明的一个方面,传统中继器用三状态中继器替换。单级三状态中继器包括。
16、沿特定链路内的所有线缆插入的三状态中继器。0021每个这样的中继器级可以接收相应的控制块的控制输入。当到中继器级的控制输入为高电平时,该级中的中继器用作信道缓冲器。当到中继器级的控制输入为低电平时,三状态中继器用作传统中继器。每一级可以被控制,从而没有拥塞时三状态中继器类似操作为传统中继器,数据通过链路移动而不被三状态中继器保留在合适的位置。当拥塞出现时控制块被激活时,控制块可以激活或三态三状态中继器。0022一旦被激活,则三状态中继器用作信道缓冲器并且数据位被保留在合适的位置。一旦拥塞得到缓解,控制逻辑可以调节并且三状态中继器可以用作传统中继器。由于三状态中继器可以自适应地用作信道缓冲器,因。
17、此使用具有减少数量的输入缓冲器的路由器就可实现给定级别的网络性能,有效降低了路由器的尺寸和功耗。0023链路实现0024在实例实现中,沿链路的传统中继器被容错三状态中继器替换。如本文中所使用的,单“级”三状态中继器包括沿给定链路中的所有线缆插入的三状态中继器。一级三状态中继器可以用从控制块发射的信号控制。在一级三状态中继器的实例实现中,响应于接收来自控制块的低电平信号,三状态中继器用作传统中继器。响应于接收来自控制块的高电平信号,三状态中继器是三态的并且将数据保留在该级三状态中继器上的合适的位置。0025每个三状态中继器可以被捕获具有瞬态错误的信号的阴影中继器保护。如本文中所使用的,虽然阴影中。
18、继器具有与其保护的主中继器相同的设计,但是接收相比于主中继器的延迟控制信号。为了避免输出的时序差,阴影中继器和主中继器具有相同的设计。0026在涉及阴影中继器的实例实现中,主中继器的输出和阴影中继器的输出使用比较器或XOR门比较。如果检测到比较的中继器输出之间的差别,则存在错误。响应于检测到错误,多路复用器可以用于选择来自阴影中继器的输出。由于阴影中继器接收延迟控制信号,因此很可能不存在瞬态错误。在多路复用器选择阴影中继器的输出之后,根据控制信号的状态,校正的数据可以被传输或者被保留。0027在链路的一些实例实现中,锁存器和/或时钟信号不需要作为阴影中继器或主中继器的控制信号。在这样的配置中,。
19、沿链路的数据中的错误可以被校正,而无需拖延数据或等待时钟信号。在其他实例实现中,锁存器或时钟信号可以被用作阴影中继器或主中继器的控制信号。0028控制块实现0029控制块可以用于控制沿两个路由器之间的链路插入的主三状态中继器以及阴影中继器两者。在实例实现中,单个控制块可以用于控制单级中继器内的所有中继器的功能。在控制块的一个实例实现中,在每个控制块上进入的拥塞信号被延迟一个时钟周期。在下一时钟周期中,该级中的中继器可以是三态的,并且拥塞信号可以被传递到下一控制块。这允许每个中继器级被连续三态化以将数据保留在合适的位置直至拥塞解除信号到达。在控制块的实例实现中,控制块可以被配置为以可变时钟速度精。
20、确操作。例如,阴影触发器可以用于采样延迟时钟上的拥塞信号,以及从而捕获时序错误。控制块还可以被配置为使用双相位设计,其中错误出现时,时钟切换到相反的相位。通过切换到相反相位,时序迟滞量可说明书CN102084349ACN102084358A4/6页7以被扩展,从而允许附加时间来覆盖中继器级内的错误的信号。此外,控制块可以被配置为当没有拥塞时则禁用,从而降低了控制块的功耗。0030其他方面0031在第一方面中,本发明提供了用于校正片上网络构架中的传输错误的方法,该方法包括I配置多个三状态中继器级用于存储数据,作为接收控制信号的响应,II检测多个三状态中继器级之一中的错误,以及III响应于检测到中。
21、继器级中的错误校正该错误。本文中所述的三状态中继器中的任意一个可以被用作三状态中继器级的一部分。例如,一级可以包括主三状态中继器和阴影中继器,两者都被电连接到配置为检查中继器的输出的比较器。在第一方面的方法的实例实现中,校正错误可以包括I门控一个时钟周期的时钟边沿,II重新计算每个中继器级的结果,以及III用正确值替换任何错误。当时钟边沿被门控时,整个链路只拖延一个时钟周期,这就允许每个三状态中继器级在传输期间检测并校正错误数据,而无需第二时钟周期来校正错误。这种拖延时段还允许每级重新计算其本身的结果,从而允许捕获并校正先前转发到后续级的错误。0032第一方面的方法的实例实现还可以包括通过I相。
22、移时钟相位180度;以及II用正确信号覆盖错误信号,来响应检测到中继器级中的错误。这样的实现可以考虑双相位实现,并且可以允许错误信号之后到达的校正信号有足够的时间覆盖错误信号,而无需额外的时钟周期或传输中的进一步拖延。在第一方面的方法的另一实例实现中,检测多个三状态中继器级之一中的错误可以包括比较第一三状态中继器生成的输出与第二三状态中继器生成的输出。在这样的实例实现中,第二三状态中继器生成的输出可以由阴影中继器生成。这些输出可以用于检测错误。例如,主中继器和阴影中继器两者的输出可以被电耦合到比较器的输入和多路复用器的输入。比较器的输出还可以被电耦合到多路复用器的输入,从而当检测到错误时允许选。
23、择阴影中继器的输出。0033在第一方面的方法的另一实例实现中,校正错误可以包括选择阴影中继器生成的输出并在三状态中继器级的输出上呈现阴影中继器的输出。第一方面的方法还可以包括传输指示来自三状态中继器级的错误存在的信号。例如,指示错误存在的信号可以用于控制NOC架构的其他方面。0034在第二方面中,本发明提供了用于处理片上网络构架中的传输错误的方法,该方法包括I将位数据传输到第一三状态中继器,II将该位数据传输到第二三状态中继器,III检测第一三状态中继器的输出与第二三状态中继器的输出之间的差别,以及IV选择第二三状态中继器的输出用于传输。第二方面的方法还可以包括在将该位数据传输到第一三状态中继。
24、器与将该位数据传输到第二三状态中继器之间的延迟时段期间等待。本文中所述的中继器级架构中的任意一种可以采用第二方面的方法。0035在第二方面的方法的实例实现中,检测第一三状态中继器的输出与第二三状态中继器的输出之间的差别可以包括将中继器的输出应用到比较器上的输入接头。在这样的实例实现中,该方法还可以包括将比较器的输出传输到控制块。在其中比较器的输出被传输到控制块的实现中,传输的输出可以用于触发控制块中的动作,诸如命令一个或多个中继器级停止传输并将数据保留在合适的位置的的信号的传输。0036在第二方面的方法的其他实例实现中,选择第二三状态中继器的输出用于传输可以包括将第一三状态中继器的输出应用到多。
25、路复用器的第一输入接头,将第二三状态中说明书CN102084349ACN102084358A5/6页8继器的输出应用到多路复用器的第二输入接头,以及将比较器的输出应用到多路复用器的第三输入接头。在这样的实例实现中,该方法还可以包括响应于检测到指示错误存在的比较器的输出来配置多路复用器以选择第二三状态中继器的输出。由于数据到阴影中继器的传输相对于到主中继器的传输可以被微小延迟,因此阴影中继器的输出较不容易受到瞬态错误的影响,以及从而如果在主中继器与阴影中继器的输出之间存在差别,则很有可能主中继器的输出表示一个错误。0037在第二方面的方法的其他实例实现中,该方法还可以包括在第一三状态中继器和第二。
26、三状态中继器上接收控制块传输的控制信号。在这样的实例实现中,控制块传输的控制信号可以指示片上网络构架内的路由器的拥塞状态。在其他实例实现中,响应于接收指示路由器的拥塞状态的控制信号,第一三状态中继器和第二三状态中继器可以存储该位数据。0038在第三方面中,本发明提供了用于控制片上网络构架中的三状态中继器级的方法,该方法包括I在控制块上接收指示三状态中继器级内的错误存在的信号,以及II响应于接收指示三状态中继器级内的错误存在的信号,将信号传输到三状态中继器级,以命令三状态中继器级将三状态中继器级上的数据保留在合适的位置。如本文中所述,三状态中继器可以被配置,从而当从控制块接收到高电平控制信号时,。
27、中继器被三态化并将数据保留在合适的位置。当三状态中继器接收来自控制块的低电平控制信号时,三状态中继器可以用作传统中继器并重新传输其输入上存在的数据。0039在第三方面的方法的实例实现中,该方法还可以包括响应于接收指示三状态中继器级内的错误存在的信号,将时钟相位相移180度。在这样的实例实现中,该方法还可以包括校正三状态中继器级内的错误。在第三方面的方法的其他实例实现中,校正三状态中继器级内的错误可以包括I选择三状态中继器级中的阴影中继器的输出,以及II用三状态中继器级中的阴影中继器的输出覆盖三状态中继器级内的错误。0040实例0041现在转至附图,图1示出了根据本发明的一个方面可使用的一种容错。
28、中继器100的示意图。如图1所示,标注“数据输入”的线被电耦合到主三状态中继器101和阴影中继器102的输入。主中继器101和阴影中继器102两者被配置为接收来自控制块的信号,其可以用于命令中继器或者保留或者传输其各自输入上存在的数据。主中继器101的输出被电耦合到比较器103的输入和多路复用器104的输入。类似地,阴影中继器102的输出被电耦合到比较器103的输入和多路复用器104的输入。进一步地,如图1中所示,比较器103的输出被电耦合到诸如多路复用器104的控制输入的输入。比较器103的输出也被标记为“错误”,指示该输出可以用于通知中继器101和102的输出之间的差异的存在,指示错误存在。
29、。如果比较器103检测到错误,则比较器103通知多路复用器104输出从阴影中继器102接收到的信号,其可用于校正该错误并且防止错误到后续级的传播。0042图2示出了根据本发明的一个方面可使用的一种路由器间链路200的示意图。在路由器间链路200中,控制块201用于控制路由器206和207之间的链路中的所有级三状态中继器202205。如图2中所示,路由器207被电连接到控制块201并且可以将多个不同信号发送到控制块201。标记“启用”的信号是用于转换控制块201开和关的启用信号。例如,当在路由器207中没有拥塞时,控制块201可以关闭以降低功耗。标记“拥塞”的信说明书CN102084349ACN。
30、102084358A6/6页9号是拥塞信号,用于通知控制块201路由器207的拥塞状态。用数字“4”标记的信号包括从路由器207发送到控制块201以命令控制块允许特定级传输数据的多个信号。0043如图2中所示,控制块201还被电耦合到三状态中继器级202205中的每一个,并且可以用于控制任意级中的三状态中继器存储还是传输该级中存在的数据。例如,根据本文中所述的方法中的任意一种,控制块201可以用于沿着路由器206和207之间的链路选择性地将数据保留在合适的位置以允许纠错。0044控制块201还被配置为接收来自多路复用器208的时钟信号,标记为“CLK输出”。多路复用器208被配置为选择性地输出。
31、标记“CLK”的线或反相器209生成的时钟信号的两个相位中的一个。多路复用器208还被配置为接受来自NOR门210的控制信号,标记为“错误CTI”。NOR门210在其输入上接收来自中继器级202205中的每一个的信号,并且如果检测到指示中继器级202205中的任意一个中出现错误的信号,则NOR门210被配置为使多路复用器208切换时钟相位,从而引入180度相移,如本文中所述。0045图3示出了描述双相位设计的时序图。在图3中,标记“第一波形”和“第二波形”的波形是时钟信号,并且相对于彼此是180度偏移。在路由器间链路的初始操作期间,第一波形用作时钟。在点A处,中继器级已经检测到一个错误,并且触。
32、发切换到第二波形,从而引入时钟的180度相移。这就扩展了时序迟滞量,从而允许校正的信号被捕获,如图3中所示的点B。在点C处,连续的时序错误被检测,可以反过来触发时钟的180度相移。0046本文中已经描述了根据本发明的多个配置和实施方式。本发明的每个方面的所有实施方式可以结合本发明的其他方面的实施方式使用。然而,可以理解的是,本领域的技术人员将理解,在不脱离由以下权利要求所界定的本发明的真正的范围和精神下,可以对这些配置和实施方式以及多个实施方式的结合进行改变和修改。说明书CN102084349ACN102084358A1/3页10图1说明书附图CN102084349ACN102084358A2/3页11图2说明书附图CN102084349ACN102084358A3/3页12图3说明书附图CN102084349A。