CN106445842B - 一种数据缓存器和数据缓存方法 - Google Patents

一种数据缓存器和数据缓存方法 Download PDF

Info

Publication number
CN106445842B
CN106445842B CN201610830307.3A CN201610830307A CN106445842B CN 106445842 B CN106445842 B CN 106445842B CN 201610830307 A CN201610830307 A CN 201610830307A CN 106445842 B CN106445842 B CN 106445842B
Authority
CN
China
Prior art keywords
data
al422b
read
add
write
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.)
Active
Application number
CN201610830307.3A
Other languages
English (en)
Other versions
CN106445842A (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.)
Beijing Machinery Equipment Research Institute
Original Assignee
Beijing Machinery Equipment Research Institute
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 Beijing Machinery Equipment Research Institute filed Critical Beijing Machinery Equipment Research Institute
Priority to CN201610830307.3A priority Critical patent/CN106445842B/zh
Publication of CN106445842A publication Critical patent/CN106445842A/zh
Application granted granted Critical
Publication of CN106445842B publication Critical patent/CN106445842B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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
    • 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/10Methods 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 having a sequence of storage locations each being individually accessible for both enqueue and dequeue operations, e.g. using random access memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Image Input (AREA)

Abstract

本发明涉及一种数据缓存器和数据缓存方法,数据缓存器包括AL422B和可编程ASIC器件;所述可编程ASIC器件包括多个I/O引脚、写地址计数器WR_ADD、读地址计数器RD_ADD和批量读取计数器cnt,用于计算AL422B中写入和读取的数据量,产生AL422B读写操作需要的控制时序信号,并输出到AL422B;AL422B包括写寄存器、数据缓存区、读寄存器、多个I/O引脚,用于根据可编程ASIC器件输出的控制时序信号进行读写操作。通过增加可编程ASIC器件的设计实现了高速数据的大容量缓存,减少了数据缓存的硬件成本。

Description

