Xilinx DDR3 —— MIG IP核的原理(APP接口)

DDR3 SDRAM(Double-Data-Rate Three Synchronous Dynamic Random Access Memory)是 DDR SDRAM的第三代产品,DDR SDRAM 的最大特点是双沿触发,即在时钟的上升沿和下降沿都能进行数据采集和发送,同样的工作时钟,DDR SDRAM 的读写速度可以比传统的 SDRAM 快一倍。

以下为MIG IP 核结构框图。MIG IP 核对外分出了两组接口。左侧是用户接口,就是用户(FPGA)同 MIG IP核交互的接口。右侧为 DDR 物理芯片接口,负责产生具体的操作时序,并直接操作芯片管脚。这一侧用户只负责分配正确的管脚,其他不用关心。即用户只需操作MIG IP的用户接口就能进行DDR数据的读写。点击 MIG IP可下载MIG IP核的使用手册。

Xilinx DDR3 —— MIG IP核的原理(APP接口)
下图为MIG IP核用户接口的信号及其说明:
Xilinx DDR3 —— MIG IP核的原理(APP接口)

Xilinx DDR3 —— MIG IP核的原理(APP接口)

读写操作前的准备

Xilinx DDR3 —— MIG IP核的原理(APP接口)
DDR3 的读或者写都包含写命令操作(app_cmd),app_cmd = 0 时为写操作,app_cmd = 1 时为读操作。
要想向DDR中写入数据或读出数据,必须先检查 app_rdy,app_rdy为高则表明此时 IP 核已经准备好,可以接收用户命令,在app_rdy为高时拉高 app_en,同时发送命令(app_cmd)和地址(app_addr),此时命令和地址被写入。

写操作时序

Xilinx DDR3 —— MIG IP核的原理(APP接口)
写数据有三种情形均可以正确写入:
(1)写数据时序和写命令时序发生在同一拍;
(2)写数据时序比写命令时序提前一拍;
(3)写数据时序比写命令时序至多延迟晚两拍;
在向DDR中写入数据时要先检查 app_wdf_rdy,该信号为高表明此时 IP 核数据接收处于准备完成状态,可以接收用户发过来的数据,在当前时钟拉高写使能(app_wdf_wren),给出写数据(app_wdf_data)。再加上之前发起的写命令操作就可以成功向 IP 核写数据。其中 app_wdf_mask信号是用来屏蔽写入数据的,该信号为高则屏蔽相应的字节,该信号为 0 默认不屏蔽任何字节。

读操作时序

Xilinx DDR3 —— MIG IP核的原理(APP接口)
如上图所示,在发出读命令后,用户只需等待数据有效信号(app_rd_data_valid)拉高,为高表明此时数据总线上的数据是有效的返回数据。一般在发出读命令后,有效读数据要晚若干周期才出现在数据总线上。

上一篇:Oracle Flex ASM和Flex集群


下一篇:0-STM32G070+Air724UG(4G)基本控制篇(自建物联网平台)-整体运行测试-android扫码绑定Air724UG(4G),并通过MQTT实现远程通信控制