FPGA读写DDR3

DDR3是一种内存规格,它是SDRAM家族的内存产品。DDR3之前的产品有DDR和DDR2。DDR(Double Data Rate)是双倍速率同步动态随机存储器,严格的说DDR应该叫DDR SDRAM。DDR2是DDR产品的升级产品,它是四倍速率同步动态随机存储器。DDR3在DDR2的基础上实现了更高的性能(增加到八倍)和更低的电压。
DDR内部结构框图如下所示:
在这里插入图片描述

如上图所示:

标号1:逻辑控制单元,用于输入命令解析和模式控制等。
标号2:行地址选通单元。
标号3:内部存储阵列,上图中分为8个bank。
标号4:bank控制逻辑单元。
标号5:IO锁存和DM标记单元,用于刷新和预充电。
标号6:数据读写驱动接口。
标号7:列地址选择单元。
在7系列FPGA芯片中,Xilinx 为用户提供了一个 DDR 控制的 IP核,称为MIG IP 控制器。这样用户可以很方便的通过 MIG 控制器读写 DDR 存储器。7 系列的 DDR 控制器的解决方案如下所示:
在这里插入图片描述
如上图所示,DDR3 控制器包含 3 部分:

  • 用户接口模块(User interface Block);
  • 存储器控制模块(Memory Controller);
  • DDR3 的物理接口(Physical Layer)。
    在vivado中创建DDR3的MIG控制器,步骤如下:
  1. 在vivado中,点击 Project Manager 界面下的 IP Catalog,打开 IP Catalog 界面。如下所示:
    在这里插入图片描述

  2. 在IP Catalog 界面里找到 Memories & Storage Elements\Memory Interface Generators 下的 Memory
    Interface Generator (MIG 7 Series),如下图所示:
    在这里插入图片描述
    3.双击Memory Interface Generator (MIG 7 Series)后出现下图所示界面:
    在这里插入图片描述

如果想了解更多的 MIG 的信息,可以点击左边的 User Guide 按钮来打开 Xilinx 的相关文档来查看。
4.点击 Next,如下图所示:
在这里插入图片描述
5.修改 Component Name 为"ddr3",点击 Next。如下图所示:
在这里插入图片描述

6.继续点 Next。如下图所示:
在这里插入图片描述
7.选择默认的 DDR3 SDRAM。如下图所示:
在这里插入图片描述
8.在clock period选项中选择2500ps,Memory Part 中选择匹配型号如"MT41J256m16xx-125", Data Width 数据宽度选择 32 位,ORDERING选择normal。然后点击next,如下图所示:
在这里插入图片描述

9.选择Input clock Period为 200Mhz, 这个时钟需要跟所用电路板上的外部时钟频率一致,其它设置输出阻抗值和内部的 ODT 内部上拉电阻值来改善 DDR3 的信号完整性,一般不需要修改。如下图所示:
在这里插入图片描述
10.System Clock 选择差分"No Buffer", 因为电路板上没有提供单独的 DDR 参考时钟,所以Reference Clock 选择"Use System Clock"。System Reset
Polarity 选择"ACTIVE LOW",其它保留默认配置。

  • 17
    点赞
  • 186
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值