CN110134365A - 一种多通道并行读出fifo的方法及装置 - Google Patents

一种多通道并行读出fifo的方法及装置 Download PDF

Info

Publication number
CN110134365A
CN110134365A CN201910425210.8A CN201910425210A CN110134365A CN 110134365 A CN110134365 A CN 110134365A CN 201910425210 A CN201910425210 A CN 201910425210A CN 110134365 A CN110134365 A CN 110134365A
Authority
CN
China
Prior art keywords
data
channel
module
memory module
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.)
Granted
Application number
CN201910425210.8A
Other languages
English (en)
Other versions
CN110134365B (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.)
Hefei University of Technology
Original Assignee
Hefei University of Technology
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 Hefei University of Technology filed Critical Hefei University of Technology
Priority to CN201910425210.8A priority Critical patent/CN110134365B/zh
Publication of CN110134365A publication Critical patent/CN110134365A/zh
Application granted granted Critical
Publication of CN110134365B publication Critical patent/CN110134365B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0625Power saving in storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • 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)
  • Human Computer Interaction (AREA)
  • Communication Control (AREA)

Abstract

本发明提供了一种多通道并行读出FIFO的方法,所述方法包括:S1,根据多个通道的通道数目,将数据存储模块分成多个独立区域,每个独立区域对应一个通道,将多通道输入的数据分别写入对应的独立区域;S2,将数据从其在所述数据存储模块的独立区域中取出,并根据各数据所在独立区域对应的通道分别寄存;S3,根据外部请求对请求通道寄存的数据按预定数量分解成小位宽数据,并将分解后的小位宽数据按顺序读出。本发明利用输入数据和读出数据的位宽不同,在输入数据位宽较大,输出数据位宽较小时,将RAM内部根据各通道所需FIFO大小划分出多块地址空间,以提高RAM的资源利用率,且各通道同时输出多个数据流,数据流均可保持连续。

Description