一种数据缓存器和数据缓存方法
技术领域
本发明涉及数据缓存技术领域,尤其涉及一种采用视频帧存储器和可编程ASIC器件的数据缓存器和数据缓存方法。
背景技术
FIFO(First Input First Out,先进先出)芯片是一种在通信***中应用广泛的先进先出的数据缓存器,它可以缓存暂时来不及处理的数据。FIFO除了数据线外,输入端有写、满等控制信号,输出端有读、空等控制信号。作为一种新型大规模集成电路,FIFO芯片以其灵活、方便、高效的特性,逐渐在高速数据采集、高速数据处理、高速数据传输以及多机处理***中得到越来越广泛的应用。但是,现有的FIFO缓存容量太小,价格昂贵,1片IDT72系列具有32kB缓存的FIFO市场价格在百元以上,而且按照读取速度和容量的增加其价格更加昂贵。
AL422B是由AverLogic公司推出的存储容量为384k×8bits的视频帧存储器。该芯片的存储体为384k×8bits,能独立进行读/写操作(可接受不同的I/O数据率),支持高速异步串行存取,读写时钟周期为20ns,存取时间为15ns,内部DRAM能自行刷新数据,具有输出使能控制,工作电压可为5V或3.3V。AL422B的市场价格在十元内,价格比现有的FIFO芯片便宜,且容量大,可以进行更多数据的快速缓存。
目前,AL422B主要作为相机视频帧缓存器使用,其架构和使用方式和和普通的FIFO有所区别。比如,AL422B没有空标识位、半满标识位、全满标识位等,当数据写入或读取时,器件内部的写和读的地址指针会随写读操作递增。当写、读完毕后,需要对器件进行置位操作,才能使器件内部的读和写的地址指针清零,完成置位操作后,才能重新开始下一次数据的缓存。因此,AL422B不能像普通FIFO一样直接作为数据流的缓存器使用。本发明的目的在于使AL422B具备普通FIFO的数据缓存功能。
发明内容
鉴于上述的分析,本发明旨在提供一种数据缓存器和数据缓存方法,用以解决现有视频帧存储器不能像普通FIFO一样直接作为数据流的缓存器使用的问题。
本发明的目的主要是通过以下技术方案实现的:
提供了一种数据缓存器,包括AL422B和可编程ASIC器件;
其中,可编程ASIC器件,包括多个I/O引脚、写地址计数器WR_ADD、读地址计数器RD_ADD和批量读取计数器cnt,可编程ASIC器件用于计算AL422B中写入和读取的数据量,产生AL422B读写操作需要的控制时序信号,并输出到AL422B;
AL422B包括写寄存器、数据缓存区、读寄存器、多个I/O引脚,用于根据可编程ASIC器件输出的控制时序信号进行读写操作。
优选的,可编程ASIC器件还用于接收外部的写入启动信号,判断写地址计数器是否溢出,并控制AL422B进行数据写操作。
当可编程ASIC器件的写地址计数器WR_ADD溢出,将AL422B内部的写指针置位清零,以及将可编程ASIC器件的写地址计数器WR_ADD置零。
优选的,在可编程ASIC器件中,当计数器满足读取条件时,则启动可编程ASIC器件的数据读取程序,判断读地址计数器是否溢出,并控制AL422B进行数据读取操作。
当可编程ASIC器件的读地址计数器RD_ADD溢出,将AL422B内部的读指针置位清零,以及将可编程ASIC器件的读地址计数器RD_ADD置零。
当可编程ASIC器件的批量读取计数器cnt大于规定的批量读取数据量时,则AL422B等待下一批次的数据读取操作;当批量读取计数器cnt小于等于规定的批量读取数据量时,则AL422B继续进行数据读取。
上述可编程ASIC器件是FPGA或者CPLD。
本发明还提供一种使用上述数据缓存器的数据缓存方法,包括以下步骤:
步骤1.初始化可编程ASIC器件;
步骤2.初始化AL422B;
步骤3.可编程ASIC器件根据外部指令控制AL422B进行数据读写,包括数据写入和数据读取操作。
其中,步骤3中的数据写入进一步包括:
可编程ASIC器件判断是否收到写入启动信号;
在可编程ASIC器件收到写入启动信号后,可编程ASIC器件判断其中的写地址计数器是否溢出;
如果溢出,则将写地址计数器重新置为0、并通过控制时序信号将AL422B内部的写指针置位清零,然后执行数据写操作;
如果没有溢出,则可编程ASIC器件发送写控制时序信号给AL422B,控制AL422B执行数据写操作。
步骤3中的数据读取进一步包括:
可编程ASIC器件判断计数器满足读取条件时,则启动可编程ASIC器件的数据读取程序,进一步判断读地址计数器是否溢出;如果没有溢出,则直接执行数据读操作;如果溢出,则读地址计数器RD_ADD置为0、并将AL422B内部的读指针置位清零,然后执行数据读操作;
所述数据读操作中,读取一个数据则AL422B内部的读指针自动后移1位、可编程ASIC器件的读地址计数器RD_ADD自动加1、批量读取计数器cnt自动加1;
其中,当可编程ASIC器件判断读取的数据量大于规定的批量读取数据量时,则AL422B等待下一批次的数据读取操作;判断读取的数据量小于等于规定的批量读取数据量时,则AL422B继续进行数据读取。
本发明有益效果如下:将视频帧存储器与可编程ASIC器件结合使用,通过程序使视频帧存储器具备普通FIFO的数据缓存功能,实现了高速数据的大容量缓存,减少了数据缓存的硬件成本。
本发明的其他特征和优点将在随后的说明书中阐述,并且,部分的从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
附图仅用于示出具体实施例的目的,而并不认为是对本发明的限制,在整个附图中,相同的参考符号表示相同的部件。
图1为AL422B的引脚排列示意图;
图2为AL422B各引脚的名称及作用;
图3为EPM570型号的CPLD器件的引脚示意图;
图4为数据缓存器的电路原理示意图;
图5为数据缓存方法的流程图。
具体实施方式
下面结合附图来具体描述本发明的优选实施例,其中,附图构成本申请一部分,并与本发明的实施例一起用于阐释本发明的原理。
根据本发明的一个具体实施例,公开了一种数据缓存器(如图4),包括AL422B视频帧存储器和可编程ASIC(Application Specific Integrated Circuits,专用集成电路)器件。其中,可编程ASIC(Application Specific Integrated Circuits,专用集成电路)器件可以是FPGA(现场可编程门阵列)或者CPLD(复杂可编程逻辑器件)。可编程ASIC器件产生AL422B读写操作需要的控制时序信号,并通过对应引脚输出到AL422B。
其中,AL422B是由AverLogic公司推出的存储容量为3Mbits的一种视频帧存储器,存储容量为384k×8bits,存储器结构为先进先出(FIFO),用于执行数据的写操作和读操作,包括写寄存器、数据缓存区、读寄存器、多个I/O引脚(如图1所示),引脚的具体名称和作用如图2所示。
可编程ASIC器件用于计算AL422B中写入和读取的数据量,进一步包括多个I/O引脚(图3以EPM570型号的CPLD器件的引脚进行示意)、写地址计数器WR_ADD、读地址计数器RD_ADD和批量读取计数器cnt。将可编程ASIC器件的I/O引脚(可以任意选择,再通过软件进行引脚分配)与AL422B的引脚进行一对一连接(连接示例如图4)。在Quartus II编程软件中对可编程ASIC器件进行编程,使其能产生AL422B读写操作需要的控制时序信号,并将时序信号通过相应的I/O引脚传输到AL422B。
可编程ASIC器件接收外部的写入启动信号WR_Flag,如果WR_Flag=0,并且写地址计数器没有溢出,则可编程ASIC器件启动数据写入程序,为AL422B提供满足建立时间和保持时间要求的数据写入时序脉冲,数据从输入端DI0~DI7写入AL422B的写寄存器,写入数据满足建立时间和保持时间的要求后,数据从写寄存器保存到数据缓冲区,同时AL422B内部的写地址指针自动后移,可编程ASIC器件的写地址计数器WR_ADD自动进行加1操作。
当可编程ASIC器件的写地址计数器WR_ADD减去读地址计数器RD_ADD的值大于等于规定的批量读取的数据量时,或者RD_ADD大于WR_ADD时,将可编程ASIC器件的读取标志位RD_Flag置为0;此时,启动可编程ASIC器件的数据读取程序,判断读地址计数器有没有溢出,如果没有溢出,则为AL422B提供满足建立时间和保持时间要求的数据读取时序脉冲,数据从AL422B的数据缓存区输出到读寄存器,这样外部器件能通过DO0~DO7引脚来读取AL422B中的数据;同时AL422B内部的读地址指针自动后移、可编程ASIC器件的读地址计数器RD_ADD和cnt自动加1。当读取的数据量(cnt)大于规定的批量读取数据量时,读取标志位RD_Flag置为1,等待下一批次的数据读取操作;当读取的数据量小于等于规定的批量读取数据量时,继续数据读取程序。
上述数据写入和读取期间,可编程ASIC器件的WR_ADD和RD_ADD分别与AL422B内部的写指针和读指针的指示内容相同。当可编程ASIC器件的写地址计数器WR_ADD溢出,即WR_ADD>380k时,将AL422B内部的写指针置位清零,同时令可编程ASIC器件的写地址计数器WR_ADD等于0,下一次写入数据将从缓存区0指针开始存储。当可编程ASIC器件的读地址计数器RD_ADD溢出,即RD_ADD>380k时,将AL422B内部的读指针置位清零,同时令RD_ADD等于0,下一次读取AL422B的数据将从AL422B的数据缓存区0指针开始读取。上述指针置位清零表示让指针指向0。
根据本发明的另一个具体实施例,公开了一种使用上述数据缓存器的数据缓存方法(如图5),视频帧存储器采用AL422B,包括以下步骤:
步骤1.初始化可编程ASIC器件。
其中,将读标识位初始化为1,即RD_Flag=1;
写地址计数器初始化为0,即WR_ADD=0;
读地址计数器初始化为0,即RD_ADD=0;
批量读取计数器初始化为0,即cnt=0。
步骤2.初始化AL422B。
具体地,在上电后,分别给AL422B的/WRST和/RRST引脚各0.1ms的初始化脉冲。
步骤3.可编程ASIC器件根据外部指令控制AL422B进行数据读写;
包括数据写入和数据读取这两个过程,这两个过程独立,不是并发也不是串行,当两个过程分别达到自己的启动条件,就会开始执行。
步骤3.1.数据写入;
步骤3.1.1.首先,可编程ASIC器件判断是否收到写入启动信号,判断WR_Flag是否等于0,如果WR_Flag≠0,则可编程ASIC器件持续为AL422B提供1M~5M范围的时钟脉冲信号,用于为AL422B提供刷新脉冲,该时钟脉冲信号由可编程ASIC器件的时钟信号分频得到;然后重新判断WR_Flag是否等于0;如果WR_Flag=0,则进入步骤3.1.2。
步骤3.1.2.可编程ASIC器件判断其中的写地址计数器是否溢出;即判断写地址计数器WR_ADD>380k是否成立,如果WR_ADD>380k,则将写地址计数器WR_ADD重新置为0、并通过控制时序信号将AL422B内部的写指针置位清零(写指针指向0),然后执行数据写操作;如果WR_ADD≤380k,则直接执行数据写操作;
步骤3.1.3.经过上述两步判断后,可编程ASIC器件发送写控制时序信号给AL422B,由AL422B执行数据写操作。具体地,当AL422B的/WE引脚为低电平时,在WCK信号的上升沿,数据通过DI7~DI0引脚写入到AL422B的写寄存器,写入的数据满足AL422B读操作的建立时间和保持时间要求后,数据从写寄存器保存到数据缓冲区,同时AL422B内部的写指针自动后移一位、可编程ASIC器件的写地址计数器WR_ADD也自动加1。当/WE引脚为高电平时,写操作被禁止,写地址指针停在当前位置上;当/WE再次变为低电平时,写地址指针从当前位置开始。
步骤3.2.数据读取。
步骤3.2.1.首先,可编程ASIC器件判断是否达到数据读取条件,即判断可编程ASIC器件的写地址计数器WR_ADD减去读地址计数器RD_ADD的差值与规定的批量读取数据量的大小,或者读地址计数器RD_ADD与WR_ADD的大小。当达到下述两个条件之一,即WR_ADD与RD_ADD的差值大于等于规定的批量读取数据量、或者RD_ADD大于WR_ADD,则将读取标志RD_Flag置为0。可编程ASIC器件可以向外部读取器件输出带有RD_Flag=0信息的读取启动信号。所述RD_Flag是标志位,用于通知外部的读取器件,数据已经缓存好了,可以进行数据读取操作了。当上述两个条件均不成立时,则重新执行上述判断步骤。其中,规定的批量读取数据量在实施例中可以取值20k,但本发明并不限于这个取值。
步骤3.2.2.然后,可编程ASIC器件判断读地址计数器是否溢出。如果读地址计数器RD_ADD≤380k,则直接执行数据读操作;如果读地址计数器RD_ADD>380k,则读地址计数器RD_ADD置为0、并通过控制时序信号将AL422B内部的读指针置位清零(读指针指向0),然后执行数据读操作。
步骤3.2.3.经过上述两步判断后,可编程ASIC器件发送读控制时序信号给AL422B,AL422B进行数据读操作,将数据从AL422B的数据缓存区输出到读寄存器并进一步输出到外部读取器件;同时AL422B内部的读指针自动后移1位、可编程ASIC器件的读地址计数器RD_ADD自动加1、批量读取计数器cnt也自动加1。其中,按照AL422B的读操作的建立时间和保持时间序要求,进行数据读取操作。当AL422B的/RE和/OE引脚均为低电平时,在RCK信号的上升沿,数据由DO0~DO7输出到外部读取器件。
步骤3.2.4.由可编程ASIC器件判断读取的数据量大于规定的批量读取数据量时,则发送控制时序信号使AL422B等待下一批次的数据读取操作;判断读取的数据量小于等于规定的批量读取数据量时,则发送控制时序信号使AL422B继续进行数据读取。上述等待过程即是等待步骤3.2.1中达到数据读取条件的过程。
具体地,可编程ASIC器件判断cnt≤20K是否成立,如果不成立,则将读取标志RD_Flag置为1,将携带RD_Flag的控制时序信号发送给AL422B,然后使AL422B回到步骤3.2.1判断数据读取条件,等待下一批次的读取操作;如果成立,则发送控制时序信号,使得AL422B回到步骤3.2.2判断读地址计数器是否溢出,进而继续进行数据读取。
本发明并不局限于AL422B这一种视频帧存储器,还可以选用AL440B、AL460A、AL462A等采用先进先出结构的视频帧存储器(Video Frame and Line FIFOs)。
综上所述,本发明实施例提供了一种数据缓存装置和方法,将视频帧存储器与可编程ASIC器件结合使用,通过程序使视频帧存储器具备普通FIFO的数据缓存功能,实现了高速数据的大容量缓存,减少了数据缓存的硬件成本。
本领域技术人员可以理解,实现上述实施例方法的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读存储介质中。其中,所述计算机可读存储介质为磁盘、光盘、只读存储记忆体或随机存储记忆体等。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。

