WO2023098099A1 - 基于ddr实现大规模fifo数据处理的系统、方法、装置、处理器及其存储介质 - Google Patents

基于ddr实现大规模fifo数据处理的系统、方法、装置、处理器及其存储介质 Download PDF

Info

Publication number
WO2023098099A1
WO2023098099A1 PCT/CN2022/106958 CN2022106958W WO2023098099A1 WO 2023098099 A1 WO2023098099 A1 WO 2023098099A1 CN 2022106958 W CN2022106958 W CN 2022106958W WO 2023098099 A1 WO2023098099 A1 WO 2023098099A1
Authority
WO
WIPO (PCT)
Prior art keywords
fifo
data
clock domain
asynchronous clock
read
Prior art date
Application number
PCT/CN2022/106958
Other languages
English (en)
French (fr)
Inventor
李广兴
沈伟豪
Original Assignee
创远信科(上海)技术股份有限公司
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 创远信科(上海)技术股份有限公司 filed Critical 创远信科(上海)技术股份有限公司
Publication of WO2023098099A1 publication Critical patent/WO2023098099A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0877Cache access modes
    • G06F12/0879Burst mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0893Caches characterised by their organisation or structure
    • G06F12/0895Caches characterised by their organisation or structure of parts of caches, e.g. directory or tag array
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control
    • G06F12/121Replacement control using replacement algorithms
    • G06F12/126Replacement control using replacement algorithms with special data handling, e.g. priority of data or instructions, handling errors or pinning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1004Compatibility, e.g. with legacy hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1012Design facilitation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • G06F2212/1024Latency reduction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1041Resource optimization
    • G06F2212/1044Space efficiency improvement

