CN1201234C - 多通道先进先出数据缓冲存储装置 - Google Patents

多通道先进先出数据缓冲存储装置 Download PDF

Info

Publication number
CN1201234C
CN1201234C CNB031214134A CN03121413A CN1201234C CN 1201234 C CN1201234 C CN 1201234C CN B031214134 A CNB031214134 A CN B031214134A CN 03121413 A CN03121413 A CN 03121413A CN 1201234 C CN1201234 C CN 1201234C
Authority
CN
China
Prior art keywords
read
passage
address
pointer control
ram
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
CNB031214134A
Other languages
English (en)
Other versions
CN1439966A (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.)
Huawei Technologies Co Ltd
Original Assignee
Harbour Networks Holdings Ltd
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 Harbour Networks Holdings Ltd filed Critical Harbour Networks Holdings Ltd
Priority to CNB031214134A priority Critical patent/CN1201234C/zh
Publication of CN1439966A publication Critical patent/CN1439966A/zh
Application granted granted Critical
Publication of CN1201234C publication Critical patent/CN1201234C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Abstract

本发明涉及一种多通道先进先出(FIFO)数据缓冲存储装置,用于对来自多个通道的缓冲数据进行各自的FIFO数据缓冲,该装置包括:数据存储单元、读写指针控制单元和状态标示单元;数据存储单元只采用了一个双端口RAM(R1),各个通道的读/写指针控制也分别集成于一个读/写指针控制单元中、减少了现有技术中多个独立FIFO构造所使用的大量读写指针计数器的资源,并简化了接口逻辑的复杂程度,同时随着结构的简化和资源的节省在ASIC或FPGA设计中系统的主频能够得到提高。可广泛应用于数据通信业务领域内。

Description

