vivado2016.2下系统自带DDR3 ip例程仿真运行
背景:从ISE14.7迁移到vivado2016.2. xilinx的软件改的真是不一般的大。两个软件操作差距真是让人想骂人。由于项目需要,准备调试DDR3。对于新手来说,例化一个DDR3 ip.如果有个例程,可以参考。那就非常好了。xilinx贴心的给我们准备了这个例程。那如何去运行这个例程,给我们作为参考用呢。本文档就简单介绍一下具体方法。本方法纯属个人方法。如有问题,自行解决!!!
开始正题:
第一步,在你自己的project下例化一个DDR3的ip。例化完成之后,如下图:
第二步,右击这个核,显示open ip example
第三步,就是点击这个open_ip_example_design .vivado会开始新建一个project .过程不表~。结果如图
第四步,简单的操作是,运行tb仿真就行了
运行结果:就是漫长的等待!!!!!!!!!系统自带的vivado simulate
实际项目,仿真测试,还是用利器modelsim吧!速度甩了vivado自带的好几条街~
运行结果:
到此,整个流程都结束了。
BUT,总感觉怪怪的是不是,系统自带的仿真时如何操作的呢!!!
其实vivado对应的project里有相关的文档解释的很清楚了。
关于modelsim的操作如下:
1. How to run simulations in Modelsim/QuestaSim simulator
A) sim.do File :
a) The 'sim.do' file has commands to compile and simulate memoryinterface design and run the simulation for specified period of time.b) It has the syntax to Map the required libraries (unisims_ver,unisim and secureip). The libraries should be mapped usingthe following commandvmap unisims_ver vmap unisim vmap secureip Also, $XILINX_VIVADO environment variable must be set in order to compile glbl.v filec) Displays the waveforms that are listed with "add wave" command.
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
B) Steps to run the Modelsim/QuestaSim simulation:
a) The user should invoke the Modelsim/QuestaSim simulator GUI.b) Change the present working directory path to the sim folder.In Transcript window, at Modelsim/QuestaSim prompt, type the followingcommand to change directory path.cd c) Run the simulation using sim.do file.At Modelsim/QuestaSim prompt, type the following command:do sim.dod) To exit simulation, type the following command at Modelsim/QuestaSimprompt:quit -fe) Verify the transcript file for the memory transactions.
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
大家看懂了有没有?看起了很简单。是不是!!!!BUT,你自己操作一遍,发现不知道怎么弄!!!
此处分割线———————————————————————-
为了找到流程,第一步在project里面找到sim.do文件。
第二步,打开文件,查看相关内容
vlib work
Map the required libraries here
vmap unisims_ver
vmap unisim
vmap secureip
Compile all modules
vlog ../../../sources_1/imports/rtl/*.v
vlog -incr ../../../sources_1/imports/rtl/traffic_gen/*.v
vlog ../../../sources_1/ip/mig_7series_0/mig_7series_0/user_design/rtl/mig_7series_0.v
vlog ../../../sources_1/ip/mig_7series_0/mig_7series_0/user_design/rtl/mig_7series_0_mig_sim.v
vlog -incr ../../../sources_1/ip/mig_7series_0/mig_7series_0/user_design/rtl/clocking/*.v
vlog -incr ../../../sources_1/ip/mig_7series_0/mig_7series_0/user_design/rtl/controller/*.v
vlog -incr ../../../sources_1/ip/mig_7series_0/mig_7series_0/user_design/rtl/ecc/*.v
vlog -incr ../../../sources_1/ip/mig_7series_0/mig_7series_0/user_design/rtl/ip_top/*.v
vlog -incr ../../../sources_1/ip/mig_7series_0/mig_7series_0/user_design/rtl/phy/*.v
vlog -incr ../../../sources_1/ip/mig_7series_0/mig_7series_0/user_design/rtl/ui/*.v
这段代码干什么用的呢?
vlib work ,刚才截图里说了,是用来在当前目录下建一个work文件夹
至于为毛能建立?大伙百度一下。
vlog ….
vlog….
vlog….
这几行的是编译对应目录下的.v文件
剩下的基本上就是一样的。编译
Compile files in sim folder (excluding model parameter file)
$XILINX variable must be set
vlog -incr $env(XILINX_VIVADO)/data/verilog/src/glbl.v
vlog wiredly.v
vlog sim_tb_top.v
这里的glbl.v文件是哪里的呢?这个文件是在vivado安装路径里面。我们需要copy过来。然后把语句改一下。不然你就要去设置XILINX_VIVADO 的环境变量。我一开始是报错了。所以还是改了吧
改成如下的
vlog ./glbl.v
do 文件需要修改的就这么多。没什么修改的。
是不是到此就可以了呢!too native too simple
这里我们需要一个modelsim.ini文件。这个文件是干啥的呢?
是vivado仿真库里的环境变量!!!
这个文件必须要,不然找不到相应的编译库。根本就无法编译。
我们把这个文件copy过来。基本上就可以了。
这次就直接在modelsim里面,change directory到当前目录。然后直接输入do sim.do。就等着运行结束,出结果吧。
第一篇认真写的博客。谢绝无引用转载。写的有点粗略。后期再慢慢修改吧!
-
-
yanhe156
4天前 20:233楼 - vivado自带的example design的路径在哪? 找不到啊
- 回复 1条回复
-
-
-
qq_32164245
前天 11:06 - 回复yanhe156:D:\FPGA\DDR3\k7_ddr3\ddr3_sim1\mig_7series_0_ex\mig_7series_0_ex.srcs\sources_1\ip\mig_7series_0\mig_7series_0\example_design按这样的路径找 这只是我的路径 但是后面的都一样
-
-
-
u011164476
2017-07-06 19:202楼 - 你好,我问一下如果我加上fifo,自己写一个与ddr3的控制接口, sim_tb_top.v需要修改吗?其他的还要修改吗?我自己写了一个用户接口控制一直不知道testvbench怎么写,希望你能回复一下,谢谢。可加qq870650456
- 回复
-
-
-
qq_36255949
2017-04-30 21:391楼 - 你好,如果加上fifo的话怎么仿真呢?sim.do文件改怎样修改呢?
转载:http://blog.csdn.net/zxbdlv/article/details/61195224
-
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