Definitions

  • the present invention relates to the field of wireless communication testing, in particular to the field of ultra-wideband wireless communication signal acquisition and analysis, and specifically refers to a system, method, device, processor and computer-readable storage medium for realizing large-scale FIFO data processing based on DDR.
  • Wireless communication testing generally involves vector analysis and protocol analysis.
  • the signal analyzer has the ability to collect and store time-domain signals for a certain period of time, so as to meet the subsequent signal analysis function.
  • the wireless communication RF signal analyzer has a frequency mixing architecture, which can convert the broadband RF signal to a lower frequency such as intermediate frequency or baseband.
  • the intermediate frequency or analog baseband signal is sampled by a high-speed ADC to form quantized data, which is transmitted to the FPGA through a high-speed data interface.
  • the data clock High speed and continuous data flow require devices with fast interface speed and large storage capacity for caching.
  • the internal storage space of the FPGA is limited, and an external DDR RAM is generally required as a large-capacity storage space.
  • the high-speed quantized data clock is different from the DDR interface clock.
  • the DDR interface clock is different from the data return interface clock.
  • asynchronous clock domain FIFO is often used as the interface of different clock domain logics. module.
  • the usual practice is to buffer the continuous quantized data into the DDR storage space through the asynchronous FIFO. After the storage is completed, a return command is issued to upload the data to the host computer for subsequent processing. The process of this method is clear, but the effective transmission time is long, the comprehensive bandwidth is not high, and the bandwidth of the high-speed DDR interface cannot be fully utilized, resulting in a long time-consuming data transmission.
  • the purpose of the present invention is to overcome the shortcomings of the above-mentioned prior art, and provide a system, method, device, and processor that realize large-scale FIFO data processing based on DDR with less operating time, high data throughput rate, and wider application range and its computer-readable storage media.
  • the system, method, device, processor and computer-readable storage medium thereof for realizing large-scale FIFO data processing based on DDR of the present invention are as follows:
  • the entrance asynchronous clock domain FIFO has an independent write clock and read clock, independently set the write data bit width and read data bit width, and perform data write operation;
  • the burst read-write data block linked list is connected with the entry asynchronous clock domain FIFO, and is used to write into the data block linked list and read the data block linked list through the setting of the data bit width and the data block length;
  • the DDR4 AXI interface is connected to the linked list of burst read-write data blocks, and is used to interact with the flow control state machine and the burst read-write linked list;
  • asynchronous clock domain FIFO which is connected to the linked list of burst read and write data blocks, and is used to have an independent write clock and read clock, independently set the write data bit width and read data bit width settings, and perform data output operations;
  • the flow control state machine is connected with the entrance asynchronous clock domain FIFO, the DDR4 AXI interface and the exit asynchronous clock domain FIFO, and is used for data flow control, monitoring the entrance asynchronous clock domain FIFO, the DDR4 AXI interface and the exit asynchronous clock domain FIFO Writing and reading data streams.
  • the data block linked list detects the number of operations of the entry asynchronous clock domain FIFO and the exit asynchronous clock domain FIFO, counts and monitors the data writing and reading situation of the DDR4 AXI interface, according to the entry asynchronous clock domain FIFO and the exit asynchronous clock domain
  • the read and write signals of FIFO change, and under the control of the flow control state machine, the data flow is continuously operated.
  • the working modes of the system are transparent transmission mode and transfer mode
  • the transparent transmission mode refers to the FIFO depth when the data duration is short and does not exceed the entrance asynchronous clock domain FIFO and the exit asynchronous clock domain FIFO
  • the data stream directly transmits data through the entrance asynchronous clock domain FIFO and the exit asynchronous clock domain FIFO
  • the transfer mode refers to the entry asynchronous clock domain FIFO and the exit asynchronous clock domain FIFO when the continuous data duration is long and exceeds the threshold value
  • the data flow is transferred through the buffer space of the DDR4 AXI interface.
  • the read bandwidth of the egress asynchronous clock domain FIFO is greater than the write bandwidth of the ingress asynchronous clock domain FIFO.
  • the method includes the steps of implementing FIFO read and write operations through the transfer mode, specifically including the following processing:
  • the DDR4 AXI interface uses the data block as the operation unit for burst access, and obtains the monitoring variable of the count value of the data block and the number of data read from the entrance FIFO;
  • the method includes the step of realizing FIFO read and write operations through the transparent transmission mode, specifically including the following process:
  • the effective signal of the entrance asynchronous clock domain FIFO is delayed by one clock according to the state of the read enable signal of the entrance asynchronous clock domain FIFO and the acquisition signal of the entrance asynchronous clock domain FIFO, and then jump.
  • a processor configured to execute computer-executable instructions
  • the memory stores one or more computer-executable instructions, and when the computer-executable instructions are executed by the processor, each step of the above-mentioned method for realizing large-scale FIFO data processing based on DDR is realized.
  • the main feature of the processor for implementing large-scale FIFO data processing based on DDR is that the processor is configured to execute computer-executable instructions, and when the computer-executable instructions are executed by the processor, Each step of the above-mentioned method for realizing large-scale FIFO data processing based on DDR is realized.
  • the main feature of the computer-readable storage medium is that a computer program is stored thereon, and the computer program can be executed by a processor to realize each step of the above-mentioned method for realizing large-scale FIFO data processing based on DDR.
  • the present invention has a large capacity and high bandwidth DDR4 RAM cache and a deep FIFO with a standard interface is designed to realize the modularization of functional units, which can be flexibly transplanted to scenes requiring long-term data collection and meet the modular design requirements of the system.
  • FIG. 1 is a conceptual block diagram of a system for realizing large-scale FIFO data processing based on DDR in the present invention.
  • FIG. 2 is a transparent transmission mode FIFO read and write process of the method for realizing DDR-based large-scale FIFO data processing according to the present invention.
  • FIG. 3 is a logical block diagram of bypass mode FIFO implementation of the method for implementing DDR-based large-scale FIFO data processing in the present invention.
  • This DDR-based system of the present invention realizes large-scale FIFO data processing, including:
  • the entrance asynchronous clock domain FIFO has an independent write clock and read clock, independently set the write data bit width and read data bit width, and perform data write operation;
  • the burst read-write data block linked list is connected with the entry asynchronous clock domain FIFO, and is used to write into the data block linked list and read the data block linked list through the setting of the data bit width and the data block length;
  • the DDR4 AXI interface is connected to the linked list of burst read-write data blocks, and is used to interact with the flow control state machine and the burst read-write linked list;
  • asynchronous clock domain FIFO which is connected to the linked list of burst read and write data blocks, and is used to have an independent write clock and read clock, independently set the write data bit width and read data bit width settings, and perform data output operations;
  • the flow control state machine is connected with the entrance asynchronous clock domain FIFO, the DDR4 AXI interface and the exit asynchronous clock domain FIFO, and is used for data flow control, monitoring the entrance asynchronous clock domain FIFO, the DDR4 AXI interface and the exit asynchronous clock domain FIFO Writing and reading data streams.
  • the data block linked list detects the number of operations of the entry asynchronous clock domain FIFO and the exit asynchronous clock domain FIFO, counts and monitors the data writing and reading situation of the DDR4 AXI interface, according to the entry asynchronous clock domain FIFO and The read and write signals of the exit asynchronous clock domain FIFO change, and the data flow is coherently operated under the control of the flow control state machine.
  • the operating modes of the system are transparent transmission mode and transit mode, and the transparent transmission mode refers to the data duration is short and does not exceed the entrance asynchronous clock domain FIFO and the exit asynchronous clock domain FIFO
  • the transparent transmission mode refers to the data duration is short and does not exceed the entrance asynchronous clock domain FIFO and the exit asynchronous clock domain FIFO
  • the transfer mode refers to the time when the continuous data is long and exceeds the threshold value of the entrance asynchronous clock domain FIFO and the exit
  • the data stream is transferred through the buffer space of the DDR4 AXI interface.
  • the read bandwidth of the egress asynchronous clock domain FIFO is greater than the write bandwidth of the ingress asynchronous clock domain FIFO.
  • This utilizing above-mentioned system of the present invention utilizes DDR to realize the method for large-scale FIFO data processing based on DDR, which comprises the following steps:
  • the method includes the steps of realizing FIFO read and write operations through the transfer mode, specifically including the following processing:
  • the DDR4 AXI interface uses the data block as the operation unit for burst access, and obtains the monitoring variable of the count value of the data block and the number of data read from the entrance FIFO;
  • the method includes the steps of realizing FIFO read and write operations through the transparent transmission mode, specifically including the following process:
  • the valid signal of the entrance asynchronous clock domain FIFO is delayed by one Clock, and then jump.
  • the device for realizing large-scale FIFO data processing based on DDR of the present invention includes:
  • a processor configured to execute computer-executable instructions
  • the memory stores one or more computer-executable instructions, and when the computer-executable instructions are executed by the processor, each step of the above-mentioned method for realizing large-scale FIFO data processing based on DDR is realized.
  • the processor is configured to execute computer-executable instructions, and when the computer-executable instructions are executed by the processor, Each step of the above-mentioned method for realizing large-scale FIFO data processing based on DDR is realized.
  • the computer-readable storage medium of the present invention stores a computer program thereon, and the computer program can be executed by a processor to implement the steps of the above-mentioned method for realizing large-scale FIFO data processing based on DDR.
  • the present invention proposes a method of using high-speed DDR4 as a buffer space to realize standard FIFO and FPGA logic implementation.
  • the present invention makes full use of the characteristics of high bandwidth and large storage space of DDR4 interface, reasonably designs data flow control and scheduling controller, adopts Round- The Robin scheduling method combines write and read operations to implement a super-deep FIFO with an interface standard, which effectively solves the problem of continuous reading of long-term time-domain data.
  • the present invention proposes a method of using high-speed DDR4 as a buffer space to realize standard FIFO and FPGA logic implementation.
  • the technical solution is to make full use of the characteristics of high bandwidth and large storage space of DDR4 interface, rationally design data flow control and scheduling controller, and adopt The Round-Robin scheduling method combines write and read operations, and implements a super-deep FIFO with an interface standard to effectively solve the problem of continuous reading of long-term data.
  • the functional structure of this solution is shown in Figure 3, and it mainly consists of five parts, namely, the entrance asynchronous clock domain FIFO, the burst read and write data block linked list, the high-speed DDR4 AXI interface, the flow control state machine and the exit asynchronous clock domain FIFO.
  • the solution can be further divided into three clock domains: the ingress write clock domain, the DDR4 clock domain, and the egress read clock domain.
  • Entrance asynchronous clock domain FIFO implemented by standard FIFO IP core, with independent write clock and read clock, and independent write data bit width and read data bit width settings.
  • the FIFO implements a standardized interface, simplifies the complexity of user logic operations, and strengthens the modularization and standardization of the solution of the present invention.
  • Burst read and write data block linked list In order to match the data characteristics of the DDR4 AXI4 interface, the data bit width and the data block length match the settings, and the written data block linked list and the read data block linked list are designed.
  • the linked list has a counting monitoring variable, which simultaneously detects the number of operations of the entry-exit FIFO, and simultaneously counts and monitors the data writing and reading of the DDR4 AXI4 interface. According to the change of the read-write signal of the entry-exit FIFO, under the control of the flow control state machine, the data flow is coherent operation, to avoid overflow or breakpoint conditions, and to achieve correct data writing and reading.
  • DDR4 AXI4 interface It is implemented using the standard DDR4 AXI4IP core to ensure normal interaction with the flow control state machine and the burst read-write linked list.
  • Flow control state machine Realize data flow control to ensure that there is no overflow or breakpoint in data writing and reading.
  • the state machine continuously monitors the ingress FIFO empty signal, ingress FIFO read quantity, DDR4 writable status, DDR4 write quantity, DDR4 readable status, DDR4 read quantity, egress FIFO write quantity, and egress FIFO full signal to achieve Round -Robin scheduling policy data stream writing and reading, to ensure data continuity, improve DDR4 interface bandwidth utilization.
  • asynchronous clock domain FIFO implemented by standard FIFO IP core, with independent write clock and read clock, and independent write data bit width and read data bit width settings.
  • the FIFO implements a standardized interface, simplifies the complexity of user logic operations, and strengthens the modularization and standardization of the solution of the present invention.
  • the deep FIFO realized by using DDR proposed by the present invention has two working modes, one is a transparent transmission mode, and the other is a transfer mode.
  • Transparent transmission mode means that when the data duration is short and does not exceed a certain threshold value (not exceeding the depth of the entry and exit FIFO), the data stream does not pass through the DDR4 buffer space for transfer, and directly transmits data through the entry FIFO and exit FIFO , the overall transmission delay is the smallest, but there are requirements for continuous data duration.
  • Transit mode means that when the continuous data is longer than the threshold value (ingress and egress FIFO depth), the data stream is transferred through the DDR4 buffer space to ensure that the long-term continuous data does not overflow and is continuously clicked. This mode is suitable for continuous long-term data transmission, but the delay is relatively large.
  • the working mode of the transparent transmission mode is as follows:
  • exit FIFO write enable signal When there is data in the entry FIFO, it is read out, and then written into the exit FIFO.
  • the pseudo code is as follows:
  • the read bandwidth of the egress FIFO must be greater than the write bandwidth of the ingress FIFO.
  • the emphasis is on realizing the deep FIFO of the transfer mode.
  • Table 1 shows the core semaphore definition, timing formula and description.
  • the working mode of transit mode is as follows:
  • the entry FIFO can write data.
  • the mode jumps to the transfer mode, that is, DDR4 access is enabled, and DDR4 is used as the cache space for read and write operations.
  • the DDR4 AXI4 interface uses the data block as the operation unit for burst access.
  • the data block size has two parameters, one is the data bit width, and the other is the data length.
  • the data in the ingress FIFO needs to be read and rounded up into data blocks before it can be written into DDR4, so monitoring variables such as data block count value and ingress FIFO data readout quantity are required.
  • various parts of the present invention can be realized by hardware, software, firmware or their combination.
  • various steps or methods may be implemented by software or firmware stored in a memory and executed by a suitable instruction execution device.
  • a suitable instruction execution device For example, if implemented in hardware, as in another embodiment, it can be implemented by any one or combination of the following techniques known in the art: Discrete logic circuits, ASICs with suitable combinational logic gates, programmable gate arrays (PGAs), field programmable gate arrays (FPGAs), etc.
  • each functional unit in each embodiment of the present invention may be integrated into one processing module, each unit may exist separately physically, or two or more units may be integrated into one module.
  • the above-mentioned integrated modules can be implemented in the form of hardware or in the form of software function modules. If the integrated modules are implemented in the form of software function modules and sold or used as independent products, they can also be stored in a computer-readable storage medium.
  • the storage medium mentioned above may be a read-only memory, a magnetic disk or an optical disk, and the like.
  • the present invention has a large capacity and high bandwidth DDR4 RAM cache and a deep FIFO with a standard interface is designed to realize the modularization of functional units, which can be flexibly transplanted to scenes requiring long-term data collection and meet the modular design requirements of the system.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Communication Control (AREA)