Claims (3)

1.一种数据缓存器,其特征在于,包括AL422B和可编程ASIC器件;
可编程ASIC器件,包括多个I/O引脚、写地址计数器WR_ADD、读地址计数器RD_ADD和批量读取计数器cnt,用于计算AL422B中写入和读取的数据量,产生AL422B读写操作需要的控制时序信号,并输出到AL422B;
AL422B,包括写寄存器、数据缓存区、读寄存器、多个I/O引脚,用于根据可编程ASIC器件输出的控制时序信号进行读、写操作;
所述数据缓存器执行写入操作时,可编程ASIC器件接收外部的写入启动信号WR_Flag,如果WR_Flag≠0,则可编程ASIC器件持续为AL422B提供1M~5M范围的时钟脉冲信号,用于为AL422B提供刷新脉冲,然后重新判断WR_Flag是否等于0;如果WR_Flag=0,写地址计数器溢出,则将写地址计数器WR_ADD重新置为0,并通过控制时序信号将AL422B内部的写指针置位清零,然后执行数据写操作;如果WR_Flag=0,并且,写地址计数器没有溢出,则可编程ASIC器件启动数据写入程序,为AL422B提供满足建立时间和保持时间要求的数据写入时序脉冲,数据从输入端DI0~DI7写入AL422B的写寄存器,写入数据满足建立时间和保持时间的要求后,数据从写寄存器保存到数据缓冲区,同时AL422B内部的写地址指针自动后移,可编程ASIC器件的写地址计数器WR_ADD自动进行加1操作;
所述数据缓存器执行读取操作时,首先判断可编程ASIC器件的写地址计数器WR_ADD减去读地址计数器RD_ADD的值是否大于等于规定的批量读取的数据量时,或者RD_ADD大于WR_ADD,如果是,将可编程ASIC器件的读取标志位RD_Flag置为0;此时,启动可编程ASIC器件的数据读取程序,判断读地址计数器有没有溢出,如果溢出,则将读地址计数器RD_ADD置为0、并通过控制时序信号将AL422B内部的读指针置位清零,然后执行数据读操作;如果没有溢出,则为AL422B提供满足建立时间和保持时间要求的数据读取时序脉冲,数据从AL422B的数据缓存区输出到读寄存器,这样外部器件能通过DO0~DO7引脚来读取AL422B中的数据;同时AL422B内部的读地址指针自动后移、可编程ASIC器件的读地址计数器RD_ADD和cnt自动加1;当读取的数据量大于规定的批量读取数据量时,读取标志位RD_Flag置为1,等待下一批次的数据读取操作;当读取的数据量小于等于规定的批量读取数据量时,继续数据读取程序;
上述数据写入和读取期间,可编程ASIC器件的WR_ADD和RD_ADD分别与AL422B内部的写指针和读指针的指示内容相同;当可编程ASIC器件的写地址计数器WR_ADD溢出,将AL422B内部的写指针置位清零,同时令可编程ASIC器件的写地址计数器WR_ADD等于0,下一次写入数据将从缓存区0指针开始存储;当可编程ASIC器件的读地址计数器RD_ADD溢出,将AL422B内部的读指针置位清零,同时令RD_ADD等于0,下一次读取AL422B的数据将从AL422B的数据缓存区0指针开始读取。
2.根据权利要求1所述的数据缓存器,其特征在于,可编程ASIC器件是FPGA或者CPLD。
3.一种使用权利要求1所述的数据缓存器的数据缓存方法,其特征在于,包括以下步骤:
步骤1.初始化可编程ASIC器件;
步骤2.初始化AL422B;
步骤3.可编程ASIC器件根据外部指令控制AL422B进行数据读写,包括数据写入和数据读取操作;
所述步骤3中,执行数据写入操作时,可编程ASIC器件接收外部的写入启动信号WR_Flag,如果WR_Flag≠0,则可编程ASIC器件持续为AL422B提供1M~5M范围的时钟脉冲信号,用于为AL422B提供刷新脉冲,然后重新判断WR_Flag是否等于0;如果WR_Flag=0,写地址计数器溢出,则将写地址计数器WR_ADD重新置为0,并通过控制时序信号将AL422B内部的写指针置位清零,然后执行数据写操作;如果WR_Flag=0,并且,写地址计数器没有溢出,则可编程ASIC器件启动数据写入程序,为AL422B提供满足建立时间和保持时间要求的数据写入时序脉冲,数据从输入端DI0~DI7写入AL422B的写寄存器,写入数据满足建立时间和保持时间的要求后,数据从写寄存器保存到数据缓冲区,同时AL422B内部的写地址指针自动后移,可编程ASIC器件的写地址计数器WR_ADD自动进行加1操作;
所述步骤S3中,执行数据读取操作时,首先判断可编程ASIC器件的写地址计数器WR_ADD减去读地址计数器RD_ADD的值是否大于等于规定的批量读取的数据量时,或者RD_ADD大于WR_ADD,如果是,将可编程ASIC器件的读取标志位RD_Flag置为0;此时,启动可编程ASIC器件的数据读取程序,判断读地址计数器有没有溢出,如果溢出,则将读地址计数器RD_ADD置为0、并通过控制时序信号将AL422B内部的读指针置位清零,然后执行数据读操作;如果没有溢出,则为AL422B提供满足建立时间和保持时间要求的数据读取时序脉冲,数据从AL422B的数据缓存区输出到读寄存器,这样外部器件能通过DO0~DO7引脚来读取AL422B中的数据;同时AL422B内部的读地址指针自动后移、可编程ASIC器件的读地址计数器RD_ADD和cnt自动加1;当读取的数据量大于规定的批量读取数据量时,读取标志位RD_Flag置为1,等待下一批次的数据读取操作;当读取的数据量小于等于规定的批量读取数据量时,继续数据读取程序;
上述数据写入和读取期间,可编程ASIC器件的WR_ADD和RD_ADD分别与AL422B内部的写指针和读指针的指示内容相同;当可编程ASIC器件的写地址计数器WR_ADD溢出,将AL422B内部的写指针置位清零,同时令可编程ASIC器件的写地址计数器WR_ADD等于0,下一次写入数据将从缓存区0指针开始存储;当可编程ASIC器件的读地址计数器RD_ADD溢出,将AL422B内部的读指针置位清零,同时令RD_ADD等于0,下一次读取AL422B的数据将从AL422B的数据缓存区0指针开始读取。
CN201610830307.3A 2016-09-18 2016-09-18 一种数据缓存器和数据缓存方法 Active CN106445842B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610830307.3A CN106445842B (zh) 2016-09-18 2016-09-18 一种数据缓存器和数据缓存方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610830307.3A CN106445842B (zh) 2016-09-18 2016-09-18 一种数据缓存器和数据缓存方法

