首先通过手册获取该IP的内部结构图,下图是该IP采用默认接口时的输入输出信号,ddr相关的信号与DDR3芯片的引脚直接相连,app开头的引脚是IP提供给用户的信号。 其中DDR3引脚相关的信号就不需要分析了吧,如果看过前面关于DDR演变的文章,这些引脚应该非常熟悉,大部分引脚与SDRAM的引脚一样。 图1 MIG IP的端口信号 下面是...
在分析用户读写MIG IP的时序时,我们主要关注的是MIG IP模块的接口时序,而不需要深入探讨DDR3的接口时序。因此,为了更专注于我们的目标,我们可以选择删除DDR3相关的引脚信号。删除后的剩余信号如图所示。在删除DDR3相关引脚信号后,我们重新开始了仿真过程。需要注意的是,由于DDR3的初始化需要一定的时间,因此MIG ...
.ck (DDR3_ck_p), .ck_n (DDR3_ck_n), .cke (DDR3_cke), .cs_n (DDR3_cs_n), .ras_n (DDR3_ras_n), .cas_n (DDR3_cas_n), .we_n (DDR3_we_n), .dm_tdqs (DDR3_dm[1:0]), .ba (DDR3_ba), .addr (DDR3_addr), .dq (DDR3_dq[15:0]), .dqs (DDR3_dqs_p[...
回看最开始的接口框图,写出一个能进行仿真的testbench是不难的,只需要对app接口进行操作即可。问题在于如何写出框图右端的物理接口,其实这个也不用自己来做,xilinx提供了一个ddr仿真模型(该模型文件在IP生成目录下的example design/sim目录下),只需要调用该模型与MIG IP的物理接口对接接口。 仿真的流程是先对一段地...
在生成example的时候,vivado就自带仿真激励的是直接可以仿真的, sim_tb_top.v就是仿真tb文件 ddr3_model.sv ddr3_model_parameters.vh 这两个文件是DDR3的模型,根据我们MIG的设置生成的,因此我们也需要引用 最后,还有一个sim.do文件,这个文件的内容用于自己do文件的编写的参考,我们依葫芦画瓢,最后形成自己的do...
DDR对于做项目来说,是必不可少的。一般用于数据缓存和平滑带宽。今天介绍下Xilinx DDR控制器MIG IP核的例化及仿真。 FPGA芯片:XC7K325T(KC705) 开发工具:Vivado 2014.4 1、IP Catalog中搜索MIG,点击相应IP进入如下配置界面。 (1)DDR控制器的个数,根据你的实际需求而定,需要几个控制器,你心里应该清楚吧。
在modelsim中选择 file --> change directory。找到vivado建立的工程里面sim文件夹,是这个很深的文件夹 (我的工程文件夹是ddr3_sim) 好了,工作从原理上来说已经做完了。因为vivado的本意是让我们能能仿真一下这个example的,然后在modelsim中执行do sim.do 就可以了 ...
首先,打开mig示例工程。打开的示例工程实际上是一个对DDR的仿真工程,在simulation source下,可以找到我们所需的仿真DDR所用的文件。在仿真工程文件夹下,有一个import文件夹,里面包含了相关文件,可以复制出来供其他工程仿真使用。打开sim_tb_top,查看里面是如何调用DDR模型的,方便在自己的工程中像调用...
DDR对于做项目来说,是必不可少的。一般用于数据缓存和平滑带宽。今天介绍下Xilinx DDR控制器MIG IP核的例化及仿真。 FPGA芯片:XC7K325T(KC705) 开发工具:Vivado 2014.4 1、IP Catalog中搜索MIG,点击相应IP进入如下配置界面。 (1)DDR控制器的个数,根据你的实际需求而定,需要几个控制器,你心里应该清楚吧。
第一篇:DDR3和mig的介绍 第二篇:mig IP的创建 第三篇:mig IP用户读写时序 第四篇:mig IP的仿真 第五篇:mig读写时序下板实现 1快速仿真 1>①ddr3_ip->②Open IP Example Design 2>选择ddr3仿真生成的路径。 3>DDR3自带仿真工程生成完毕。