Abstract

一种基于DDR实现大规模FIFO数据处理的系统,以及一种利用DDR实现基于DDR的大规模FIFO数据处理的方法。该系统包括入口异步时钟域FIFO;突发读写数据块链表,通过数据位宽及数据块长度的设置,写入数据块链表和读出数据块链表;DDR4 AXI接口与流控状态机及突发读写链表进行交互;出口异步时钟域FIFO;流控状态机,用于数据流控,监控入口异步时钟域FIFO、DDR4 AXI接口和出口异步时钟域FIFO的数据流的写入和读取。采用基于DDR实现大规模FIFO数据处理的系统、方法、装置、处理器及其计算机可读存储介质,提高了时间利用率,有效提高了数据采集效率,并且增大了FIFO存储深度,保证了较长时间的连续数据采集。

Description

基于DDR实现大规模FIFO数据处理的系统、方法、装置、处理器及其存储介质
相关申请的交叉引用
本申请主张2021年11月30日提交的申请号为202111448215.6的中国发明专利申请的优先权,其内容通过引用的方式并入本申请中。
技术领域
本发明涉及无线通信测试领域,尤其涉及超宽带无线通信信号采集及分析领域,具体是指一种基于DDR实现大规模FIFO数据处理的系统、方法、装置、处理器及其计算机可读存储介质。
背景技术
无线通信测试一般涉及到矢量分析和协议分析,信号分析仪具有一定时长的时域信号采集和存储能力,以此满足后续的信号分析功能。无线通信射频信号分析仪具有混频架构,可以将宽带射频信号变频至中频或基带等较低频率,中频或模拟基带信号经过高速ADC采样形成量化数据,通过高速数据接口传输至FPGA,该数据时钟速度高,数据流连续,需要接口速率快,存储容量大的设备进行缓存。FPGA内部存储空间有限,一般需要外部DDR RAM作为大容量存储空间。一般情况下,高速量化数据时钟与DDR接口时钟不同,同样的情况,DDR接口时钟与数据回传接口时钟不同,为实现数据跨时钟域传输,多采用异步时钟域FIFO作为不同时钟域逻辑的接口模块。为采集一定时长的数据,通常的做法是将连续量化数据通过异步FIFO缓存至DDR存储空间,存储完毕后,再发起回传指令,将数据上传至上位机进行后续处理。该方式过程清晰,但有效传输时间较大,综合带宽不高,不能充分利用高速DDR接口带宽,造成了数据传输耗时较长。
将DDR器件的写入操作和读取操作合理调度,充分利用DDR接口带宽,可以将先缓存再读取两个分离的操作过程合并,形成统一的先进先出(FIFO)操作模式,可以有效减少操作时间,大大提高数据吞吐率。
发明内容
本发明的目的是克服了上述现有技术的缺点,提供了一种满足操作时间少、数据吞吐率 高、适用范围较为广泛的基于DDR实现大规模FIFO数据处理的系统、方法、装置、处理器及其计算机可读存储介质。
为了实现上述目的,本发明的基于DDR实现大规模FIFO数据处理的系统、方法、装置、处理器及其计算机可读存储介质如下:
该基于DDR实现大规模FIFO数据处理的系统,其主要特点是,所述的系统包括:
入口异步时钟域FIFO,具有独立的写时钟和读时钟,独立设置写数据位宽和读数据位宽,进行数据写入操作;
突发读写数据块链表,与所述的入口异步时钟域FIFO相连接,用于通过数据位宽及数据块长度的设置,写入数据块链表和读出数据块链表;
DDR4 AXI接口,与所述的突发读写数据块链表相连接,用于与流控状态机及突发读写链表进行交互;
出口异步时钟域FIFO,与所述的突发读写数据块链表相连接,用于具有独立的写时钟和读时钟,独立设置写数据位宽和读数据位宽设置,进行数据输出操作;
流控状态机,与所述的入口异步时钟域FIFO、DDR4 AXI接口和出口异步时钟域FIFO相连接,用于数据流控,监控入口异步时钟域FIFO、DDR4 AXI接口和出口异步时钟域FIFO的数据流的写入和读取。
较佳地,所述的数据块链表检测入口异步时钟域FIFO和出口异步时钟域FIFO的操作数目,计数监控DDR4 AXI接口的数据写入读出情况,根据入口异步时钟域FIFO和出口异步时钟域FIFO的读写信号变化,在流控状态机的控制下,进行数据流连贯操作。
较佳地,所述的系统的工作模式有是透传模式和中转模式,所述的透传模式指在数据时长较短且不超过入口异步时钟域FIFO和出口异步时钟域FIFO的FIFO深度的情况下,数据流直接通过入口异步时钟域FIFO和出口异步时钟域FIFO进行数据传输;所述的中转模式指在连续数据时长较长且超过门限值入口异步时钟域FIFO和出口异步时钟域FIFO的FIFO深度的情况下,数据流经过DDR4 AXI接口的缓冲空间中转。
较佳地,所述的系统在透传模式下出口异步时钟域FIFO的读出带宽大于入口异步时钟域FIFO的写入带宽。
该利用上述系统实现大规模FIFO数据处理的系统,其主要特点是,所述的方法包括以下步骤:
(1)上电复位,入口异步时钟域FIFO写入数据;
(2)判断写入数据是否大于门限值,如果是,则工作模式转为中转模式,开启DDR4访 问,利用DDR4作为缓存空间进行读写操作;否则,工作模式转为透传模式。
较佳地,所述的方法包括通过中转模式实现FIFO读写操作的步骤,具体包括以下处理过程:
(1-1)DDR4 AXI接口以数据块为操作单元进行突发访问,得到数据块计数值和入口FIFO数据读出数量的监控变量;
(1-2)入口异步时钟域FIFO获取完整长度的数据块;
(1-3)若DDR4 AXI接口的写总线处于READY状态,则发出写使能,并将内部计数值更新;若DDR4 AXI接口的读总线处于READY状态,则发出读使能,规整数据传递至出口异步时钟域FIFO,并将内部计数值更新。
较佳地,所述的方法包括通过透传模式实现FIFO读写操作的步骤,具体包括以下处理过程:
(2-1)上电复位,入口异步时钟域FIFO的空信号为高,出口异步时钟域FIFO的满信号为低;
(2-2)写入数据,入口异步时钟域FIFO的空信号为低,根据时序跳转公式,得到入口异步时钟域FIFO的读使能为高;
(2-3)对入口异步时钟域FIFO的数据读出数量进行计数,如果读出数量超过门限值,则模式信号自动跳转为中转模式;否则,继续透传模式,继续步骤(4);
(2-4)入口异步时钟域FIFO中读出数据,写入出口异步时钟域FIFO,出口异步时钟域FIFO写使能信号根据公式进行时序跳转;
(2-5)判断入口异步时钟域FIFO是否读空,或出口异步时钟域FIFO是否写满,如果是,则不再对FIFO进行操作,退出步骤;否则,继续对FIFO进行读写操作。
较佳地,所述的步骤(4)中入口异步时钟域FIFO的有效信号根据入口异步时钟域FIFO的读使能信号和入口异步时钟域FIFO的获取信号的状态,延后一个时钟,再进行跳转。
该用于基于DDR实现大规模FIFO数据处理的装置,其主要特点是,所述的装置包括:
处理器,被配置成执行计算机可执行指令;
存储器,存储一个或多个计算机可执行指令,所述的计算机可执行指令被所述的处理器执行时,实现上述的实现基于DDR的大规模FIFO数据处理的方法的各个步骤。
该用于基于DDR实现大规模FIFO数据处理的处理器,其主要特点是,所述的处理器被配置成执行计算机可执行指令,所述的计算机可执行指令被所述的处理器执行时,实现上述的实现基于DDR的大规模FIFO数据处理的方法的各个步骤。
该计算机可读存储介质,其主要特点是,其上存储有计算机程序,所述的计算机程序可被处理器执行以实现上述的实现基于DDR的大规模FIFO数据处理的方法的各个步骤。
采用了本发明的基于DDR实现大规模FIFO数据处理的系统、方法、装置、处理器及其计算机可读存储介质,利用硬件DDR4 RAM提供的超高带宽及大容量能力,采用Round-Robin调度算法实现FIFO内部流缓存,提高了时间利用率,解决了传统先暂存再回读的耗时问题,有效提高了数据采集效率,并且增大了FIFO存储深度,保证了较长时间的连续数据采集。本发明具有大容量和高带宽DDR4 RAM缓存设计出标准接口的深度FIFO,实现功能单元的模块化,可灵活移植到需要长时数据采集的场景,满足系统的模块化设计需求。
附图说明
图1为本发明的基于DDR实现大规模FIFO数据处理的系统的概念框图。
图2为本发明的利用DDR实现基于DDR的大规模FIFO数据处理的方法的透传模式FIFO读写流程。
图3为本发明的利用DDR实现基于DDR的大规模FIFO数据处理的方法的旁路模式FIFO实现逻辑框图。
具体实施方式
为了能够更清楚地描述本发明的技术内容,下面结合具体实施例来进行进一步的描述。
本发明的该基于DDR实现大规模FIFO数据处理的系统,其中包括:
入口异步时钟域FIFO,具有独立的写时钟和读时钟,独立设置写数据位宽和读数据位宽,进行数据写入操作;
突发读写数据块链表,与所述的入口异步时钟域FIFO相连接,用于通过数据位宽及数据块长度的设置,写入数据块链表和读出数据块链表;
DDR4 AXI接口,与所述的突发读写数据块链表相连接,用于与流控状态机及突发读写链表进行交互;
出口异步时钟域FIFO,与所述的突发读写数据块链表相连接,用于具有独立的写时钟和读时钟,独立设置写数据位宽和读数据位宽设置,进行数据输出操作;
流控状态机,与所述的入口异步时钟域FIFO、DDR4 AXI接口和出口异步时钟域FIFO相连接,用于数据流控,监控入口异步时钟域FIFO、DDR4 AXI接口和出口异步时钟域FIFO的数据流的写入和读取。
作为本发明的优选实施方式,所述的数据块链表检测入口异步时钟域FIFO和出口异步时钟域FIFO的操作数目,计数监控DDR4 AXI接口的数据写入读出情况,根据入口异步时钟域FIFO和出口异步时钟域FIFO的读写信号变化,在流控状态机的控制下,进行数据流连贯操作。
作为本发明的优选实施方式,所述的系统的工作模式有是透传模式和中转模式,所述的透传模式指在数据时长较短且不超过入口异步时钟域FIFO和出口异步时钟域FIFO的FIFO深度的情况下,数据流直接通过入口异步时钟域FIFO和出口异步时钟域FIFO进行数据传输;所述的中转模式指在连续数据时长较长且超过门限值入口异步时钟域FIFO和出口异步时钟域FIFO的FIFO深度的情况下,数据流经过DDR4 AXI接口的缓冲空间中转。
作为本发明的优选实施方式,所述的系统在透传模式下出口异步时钟域FIFO的读出带宽大于入口异步时钟域FIFO的写入带宽。
本发明的该利用上述系统利用DDR实现基于DDR的大规模FIFO数据处理的方法,其中包括以下步骤:
(1)上电复位,入口异步时钟域FIFO写入数据;
(2)判断写入数据是否大于门限值,如果是,则工作模式转为中转模式,开启DDR4访问,利用DDR4作为缓存空间进行读写操作;否则,工作模式转为透传模式。
作为本发明的优选实施方式,所述的方法包括通过中转模式实现FIFO读写操作的步骤,具体包括以下处理过程:
(1-1)DDR4 AXI接口以数据块为操作单元进行突发访问,得到数据块计数值和入口FIFO数据读出数量的监控变量;
(1-2)入口异步时钟域FIFO获取完整长度的数据块;
(1-3)若DDR4 AXI接口的写总线处于READY状态,则发出写使能,并将内部计数值更新;若DDR4 AXI接口的读总线处于READY状态,则发出读使能,规整数据传递至出口异步时钟域FIFO,并将内部计数值更新。
作为本发明的优选实施方式,所述的方法包括通过透传模式实现FIFO读写操作的步骤,具体包括以下处理过程:
(2-1)上电复位,入口异步时钟域FIFO的空信号为高,出口异步时钟域FIFO的满信号为低;
(2-2)写入数据,入口异步时钟域FIFO的空信号为低,根据时序跳转公式,得到入口异步时钟域FIFO的读使能为高;
(2-3)对入口异步时钟域FIFO的数据读出数量进行计数,如果读出数量超过门限值,则模式信号自动跳转为中转模式;否则,继续透传模式,继续步骤(4);
(2-4)入口异步时钟域FIFO中读出数据,写入出口异步时钟域FIFO,出口异步时钟域FIFO写使能信号根据公式进行时序跳转;
(2-5)判断入口异步时钟域FIFO是否读空,或出口异步时钟域FIFO是否写满,如果是,则不再对FIFO进行操作,退出步骤;否则,继续对FIFO进行读写操作。
作为本发明的优选实施方式,所述的步骤(4)中入口异步时钟域FIFO的有效信号根据入口异步时钟域FIFO的读使能信号和入口异步时钟域FIFO的获取信号的状态,延后一个时钟,再进行跳转。
本发明的该用于基于DDR实现大规模FIFO数据处理的装置,其中,所述的装置包括:
处理器,被配置成执行计算机可执行指令;
存储器,存储一个或多个计算机可执行指令,所述的计算机可执行指令被所述的处理器执行时,实现上述的实现基于DDR的大规模FIFO数据处理的方法的各个步骤。
本发明的该用于基于DDR实现大规模FIFO数据处理的处理器,其中,所述的处理器被配置成执行计算机可执行指令,所述的计算机可执行指令被所述的处理器执行时,实现上述的实现基于DDR的大规模FIFO数据处理的方法的各个步骤。
本发明的该计算机可读存储介质,其上存储有计算机程序,所述的计算机程序可被处理器执行以实现上述的实现基于DDR的大规模FIFO数据处理的方法的各个步骤。
本发明提出了一种利用高速DDR4作为缓存空间实现标准FIFO的方法和FPGA逻辑实现,本发明充分利用DDR4接口带宽高,存储空间大的特点,合理设计数据流控和调度控制器,采用Round-Robin调度方法,将写入和读取操作合并,实现了一种接口标准的超大深度FIFO,有效解决了大时长时域数据连续读取的问题。
本发明提出了一种利用高速DDR4作为缓存空间实现标准FIFO的方法和FPGA逻辑实现,其技术方案是充分利用DDR4接口带宽高,存储空间大的特点,合理设计数据流控和调度控制器,采用Round-Robin调度方法,将写入和读取操作合并,实现了一种接口标准的超大深度FIFO,用以有效解决大时长数据连续读取的问题。该方案功能结构如图3所示,主要由五部分组成,分别是入口异步时钟域FIFO、突发读写数据块链表、高速DDR4 AXI接口、流控状态机和出口异步时钟域FIFO。该方案按照时钟域划分,又可以分为入口写时钟域,DDR4时钟域,和出口读时钟域三个时钟域。
本发明的结构按照不同的功能单元描述:
入口异步时钟域FIFO:采用标准FIFO IP核实现,具有独立的写时钟和读时钟,具有独立的写数据位宽和读数据位宽设置。该FIFO实现了标准化接口,简化了用户逻辑操作复杂度,强化本发明方案的模块化、标准化。
突发读写数据块链表:为匹配DDR4 AXI4接口数据特点,采用数据位宽及数据块长度相匹配的设置,设计了写入数据块链表和读出数据块链表。该链表具有计数监控变量,同时检测出入口FIFO的操作数目,同时计数监控DDR4 AXI4接口的数据写入读出情况,根据出入口FIFO的读写信号变化,在流控状态机的控制下,数据流连贯操作,避免溢出或断点情况,实现数据正确的写入和读取。
DDR4 AXI4接口:使用标准的DDR4 AXI4IP核实现,保证和流控状态机及突发读写链表的正常交互。
流控状态机:实现数据流控,保证数据写入和读取不出现溢出或断点的现象。该状态机持续监控入口FIFO空信号、入口FIFO读出数量、DDR4可写状态、DDR4写入数量、DDR4可读状态、DDR4读出数量、出口FIFO写入数量和出口FIFO满信号,以实现Round-Robin调度策略的数据流写入和读取,保证数据连贯性,提高DDR4接口带宽使用率。
出口异步时钟域FIFO:采用标准FIFO IP核实现,具有独立的写时钟和读时钟,具有独立的写数据位宽和读数据位宽设置。该FIFO实现了标准化接口,简化了用户逻辑操作复杂度,强化本发明方案的模块化、标准化。
本发明提出的使用DDR实现的深度FIFO有两种工作模式,一种是透传模式,一种是中转模式。透传模式是指当数据时长较短,不超过一定的门限值的情况下(不超过入口和出口FIFO深度),数据流不经过DDR4缓冲空间中转,直接通过入口FIFO和出口FIFO进行数据传输,整体传输时延最小,但对连续数据时长有要求。中转模式是指当连续数据时长较长,超过门限值(入口和出口FIFO深度),数据流经过DDR4缓冲空间中转,保证长时连续数据不溢出,不断点。该模式适用于连续长时数据传输,但时延较大。
如图2所示,透传模式的工作模式如下:
1、当上电复位后,入口FIFO空信号为高,出口FIFO满信号为低。
2、一旦写入数据,入口FIFO空信号为低,按照时序跳转公式(组合逻辑)“入口FIFO读使能=!入口FIFO空信号&&(!入口FIFO有效信号||入口FIFO获取信号)”导出入口FIFO读使能为高。其中,入口FIFO有效信号和入口FIFO获取信号上电复位后均为低。
3、开始对入口FIFO数据读出数量进行计数,作为模式跳转的依据,如果读出数量超过门限值,模式信号自动跳转为中转模式。
4、入口FIFO中有数据即读出、然后写入出口FIFO。出口FIFO写使能信号根据公式“出口FIFO写使能<=入口FIFO有效信号&&!出口FIFO满信号;”进行时序跳转,其中【入口FIFO有效信号】根据【入口FIFO读使能信号】和【入口FIFO获取信号】的状态延后一个时钟跳转。伪代码如下:
if(入口FIFO读使能信号)
入口FIFO有效信号<=1;
else if(入口FIFO获取信号)
入口FIFO有效信号<=0;
5、一旦入口FIFO读空,或者写入FIFO写满,【入口FIFO读使能】和【出口FIFO写使能】即跳低,不再对FIFO进行操作。
6、为保证写入数据不溢出,需要出口FIFO的读出带宽大于入口FIFO的写入带宽。
本发明的具体实施方式中,重点在于实现中转模式的深度FIFO。首先确定若干变量,及变量的时序跳转公式。如表1所示为核心信号量定义、时序公式及说明。
表1
Figure PCTCN2022106958-appb-000001
Figure PCTCN2022106958-appb-000002
中转模式的工作模式如下:
1、上电复位后,入口FIFO可写入数据。
2、当写入数据大于门限值时,模式跳转为中转模式,即开启DDR4访问,利用DDR4作为缓存空间进行读写操作。
3、DDR4 AXI4接口以数据块为操作单元进行突发访问。数据块大小有两个参数,一是数据位宽,二是数据长度。入口FIFO中的数据需读出凑整为数据块,才能被写入DDR4,所以需要有数据块计数值和入口FIFO数据读出数量等监控变量。
4当从入口FIFO获取了整块长度的数据后,当AXI4总线处于READY状态,发出写使能,并将内部计数值更新。
当AXI4读总线处于READY时,发出读使能,并规整数据传递给出口FIFO,并将内部计数值更新。
本实施例的具体实现方案可以参见上述实施例中的相关说明,此处不再赘述。
可以理解的是,上述各实施例中相同或相似部分可以相互参考,在一些实施例中未详细说明的内容可以参见其他实施例中相同或相似的内容。
需要说明的是,在本发明的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是指至少两个。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行装置执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑 电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,相应的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
采用了本发明的基于DDR实现大规模FIFO数据处理的系统、方法、装置、处理器及其计算机可读存储介质,利用硬件DDR4 RAM提供的超高带宽及大容量能力,采用Round-Robin调度算法实现FIFO内部流缓存,提高了时间利用率,解决了传统先暂存再回读的耗时问题,有效提高了数据采集效率,并且增大了FIFO存储深度,保证了较长时间的连续数据采集。本发明具有大容量和高带宽DDR4 RAM缓存设计出标准接口的深度FIFO,实现功能单元的模块化,可灵活移植到需要长时数据采集的场景,满足系统的模块化设计需求。
在此说明书中,本发明已参照其特定的实施例作了描述。但是,很显然仍可以作出各种修改和变换而不背离本发明的精神和范围。因此,说明书和附图应被认为是说明性的而非限制性的。