一种多通道并行读出FIFO的方法及装置
技术领域
本发明涉及集成电路技术领域,尤其涉及一种多通道并行读出FIFO的实现方法。
背景技术
在数字集成电路设计领域,存储部件是大多数设计中不可或缺的部分,存储部件有RAM、ROM、FIFO、CAM等,其中FIFO(First-In-First-Out)是数字集成电路设计中极为重要的部分,其采用先入先出的数据缓冲策略,拥有数据缓冲,数据跨时钟域传输,数据位宽转换等功能,合理地使用FIFO有助于降低设计复杂度、提高系统稳定性。在数字电路设计中,FIFO已经成为不可或缺的存储部件,在FPAG设计中被广泛使用,各大厂商也都提供了FIFO的IP核以供设计使用。
当有多个通道数据需要缓冲时,根据FIFO的特性,一般采取使用IP核向导生成多个FIFO,对每一个通道的数据流单独采用一个FIFO进行缓冲。这种设计虽然简单清晰,易于控制,然而很多时候却有着严重的资源浪费的问题存在。FIFO的生成需要使用BRAM资源,FPGA芯片中每块BRAM大小固定,且仅支持配置成有限的深度×宽度的模式,固定的BRAM大小决定了即使所需的FIFO的存储空间小于一块BRAM的大小,也必须使用一块完整的BRAM,而有限的配置宽度和深度决定了在处理大位宽数据时,必须使用多个BRAM进行拼接,每一块BRAM的存储空间可能都没有用尽,这无疑增加了FIFO的浪费。在设计中,BRAM是一种十分宝贵的片上资源,尤其在一些低端的FPGA芯片上,过多的浪费甚至会导致BRAM不足的情况发生,而FIFO中浪费的BRAM资源无法被重新利用,显然会对设计造成严重影响。
由此可以看出,BRAM资源的过度使用是目前多通道FIFO设计的一个重要问题,为了解决这个问题,在多通道FIFO设计中需要减少FIFO的BRAM资源消耗,增加BRAM资源的利用效率。
发明内容
本发明为了克服在FPAG设计中多通道FIFO的资源消耗过大的问题,提出一种多通道并行读出FIFO的方法,所述方法用于将数据存储模块中的数据从多个通道同时读出,所述方法包括:
S1,根据多个通道的通道数目,对所述数据存储模块进行划分,分成多个独立区域,每个独立区域对应一个通道,将多通道串行输入的数据分别写入各通道所对应的独立区域,并对该通道的写入状态进行状态标示;
S2,将数据从其在所述数据存储模块的独立区域中取出,并根据各数据所在独立区域对应的通道分别寄存;
S3,根据外部请求对请求通道寄存的数据按预定数量分解成小位宽数据,并将分解后的小位宽数据按顺序读出,同时对该通道的读出状态进行状态标示。
更进一步地,在步骤S1中,对于不同通道的数据串行到来,根据数据所属的通道编号来判断数据在所述数据存储模块中对应的地址,并写入所述数据存储模块中对应的独立区域。
更进一步地,在步骤S2中,在数据从所述数据存储模块取出并寄存的过程中,对于每一个通道,对正在寄存数据的通道标示为1,尚未寄存或寄存的数据已取出进行分解的通道标示为0。
更进一步地,在步骤S2中,在数据从所述数据存储模块取出并寄存的过程中,采用轮询规则,每个周期将标示为0的通道对应的数据从所述数据存储模块中取出,并根据该数据所在通道分别寄存。
更进一步地,在步骤S2中,在数据从所述数据存储模块取出并寄存的过程中,对于每一个通道的轮询,如果所述寄存数据未取出,则在轮询过程中跳过该通道,否则从所述数据存储模块中该通道对应的独立区域取出一个最先写入的数据寄存。
更进一步地,在步骤S3中,对于每个通道的一次分解过程中,直接分解出最先需要读出的小位宽数据,再处理剩余的数据。
更进一步地,在步骤S3中,对于每个通道的一次分解过程中,对于剩余的数据,每个周期读出一个分解后的小位宽数据。
更进一步地,在步骤S3中,对于每个通道的一次分解过程中,所述数据预定分解数量大于或等于所述输出通道的数量。
一种多通道并行读出FIFO的装置,所述装置包括:数据输入模块、数据存储模块、数据读取模块、数据寄存模块、数据分解模块和状态指示模块;
其中,数据输入模块用于将多通道串行输入的数据写入数据存储模块中;
所述数据存储模块为双口RAM,其内部为各通道划分独立的存储空间;
所述数据读取模块用于将数据存储模块中存储的数据读出;
所述数据寄存模块用于寄存待分解的数据;
所述数据分解模块用于将数据分解成输出需要的大小后按顺序送出;
所述状态指示模块接受各通道的写入状态和读出状态并进行计数,并根据计数来确定个通道存储空间的空满情况,为外部逻辑提供空、满、可编程空、可编程满状态。
更进一步地,所述状态指示模块能够自行定义各通道FIFO内部有多少数据时,发出可编程空或可编程满信号。
本发明的有益效果是:
本发明中多通道并行读出FIFO在RAM外部实现位宽转换以及数据输出,利用输入和输出数据位宽的不同,在采用轮询策略对一块双端口RAM读写不同通道数据时,使读取周期大于等于通道数,实现各通道同时输出多个连续数据流,极大的提高了多通道FIFO的读写效率。
同时,在FPAG设计中,通过在RAM中为不同通道划分独立的地址空间,确保了各通道数据的独立性,同时减少RAM数量。双端口RAM所消耗的BRAM远小于对各通道例化FIFO IP所使用的BRAM资源,极大节约了多通道FIFO的BRAM资源消耗,提高了多通道FIFO的BRAM资源利用率,缓解了设计时FPGA芯片中BRAM资源紧张的问题。同时,在设计中,较少的BRAM资源使用可以减小设计面积,提高设计频率,因此对设计的性能表现也有重要帮助。
附图说明
图1是本发明实施例提供的一种多通道并行读出FIFO的方法示意图;
图2是本发明实施例提供的一种多通道并行读出FIFO的装置示意图;
图3是本发明一实施方式的FIFO结构示意图;
图4是本发明一实施方式的数据存储模块内部结构示意图;
图5是本发明一实施方式的数据读取模块工作流程示意图;
图6是本发明一实施方式的数据寄存模块到数据分解模块工作流程示意图。
具体实施方式
下面结构说明书附图1-6对本发明的具体技术方案作进一步地描述。
如附图1所示本发明提出的一种多通道并行读出FIFO方法包括:
步骤1,根据多个通道的通道数目,对数据存储模块进行划分,分成多个独立区域,每个独立区域对应一个通道,将多通道串行输入的数据分别写入各通道所对应的独立区域,并对该通道的写入状态进行状态标示。该数据存储模块为双口RAM。
对于来自不同通道的串行数据,根据数据所属的通道编号来判断数据在所述数据存储模块中对应的地址,并写入所述数据存储模块中对应的独立区域。
步骤2,将数据从其在所述数据存储模块的独立区域中取出,并根据各数据所在独立区域对应的通道分别寄存。
在数据从所述数据存储模块取出并寄存的过程中,对于每一个通道,对正在寄存数据的通道标示为1,尚未寄存或寄存的数据已取出进行分解的通道标示为0。
在数据从所述数据存储模块取出并寄存的过程中,采用轮询规则,每个周期将标示为0的通道对应的数据从所述数据存储模块中取出,并根据该数据所在通道分别寄存。
在数据从所述数据存储模块取出并寄存的过程中,对于每一个通道的轮询,如果所述寄存数据未取出,则在轮询过程中跳过该通道,否则从所述数据存储模块中该通道对应的独立区域取出一个最先写入的数据寄存。
步骤3,根据外部请求对请求通道寄存的数据分解成预定个数的小位宽数据(该预定数量为事先设定,并且可以根据通道数设定),并将分解后的小位宽数据按顺序读出,同时对该通道的读出状态进行状态标示。
对于每个通道数据的一次分解过程,对于剩余的数据,每个周期读出一个分解后的小位宽数据。
对于每个通道数据的一次分解过程,所述数据预定分解数量大于或等于所述输出通道的数量。
如附图2所示,该装置包括:数据输入模块、数据存储模块、数据读取模块、数据寄存模块、数据分解模块和状态指示模块。
其中,数据输入模块用于将多通道串行输入的数据写入数据存储模块中。不同通道的数据串行到来,数据输入模块根据数据所属的通道编号来计算数据在数据存储模块中对应的地址,根据地址将数据写入数据存储模块中对应的独立区域。
数据存储模块是一个双口RAM,用于缓冲数据流,其输入和输出位宽相等,等于输入的写入数据的位宽,深度需要等于或大于所有通道所需的存储深度的和。数据存储模块的RAM在内部根据地址划分出相邻但独立的多个区域,每个区域的深度等于对应的通道所需的FIFO深度,用于缓冲对应通道的数据流,这样,根据数据输入模块计算的地址就能够将数据正确写入通道对应的RAM区域中。
数据读取模块将数据存储模块中存储的数据读出。数据读取模块根据数据寄存模块的空满情况,将数据从通道对应的RAM存储区域内取出。该模块采用轮询规则,每个周期为一个通道取出一个数据。取出的数据送入数据寄存模块,如果某个通道的数据寄存模块内寄存有数据且未取出,则在轮询过程中跳过该通道,否则取出一个数据送入该通道所对应的数据寄存模块。
数据寄存模块包含一组寄存器以及标志位。寄存器的位宽等于输入数据位宽,寄存器的数量等于通道数量,即每个通道对应一个寄存器。在数据分解模块中有数据时,数据读取模块读出的数据会被送入该模块暂存,在数据分解模块中数据全部输出且向数据寄存模块请求数据时,再将暂存的数据送入数据分解模块。标志位指示数据寄存模块内对应寄存器是否可以接受新的数据,若轮询过程中,查询到该通道标志位为0,说明内部寄存器数据已经送出,则取出新的数据送入寄存器,否则跳过该通道,但是如果出现在查询某通道时,对应通道的数据分解模块正在向数据寄存模块请求数据这种特殊情况,则无视标志位,取数据送入数据寄存模块,同时保持标志位为1。
数据分解模块将数据分解成输出需要的大小后按顺序送出。输入数据位宽为xmbit,输出数据位宽为m bit。在接受到外部通道发来的读请求后,如果数据分解模块内部对应通道寄存器有数据,则输出数据,否则向数据寄存模块请求数据,为节约时间,数据分解模块将得到的写入数据寄存拆分为两部分,最先需要输出的m bit数据被直接送进通道输出,剩下的(x-1)m bit数据被寄存后拆解成m bit依次输出,一次输入数据后,需要x-1个周期输出。由于数据寄存模块采用轮询策略,只要总通道数不大于x,即可保持各通道的数据连续性。
状态指示模块计算各通道输入和输出的数据量,以此计算各通道FIFO内部缓冲的数据的量。若FIFO写入数据量等于读出数据量,则发出FIFO空信号,若FIFO写入数据量与读出数据量的差等于数据存储模块内为该FIFO划分的区间容量,则发出FIFO满信号。同时还可以自定义可编程空信号和可编程满信号,在FIFO将空或将满时发出这些信号。
如图3所示,为本发明的一个实施方式的结构图,为八通道并行读出FIFO。该装置的输入数据位宽为512位,输出数据位宽为64位,各通道FIFO深度相对于写入端为64位,指的是数据存储模块中对于每个通道的存储数据量为512*64。
数据输入模块R1接受8个通道串行写入的数据,并根据各数据所在通道计算各数据在数据存储模块中的地址区域,然后根据通道计算最终地址,送入对应的RAM的存储区间内,同时告知状态指示模块R6该通道写入了一个数据。
数据存储模块R2的内部结构如图4所示,其是一个双端口RAM,端口数据位宽为512位,在其内部划分出8个独立的深度为64的区间,分别用于8个通道的数据存储。地址区间0-63为通道一的存储区间,地址区间64-127为通道二的存储区间,以此类推,地址区间448-511为通道八的存储区间。R1写入的数据会根据通道计算相应的区间地址,确保各通道数据不会出现地址错误。
数据读取模块R3采用轮询策略从数据存储模块中取数据送入数据寄存模块R4。其轮询流程如图5所示,从寄存器R4_0开始,查询R4_0的标志位,若R4_0内没有数据或数据已经输出,则从R2的地址区间0-63中取出最先存入的数据,送入R4_0,或者若R4_0内数据正在向数据分解模块R5输出,则同样从R2的地址区间0-63中取出最先存入的数据,送入R4_0,否则说明R4_0中已有数据,跳过R4_0。接下来对R4_1到R4_7全部执行一遍此操作,即完成一次轮询,而后继续执行下一次轮询。
数据寄存模块R4包含8个512位的寄存器R4_0到R4_7,数据读取模块R2会保持这些寄存器内有数据,以便在数据分解模块向其请求数据时可以立即响应。以通道1为例,R3在一次轮询中从RAM地址区间0-63中取出最早写入的数据A送入R4_0,当数据分解模块R5中通道一的数据全部输出且仍有读请求存在时,R5向R4_0请求数据,R4_0将数据A输出给R5,由于数据A位宽512位,R5每个周期输出数据为64位,除R4_0将数据输出给R5的周期外,R5还需要7个周期将所有数据全部输出,在此之前R3已经完成了一轮轮询,在检测到R4_0的标志位显示没有数据或数据已经输出时,将一个新的数据送入了R4_0,R4_0继续将这个数据送入R5,通过这种方式,R5输出的数据便不会中断。
数据分解模块R5包含8个位宽为448位的寄存器。位宽为448位是因为数据从R4的寄存器中送入R5时,会先进行一次拆解,如图6所示,以reg0为例,数据从R4_0送来时,R5直接将第一个64位数据reg00输出,剩下的数据被存入R5的寄存器中继续进行拆解,其内部分为reg01到reg07七个部分,即后七个周期需要输出的七个数据。R5接受外部发来的读信号,各个通道相互独立,接受到读信号的通道即输出数据,同时告知状态指示模块R6该通道输出了一个数据,若内部没有数据,向R4请求新的512位数据。
状态指示模块R6接受R1和R5发来的读写信号,以此计算FIFO内剩余的数据量。由于FIFO深度为64,在计数到某个通道有64个输入数据未被输出时,R6输出该通道的满信号,直到该通道输出8个数据,即输出总计位宽为512位的数据,取消该通道的满信号。如果计数到输出数据量等于输入数据量,则R6输出该通道的空信号,直到该通道有数据输入,取消该通道的空信号。可编程满和可编程空信号可以自定义,例如可以设定通道1在有62个输入数据未被输出时,即输出可编程满信号,在只剩下2个数据未输出时,即输出可编程空信号。
另一个优选实现方式中,步骤1还包括1.1从多个通道同时接收多路并行数据。
步骤1.2,对每个通道输入的数据分别进行拼接,并且当所拼接数据达到预定数量后,对拼接后获得的数据分别按通道进行寄存。
对于每个通道,在数据进行拼接的过程中,所要拼接的数据数量应大于或等于所述通道的数量。
各通道每个周期都接收一个数据,将该数据和已接收的数据进行拼接,当最后一个待拼接的数据输入时,并将该数据和已拼接数据拼接后寄存。
步骤1.3,根据多个通道的通道数目,对所述数据存储模块进行划分,分成多个独立区域,每个独立区域对应一个通道,将对于每个通道所拼接并寄存的数据分别写入该通道所对应的独立区域,并对该通道的写入状态进行状态标示。
在将数据写入数据存储模块过程中,对于每一个通道,将已完成拼接并寄存数据的通道标示为1,尚未完成拼接并还在继续拼接数据或寄存的数据已经写入所述数据存储模块的通道标示为0。数据拼接可以在数据转换模块中进行。
采用轮询策略,只查询标示为1的通道,跳过标示为0的通道,每个周期将一个通道寄存的数据写入所述数据存储模块对应的独立区域。
虽然本发明已经以较佳实施例公开如上,但实施例并不是用来限定本发明的。在不脱离本发明之精神和范围内,所做的任何等效变化或润饰,同样属于本发明之保护范围。因此本发明的保护范围应当以本申请的权利要求所界定的内容为标准。

