缓冲器的队列管理器制造技术

技术编号:2884402 阅读:211 留言:0更新日期:2012-04-11 18:40
提供一种用于FIFO缓冲器的带宽保存队列管理器。只要队列的总大小不超过缓冲器的有效存储,就不需要附加的数据存储器。然而,当超过FIFO缓冲器上缓冲器存储空间的某个预定量时,数据写入到附加数据存储器和从附加数据存储器中读取,最好是以能够保持数据存储设备最佳性能的最佳大小的包方式,包最好以按照地址的先进先出(FIFO)顺序排列的方式写入到数据存储设备中。数据最好以组方式写入DRAM和从DRAM中读取。(*该技术在2020年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术通常涉及数据队列的管理,该数据队列接收自外部源并被输入到一个设备中做进一步处理。本专利技术尤其涉及一种与FIFO缓冲器一起用于控制所接收数据队列的改进DRAM。在许多应用中,在短时间段内接收数据的速率比特殊设备利用数据的速率高,因此迫使队列数据有序地输入到其将被使用的设备中。一种通用型队列是先进先出(FIFO)缓冲器,它将从某种外部源接收的数据临时存储起来,以接收设备能够适应的速度输入到接收设备中。遇到的问题之一是FIFO缓冲器可能会超过其容量来存储输入比输出更快的数据。因此,当这种输入数据比FIFO缓冲器的存储容量更大时,需要在时间周期内以具有最小开销的有序方法来管理数据。根据本专利技术,提供一种FIFO缓冲器的带宽保存队列管理器,最好在ASIC芯片上且最好包括独立的DRAM,该独立的DRAM包含可扩展到FIFO缓冲器数据存储空间以外从而提供所需的附加数据存储空间的FIFO队列。在ASIC芯片上使用FIFO缓冲器来存储和检索多重队列入口。只要队列的总大小不超过缓冲器中的有效存储,则不需要附加数据存储器。然而,当超过FIFO缓冲器中的缓冲器存储空间时,则在附加数据存储器中写入和读取数据,附加数据存储器最好是DRAM且最好是包的形式,包具有保持数据存储设备最佳性能的最佳大小,且按地址的先进先出(FIFO)顺序进行排列这样的方式将包写入数据存储器。DRAM可以是独立芯片,或者也可以形成在ASIC上。在两者中的任一种情况下,其存储器与FIFO缓冲器是分离的。附图说明图1是本专利技术被管理的DRAM队列管理器结构的高级简图;图2是输入FIFO缓冲器的稍微概略的详细视图,及图3是输出FIFO缓冲器的稍微概略的详细视图。现在参考附图,先参考图1,所示为根据本专利技术的带宽保存DRAM队列管理器的结构和操作概貌。在ASIC芯片10上形成队列管理器。队列管理器从外部源接收的数据输入12,输入到数据按队列排列的输入FIFO(先进先出)缓冲器14。数据16从输入FIFO缓冲器14中输出到存储器接口18和多路转接器(Mux)20。存储器接口18连接到独立芯片DRAM芯片22(然而,DRAM可形成在ASIC10上)。多路转接器控制逻辑24控制多路转接器20选择性地把数据16从FIFO缓冲器14输出到DRAM芯片22或输出FIFO缓冲器32上。FIFO缓冲器32把数据34输出到将要被提供数据的设备(未示出)中。通常,图1所示的队列管理器以下列方式操作将写入队列的数据12输入到输入FIFO缓冲器14中。离开FIFO的数据16可以进入输出FIFO缓冲器32也可以进入外部存储器接口18,然后再根据输入FIFO缓冲器14和输出FIFO缓冲器32中是否有足够的空间给正在从外部源读取的数据来通过多路转接器20和多路转接器控制逻辑24控制进入DRAM芯片22。对多路转接器20的控制基于下列条件即,输入FIFO缓冲器14和输出FIFO缓冲器32是否为满的或至少具有满容量的预定百分比。当有比最大允许值更多的数据将存储在输入FIFO缓冲器14和输出FIFO缓冲器32中时,多路转接器20选择将要写入到外部存储接口18中的数据,然后将数据存储在DRAM芯片22中。当读取输出FIFO缓冲器32时,在多路转接器控制逻辑24控制下通过存储接口将数据从DRAM芯片22中读入到输出FIFO缓冲器32中。因此,只要从外部源中读取的输入数据12的量不超过输入FIFO缓冲器14和输出FIFO缓冲器32的预选容量,则数据直接从输入FIFO缓冲器14传送到输出FIFO缓冲器32。然而,当所输入的数据12的量超过输入FIFO缓冲器14和输出FIFO缓冲器32的容量或容量的预定百分比时,则输入FIFO缓冲器14通过存储接口18将数据写入到DRAM芯片22中。DRAM芯片22具有在相连地址以先进先出原理进行写入和读取的结构,从而不再需要如传统高速缓冲存储器中的地址变换。每次一个数据项地将数据从外部源写入输入FIFO缓冲器14和从输入FIFO缓冲器14写入输出FIFO缓冲器32。然而,数据最好是写入到存储接口18中并从那里进入DRAM芯片22,由输出FIFO32以成组多数据项形式从DRAM芯片22读取数据来利用DRAM芯片22的最佳传输率。此外,由于按先进先出原理对DRAM进行排列,因此可利用组性能且不需要将地址标记加到所写入的数据上。因此,例如,可以以三项的数据包的形式将数据写入DRAM芯片22中和从DRAM芯片22中读出,而不必由地址一个一个地读取每个数据项。DRAM最好是DDR(双倍数据率)DRAM。双倍数据率DRAM允许给定数量的ASIC包上I/O引脚的数据带宽是标准同步DRAM的两倍。这是通过在时钟信号的上升沿和下降沿上都装入和捕捉数据来实现的。RAMBUS是在一些应用中有利于增加每英寸带宽的另一种方案。现在参考图2,所示为输入FIFO缓冲器14更为详细的描述。输入FIFO缓冲器14包括锁存器,锁存器在用于六个不同数据项的存储单元40a,40b,40c,40d,40e和40f上。从外部源每次一个数据项地读取数据项,并在控制选择器40a,40b和40c的控制下每次一个数据项地写入FIFO缓冲器14中。设有为比较器48提供输出的写指针44和读指针46。比较器48的输出进入多路转接器控制逻辑24。如上所述,以组形式写入数据,例如,响应多路转接器20的控制,三个数据项从FIFO缓冲器14进入到DRAM20或每次一个数据项地进入输出FIFO缓冲器32。图3所示为输出FIFO缓冲器32的详细视图。图3所示为在存储单元50a,50b,50c,50d,50e和50f上的数据项锁存器及控制输入54a,54b,54c,54d,54e和54f到存储单元50a-50f的选择器52a,52b,52c,52d,52e和52f。所提供的来自数据项存储器50a-50f的数据输出56a,56b,56c,56d,56e和56f进入选择器58来提供数据输出34,每次一个数据项地输出数据。设有将信号输出到比较器66的写指针62和读指针64。比较器66将其差输出到多路转接器控制逻辑24。DRAM20也具有写指针、读指针和比较器(均未示出),DRAM比较器的输出也提供给多路转接器控制逻辑24。如上所述,以多数据项方式将数据从DRAM写入输出FIFO32中来利用DRAM的最佳数据传输率。存储器接口用于保持指针指向存储在DRAM芯片22中的队列的头尾部分。通过相连地址和头、尾指针,可排除对单地址的需要,DRAM芯片22以FIFO方式运行。多路转接器控制逻辑24以下述方式控制多路转接器20首先,每次一个数据项地把数据12输入到FIFO缓冲器14中的输入FIFO队列中;且假定输出FIFO缓冲器32为空,则在多路转接器20的作用下将数据从输入FIFO缓冲器14直接发送到输出FIFO缓冲器32中。当输出FIFO缓冲器32全充满且输入FIFO缓冲器14半充满时,控制逻辑24响应比较器48和66来切换多路转接器20,在写周期以多数据项将数据经过存储接口18送入DRAM芯片22,输出FIFO缓冲器32在读周期以多数据项经过存储接口18从DRAM芯片22读取数据。当DRAM中的比较器指出DRAM芯片22中不再存有数据本文档来自技高网...

【技术保护点】
一种管理数据从外部源输入系统的队列管理器,包括: 输入FIFO缓冲器,接收和存储来自所述外部源的数据项; 输出FIFO缓冲器,接收、存储和输出数据项到所述系统; 存储器设备,与所述输入FIFO缓冲器和所述输出FIFO缓冲器接口,及控制机构选择性地将数据从所述输入FIFO缓冲器写入到所述存储器设备中,从所述存储器设备中将数据读入所述输出FIFO缓冲器。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:布赖恩M巴斯吉恩L卡尔维纳克迈科C海蒂斯迈克尔S西格尔迈克尔R特朗布利法布里斯J韦普兰克
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利