多通道先进先出数据缓冲存储装置
技术领域
本发明涉及一种在数据通信业务的ASIC(Application SpecificIntegrated Circuit特定用途集成电路)或FPGA(Field Programable GateArray现场可编程门阵列)设计中使用先进先出(FIFO,First In FirstOut)机制的存储体实现多通道数据缓冲的装置。
背景技术
目前,在数据通信业务的ASIC或FPGA设计中,经常需要处理多个通道数据的缓冲,通常的实现方法都是用叠加的方式,即对每个通道单独使用一个FIFO来缓冲。FIFO在ASIC/FPGA设计中也可理解为一种用于对数据缓冲的存储体的简称。通常要实现FIFO存储功能需要三个部分:数据存储单元、读写指针控制单元和状态标示单元。其中数据存储单元使用双端口RAM存放数据;读写指针控制单元用于指示下一个读/写操作的位置,通常使用计数器实现;状态标示单元通过对数据计数来产生当前FIFO的空满状态。在通道数不多的情况下,采用叠加FIFO实现多通道缓冲的设计方法思路清晰、实现简单,但随着通道数的增加,用以构造FIFO使用的ASIC或FPGA资源是巨大的,不仅需要为每个通道的FIFO重复构造相同的内部控制单元,耗费大量的计数器资源,而且在接口占用大量的数据连线资源。
举例来说,如图1所示,数据流S经过状态机St1后,被分配到64个叠加的FIFO中缓冲F1-F64,在这种情况下如果每个FIFO的数据宽度为8bit,FIFO深度为64,所耗费的资源除了64个64×8的双端口RAM外,还需耗费构成读写地址指针的64×2个6bit的计数器和64×6bit的数据计数器。更为重要的是,64个FIFO的8位数据的输出还需要一个64×8bit宽的多路复用(MUX)逻辑,该MUX将会耗费大量的组合逻辑资源,同时此处的逻辑布线也将十分困难。因此整个系统的主频会因此受到严重影响  可见,随着通道数的增加实现FIFO的叠加会越来越困难
发明内容
针对上述基于叠加的现有技术所存在的缺陷和不足,本发明的目的在于提供一种结构简单、节省资源、访问速度快的多通道FIFO数据缓冲存储装置。
为实现该目的,本发明以存储器分区为核心思想,设计了一种多通道先进先出(FIFO)数据缓冲存储装置,用于对来自多个通道的缓冲数据进行各自的FIFO数据缓冲,该装置包括:数据存储单元、读写指针控制单元和状态标示单元;
所述数据存储单元由至少一个双端口随机存储器(RAM)(R1),对该RAM的地址资源重新分配,将其按物理地址划分为多个区块,各区块与各个通道形成一定的映射关系,对于来自某个通道的读/写
所述读写指针控制单元由读指针控制单元和写指针控制单元组成,所述读指针控制单元可以分别为每个通道指示与该通道相对应的区块中下一个读操作的位置,所述写指针控制单元可以分别为每个通道指示与该通道相对应的区块中下一个写操作的位置;
所述状态标示单元(F)用于记录上述RAM中当前各个FIFO区块的空/满状态。
更具体来说,所述双端口RAM(R1)可以采用高低地址结合的方式进行访问,高位地址与通道的端口号相对应,低位地址也即各区块下一个读/写操作的位置则由读/写指针控制单元产生;所述双端口RAM(R1)的各个FIFO区块依据高位地址划分。
由于本发明中多个通道共用双端口RAM(R1),各个通道的读/写指针控制也分别集成于读/写指针控制单元中,因此减少了现有技术中多个独立FIFO构造所使用的大量读写指针计数器的资源,并简化了接口逻辑的复杂程度,同时随着结构的简化和资源的节省在ASIC或FPGA设计中系统的主频能够得到提高。
附图说明
通过下面的详细描述和相应的本发明实施例的附图,将更加全面充分地理解本发明。当然,附图不应该被用来将本发明限定在特定的实例中,它只是起到解释和帮助理解的作用。
图1示出了采用多个FIFO支持多通道缓冲的系统框图
图2示出了采用本发明的多通道FIFO数据缓冲装置的具体实例的内部框图
具体实施方式
图2是采用本发明的多通道FIFO数据缓冲装置的具体实例的内部框图。如图2所示,数据存储单元包括一个双端口RAM R1用于对多个通道进行数据缓冲,对该RAM R1的地址资源进行了重新分配,按通道划为区块访问,各区块内部可以看作是相应通道的FIFO。
读/写指针控制单元由至少一个加法器A1/A2和一个单端口RAMR2/R3构成。所述读/写指针控制单元的单端口RAM R2/R3的地址也按通道划分,与某通道相对应的R2/R3地址中存放有与该通道相对应的R1区块中下一个读/写操作位置的偏移量。在每次读/写操作结束后都使用读/写加法器A1/A2对当前的偏移量加一并存放在与通道端口对应的R2/R3单元中,作为该通道对应区块的下一次读/写操作的偏移量。
对数据存储单元的访问最好采用高低地址组合产生的方式,高位地址使用通道的端口号实现,低位地址则由读/写指针控制单元提供,在本实施例中R1的各区块地址即为通道端口号,R2/R3中各通道相应区块偏移量的存放地址也为通道的端口号。
当某个通道产生了写缓冲数据的请求时,待写入的缓冲数据将作为R1的输入,该通道的端口号将作为R1的高位地址输入,用于指示缓冲数据写入的区块,同时该端口号也将作为R2的地址输入,用于指示该区块偏移量的存放地址,R2将依据该地址取出偏移量并传用于指示该区块偏移量的存放地址,R2将依据该地址取出偏移量并传送给R1作为R1的低位地址输入,R1将组合高位地址和低位地址来定位缓冲数据写入的位置,并将该数据写入。同时加法器A1将取出的偏移量加一并回存到R2中的相应地址中,作为该通道相应区块下一次写操作的偏移量。
当某个通道产生了读缓冲数据的请求时,该通道的端口号将作为R1的高位地址输入,用于指示读出缓冲数据的区块,同时该端口号也将作为R3的地址输入,用于指示该区块偏移量的存放地址,R3将依据该地址取出的偏移量传送给R1作为R1的低位地址输入,R1将组合高位地址和低位地址来定位待读出的缓冲数据,并将该数据输出。同时加法器A2将取出的偏移量加一并回存到R3中的相应地址中,作为该通道相应区块下一次读操作的偏移量。
这样实现了对多个端口的访问只需要一组数据线和一组地址线,避免使用多组数据线的互连线,节省了大量逻辑连线资源,并简化了接口设计。
如图2所示,R1的地址空间按通道数均分,R1的读写地址由通道端口号和R2/R3的输出数据组合而成,同时端口号也是R2/R3的地址。这样可以实现通道和RAM地址空间的一一映射。因此各个通道的数据可直接在映射的RAM空间访问。
仍以图1的应用为例,与图1中的FIFO相比,这个多端口FIFO的资源多了两个64×6的RAM,但是节省了构成读写地址计数器的63×2×6bit计数器资源,也节省了8到64的编解码逻辑和大量的连线资源。
在本发明中的任何参考符号并不限制本发明的保护范围。“包括”一词不排除本发明所列之外的其它组件的出现。在组件或单元之前的“一个”不排除多个这种组件或单元的存在。