Claims (10)

1.一种多通道并行读出FIFO的方法,所述方法用于将数据存储模块中的数据从多个通道同时读出,所述方法包括:
S1,根据多个通道的通道数目,对所述数据存储模块进行划分,分成多个独立区域,每个独立区域对应一个通道,将多通道串行输入的数据分别写入各通道所对应的独立区域,并对该通道的写入状态进行状态标示;
S2,将数据从其在所述数据存储模块的独立区域中取出,并根据各数据所在独立区域对应的通道分别寄存;
S3,根据外部请求对请求通道寄存的数据按预定数量分解成小位宽数据,并将分解后的小位宽数据按顺序读出,同时对该通道的读出状态进行状态标示。
2.根据权利要求1所述的多通道并行读出FIFO的方法,其特征在于,在步骤S1中,对于不同通道的数据串行到来,根据数据所属的通道编号来判断数据在所述数据存储模块中对应的地址,并写入所述数据存储模块中对应的独立区域。
3.根据权利要求1所述的多通道并行读出FIFO的方法,其特征在于,在步骤S2中,在数据从所述数据存储模块取出并寄存的过程中,对于每一个通道,对正在寄存数据的通道标示为1,尚未寄存或寄存的数据已取出进行分解的通道标示为0。
4.根据权利要求3所述的多通道并行读出FIFO的方法,其特征在于,在步骤S2中,在数据从所述数据存储模块取出并寄存的过程中,采用轮询规则,每个周期将标示为0的通道对应的数据从所述数据存储模块中取出,并根据该数据所在通道分别寄存。
5.根据权利要求4所述的多通道并行读出FIFO的方法,其特征在于,在步骤S2中,在数据从所述数据存储模块取出并寄存的过程中,对于每一个通道的轮询,如果所述寄存数据未取出,则在轮询过程中跳过该通道,否则从所述数据存储模块中该通道对应的独立区域取出一个最先写入的数据寄存。
6.根据权利要求1所述的多通道并行读出FIFO的方法,其特征在于,在步骤S3中,对于每个通道的一次分解过程中,直接分解出最先需要读出的小位宽数据,再处理剩余的数据。
7.根据权利要求6所述的多通道并行读出FIFO的方法,其特征在于,在步骤S3中,对于每个通道的一次分解过程中,对于剩余的数据,每个周期读出一个分解后的小位宽数据。
8.根据权利要求1、6或7所述的多通道并行读出FIFO的方法,其特征在于,在步骤S3中,对于每个通道的一次分解过程中,所述数据预定分解数量大于或等于所述输出通道的数量。
9.一种多通道并行读出FIFO的装置,所述装置包括:数据输入模块、数据存储模块、数据读取模块、数据寄存模块、数据分解模块和状态指示模块;
其中,数据输入模块用于将多通道串行输入的数据写入数据存储模块中;
所述数据存储模块为双口RAM,其内部为各通道划分独立的存储空间;
所述数据读取模块用于将数据存储模块中存储的数据读出;
所述数据寄存模块用于寄存待分解的数据;
所述数据分解模块用于将数据分解成输出需要的大小后按顺序送出;
所述状态指示模块接受各通道的写入状态和读出状态并进行计数,并根据计数来确定个通道存储空间的空满情况,为外部逻辑提供空、满、可编程空、可编程满状态。
10.根据权利要求9所述的多通道并行读出FIFO的方法,其特征在于,所述状态指示模块能够自行定义各通道FIFO内部有多少数据时,发出可编程空或可编程满信号。
CN201910425210.8A 2019-05-21 2019-05-21 一种多通道并行读出fifo的方法及装置 Expired - Fee Related CN110134365B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910425210.8A CN110134365B (zh) 2019-05-21 2019-05-21 一种多通道并行读出fifo的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910425210.8A CN110134365B (zh) 2019-05-21 2019-05-21 一种多通道并行读出fifo的方法及装置

