使用自定时的时分复用总线的互连的制作方法

文档序号:6479831阅读:162来源:国知局
专利名称:使用自定时的时分复用总线的互连的制作方法
技术领域
本发明涉及集成电路领域。更具体地,本发明涉及用于集成电路的互连设计。
背景技术
高速片上互连被用于诸如网络交换结构、存储开关、输入/输出虚拟化开关、多核 中央处理单元互连以及新的片上网络产品的各种不同的应用。每种应用对互连都有独特的 要求。一种类型的互连设计被称为点对点(P2P)。在最基本的形式下,点对点互连设计在需 要连接的集成电路的每两个点之间提供专用线路。显然,相比于所连接的点的数量,点对点 连接倾向于具有相对多数量的互连。此类基本点对点连接的复杂度通常使它们无法在给定集成电路设计中实现。这些 直接点对点互连需要N* (N-I) *W条线路,其中N是端口(点)的数量,而W是任何两个给定 端口之间的连接的位宽。互连线路的总数具有0(N2)的性质。例如,在N为14且W为160 的一个架构中,点对点仲裁通信量需要29,120条互连线路。这样多数量的互连线路还在互连端口之间产生路由拥塞。响应于该拥塞,这些端 口必须被放置得相距更远,以允许更大的路由通道空间,从而互连的长度变得更长。更长的电路不仅减慢了互连速度,而且消耗更多功率,这是由较长线路的两种相 关效应引起的,即较高的线路负载和可能需要用来满足定时需求的中间缓冲器的附加数 量。在深亚微米工艺中,线路延迟与栅极延迟之比不断增大是另一有害因素。随着晶体管 特征尺寸不断减小,线路缩小不能随之良好地进行。因此,所需要的是至少部分地克服诸如上述那些问题的系统。

发明内容
上述和其它需求被一种方法满足,该方法包括通过为集成电路的通信总线上的 每个传输单元产生时钟触发,由此促使传输单元中的每个前一传输单元开始向传输单元中 毗邻的后一传输单元以波前的形式发送信号,以在该总线上的传输单元之间发送包括数据 和定时信息的信号,其中该波前在公共时间点在每个传输单元处发起,且每个传输单元对 其在来自前一传输单元的信号中接收的数据和定时信息中的至少一种施加定时调节,以实 现以下目的中的至少一个(1)捕捉来自前一传输单元的数据;( 将来自前一传输单元的 数据无修改地中继至通信总线上的后一传输单元;以及C3)将新数据装载到通信总线,且 已更新的定时信息在后一波前中。附图简述通过参照结合附图考虑的详细描述,本发明的其它优点将显而易见,附图未按比 例绘制以更清楚地表现细节,在所有的若干附图中,相同附图标记表示相同元件,且其中图IA是单向菊花链环互连布局。图IB是双向菊花链互连布局。图2是根据本发明一实施例的端口传输单元的功能框图。
图3是图2的端口传输单元的代表性信号时序图。图4A-4D是根据本发明一实施例的根据系统时钟快照的从源端口向目的地端口 传输数据的表示。图5A-5D是根据本发明的另一实施例的根据系统时钟快照的从源端口向目的地 端口传输数据的表示。详细描述根据本发明的诸实施例的基本结构是相连端口的菊花链。

