五,基于FPGA的DDR控制器设计及MIG控制器使用

1,DDR简述

      SDRAM:称为动态随机访问存储器,通过电容保存信息。

      SDR : 单速率,单端,LVCMOS标准;

      DDR : 双速率,差分电路,SSTL标准;

2,SDRAM控制器设计

      (1)上电初始化;

      (2) 预充电;

      (3) 读写

   操作命令如下,

初始化配置行参数说明如下:

上电初始化顺序:

    预充电: SDRAM为电容模式,如果不进行预充电,随着时间,他内部数据就会丢失,因此每间隔时段时间对DDR芯片就要进行充电造成.该操作通过命令完成。

    读写时序:读写时序需要主要的是潜伏期;设计SDRAM控制器时,速率不是很高,只有100M因此,在初始化时配置潜伏期为2.数据完成数据读写

3,MIG控制器(以XC7K325T-FFG900为例)

    DDR3因为速率较高突发长度为固定的8.

    MIG为XILINX的DDR控制器,如图为ds182中对控制器DDR速率说明:

 MIG控制器配置流程及说明:

 (1)打开控制器,可以选择控制器数量最大为8个,用户端口可选择使用axi4或普通的地址数据,命令端口控制;具体如图

   (2)选择FPGA芯片,选择DDR控制器类型(DDR3,DDR2)

   (3)选择DDR芯片型号,配置速率,数据位宽,电平标准,Bank个数;

      4:1说明:  时钟800M,4:1 关系下用户时钟为200M;DDR数据位宽为64bit,用户数据为宽为8:1关系,因为DDR双所以在4:1关系上x2.用户数据位宽为64*4*2=512bit

    (4)根据4:1关系,下图用户数据位宽应为512bit

    (5)如下图该处配置MIG输入时钟,(根据配置的DDR速率,会有可选的时钟输入,选择合适的输入时钟),

(6)配置系统时钟和参考时钟,系统复位,如果系统时钟输入为为199M到201M时,参考时钟可用系统时钟,此处可看ug586第396页.

(7)配置DDR管脚,如果已有原理图,可导出UCF文件,通过第二种配置方式选择导入文件,配置管脚.如没有原理图,可选择第一种新的设计来完成自动配置DDR管脚

(8)完成后,一直下一步,到最后.完成MIG配置。

4,MIG控制器用户接口控制实现

(1)使用普通用户端口控制,

          写命令时序如下:

    写数据时序如下:

         读数据时序如下:

 

        (2)通过AXI端口做用户数据端口,端口完全匹配AXI协议。 

献上一份AXI接口控制MIG设计,链接:https://download.csdn.net/download/weixin_41838250/12883455

  • 0
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值