CN104239232A - 一种基于fpga内dpram的乒乓缓存操作结构 - Google Patents

一种基于fpga内dpram的乒乓缓存操作结构 Download PDF

Info

Publication number
CN104239232A
CN104239232A CN201410459309.7A CN201410459309A CN104239232A CN 104239232 A CN104239232 A CN 104239232A CN 201410459309 A CN201410459309 A CN 201410459309A CN 104239232 A CN104239232 A CN 104239232A
Authority
CN
China
Prior art keywords
address
signal
write
read
input
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
CN201410459309.7A
Other languages
English (en)
Other versions
CN104239232B (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 Institute of Space Research Mechanical and Electricity
Original Assignee
Beijing Institute of Space Research Mechanical and Electricity
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 Institute of Space Research Mechanical and Electricity filed Critical Beijing Institute of Space Research Mechanical and Electricity
Priority to CN201410459309.7A priority Critical patent/CN104239232B/zh
Publication of CN104239232A publication Critical patent/CN104239232A/zh
Application granted granted Critical
Publication of CN104239232B publication Critical patent/CN104239232B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)
  • Static Random-Access Memory (AREA)

Abstract

本发明为一种基于FPGA内DPRAM模块的乒乓缓存操作结构,用于接收一帧数据并读一帧完整的数据,实现一帧数据的缓存;包括:写操作控制模块、读操作控制模块、DPRAM模块,本发明通过判断DPRAM的写地址最高位,将DPRAM的地址空间分为低地址空间和高地址空间,在一个DPRAM内部完成乒乓缓存操作;在有外部输入的读控制信号的情况下,用写地址最高位做读地址的判断信号;在无外部输入的读控制信号的情况下,自动读缓存数据。本发明避免了传统的乒乓缓存操作产生主份备份两个DPRAM模块,产生两组DPRAM模块的写控制逻辑、读控制逻辑,耗用FPGA资源较大的缺点。

Description

