CN209842608U - 一种基于fpga fifo模块的ddr3存储器控制 - Google Patents
一种基于fpga fifo模块的ddr3存储器控制 Download PDFInfo
- Publication number
- CN209842608U CN209842608U CN201920889345.5U CN201920889345U CN209842608U CN 209842608 U CN209842608 U CN 209842608U CN 201920889345 U CN201920889345 U CN 201920889345U CN 209842608 U CN209842608 U CN 209842608U
- Authority
- CN
- China
- Prior art keywords
- module
- read
- write
- reading
- ddr3 memory
- 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
Links
Abstract
本实用新型提供了一种基于FPGA FIFO模块的DDR3存储器控制模块,包括:一集成模块和一状态控制机,所述集成模块包括读模块、写模块以及DDR3 MIG核,所述读模块、写模块分别与所述DDR3 MIG核连接,所述DDR3 MIG核与所述DDR3存储器连接,所述读模块包括一写数据FIFO缓存器和一写地址FIFO缓冲器;所述读模块包括一读数据FIFO缓存器和一读地址FIFO缓存器;所述状态控制机分别与所述读模块和所述写模块连接,用于控制两模块的读写状态。本实用新型简化了对DDR3存储器的读写控制操作,并且通用性很强。
Description
技术领域
本实用新型涉及FPGA信号处理系统,尤其是涉及一种基于FPGA的 DDR3读写操作控制模块。
背景技术
已知的,与其它存储器相比,DDR3 SDRAM存储器(即DDR3双倍数据速率同步动态随机存取存储器,以下简称DDR3)具有更低功耗的同时,兼有更快的传输速率。在常用的FPGA信号处理系统中,由于系统处理的数据量大和处理速度快等特点,因此常和DDR3结合使用。
然而,在使用DDR3的过程中,技术人员常常被它内部繁多的控制信号和复杂的读写控制时序所烦恼,在实现ddr3读写控制上需花费很多精力,导致系统开发效率较低,且读写控制通用性差。
发明内容
有鉴于此,本实用新型提供一种基于FPGA FIFO模块的DDR3存储器控制模块,以降低对DDR3存储器进行读写操作时的控制复杂度,提高DDR3存储器读写控制的通用性。
为实现上述的目的,本实用新型采用下述的技术方案:
一种基于FPGA FIFO模块的DDR3存储器控制模块,包括:
一集成模块,与DDR3存储器连接,用于对该DDR3存储器进行数据读写;
一状态控制机,与所述集成模块连接,用于对所述集成模块的读写操作进行控制;
所述集成模块包括读模块、写模块以及DDR3 MIG核,所述读模块、写模块分别与所述DDR3 MIG核连接,所述DDR3 MIG核与所述DDR3存储器连接,其中:
所述读模块包括一写数据FIFO缓存器和一写地址FIFO缓冲器,分别用来进行写数据的缓存和写地址的缓存;
所述读模块包括一读数据FIFO缓存器和一读地址FIFO缓存器,分别用来进行读数据的缓存和读地址的缓存;
所述状态控制机分别与所述读模块和所述写模块连接,用于控制两模块的读写状态。
根据本实用新型进一步的实施方式,所述集成模块还包括写信号接口,该写信号接口包括写时钟端口、写FIFO使能端口、写入数据端口以及写地址端口。
根据本实用新型进一步的实施方式,所述集成模块还包括读信号接口,该读信号接口包括读时钟端口、读FIFO使能端口、读出数据端口以及读地址端口。
根据本实用新型进一步的实施方式,所述状态控制机通过多路选择开关分别与所述读模块和所述写模块连接。
根据本实用新型进一步的实施方式,所述写模块通过第一信号接口与DDR3 MIG核的用户接口连接,所述读模块通过第二信号接口与DDR3MIG核的用户接口连接。
由于采用上述方案,本实用新型具有如下技术效果:
本实用新型提供的控制模块将FPGA片上的读写模块与DDR3MIG核构建一个集成模块,通过读写状态控制机控制FIFO来完成对DDR3的读写操作,从而大大简化了对DDR3存储器的读写控制操作,并且通用性很强。
附图说明
图1是根据本实用新型的AXIS标准DDR3控制装置结构示意图;
图2是本实用新型DDR3控制装置各个模块之间的详细接口信号连接图;
图3是本实用新型DDR3控制装置的读写状态控制流程图。
具体实施方式
下面结合附图和实施例对本实用新型的技术方案进行更加详细地描述。
本实用新型提供了一种基于FPGA FIFO模块的DDR3存储器控制模块。在本实用新型的实施例中,选择xilinx公司7系列FPGA芯片为开发基础。
该控制模块用于对DDR3存储器1进行读写操作控制,包括写模块5、读模块3、读写状态控制机4以及MIG核2。写模块5、读模块3一方面与读写状态控制机4数据连接,另一方面分别通过DDR3 MIG核2与DDR3存储器1数据连接。
DDR3 MIG核是xilinx官方集成的IP核,用户可以通过控制DDR3 MIG核模块来完成对DDR3存储器的读写交互。
所述读写状态控制机4用于对DDR3存储器1的读写时序进行控制,而不实施具体的DDR3存储器读写功能。在读写时序为写状态时,所述写模块5通过所述MIG核2向DDR3存储器1中写入数据;在读写时序为读状态时,所述读模块3通过所述MIG核2从DDR3存储器1中读出数据。
所述写模块5包括一写数据FIFO缓存器和一写地址FIFO缓冲器,分别用来进行写数据的缓存和写地址的缓存;所述读模块3包括一读数据FIFO缓存器和一读地址FIFO缓存器,分别用来进行读数据的缓存和读地址的缓存。为了方便通信,本模块中的4个FIFO在调用时全部选择AXI协议进行控制。
图2示出了根据本实用新型中各模块之间的具体接口连接结构。如图所示,读写状态控制机4通过多路选择开关MUX分别与写模块5、读模块3连接。写模块5通过第一信号接口7与DDR3 MIG核的用户接口6连接,读模块3通过第二信号接口8与DDR3 MIG核的用户接口6连接。
在所述第一信号接口7中,rst和ui_clk信号用来作为写数据FIFO和写地址FIFO的复位和读时钟,当输入的信号满足(app_rdy&app_wdf_rdy& init_comp)=1时,并且当写模块中的两个FIFO都没写满信号,即m_axis_wr_ready =1时,则把app_en,app_wdf_wren信号赋值为1进行输出,也输出命令信号 app_cmd为写状态,开始从写数据FIFO和写地址FIFO中读出数据app_wdf_dat 和地址app_addr,从而完成往ddr3中写入数据。当上述信号条件不满足时,则进入idle状态。
在所述第二信号接口8中,当数据在读状态时,rst和ui_clk信号作为读数据FIFO和读地址FIFO的复位和读时钟,当输入信号(app_rdy=1)时,并且读地址FIFO没读空,即m_axis_rd_ready=1,则输出命令信号app_cmd为读状态,把app_en赋值1进行输出,同时从读地址FIFO中读出地址app_addr,就可以实现从ddr3中读出数据,并缓存到读数据FIFO中。当上述任何一个条件不满足时,则进入idel空闲状态。
本实用新型将读写模块和DDR3 MIG核合并成一个集成模块,该集成模块包括写信号接口9、读信号接口10。所述写信号接口9包括写时钟端口s_wr_aclk、写FIFO使能端口s_axis_wr_en、写入数据端口s_axis_tdata以及写人地址端口 s_axis_addr。所述读信号端口10包括读时钟端口s_rd_aclk、读FIFO使能端口 s_axis_rd_en、读出数据端口s_axis_tdata以及读出地址端口s_axis_addr。
本实用新型由于将读写模块和DDR3 MIG核合并成一个集成模块,该集成模块的输入信号主要是写入的地址s_axis_addr和写入的数据s_axis_tdata,读出的地址s_axis_addr和读出的数据s_axis_data,读写FIFO的使能信号,以及外部的读写状态机发出的状态信号,而读写模块与MIG核之间的信号连接均是该集成模块的内部信号,在进行读写操作控制时不需要考虑,因此这简化了对DDR3 存储器的读写信号操作。
读写状态控制机4只需根据实际需要,设置跳转条件跳转到需要的状态,如图3所示,当初始化完成,只要满足读条件,就进入到读模块,满足写条件,就进入到写条件,两个条件都不满足,则进入空闲状态。因此,采用状态机控制完全简化了信号接口。
在使用本实用新型提供的DDR3存储器控制模块时,只需要根据实际需要连接读写FIFO的时钟,连接读写DDR3存储器的地址和使能信号,以及连接读写状态信号就可实现对DDR3存储器的控制。
本实用新型的工作原理:
本实用新型利用FIFO先入先出和能进行数据缓存的特点,在读写模块中各设置两个FIFO,一个是用来进行数据缓存,一个是用来进行地址缓存。数据FIFO 主要是可以用来进行跨时钟域数据的读写,增加了本实用新型的使用范围。而地址FIFO主要是为了和读写的数据进行时序匹配,以便于实现数据和地址时序进行对齐,简化操作。通过把DDR3 MIG核、写模块、读模块进行集成,并与状态机组合成了DDR3控制模块,可以任意的根据实际情况对读写状态进行更改,从而可以实现任意状态的读写。
Claims (5)
1.一种基于FPGA FIFO模块的DDR3存储器控制模块,包括:
一集成模块,与DDR3存储器连接,用于对该DDR3存储器进行数据读写;
一状态控制机,与所述集成模块连接,用于对所述集成模块的读写操作进行控制;其特征在于:
所述集成模块包括读模块、写模块以及DDR3 MIG核,所述读模块、写模块分别与所述DDR3 MIG核连接,所述DDR3 MIG核与所述DDR3存储器连接,其中:
所述读模块包括一写数据FIFO缓存器和一写地址FIFO缓冲器,分别用来进行写数据的缓存和写地址的缓存;
所述读模块包括一读数据FIFO缓存器和一读地址FIFO缓存器,分别用来进行读数据的缓存和读地址的缓存;
所述状态控制机分别与所述读模块和所述写模块连接,用于控制两模块的读写状态。
2.根据权利要求1所述的DDR3存储器控制模块,其特征在于:所述集成模块还包括写信号接口,该写信号接口包括写时钟端口、写FIFO使能端口、写入数据端口以及写地址端口。
3.根据权利要求1或2所述的DDR3存储器控制模块,其特征在于:所述集成模块还包括读信号接口,该读信号接口包括读时钟端口、读FIFO使能端口、读出数据端口以及读地址端口。
4.根据权利要求1所述的DDR3存储器控制模块,其特征在于:所述状态控制机通过多路选择开关分别与所述读模块和所述写模块连接。
5.根据权利要求1所述的DDR3存储器控制模块,其特征在于:所述写模块通过第一信号接口与DDR3 MIG核的用户接口连接,所述读模块通过第二信号接口与DDR3 MIG核的用户接口连接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201920889345.5U CN209842608U (zh) | 2019-06-13 | 2019-06-13 | 一种基于fpga fifo模块的ddr3存储器控制 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201920889345.5U CN209842608U (zh) | 2019-06-13 | 2019-06-13 | 一种基于fpga fifo模块的ddr3存储器控制 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN209842608U true CN209842608U (zh) | 2019-12-24 |
Family
ID=68898484
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201920889345.5U Active CN209842608U (zh) | 2019-06-13 | 2019-06-13 | 一种基于fpga fifo模块的ddr3存储器控制 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN209842608U (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111158633A (zh) * | 2019-12-26 | 2020-05-15 | 电子科技大学 | 一种基于fpga的ddr3多通道读写控制器及控制方法 |
CN111694775A (zh) * | 2020-06-09 | 2020-09-22 | 电子科技大学 | 一种在ddr3中基于时分复用进行读写控制的装置 |
CN111984563A (zh) * | 2020-09-18 | 2020-11-24 | 西安电子科技大学 | 基于fpga的ddr3读写控制器及矩阵转置实现方法 |
CN115328822A (zh) * | 2022-08-19 | 2022-11-11 | 扬州宇安电子科技有限公司 | 一种基于ddr3的读写控制动态调度方法及其存储介质 |
-
2019
- 2019-06-13 CN CN201920889345.5U patent/CN209842608U/zh active Active
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111158633A (zh) * | 2019-12-26 | 2020-05-15 | 电子科技大学 | 一种基于fpga的ddr3多通道读写控制器及控制方法 |
CN111694775A (zh) * | 2020-06-09 | 2020-09-22 | 电子科技大学 | 一种在ddr3中基于时分复用进行读写控制的装置 |
CN111984563A (zh) * | 2020-09-18 | 2020-11-24 | 西安电子科技大学 | 基于fpga的ddr3读写控制器及矩阵转置实现方法 |
CN115328822A (zh) * | 2022-08-19 | 2022-11-11 | 扬州宇安电子科技有限公司 | 一种基于ddr3的读写控制动态调度方法及其存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN209842608U (zh) | 一种基于fpga fifo模块的ddr3存储器控制 | |
US10318468B2 (en) | FPGA-based interface signal remapping method | |
CN110569204B (zh) | 基于fpga和ddr3 sdram的可配置图像数据缓存系统 | |
CN101692346B (zh) | 一种存储器数据采样装置及一种采样控制器 | |
CN113553277A (zh) | 一种ddr5 sdram的高吞吐率、低延迟phy接口电路装置 | |
CN105468547A (zh) | 一种基于axi总线的便捷可配置帧数据存取控制系统 | |
US20050033875A1 (en) | System and method for selectively affecting data flow to or from a memory device | |
CN107329929B (zh) | 一种基于SoC FPGA的数据传输系统及数据传输方法 | |
CN102520892A (zh) | 多功能固态数据存储回放仪 | |
CN100517498C (zh) | 一种无读取延迟的先进先出存储器 | |
CN110941583A (zh) | 一种基于fpga的usb3.0数据传输系统控制方法 | |
CN111506249A (zh) | 一种基于zynq平台的数据交互系统及方法 | |
CN102789424B (zh) | 基于fpga的外扩ddr2的读写方法及基于fpga的外扩ddr2颗粒存储器 | |
CN108897696B (zh) | 一种基于DDRx存储器的大容量FIFO控制器 | |
CN218068843U (zh) | 一种axi主端口转apb从端口的桥接电路结构及一种soc系统 | |
CN103076990A (zh) | 一种基于fifo缓存结构的数据回放装置 | |
CN103150129B (zh) | PXIe接口Nand Flash数据流盘存取加速方法 | |
CN111966628B (zh) | 一种多核组合式大容量数据同步存储方法 | |
CN111338983B (zh) | 一种高速数据缓存结构及方法 | |
JP3942074B2 (ja) | データ入出力装置、メモリ・システム、データ入出力回路およびデータ入出力方法 | |
CN201936294U (zh) | 一种高速图像采集系统的缓存系统 | |
CN107608654B (zh) | 多路异步信息的传输控制装置及方法 | |
CN102571314B (zh) | 一种spram全双工通信控制电路 | |
Zheng et al. | Design and implementation of DDR4 SDRAM controller based on FPGA | |
CN112148667B (zh) | 一种基于fpga软核的缓存系统及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
GR01 | Patent grant | ||
GR01 | Patent grant |