Publications (2)

Publication Number Publication Date
CN106445842A CN106445842A (zh) 2017-02-22
CN106445842B true CN106445842B (zh) 2019-09-10

Family

ID=58168548

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610830307.3A Active CN106445842B (zh) 2016-09-18 2016-09-18 一种数据缓存器和数据缓存方法

Country Status (1)

Country Link
CN (1) CN106445842B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110704363A (zh) * 2019-10-11 2020-01-17 扬州立春智能科技有限公司 一种数据缓存器和数据缓存方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010002481A1 (en) * 1997-03-21 2001-05-31 Sakae Itoh Data access unit and method therefor

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1731529A (zh) * 2005-07-13 2006-02-08 北京中星微电子有限公司 先入先出数据缓存的方法及全满空间访问先入先出存储器
CN100346289C (zh) * 2006-04-12 2007-10-31 华为技术有限公司 一种先入先出存储器及其输出空满标志的方法
CN101566941B (zh) * 2009-06-03 2013-08-07 北京中星微电子有限公司 一种基于静态存储器的fifo存储单元

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010002481A1 (en) * 1997-03-21 2001-05-31 Sakae Itoh Data access unit and method therefor

Also Published As

Publication number Publication date
CN106445842A (zh) 2017-02-22

Similar Documents

