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

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

Info

Publication number
CN2632767Y
CN2632767Y CN 03242699 CN03242699U CN2632767Y CN 2632767 Y CN2632767 Y CN 2632767Y CN 03242699 CN03242699 CN 03242699 CN 03242699 U CN03242699 U CN 03242699U CN 2632767 Y CN2632767 Y CN 2632767Y
Authority
CN
China
Prior art keywords
read
passage
address
write
pointer control
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
CN 03242699
Other languages
English (en)
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 CN 03242699 priority Critical patent/CN2632767Y/zh
Application granted granted Critical
Publication of CN2632767Y publication Critical patent/CN2632767Y/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

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

Description

多通道先进先出数据缓冲存储装置
技术领域
本实用新型涉及一种在数据通信业务的ASIC(ApplicationSpecific Integrated Circuit特定用途集成电路)或FPGA(FieldProgramable Gate Array现场可编程门阵列)设计中使用先进先出(FIFO,First In First Out)机制的存储体实现多通道数据缓冲的装置。
背景技术
目前,在数据通信业务的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的地址资源重新分配,将其按物理地址划分为多个区块,各区块与各个通道形成一定的映射关系,对于来自某个通道的读/写操作在与该通道相对应的区块中按照FIFO机制存取;
所述读写指针控制单元由读指针控制单元和写指针控制单元组成,所述读指针控制单元可以分别为每个通道指示与该通道相对应的区块中下一个读操作的位置,所述写指针控制单元可以分别为每个通道指示与该通道相对应的区块中下一个写操作的位置。
所述状态标示单元(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和一个单端口RAM R2/R3构成。所述读/写指针控制单元的单端口RAM R2/R3的地址也按通道划分,与某通道相对应的R2/R3地址中存放有与该通道相对应的R1区块中下一个读/写操作位置的偏移量。在每次读/写操作结束后都使用读/写加法器A1/A2对当前的偏移量加一并存放在与通道端口对应的R2/R3单元中,作为该通道对应区块的下一次读/写操作的偏移量。
对数据存储单元的访问最好采用高低地址组合产生的方式,高位地址使用通道的端口号实现,低位地址则由读/写指针控制单元提供,在本实施例中R1的各区块地址即为通道端口号,R2/R3中各通道相应区块偏移量的存放地址也为通道的端口号。
当某个通道产生了写缓冲数据的请求时,待写入的缓冲数据将作为R1的输入,该通道的端口号将作为R1的高位地址输入,用于指示缓冲数据写入的区块,同时该端口号也将作为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按物理地址划分为多个区块,各区块与各个通道形成映射关系,对于来自某个通道的读/写操作在与该通道相对应的区块中按照FIFO机制存取;
所述读写指针控制单元由读指针控制单元和写指针控制单元组成,所述读指针控制单元可以为每个通道指明与之相对应的区块中下一个读操作的位置,所述写指针控制单元可以为每个通道指明与之相对应的区块中下一个写操作的位置;
所述状态标示单元用于记录上述RAM中当前各个FIFO区块的空/满状态。
2.如权利要求1所述的多通道先进先出数据缓冲存储装置,其特征在于:所述数据存储单元的双端口RAM采用高低地址组合的方式进行读/写访问;高位地址与通道的端口号相对应,低位地址也即各区块下一个读/写操作的位置则由读/写指针控制单元产生;所述数据存储单元的双端口RAM的各个FIFO区块依据高位地址划分。
3.如权利要求2所述的多通道先进先出数据缓冲存储装置,其特征在于:所述高位地址与端口号的对应关系表现为:各通道的端口号即为读/写操作的高位地址,也即各通道端口号将输入到所述数据存储单元的双端口RAM中指示读/写操作的高位地址。
4.如权利要求2或3所述的多通道先进先出数据缓冲存储装置,其特征在于:所述读/写指针控制单元均包括至少一个单端口RAM和与之相连接的加法器构成,所述单端口RAM的地址划分也与各个通道的端口号形成对应关系,与通道相对应的单端口RAM地址中存放有该通道的读/写偏移量,当对某个通道有读/写请求时,所述单端口RAM则将该通道的读/写偏移量作为输出连接到所述数据存储单元双端口RAM的低位读/写地址线上与高位读/写地址结合来指示双端口RAM的读/写位置,并将数据由该位置读出/写入,在每次读/写操作结束后所述加法器对当前的偏移量加一并回存到与通道端口号对应的单端口RAM单元中作为该通道下一次读/写操作的偏移量。
5.如权利要求4所述的多通道先进先出数据缓冲存储装置,其特征在于:所述单端口RAM的地址划分与各个通道端口号形成的对应关系表现为:各个通道的端口号即为所述单端口RAM中该通道读/写操作偏移量的存放地址,即各个通道的端口号将输入到所述单端口RAM中指示该通道读/写操作偏移量的存放地址。
CN 03242699 2003-03-28 2003-03-28 多通道先进先出数据缓冲存储装置 Expired - Fee Related CN2632767Y (zh)

Priority Applications (1)

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

Applications Claiming Priority (1)

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

Publications (1)

Publication Number Publication Date
CN2632767Y true CN2632767Y (zh) 2004-08-11

Family

ID=34292297

Family Applications (1)

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

Country Status (1)

Country Link
CN (1) CN2632767Y (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102096648A (zh) * 2010-12-09 2011-06-15 深圳中兴力维技术有限公司 基于fpga的实现多路突发数据业务缓存的系统及方法
CN102750242A (zh) * 2012-06-12 2012-10-24 广东威创视讯科技股份有限公司 外围设备接口的协调访问方法及装置
CN110134366A (zh) * 2019-05-21 2019-08-16 合肥工业大学 一种并行写入多通道fifo的方法及装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102096648A (zh) * 2010-12-09 2011-06-15 深圳中兴力维技术有限公司 基于fpga的实现多路突发数据业务缓存的系统及方法
CN102096648B (zh) * 2010-12-09 2013-08-14 深圳中兴力维技术有限公司 基于fpga的实现多路突发数据业务缓存的系统及方法
CN102750242A (zh) * 2012-06-12 2012-10-24 广东威创视讯科技股份有限公司 外围设备接口的协调访问方法及装置
CN110134366A (zh) * 2019-05-21 2019-08-16 合肥工业大学 一种并行写入多通道fifo的方法及装置
CN110134366B (zh) * 2019-05-21 2022-10-11 合肥工业大学 一种并行写入多通道fifo的方法及装置

Similar Documents

Publication Publication Date Title
CN1201234C (zh) 多通道先进先出数据缓冲存储装置
CN103246625B (zh) 一种数据与地址共用引脚自适应调整访存粒度的方法
CN101236774B (zh) 单端口存储器实现多端口存储功能的装置和方法
CN110247970B (zh) 一种互连芯片动态共享缓冲装置
CN102866980B (zh) 用于多核微处理器片上互连网络的网络通信胞元
CN111611180B (zh) 一种支持多协议的动态共享缓冲区
CN102610269B (zh) 一种多读单写片内存储器
CN2632767Y (zh) 多通道先进先出数据缓冲存储装置
CN102004626B (zh) 双口存储器
CN100557584C (zh) 用于对网络和存储器进行耦合的存储器控制器和方法
CN102404183B (zh) 仲裁方法和仲裁器
CN100568382C (zh) 先进先出存储器
CN106339327B (zh) 一种计算机系统及刀片式服务器机箱
CN101789840B (zh) 一种全t交叉装置和方法
CN111221754A (zh) 一种自带防读写冲突功能的存储装置
CN104407996B (zh) 数据总线宽度不相等的双口ram读写与仲裁控制器
CN102930898B (zh) 一种构建多端口异步存储模块的方法
US7856527B2 (en) Raid system and data transfer method in raid system
CN110413536A (zh) 一种多数据格式高速并行NandFlash存储装置
CN1147676A (zh) 先进先出存储器
CN105955901A (zh) 一种增强型大容量高速数据交换的设计方法
CN106502923B (zh) 阵列处理器中簇内存储访问行列两级交换电路
CN116414732A (zh) 基于ddr3的高速大容量双通道双缓冲存储系统
CN100338910C (zh) 网络信息交换中多端口收发包数统计方法
CN102521180A (zh) 一种多通道实时直读存储器结构

Legal Events

Date Code Title Description
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

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