Claims (5)

1.一种多通道先进先出数据缓冲存储装置,该装置包括:数据存储单元、读写指针控制单元和状态标示单元;
其特征在于:所述数据存储单元包括至少一个双端口随机存储器RAM,该RAM按物理地址划分为多个区块,各区块与各个通道形成映射关系,对于来自某个通道的读/写操作在与该通道相对应的区块中按照先进先出机制存取;
所述读写指针控制单元由读指针控制单元和写指针控制单元组成,所述读指针控制单元可以为每个通道指明与之相对应的区块中下一个读操作的位置,所述写指针控制单元可以为每个通道指明与之相对应的区块中下一个写操作的位置;
所述状态标示单元用于记录上述RAM中当前各个先进先出区块的空/满状态。
2.如权利要求1所述的多通道先进先出数据缓冲存储装置,其特征在于:所述数据存储单元的双端口RAM采用高低地址组合的方式进行读/写访问;高位地址与通道的端口号相对应,低位地址也即各区块下一个读/写操作的位置则由读/写指针控制单元产生;所述数据存储单元的双端口RAM的各个先进先出区块依据高位地址划分。
3.如权利要求2所述的多通道先进先出数据缓冲存储装置,其特征在于:所述高位地址与端口号的对应关系表现为:各通道的端口号即为读/写操作的高位地址,也即各通道端口号将输入到所述数据存储单元的双端口RAM中指示读/写操作的高位地址。
4.如权利要求2或3所述的多通道先进先出数据缓冲存储装置,其特征在于:所述读/写指针控制单元均包括至少一个单端口RAM和与之相连接的加法器构成,所述单端口RAM的地址划分也与各个通道的端口号形成对应关系,与通道相对应的单端口RAM地址中存放有该通道的读/写偏移量。
5.如权利要求4所述的多通道先进先出数据缓冲存储装置,其特征在于:所述单端口RAM的地址划分与各个通道端口号形成的对应关系表现为:各个通道的端口号即为所述单端口RAM中该通道读/写操作偏移量的存放地址,即各个通道的端口号输入到所述单端口RAM中指示该通道读/写操作偏移量的存放地址。
CNB031214134A 2003-03-28 2003-03-28 多通道先进先出数据缓冲存储装置 Expired - Fee Related CN1201234C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB031214134A CN1201234C (zh) 2003-03-28 2003-03-28 多通道先进先出数据缓冲存储装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB031214134A CN1201234C (zh) 2003-03-28 2003-03-28 多通道先进先出数据缓冲存储装置

Publications (2)

Publication Number Publication Date
CN1439966A CN1439966A (zh) 2003-09-03
CN1201234C true CN1201234C (zh) 2005-05-11

Family

ID=27797250

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB031214134A Expired - Fee Related CN1201234C (zh) 2003-03-28 2003-03-28 多通道先进先出数据缓冲存储装置

Country Status (1)

