CN1836206A - 流水线同步设备 - Google Patents

流水线同步设备 Download PDF

Info

Publication number
CN1836206A
CN1836206A CNA2004800027263A CN200480002726A CN1836206A CN 1836206 A CN1836206 A CN 1836206A CN A2004800027263 A CNA2004800027263 A CN A2004800027263A CN 200480002726 A CN200480002726 A CN 200480002726A CN 1836206 A CN1836206 A CN 1836206A
Authority
CN
China
Prior art keywords
output
clock
input
external unit
mousetrap
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.)
Granted
Application number
CNA2004800027263A
Other languages
English (en)
Other versions
CN100419673C (zh
Inventor
J·L·W·科斯塞斯
A·M·G·皮特斯
S·J·金
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.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
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 Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of CN1836206A publication Critical patent/CN1836206A/zh
Application granted granted Critical
Publication of CN100419673C publication Critical patent/CN100419673C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3867Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
    • G06F9/3869Implementation aspects, e.g. pipeline latches; pipeline synchronisation and clocking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/02Speed or phase control by the received code signals, the signals containing no special synchronisation information

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种用于在具有不同时钟频率的时钟装置之间转送数据的流水线同步设备。所述流水线同步设备包括用于与所述外部设备之一交换数据的诱捕缓冲器,所述诱捕缓冲器具有用于协调与所述外部设备进行数据交换的信令输出。所述流水线同步设备还包括同步器,所述同步器适于使信令输出的变化与所述外部设备的时钟同步。

Description

流水线同步设备
本发明涉及一种流水线同步设备,用于在具有不同时钟频率的定时装置之间转送数据。
将来的发展削弱了全局时钟VLSI电路的作用。VLSI代表超大规模集成。VSLI电路在芯片上具有100.000到1百万个晶体管。全局时钟意味着用相同的时钟频率来驱动电路的所有部件。芯片上系统设计倾向于产生包含几个模块的芯片,其中用不同的时钟频率来驱动所述模块。将来日益发展的技术将难于分送高速低偏移时钟信号。偏移代表时钟信号中定时或相位的改变,这是信号流过模块花费时间的结果。因此,将来芯片将包含几个本地时钟子模块,其彼此之间相互通信。这些系统被称为GALS(全局异步、局部同步)系统。可以根据同步子模块通信的方式来区分这两种系统。
在时钟同步系统中,子模块具有所谓的看似真实的时钟,其是可以暂停的环形振荡器。通过同步所述时钟来获得安全通信。
在数据同步系统中,子模块具有自由运行时钟并且从一个时钟到另一时钟传递的数据被同步。这种数据同步系统可以从1994年11月出版的、异步电路和系统的发展研究的国际讨论会的会议记录(Proceedings International Symposium on advanced research in asynchronous circuits and systems)第87到96页中的J.N.Seizovic提出的流水线同步中获知。流水线同步缓冲器由三个部分组成:写入部分、中间部分和读取部分。所述写入部分用写入时钟来同步输入操作,而读取部分用读取时钟来同步输出操作。中间部分是异步缓冲器,其用来去耦两个同步的部分。所有三个部分的设计都是基于波纹缓冲器(异步缓冲器)的。在J.N.Seizovic提出的“流水线同步”中给出了从波纹缓冲器到同步缓冲器的变换。此变换是基于在两个邻近单元中间插入部件,所述部件用时钟相位来同步信号交换。基本等待部件(称作等待4)延迟四相信号交换的完成,直到附加信号时钟为高。由于当信号交换开始时信号时钟可以降低,所以可能出现冲突,这意味着在设计所述部件时需要所谓的判优器。基本判优器(也称作互斥元件)具有两个输入请求信号和两个输出确认信号。当对应的请求信号升高时确认信号升高,而当请求信号降低时确认信号降低。但是存在一个限制:至多一个确认信号可以为高。如果一个确认信号为高而其它请求信号也升高,那么判优器忽略其它请求信号,直到所述确认信号降低。当两个请求信号同时升高时,判优器必须决定哪个确认信号应该首先升高。当进行判定时,判优器可以无限期地保持在亚稳定状态。
图6示出了基于基本判优器的等待4部件的设计。所述等待4部件由基本判优器60和反相器65组成。在所述基本判优器60中输入反相的时钟信号。在所述等待4部件中不使用对应于所述反相时钟信号的基本判优器的确认信号。每当反相的时钟信号为高并且对应的输出信号为高时,在图6中对应于请求信号d的确认信号e为低,而不管请求信号d。如果反相的时钟信号为低,即时钟为高,那么确认信号e可能只从低到高。只在时钟的高相位期间转送信号d中的上边沿。立即把信号d中的下降沿转送给信号e。
图1示出了常规的诱捕缓冲器(mousetrap buffer)的设计,其是使用二相单轨信号交换在邻近单元之间发信号进行通信的波纹缓冲器。每个单元具有两个信令输出,读取请求信号(Rreq)和写入确认信号(WACK)。诱捕缓冲器具有两个信令输入:写入请求输入(Wreq)和读取确认输入(Rack)。把读取请求输出和读取确认输入连接到EXNOR门。EXNOR门的输出控制诱捕缓冲器的寄存器。如果信号en为高,那么缓冲器中的所有锁存器是透明的,这意味着锁存器的输出等于输入。在此状态下,可以把数据写入所述诱捕缓冲器。如果所述信号en降低,那么使诱捕缓冲器的锁存器不透明。只要所述缓冲器不透明,那么任何数据都不能被转送到所述缓冲器。二相相位交换协议中的通信只由两个信号交换事件组成:第一,发送器借助于所谓的请求信号的转变来表明正在提供新数据。然后接收器借助于确认信号的转变来表明已经接收数据。重要的是获知所述请求信号的改变和确认信号的改变表明各自的事件。请求信号和确认信号的转变可以是所述信号上边沿或下边沿的转变。因此每个二相通信反相所述信号交换的信号。与四相信号交换通信对比,其留下的信号是不变的。四相信号交换总是以两个信号都为低开始的。二相信号交换以两个信号相等(高或低)开始。在诱捕缓冲器中,使用请求信号来传递数据项(满的存储桶),而使用确认信号来使满的缓冲区清空(恢复空的存储桶)。经由请求信号来完成传递数据项(满的存储桶),而使用确认信号来恢复空的存储桶。当已经把数据写入诱捕缓冲器时,使所述写入确认信号等于所述写入请求信号。借此,空的存储桶回到先前的诱捕缓冲器,而把满的存储桶转送到随后的诱捕缓冲器。
诱捕缓冲器具有几个属性,其使GALS系统中的流水线同步非常吸引人。
在许多GALS(全局异步,局部同步)系统中,时钟还意味着距离,在这种情况下传输延迟是十分重要的。为此,二相协议比四相协议更吸引人。诱捕缓冲器是快速的,这意味着其允许同步缓冲器中存在高的时钟速率。此外,对于给定的时钟频率而言,更快的缓冲器具有更多的时间来处理亚稳定状态,这使得出现同步故障的可能性变得更小。空的诱捕缓冲器具有每个单元只有一个锁存器延迟的等待时间。
图2示出了如何把两个诱捕单元MS1和MS2彼此连接,以便形成异步(自定时的)流水线。把诱捕1的读取确认输入连接到诱捕2的写入确认输出。诱捕1的读取请求输出等于诱捕2的写入请求输入。诱捕1的读取数据输出等于诱捕2的写入数据输入。这种缓冲器不能用于桥时钟域,这是因为所述信号交换的信号会异步改变(可能不满足设置和保持要求)。
因此本发明的目的是提供一种流水线同步设备,其快速而又可靠地操作。
所述目的是由一种流水线同步设备来实现的,以便在具有不同时钟频率的定时外部设备之间转送数据。所述流水线同步设备包括用于与外部时钟设备之一交换数据的诱捕缓冲器。诱捕设备可以读取或混合来自外部设备的数据,或者把数据写入到外部设备。诱捕缓冲器具有用于协调与外部设备进行数据交换的信令输出。所述信令输出可以是到外部设备的写入确认信号,其把数据写入诱捕缓冲器,或者是读取请求信号,用于向外部设备转送数据。同步器适于使信令输出的变化与外部设备的时钟同步。信令输出的变化可以是上边沿或下边沿的信号。所述诱捕缓冲器是波纹缓冲器。所述信令输出可以异步改变。因此,所述诱捕缓冲器可以不与内部定时设备通信。由于同步器,诱捕缓冲器的信令输出可以满足所制造的外部设备的设置与保持要求。采用这种方法,诱捕缓冲器可以用于流水线同步。
所述同步器可以适于使改变的信令输出与外部设备时钟的高相位或低相位同步。换句话说,如果外部设备的时钟为高或低,那么只转送信令输出中的上边沿或下边沿。为此,同步器延迟转送信令输出的变化,直到外部设备的时钟为高或低。如果时钟为高或低来开始,即当出现信令输出的变化时,那么所述同步器不延迟转送。这样可以满足外部设备的设置和保持要求。
优选地是,同步器包括同步锁存器。所述同步锁存器具有用于接收信令输出的同步输入。锁存器还包括用于向外部设备输出所接收的信令输出的同步输出,和用于启用向所述外部设备输出该接收的信令输出的控制输入。当所述控制输入为高时,锁存器变得透明并且输入到锁存器的信号等于来自锁存器的信令输出。同步锁存器用于延迟转送信令输出的变化,直到控制输入启用所述锁存器。
可以用下列方式来实现控制输入与外部设备的时钟相位的同步:所述同步器还包括EXNOR门。所述EXNOR门具有两个输入端和一个输出端。把EXNOR门的输入端连接到同步锁存器的同步输入和输出。如果诱捕缓冲器的信令输出没有变化,那么EXNOR门的输入和输出相等。因此,关闭EXNOR门,即EXNOR门的输出为低。如果诱捕缓冲器的信令输出改变,那么同步锁存器的输入和输出将不同。因此,开启EXNOR门,即EXNOR门的输出为高。所述同步器还包括等待部件,其连接到EXNOR门的输出端和外部设备的时钟。把等待部件的输出端连接到同步锁存器的控制输入。等待部件使同步锁存器的控制输入与外部设备时钟的相位同步。优选地是,如果外部设备的时钟为高,那么等待部件只适于输出在输入中从低到高的变化。如果外部设备的时钟为低,那么即使等待部件的输入为高,等待部件的输出也保持为低。如果输入为高,其表示各自时钟的状态,那么等待部件的输出保持为高。立即输出在输入端中从高到低的变化,其分别是外部设备时钟的状态。因此,如果所述时钟为高,那么只把EXNOR门的高输出转送到控制输入。此后只要EXNOR门为高,那么控制输入保持为高。如果同步锁存器的同步输入和同步输出相等,那么EXNOR门为低。高控制输入均衡了同步输入和同步输出。
优选地是,等待部件包括反相器和判优器。判优器具有两个输入端和两个输出端。总体上,如果对应的输入信号升高,那么判优器的输出信号升高,而如果对应的输入信号降低,那么所述输出信号降低。但是由于存在至多输出信号之一可以为高的限制,所以此规则存在例外。如果输入信号之一为高而其它输入信号升高,那么判优器忽略其它输入信号。这意味着输出信号保持不变。对应于其它输入信号的输出信号保持为低。判优器的输入端之一接收所述外部设备的反相时钟信号。所述反相器使所述时钟信号反相。判优器的其它输入端适于接收EXNOR门的输出。对应于EXNOR门输入的判优器的输出用于发送所述输入。判优器的其它输出在等待部件中不起作用。如果外部设备的时钟信号为低,那么判优器对应的输入为高。
先前讨论的本发明的实施方式涉及相位同步。这意味着把信令输出的变化与外部设备时钟的高相位或低相位同步。优选地是,所述同步器可以适于使信令输出的改变与外部设备时钟的上升沿和/或下降沿同步。可以通过利用二相同步器来实现边沿同步器,所述二相同步器均适于延迟信令输出变化的转送,直到外部设备的时钟为高或低。提供两个诱捕缓冲器。把第一诱捕缓冲器连接到外部设备,而把第二诱捕缓冲器连接到第一诱捕缓冲器。两个同步器的第一同步器使第一诱捕缓冲器到外部设备的信令输出与外部时钟的高相位或低相位同步。第二同步器使第二诱捕缓冲器到第一诱捕缓冲器的信令输出与外部时钟的另一相位同步。例如,使到第一诱捕缓冲器的信令输入与外部时钟的低相位同步。作为响应,产生第一诱捕缓冲器的信令输出。总体上,在外部时钟的低相位期间将把信令输出发送到第一同步器。第一同步器延迟把信令输出转送到第一诱捕缓冲器,直到外部时钟为高。在此例子中,使第一诱捕缓冲器的信令输出与外部时钟的上边沿同步。
还可以通过使用两个等待部件来实现锁存同步器。两个等待部件中的每个使在输入中的变化与外部时钟的相位同步。两个等待组件都具有两个输入端。一个输入端用于接收外部时钟,而另一输入端用于接收要发送的信号。如果所接收的时钟信号为高,那么只发送在输入信号中的变化。一旦这种等待部件的输出为高,那么其不管所接收时钟的状态如何,都保持为高,直到输入信号从高到低改变。把两个等待部件彼此连接。第一等待部件向外部设备输出信号,而第二等待部件接收来自诱捕缓冲器的信令输出。第二等待部件接收来自外部设备的反相时钟,而第一等待部件接收外部设备的时钟。第二等待部件只在外部时钟的低相位期间,向第一等待部件发送在信令输出中从低到高的变化。第一等待部件只在外部时钟的高相位期间发送在第二等待部件的输出中的变化。因此,使信令输出与外部时钟的上边沿同步。所述同步只发生在信令输出的上边沿,这是由于所述等待部件没有使在输入中从高到低的变化与外部时钟相位同步。
为了使信令输出的上边沿和下边沿都与外部时钟边沿同步,还需要另外的部件。为此,同步器包括具有同步输入和同步输出的同步锁存器。同步输入接收诱捕缓冲器的信令输出。把同步输出连接到外部设备。所述同步锁存器还具有控制输入。如果同步锁存器的控制输入为高,那么只把在同步锁存器的同步输入和同步输出之间的变化转送到外部设备。如果控制输入为高,那么使所述锁存器的同步输出等于同步输入。把同步锁存器的同步输入和同步输出都连接到异或非(exclusive nor)门的输入端。只要同步输入和输出相等,那么EXNOR门的输出就为低。如果同步输入和同步输出不同,那么EXNOR门的输出为高。高的EXNOR门输出表明向同步锁存器提供的信令输入有变化。EXNOR门的输出用于控制锁存器。如果使EXNOR门的输出与外部设备的时钟边沿同步,那么其启用转送并且信令输出的变化与所述时钟边沿同步。
下面参考附图来描述本发明的实施例。
图1示出了依照技术现状的诱捕缓冲器,
图2示出了彼此连接的依照技术现状的两个诱捕缓冲器,
图3示出了依照本发明第一实施例的流水线同步设备的写入部分,
图4示出了依照本发明第一实施例的流水线同步设备的读取部分,
图5示出了本发明第一实施例的同步器,
图6示出了第一实施例的同步器的等待部件,
图7示出了本发明第二实施例的同步器,
图8示出了用于图7同步器的四相上边沿部件(UE4),
图9示出了依照本发明第二实施例的流水线同步设备的诱捕缓冲器,
图10a示出了依照本发明第三实施例的流水线同步设备的写入部分,和
图10b示出了依照本发明第三实施例的流水线同步设备的读取部分,
图11示出了依照本发明第四实施例的流水线同步设备。
在图3中示出的依照第一实施例的流水线同步设备的写入部分包括诱捕缓冲器(MT)和同步器(S)。把诱捕缓冲器MT和同步器S连接到写入装置WD。写入装置具有被输出到同步器S的内部时钟CLK。同步器S使诱捕缓冲器MT的写入确认信号Wack与写入装置WD的时钟CLK同步。图3中的诱捕缓冲器MT对应于在图1中示出的常规诱捕缓冲器。如果已经把数据Wdat写入诱捕缓冲器MT,那么写入确认信号Wack从高到低或从低到高改变。同时使诱捕缓冲器MT不透明,这意味着不可以把进一步的数据写入所述诱捕缓冲器MT。诱捕缓冲器MT改变读取请求信号Rreq。此信号变化表明可以从诱捕缓冲器MT读取数据。同步器S延迟把写入确认信号中的变化转送到写入装置WD。写入确认信号Wack中的变化可以组成上边沿和下边沿转变。由于诱捕缓冲器MT依照二相协议来操作,所以写入确认协议的上边沿和下边沿转变可以表明:缓冲器已经接收了写入数据Wdat。借此,通知写入装置:不可以把附加数据写入所述诱捕缓冲器MT,直到写入确认信号再次改变。必须与所述写入装置的内部时钟同步来接收所述写入确认信号,以便写入装置可以处理诱捕缓冲器MT的信令输出。
图4示出了依照本发明第一实施例的流水线同步设备的读取部分。把图4中的诱捕缓冲器MT连接到读取装置RD,其从诱捕缓冲器读取数据Rdat。必须使诱捕缓冲器MT向读取装置RD发信号来与读取装置RD的时钟CLK同步。为此,把对应于图3中的同步器S的同步器S插入在诱捕缓冲器MT的读取请求输出和读取装置RD的读取请求输入之间。把读取装置RD的内部时钟输入到同步器S。同步器S延迟把读取请求信号Rreq中的变化转送到读取装置RD。因此,使读取请求信号的变化与读取装置的内部时钟CLK同步。
图5依照第一实施例示出了用于图3和4的同步器。图5中的同步器S包括具有输入SI和输出SO的锁存器L。图5中的同步输入SI对应于图3中的写入确认信号Wack并且对应于图4中的读取请求信号Rreq。图5中的同步输出SO对应于图3中的同步器到写入装置WD的输出,并且对应于图4中的同步器到读取装置RD的输出。如果到锁存器L的控制输入E为高,那么使锁存器L的同步输出SO等于锁存器的同步输入SI。图3和4中的诱捕缓冲器MT的信令输出的变化对应于锁存器L的同步输入SI和同步输出SO的变化。借助于等待部件wait4来使此信号输出转变的转送与写入装置WD或读取装置RD的时钟CLK同步。所述wait4部件使锁存器L的控制输入与外部时钟CLK同步。由于连接到输入SI和输出SO的EXNOR门50,所以如果输入SI和输出SO不同,那么等待部件的输入d为高,而如果输入SI和输出SO相等,那么所述输入d为低。信号d从低到高的变化表示诱捕缓冲器MT的信号输出的变化。wait4部件延迟信号d中的上边沿,直到时钟CLK为高。因此,锁存器L的控制输入D只可以在时钟CLK的高相位期间从低到高改变。因此,使图3和4中的信令输出的上边沿或下边沿与写入装置WD或读取装置RD的对应的时钟CLK的高相位同步。
图6示出了图5中的wait4部件的设计。所述wait4部件包括判优器60和反相器65。所述反相器65使外部设备WD或RD的时钟信号CLK反相。判优器60具有两个输出。两个输出中只有一个输出、即输出e是用于等待部件的。判优器60的输出e是对应于判优器60的输入d的输出。这意味着在任何时候信号e等于信号d,除非对应于所反相时钟信号输入的判优器60的第二输出为高。
图7示出了二相边沿同步器,其用于本发明的第二实施例。图7的同步器具有与在图5中示出的同步器同样的设计,只有一处不同:图5中的wait4部件由四相上边沿部件UE4来代替。四相高相位上边沿部件UE4被设计成用于使输入信号d中的上边沿转变与外部时钟CLK的上边沿同步。包围UE4部件的部件负责把四相上边沿部件UE4变换到同步器中,所述同步器使信号的上边沿和下边沿与时钟CLK中的上边沿转变同步。只要输入信号SI和输出信号SO彼此相等,那么EXNOR门50就具有低输出d。如果不管怎样SI和SO不同,那么EXNOR门50具有高输出d。信号SI中的下边沿转变和信号SI中的上边沿转变都会导致EXNOR门50的高输出。EXNOR门不能区分上边沿和下边沿转变。因此,由部件UE4使上边沿和下边沿转变同步,每当在信号SI中出现上边沿或下边沿转变时,所述部件UE4接收来自所述EXNOR门50的上边沿信号d。由UE4部件使上边沿信号d与时钟CLK的上边沿同步。把同步的信号输出到锁存器L的控制输入e,随后其使输出信号SO等于输入信号SI。借此,与时钟CLK的上边沿同步来转送输入信号的变化。
图8示出了四相上边沿部件UE4的设计,其可以用于在图7中示出的同步器。通过把两个wait4部件彼此连接来构造部件UE4。第一wait4部件接收信号d,所述信号d将被同步。第二wait4部件接收第一wait4部件的输出ar。反相器80使外部时钟信号CLK反相。把所反相的时钟输入到第一wait4部件。第二wait4部件接收所述时钟信号CLK。只在时钟CLK的低相位期间,即当第一wait4部件的时钟输入为高时,才转送信号输入d中的上边沿。在这种情况下,输入到第二wait4部件的信号ar为高,而第二wait部件的时钟输入为低。输出信号e保持低,直到时钟CLK从低到高。只要输入d为高,第一wait4部件的输出ar就不受时钟CLK变化的影响。因此,信号d中的上边沿与时钟CLK中的上边沿同步。在开启第一wait4部件之前,反相器80的延迟在下降时钟边沿负责关闭第二wait4部件。
图9示出了依照本发明第二实施例的诱捕缓冲器的设计。图7中示出的诱捕缓冲器具有所有部件,在图1中示出的常规诱捕缓冲器都拥有这些部件。图1和7中的相同的附图标记表示相同的特征。另外,图7中的诱捕缓冲器包括同步器(s)。所述同步器(s)使从诱捕缓冲器的EXOR门输出的信号d与外部写入装置(未示出)的时钟同步。为此,所述同步器(s)接收写入装置的时钟(CLK)。诱捕缓冲器被如此设计,以便使到写入装置的信令输出(Wack)与写入装置的时钟(CLK)同步。已经把信号输出的同步集成到诱捕缓冲器中。
缓冲器的设计利用了以下事实,锁存器(L)的控制输入(e)执行四相信号交换协议,其当实现空存储桶时开始(使锁存器透明)。因此,可以通过把四相同步器(s)合并在诱捕单元的锁存控制中来同步空存储桶的实现。相位同步器的设计远比边沿同步器的设计简单。因此,减少了同步化的开销。然而,由于所述单元只同步空存储桶的实现,所以其只能用于缓冲器的写入部分。由此改进了写入部分的性能。诱捕缓冲器的写入部分总体上比读取部分要慢。经由请求信号来完成传递来自诱捕缓冲器的数据项(满的存储桶),而使用确认信号来返回空的存储桶。用于传递数据项的速度受到锁存器延迟的限制。用于传递空存储桶的速度受EXNOR门和锁存器的延迟的限制。因此,当缓冲器全速运行时,传递空存储桶是瓶颈。由于把同步组件集成在诱捕缓冲器中,所以写入部分提供了与读取部分几乎相同的性能。
集成到锁存器使能控制电路中的UE4部件将使Rack的到达与Clk同步。此后,锁存器是透明的,并且信号Wack直接符合信号Wreq。因为信号Wreq起源于由Clk驱动的同步域,从而其与此Clk同步,信号Wack也与Clk同步。在某种程度上,在此同步化期间,Wack组合地取决于Wreq,并且仅仅是此信号的延迟模型。在时钟域中,这假定时钟寄存器在从Wack到Wreq的路径中,以便对于下一时钟周期来计算Wreq的新值。
图10a示出了依照本发明的流水线同步设备的写入部分的设计。写入部分是流水线的一部分,所述流水线接收来自写入装置的数据(未示出)。写入部分基本上对应于包括图2中所示的两个诱捕缓冲器的异步流水线。把图10a中的第一诱捕缓冲器MT1连接到写入装置WD(未示出)。以与图3所示的相同方式来建立与所述写入装置的连接。经由同步器把第一诱捕MT1的写入确认信号馈送到写入装置。使用第一wait2同步器,其使在诱捕缓冲器MT1的Wack信号中上边沿和下边沿的转变与高时钟相位同步。在第一和第二诱捕缓冲器MT1和MT2之间提供第二wait2部件。使来自诱捕缓冲器2的写入确认信号与反相的时钟信号同步。这意味着如果时钟为低,那么只把来自诱捕缓冲器MT2的写入确认信号的变化转送到诱捕缓冲器MT1。写入确认信号负责在诱捕缓冲器之间传递空的存储桶。在外部时钟CLK的低相位期间,把写入确认信号中的上边沿或下边沿从第二诱捕缓冲器MT2发送到第一诱捕缓冲器MT2。因此,使第一诱捕缓冲器MT1为空,并且改变第一诱捕缓冲器到写入装置的写入确认信号的状态。如果此变化发生在外部时钟的低相位期间,那么不发送该信号,这是由于wait2部件把信号Wack发送到写入装置WD。延迟该转送、直到时钟为高,即在时钟的上边沿转变期间。图10a给出的设计是用于依照本发明的流水线同步设备的写入部分的上边沿同步电路。
图10b描述了依照本实施例对应的流水线同步设备的读取部分的设计。此实施例使Rreq信号与Rclk同步,但是其具有一个缺点。由于只使Rreq与Rclk的高阶段同步,所以对于到达Rdat的新数据而言,实际上通知同步域(假定其是正边沿触发)就太迟了。因此,必须允许同步域用一个时钟周期来吸收在下一Rclk边沿的新数据。从而Rack对Rreq的依赖性要求时钟延迟(例如触发器),这减少了大约50%的吞吐量(就同步域看来)。因此优选实施例是其中Rreq信号并不直接与Rclk同步,而是其先兆。这通过把同步等待部件向左移动一个诱捕阶段来获得,如图11所示。
图11示出了本发明的另一实施例,其中接连地把两个等待部件插入在邻近的诱捕缓冲器之间。所述等待部件都接收外部时钟信号,其中一个等待部件包括反相器,其使所接收的时钟信号反相。在图11中示出的电路和在图10b中示出的电路之间的差异是流水线中所述等待部件的位置。在图10b中,一个等待部件位于流水线和外部读取装置之间的接口。而在图11中示出的流水线中不是这样。图11中示出的电路是图10b中电路的优选替换,并且用于读取同步化。

Claims (17)

1.一种用于在具有不同时钟频率(CLK)的定时装置(WD,RD)之间转送数据的流水线同步设备,包括
诱捕缓冲器(MT,MT1,MT2),用于与所述外部设备(WD,RD)之一交换数据(Wdat,Rdat),所述诱捕缓冲器(MT,MT1,MT2)具有用于协调与所述外部设备(WD,RD)进行数据交换的信令输出(Wack,Rreq),
其特征在于
同步器(S1,S2),适于使信令输出(Wack,Rreq)的变化与外部设备(WD,RD)的时钟(CLK)同步。
2.如权利要求1所述的流水线同步设备,其中所述同步器(S1)适于使信令输出(Wack,Rreq)的变化与外部设备(WD,RD)的时钟(CLK)的高相位或低相位同步。
3.如权利要求2所述的流水线同步设备,其中同步器(S1)适于延迟转送信令输出(Wack,Rreq)的变化,直到外部设备(WD,RD)的时钟(CLK)为高或低。
4.如权利要求3所述的流水线同步设备,其中所述同步器(S1)包括同步锁存器(L),其具有用于接收信令输出(Wack,Rreq)的同步输入(SI),用于向外部设备(WD,RD)输出所接收的信令输出(Wack,Rreq)的同步输出(SO)和用于启动向外部设备(WD,RD)输出所接收的信令输出(Wack,Rreq)的控制输入(e)。
5.如权利要求4所述的流水线同步设备,其中所述同步器(S1)包括具有两个输入端和一个输出端的EXNOR门(50),EXNOR门(50)的输入端连接到同步锁存器(L)的同步输入(SI)和输出(SO),并且所述同步器(S1)包括等待部件(Wait4),其具有连接到EXNOR门(50)输出的输入(d)、连接到外部设备(WD,RD)时钟(CLK)的输入和连接到同步锁存器(L)控制输入(e)的输出。
6.如权利要求5所述的流水线同步设备,其中如果外部设备(WD,RD)的时钟(CLK)为高,那么所述等待部件(Wait4)只适于输出所述输入(d)中从低到高的变化,并且不管外部设备(WD,RD)时钟(CLK)的状态如何,输出所述输入(d)中的从高到低的变化。
7.如权利要求6所述的流水线同步设备,其中所述等待部件(Wait4)包括反相器(65)和判优器(60),所述判优器(60)具有用于接收反相的时钟信号(CLK)的输入,所述时钟信号(CLK)由反相器(65)来反相,还具有用于接收EXNOR门(50)的输出的输入(d)和用于发送所述输入(d)的输出。
8.如权利要求1所述的流水线同步设备,其中所述同步器(S2)适于使信令输出(Wack,Rreq)的变化与外部设备(WD,RD)的时钟(CLK)的上升沿和/或下降沿同步。
9.如权利要求8所述的流水线同步设备,其中所述同步器(S2)包括如权利要求3所述的两个同步器(S1),其适于延迟转送信令输出(Wack,Rreq)的变化,直到外部设备(WD,RD)的时钟(CLK)为高或低,其中两个同步器(S1)的第一个适于向外部设备(WD,RD)转送第一诱捕缓冲器(MT1)的信令输出(Wack,Rreq)的变化,而两个同步器(S1)的第二个适于接收外部设备(WD,RD)的反相时钟(CLK),并且适于向第一诱捕缓冲器(MT1)转送第二诱捕缓冲器(MT2)的信令输出。
10.如权利要求8所述的流水线同步设备,其中所述同步器(S2)包括边沿同步器(UE4),其具有两个如权利要求6所述的等待部件(Wait4),每一个都适于如果所接收的时钟为高时只输出所述输入(d)中的从低到高的变化,并且不管所接收的时钟的状态如何,都输出所述输入(d)中从高到低的变化,其中两个等待部件(Wait4)的第一个适于接收外部设备(WD,RD)的时钟并且向所述外部设备输出其输入(ar)的变化,而两个等待部件(Wait4)中的第二个适于接收来自外部设备(WD,RD)的反相时钟(CLK)并且向第一等待部件(Wait4)的输入(ar)输出其输入(d)的变化。
11.如权利要求10所述的流水线同步设备,其中所述同步器(S2)包括同步锁存器(L),其具有用于接收信令输出(Wack,Rreq)的同步输入(SI),用于向外部设备(WD,RD)输出所接收的信令输出(Wack,Rreq)的同步输出(SO)和用于启动向外部设备(WD,RD)输出所接收的信令输出(Wack,Rreq)的控制输入(e)。
12.如权利要求11所述的流水线同步设备,其中所述同步器(S2)包括具有两个输入端和一个输出端的EXNOR门(50),EXNOR门(50)的输入连接到同步锁存器(L)的同步输入(SI)和输出(SO),并且所述同步器(S2)包括边沿同步器(UE4),其具有连接到EXNOR门(50)输出的输入(d)、连接到外部设备(WD,RD)时钟(CLK)的输入和连接到同步锁存器(L)的控制输入(e)的输出。
13.如权利要求1所述的流水线同步设备,其中诱捕缓冲器(MT1)适于接收来自外部设备(WD)的数据(Wdat),并且所述诱捕缓冲器具有用于告知所述外部设备(WD)收到数据的信令输出(Wack)。
14.如权利要求1所述的流水线同步设备,其中诱捕缓冲器(MT2)适于向外部设备(RD)转送数据(Rdat),并且所述诱捕缓冲器具有用于请求向所述外部设备(RD)转送数据的信令输出(Rreq)。
15.如权利要求13所述的流水线同步设备,其中所述诱捕缓冲器(MT1)包括EXOR门,用于接收来自诱捕缓冲器(MT1)的读取请求信号(Rreq)和读取确认信号(Rack),具有用于使能并禁止接收和转送数据的控制输入(e)的锁存器,其中所述同步器适于使所述EXOR门的输出(d)与外部设备(WD)的时钟(CLK)同步,并且适于向锁存器(L)的控制输入(e)提供同步输出(d)。
16.如权利要求15所述的流水线同步设备,其中同步器(S2)适于使EXOR门的输出(d)的变化与外部设备(WD)的时钟(CLK)的上升沿和/或下降沿同步。
17.一种用于在具有不同时钟频率(CLK)的定时装置之间转送数据的方法,包括步骤:
使用诱捕缓冲器来与所述外部设备(WD,RD)之一交换数据(Wdat,Rdat),其中所述诱捕缓冲器(MT,MT1,MT2)输出信号(Wack,Rreq)以便协调与所述外部设备的数据交换,其特征在于还包括步骤:
使输出信号(Wack,Rreq)的变化与外部设备(WD,RD)的时钟(CLK)同步。
CNB2004800027263A 2003-01-24 2004-01-14 流水线同步设备以及相应的方法 Expired - Fee Related CN100419673C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP03075239.8 2003-01-24
EP03075239 2003-01-24

Publications (2)

Publication Number Publication Date
CN1836206A true CN1836206A (zh) 2006-09-20
CN100419673C CN100419673C (zh) 2008-09-17

Family

ID=32748897

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004800027263A Expired - Fee Related CN100419673C (zh) 2003-01-24 2004-01-14 流水线同步设备以及相应的方法

Country Status (5)

Country Link
US (1) US7519759B2 (zh)
EP (1) EP1609057A2 (zh)
JP (1) JP2006522378A (zh)
CN (1) CN100419673C (zh)
WO (1) WO2004066142A2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113489482A (zh) * 2021-07-06 2021-10-08 北京中科芯蕊科技有限公司 基于Mousetrap的异步微流水线数据流控制器

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE602004021771D1 (de) * 2004-04-30 2009-08-13 St Microelectronics Res & Dev Betriebsmittelverwaltung
US7116601B2 (en) * 2004-12-28 2006-10-03 Via Technologies, Inc. Pseudo-synchronization of the transportation of data across asynchronous clock domains
DE102008004857B4 (de) * 2008-01-17 2013-08-22 Entropic Communications, Inc. Verfahren zur Übertragung von Daten zwischen wenigstens zwei Taktdomänen
EP2466479B1 (en) 2010-12-20 2013-11-27 STMicroelectronics (Grenoble 2) SAS Interface system, and corresponding integrated circuit and method
EP2466478B1 (en) * 2010-12-20 2013-11-27 STMicroelectronics (Grenoble 2) SAS Communication system, and corresponding integrated circuit and method
US11128742B2 (en) 2019-03-08 2021-09-21 Microsemi Storage Solutions, Inc. Method for adapting a constant bit rate client signal into the path layer of a telecom signal
US10972084B1 (en) 2019-12-12 2021-04-06 Microchip Technology Inc. Circuit and methods for transferring a phase value between circuits clocked by non-synchronous clock signals
US11323123B2 (en) 2019-12-20 2022-05-03 Microchip Technology Inc. Circuit to correct phase interpolator rollover integral non-linearity errors
US10917097B1 (en) 2019-12-24 2021-02-09 Microsemi Semiconductor Ulc Circuits and methods for transferring two differentially encoded client clock domains over a third carrier clock domain between integrated circuits
US11239933B2 (en) 2020-01-28 2022-02-01 Microsemi Semiconductor Ulc Systems and methods for transporting constant bit rate client signals over a packet transport network
US11424902B2 (en) 2020-07-22 2022-08-23 Microchip Technology Inc. System and method for synchronizing nodes in a network device
US11838111B2 (en) 2021-06-30 2023-12-05 Microchip Technology Inc. System and method for performing rate adaptation of constant bit rate (CBR) client data with a variable number of idle blocks for transmission over a metro transport network (MTN)
US11916662B2 (en) 2021-06-30 2024-02-27 Microchip Technology Inc. System and method for performing rate adaptation of constant bit rate (CBR) client data with a fixed number of idle blocks for transmission over a metro transport network (MTN)
US11736065B2 (en) 2021-10-07 2023-08-22 Microchip Technology Inc. Method and apparatus for conveying clock-related information from a timing device
US11799626B2 (en) 2021-11-23 2023-10-24 Microchip Technology Inc. Method and apparatus for carrying constant bit rate (CBR) client signals

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5389835A (en) * 1991-04-12 1995-02-14 Hewlett-Packard Company Vector logic method and dynamic mousetrap logic gate for a self-timed monotonic logic progression
JP3279337B2 (ja) * 1991-04-12 2002-04-30 ヒューレット・パッカード・カンパニー ねずみ取り論理回路用万能パイプラインラッチ
JPH0784947A (ja) * 1993-09-20 1995-03-31 Hitachi Ltd インターフェース装置
US5758139A (en) * 1993-10-21 1998-05-26 Sun Microsystems, Inc. Control chains for controlling data flow in interlocked data path circuits
US5435520A (en) * 1994-09-07 1995-07-25 Cooper Industries, Inc. Backseat assembly for an expanding gate valve
EP0787327B1 (en) * 1995-08-23 2002-06-12 Koninklijke Philips Electronics N.V. Data processing system comprising an asynchronously controlled pipeline
US5964866A (en) * 1996-10-24 1999-10-12 International Business Machines Corporation Elastic self-timed interface for data flow elements embodied as selective bypass of stages in an asynchronous microprocessor pipeline
US6097775A (en) * 1998-02-17 2000-08-01 Lsi Logic Corporation Method and apparatus for synchronously transferring signals between clock domains
CA2412438A1 (en) 2000-06-09 2001-12-13 The Trustees Of Columbia University In The City Of New York Low latency fifo circuits for mixed asynchronous and synchronous systems
WO2002035346A1 (en) 2000-10-23 2002-05-02 The Trustees Of Columbia University In The City Of New York Asynchronous pipeline with latch controllers

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113489482A (zh) * 2021-07-06 2021-10-08 北京中科芯蕊科技有限公司 基于Mousetrap的异步微流水线数据流控制器
CN113489482B (zh) * 2021-07-06 2023-10-20 北京中科芯蕊科技有限公司 基于Mousetrap的异步微流水线数据流控制器

Also Published As

Publication number Publication date
CN100419673C (zh) 2008-09-17
US7519759B2 (en) 2009-04-14
JP2006522378A (ja) 2006-09-28
WO2004066142A3 (en) 2006-03-09
US20060076988A1 (en) 2006-04-13
EP1609057A2 (en) 2005-12-28
WO2004066142A2 (en) 2004-08-05

Similar Documents

Publication Publication Date Title
CN100419673C (zh) 流水线同步设备以及相应的方法
CN106897238B (zh) 一种数据处理装置及方法
EP0798630A1 (en) A synchronizer, method and system for transferring data
US8520464B2 (en) Interface circuit and semiconductor device incorporating same
US20100322365A1 (en) System and method for synchronizing multi-clock domains
US7134035B2 (en) Method for generating a synchronization signal based on the clock ratio between two clock domains for data transfer between the domains
CN105975246B (zh) 无需同步器的自填充多时钟fifo
JP2005505200A (ja) データ有効インジケータ及びスキュー不耐性データグループを有するパラレルデータ通信
CN114117972B (zh) 一种异步电路的同步装置和方法
US7242737B2 (en) System and method for data phase realignment
US7518408B2 (en) Synchronizing modules in an integrated circuit
US6977979B1 (en) Enhanced clock forwarding data recovery
JPH08111675A (ja) 同期回路
CN108694146B (zh) 一种异步/同步接口电路
US8718215B2 (en) Method and apparatus for deskewing data transmissions
JP2002368727A (ja) 半導体集積回路
EP1313006A2 (en) Data transfer circuit between different clock regions
US7328361B2 (en) Digital bus synchronizer for generating read reset signal
Kessels et al. Bridging clock domains by synchronizing the mice in the mousetrap
KR102415074B1 (ko) 지연 회로 및 비동기 파이프라인 제어기, 이의 제어 방법, 및 이를 갖는 회로
JP5378765B2 (ja) データ転送システム
US8078948B2 (en) Two-phase data-transfer protocol
JP2596336B2 (ja) 非同期ディジタル通信装置
JPH06236345A (ja) 信号伝送用バス
JP3147842B2 (ja) データ転送システム及びデータ転送方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20080917

Termination date: 20100222