CN101228733B - 在两个异步系统之间传递数据的方法及异步数据缓冲器 - Google Patents

在两个异步系统之间传递数据的方法及异步数据缓冲器 Download PDF

Info

Publication number
CN101228733B
CN101228733B CN200680026580.5A CN200680026580A CN101228733B CN 101228733 B CN101228733 B CN 101228733B CN 200680026580 A CN200680026580 A CN 200680026580A CN 101228733 B CN101228733 B CN 101228733B
Authority
CN
China
Prior art keywords
data
significance bit
input
asynchronous
data element
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
CN200680026580.5A
Other languages
English (en)
Other versions
CN101228733A (zh
Inventor
罗伯特·赫勒伊
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 CN101228733A publication Critical patent/CN101228733A/zh
Application granted granted Critical
Publication of CN101228733B publication Critical patent/CN101228733B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0016Arrangements for synchronising receiver with transmitter correction of synchronization errors
    • H04L7/005Correction by an elastic buffer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor

Abstract

本发明涉及一种用于在两个异步系统之间对突发传递的m个数据元素进行传递的异步数据缓冲器。该异步数据缓冲器包括用于存储突发数据的m个数据元素的数据存储器(112)和用于存储与m个数据元素相应的m个输入有效位的有效位存储器(114)。输入控制逻辑电路(116)生成m个输入有效位并且控制这些输入有效位和m个数据元素的存储。在存储了m个输入有效位之后,提供输入控制信号,用来将后面的突发数据的输入有效位反相。因此,在各次m个数据元素的突发传递之后,都要使输入有效位反相,以自动致使前次突发传递的所有数据元素呈现出无效。

Description

在两个异步系统之间传递数据的方法及异步数据缓冲器
本申请要求2005年7月22日提交的名称为《EfficientAsynchronous Data Buffer Implementation》的在先提交申请S/N:60/702,053(代理人卷号第002086US1号)的优先权,并且该在先申请以引用的方式整体并入本文。 
技术领域
本发明总体上涉及两个系统之间的接口技术,并且尤其涉及一种用于在两个与异步时钟域关联的系统之间进行数据传递的异步数据缓冲器。
背景技术
即便在简单的计算机中,相互通信的很多不同组件都与不同的时钟域相关联,即,它们与具有不同频率的不同时钟同步。例如,CPU是以显著高于计算机的其它组件(比如盘驱动器)的频率进行工作的。当两个组件或系统与不同的时钟域相关联时,它们之间的数据通信是同步地或异步地实现的。在同步数据传递中,要使两个系统的时钟与第三个时钟域同步。不过,同步数据传递中时钟域的强关联性会约束高性能通信链路的设计。异步数据传递通过消除时钟域的强关联性而提供了更高的设计灵活性。
可惜,异步接口也具有诸如数据同步需要额外的等待时间和数据传递期间出现数据讹传的可能性增加之类的缺点。数据讹传是由于跨越异步接口存在亚稳性而发生的。现有技术思想的状况是两级同步器和两阶段握手(handshake)方法。不过,这些思想具有性能与可靠性之间不希望有的折衷,或者要使用大大增加系统复杂性的复杂同步逻辑。新近的技术利用数据有效位来降低亚稳状态的风险。在美国专利US6,516,420中,Audityan等人讲授了用于使各个数据元同步 的有效位,在使用数据采样器完成各次处理之后重置这些有效位。不过,有效位的重置严重限制了效率和数据流量,因为数据缓冲存储单元只有在有效位重置之后才可用。同样的问题出现在Carpenter等人在美国专利申请20030074593中讲授的方法中,这种方法要求有效位一经使用就要进行清零。
提供一种更加有效并且具有较高数据流量的异步数据缓冲器应该是合乎需求的。
发明内容
因此,本发明的一个目的是提供一种通过大大减少等待时间而更加有效并且具有更高数据流量的异步数据缓冲器。
本发明的另一个目的是提供一种不需要重置或清零有效位的异步数据缓冲器。
按照本发明,给出了一种用于在两个异步系统之间对突发传递的m个数据元素进行传递的异步数据缓冲器。该异步数据缓冲器包括:用于从发送系统接收突发数据的m个数据元素的数据输入端口、和在与其进行的通信中用于存储m个数据元素的数据存储器,其中各个数据元素存储在预定地址位置。在有效位存储器中,存储了m个输入有效位,其中各个输入有效位存储在与各数据元素的预定地址位置对应的预定地址位置。与数据存储器和有效位存储器进行控制通信的输入控制逻辑电路用于确定地址位置、创建m个输入有效位、并提供用于对后面的突发数据的输入有效位进行反相的输入控制信号。输出控制逻辑电路与数据存储器、有效位存储器和有效位输出端口进行通信,输出控制逻辑电路用于控制m个数据元素的读取和这些数据元素向接收系统的提供、基于m个输入有效位和一个输出控制信号创建m个输出有效位(这m个输出有效位用来提供给接收系统)、并使与数据存储器和有效位存储器进行控制通信的控制逻辑电路反相。
附图说明
现在将结合附图介绍本发明的实例实施方式,其中:
图1是图解说明使用按照本发明的异步数据缓冲器在两个异步系统之间进行通信的简化框图;
图2是图解说明按照本发明的异步数据缓冲器的示例实施方式的简化框图;和,
图3是图解说明使用按照本发明的异步数据缓冲器进行的数据传递的简化流程图。
具体实施方式
虽然本发明能够作出各种不同修改和可供选用的形式,但是本发明的说明是以附图中的实例的方式给出的,并且将会对该实例加以详细介绍。不过,应当理解,我们的意图并非是将本发明局限于所介绍的特定实施方式。相反,我们的意图是覆盖所有落在由所附权利要求定义的本发明的思想和范围之内的改变方案、等价方案和其它可供选用的替换方案。
为了使按照本发明的异步数据缓冲器及其操作得到更加透彻的理解,将在下文中参照图1介绍使用异步数据缓冲器的示例实施方式在两个系统之间进行的通信。为了避免在与两个不同的时钟域(分别为时钟信号clk_A和clk_B)相关联的发送系统A和接收系统B之间进行数据传递期间发生数据丢失,实施了握手协议。在发送系统A开始向接收系统B发送数据之前,接收系统B需要准备好接收该数据,否则即使不丢失全部数据,也会丢失至少一部分数据。如图1中所示,发送系统A通过发送握手信号hs_A来请求数据传递并且等待进行数据传递,直到接收系统B通过向发送系统A发送握手信号hs_B来答复它准备好了接收数据。为了增加两个系统之间的数据流量,使用了突发传递,即,在数据传递得到接收系统B答复时发送多个数据元素,而不是针对每个单独的数据元素进行握手。在这种情况下,接收系统B在它发送握手信号hs_B时答复它准备好了接收m个n位数据元素。为了防止当发送系统A的时钟域clk_A的频率高于接收系统B的时钟域clk_B时发生数据丢失,例如,防止CPU与诸如盘驱动器之类的外围设备之间的数据传递过程中发生数据丢失,在发送系统A和接收系 统B之间插入了异步数据缓冲器100。当接收系统B答复它准备好了接收数据时,发送系统A通过发送针对m个数据元素的每一个的允许写入信号WE并发送dout[n]上的数据元素来将m个数据元素传递到数据缓冲器100,以存储在它的存储器内。为了避免突发传递的等待时间随着每个突发传递的数据元素的数量m的增加而增加,发送系统A和接收系统B需要同时访问数据缓冲器100,即,接收系统B并非等到发送系统A完成将m个数据元素写入到数据缓冲器100的存储器中才读取数据元素。不过,由于与不同时钟域关联的两个系统是针对同一个存储器进行操作的,因此很有可能由于亚稳性问题而出现数据丢失或数据讹传。这个问题是通过每次在数据缓冲器的存储器中存储数据元素时创建有效位来克服的,该有效位向接收系统B表明所存储的数据元素属于由握手信号hs_A和hs_B答复的m个数据元素的当前突发传递。
图2以框图的形式图解说明按照本发明的异步数据缓冲器100的示例实施方式。数据缓冲器100包括用于与发送系统A连接的数据输入端口102和允许写入输入端口104,以及用于与接收系统B连接的数据输出端口106、允许读取输入端口108和有效位输出端口110。如图2中的垂直虚线所示,数据缓冲器100包括两个部分:数据输入部分(左侧),用于与发送系统A连接,并且因此与时钟域clk_A相关联;和数据输出部分(右侧),用于与接收系统B连接,并且因此与时钟域clk_B相关联。数据输入端口102与数据存储器112的数据输入端口D连接,数据存储器112优选的是具有用于存储每个为n位的m个数据元素的存储空间(即,系统A和B之间突发传递的最大可能大小)的RAM。允许写入输入端口104与数据存储器112的允许写入输入端口WE连接、与有效位存储器114(优选的是m位RAM)的允许写入输入端口WE连接、并且与输入控制逻辑电路116连接。输入控制逻辑电路116与数据存储器112的地址输入端口A连接并且与有效位存储器114的地址输入端口A连接,用于为其提供逻辑信号。
在示例实施方式中,输入控制逻辑电路116包括输入计数器118(比如二进制地址计数器)和输入有效位发生器,该输入有效位发生 器由输入反转触发器120与输入XOR门122组成。输入计数器118包括与允许写入输入端口104连接的E输入端口、与存储器112和114的地址输入端口A分别连接的Q输出端口、以及与输入反转触发器120的E输入端口连接的C输出端口。输入XOR门122包括分别与允许写入输入端口104和反转触发器120的Q输出端口连接的第一和第二输入端口、以及与有效位存储器114的数据输入端口D连接的输出端口。
在操作中,当在接收到允许写入信号WE之后将数据元素写入到存储器112中时,计数器118递增第一个输入逻辑信号并且通过将第一个输入逻辑信号传送到存储器112的地址输入端口A来寻址存储器112中的后面的空位置。同时,在输入XOR门122中基于从输入反转触发器120接收到的第二输入逻辑信号和允许写入信号WE创建输入有效位(二进制0或1),然后按照与第一个输入逻辑信号所控制的数据元素的地址位置相应的地址位置来将该输入有效位存储在有效位存储器114中。由于一直到从输入计数器118接收到第三输入逻辑信号为止,允许写入信号WE总是优选地为同样的二进制信号0或1并且输入反转触发器120优选地产生同样的二进制信号0或1,因此会创建同样的输入有效位。在接收到与m个数据元素相对应的m个允许写入信号WE之后,输入计数器118回零并且向输入反转触发器120发送第三输入逻辑信号。在收到第三输入逻辑信号时,输入反转触发器120产生反相的第二输入逻辑信号,这会导致输入XOR门122产生反相的输入有效位(从二进制0变化到二进制1,或者反之)。因此,在m个数据元素的各次突发传递之后,将输入有效位反相,自动致使之前突发传递的所有数据元素无效。
数据缓冲器100的数据输出部分包括有效位同步电路123、有效位多路复用器124、输出数据多路复用器125和输出控制逻辑电路126。有效位同步电路123与有效位存储器114的数据输出端口Q和有效位多路复用器124的数据输入端口相连,并且在示例实施方式中,包括m个并联的两级同步器synch[1]到synch[m],一个同步器对应于与m个数据元素相对应的m个输入有效位的一个,各个两级同 步器包括串联连接的两个触发器123A和123B,并且第一触发器123A与发送系统A的时钟域clk_A相关联,第二触发器123B与接收系统B的时钟域clk_B相关联。在操作中,有效位同步电路123使输入有效位与接收系统B的时钟域clk_B同步。有效位多路复用器124的数据输入端口与有效位同步电路123连接,而数据输出端口和控制逻辑输入端口与输出控制逻辑电路126连接。取决于从输出控制逻辑电路126接收到的第一输出逻辑信号,有效位多路复用器124传递来自于m个同步器synch[1]到synch[m]之一的输入有效位。输出数据多路复用器125的数据输入端口与数据存储器112的数据输出端口Q连接,输出数据多路复用器125的数据输出端口与数据输出端口106连接,并且控制逻辑输入端口与输出控制逻辑电路126连接。取决于从输出控制逻辑电路126接收到的第一个输出逻辑信号,数据多路复用器125传递来自于数据存储器112中的相应地址位置的m个数据元素之一。
在示例实施方式中,输出控制逻辑电路126具有与输入控制逻辑电路116类似的结构,并且包括输出计数器128(比如二进制地址计数器)和输出反转触发器130与输出XOR门132的组合。输出计数器128包括与允许读取输入端口108连接的E输入端口、分别与多路复用器124和125的控制逻辑输入端口连接的Q输出端口、以及与输出反转触发器130的E输入端口连接的C输出端口。输出XOR门132包括分别与有效位多路复用器124的数据输出端口和输出反转触发器130的Q输出端口连接的第一和第二输入端口、以及与有效位输出端口110连接的输出端口。
在操作中,当接收到允许读取信号RE并且因此从存储器112中读取出数据元素时,输出计数器128递增第一个输出逻辑信号并且通过将第一个输出逻辑信号传送到数据多路复用器125的控制逻辑输入端口来寻址存储器112中的后面的位置。同时,在XOR门中基于从输出反转触发器130接收到的第二输出逻辑信号和从有效位多路复用器124接收到的输入有效位来创建输出有效位(二进制0或1),然后随着供给由提供给有效位多路复用器124的第一个输出逻辑信 号控制的输入有效位,来将该输出有效位传递到有效位输出端口110。由于一直到从输出计数器128接收到第三输出逻辑信号为止,输入有效位对于突发传递的m个数据元素是相同的并且输出反转触发器130优选地产生相同的二进制信号0或1,因此会创建同样的输出有效位。在接收到与m个数据元素相对应的m个允许读取信号RE之后,输出计数器128回零并且向输出反转触发器130发送第三输出逻辑信号。在接收到第三输出逻辑信号时,输出反转触发器130产生反相的第二输出逻辑信号。在接收到反相的输入有效位和反相的第二输出逻辑信号的情况下,输出XOR 132会在后面的突发传递中产生用来供应给接收系统B的同样的输出有效位。因此,按照本发明的数据缓冲器100在m个数据元素的各次突发传递之后使输入有效位反相,从而在内部自动地使前一突发传递的所有数据元素呈现出无效,但是向接收系统B提供同样的输出有效位。
参照图3,示出了使用按照本发明的异步数据缓冲器传递突发传递的m个数据元素的方法的简化流程图。在下文中,将会分为与异步数据缓冲器的输入和输出部分相关的两个部分介绍该方法。如图3中的流程图中所示,一旦检测到了表明已经将突发传递的第一个数据元素存储在数据存储器中的第一个有效位,就将同时进行这两个部分。
参照方框10,从发送系统A接收到第一个允许写入信号WE和突发传递的m个数据元素中的第一个数据元素。然后将第一个数据元素存储(方框12)在数据存储器112中的第一个地址位置上。使用第一个允许写入信号WE和输入控制信号,创建第一个输入有效位并且将其存储在有效位存储器114中的第一个地址位置上(方框14)。允许写入信号WE此外还用于递增地址位置(方框16)。然后重复进行上述由方框10到16表示的步骤,直到接收到第m个允许写入信号WE和第m个数据元素(方框18)。将第m个数据元素存储在数据存储器112中的第m个地址位置上(方框20)。使用第m个允许写入信号WE和输入控制信号,创建第m个输入有效位并且将其存储在有效位存储器114中的第m个地址位置上(方框22)。最终,使用第m 个允许写入信号WE返回到第一个地址位置并使输入控制信号反相,结果为后续的突发传递得出了反相的输入有效位(方框24)。
参照方框30,从接收系统B接收第一个允许读取信号RE。然后从有效位存储器114的第一个地址位置中取出第一个输入有效位(方框32)。这个步骤之后是使用第一个输入有效位和输出控制信号生成第一个输出有效位以及将其提供给接收系统B(方框34)。在第一个输出有效位生效时,从数据存储器112中的第一个地址位置中取出第一个数据元素,并且将其提供给接收系统B(方框36)。使用第一个允许读取信号RE来递增地址位置(方框38)。然后重复进行上述由方框30到38表示的步骤,直到接收到第m个允许读取信号RE为止(方框40)。然后从有效位存储器114的第m个地址位置中取出第m个输入有效位(方框42)。这个步骤之后是使用第m个输入有效位和输出控制信号生成第m个输出有效位以及将其提供给接收系统B(方框44)。在第m个输出有效位生效时,从数据存储器112中的第m个地址位置中取出第m个数据元素并且将其提供给接收系统B(方框46)。最后,使用第m个允许读取信号RE回转到第一个地址位置并且将输出控制信号反相,这使得当在后面的突发传递期间与反相的输入有效位一起处理时得到同样的输出有效位(方框48)。
通过利用在各次突发传递之后反相的有效位使两个异步系统之间进行的突发传递的数据元素逐个同步,使得异步数据缓冲器100具有很高的优异性。因此,异步数据缓冲器100能够在降低了亚稳性问题的风险的前提下实现对发送以及接收系统的同时访问,同时通过消除有效位清零或重置的必要,大大减少了等待时间。此外,由于门电路数量很少的简单设计并且输入控制逻辑电路116与输出控制逻辑电路126具有基本上相同的设计,因此异步数据缓冲器100很容易实现,这大大降低了设计和生产成本。优选的是,将所有的部件都集成在单独一个半导体芯片上,该芯片是利用用于基本上需要相同制造步骤的输入控制逻辑电路116和输出控制逻辑电路126的设计相同的部件来制造的。根据情况,将异步数据缓冲器100与系统A和B之一一起集成在单独一个半导体芯片上。例如,异步数据缓冲器100非常 有利于能够实现两个异步系统之间的突发传递的系统总线实现方案。了解针对突发传递的系统要求,可以通过执行存储在存储介质上的基于上面的介绍的命令,在计算机上设计出异步数据缓冲器100。
使用示例实施方式图解说明了按照本发明的异步数据缓冲器100的实现方案,但是很显然,异步数据缓冲器100的实现方案并不局限于此。存在许许多多的实现输入有效位的反相和生成同样的输出有效位的可能性。很容易将异步数据缓冲器100的逻辑电路改造成产生除了结合示例实施方式公开的二进制0和1之外的其它逻辑信号作为输入和输出有效位。根据情况,异步数据缓冲器100逻辑电路适合于接收一个允许写入和/或允许读取信号而连续写入和/或读取例如由时钟信号clk_A和clk_B控制的m个数据元素。此外,图2中所示的实现方案包括由上升时钟脉冲边缘触发的边缘触发逻辑元件,不过很显然,也可以使用下降时钟脉冲边缘。
本发明的众多其它实施方式对于本领域技术人员而言是显而易见的,不会超出所附权利要求中定义的本发明的思想和范围。

Claims (10)

1.一种用于在两个异步系统之间对突发传递的m个数据元素进行传递的方法,包括:a)从发送系统(A)接收(10)突发数据的m个数据元素中的第一个数据元素;b)将第一个数据元素存储(12)在数据存储器(112)中的第一个地址位置;c)创建(14)第一个输入有效位并且将其存储在有效位存储器(114)中的第一个地址位置;d)递增(16)地址位置;e)重复进行(18)a)到d),直到已经存储了第m个数据元素和第m个输入有效位为止;f)回转(24)到第一个地址位置并且提供用于将后面的突发数据的输入有效位反相的输入控制信号;g)从有效位存储器(114)的第一个地址位置中读取(32)第一个输入有效位;h)基于第一个输入有效位和输出控制信号创建(34)第一个输出有效位并且将其提供给接收系统(B);i)从数据存储器(112)的第一个地址位置中读取(36)第一个数据元素并且将其提供给接收系统;j)递增(38)地址位置;k)重复进行(40)g)到k),直到已经读取了第m个数据元素并且已经将其提供给了接收系统为止;以及,l)回转(48)到第一个地址位置并且将后面的突发数据的输出控制信号反相。
2.按照权利要求1所述的用于在两个异步系统之间对突发传递的m个数据元素进行传递的方法,其中g)到l)中的至少一部分是与e)同时进行的。
3.一种异步数据缓冲器,其用于在两个异步系统之间对突发传递的m个数据元素进行传递,所述异步数据缓冲器包括:数据输入端口(102),用于从发送系统(A)接收突发数据的m个数据元素;数据存储器(112),其与数据输入端口(102)通信,用于存储所述m个数据元素,其中各个数据元素存储在预定的地址位置;有效位存储器(114),用于存储m个输入有效位,其中各个输入有效位存储在与各数据元素的预定地址位置对应的预定地址位置;输入控制逻辑电路(116),其与数据存储器(112)和有效位存储器(114)进行控制通信,所述输入控制逻辑电路用于:确定地址位置;创建m个输入有效位;并且提供用于将后面的突发数据的输入有效位反相的输入控制信号;输出控制逻辑电路(126),其与数据存储器(112)、有效位存储器(114)和有效位输出端口(110)进行通信,所述输出控制逻辑电路用于:控制m个数据元素的读取及m个数据元素向接收系统的提供;基于m个输入有效位和一个输出控制信号来创建m个输出有效位,所述m个输出有效位用于提供给接收系统;和,将后面的突发数据的输出控制信号反相;和,数据输出端口(106),其与数据存储器(112)进行通信用于将m个数据元素提供给接收系统(B)。
4.按照权利要求3所述的异步数据缓冲器,其用于在两个异步系统之间对突发传递的m个数据元素进行传递,所述异步数据缓冲器包括:允许写入输入端口(104),其与有效位存储器(114)、数据存储器(112)和输入控制逻辑电路(116)进行通信,所述允许写入输入端口用于从发送系统(A)接收允许写入信号。
5.按照权利要求4所述的异步数据缓冲器,其用于在两个异步系统之间对突发传递的m个数据元素进行传递,所述异步数据缓冲器的特征在于:输入控制逻辑电路(116)包括与允许写入输入端口(104)、有效位存储器(114)和数据存储器(112)进行通信的输入计数器(118),所述输入计数器(118)用于依据允许写入信号来确定地址位置并且用于提供输入控制信号。
6.按照权利要求5所述的异步数据缓冲器,其用于在两个异步系统之间对突发传递的m个数据元素进行传递,所述异步数据缓冲器的特征在于:输入控制逻辑电路(116)包括与允许写入输入端口(104)、有效位存储器(114)和输入计数器(118)进行通信的输入有效位发生器(120,122),所述输入有效位发生器用于依据允许写入信号和输入控制信号来创建m个输入有效位。
7.按照权利要求3到6中任何一项所述的异步数据缓冲器,其用于在两个异步系统之间对突发传递的m个数据元素进行传递,所述异步数据缓冲器包括:有效位多路复用器(124),其与有效位存储器(114)和输出控制逻辑电路(126)进行通信,用于依据从输出控制逻辑电路(126)接收的第二控制信号来发送m个输入有效位。
8.按照权利要求3到6中任何一项所述的异步数据缓冲器,其用于在两个异步系统之间对突发传递的m个数据元素进行传递,所述异步数据缓冲器包括:允许读取输入端口(108),其与输出控制逻辑电路(126)进行通信,所述允许读取输入端口用于从接收系统(B)接收允许读取信号。
9.按照权利要求8所述的异步数据缓冲器,其用于在两个异步系统之间对突发传递的m个数据元素进行传递,所述异步数据缓冲器的特征在于:输出控制逻辑电路(126)包括与允许读取输入端口(108)、有效位多路复用器(124)和数据多路复用器(125)进行通信的输出计数器(128),所述输出计数器用于依据允许读取信号来确定m个输入有效位和m个数据元素的地址位置,并且用于提供输出控制信号。
10.按照权利要求9所述的异步数据缓冲器,其用于在两个异步系统之间对突发传递的m个数据元素进行传递,所述异步数据缓冲器的特征在于:输出控制逻辑电路(126)包括与有效位多路复用器(124)、输出计数器(128)和有效位输出端(110)进行通信的输出有效位发生器(130,132),所述输出有效位发生器用于依据m个输入有效位和输出控制信号来创建m个输出有效位。
CN200680026580.5A 2005-07-22 2006-07-21 在两个异步系统之间传递数据的方法及异步数据缓冲器 Expired - Fee Related CN101228733B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US70205305P 2005-07-22 2005-07-22
US60/702,053 2005-07-22
US73545605P 2005-11-10 2005-11-10
US60/735,456 2005-11-10
PCT/IB2006/052514 WO2007010502A1 (en) 2005-07-22 2006-07-21 Asynchronous data buffer