Claims (11)

  1. 一种基于DDR实现大规模FIFO数据处理的系统,其特征在于,所述的系统包括:
    入口异步时钟域FIFO,具有独立的写时钟和读时钟,独立设置写数据位宽和读数据位宽,进行数据写入操作;
    突发读写数据块链表,与所述的入口异步时钟域FIFO相连接,用于通过数据位宽及数据块长度的设置,写入数据块链表和读出数据块链表;
    DDR4 AXI接口,与所述的突发读写数据块链表相连接,用于与流控状态机及突发读写链表进行交互;
    出口异步时钟域FIFO,与所述的突发读写数据块链表相连接,用于具有独立的写时钟和读时钟,独立设置写数据位宽和读数据位宽设置,进行数据输出操作;
    流控状态机,与所述的入口异步时钟域FIFO、DDR4 AXI接口和出口异步时钟域FIFO相连接,用于数据流控,监控入口异步时钟域FIFO、DDR4 AXI接口和出口异步时钟域FIFO的数据流的写入和读取。
  2. 根据权利要求1所述的基于DDR实现大规模FIFO数据处理的系统,其特征在于,所述的数据块链表检测入口异步时钟域FIFO和出口异步时钟域FIFO的操作数目,计数监控DDR4 AXI接口的数据写入读出情况,根据入口异步时钟域FIFO和出口异步时钟域FIFO的读写信号变化,在流控状态机的控制下,进行数据流连贯操作。
  3. 根据权利要求1所述的基于DDR实现大规模FIFO数据处理的系统,其特征在于,所述的系统的工作模式有是透传模式和中转模式,所述的透传模式指在数据时长较短且不超过入口异步时钟域FIFO和出口异步时钟域FIFO的FIFO深度的情况下,数据流直接通过入口异步时钟域FIFO和出口异步时钟域FIFO进行数据传输;所述的中转模式指在连续数据时长较长且超过门限值入口异步时钟域FIFO和出口异步时钟域FIFO的FIFO深度的情况下,数据流经过DDR4 AXI接口的缓冲空间中转。
  4. 根据权利要求1所述的基于DDR实现大规模FIFO数据处理的系统,其特征在于,所述的系统在透传模式下出口异步时钟域FIFO的读出带宽大于入口异步时钟域FIFO的写入带宽。
  5. 一种利用权利要求1所述的系统实现基于DDR的大规模FIFO数据处理的方法,其特征在于,所述的方法包括以下步骤:
    (1)上电复位,入口异步时钟域FIFO写入数据;
    (2)判断写入数据是否大于门限值,如果是,则工作模式转为中转模式,开启DDR4访问,利用DDR4作为缓存空间进行读写操作;否则,工作模式转为透传模式。
  6. 根据权利要求5所述的实现基于DDR的大规模FIFO数据处理的方法,其特征在于,所述的方法包括通过中转模式实现FIFO读写操作的步骤,具体包括以下处理过程:
    (1-1)DDR4 AXI接口以数据块为操作单元进行突发访问,得到数据块计数值和入口FIFO数据读出数量的监控变量;
    (1-2)入口异步时钟域FIFO获取完整长度的数据块;
    (1-3)若DDR4 AXI接口的写总线处于READY状态,则发出写使能,并将内部计数值更新;若DDR4 AXI接口的读总线处于READY状态,则发出读使能,规整数据传递至出口异步时钟域FIFO,并将内部计数值更新。
  7. 根据权利要求5所述的实现基于DDR的大规模FIFO数据处理的方法,其特征在于,所述的方法包括通过透传模式实现FIFO读写操作的步骤,具体包括以下处理过程:
    (2-1)上电复位,入口异步时钟域FIFO的空信号为高,出口异步时钟域FIFO的满信号为低;
    (2-2)写入数据,入口异步时钟域FIFO的空信号为低,根据时序跳转公式,得到入口异步时钟域FIFO的读使能为高;
    (2-3)对入口异步时钟域FIFO的数据读出数量进行计数,如果读出数量超过门限值,则模式信号自动跳转为中转模式;否则,继续透传模式,继续步骤(4);
    (2-4)入口异步时钟域FIFO中读出数据,写入出口异步时钟域FIFO,出口异步时钟域FIFO写使能信号根据公式进行时序跳转;
    (2-5)判断入口异步时钟域FIFO是否读空,或出口异步时钟域FIFO是否写满,如果是,则不再对FIFO进行操作,退出步骤;否则,继续对FIFO进行读写操作。
  8. 根据权利要求7所述的实现基于DDR的大规模FIFO数据处理的方法,其特征在于,所述的步骤(4)中入口异步时钟域FIFO的有效信号根据入口异步时钟域FIFO的读使能信号和入口异步时钟域FIFO的获取信号的状态,延后一个时钟,再进行跳转。
  9. 一种用于基于DDR实现大规模FIFO数据处理的装置,其特征在于,所述的装置包括:
    处理器,被配置成执行计算机可执行指令;
    存储器,存储一个或多个计算机可执行指令,所述的计算机可执行指令被所述的处理器执行时,实现权利要求5至8中任一项所述的实现基于DDR的大规模FIFO数据处理的方法 的各个步骤。
  10. 一种用于基于DDR实现大规模FIFO数据处理的处理器,其特征在于,所述的处理器被配置成执行计算机可执行指令,所述的计算机可执行指令被所述的处理器执行时,实现权利要求5至8中任一项所述的实现基于DDR的大规模FIFO数据处理的方法的各个步骤。
  11. 一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述的计算机程序可被处理器执行以实现权利要求5至8中任一项所述的实现基于DDR的大规模FIFO数据处理的方法的各个步骤。