一种基于FPGA内DPRAM的乒乓缓存操作结构
技术领域
本发明涉及一种基于FPGA内DPRAM的乒乓缓存操作结构,属于信号处理技术领域。
背景技术
FPGA用于数据处理,其中乒乓缓存操作是最基本的操作。BlockRAM是FPGA的基本存储单元,DPRAM模块是在BlockRAM的基础上增加控制逻辑产生的,由FPGA设计工具产生,人工不可干预,乒乓缓存操作是在DPRAM模块的基础上增加读控制逻辑和写控制逻辑产生的。DPRAM乒乓缓存操作由BlockRAM单元、BlockRAM控制逻辑、DPRAM读写控制逻辑组成。
目前,如图5和图6所示,传统的基于FPGA内DPRAM的乒乓缓存操作普遍使用主份和备份两个DPRAM模块,用于主备乒乓操作,这样做存在明显的不足;
1、因为产生主份DPRAM模块、备份DPRAM模块,所以会产生2组BlockRAM控制逻辑,导致BlockRAM控制逻辑资源使用量增加;
2、FPGA内BlockRAM的地址空间一般为1024(18bit*1K),
当一帧缓存数据较少(小于512)时,一帧数据也要使用一个BlockRAM单元存储,这样乒乓缓存操作产生主份DPRAM,备份DPRAM,产生2个BlockRAM单元,导致BlockRAM单元使用量增加1倍;
当一帧缓存数据较大(大于2048)时,一帧数据需要使用2个及以上的BlockRAM单元存储,这样乒乓缓存操作产生主份DPRAM,备份DPRAM,产生4个及以上的BlockRAM单元,不利于FPGA设计工具使用BlockRAM块拼接优化技术。
3、乒乓缓存操作包含写控制逻辑、读控制逻辑,如果产生主份写控制逻辑,备份写控制逻辑、主份读控制逻辑、备份读控制逻辑,以及主备输出数据选择电路,导致DPRAM读写控制逻辑资源使用量大幅增加。三种DPRAM乒乓缓存操作所使用的FPGA逻辑资源使用量对比图如图7所示,在FPGA时序性能相同的情况下,本发明相对于传统的DPRAM乒乓缓存操作降低逻辑资源达50%。
发明内容
本发明解决的技术问题是:克服现有技术的不足,提供了一种基于FPGA内DPRAM的乒乓缓存操作结构,本发明在一个DPRAM内完成乒乓缓存操作,降低了BlockRAM单元的使用量、降低BlockRAM控制逻辑的FPGA资源使用量、降低DPRAM读写控制逻辑的FPGA资源使用量。
本发明的技术解决方案是:
一种基于FPGA内DPRAM的乒乓缓存操作结构,包括:写操作控制模块、读操作控制模块、DPRAM模块;本发明工作在乒乓缓存操作的有效写数据带宽小于等于有效读数据带宽的情况下。
写操作控制模块包括写数据寄存器组、写使能寄存器、写地址计数器;
写数据寄存器组对外部输入的缓存数据信号寄存一个随路时钟周期,产生写数据信号,并输入到DPRAM模块;
写使能寄存器对外部输入的缓存数据有效标志位信号寄存一个随路时钟周期,产生写使能信号,并输入到写地址计数器、DPRAM模块;
在有外部输入的写控制信号的情况下:
当外部输入的写控制信号有效时,写地址计数器最高位取反,写地址计数器除最高位以外的地址位赋值‘0’,产生写地址信号,并输入到DPRAM模块,同时将写地址最高位信号输入到读地址计数器;
当外部输入的写控制信号无效、写使能有效、以及写地址计数器除最高位以外的地址位等于阈值时,写地址计数器不变,产生写地址信号,并输入到DPRAM模块,同时将写地址最高位信号输入到读地址计数器;
当外部输入的写控制信号无效、写使能有效、以及写地址计数器除最高位以外的地址位不等于阈值时,写地址计数器加1,产生写地址信号,并输入到DPRAM模块,同时将写地址最高位信号输入到读地址计数器;
当外部输入的写控制信号无效,且写使能无效时,写地址计数器不变,产生写地址信号,并输入到DPRAM模块,同时将写地址最高位信号输入到读地址计数器;
当外部输入的写控制信号无效、写使能有效、以及写地址计数器除最高位以外的地址位等于阈值时,第一帧缓存完成信号变为有效,产生第一帧缓存完成信号,并输入到读地址计数器;
在无外部输入的写控制信号的情况下:
当写使能信号有效,且写地址计数器除最高位以外的地址位等于阈值时,写地址计数器最高位取反,写地址计数器除最高位以外的地址位赋值‘0’,产生写地址信号,并输入到DPRAM模块,同时将写地址最高位信号输入到读地址计数器;
当写使能信号有效,且写地址计数器除最高位以外的地址位不等于阈值时,写地址计数器加1,产生写地址信号,并输入到DPRAM模块,同时将写地址最高位信号输入到读地址计数器;
当写使能信号无效时,写地址计数器不变,产生写地址信号,并输入到DPRAM模块,同时将写地址最高位信号输入到读地址计数器;
当写使能信号有效,且写地址计数器除最高位以外的地址位等于阈值时,第一帧缓存完成信号变为有效,第一帧缓存完成信号变为有效,产生第一帧缓存完成信号,并输入到读地址计数器;
读操作控制模块采用读地址计数器;
在有外部输入的读控制信号的情况下:
当外部输入的读控制信号有效、第一帧缓存完成信号有效、以及写地址最高位指向主份缓存空间时,读地址计数器赋值为备份缓存空间的初始地址,产生读地址信号,并输入到DPRAM模块;
当外部输入的读控制信号有效、第一帧缓存完成信号有效、以及写地址最高位指向备份缓存空间时,读地址计数器赋值为主份缓存空间的初始地址,产生读地址信号,并输入到DPRAM模块;
当外部输入的读控制信号无效,且读地址计数器除最高位以外的地址位等于阈值时,读地址计数器不变,产生读地址信号,并输入到DPRAM模块;
当外部输入的读控制信号无效,且读地址计数器除最高位以外的地址位不等于阈值时,读地址计数器加1,产生读地址信号,并输入到DPRAM模块;
当外部输入的读控制信号有效,且第一帧缓存完成信号有效时,读数据有效标志位信号变为有效,产生读数据有效标志位信号,并输出到外部;
当外部输入的读控制信号无效,且读地址计数器除最高位以外的地址位等于阈值时,读数据有效标志位信号变为无效,产生读数据有效标志位信号,并输出到外部;
在无外部输入的读控制信号的情况下:
当第一帧缓存完成信号有效,且写地址最高位的指向由主份缓存空间变为备份缓存空间时,读地址计数器赋值主份缓存空间的初始地址,产生读地址信号,并输入到DPRAM模块;
当第一帧缓存完成信号有效,且写地址最高位的指向由备份缓存空间变为主份缓存空间时,读地址计数器赋值备份缓存空间的初始地址,产生读地址信号,并输入到DPRAM模块;
当读地址计数器除最高位以外的地址位等于阈值时,读地址计数器不变,产生读地址信号,并输入到DPRAM模块;
当读地址计数器除最高位以外的地址位不等于阈值时,读地址计数器加1,产生读地址信号,并输入到DPRAM模块;
当第一帧缓存完成信号有效,且写地址最高位的指向由主份缓存空间变为备份缓存空间时,读数据有效标志位信号变为有效,产生读数据有效标志位信号,并输出到外部;
当第一帧缓存完成信号有效,且写地址最高位的指向由备份缓存空间变为主份缓存空间时,读数据有效标志位信号变为有效,产生读数据有效标志位信号,并输出到外部;
当读地址计数器除最高位以外的地址位等于阈值时,读数据有效标志位信号变为无效,产生读数据有效标志位信号,并输出到外部;
所述主份缓存空间和备份缓存空间是通过写地址计数器输出的写地址最高位进行区分的,主份缓存空间和备份缓存空间均位于同一个DPRAM内;
当写地址最高位为‘0’时,表示写操作在主份缓存空间;当写地址最高位为‘1’时,表示写操作在备份缓存空间;
主份缓存空间的初始地址为全‘0’,备份缓存空间的初始地址为“100…0”;主份缓存空间的地址和备份缓存空间的地址表示可以相反;
当有外部输入的写控制信号时,由外部输入的写控制信号控制主份缓存空间和备份缓存空间的切换;当无外部输入的写控制信号时,由写地址最高位信号控制主份缓存空间和备份缓存空间的切换;
所述读操作控制模块输出到DPRAM模块的读地址信号到DPRAM模块输出读地址存储的数据之间有1个读时钟周期或2个读时钟周期或3个读时钟周期的延迟,此时对读数据有效标志位信号进行相应的延迟寄存。
本发明还包括读时钟同步寄存器;写时钟域与读时钟域可以相同也可以不同;当写操作事件的时钟域与读操作事件的时钟域不同时,读时钟同步寄存器对写地址最高位信号至少寄存两次,产生读时钟同步的写地址最高位信号,并输入到读地址计数器;第一帧缓存完成信号用读时钟同步寄存器至少寄存两次,产生读时钟同步的第一帧缓存完成信号,并输入到读地址计数器。
本发明与现有技术相比的优点在于:
(1)本发明在一个DPRAM内完成乒乓缓存操作,降低DPRAM模块产生时,BlockRAM的控制逻辑资源使用量,提高了FPGA的工作效率,节省了成本,实用性大大增强。
(2)本发明在一个DPRAM内完成乒乓缓存操作,当一帧缓存数据小于512时,BlockRAM单元使用量降低一倍;当一帧缓存数据大于2048时,方便FPGA设计工具使用BlockRAM块拼接优化技术,从而降低BlockRAM单元的使用量,FPGA内紧张的BlockRAM存储资源利用率有质的提高。
(3)本发明采用在一个DPRAM内完成乒乓缓存操作,降低DPRAM外部的写控制逻辑、读控制逻辑、主备输出数据选择逻辑等DPRAM读写控制逻辑的FPGA资源使用量,提高了FPGA的工作效率,节省了成本,实用性大大增强。
附图说明
图1为本发明模块示意图;
图2为本发明读时钟域和写时钟域相同时的结构示意图;
图3为本发明读时钟域和写时钟域不同时的结构示意图;
图4为本发明实现的BlockRAM块优化技术示意图;
图5为传统DPRAM乒乓缓存操作结构示意图;
图6为传统DPRAM乒乓缓存操作结构示意图;
图7为三种DPRAM乒乓缓存操作的效果对比图。
具体实施方式
下面就结合附图对本发明做进一步介绍。
如图1、2所示,本发明一种基于FPGA内DPRAM的乒乓缓存操作结构,包括:写操作控制模块、读操作控制模块、DPRAM模块、读时钟同步寄存器;本发明工作一般工作在乒乓缓存操作的有效写数据带宽小于等于有效读数据带宽的情况下。
写数据寄存器组对外部输入的缓存数据信号寄存一个随路时钟周期,产生写数据信号,并输入到DPRAM模块;
写使能寄存器对外部输入的缓存数据有效标志位信号寄存一个随路时钟周期,产生写使能信号,并输入到写地址计数器、DPRAM模块;
写操作控制模块包括写数据寄存器组、写使能寄存器、写地址计数器;
在有外部输入的写控制信号的情况下:
当外部输入的写控制信号有效时,写地址计数器最高位取反,写地址计数器除最高位以外的地址位赋值‘0’,产生写地址信号,并输入到DPRAM模块,同时将写地址最高位信号输入到读地址计数器;
当外部输入的写控制信号无效、写使能有效,以及写地址计数器除最高位以外的地址位等于阈值时,写地址计数器不变,产生写地址信号,并输入到DPRAM模块,同时将写地址最高位信号输入到读地址计数器;
当外部输入的写控制信号无效、写使能有效、以及写地址计数器除最高位以外的地址位不等于阈值时,写地址计数器加1,产生写地址信号,并输入到DPRAM模块,同时将写地址最高位信号输入到读地址计数器;
当外部输入的写控制信号无效,且写使能无效时,写地址计数器不变,产生写地址信号,并输入到DPRAM模块,同时将写地址最高位信号输入到读地址计数器;
当外部输入的写控制信号无效、写使能有效、以及写地址计数器除最高位以外的地址位等于阈值时,第一帧缓存完成信号变为有效,产生第一帧缓存完成信号,并输入到读地址计数器;
在无外部输入的写控制信号的情况下:
当写使能信号有效,且写地址计数器除最高位以外的地址位等于阈值时,写地址计数器最高位取反,写地址计数器除最高位以外的地址位赋值‘0’,产生写地址信号,并输入到DPRAM模块,同时将写地址最高位信号输入到读地址计数器;
当写使能信号有效,且写地址计数器除最高位以外的地址位不等于阈值时,写地址计数器加1,产生写地址信号,并输入到DPRAM模块,同时将写地址最高位信号输入到读地址计数器;
当写使能信号无效时,写地址计数器不变,产生写地址信号,并输入到DPRAM模块,同时将写地址最高位信号输入到读地址计数器;
当写使能信号有效,且写地址计数器除最高位以外的地址位等于阈值时,第一帧缓存完成信号变为有效,第一帧缓存完成信号变为有效,产生第一帧缓存完成信号,并输入到读地址计数器;
读操作控制模块采用读地址计数器;
在有外部输入的读控制信号的情况下:
当外部输入的读控制信号有效、第一帧缓存完成信号有效、以及写地址最高位指向主份缓存空间时,读地址计数器赋值为备份缓存空间的初始地址,产生读地址信号,并输入到DPRAM模块;
当外部输入的读控制信号有效、第一帧缓存完成信号有效,以及写地址最高位指向备份缓存空间时,读地址计数器赋值为主份缓存空间的初始地址,产生读地址信号,并输入到DPRAM模块;
当外部输入的读控制信号无效,且读地址计数器除最高位以外的地址位等于阈值时,读地址计数器不变,产生读地址信号,并输入到DPRAM模块;
当外部输入的读控制信号无效,且读地址计数器除最高位以外的地址位不等于阈值时,读地址计数器加1,产生读地址信号,并输入到DPRAM模块;
当外部输入的读控制信号有效,且第一帧缓存完成信号有效时,读数据有效标志位信号变为有效,产生读数据有效标志位信号,并输出到外部;
当外部输入的读控制信号无效,且读地址计数器除最高位以外的地址位等于阈值时,读数据有效标志位信号变为无效,产生读数据有效标志位信号,并输出到外部;
在无外部输入的读控制信号的情况下:
当第一帧缓存完成信号有效,且写地址最高位的指向由主份缓存空间变为备份缓存空间时,读地址计数器赋值主份缓存空间的初始地址,产生读地址信号,并输入到DPRAM模块;
当第一帧缓存完成信号有效,且写地址最高位的指向由备份缓存空间变为主份缓存空间时,读地址计数器赋值备份缓存空间的初始地址,产生读地址信号,并输入到DPRAM模块;
当读地址计数器除最高位以外的地址位等于阈值时,读地址计数器不变,产生读地址信号,并输入到DPRAM模块;
当读地址计数器除最高位以外的地址位不等于阈值时,读地址计数器加1,产生读地址信号,并输入到DPRAM模块;
当第一帧缓存完成信号有效,且写地址最高位的指向由主份缓存空间变为备份缓存空间时,读数据有效标志位信号变为有效,产生读数据有效标志位信号,并输出到外部;
当第一帧缓存完成信号有效,且写地址最高位的指向由备份缓存空间变为主份缓存空间时,读数据有效标志位信号变为有效,产生读数据有效标志位信号,并输出到外部;
当读地址计数器除最高位以外的地址位等于阈值时,读数据有效标志位信号变为无效,产生读数据有效标志位信号,并输出到外部;
主份缓存空间和备份缓存空间
主份缓存空间和备份缓存空间是通过写地址计数器输出的写地址最高位进行区分的,主份缓存空间和备份缓存空间均位于同一个DPRAM内;
当写地址最高位为‘0’时,表示写操作在主份缓存空间;当写地址最高位为‘1’时,表示写操作在备份缓存空间;
主份缓存空间的初始地址为全‘0’,备份缓存空间的初始地址为“100…0”;主份缓存空间的地址和备份缓存空间的地址表示可以相反;
当有外部输入的写控制信号时,由外部输入的写控制信号控制主份缓存空间和备份缓存空间的切换;当无外部输入的写控制信号时,由写地址最高位信号控制主份缓存空间和备份缓存空间的切换;
读操作控制模块输出到DPRAM模块的读地址信号到DPRAM模块输出读地址存储的数据之间有1个读时钟周期或2个读时钟周期或3个读时钟周期的延迟,此时对读数据有效标志位信号进行相应的延迟寄存。
如图3所示,本结构还在于包括:读时钟同步寄存器;写时钟域与读时钟域可以相同也可以不同。当写操作事件的时钟域与读操作事件的时钟域不同时,读时钟同步寄存器对写地址最高位信号至少寄存两次,产生读时钟同步的写地址最高位信号,并输入到读地址计数器;第一帧缓存完成信号用读时钟同步寄存器至少寄存两次,产生读时钟同步的第一帧缓存完成信号,并输入到读地址计数器。写操作事件,工作在写时钟域,由写时钟的边沿驱动;读操作事件,工作在读时钟域,由读时钟的边沿驱动。
如图4所示,本发明在一个DPRAM内完成乒乓缓存操作,当一帧缓存数据小于512时,BlockRAM单元使用量降低一倍;当一帧缓存数据大于2048时,方便FPGA设计工具使用BlockRAM块拼接优化技术,从而降低BlockRAM单元的使用量,FPGA内紧张的BlockRAM存储资源利用率有质的提高。
本发明未详细描述内容为本领域技术人员公知技术。