Publications (2)

Publication Number Publication Date
CN101228733A CN101228733A (zh) 2008-07-23
CN101228733B true CN101228733B (zh) 2011-10-12

Family

ID=37451210

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200680026580.5A Expired - Fee Related CN101228733B (zh) 2005-07-22 2006-07-21 在两个异步系统之间传递数据的方法及异步数据缓冲器

Country Status (6)

Country Link
US (1) US7899955B2 (zh)
EP (1) EP1911188B1 (zh)
JP (1) JP2009503640A (zh)
CN (1) CN101228733B (zh)
AT (1) ATE529966T1 (zh)
WO (1) WO2007010502A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8205110B2 (en) * 2008-11-03 2012-06-19 Oracle America, Inc. Synchronous operation of a system with asynchronous clock domains
CN102207919A (zh) * 2010-03-30 2011-10-05 国际商业机器公司 加速数据传输的处理单元、芯片、计算设备和方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5956748A (en) * 1997-01-30 1999-09-21 Xilinx, Inc. Asynchronous, dual-port, RAM-based FIFO with bi-directional address synchronization
US6880050B1 (en) * 2000-10-30 2005-04-12 Lsi Logic Corporation Storage device, system and method which can use tag bits to synchronize queuing between two clock domains, and detect valid entries within the storage device

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5084837A (en) * 1988-01-22 1992-01-28 Sharp Kabushiki Kaisha Fifo buffer with folded data transmission path permitting selective bypass of storage
US5781802A (en) * 1995-02-03 1998-07-14 Vlsi Technology, Inc. First-in-first-out (FIFO) controller for buffering data between systems which are asynchronous and free of false flags and internal metastability
US5898893A (en) * 1995-10-10 1999-04-27 Xilinx, Inc. Fifo memory system and method for controlling
US5884099A (en) * 1996-05-31 1999-03-16 Sun Microsystems, Inc. Control circuit for a buffer memory to transfer data between systems operating at different speeds
US6058439A (en) * 1997-03-31 2000-05-02 Arm Limited Asynchronous first-in-first-out buffer circuit burst mode control
JP3545908B2 (ja) * 1997-06-25 2004-07-21 株式会社リコー データ処理装置
US6055285A (en) * 1997-11-17 2000-04-25 Qlogic Corporation Synchronization circuit for transferring pointer between two asynchronous circuits
US6141691A (en) * 1998-04-03 2000-10-31 Avid Technology, Inc. Apparatus and method for controlling transfer of data between and processing of data by interconnected data processing elements
US6516420B1 (en) * 1999-10-25 2003-02-04 Motorola, Inc. Data synchronizer using a parallel handshaking pipeline wherein validity indicators generate and send acknowledgement signals to a different clock domain
US6519688B1 (en) * 2000-09-29 2003-02-11 S3 Incorporated Read data valid loop-back for high speed synchronized DRAM controller
US6931561B2 (en) * 2001-10-16 2005-08-16 International Business Machines Corporation Apparatus and method for asynchronously interfacing high-speed clock domain and low-speed clock domain using a plurality of storage and multiplexer components
JP4095317B2 (ja) * 2002-03-14 2008-06-04 富士通株式会社 非同期式半導体記憶装置、非同期式半導体記憶装置の内部制御方法及びシステム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5956748A (en) * 1997-01-30 1999-09-21 Xilinx, Inc. Asynchronous, dual-port, RAM-based FIFO with bi-directional address synchronization
US6880050B1 (en) * 2000-10-30 2005-04-12 Lsi Logic Corporation Storage device, system and method which can use tag bits to synchronize queuing between two clock domains, and detect valid entries within the storage device