PCT/CN2022/106958 2021-11-30 2022-07-21 基于ddr实现大规模fifo数据处理的系统、方法、装置、处理器及其存储介质 WO2023098099A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202111448215.6A CN114090472A (zh) 2021-11-30 2021-11-30 基于ddr实现大规模fifo数据处理的系统、方法、装置、处理器及其存储介质
CN202111448215.6 2021-11-30

Publications (1)

Publication Number Publication Date
WO2023098099A1 true WO2023098099A1 (zh) 2023-06-08

Family

ID=80306363

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/106958 WO2023098099A1 (zh) 2021-11-30 2022-07-21 基于ddr实现大规模fifo数据处理的系统、方法、装置、处理器及其存储介质

Country Status (2)

Country Link
CN (1) CN114090472A (zh)
WO (1) WO2023098099A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116455530A (zh) * 2023-06-20 2023-07-18 中星联华科技(北京)有限公司 误码仪、码型生成方法、装置、电子设备及介质
CN118132472A (zh) * 2024-05-07 2024-06-04 西安智多晶微电子有限公司 一种基于多接口ddr内存控制器的实现方法及装置

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114090472A (zh) * 2021-11-30 2022-02-25 上海创远仪器技术股份有限公司 基于ddr实现大规模fifo数据处理的系统、方法、装置、处理器及其存储介质
CN114968169B (zh) * 2022-05-17 2023-10-10 赵浩然 一种fpga控制的ddr映射多个ddr_fifo实现系统及方法
CN115225880B (zh) * 2022-07-15 2024-02-27 海宁奕斯伟集成电路设计有限公司 数据处理方法、装置、设备、可读存储介质及程序产品

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105468547A (zh) * 2015-11-18 2016-04-06 哈尔滨工业大学 一种基于axi总线的便捷可配置帧数据存取控制系统
US20160124889A1 (en) * 2014-11-03 2016-05-05 Chanpreet Singh Asynchronous fifo buffer with johnson code write pointer
CN109412914A (zh) * 2018-08-31 2019-03-01 南京理工大学 流数据与axi接口通信装置
CN111262655A (zh) * 2020-01-15 2020-06-09 江苏方天电力技术有限公司 基于异步时钟的fpga万兆以太网数据高速发送方法
CN112948295A (zh) * 2019-12-11 2021-06-11 中国科学院声学研究所 一种基于axi4总线的fpga与ddr高速数据包传输系统及方法
CN114090472A (zh) * 2021-11-30 2022-02-25 上海创远仪器技术股份有限公司 基于ddr实现大规模fifo数据处理的系统、方法、装置、处理器及其存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160124889A1 (en) * 2014-11-03 2016-05-05 Chanpreet Singh Asynchronous fifo buffer with johnson code write pointer
CN105468547A (zh) * 2015-11-18 2016-04-06 哈尔滨工业大学 一种基于axi总线的便捷可配置帧数据存取控制系统
CN109412914A (zh) * 2018-08-31 2019-03-01 南京理工大学 流数据与axi接口通信装置
CN112948295A (zh) * 2019-12-11 2021-06-11 中国科学院声学研究所 一种基于axi4总线的fpga与ddr高速数据包传输系统及方法
CN111262655A (zh) * 2020-01-15 2020-06-09 江苏方天电力技术有限公司 基于异步时钟的fpga万兆以太网数据高速发送方法
CN114090472A (zh) * 2021-11-30 2022-02-25 上海创远仪器技术股份有限公司 基于ddr实现大规模fifo数据处理的系统、方法、装置、处理器及其存储介质

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116455530A (zh) * 2023-06-20 2023-07-18 中星联华科技(北京)有限公司 误码仪、码型生成方法、装置、电子设备及介质
CN116455530B (zh) * 2023-06-20 2023-11-03 中星联华科技(北京)有限公司 误码仪、码型生成方法、装置、电子设备及介质
CN118132472A (zh) * 2024-05-07 2024-06-04 西安智多晶微电子有限公司 一种基于多接口ddr内存控制器的实现方法及装置

