CN100377072C - 先进先出存储系统及其方法 - Google Patents

先进先出存储系统及其方法 Download PDF

Info

Publication number
CN100377072C
CN100377072C CNB028099672A CN02809967A CN100377072C CN 100377072 C CN100377072 C CN 100377072C CN B028099672 A CNB028099672 A CN B028099672A CN 02809967 A CN02809967 A CN 02809967A CN 100377072 C CN100377072 C CN 100377072C
Authority
CN
China
Prior art keywords
data
push
multiplexer
write
fifo
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
CNB028099672A
Other languages
English (en)
Other versions
CN1524215A (zh
Inventor
约翰·J·金
理查德·G·柯林斯
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.)
NXP USA Inc
Original Assignee
Freescale Semiconductor Inc
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 Freescale Semiconductor Inc filed Critical Freescale Semiconductor Inc
Publication of CN1524215A publication Critical patent/CN1524215A/zh
Application granted granted Critical
Publication of CN100377072C publication Critical patent/CN100377072C/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
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • 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
    • G06F5/065Partitioned buffers, e.g. allowing multiple independent queues, bidirectional FIFO's

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Communication Control (AREA)
  • Debugging And Monitoring (AREA)
  • Multi Processors (AREA)
  • Storing Facsimile Image Data (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种先进先出(FIFO)存储系统(10)包括第一和第二FIFO(A和B)。第一和第二复用器(12和14)中的每个都具有两个可以接收数据的输入端。第一复用器(12)的输出端连接到第一FIFO(A)上,并且第二复用器(14)的输出端连接到第二FIFO(B)上。对应于一种类型的数据,写控制逻辑(90,95,100)被用来控制将数据交替写进第一和第二FIFO(A和B)中。对应于第二种类型数据,写控制逻辑(90,95,100)被用来控制将数据同时写进第一和第二FIFO(A和B)中。

Description

先进先出存储系统及其方法
技术领域
本发明一般涉及带有内存存储系统的集成电路,尤其涉及使用先进先出(FIFO)存储结构的集成电路。
背景技术
在集成电路的数据处理系统上完成的实时调试系统中,在把调试信息输出到调试工具之前先把调试信息存储起来是必要的。先进先出(FIFO)存储系统一般用来临时存储调试消息。有些调试消息有多路入口单元,需要多路同时存储,有些调试消息只需要单路存储。
为了在同一FIFO结构中能存储这两种调试消息,需要使用双端口FIFO或者分开的专用FIFO。可是,由于在FIFO的每一入口单元上都要有复用器来允许存储两种类型的调试消息,使得双端口FIFO需要有大的表面积。而且,数目众多的复用器需要有大量的逻辑来控制复用器的路由选择,与之相应的就是增加了由于逻辑切换引起的能量消耗。
实现FIFO存储系统的另一种方法是使用两个独立的专用FIFO。例如,一个FIFO只接收地址信息,而另一个FIFO只接收数据。这种方法的好处在于集成电路上的表面积可以小一些,而且设计的复杂程度也要小些。可是,由于在一个FIFO充满并且溢出的同时另一个FIFO并没有充满,使得它与双端口FIFO相比较,FIFO的利用效率会低些。
因此,希望有一个FIFO存储系统,能够高效地利用它的存储面积并且同时将为实现它而必须采用的控制逻辑减小到最少。
发明内容
根据本发明的一个方面,提供了一种先进先出存储系统,其包括:第一复用器,它具有第一数据输入端,第二数据输入端,一个数据输出端以及一个控制端;第一先进先出存储器,它具有多个入口单元,每个所述入口单元都有一个输入端连接到所述第一复用器的所述数据输出端上;第二复用器,它有连接到所述第一复用器的所述第一数据输入端上的第一数据输入端,连接到所述第一复用器的所述第二数据输入端上的第二数据输入端,一个数据输出端以及一个控制端;第二先进先出存储器,它具有多个入口单元,每个所述入口单元都有一个输入端连接到所述第二复用器的所述数据输出端上;和一个控制逻辑电路,它提供一控制信号,该控制信号促使写控制信号将被提供给所述第一和第二复用器中的每个的控制端,其中,当所述控制信号处于第一逻辑状态时,所述写控制信号用来将在所述第一和第二数据输入端接收到的多个数据入口单元交替地按逐个入口单元写进所述第一和第二先进先出存储器中,当所述控制信号处于第二逻辑状态时,所述写控制信号用于同时将多个数据入口单元写入所述第一和第二先进先出存储器。
根据本发明的另一个方面,提供了一种访问先进先出存储系统的方法,所述先进先出存储系统具有一个第一先进先出存储器和一个第二存先进先出储器,所述第一和第二先进先出存储器中的每一个都具有多个入口单元,所述第一先进先出存储器的多个入口单元的每一个的输入端都连接到第一复用器的一个输出端上,所述第二先进先出存储器的多个入口单元的每一个的输入端都连接到第二复用器的一个输出端上,所述方法包括如下步骤;在所述第一复用器的第一输入端和所述第二复用器的第一输入端接收数据;在所述第一复用器的第二输入端和所述第二复用器的第二输入端接收数据;和将所述数据从所述第一和第二复用器的所述输出端交替地写入所述第一和第二先进先出存储器,作为对来自处于第一逻辑状态的控制电路的控制信号的响应;和同时地将来自所述第一和第二多路复用器的输出端的所述数据写入所述第一和第二先进先出存储器,作为对来自处于所述第二逻辑状态的控制电路的控制信号的响应。
附图说明
结合例子和附图来说明本发明,但并不局限于附图中,图中相似的引用指示相似组件。
图1中示出了根据本发明实施例的先进先出存储系统的组成方框图;
图2示出了图1中示出的先进先出存储系统的更详细的组成方框图。
本领域技术人员应该认识到,图中所有组件都是为了简单和清楚的目的而绘制的,并不必须遵循原尺寸。比如,图中有些组件的尺寸可以相对于其它组件进行放大以助于增进对本发明的实施例的理解。
具体实施方式
在图1中示出的是根据本发明的先进先出(FIFO)存储系统10。在一种组成方案中,FIFO存储系统有两个FIFO,如图所示的FIFO A和FIFO B。应该可以理解的是,FIFO存储系统10可以用任何数目的FIFO来实现。FIFO A和FIFO B中每一个都可以有任意数目的存储入口单元。假设FIFO A有N路入口单元,而FIFO B有M路入口单元,其中N和M是正整数。输入A连接到复用器12和复用器14的第一输入端。输入B连接到复用器12和复用器14的第二输入端。D触发器16在触发器16的输出端提供一个与复用器12和复用器14的每个控制输入端相连的写信号。触发器16的输出端连接到非门18的输入端上。非门18的输出连接到触发器16的D输入端上。复用器12的输出与FIFO A的每一路入口单元相连,例如入口单元0,1到N。复用器14的输出与FIFO B的每一路入口单元相连,例如入口单元0,1到M。FIFOA每一路入口单元都有一个输出端,它们连接在一起,并且连接到复用器20的第一输入端上。FIFO B每一路入口单元也都有一个输出端,它们连接在一起,并且连接到复用器22的第一输入端上。FIFO A的输出端同时也和复用器22的第二输入端相连。同样的,FIFO B的输出端也和复用器20的第二输入端相连。D触发器23的Q输出端提供一个与复用器20和复用器22的每一个的控制端相连的读(READ)控制信号。触发器23的输出端连接到非门24的输入端上。复用器20的输出端连接到输入/输出(I/O)单元25的第一个输入端上。复用器22的输出端连接到输入/输出单元25的第二个输入端上。输入/输出接口单元上有I/O端口(图中没有示出)。
在操作中,FIFO存储系统10能够按照一种有效的方式同时进行多路入口单元的写操作。单个的复用器,比如说复用器12或复用器14,被分别地放置在FIFO A或FIFO B的写端口或输入端。假设用来解释那些包形式的信息被输入A和输入B接收到,就会以图2中所描述的连接方式把单个的数据包或数据部分从输入A或输入B只写进FIFO A或FIFO B中的一个中去。
如图1所示,从输入A和输入B输入的两个数据包或数据部分同时被写进FIFO A和FIFO B中。触发器16所起的作用就是一个一位(one-bit)写寄存器,写控制信号被用来指向FIFO A或FIFO B中的一个。当写控制信号为逻辑1时,复用器12选择输入A来提供输出,同时复用器14选择输入B来提供输出。当写控制信号为逻辑0时,复用器12选择输入B来提供输出,同时复用器14选择输入A来提供输出。此外,非门18的作用就在于,当每一个由与触发器16的时钟输入端(图中没有示出)相连的写时钟信号(图中没有示出)控制的单路写操作发生时,就切换触发器16的逻辑状态。另外,要求FIFO存储系统10中必须有一种操作来实现同时进行两个写操作,并且触发器16的逻辑状态保持一致。为了保证同时写,从输入A和输入B来的信息或仅连续连接到输入A或输入B中一个的信息被写入FIFO A和FIFO B中。在单路读操作中也采用相似的操作方式,触发器23所起的作用就是一个一位读寄存器,读控制信号用于指向FIFO A或FIFO B中的一个。当读控制信号为逻辑1时,复用器20选择FIFO A的输出来提供输出,同时复用器22选择FIFO B的输出来提供输出。当读控制信号为逻辑0时,复用器20选择FIFO B的输出来提供输出,同时复用器22选择FIFO A的输出来提供输出。产生一个读控制信号来响应与触发器23的时钟输入端(图中没有示出)相连的读时钟信号(图中没有示出)。此外,非门24的作用就在于,当每一次单个读操作发生时切换触发器的逻辑状态。另外,当两个读操作同时发生时,触发器23的逻辑状态保持一致。触发器23、非门24和复用器20,复用器22所起的作用就在于允许同时读取来自FIFO A和FIFA B的两个数据包或数据部分。另外,通过复用器20或复用器22的输出,能从单个FIFO中读取单个的数据包或数据部分。因此,由于相同的FIFO存储结构可以用来进行两种类型的操作,对于为了完成某种特定处理操作而进行同时存储多路信息以及在完成另外的处理操作时进行单路信息存储而言,FIFO存储系统是非常有效的。
为完成一个写进FIFO的写操作而在每个FIFO中仅使用一个复用器的电路可以大大节约费用。除避免了每个FIFO入口单元使用一个复用器之外,还避免了额外的控制电路。由于使用的复用器的数目少,其结果是显著地节省了能量消耗。在消除了复用器的同时,可以通过减少不必要的控制电路来实现另外一种节约能量的方法。本发明中同样有比例地(be scalable to)使用多个FIFO,其中,在系统中完成单个和同时的写操作仅仅需要每个FIFO一个复用器,在系统中完成单个和同时的读操作也同样只需要每个FIFO一个复用器。虽然只有一个能提供写入信息的复用器连接到每个FIFO,但是来自输入端A或输入端B的信息可以写进FIFO A或FIFO B中。应该很好理解的是,输入端A和输入端B接收和存储的信息的形式可以是数据、地址信息、控制信息或者是其中两者或更多种的组合。另外,术语“数据(data)”可以包含存储在示出的FIFO中的所有类型的信息。
如图2所示的是图1所示FIFO存储系统10的更详细的一个实施例。正如图2所示,FIFO存储系统30有一个输入端A和一个输入端B,它们接收将要存储在FIFO A和/或FIFO B中的信息。复用器32的第一输入端连接到输入端A,第二输入端连接到输入端B。复用器34的第一输入端连接到输入端A,第二输入端连接到输入端B。复用器32的一个输出端连接到FIFO A的N路入口单元中的每一入口单元上。FIFO A的第一入口单元上有多个触发器电路,例如触发器35-38。FIFOA的第N路入口单元上也有多个触发器电路,比如触发器45-48。触发器35-38和触发器45-48中的每一个触发器的D输入端连接到复用器32的输出端上。触发器35-38和触发器45-48中的每一个触发器的Q输出端连接到与门50的第一输入端上。与门50的第二输入端与读使能(READ ENABLE)信号A(0)相连,A(0)是FIFO A的第一读使能信号。与门51的第一输入端接收时钟信号,第二输入端接收写使能(WRITE ENABLE)信号A(0)(A(0)是FIFO A的第一写使能信号),其输出端与触发器35-38中的每一个时钟输入端都相连。触发器45-49中的每一个触发器的Q输出端都与与门53的第一输入端相连。与门53的第二输入端与读使能信号A(N)相连,A(N)是FIFO A的第N读使能信号。与门55的第一输入端接收时钟信号,第二输入端接收写使能信号A(N)(A(N)是FIFO A的第N写使能信号),其输出端与触发器45-48的每一个时钟输入端都相连。与门50的输出端与与门53的输出端、复用器60的第一输入端和复用器62的第一输入端相连。复用器60的输出端与输入/输出(I/O)单元64的第一输入端相连。
复用器34的输出端与有M路入口单元的FIFO B的每一路入口单元都相连。FIFO B的第一路入口单元上有大量的触发器电路,比如触发器70-73。FIFO B的第M路入口单元上有大量的触发器电路,比如触发器75-78。触发器70-73和触发器75-78中的每一个触发器的D输入端连接到复用器34的输出端上。触发器70-73和触发器75-78中的每一个触发器的Q输出端连接到与门80的第一输入端上。与门80的第二输入端与读使能信号B(0)相连,B(0)是FIFO B的第一读使能信号。与门81的第一输入端接收时钟信号,第二输入端接收写使能信号B(0)(B(0)是FIFO B的第一写使能信号),其输出端与触发器70-73的每一个触发器的时钟输入端都相连。触发器75-79中的每一个触发器的Q输出端都与与门83的第一输入端相连。与门83的第二输入端与读使能信号B(M)相连,B(M)是FIFO B的第M个读使能信号。与门85的第一输入端接收时钟信号,第二输入端接收写使能信号B(M)(B(M)是FIFO B中的第M个写使能信号),其输出端与触发器75-78的每一个触发器的时钟输入端都相连。与门80的输出端和与门83的输出端、复用器60的第二输入端和复用器62的第二输入端相连。复用器62的输出端与输入/输出(I/O)单元64的第二输入端相连。输入/输出单元64的输出端连接到一个输出端口上。在一种组成方案下,输入/输出单元64的输出端与Nexus-compliant软件工具相连,用来完成实现IEEEISTO 5001标准的调试。
另外,伴随着FIFO A,FIFO存储系统30有一个头计数器电路(Head Counter Circuit)88,一个尾计数器电路(Tail Counter Circuit)89,写控制逻辑电路90以及读控制逻辑电路91。FIFO存储系统30还有一个头计数器93,一个尾计数器电路94,写控制逻辑电路95以及读控制逻辑电路96。头计数器88和尾计数器89的输出端分别与写控制电路90和读控制电路91的输入端相连。写控制逻辑电路90的输出端给FIFO A提供一个写使能信号,并且读控制逻辑电路91的第一输出端给FIFO A提供读使能信号。头计数器93和尾计数器94的输出端分别与写控制电路95和读控制电路96的输入端相连。写控制逻辑电路95的输出端给FIFO B提供一个写使能信号,并且读控制逻辑电路96的第一输出端给FIFO B提供读使能信号。读逻辑控制电路96的第二输出端与写逻辑控制电路95的第二输入端相连。同步入口单元逻辑电路100的输出端与读逻辑控制电路91的第二输入端、写控制逻辑电路90的第二输入端、写逻辑控制电路95的第二输入端、与门101的第一输入端、与门102的第一输入端以及读逻辑控制电路96的第二输入端相连。时钟信号与与门101和与门102中每个的第二输入端相连。与门101的输出与触发器105的时钟输入相连。触发器105的Q输出提供一个读信号,与非门106的输入端相连。非门106的输出端与触发器105的D输入相连。与门102的输出端与触发器108的时钟输入端相连。触发器108的Q输出提供一个写信号,并与非门109的输入端相连。非门109的输出端与触发器108的D输入相连。
在操作中,如图2中的详细图示,FIFO A和FIFO B有专门的入口单元使用多个触发器电路,如FIFO A中的第一入口单元使用触发器35-38。图2中所示的时钟是同步时钟,它是图示电路独立产生的;在所描述的所有时钟输入端使用的时钟信号是相同的。如图1所示的操作中,当复用器32接收到的写控制信号是逻辑1状态时,输入A直通输出。当复用器32接收到的写控制信号是逻辑0状态时,输入B直通输出。当复用器34接收到的写控制信号是逻辑1状态时,输入B直通输出。当复用器34接收到的写控制信号是逻辑0状态时,输入A直通输出。同样地,当读控制信号是逻辑1状态时,复用器60直通FIFO A的输出,复用器62直通FIFO B的输出。当读控制信号是逻辑0状态时,复用器60直通FIFO B的输出,复用器62直通FIFO A的输出。
如图所述,头计数器88的作用就在于保持一个指向FIFO A中标示开始的入口单元的连续计数值,尾计数器89的作用就在于保持一个指向FIFO A中标示结束的入口单元的连续计数值。FIFO A的作用就相当于一个循环队列,它有一个起始地址和一个结束地址,结束地址与起始地址相接。写控制逻辑电路90和读控制逻辑电路91与FIFO A连在一起,当一个写操作或读操作要被激活时,可以部分地利用头计数器和尾计数器来控制完成。写控制逻辑电路90和读控制逻辑电路91的输出是多条导线,每条导线对应FIFO A的一个特殊入口单元。头计数器88和尾计数器89的输出的作用就相当于指向FIFO A的指针,用来分别确定在FIFO A中哪路入口单元进行读或写操作。FIFO B也与头计数器93、尾计数器94、写控制逻辑电路95和读控制逻辑电路96进行着类似的操作。
同步入口单元逻辑100的功能就是检测在FIFO存储系统30中何时发生同时写进FIFO A和FIFO B的写操作,何时发生同时读取FIFOA和FIFO B的读操作,何时发生写进FIFO A或FIFO B其中一个同时读取另外一个FIFO的操作,何时发生读取FIFO A或FIFO B其中一个同时写进另外一个FIFO的操作,以及何时发生写进FIFO A和FIFO B的同时在FIFO A和FIFO B中读取其它入口单元的操作。当多路入口单元操作同时发生时,有许多事件和机制能发出信号。例如,在数据处理系统中,特定指令可以被解码,并且处理器(图中没示出)可以引发多路FIFO同时操作的发生。在一种方案中,与FIFO A和FIFOB通信的数据是一个实时调试信息,它与数据处理调试功能联系在一起。同步入口单元操作是通过产生一个或多个FIFO的多路读和写使能信号来实现的。假如有一个同步入口单元事件发生,与门101和102被激活,使得触发器105和108的时钟失效。触发器105和108的失效防止了在FIFO A和FIFO B之间的复用器32和34按照如图1所讨论的方式发生翻转。翻转操作的失效保证了在同步入口单元事件发生前下一路入口单元能够接入相同的FIFO。
到现在应该认识到,本发明提供了一种简化开销,减小能量消耗的FIFO存储结构。在这里所教导的FIFO存储系统是简洁的,而且可以节省成本,减小能量消耗。在一种应用中,本发明在处理系统中通常实现的调试电路方面有很显著的优点。由于多路入口单元信息需要同时存储,使用本发明就可以大大减少此功能附带的控制和电路。应该很好理解的是,本发明可以用在除调试用途之外的、使用FIFO存储结构的处理系统中。另外,本发明可以采用任何类型的晶体管和半导体制造工艺来实现。
由于实现本发明的大多数仪器都是本领域技术人员所公知的电子元件和电路组成的,对电路的细节就没有必要做更详细地解释,为了理解和认识本发明的基本概念并且不对本发明的教导产生困惑和歧义,如上面的描述就足够了。
在上面的说明书中,已经参照着特定的实施例对本发明进行了详细地描述。可是,本领域普通技术人员可以认识到,在不背离所附权利要求所阐述的本发明的范围的前提下,可以对本发明做出各种修改和改变。因此,本说明书和附图被认为是说明性的而并不含有限制意味。所有这样的修改都被期望包括在本发明的范围中。
对于具体实施例,上面已经描述了本发明的益处、其它优点以及问题的解决方案。可是,这些益处、优点、问题的解决方案以及可以引起任何益处、优点和方案的产生或者使之变得更为显著的任何组件都不被解释成任意和所有权利要求的关键的、必需的或本质的特征或组件。在这里使用的术语“包括(comprises、comprising)”或其中的任何其它变形,都意旨涵盖非排他性的包含,比如一个包括一系列组件的过程、方法、物品或者装置,其不仅仅包括所列出的组件,而且还可能包含其它没有明确列出的或者是这种过程、方法、物品和装置所固有的组件。

Claims (10)

1.一种先进先出存储系统,其包括:
第一复用器,它具有第一数据输入端,第二数据输入端,一个数据输出端以及一个控制端;
第一先进先出存储器,它具有多个入口单元,每个所述入口单元都有一个输入端连接到所述第一复用器的所述数据输出端上;
第二复用器,它有连接到所述第一复用器的所述第一数据输入端上的第一数据输入端,连接到所述第一复用器的所述第二数据输入端上的第二数据输入端,一个数据输出端以及一个控制端;
第二先进先出存储器,它具有多个入口单元,每个所述入口单元都有一个输入端连接到所述第二复用器的所述数据输出端上;和
一个控制逻辑电路,它提供一控制信号,该控制信号促使写控制逻辑电路将写控制信号提供至所述第一和第二复用器中的每个的控制端,其中,当所述控制信号处于第一逻辑状态时,所述写控制信号用来将在所述第一和第二数据输入端接收到的多个数据入口单元交替地按逐个入口单元写进所述第一和第二先进先出存储器中,当所述控制信号处于第二逻辑状态时,所述写控制信号用于同时将多个数据入口单元写入所述第一和第二先进先出存储器。
2.根据权利要求1所述的先进先出存储系统,其中,所述控制逻辑电路使得所述写控制逻辑电路把数据同时写到所述第一和第二先进先出存储器中,作为对接收第一数据类型的所述第一和第二数据输入端的响应,所述控制逻辑电路用于使所述写控制逻辑电路将数据交替地写进所述第一和第二先进先出存储器,作为对所述第一和第二数据输入端接收第二数据类型的响应。
3.根据权利要求1所述的先进先出存储系统,其还包括:
第三复用器,它具有与所述第一先进先出存储器的每一个所述入口单元的数据输出端都相连的第一数据输入端,与所述第二先进先出存储器的所述多个入口单元的数据输出端都相连的第二数据输入端以及一个控制端;
第四复用器,它具有与所述第一先进先出存储器的每一个所述入口单元的数据输出都相连的第一数据输入端,与所述第二先进先出存储器的所述多个入口单元的数据输出都相连的第二数据输入端以及一个控制端;和
一个读控制逻辑电路,它为所述第三和第四复用器中的每个的所述控制端提供一个读控制信号,所述读控制逻辑电路使得能从所述第一和第二先进先出存储器中按照与写数据一样的顺序将数据读取出来。
4.根据权利要求1所述的先进先出存储系统,其中,所述多个数据入口单元的特征在于,它是一个实时的调试信息。
5.根据权利要求1所述的先进先出存储系统,其还包括:
第一计数器,用于确定将要向所述第一先进先出存储器的多个入口单元中的哪一个进行写入;和
第二计数器,用于确定将要向所述第二先进先出存储器的多个入口单元中的哪一个进行写入。
6.根据权利要求1所述的先进先出存储系统,其中所述写控制逻辑电路包括:
一个非门,它具有一个输入端和一个输出端;
一个触发器,它具有一个与所述非门的所述输出端相连的输入端,一个与所述非门的所述输入端相连的输出端,所述触发器的输出端提供所述写控制信号。
7.一种访问先进先出存储系统的方法,所述先进先出存储系统具有一个第一先进先出存储器和一个第二先进先出存储器,所述第一和第二先进先出存储器中的每一个都具有多个入口单元,所述第一先进先出存储器的多个入口单元的每一个的输入端都连接到第一复用器的一个输出端上,所述第二先进先出存储器的多个入口单元的每一个的输入端都连接到第二复用器的一个输出端上,所述方法包括如下步骤:
在所述第一复用器的第一输入端和所述第二复用器的第一输入端接收数据;
在所述第一复用器的第二输入端和所述第二复用器的第二输入端接收数据;和
将所述数据从所述第一和第二复用器的所述输出端交替地写入所述第一和第二先进先出存储器,作为对来自处于第一逻辑状态的控制电路的控制信号的响应;和
同时地将来自所述第一和第二多路复用器的输出端的所述数据写入所述第一和第二先进先出存储器,作为对来自处于所述第二逻辑状态的控制电路的控制信号的响应。
8.根据权利要求7所述的方法,其中,响应于第一和第二计数器的计数增加,就将所述数据存储在所述第一和第二先进先出存储器的连续入口单元中,所述第一计数器对应所述第一先进先出存储器,所述第二计数器对应所述第二先进先出存储器。
9.根据权利要求7所述的方法,其中在所述交替写的步骤中,响应于所述数据是第一数据类型,把所述数据从所述第一和第二复用器的所述输出端写进所述第一和第二先进先出存储器。
10.根据权利要求7所述的方法,其中,在所述同时地写的步骤中,响应所述数据是第二数据类型,把所述数据从所述第一和第二复用器的所述输出端写进所述第一和第二先进先出存储器。
CNB028099672A 2001-06-20 2002-05-07 先进先出存储系统及其方法 Expired - Fee Related CN100377072C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/885,574 US6779055B2 (en) 2001-06-20 2001-06-20 First-in, first-out memory system having both simultaneous and alternating data access and method thereof
US09/885,574 2001-06-20

Publications (2)

Publication Number Publication Date
CN1524215A CN1524215A (zh) 2004-08-25
CN100377072C true CN100377072C (zh) 2008-03-26

Family

ID=25387224

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB028099672A Expired - Fee Related CN100377072C (zh) 2001-06-20 2002-05-07 先进先出存储系统及其方法

Country Status (9)

Country Link
US (1) US6779055B2 (zh)
EP (1) EP1402340B1 (zh)
JP (1) JP4076946B2 (zh)
KR (1) KR100902765B1 (zh)
CN (1) CN100377072C (zh)
AU (1) AU2002305462A1 (zh)
DE (1) DE60226141T2 (zh)
TW (1) TWI229345B (zh)
WO (1) WO2003001360A2 (zh)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6551857B2 (en) 1997-04-04 2003-04-22 Elm Technology Corporation Three dimensional structure integrated circuits
EP1416373A3 (en) * 2002-10-31 2005-01-05 STMicroelectronics Pvt. Ltd Method and apparatus to reduce access time in synchronous fifos with zero latency overhead
KR101137064B1 (ko) 2004-01-07 2012-04-19 가부시키가이샤 니콘 적층 장치 및 집적 회로 소자의 적층 방법
JP2007518215A (ja) * 2004-01-16 2007-07-05 トレック・2000・インターナショナル・リミテッド データを記録および再生するポータブル記憶デバイス
CN101324863B (zh) * 2007-06-12 2012-07-04 中兴通讯股份有限公司 一种同步静态存储器的控制装置及方法
US8082482B2 (en) 2007-08-31 2011-12-20 International Business Machines Corporation System for performing error correction operations in a memory hub device of a memory module
US8086936B2 (en) 2007-08-31 2011-12-27 International Business Machines Corporation Performing error correction at a memory device level that is transparent to a memory channel
US20100269021A1 (en) * 2007-09-05 2010-10-21 Gower Kevin C Method for Performing Error Correction Operations in a Memory Hub Device of a Memory Module
US8019919B2 (en) * 2007-09-05 2011-09-13 International Business Machines Corporation Method for enhancing the memory bandwidth available through a memory module
US7945745B2 (en) * 2007-09-17 2011-05-17 General Electric Company Methods and systems for exchanging data
KR20090059802A (ko) * 2007-12-07 2009-06-11 삼성전자주식회사 레지스터 업데이트 방법 및 이를 적용한 레지스터 및컴퓨터 시스템
US8140936B2 (en) 2008-01-24 2012-03-20 International Business Machines Corporation System for a combined error correction code and cyclic redundancy check code for a memory channel
US20100169570A1 (en) * 2008-12-31 2010-07-01 Michael Mesnier Providing differentiated I/O services within a hardware storage controller
KR20130102393A (ko) 2012-03-07 2013-09-17 삼성전자주식회사 Fifo 메모리 장치 및 이를 포함하는 전자 장치
US9304693B1 (en) 2012-12-17 2016-04-05 Marvell International Ltd. System and method for writing data to a data storage structure
JP6049564B2 (ja) * 2013-07-29 2016-12-21 三菱電機株式会社 データトレース回路、集積回路およびデータトレース方法
US9824058B2 (en) * 2014-11-14 2017-11-21 Cavium, Inc. Bypass FIFO for multiple virtual channels
CN106603442B (zh) * 2016-12-14 2019-06-25 东北大学 一种片上网络的跨时钟域高速数据通信接口电路
US11061997B2 (en) * 2017-08-03 2021-07-13 Regents Of The University Of Minnesota Dynamic functional obfuscation
KR102697046B1 (ko) 2019-02-11 2024-08-20 삼성전자주식회사 비휘발성 메모리 장치
TWI771785B (zh) * 2020-10-29 2022-07-21 晶豪科技股份有限公司 資料先進先出(fifo)電路

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59177782A (ja) * 1983-03-25 1984-10-08 Nec Corp バツフアメモリ制御方式
US4807121A (en) * 1984-06-21 1989-02-21 Cray Research, Inc. Peripheral interface system
FR2636448A1 (fr) * 1988-09-15 1990-03-16 Finger Ulrich Dispositif d'acquisition de donnees pour processeur
DE4226952A1 (de) * 1992-08-14 1994-02-17 Deutsche Forsch Luft Raumfahrt Rahmen-Synchronisierer für Telemetrie-Systeme
EP0869431A1 (en) * 1997-04-02 1998-10-07 Oki Electric Industry Co., Ltd. Serial communication circuit

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4298954A (en) * 1979-04-30 1981-11-03 International Business Machines Corporation Alternating data buffers when one buffer is empty and another buffer is variably full of data
US4524424A (en) * 1982-02-18 1985-06-18 Rockwell International Corporation Adaptive spectrum shaping filter
NL8901661A (nl) * 1989-06-30 1991-01-16 Philips Nv Televisiesysteem voor digitale overdracht van beeldsignalen.
US5525985A (en) * 1990-12-28 1996-06-11 Eaton Corporation Sure chip
US5305319A (en) 1991-01-31 1994-04-19 Chips And Technologies, Inc. FIFO for coupling asynchronous channels
KR0126330Y1 (ko) * 1993-10-23 1998-12-15 김광호 텔레비젼 수상기의 더블스캔 제어회로
KR19980077474A (ko) * 1997-04-19 1998-11-16 김영환 비디오 신호의 스캔방식 변환장치 및 그 제어방법
US6055616A (en) 1997-06-25 2000-04-25 Sun Microsystems, Inc. System for efficient implementation of multi-ported logic FIFO structures in a processor
US6073190A (en) * 1997-07-18 2000-06-06 Micron Electronics, Inc. System for dynamic buffer allocation comprising control logic for controlling a first address buffer and a first data buffer as a matched pair
KR100249235B1 (ko) * 1997-12-31 2000-03-15 구자홍 에이치디티브이 비디오 디코더

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59177782A (ja) * 1983-03-25 1984-10-08 Nec Corp バツフアメモリ制御方式
US4807121A (en) * 1984-06-21 1989-02-21 Cray Research, Inc. Peripheral interface system
FR2636448A1 (fr) * 1988-09-15 1990-03-16 Finger Ulrich Dispositif d'acquisition de donnees pour processeur
DE4226952A1 (de) * 1992-08-14 1994-02-17 Deutsche Forsch Luft Raumfahrt Rahmen-Synchronisierer für Telemetrie-Systeme
EP0869431A1 (en) * 1997-04-02 1998-10-07 Oki Electric Industry Co., Ltd. Serial communication circuit

Also Published As

Publication number Publication date
JP4076946B2 (ja) 2008-04-16
EP1402340B1 (en) 2008-04-16
US6779055B2 (en) 2004-08-17
WO2003001360A2 (en) 2003-01-03
TWI229345B (en) 2005-03-11
DE60226141T2 (de) 2009-05-20
CN1524215A (zh) 2004-08-25
US20020199042A1 (en) 2002-12-26
EP1402340A2 (en) 2004-03-31
WO2003001360A3 (en) 2003-10-16
AU2002305462A1 (en) 2003-01-08
KR100902765B1 (ko) 2009-06-15
KR20040010756A (ko) 2004-01-31
JP2005505029A (ja) 2005-02-17
DE60226141D1 (de) 2008-05-29

Similar Documents

Publication Publication Date Title
CN100377072C (zh) 先进先出存储系统及其方法
CN100456734C (zh) 使用多端口存储器的体系结构、装置、系统及其使用方法
US4748588A (en) Fast data synchronizer
US4761732A (en) Interrupt controller arrangement for mutually exclusive interrupt signals in data processing systems
EP1168158A3 (en) Context switch architecture and system
US5349683A (en) Bidirectional FIFO with parity generator/checker
US6304936B1 (en) One-to-many bus bridge using independently and simultaneously selectable logical FIFOS
US7136309B2 (en) FIFO with multiple data inputs and method thereof
US6760273B2 (en) Buffer using two-port memory
JPH01180156A (ja) パケットスイッチング回路
RU2225028C2 (ru) Схема интерфейса и способ передачи данных между последовательным интерфейсом и процессором
CN115202612A (zh) 基于异步fifo的超导单磁通量子跨时钟域通信方法及系统
CN100499631C (zh) 数据丢弃模块及数据丢弃的实现方法
SU1304015A1 (ru) Устройство дл сортировки чисел
KR950014159B1 (ko) 선입선출(fifo) 레지스터 제어방법
KR100219045B1 (ko) 듀얼채널을 갖는 에프아이 에프오 장치
JPH05265701A (ja) Fifoメモリ
JP3792576B2 (ja) インターリーブ方式で読み出し及び書き込みを行う8スロット内容参照メモリ
SU1367017A1 (ru) Устройство дл выбора замещаемого элемента
JPH02214099A (ja) ポインタリセット方式
Keerthika et al. Asynchronous Data Sampling Within Delay Buffer Using Gated Driver Tree
JPS63152083A (ja) 双方向性半導体装置
JPS6220043A (ja) マルチプロセツサ用非同期同時アクセスの可能なランダムアクセスメモリ−
JPH06223036A (ja) シリアル通信装置
JPS6160124A (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
ASS Succession or assignment of patent right

Owner name: FREESCALE SEMICONDUCTOR INC.

Free format text: FORMER OWNER: MOTOROLA, INC.

Effective date: 20041217

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

Effective date of registration: 20041217

Address after: texas

Applicant after: Fisical Semiconductor Inc.

Address before: Illinois

Applicant before: Motorola Inc.

C14 Grant of patent or utility model
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: texas

Patentee after: NXP America Co Ltd

Address before: texas

Patentee before: Fisical Semiconductor Inc.

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

Granted publication date: 20080326

Termination date: 20210507