Also Published As

Publication number Publication date
US20080201499A1 (en) 2008-08-21
US7899955B2 (en) 2011-03-01
JP2009503640A (ja) 2009-01-29
EP1911188B1 (en) 2011-10-19
EP1911188A1 (en) 2008-04-16
WO2007010502A1 (en) 2007-01-25
CN101228733A (zh) 2008-07-23
ATE529966T1 (de) 2011-11-15

Similar Documents

Publication Publication Date Title
EP1825382B1 (en) Low protocol, high speed serial transfer for intra-board or inter-board data communication
CN101599053B (zh) 支持多种传输协议的串行接口控制器及控制方法
JP4042856B2 (ja) クロックドメイン交差fifo
US6658509B1 (en) Multi-tier point-to-point ring memory interface
US7328399B2 (en) Synchronous serial data communication bus
KR0164395B1 (ko) 반도체 메모리 장치와 그 리이드 및 라이트 방법
US20020163361A1 (en) Source synchronous I/O without synchronizers using temporal delay queues
US20100135430A1 (en) Data transmitting device, data receiving device, data transmitting system, and data transmitting method
JP3730898B2 (ja) データ・ストローブ・プロトコルを使用した主記憶装置
CN105335326A (zh) 一种基于fpga的pcie转sata接口阵列的装置
JPH1153169A (ja) 低電力で相互接続の簡単なマイクロプロセッサ及びメモリー・インターフェース
JP2000099193A (ja) 同期装置および同期方法ならびにインタフェ―ス回路
US20100064083A1 (en) Communications device without passive pullup components
CN101377691B (zh) 一种apb总线跨时钟域访问的电路及方法
US20100174936A1 (en) Communicating Via An In-Die Interconnect
EP0217486B1 (en) A synchronizing system
WO1999038295A1 (en) Method and apparatus for source synchronous data transfer
CN101228733B (zh) 在两个异步系统之间传递数据的方法及异步数据缓冲器
TWI451260B (zh) 記憶體系統及方法
US6640277B1 (en) Input staging logic for latching source synchronous data
US6920578B1 (en) Method and apparatus for transferring data between a slower clock domain and a faster clock domain in which one of the clock domains is bandwidth limited
CN1856835A (zh) 同步的ram存储电路
EP0829095B1 (en) Method and apparatus for reducing latency time on an interface by overlapping transmitted packets
TW202306365A (zh) 用於互連協定的訊框接收的資料處理的方法以及儲存裝置
CN114840458B (zh) 读写模块、片上系统和电子设备

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20111012

Termination date: 20150721

EXPY Termination of patent right or utility model