Publications (2)

Publication Number Publication Date
CN110134365A true CN110134365A (zh) 2019-08-16
CN110134365B CN110134365B (zh) 2022-10-11

Family

ID=67572031

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910425210.8A Expired - Fee Related CN110134365B (zh) 2019-05-21 2019-05-21 一种多通道并行读出fifo的方法及装置

Country Status (1)

Country Link
CN (1) CN110134365B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111045963A (zh) * 2019-12-15 2020-04-21 苏州浪潮智能科技有限公司 一种高位宽总线读写的方法及装置
CN111679615A (zh) * 2020-07-01 2020-09-18 无锡中微亿芯有限公司 内部集成具有不同位宽连线的片上网络的fpga装置
CN112073316A (zh) * 2020-09-09 2020-12-11 南京盛科网络有限公司 多通道位宽变化的数据传输系统、方法、设备和存储介质
CN112114615A (zh) * 2020-08-31 2020-12-22 济南浪潮高新科技投资发展有限公司 一种跨时钟域数据同步电路、方法及设备
CN112506431A (zh) * 2020-12-03 2021-03-16 无锡众星微系统技术有限公司 基于磁盘设备属性的i/o指令调度方法及装置
CN113642724A (zh) * 2021-08-11 2021-11-12 西安微电子技术研究所 一种高带宽存储的cnn加速器
CN113934378A (zh) * 2021-11-01 2022-01-14 新华三技术有限公司合肥分公司 一种数据缓存方法、逻辑装置和电子设备

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0312867A (ja) * 1989-06-12 1991-01-21 Toshiba Corp 複数チャネル並列転送方式によるディスク装置
US5671386A (en) * 1993-09-23 1997-09-23 Philips Electronics North America Corporation System for storing data and for providing simultaneous plural access to data by connecting each access channel to each and every one of storage arrays
JPH09274558A (ja) * 1996-04-08 1997-10-21 Ricoh Co Ltd Fifo制御回路
US6144604A (en) * 1999-11-12 2000-11-07 Haller; Haggai Haim Simultaneous addressing using single-port RAMs
CN1439966A (zh) * 2003-03-28 2003-09-03 北京港湾网络有限公司 多通道先进先出数据缓冲存储装置
WO2006012771A1 (fr) * 2004-08-02 2006-02-09 Zte Corporation Unite de commande hdlc multi-canal
CN101692218A (zh) * 2009-09-27 2010-04-07 上海大学 一种数据高速传输方法
CN102520902A (zh) * 2011-11-01 2012-06-27 福建富顺电子有限公司 基于单片块ram的并行写入多fifo实现方法
CN103714038A (zh) * 2012-10-09 2014-04-09 中兴通讯股份有限公司 一种数据处理方法和装置
CN105630825A (zh) * 2014-11-04 2016-06-01 中兴通讯股份有限公司 一种数据转换方法及装置
CN109284247A (zh) * 2018-06-29 2019-01-29 电子科技大学 一种多fpga的多通道采集系统存储同步方法
CN109388590A (zh) * 2018-09-28 2019-02-26 中国电子科技集团公司第五十二研究所 提升多通道dma访问性能的动态缓存块管理方法和装置

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0312867A (ja) * 1989-06-12 1991-01-21 Toshiba Corp 複数チャネル並列転送方式によるディスク装置
US5671386A (en) * 1993-09-23 1997-09-23 Philips Electronics North America Corporation System for storing data and for providing simultaneous plural access to data by connecting each access channel to each and every one of storage arrays
JPH09274558A (ja) * 1996-04-08 1997-10-21 Ricoh Co Ltd Fifo制御回路
US6144604A (en) * 1999-11-12 2000-11-07 Haller; Haggai Haim Simultaneous addressing using single-port RAMs
CN1439966A (zh) * 2003-03-28 2003-09-03 北京港湾网络有限公司 多通道先进先出数据缓冲存储装置
WO2006012771A1 (fr) * 2004-08-02 2006-02-09 Zte Corporation Unite de commande hdlc multi-canal
CN101692218A (zh) * 2009-09-27 2010-04-07 上海大学 一种数据高速传输方法
CN102520902A (zh) * 2011-11-01 2012-06-27 福建富顺电子有限公司 基于单片块ram的并行写入多fifo实现方法
CN103714038A (zh) * 2012-10-09 2014-04-09 中兴通讯股份有限公司 一种数据处理方法和装置
CN105630825A (zh) * 2014-11-04 2016-06-01 中兴通讯股份有限公司 一种数据转换方法及装置
CN109284247A (zh) * 2018-06-29 2019-01-29 电子科技大学 一种多fpga的多通道采集系统存储同步方法
CN109388590A (zh) * 2018-09-28 2019-02-26 中国电子科技集团公司第五十二研究所 提升多通道dma访问性能的动态缓存块管理方法和装置

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
YUKUN SON 等: "Design and implementation of parallel multi-access memory interface", 《2014 12TH IEEE INTERNATIONAL CONFERENCE ON SOLID-STATE AND INTEGRATED CIRCUIT TECHNOLOGY (ICSICT)》 *
张思政: "一种多通道共享读写SDRAM的仲裁方法", 《电子制作》 *
徐洋洋: "基于FPGA的多通道大容量FIFO设计", 《电子测量技术》 *
袁亚鹏 等: "基于RAM存储阵列的并行多通道FIFO设计", 《微电子学与计算机》 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111045963A (zh) * 2019-12-15 2020-04-21 苏州浪潮智能科技有限公司 一种高位宽总线读写的方法及装置
CN111679615A (zh) * 2020-07-01 2020-09-18 无锡中微亿芯有限公司 内部集成具有不同位宽连线的片上网络的fpga装置
CN111679615B (zh) * 2020-07-01 2021-10-15 无锡中微亿芯有限公司 内部集成具有不同位宽连线的片上网络的fpga装置
CN112114615A (zh) * 2020-08-31 2020-12-22 济南浪潮高新科技投资发展有限公司 一种跨时钟域数据同步电路、方法及设备
CN112073316A (zh) * 2020-09-09 2020-12-11 南京盛科网络有限公司 多通道位宽变化的数据传输系统、方法、设备和存储介质
CN112506431A (zh) * 2020-12-03 2021-03-16 无锡众星微系统技术有限公司 基于磁盘设备属性的i/o指令调度方法及装置
CN113642724A (zh) * 2021-08-11 2021-11-12 西安微电子技术研究所 一种高带宽存储的cnn加速器
CN113642724B (zh) * 2021-08-11 2023-08-01 西安微电子技术研究所 一种高带宽存储的cnn加速器
CN113934378A (zh) * 2021-11-01 2022-01-14 新华三技术有限公司合肥分公司 一种数据缓存方法、逻辑装置和电子设备
CN113934378B (zh) * 2021-11-01 2024-04-19 新华三技术有限公司合肥分公司 一种数据缓存方法、逻辑装置和电子设备

