CN102057360B - 使用自定时的时分复用总线的互连 - Google Patents

使用自定时的时分复用总线的互连 Download PDF

Info

Publication number
CN102057360B
CN102057360B CN200880129838.3A CN200880129838A CN102057360B CN 102057360 B CN102057360 B CN 102057360B CN 200880129838 A CN200880129838 A CN 200880129838A CN 102057360 B CN102057360 B CN 102057360B
Authority
CN
China
Prior art keywords
data
clock
transmission unit
signal
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN200880129838.3A
Other languages
English (en)
Other versions
CN102057360A (zh
Inventor
T·周
R·J·唐
E·C·吴
T·拉贾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Avago Technologies General IP Singapore Pte Ltd
Original Assignee
LSI Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by LSI Corp filed Critical LSI Corp
Publication of CN102057360A publication Critical patent/CN102057360A/zh
Application granted granted Critical
Publication of CN102057360B publication Critical patent/CN102057360B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0008Synchronisation information channels, e.g. clock distribution lines
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Small-Scale Networks (AREA)
  • Information Transfer Systems (AREA)
  • Electronic Switches (AREA)
  • Logic Circuits (AREA)
  • Time-Division Multiplex Systems (AREA)
  • Use Of Switch Circuits For Exchanges And Methods Of Control Of Multiplex Exchanges (AREA)
  • Bus Control (AREA)

Abstract

一种方法通过为集成电路的通信总线上的每个传输单元产生时钟触发,由此促使传输单元中的每个前一传输单元开始向传输单元中毗邻的后一传输单元以波前的形式发送信号,以在该总线上的传输单元之间发送包括数据和定时信息的信号,其中该波前在公共时间点在每个传输单元处发起,且每个传输单元对其在来自前一传输单元的信号中接收的数据和定时信息中的至少一种施加定时调节,以实现以下目的中的至少一个:(1)捕捉来自前一传输单元的数据;(2)将来自前一传输单元的数据中继至通信总线上的后一传输单元;以及(3)将新数据装载到通信总线,且已更新的定时信息在后一波前中。

Description

使用自定时的时分复用总线的互连
技术领域
本发明涉及集成电路领域。更具体地,本发明涉及用于集成电路的互连设计。
背景技术
高速片上互连被用于诸如网络交换结构、存储开关、输入/输出虚拟化开关、多核中央处理单元互连以及新的片上网络产品的各种不同的应用。每种应用对互连都有独特的要求。一种类型的互连设计被称为点对点(P2P)。在最基本的形式下,点对点互连设计在需要连接的集成电路的每两个点之间提供专用线路。显然,相比于所连接的点的数量,点对点连接倾向于具有相对多数量的互连。
此类基本点对点连接的复杂度通常使它们无法在给定集成电路设计中实现。这些直接点对点互连需要N*(N-1)*W条线路,其中N是端口(点)的数量,而W是任何两个给定端口之间的连接的位宽。互连线路的总数具有O(N2)的性质。例如,在N为14且W为160的一个架构中,点对点仲裁通信量需要29,120条互连线路。
这样多数量的互连线路还在互连端口之间产生路由拥塞。响应于该拥塞,这些端口必须被放置得相距更远,以允许更大的路由通道空间,从而互连的长度变得更长。
更长的电路不仅减慢了互连速度,而且消耗更多功率,这是由较长线路的两种相关效应引起的,即较高的线路负载和可能需要用来满足定时需求的中间缓冲器的附加数量。在深亚微米工艺中,线路延迟与栅极延迟之比不断增大是另一有害因素。随着晶体管特征尺寸不断减小,线路缩小不能随之良好地进行。
因此,所需要的是至少部分地克服诸如上述那些问题的系统。
发明内容
上述和其它需求被一种方法满足,该方法包括:通过为集成电路的通信总线上的每个传输单元产生时钟触发,由此促使传输单元中的每个前一传输单元开始向传输单元中毗邻的后一传输单元以波前的形式发送信号,以在该总线上的传输单元之间发送包括数据和定时信息的信号,其中该波前在公共时间点在每个传输单元处发起,且每个传输单元对其在来自前一传输单元的信号中接收的数据和定时信息中的至少一种施加定时调节,以实现以下目的中的至少一个:(1)捕捉来自前一传输单元的数据;(2)将来自前一传输单元的数据无修改地中继至通信总线上的后一传输单元;以及(3)将新数据装载到通信总线,且已更新的定时信息在后一波前中。
附图简述
通过参照结合附图考虑的详细描述,本发明的其它优点将显而易见,附图未按比例绘制以更清楚地表现细节,在所有的若干附图中,相同附图标记表示相同元件,且其中:
图1A是单向菊花链环互连布局。
图1B是双向菊花链互连布局。
图2是根据本发明一实施例的端口传输单元的功能框图。
图3是图2的端口传输单元的代表性信号时序图。
图4A-4D是根据本发明一实施例的根据系统时钟快照的从源端口向目的地端口传输数据的表示。
图5A-5D是根据本发明的另一实施例的根据系统时钟快照的从源端口向目的地端口传输数据的表示。
详细描述
根据本发明的诸实施例的基本结构是相连端口的菊花链。图1示出以菊花链方式连接的四个端口的两个示例。图1A描述单向环中的环状菊花链。图1B描述开放式菊花链结构,其中双向连接形成双向环。注意,虽然图1A中的链流向是单向的,但可向该布局添加附加的链连接和传输单元以建立双向连接。
根据本发明在此描述的设计实施例的基本形式被指定为具有与图1A所描述相似的菊花链环结构的自定时时分复用(TDM)总线,其中用波前中继自定时代替了本地极高频时钟发生器。诸如图1中的传输单元之间的本文中所描述的通信线路由两种类型的信号组成:数据和自定时时钟。经同步的数据和自定时时钟从一个传输单元沿流动通道发送至下一传输单元。数据在到达一单元时通过自定时时钟之一的延迟版本自定时并以时钟脉冲的方式输入,以提供可靠的接收。如果到达该单元的数据需要被转发给后一单元,则在转发操作之前该数据和自定时时钟被重新同步。
传输单元
该传输单元具有三个主要功能:(1)传输;(2)接收;以及(3)在数据和时钟重新同步的情况下中继。除这些功能之外,传输单元还具有与端口通信的功能控制块,且在正确的时刻向TDM总线装载数据并从TDM总线取数据。
图2描绘该传输单元的框图。该传输单元由时钟选择电路213和227、数据通路复用器211、控制逻辑块215、中继数据寄存器212、新时钟发生块214、三个延时块228、229、230以及两个可选择性调节的延时块218和219组成。存在提供给所有传输单元的一个系统时钟输入信号208——全局单元时钟。图3给出一些传输单元信号的信号时序图的示例,其中时间复用因子为4。
在图3中使用的标记包括:Dp0~Dp3:来自前一端口的数据,按发送时间升序排列。Dp2_last,Dp3_last,Dp0_next:Dp2和DP3来自上一全局单元时钟周期,而Dp0来自下一全局单元时钟周期。Dsend:要从该传输单元发送至下一传输单元的数据。Dsend_last,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。
通过使用如延时单元228所指定的不同量延时,可调节信号225的“开启”时间,由于移位寄存器在信号225的时钟边沿处被更新,因此信号221被更新。因此,信号221选择队列中的下一活动自定时时钟,该时钟在选择更新时为“关闭”,从而使信号225“关闭”。信号225的“关闭”时间由选定活动时钟的时钟边沿的时序确定。该设计通过观测由信号225驱动的移位寄存器状态改变来自记录(self-track)信号225的所需“开启”时间。由块228添加的延时向信号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的结束。信号226被重置以在系统重置时被置为有效。图3示出在信号208时钟边沿之后在第一中继时钟边沿203时数据如何被装载到总线的示例。在第四中继时钟边沿203时启用数据捕捉,并在第四数据时钟边沿226时捕捉。最终,中继信号226的结束也被设置于第四中继时钟边沿203处。可将流水线架构应用于该设计。例如,信号205能产生的时间比信号206能被时钟脉冲输入到中继寄存器212的时间早一个本地时钟。图3示出该情况的示例。
块215也包含三组寄存器:传输数据寄存器216、接收数据寄存器217以及控制寄存器224。传输寄存器216提供数据以装载到总线上,而接收寄存器217是存储从总线捕捉到的数据的一级FIFO。控制寄存器224包含控制信息。控制寄存器224大多数是配置寄存器——例如驱动信号222和223的可调延时设定,控制装载和捕捉的时序的流量控制寄存器等等。这些寄存器由通过端口通信通道210与其通信的相应端口逻辑元件或主机来设置或读取。
当信号202被锁存于本地时钟处时,块214同时产生输入到下一单元的新时钟信号207,如本章之前描述地。如本章描述的传输单元可被实现为多个副本,如果数据总线的总宽度过大,则每个副本具有有限的数据总线宽度。
波前中继器
沿菊花链环的每个传输单元在全局单元时钟边沿上开始传输数据和同步位(或多个同步位)。每个单元根据环流动方向从前一端口接收数据和时钟——用更一般的术语来说是自定时信息,包括两个端口之间的线路延时。然后每个单元在可调节延时的情况下根据所接收的同步位还原并产生中继时钟。然后重新产生的本地中继时钟将所接收的数据以时钟脉冲的方式输入,并同时产生新的同步位以发送至环中的下一端口。该设计允许所传送的数据和同步位被中继至下一端口,且在每个传输单元处被重新同步。该中继过程继续,直到数据到达其目的地。在一些实施例中,所有中继过程在一个全局时钟周期内完成。然后上述过程在每个全局单元时钟周期下重复。
中继过程的一个示例在图4A-4D中描绘,其中:
N=点对点通信系统中的端口数
T=总线上的时隙数,为简化起见,在本实施例中=(N-1)。
(s,d)=从源端口s到目的地端口d的数据
F((s,d))=源与目的地端口之间的距离=(d-1)mod(N)
t∈(0,1,…,T-1)=时隙
在本示例中,存在标记为0-8且描绘为带编号圆的9个传输单元。然而,应理解,可存在比9个更多或更少数量的传输单元。为了开始该周期,每个端口(传输单元)同时向对方端口发送数据,该对方端口在顺时针方向上相距四个端口,该步骤在数据到达目的地端口时即三个中继级之后结束。在图4A中,t=0(与系统时钟同步),且数据从源端口发出。如图4中所示,每个给定时刻的数据被描述为在两个端口之间的途中,且具有注解(源端口,目的地端口)。在图4B中,t=1,且数据正在传输中。在图4C中,t=2,且数据仍在传输中。在图4D中,t=3,且数据到达目的地端口。
点对点互连
如上所述,N个端口之间的点对点互连需要N*(N-1)*W个连接,其中W是从一个端口发送至另一个端口的信息的位数,假定W在所有端口上相同。利用本文中提出的TDM总线显著减小了所需线路互连的数量。实现该减少的一种方法是建立将N个端口连接到一起的N-1个独立的菊花链。每个菊花链是W+n位宽,其中n是每个菊花链使用的同步位数。每个菊花链的功能在以下表1中列出。在该实施例中,每个目的地端口与每个源端口之间的距离对于该链中的所有端口相同。
Figure BPA00001277164700071
表1 点对点菊花链功能表
相比于直接P2P连接连接数量减少
使用与以上相同的假设,直接点对点连接的连接数量为N*(N-1)*W。TDM点对点连接的连接数量可计算为(N-1)*(W+n),如表1所示。因此“线路减少”被计算为:
Figure BPA00001277164700081
未在此计算所测得的相比于直接P2P连接的总互连连接长度的减少,因为它主要取决于实际端口位置和路由计划。假定端口与端口的路由距离为常数1,则TDM P2P连接中的总连接长度可如下所给出地计算:
总长度L=(N-1)2×(W+n)×l
进一步优化减少TDM总线数量
表1说明了利用TDM总线建立P2P连接的简单方法,且说明了相比于直接P2P连接的连接数量的显著减少。通过总线时间共享,连接数量可被进一步减少至约一半。在该实施例中,针对目的地端口远离源端口的数据所指定的链可与数据目的地更接近源端口的链配对。表2描绘了共享一条总线的链对的两个实施例。取决于N是奇数还是偶数,以及所使用的配对方案,链的总数量从N-1减少至(N-1)/2到N/2+1的范围内的某个值。应理解,在本发明的范围内存在可理解的能用于减小互连总数的其它共享方案。
Figure BPA00001277164700082
表2 链对的示例
图5示出中继过程如何在时间共享实施例中工作,其中术语的定义与以上关于图4所提供地相同。该示例具有N=9,其中第一步骤目的地为f=3,而第二步骤目的地为f=1。在图5A中,t=0(与系统时钟同步),且数据从源端口发出。在图5B中,t=1,且数据正在传输中。在图5C中,t=2,且数据针对f=3到达目的地端口,在该目的地端口处数据针对f=1重新发起。在图5D中,t=3,且数据针对f=1到达目的地端口。
可对传输单元控制块215进行修改(如图2所描绘),以便于时间共享实施例。例如,控制逻辑可被修改成使其可在单个全局单元时钟周期内正确的时序装载和捕捉一次以上。相应地,寄存器216和217的容量可根据选定的时间共享方案增大,且装载和捕捉可利用正确的存储寄存器以正确的顺序进行。
双向TDM总线提高系统性能
在一些应用中,对于所提出的TDM总线,由于通过N-1个中继级引起的最糟糕情况的延时可能太长而不能满足互连的速度要求。将双向TDM总线用于具有大量中继级的链可将最糟糕情况下的中继级数量从N-1减少为:当N为奇数时从N-1减至(N-1)/2;当N为偶数时从N-1减至N/2。表3提供此类双向TDM总线的示例。
表3 双向TDM总线的示例
应理解,上一章节中描述的总线时间共享技术也可应用于双向TDM总线,以减少连接数量。
端口架构
参照图6,描述了N端口交换架构的一部分的实施例,其中每个端口100可处理M个仲裁请求。每个仲裁请求转向每个端口100,端口100之一如图6所描述。因此,每个端口100中存在M*N个仲裁请求,且所有的N个端口100总共有M*N*N个仲裁请求。这N个端口100可被连接为如图1B所示的双向菊花链,或如图1A所示的单向菊花链环或环。在图6所描述的实施例中,菊花链被配置为单向环,以使端口0经由物理线路向端口1发送仲裁请求,端口1向端口2发送,如此等等。端口0直接从端口N-1接收仲裁请求。
每个端口100包括时钟发生器102,该时钟发生器102以比其从芯片块110接收信号的频率大K倍的频率工作。该端口100还具有M个移位寄存器104组,其中M组中的每一个具有用于临时存储的N个移位寄存器。该端口100还包括仲裁请求寄存器106。
每个仲裁请求都与N个移位寄存器的组104中的一个相关联。N个移位寄存器的适当组104中的每个寄存器存储来自N个端口100中的一个的请求。通过将仲裁请求从移位寄存器中的适当组104内的一个寄存器移至另一个寄存器,这N个移位寄存器包含来自所有端口100的相应仲裁请求。如图6所描述,信号ArbReq0、ArbReq1、……ArbReqM-1是从仲裁单元产生的仲裁请求,这些请求到达N个端口100以进行仲裁。
当装载数据(LD)信号被置为有效时,这些请求在芯片时钟110信号的上升沿被装载到移位寄存器的适当组104的Reg0中。控制块108将装载数据信号输出至N个移位寄存器的每个组104中的寄存器Reg0,以发起仲裁请求向环结构的装载。当时钟发生器102被禁用时,装载数据信号被置为有效,这是在芯片时钟110信号低时进行的,然后在NCLK信号的上升沿之后装载数据信号被置为无效。
Rqtin0、Rqtin1、…RqtinM-1是从前一端口100接收的M个环信号,且被路由至N个移位寄存器的M个组104中的每一个中的寄存器Reg0的输入。Reg0的输出(Rqt0_out0、Rqt1_out0、…RqtM-1_out0)被路由至环或链中的下一端口100的输入Rqtin0、Rqtin1、…RqtinM-1。
在ArbReq0、ArbReq1、…ArbReqM-1被装载到寄存器中之后,在来自时钟发生器102的第一时钟信号之后,Rqt0_out0、Rqt1_out0、…RqtM-1_out0信号包含相应端口100的仲裁请求0。时钟发生器102在芯片时钟110信号的上升沿被启用,并继续保持启用直到控制单元108中的内部计数器达到预定数量的时钟周期。当时钟发生器102被禁用时,然则无更多时钟信号产生,且时钟信号NCLK保持低直到芯片时钟110的下一上升沿。当时钟发生器102以芯片时钟110频率的N倍频率产生时钟信号时(K=N),则当控制单元108中的内部计数器计数至N时禁用时钟发生器102,且来自每个端口100的仲裁请求被移至所需端口100。
因为这刚好在一个芯片时钟110周期内完成,所以该操作的等待时间为1。类似地,当K=N/2或K=N/4等时,这可通过修改控制单元108来实现。唯一区别在于,仲裁请求可能需要花两个或四个芯片时钟110周期来到达所需端口100。在NCLK信号的上升沿,每个端口100在Reg0处从该环的前一端口100接收仲裁请求。这些仲裁请求在下一时钟周期到达N个移位寄存器的组104中的每一个中的Reg1。Reg1的输出在下一周期到达Reg2,依此类推。
N个移位寄存器的组104的输出去至仲裁请求寄存器106,并在芯片时钟110信号的下一上升沿时被锁存。因为存在N个寄存器的M组104,所以存在仲裁请求寄存器的M组106。仲裁请求寄存器的M组106的输出去至仲裁单元,以确定端口100之间的连接。图7描绘了N个移位寄存器0在芯片时钟周期结束时如何包含来自N个端口100的任一个的仲裁请求0(当K=N时)的时序图,其中下标表示端口100编号。
概述
因此,本发明的各个实施例新描述了利用波前延迟自定时技术的点对点TDM总线、传输单元的新设计、TDM总线时间共享技术以及双向TDM总线。
相比于直接链路点对点布局,本文所描述的P2P TDM总线显著减少了端口之间需要的连接的数量。具体地,该P2P TDM总线使用O(N)连接,而直接P2P链路总线需要O(N2)连接。此外,P2P TDM总线显著减小了P2P连接所需的总路由区域。P2P TDM总线可通过增大线宽和间距作为互连数量较少的交换来减小线路延时的影响。由于线路负载减少,因此本文中所描述的P2P TDM总线还减少互连功耗。
本文中所描述的波前中继自定时技术是对于P2P TDM总线非常有效的技术。对于每个全局单元时钟周期,相连的P2P网络上的所有端口通过向链下游的下一端口发送数据和自定时信息来开始。同时,每个端口准备好从链中的前一端口接收数据和自定时信息。每个端口使用自定时信息来重新同步然后中继数据,然后产生新的自定时信息以及已中继数据以发送至链下游的下一端口。每个端口从传入的自定时信息中提取时钟信号,且这样做可去除对每个端口处的高速时钟(多重时钟速率)的需要。
本文中所描述的波前中继自定时技术还降低了由本地高频时钟发生器所施加的匹配要求,并去除了沿用于同步中继的端口的任何数据/时钟不匹配累积。波前中继自定时技术还将中继过程限制为仅一个全局单元时钟周期,并在全局时钟边沿重新同步所有中继过程,这样防止了路径不匹配从一个中继过程向下一中继过程的累积。此外,该波前中继自定时技术提高了菊花链性能,因为中继延时典型地小于本地高频时钟周期。
本设计的传输单元以同步检测、本地时钟发生、数据通道装载和捕捉功能、以及数据/同步位重新同步为特征,所有这些特征实现了波前中继自定时技术。此外,如本文所描述的传输单元设计以单元时钟与中继时钟开始之间的附加延时为特征,这允许在总线上使用同一单元时钟周期数据,并避免额外的时钟周期等待时间或额外的存储。传输单元包括数据通路和同步通路上的可任选的可调节延时,这允许中继的占用时间和设置时间可被独立地调节。此外,该传输单元具有用于数据中继和数据捕捉的独立本地时钟,这允许以更多的时间完成数据捕捉操作,从而使全单元时钟周期用于传输最大化——这也允许更高速的性能。
如上所述,本文所描述的TDM总线时间共享技术将P2P TDM互连的数量减少了约一半,同时双向设计还使P2P TDM总线系统性能加倍。
在替代实施例中,在广播或不广播的情况下,P2P TDM总线被简化并修改以用于交叉开关(crossbar)应用。该P2P TDM总线还可级联并桥接以用于多级互连。如果在快速系统中允许等待时间,则全局单元时钟速度可被减少至多系统时钟周期,且该总线可被相应地展宽以满足吞吐量要求。
对本发明的优选实施例的上述描述以被呈现用于说明和描述的目的。它们不旨在穷举或将本发明限制为所公开的精确形式。根据上述示教,明显的修改和变化是可能的。选择和描述了实施例以尽量提供本发明的原理的最佳说明,从而使本领域普通技术人员能使各实施例中的本发明以及各种修改适用于所构想的特定用途。所有此类修改和变型在如由所附权利要求限定的本发明的范围内,本发明的范围根据其被清楚地、合法地以及公正地赋予的宽度来解释。

Claims (24)

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所述的传输单元,其特征在于,在公共时钟信号上接收所述输入数据并提供所述输出数据。
CN200880129838.3A 2008-11-19 2008-11-19 使用自定时的时分复用总线的互连 Expired - Fee Related CN102057360B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2008/083974 WO2010059150A1 (en) 2008-11-19 2008-11-19 Interconnects using self-timed time-division multiplexed bus

Publications (2)

Publication Number Publication Date
CN102057360A CN102057360A (zh) 2011-05-11
CN102057360B true CN102057360B (zh) 2014-01-22

Family

ID=42198388

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200880129838.3A Expired - Fee Related CN102057360B (zh) 2008-11-19 2008-11-19 使用自定时的时分复用总线的互连

Country Status (7)

Country Link
US (1) US8503482B2 (zh)
EP (1) EP2366154A4 (zh)
JP (1) JP5731391B2 (zh)
KR (1) KR101340763B1 (zh)
CN (1) CN102057360B (zh)
TW (1) TWI426391B (zh)
WO (1) WO2010059150A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5014362B2 (ja) 2009-02-25 2012-08-29 キヤノン株式会社 情報処理装置及びその制御方法、コンピュータプログラム
US8478917B2 (en) 2010-09-22 2013-07-02 Microsoft Corporation Automatic addressing protocol for a shared bus
US8619821B2 (en) 2011-03-25 2013-12-31 Invensense, Inc. System, apparatus, and method for time-division multiplexed communication
US9058273B1 (en) * 2013-12-20 2015-06-16 International Business Machines Corporation Frequency determination across an interface of a data processing system
US10079650B2 (en) 2015-12-04 2018-09-18 Infineon Technologies Ag Robust high speed sensor interface for remote sensors
WO2017111780A1 (en) * 2015-12-23 2017-06-29 Intel Corporation Apparatus and method for distribution of congestion information in a switch
DE102018220301A1 (de) 2018-11-26 2020-05-28 Festo Ag & Co. Kg Kommunikationseinheit, Steuergerät, Kommunikationssystem und Verfahren
DE102018220302A1 (de) * 2018-11-26 2020-05-28 Festo Ag & Co. Kg Kommunikationseinheit, Steuergerät, Feldgerät, Kommunikationssystem und Verfahren
CN114791896A (zh) * 2021-01-26 2022-07-26 意法半导体(格勒诺布尔2)公司 片上系统中的时域同步

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1591376A (zh) * 2003-09-04 2005-03-09 松下电器产业株式会社 资源管理装置
CN101055479A (zh) * 2007-05-29 2007-10-17 北京中星微电子有限公司 一种实现非时钟控制寄存器数据更新的系统及方法

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3628299A1 (de) * 1986-08-21 1988-02-25 Licentia Gmbh Verfahren und anordnung zum signaltechnisch sicheren uebertragen von seriellen daten zwischen vorzugsweise zweikanaligen sicheren rechnern unter verwendung eines doppelringbussystems
JPH0623621B2 (ja) 1987-09-08 1994-03-30 松下電器産業株式会社 石油燃焼温風暖房機
JPH03265904A (ja) * 1990-03-16 1991-11-27 Hitachi Ltd プロセス制御システム
JP2809811B2 (ja) 1990-04-27 1998-10-15 三井化学株式会社 三弗化窒素ガスの製造方法
JP3490131B2 (ja) * 1994-01-21 2004-01-26 株式会社ルネサステクノロジ データ転送制御方法、データプロセッサ及びデータ処理システム
US5576702A (en) * 1995-01-10 1996-11-19 Samoylenko; Stanislav I. Method and apparatus for fault-tolerant transmission in multi-channel networks
US5919265A (en) 1996-05-28 1999-07-06 Sun Microsystems, Inc. Source synchronization data transfers without resynchronization penalty
JPH11167560A (ja) * 1997-12-03 1999-06-22 Nec Corp データ転送システム、このシステムに用いるスイッチング回路、アダプタ及びこのシステムを有する集積回路並びにデータ転送方法
US6532506B1 (en) 1998-08-12 2003-03-11 Intel Corporation Communicating with devices over a bus and negotiating the transfer rate over the same
US20020152060A1 (en) * 1998-08-31 2002-10-17 Tseng Ping-Sheng Inter-chip communication system
US6560215B1 (en) * 1999-08-24 2003-05-06 Motorola, Inc. Method and apparatus for updating a timing offset in a communication device
JP2001326670A (ja) 2000-05-16 2001-11-22 Sony Corp 情報処理装置およびそれを利用したブリッジ
US7039146B2 (en) 2001-01-16 2006-05-02 Advanced Micro Devices, Inc. Method and interface for glitch-free clock switching
US6975653B2 (en) * 2001-06-12 2005-12-13 Agilent Technologies, Inc. Synchronizing clocks across sub-nets
CN100578510C (zh) * 2001-08-14 2010-01-06 韦里希特外观有限公司 时序不灵敏及无假信号逻辑设备
US6748506B2 (en) * 2001-10-15 2004-06-08 Intel Corporation Bus frame protocol
US6965952B2 (en) * 2001-10-15 2005-11-15 Intel Corporation Bus framer
TWI235248B (en) * 2004-04-28 2005-07-01 Univ Nat Chiao Tung Self-healing fiber bragg grating sensor system
JP4503565B2 (ja) 2006-08-31 2010-07-14 日本電信電話株式会社 伝送送信装置、伝送受信装置、伝送信号送信方法、および伝送信号受信方法
US7864747B2 (en) * 2008-03-28 2011-01-04 Embarq Holdings Company, Llc System and method for communicating timing to a remote node

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1591376A (zh) * 2003-09-04 2005-03-09 松下电器产业株式会社 资源管理装置
CN101055479A (zh) * 2007-05-29 2007-10-17 北京中星微电子有限公司 一种实现非时钟控制寄存器数据更新的系统及方法

Also Published As

Publication number Publication date
US8503482B2 (en) 2013-08-06
TWI426391B (zh) 2014-02-11
KR101340763B1 (ko) 2013-12-12
JP2012509612A (ja) 2012-04-19
KR20110095248A (ko) 2011-08-24
CN102057360A (zh) 2011-05-11
WO2010059150A1 (en) 2010-05-27
EP2366154A4 (en) 2016-08-10
JP5731391B2 (ja) 2015-06-10
US20110211582A1 (en) 2011-09-01
TW201020798A (en) 2010-06-01
EP2366154A1 (en) 2011-09-21

Similar Documents

Publication Publication Date Title
CN102057360B (zh) 使用自定时的时分复用总线的互连
US4670871A (en) Reliable synchronous inter-node communication in a self-routing network
US8352774B2 (en) Inter-clock domain data transfer FIFO circuit
Bainbridge et al. Chain: a delay-insensitive chip area interconnect
KR100758983B1 (ko) Gals 기반 네트워크 온 칩 및 그 데이터 전송방법
Saastamoinen et al. Interconnect IP node for future system-on-chip designs
Saastamoinen et al. Buffer implementation for Proteo network-on-chip
EP1468372B1 (en) Asynchronous crossbar with deterministic or arbitrated control
US10476656B2 (en) System and method for asynchronous, multiple clock domain data streams coalescing and resynchronization
CN101473286B (zh) 控制数据处理设备中的功率消耗
Song et al. Asynchronous spatial division multiplexing router
CN1926799B (zh) 包括相互异步电路模块的电路
Nambinina et al. Extension of the lisnoc (network-on-chip) with an axi-based network interface
CN104834629A (zh) 总线型的中央处理器
JP2002141922A (ja) ループ型バスシステム
Arango et al. Staged circuit switching
Kim et al. Asynchronous interface circuit for nonlinear connectivity in multicore spiking neural networks
Thompson et al. The STC104 packet routing chip
Campobello et al. Hardware for multiconnected networks: the design flow
JP3718715B2 (ja) 演算子群を用いた非同期回路の設計方法
US7076680B1 (en) Method and apparatus for providing skew compensation using a self-timed source-synchronous network
Chang et al. Self-timed torus network with 1-of-5 encoding
Brej et al. Reduction in synchronisation in bundled data systems
US20080155142A1 (en) System for transmitting data between transmitter and receiver modules on a channel provided with a flow control link
JPS62502229A (ja) パケット・スイッチング・多重キュ−n×mスイッチ・ノ−ド及び処理方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee

Owner name: INFINEON TECHNOLOGIES CORP.

Free format text: FORMER NAME: LSI CORP.

CP01 Change in the name or title of a patent holder

Address after: California, USA

Patentee after: LSI Corp.

Address before: California, USA

Patentee before: LSI Corporation

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20160721

Address after: Singapore Singapore

Patentee after: Avago Technologies General IP (Singapore) Pte. Ltd.

Address before: California, USA

Patentee before: LSI Corp.

TR01 Transfer of patent right

Effective date of registration: 20181023

Address after: Singapore Singapore

Patentee after: Avago Technologies General IP (Singapore) Pte. Ltd.

Address before: Singapore Singapore

Patentee before: Avago Technologies General IP (Singapore) Pte. Ltd.

TR01 Transfer of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20140122

Termination date: 20181119

CF01 Termination of patent right due to non-payment of annual fee