Claims (4)

1.一种基于FPGA内DPRAM的乒乓缓存操作结构,其特征在于包括:写操作控制模块、读操作控制模块、DPRAM模块; 
写操作控制模块包括写数据寄存器组、写使能寄存器、写地址计数器; 
写数据寄存器组对外部输入的缓存数据信号寄存一个随路时钟周期,产生写数据信号,并输入到DPRAM模块; 
写使能寄存器对外部输入的缓存数据有效标志位信号寄存一个随路时钟周期,产生写使能信号,并输入到写地址计数器、DPRAM模块; 
在有外部输入的写控制信号的情况下: 
当外部输入的写控制信号有效时,写地址计数器最高位取反,写地址计数器除最高位以外的地址位赋值‘0’,产生写地址信号,并输入到DPRAM模块,同时将写地址最高位信号输入到读地址计数器; 
当外部输入的写控制信号无效、写使能有效、以及写地址计数器除最高位以外的地址位等于阈值时,写地址计数器不变,产生写地址信号,并输入到DPRAM模块,同时将写地址最高位信号输入到读地址计数器; 
当外部输入的写控制信号无效、写使能有效、以及写地址计数器除最高位以外的地址位不等于阈值时,写地址计数器加1,产生写地址信号,并输入到DPRAM模块,同时将写地址最高位信号输入到读地址计数器; 
当外部输入的写控制信号无效,且写使能无效时,写地址计数器不变,产生写地址信号,并输入到DPRAM模块,同时将写地址最高位信号输入到读地址计数器; 
当外部输入的写控制信号无效、写使能有效、以及写地址计数器除最高位以外的地址位等于阈值时,第一帧缓存完成信号变为有效,产生第一帧缓存完成信号,并输入到读地址计数器; 
在无外部输入的写控制信号的情况下: 
当写使能信号有效,且写地址计数器除最高位以外的地址位等于阈值时, 写地址计数器最高位取反,写地址计数器除最高位以外的地址位赋值‘0’,产生写地址信号,并输入到DPRAM模块,同时将写地址最高位信号输入到读地址计数器; 
当写使能信号有效,且写地址计数器除最高位以外的地址位不等于阈值时,写地址计数器加1,产生写地址信号,并输入到DPRAM模块,同时将写地址最高位信号输入到读地址计数器; 
当写使能信号无效时,写地址计数器不变,产生写地址信号,并输入到DPRAM模块,同时将写地址最高位信号输入到读地址计数器; 
当写使能信号有效,且写地址计数器除最高位以外的地址位等于阈值时,第一帧缓存完成信号变为有效,第一帧缓存完成信号变为有效,产生第一帧缓存完成信号,并输入到读地址计数器; 
读操作控制模块采用读地址计数器; 
在有外部输入的读控制信号的情况下: 
当外部输入的读控制信号有效、第一帧缓存完成信号有效、以及写地址最高位指向主份缓存空间时,读地址计数器赋值为备份缓存空间的初始地址,产生读地址信号,并输入到DPRAM模块; 
当外部输入的读控制信号有效、第一帧缓存完成信号有效、以及写地址最高位指向备份缓存空间时,读地址计数器赋值为主份缓存空间的初始地址,产生读地址信号,并输入到DPRAM模块; 
当外部输入的读控制信号无效,且读地址计数器除最高位以外的地址位等于阈值时,读地址计数器不变,产生读地址信号,并输入到DPRAM模块; 
当外部输入的读控制信号无效,且读地址计数器除最高位以外的地址位不等于阈值时,读地址计数器加1,产生读地址信号,并输入到DPRAM模块; 
当外部输入的读控制信号有效,且第一帧缓存完成信号有效时,读数据有效标志位信号变为有效,产生读数据有效标志位信号,并输出到外部; 
当外部输入的读控制信号无效,且读地址计数器除最高位以外的地址位等 于阈值时,读数据有效标志位信号变为无效,产生读数据有效标志位信号,并输出到外部; 
在无外部输入的读控制信号的情况下: 
当第一帧缓存完成信号有效,且写地址最高位的指向由主份缓存空间变为备份缓存空间时,读地址计数器赋值主份缓存空间的初始地址,产生读地址信号,并输入到DPRAM模块; 
当第一帧缓存完成信号有效,且写地址最高位的指向由备份缓存空间变为主份缓存空间时,读地址计数器赋值备份缓存空间的初始地址,产生读地址信号,并输入到DPRAM模块; 
当读地址计数器除最高位以外的地址位等于阈值时,读地址计数器不变,产生读地址信号,并输入到DPRAM模块; 
当读地址计数器除最高位以外的地址位不等于阈值时,读地址计数器加1,产生读地址信号,并输入到DPRAM模块; 
当第一帧缓存完成信号有效,且写地址最高位的指向由主份缓存空间变为备份缓存空间时,读数据有效标志位信号变为有效,产生读数据有效标志位信号,并输出到外部; 
当第一帧缓存完成信号有效,且写地址最高位的指向由备份缓存空间变为主份缓存空间时,读数据有效标志位信号变为有效,产生读数据有效标志位信号,并输出到外部; 
当读地址计数器除最高位以外的地址位等于阈值时,读数据有效标志位信号变为无效,产生读数据有效标志位信号,并输出到外部。 
2.根据权利要求1所述的一种基于FPGA内DPRAM的乒乓缓存操作结构,其特征在于:所述主份缓存空间和备份缓存空间是通过写地址计数器输出的写地址最高位进行区分的,主份缓存空间和备份缓存空间均位于同一个DPRAM内; 
当写地址最高位为‘0’时,表示写操作在主份缓存空间;当写地址最高位 为‘1’时,表示写操作在备份缓存空间; 
主份缓存空间的初始地址为全‘0’,备份缓存空间的初始地址为“100…0”;主份缓存空间的地址和备份缓存空间的地址表示可以相反; 
当有外部输入的写控制信号时,由外部输入的写控制信号控制主份缓存空间和备份缓存空间的切换;当无外部输入的写控制信号时,由写地址最高位信号控制主份缓存空间和备份缓存空间的切换。 
3.根据权利要求1所述的一种基于FPGA内DPRAM的乒乓缓存操作结构,其特征在于:所述读操作控制模块输出到DPRAM模块的读地址信号到DPRAM模块输出读地址存储的数据之间有1个读时钟周期或2个读时钟周期或3个读时钟周期的延迟,此时对读数据有效标志位信号进行相应的延迟寄存。 
4.根据权利要求1所述的一种基于FPGA内DPRAM的乒乓缓存操作结构,其特征还在于包括:读时钟同步寄存器;写时钟域与读时钟域可以相同也可以不同;当写操作事件的时钟域与读操作事件的时钟域不同时,读时钟同步寄存器对写地址最高位信号至少寄存两次,产生读时钟同步的写地址最高位信号,并输入到读地址计数器;第一帧缓存完成信号用读时钟同步寄存器至少寄存两次,产生读时钟同步的第一帧缓存完成信号,并输入到读地址计数器。 
CN201410459309.7A 2014-09-10 2014-09-10 一种基于fpga内dpram的乒乓缓存操作结构 Active CN104239232B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410459309.7A CN104239232B (zh) 2014-09-10 2014-09-10 一种基于fpga内dpram的乒乓缓存操作结构

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410459309.7A CN104239232B (zh) 2014-09-10 2014-09-10 一种基于fpga内dpram的乒乓缓存操作结构