Publication Publication Date Title
CN105117360B (zh) 基于fpga的接口信号重映射方法
EP3105761B1 (en) Memory physical layer interface logic for generating dynamic random access memory (dram) commands with programmable delays
US20200159681A1 (en) Information processor with tightly coupled smart memory unit
CN103744009A (zh) 一种串行传输芯片测试方法、***及集成芯片
CN108197699B (zh) 针对卷积神经网络硬件加速器的调试模块
CN101436171B (zh) 模块化通信控制***
CN209842608U (zh) 一种基于fpga fifo模块的ddr3存储器控制
CN106547636A (zh) 除错***与方法
CN103413569A (zh) 一读且一写静态随机存储器
CN109656856A (zh) 利用fpga实现非复用总线与复用总线互联装置及方法
WO2018148918A1 (zh) 存储设备、芯片及存储设备的控制方法
CN106445842B (zh) 一种数据缓存器和数据缓存方法
CN104598404B (zh) 计算设备扩展方法和装置、以及可扩展的计算***
CN104035539B (zh) 指示移动设备中的临界电池状态
CN111581132B (zh) 一种基于fpga的可扩展的多端口ddr3控制器
CN105608028A (zh) 基于emif接口和双口ram实现dsp与fpga高速通信方法
CN108897696B (zh) 一种基于DDRx存储器的大容量FIFO控制器
CN101998135A (zh) 移动电视信号采集及播放***、控制方法
CN113900975B (zh) 一种同步fifo
CN112100098B (zh) Ddr控制***及ddr存储***
CN106708457B (zh) 用于dmd动态选区的fpga处理模块及其方法
CN104407367B (zh) 提高卫星导航终端接收机基带信号处理能力的装置与方法
CN206282270U (zh) 一种处理器
CN212160702U (zh) 一种用于人脸识别的数据采集装置
CN103853872A (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
GR01 Patent grant
GR01 Patent grant