Also Published As

Publication number Publication date
CN110134365B (zh) 2022-10-11

Similar Documents

Publication Publication Date Title
CN110134365A (zh) 一种多通道并行读出fifo的方法及装置
CN110134366A (zh) 一种并行写入多通道fifo的方法及装置
CN106951388A (zh) 一种基于PCIe的DMA数据传输方法及系统
CN102549552A (zh) 用于处理流感知网络节点中的数据分组的方法
CN105573711B (zh) 一种数据缓存方法及装置
CN102437929A (zh) 队列管理中的数据出队方法及装置
CN104407809A (zh) 多通道fifo缓冲器及其控制方法
CN102681946A (zh) 内存访问方法和装置
US8127116B2 (en) Dependency matrix with reduced area and power consumption
CN103077147A (zh) 一种基于链表的全功能1553b总线ip核
CN101836194A (zh) 控制数据信道的优化解决方案
US7979607B2 (en) Cascadable high-performance instant-fall-through synchronous first-in-first-out (FIFO) buffer
US8611173B1 (en) Buffer circuitry with multiport memory cells
CN109902000B (zh) 变速多通道调试追踪系统、方法、设备及存储介质
CN101645305A (zh) 静态随机存取存储器(sram)的自动跟踪数据
CN101661429A (zh) 一种统计信息的存储方法及设备
CN106101737A (zh) 一种支持实时视频缓存多路读取的帧调整方法
CN102025694A (zh) 基于dsp阵列实现以太网数据发送的装置及方法
CN101883046B (zh) 一种应用于epon终端系统的数据缓存架构
CN100557584C (zh) 用于对网络和存储器进行耦合的存储器控制器和方法
US20090097494A1 (en) Packet forwarding method and device
US10637780B2 (en) Multiple datastreams processing by fragment-based timeslicing
CN101594305A (zh) 一种报文处理方法及装置
CN115617715A (zh) 一种fifo装置及其数据传输方法
WO2023076597A1 (en) System and method for flexibly crossing packets of different protocols

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20221011