Country Link
CN (1) CN1201234C (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105373494A (zh) * 2015-12-01 2016-03-02 中国科学院上海技术物理研究所 一种基于fpga的四口ram

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100424663C (zh) * 2004-02-10 2008-10-08 中国科学院计算技术研究所 用双端口随机存取存储器实现异步fifo数据传输的方法
CN100337226C (zh) * 2004-04-08 2007-09-12 华为技术有限公司 一种多通道数据缓冲设计方法与装置
US7363442B2 (en) * 2004-11-12 2008-04-22 International Business Machines Corporation Separate handling of read and write of read-modify-write
CN100375063C (zh) * 2004-11-30 2008-03-12 中兴通讯股份有限公司 一种现场可编程门阵列中管理发送缓冲区的方法和装置
CN100395680C (zh) * 2005-05-26 2008-06-18 华为技术有限公司 一种异步时钟域参数的配置方法及装置
CN100391231C (zh) * 2005-12-06 2008-05-28 海信集团有限公司 一种可实现流媒体数据高速传输的家庭终端设备
CN100442783C (zh) * 2006-04-12 2008-12-10 杭州华三通信技术有限公司 基于现场可编程逻辑阵列的读写缓存单元的方法及装置
CN102054536B (zh) * 2009-11-09 2012-10-03 上海华虹Nec电子有限公司 使用alpg测试仪进行dp sram测试的装置
CN103455442B (zh) * 2013-08-30 2016-06-08 华为技术有限公司 多通道先进先出缓存队列控制器及访问方法
US10585623B2 (en) * 2015-12-11 2020-03-10 Vivante Corporation Software defined FIFO buffer for multithreaded access
CN110134365B (zh) * 2019-05-21 2022-10-11 合肥工业大学 一种多通道并行读出fifo的方法及装置
CN110134366B (zh) * 2019-05-21 2022-10-11 合肥工业大学 一种并行写入多通道fifo的方法及装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105373494A (zh) * 2015-12-01 2016-03-02 中国科学院上海技术物理研究所 一种基于fpga的四口ram

Also Published As

Publication number Publication date
CN1439966A (zh) 2003-09-03

Similar Documents

Publication Publication Date Title
CN1201234C (zh) 多通道先进先出数据缓冲存储装置
CN101231877B (zh) 存取n端口存储器m个存储器地址的方法及n端口存储器
US8499105B2 (en) Buffer manager and buffer management method based on address pointer linked list
EP1402340B1 (en) First-in, first-out memory system and method thereof
CN101310339A (zh) 具有多个内部数据总线和存储器库交错的存储器装置和方法
US20090097348A1 (en) Integrated circuit including a memory module having a plurality of memory banks
Wuytack et al. Flow graph balancing for minimizing the required memory bandwidth
CN102208005A (zh) 一种2-d卷积器
CN101236774B (zh) 单端口存储器实现多端口存储功能的装置和方法
WO2012019475A1 (zh) 一种rldramsio访问控制方法和装置
CN2632767Y (zh) 多通道先进先出数据缓冲存储装置
CN100568382C (zh) 先进先出存储器
CN111611180A (zh) 一种支持多协议的动态共享缓冲区
CN102930898B (zh) 一种构建多端口异步存储模块的方法
US7136309B2 (en) FIFO with multiple data inputs and method thereof
CN104407996B (zh) 数据总线宽度不相等的双口ram读写与仲裁控制器
US7856527B2 (en) Raid system and data transfer method in raid system
CN101267459B (zh) 采用异步fifo寄存器输出数据的方法及寄存器
CN109388344B (zh) 一种基于带宽扩展交叉编址的双端口sram访问控制系统及方法
CN111221754A (zh) 一种自带防读写冲突功能的存储装置
US5928350A (en) Wide memory architecture vector processor using nxP bits wide memory bus for transferring P n-bit vector operands in one cycle
CN113555051B (zh) 一种基于ddr sdram的sar成像数据转置处理系统
CN114519023B (zh) 一种多端口Ram的实现方法
CN113778335B (zh) 一种ssd主控中多端口低延迟访问的sram群组的控制方法
CN101771498B (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
ASS Succession or assignment of patent right

Owner name: HUAWEI TECHNOLOGY CO., LTD.

Free format text: FORMER OWNER: GANGWAN NETWORK CO., LTD.

Effective date: 20060922

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

Effective date of registration: 20060922

Address after: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Patentee after: Huawei Technologies Co., Ltd.

Address before: 100089, No. 21 West Third Ring Road, Beijing, Haidian District, Long Ling Building, 13 floor

Patentee before: Harbour Networks Holdings Limited

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

Granted publication date: 20050511

Termination date: 20110328