ultrascale mig IP核的使用

​1、MIG IP 核

在 Xilinx 官方提供的 IP 核中提供了一个 MIG IP 核,它可以为 DDR3、DDR4 等多种存储器提供操作接口。本次使用该 IP 核例化一个 DDR3 控制器,但 ultrascale 系列的 FPGA 所对应的 MIG IP 核与 7 系列 FPGA 的 MIG IP 核有所区别,本文仅讨论 ultrascale 系列 FPGA 所对应的 MIG IP 核,并只针对 DDR3 进行说明。

2、IP 核基本结构

通过手册可以看出,该 IP 核的基本结构如下图所示:

内部结构主要分为如下部分:

物理层(Physical Layer):与外部 DDR3 的管脚相连接,MIG 核通过该接口控制外部的 SDRAM,包括提供时钟、复位、初始化、刷新和读写操作。

控制器(Memory Controller):接收来自用户接口的读写命令,把用户接口的命令经过时序转换,执行对 DDR SDRAM 的操作,并自动执行初始化和刷新等操作。

用户接口(User Interface):提供简单的 app 接口供用户使用。

3、IP 核例化

笔者的开发环境为 vivado2017.4,开发平台为 xcku115-flvf1924-2-i 。

在vivado 工程下,打开 "IP Catalog" ,搜索 "mig" 即可出现相应的 IP 核。

打开 IP 核后,在第一页 "Basic" 界面设置以下几个选项:

Memory Device Interface Speed:根据需求选择时钟速率,笔者输入 1250, 即 800MHz 时钟速率,数据速率为 1600MHz。

Reference Input Clock Speed:笔者在某项目的硬件上提供了一个 100MHz 外部参考时钟,因此此处选择了 100MHz。大家在使用时可根据 FPGA 可以提供的系统时钟在此处进行选择。

Memory Type:选择板子上对应的 SDRAM 型号。

Data Width:选择 SDRAM 数据位宽,此处根据具体硬件进行选择。

点击第二页"Advanced Clocking"页面,主要更改以下参数:

Reference Input Clock Configuration:笔者的参考时钟为外部差分时钟,因此选择"Differential",当参考时钟由 FPGA 内部产生时,选择 "No Buffer"。

在 "Advanced Options"和 "I/O Planning and Design Checklist" 选项保持默认设置即可。

4、IP 核接口信号介绍

关注WX公众号获取更多内容。

5、用户接口信号说明

关注WX公众号获取更多内容。

6、参考文档

关注WX公众号获取更多内容。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值