图1示出以菊花链方式 连接的四个端口的两个示例。图IA描述单向环中的环状菊花链。图IB描述开放式菊花链 结构,其中双向连接形成双向环。注意,虽然图IA中的链流向是单向的,但可向该布局添加 附加的链连接和传输单元以建立双向连接。根据本发明在此描述的设计实施例的基本形式被指定为具有与图IA所描述相似 的菊花链环结构的自定时时分复用(TDM)总线,其中用波前中继自定时代替了本地极高频 时钟发生器。诸如图1中的传输单元之间的本文中所描述的通信线路由两种类型的信号组 成数据和自定时时钟。经同步的数据和自定时时钟从一个传输单元沿流动通道发送至下 一传输单元。数据在到达一单元时通过自定时时钟之一的延迟版本自定时并以时钟脉冲的 方式输入,以提供可靠的接收。如果到达该单元的数据需要被转发给后一单元,则在转发操 作之前该数据和自定时时钟被重新同步。传输单元该传输单元具有三个主要功能(1)传输;(2)接收;以及(3)在数据和时钟重新 同步的情况下中继。除这些功能之外,传输单元还具有与端口通信的功能控制块,且在正确 的时刻向TDM总线装载数据并从TDM总线取数据。图2描绘该传输单元的框图。该传输单元由时钟选择电路213和227、数据通路复 用器211、控制逻辑块215、中继数据寄存器212、新时钟发生块214、三个延时块228、229、 230以及两个可选择性调节的延时块218和219组成。存在提供给所有传输单元的一个系 统时钟输入信号208——全局单元时钟。图3给出一些传输单元信号的信号时序图的示例, 其中时间复用因子为4。在图3中使用的标记包括DpO Dp3 来自前一端口的数据,按发送时间升序排 列。Dp2_last,Dp3_last,DpO_next :Dp2和DP3来自上一全局单元时钟周期,而DpO来自下 一全局单元时钟周期。Dsend:要从该传输单元发送至下一传输单元的数据。DsencLlast, Dsend_next 来自上一全局单元时钟周期的Dsend数据和下一全局单元时钟周期的Dsend 数据。在两个相邻的传输单元之间存在两种类型的信号数据和自定时时钟。信号202 是发往下一单元的数据,该信号202在到达下一单元时变成信号201——来自上一单元的 数据。类似地,作为下一单元的时钟的信号207在到达下一单元时变成信号204——来自 上一单元的时钟。该数据以多位有效载荷的方式被馈送。自定时时钟具有M个实例,其中 M是这些单元在一个全局单元时钟周期内执行的中继次数。该时钟边沿被定义为信号208 的上升或下降沿,其中每一个都可被用作传输单元的全局时钟事件。一个时钟周期被定义为两个连续的选定类型的时钟边沿(上升或下降)之间的时 间。在任何给定时刻,自定时时钟的M个实例中仅一个是活动的。自定时时钟由块214——新时钟发生块——通过M位轮换移位寄存器产生。利用系统重置事件期间的信号232,214 中的该移位寄存器被重置为2M-1。然后214中的移位寄存器在中继时钟信号203的每个时 钟边沿上移位。来自214的移位寄存器输出作为信号207被发送。自定时时钟选择电路227被用于选择来自信号221的当前活动自定时时钟——信 号204的延时版本。该选择通过由控制逻辑块215发出的信号231的延时版本来进行。选 定的自定时时钟然后成为信号225——数据时钟。数据时钟225被发送给块215,在块215 中存在轮换移位寄存器,该移位寄存器在系统重置事件期间被重置为1,且通过数据时钟信 号225以时钟脉冲的方式输入。该移位寄存器输出作为信号231被发出,信号231的延时版 本与信号221进行与运算,然后与该输出进行或运算以产生自定时时钟选择输出信号225。通过使用如延时单元2 所指定的不同量延时,可调节信号225的“开启”时间, 由于移位寄存器在信号225的时钟边沿处被更新,因此信号221被更新。因此,信号221选 择队列中的下一活动自定时时钟,该时钟在选择更新时为“关闭”,从而使信号225 “关闭”。 信号225的“关闭”时间由选定活动时钟的时钟边沿的时序确定。该设计通过观测由信号 225驱动的移位寄存器状态改变来自记录(self-track)信号225的所需“开启”时间。由 块2 添加的延时向信号225的最小“开启”时间添加了裕度,以使信号225符合受其驱动 的触发器的可靠操作要求。信号225和信号208的延时版本由多路复用块213通过信号226的延时版本和来 自块215的延时信号226结束时的延时版本来选择。块213的输出变成信号203——中继 时钟信号。在全局单元时钟信号208与块213的输入之间添加了延时229,从而当在全局 单元时钟信号208上有新数据来自端口或逻辑核时,允许延时数据寄存器212处有足够的 设置时间。图3描绘了这些信号的延时。当信号208的延时版本被选择时,信号203的“开 启”时间也通过由中继时钟信号203驱动的中继信号226结束时的状态改变来自记录。为 了电路的可靠性,延时230向信号203的“开启”时间添加裕度。控制逻辑块215控制传输单元的定时和数据流。它在正确的时刻向多路复用块 211发送选择信号205,以在信号220与信号206之间作选择以连接至内部数据总线209,其 中信号220是作为来自前一单元的数据的信号201的延时版本,而信号206是要发送的数 据。示例时序在图3中给出。如果信号206(要发送的数据)被选择,则新数据被装载到总 线上,否则来自前一单元的数据被转发并使其对中继器212准备就绪。如由中继时钟信号203所控制地,总线209上的数据被时钟脉冲输入到中继数据 寄存器212中,该中继数据寄存器212的输出成为输入下一单元的数据信号202。为了避 免信号201在下一单元处产生占用时间违规,传输单元设计可任选地包括可调延时块218, 当给定设计中的电路延时不够长而不能确保适当的占用时间时,可插入该可调延时块218。 当寻址到该单元的数据到达时,控制逻辑215还在正确的时刻(与数据块225同步)从信 号220捕捉数据。为了确保适当的设置时间用于数据捕捉,如果所选择的自定时时钟到达 过早,则可在选择器块213之前对信号204施加可任选的可调节延迟块219以确保足够的 设置时间。传输至总线的装载以及从总线取得的捕捉的时序可以可编程或硬连接。控制逻辑 215包含一组计数器或移位寄存器。计数器或移位寄存器根据全局单元时钟208来重置。 装载和捕捉的时序在一个实施例中被表示为与计数器状态作比较的计数值,或根据移位寄存器的内容查找的一组寄存器位。计数器/移位寄存器的时钟是中继时钟信号203。上述机制也可用于产生中继信号226的结束。信号2 被重置以在系统重置时被 置为有效。图3示出在信号208时钟边沿之后在第一中继时钟边沿203时数据如何被装载 到总线的示例。在第四中继时钟边沿203时启用数据捕捉,并在第四数据时钟边沿226时 捕捉。最终,中继信号226的结束也被设置于第四中继时钟边沿203处。可将流水线架构 应用于该设计。例如,信号205能产生的时间比信号206能被时钟脉冲输入到中继寄存器 212的时间早一个本地时钟。图3示出该情况的示例。块215也包含三组寄存器传输数据寄存器216、接收数据寄存器217以及控制寄 存器224。传输寄存器216提供数据以装载到总线上,而接收寄存器217是存储从总线捕捉 到的数据的一级FIFO。控制寄存器2 包含控制信息。控制寄存器2M大多数是配置寄存 器——例如驱动信号222和223的可调延时设定,控制装载和捕捉的时序的流量控制寄存 器等等。这些寄存器由通过端口通信通道210与其通信的相应端口逻辑元件或主机来设置 或读取。当信号202被锁存于本地时钟处时,块214同时产生输入到下一单元的新时钟信 号207,如本章之前描述地。如本章描述的传输单元可被实现为多个副本,如果数据总线的 总宽度过大,则每个副本具有有限的数据总线宽度。波前中继器沿菊花链环的每个传输单元在全局单元时钟边沿上开始传输数据和同步位(或 多个同步位)。每个单元根据环流动方向从前一端口接收数据和时钟一一用更一般的术语 来说是自定时信息,包括两个端口之间的线路延时。然后每个单元在可调节延时的情况下 根据所接收的同步位还原并产生中继时钟。然后重新产生的本地中继时钟将所接收的数据 以时钟脉冲的方式输入,并同时产生新的同步位以发送至环中的下一端口。该设计允许所 传送的数据和同步位被中继至下一端口,且在每个传输单元处被重新同步。该中继过程继 续,直到数据到达其目的地。在一些实施例中,所有中继过程在一个全局时钟周期内完成。 然后上述过程在每个全局单元时钟周期下重复。中继过程的一个示例在图4A-4D中描绘,其中N =点对点通信系统中的端口数T =总线上的时隙数,为简化起见,在本实施例中=(N-I)。(s,d)=从源端口 s到目的地端口 d的数据F((s,d))=源与目的地端口之间的距离=(d-l)mod(N)t e (0,1,…,T-1)=时隙在本示例中,存在标记为0-8且描绘为带编号圆的9个传输单元。然而,应理解,可 存在比9个更多或更少数量的传输单元。为了开始该周期,每个端口(传输单元)同时向 对方端口发送数据,该对方端口在顺时针方向上相距四个端口,该步骤在数据到达目的地 端口时即三个中继级之后结束。在图4A中,t = 0(与系统时钟同步),且数据从源端口发 出。如图4中所示,每个给定时刻的数据被描述为在两个端口之间的途中,且具有注解(源 端口,目的地端口)。在图4B中,t = 1,且数据正在传输中。在图4C中,t = 2,且数据仍 在传输中。在图4D中,t = 3,且数据到达目的地端口。点对点互连
如上所述,N个端口之间的点对点互连需要N* (N-I) *W个连接,其中W是从一个端 口发送至另一个端口的信息的位数,假定W在所有端口上相同。利用本文中提出的TDM总 线显著减小了所需线路互连的数量。实现该减少的一种方法是建立将N个端口连接到一起 的N-I个独立的菊花链。每个菊花链是W+n位宽,其中η是每个菊花链使用的同步位数。每 个菊花链的功能在以下表1中列出。在该实施例中,每个目的地端口与每个源端口之间的 距离对于该链中的所有端口相同。
权利要求
1.一种在集成电路的通信总线上的传输单元之间发送包括数据和定时信息的信号的 方法,所述方法包括以下步骤为所述总线上的每个传输单元产生时钟触发,从而促使每个前一传输单元开始向毗邻 的后一传输单元以波前的形式发送所述信号,其中所述波前在公共时刻在每个传输单元处 发起,以及每个传输单元对其在来自前一传输单元的信号中接收的所述数据和定时信息中的至 少一种施加定时调节,以实现以下目的中的至少一个(1)捕捉来自前一传输单元的数据,(2)将来自前一传输单元的数据无修改地中继到所述通信总线上的后一传输单元,以及(3)将新数据装载至所述通信总线,其中已更新的定时信息在后一波前中。
2.如权利要求1所述的方法,其特征在于,所述通信总线是交叉开关通信总线。
3.如权利要求1所述的方法,其特征在于,还包括传播所述波前直到一个全局单元时 钟周期完成,然后在下一全局单元时钟周期重启所述波前的步骤。
4.如权利要求1所述的方法,其特征在于,还包括传播所述波前直到所述数据到达预 期传输单元的步骤。
5.如权利要求1所述的方法,其特征在于,所述定时调节是通路延时调节。
6.如权利要求1所述的方法,其特征在于,为每个传输单元产生时钟触发的步骤通过 向每个传输单元发送全局单元时钟信号来实现。
7.如权利要求1所述的方法,其特征在于,为每个传输单元产生时钟触发的步骤通过 向传输单元发送全局单元时钟信号、然后为一个全局单元时钟信号产生多个时钟触发来实 现。
8.如权利要求1所述的方法,其特征在于,为每个传输单元产生时钟触发的步骤通过 设置在每个传输单元内的内部时钟来实现。
9.如权利要求1所述的方法,其特征在于,没有传输单元具有独立的内部时钟。
10.如权利要求1所述的方法,其特征在于,从每个前一传输单元发送的所有数据在一 个全局单元时钟周期内到达每个后一传输单元。
11.如权利要求1所述的方法,其特征在于,所述通信总线是时分复用总线。
12.如权利要求1所述的方法,其特征在于,对所述数据施加的定时调节与对所述定时 信息施加的定时调节不同。
13.如权利要求1所述的方法,其特征在于,所述数据和定时信息在所述信号中被同时 发送。
14.如权利要求1所述的方法,其特征在于,对传输单元中的定时信息施加对多个时钟 信号的选择。
15.如权利要求1所述的方法,其特征在于,对多个时钟信号的选择利用移位寄存器来产生。
16.如权利要求1所述的方法,其特征在于,利用选择信号进行对多个时钟信号的选 择,所述选择信号的位数与时钟信号的位数相同,所述选择信号中的一个位对应于每个时钟信号。
17.如权利要求1所述的方法,其特征在于,在施加当前全局时钟边沿之后,选择信号 选择多个时钟信号中的一个。
18.如权利要求1所述的方法,其特征在于,不同的时钟信号被用于数据中继和数据捕 捉操作,其中允许数据捕捉操作的时间更多。
19.如权利要求1所述的方法,其特征在于,所述通信总线是双向总线。
20.一种用于信号总线的传输单元,所述传输单元包括 用于接收输入数据的数据输入,用于接收相对时钟信号的相对时钟输入, 用于接收全局时钟信号的全局时钟输入, 用于提供输出数据的数据输出, 用于提供输出时钟信号的时钟输出, 通信端口, 控制逻辑,用于选择所述相对时钟信号和所述全局时钟信号中的一个用作中继时钟信号,其中所述中 继时钟信号被用于发起提供输出数据并产生输出时钟信号, 接收寻址至所述传输单元的输入数据, 在所述通信端口上接收新数据, 选择输入数据和新数据中的一个以作为输出数据提供, 在所述通信端口上提供寻址至所述传输单元的输入数据,以及 在所述通信端口上接收指令。
21.如权利要求20所述的传输单元,其特征在于,还包括延时单元,用于在所述控制逻 辑的控制下对所述相对时钟信号选择性地施加可变延时。
22.如权利要求20所述的传输单元,其特征在于,还包括延时单元,用于在所述控制逻 辑的控制下对所述输入数据选择性地施加可变延时。
23.如权利要求20所述的传输单元,其特征在于,所述输出数据和所述输出时钟信号 被同时提供。
24.如权利要求20所述的传输单元,其特征在于,在公共时钟信号上接收所述输入数 据并提供所述输出数据。
全文摘要
一种方法通过为集成电路的通信总线上的每个传输单元产生时钟触发,由此促使传输单元中的每个前一传输单元开始向传输单元中毗邻的后一传输单元以波前的形式发送信号,以在该总线上的传输单元之间发送包括数据和定时信息的信号,其中该波前在公共时间点在每个传输单元处发起,且每个传输单元对其在来自前一传输单元的信号中接收的数据和定时信息中的至少一种施加定时调节,以实现以下目的中的至少一个(1)捕捉来自前一传输单元的数据;(2)将来自前一传输单元的数据中继至通信总线上的后一传输单元;以及(3)将新数据装载到通信总线,且已更新的定时信息在后一波前中。
文档编号G06F13/00GK102057360SQ200880129838
公开日2011年5月11日 申请日期2008年11月19日 优先权日2008年11月19日
发明者E·C·吴, R·J·唐, T·周, T·拉贾 申请人:Lsi股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1