Publications (2)

Publication Number Publication Date
CN104239232A true CN104239232A (zh) 2014-12-24
CN104239232B CN104239232B (zh) 2017-05-10

Family

ID=52227346

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410459309.7A Active CN104239232B (zh) 2014-09-10 2014-09-10 一种基于fpga内dpram的乒乓缓存操作结构

Country Status (1)

Country Link
CN (1) CN104239232B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105022592A (zh) * 2015-06-30 2015-11-04 北京空间机电研究所 一种遥感相机磁性随机存储器的控制***
CN109144889A (zh) * 2018-06-25 2019-01-04 中国科学院声学研究所 基于fpga的超声检测数据存储模块及fpga电路
CN110120922A (zh) * 2019-05-14 2019-08-13 中国核动力研究设计院 一种基于fpga的数据交互网络管理***及方法
CN113641625A (zh) * 2021-08-19 2021-11-12 电子科技大学 一种基于fpga的四路并行数据处理转置***
CN114265796A (zh) * 2021-11-22 2022-04-01 四川和芯微电子股份有限公司 Ram的读写控制方法
CN114822385A (zh) * 2022-05-27 2022-07-29 中科芯集成电路有限公司 一种led显示驱动芯片的写保护电路
CN118069580A (zh) * 2024-04-22 2024-05-24 江苏华存电子科技有限公司 一种双cpu使用两块乒乓缓存记录信息的同步方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050144509A1 (en) * 2003-12-24 2005-06-30 Fernando Zayas Cache search accelerator method
CN101350036A (zh) * 2008-08-26 2009-01-21 天津理工大学 一种高速实时数据采集***
CN102043590A (zh) * 2010-11-26 2011-05-04 北京北方烽火科技有限公司 一种dpram访问控制***
US20140164707A1 (en) * 2012-06-14 2014-06-12 International Business Machines Corporation Mitigating conflicts for shared cache lines

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050144509A1 (en) * 2003-12-24 2005-06-30 Fernando Zayas Cache search accelerator method
CN101350036A (zh) * 2008-08-26 2009-01-21 天津理工大学 一种高速实时数据采集***
CN102043590A (zh) * 2010-11-26 2011-05-04 北京北方烽火科技有限公司 一种dpram访问控制***
US20140164707A1 (en) * 2012-06-14 2014-06-12 International Business Machines Corporation Mitigating conflicts for shared cache lines

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105022592A (zh) * 2015-06-30 2015-11-04 北京空间机电研究所 一种遥感相机磁性随机存储器的控制***
CN105022592B (zh) * 2015-06-30 2018-01-05 北京空间机电研究所 一种遥感相机磁性随机存储器的控制***
CN109144889A (zh) * 2018-06-25 2019-01-04 中国科学院声学研究所 基于fpga的超声检测数据存储模块及fpga电路
CN109144889B (zh) * 2018-06-25 2022-11-25 中国科学院声学研究所 基于fpga的超声检测数据存储模块及fpga电路
CN110120922A (zh) * 2019-05-14 2019-08-13 中国核动力研究设计院 一种基于fpga的数据交互网络管理***及方法
CN110120922B (zh) * 2019-05-14 2022-09-20 中核控制***工程有限公司 一种基于fpga的数据交互网络管理***及方法
CN113641625A (zh) * 2021-08-19 2021-11-12 电子科技大学 一种基于fpga的四路并行数据处理转置***
CN114265796A (zh) * 2021-11-22 2022-04-01 四川和芯微电子股份有限公司 Ram的读写控制方法
CN114265796B (zh) * 2021-11-22 2024-05-14 四川和芯微电子股份有限公司 Ram的读写控制方法
CN114822385A (zh) * 2022-05-27 2022-07-29 中科芯集成电路有限公司 一种led显示驱动芯片的写保护电路
CN118069580A (zh) * 2024-04-22 2024-05-24 江苏华存电子科技有限公司 一种双cpu使用两块乒乓缓存记录信息的同步方法
CN118069580B (zh) * 2024-04-22 2024-06-28 江苏华存电子科技有限公司 一种双cpu使用两块乒乓缓存记录信息的同步方法