Also Published As

Publication number Publication date
CN114090472A (zh) 2022-02-25

Similar Documents

Publication Publication Date Title
WO2023098099A1 (zh) 基于ddr实现大规模fifo数据处理的系统、方法、装置、处理器及其存储介质
CN109271335B (zh) 一种多通道数据源ddr缓存的fpga实现方法
US8675425B2 (en) Single-strobe operation of memory devices
CN110462599A (zh) 用于循环缓冲器的自主硬件管理的设备和方法
CN103064809B (zh) 源同步双倍数据速率接口的采样装置及其采样方法
EP2908251B1 (en) Method and device for processing data
CN209842608U (zh) 一种基于fpga fifo模块的ddr3存储器控制
CN108536615A (zh) 一种乒乓缓存控制器及其设计方法
CN107995061A (zh) 多规格10Gbps网络信号长时采集与回放系统和方法
CN104239232B (zh) 一种基于fpga内dpram的乒乓缓存操作结构
CN110334040A (zh) 一种星载固态存储系统
CN103218323B (zh) 一种高速数据采集和传输装置
CN105446699A (zh) 数据帧队列管理方法
WO2021159494A1 (zh) 固态存储硬盘和固态存储硬盘的控制方法
CN110389929A (zh) 基于分布式内存的片上系统架构
CN106372029A (zh) 一种基于中断的点对点片内通信模块
CN216016848U (zh) 用于采集超宽带无线信号的系统
US9851400B1 (en) System on a chip serial communication interface method and apparatus
CN106095722A (zh) 一种应用于片上网络的虚通道低功耗电路
CN116136748B (zh) 基于FPGA实现的高带宽NVMe SSD读写系统与方法
CN102012948B (zh) 基于usb的数据实时采集和存储系统及方法
CN103076990A (zh) 一种基于fifo缓存结构的数据回放装置
CN103150129B (zh) PXIe接口Nand Flash数据流盘存取加速方法
CN209265422U (zh) 一种多接口的高速vpx存储装置
CN108108149A (zh) 一种基于分离统计高效收集的性能统计电路

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22899919

Country of ref document: EP

Kind code of ref document: A1