SRAM到DDR组件

下载

描述

注意:在ISE中有一个映射米格的问题。简而言之,这些工具看不到MIG生成的UCF文件。这个问题可以通过遵循找到的流来解决在这里。与此问题相关的勤奋支持线程是在这里。

该组件为Digilent Nexys4-DDR板实现了一个简单的异步SRAM接口到DDR2转换器。它使用工业标准的SRAM控制总线。通过降低CEN、OEN和LB/UB,同时保持WEN高,启动读操作。在指定的访问时间过后,有效的数据将被从数据输出端口中驱动出来。写操作发生在CEN、WEN和LB/UB被压低,而OEN保持在高位时。

LB enable和UB enable信号支持全字节(8位)数据写入。在写操作期间,任何禁用的字节都将被屏蔽,不会传输到DDR。当LB和UB都启用时,将执行全字(16位)数据写入。

对于那些想要移植早期Nexys模型并异步访问板载CellRAM的设计的人来说,这个组件特别有用。该组件共享相同的接口,并且应该允许之前的项目继续在Nexys4-DDR上工作。惟一需要更改的是读周期和写周期等待时间。他们分别增加到210纳和260纳

转换器组件实例化一个LogiCORE MIG(内存接口生成器),该MIG配置了以下设置:

参数 价值
控制器类型 可编程门阵列控制的DDR2 SDRAM
时钟周期 3333 ps (300兆赫
PHY与控制器时钟比 2:1
内存类型 组件
记忆的一部分 MT47H64M16HR-25E
数据宽度 16
数据的面具 启用
订购 严格的
输入时钟周期 5000 ps (200 mhz)
破裂类型 顺序
输出驱动力量 Fullstrength
控制器芯片选择引脚 启用
RTT(名义)- ODT 50欧姆
内存地址映射选择 Bank-Row-Column
系统时钟 没有缓冲
参考时钟 使用系统时钟
系统复位极性 活性低
内存控制器的调试信号
内部Vref 启用
输入输出功率降低
XADC实例化 启用¹
内部终止阻抗 50欧姆

表1。米格设置

如果XADC在设计的其他地方使用,则应禁用此功能。它在该核心的Ram2Ddr版本中被禁用

这个项目包含两个不同的组件:Ram2Ddr和Ram2DdrXadx。如果您的设计没有在其他地方使用XADC核心,那么应该使用Ram2DdrXadc组件。它在内部自动实例化XADC来监控芯片温度。如果您的设计确实使用了XADC核心,那么应该使用Ram2Ddr组件。然后必须将Ram2Ddr组件的device_temp行连接到XADC组件,如Xilinx的1.9版本中的122页所述7系列fpga内存接口解决方案指南(UG586)

组件可以作为一个预编译的网络列表(.ngc)插入到项目中,或者作为源文件复制VHDL和MIG项目文件到你的项目中。两者都包含在下载中。

端口的描述

图1显示了ram2ddr组件框图及其端口:

图1所示。框图

港口 方向 描述
clk_200MHz 输入 单端,缓冲200兆赫时钟输入
rst 输入 高电平全局重置
device_temp 输入 此端口仅在ram2ddr中是活动的。ngc文件(其中XADC模块没有内部实例化),并且应该被绑定接地ram2ddrxadc。ngc组件。有关驱动该端口的详细信息,请参阅“Xilinx UG586 7系列fpga内存接口解决方案”。
内存
ram_a (26:0) 输入 输入地址
ram_dq_i (15:0) 输入 数据输入
ram_dq_o (15:0) 输出 数据输出
ram_cen 输入 校验芯片启动
ram_oen 输入 允许输出校验
ram_wen 输入 允许写入校验
ram_ub 输入 Active-low上字节选择
ram_lb 输入 Active-low低字节选择
DDR
ddr2_addr (12:0) 输出 内存地址输出
ddr2_ba (2:0) 输出 银行地址
ddr2_ras_n 输出 Active-low行地址频闪
ddr2_cas_n 输出 Active-low列地址频闪
ddr2_we_n 输出 允许写入校验
ddr2_ck_p, ddr2_ck_n 输出 差分存储器时钟输出
ddr2_cke 输出 Active-high Memory Clock使能
ddr2_cs_n 输出 校验芯片选择
ddr2_dm (1:0) 输出 输出数据的面具
ddr2_odt 输出 On-Die终止
ddr2_dq (15:0) 双向 数据输入/输出总线
Ddr2_dqs_p (1:0), ddr2_dqs_n (1:0) 双向

表2。端口的描述

公共汽车时间

图2。读操作

图3。写操作

参数 象征 最小值 马克斯 单位
读周期时间 曾经 210 - ns
写周期时间 tWC 260 - ns

与其他电路板一起使用

为了在Digilent Nexys4-DDR以外的电路板上使用该参考组件,需要修改以下内容:

  • 内存接口生成器必须重新运行,以下内容必须更改:
    • 控制器类型和/或内存部分(视内存类型而定)
    • 控制器芯片选择引脚(取决于板)
    • RTT(标称)-模切终止(取决于板子)
    • 内部Vref(取决于董事会)
    • 内部终止阻抗(取决于单板)。
    • 必须更改引脚约束以匹配DDR2在新板上的连接方式
  • 根据新的设置更新MIG组件的实例化