Also Published As

Publication number Publication date
CN104239232B (zh) 2017-05-10

Similar Documents

Publication Publication Date Title
CN104239232A (zh) 一种基于fpga内dpram的乒乓缓存操作结构
CN103077132B (zh) 一种高速缓存处理方法及协议处理器高速缓存控制单元
CN103559146B (zh) 一种提高NAND flash控制器读写速度的方法
CN103810112A (zh) 一种非易失性内存***及其管理方法
CN101236774B (zh) 单端口存储器实现多端口存储功能的装置和方法
CN104424103A (zh) 固态储存装置中高速缓存的管理方法
CN103593306A (zh) 一种协议处理器Cache控制单元的设计方法
CN102968394A (zh) 一种基于乒乓机制的fpga与dsp数据传输***
CN209842608U (zh) 一种基于fpga fifo模块的ddr3存储器控制
CN111158633A (zh) 一种基于fpga的ddr3多通道读写控制器及控制方法
CN109359729B (zh) 一种在fpga上实现缓存数据的***及方法
CN104750644A (zh) Dsp的emif读写时序与fpga的avalon读写时序的转换方法
CN109344109B (zh) 基于固态硬盘的大数据中加速人工智能计算的***及方法
CN103294836A (zh) 基于pcie的雷达数据采集显控***及其方法
CN102610269B (zh) 一种多读单写片内存储器
CN102520892A (zh) 多功能固态数据存储回放仪
CN104679681A (zh) Ahb总线访问片上sram的高速桥装置及其工作方法
CN100517498C (zh) 一种无读取延迟的先进先出存储器
CN102789424B (zh) 基于fpga的外扩ddr2的读写方法及基于fpga的外扩ddr2颗粒存储器
CN206331414U (zh) 一种固态硬盘
CN104156907A (zh) 一种基于fpga的红外预处理存储***及存储方法
CN104035898A (zh) 一种基于vliw类型处理器的访存***
CN204129729U (zh) 一种基于DMA传输的Flash存储控制***
CN102833541B (zh) 用于mpeg-2视频解码的sdram控制***
CN204496485U (zh) 一种基于高速数据采集存储***的i/o加速存取装置

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