背景:从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 memory
interface 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 using
the following command
vmap unisims_ver <unisims_ver lib path>
vmap unisim <unisim lib path>
vmap secureip <secureip lib path> Also, $XILINX_VIVADO environment variable must be set in order to compile glbl.v file c) 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 following
command to change directory path.
cd <sim directory path> c) Run the simulation using sim.do file.
At Modelsim/QuestaSim prompt, type the following command:
do sim.do d) To exit simulation, type the following command at Modelsim/QuestaSim
prompt:
quit -f e) 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

vivado2016.2下系统自带DDR3 ip例程仿真运行的更多相关文章

  1. sips 命令(iMac 下系统自带)

    2. sips 2.1 -Z 指定最大宽高 //等比例缩放 scaleFill $ sips -Z 300 hgl.png $ for i in *.jpg;do sips -Z 300 " ...

  2. Broadcom有线网卡在Windows 8/8.1/10下使用系统自带驱动会断网的解决办法

    出处:qiuyi21.cnblogs.com 1.下载最新正式版驱动程序 上Broadcom官方网站http://www.broadcom.com/support/ethernet_nic/downl ...

  3. #在FLAT模式下,需要设置flat子网,VM的IP从这个设置的子网中抓取,这时flat_injected需要设置为True,系统才能自动获得IP,如果flat

    #在FLAT模式下,需要设置flat子网,VM的IP从这个设置的子网中抓取,这时flat_injected需要设置为True,系统才能自动获得IP,如果flat子网和主机网络是同一网络,网络管理员要注 ...

  4. IP编辑控件(因为封装的是系统自带控件,所以也使用了CreateSubClass,不过为啥要封装CN_COMMAND和CN_NOTIFY不是很明白)

    最近需要用一个IP输入控件,网上找了几个,都不符合效果,有些还有一些奇怪的Bug.后来发现原来系统已经提供了IP地址编辑控件,只是系统提供的控件不能设置只读效果.网上找了下资料,封装了一下,自己迂回一 ...

  5. [Swift通天遁地]二、表格表单-(4)使用系统自带的下拉刷新控件,制作表格的下拉刷新效果

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...

  6. 利用win7系统自带的dos命令把笔记本无线网卡当无线路由器(无线AP发射器)

    利用win7系统自带的dos命令把笔记本无线网卡当无线路由器(无线AP发射器). 1.打开win7开始菜单,找到命令提示符选项,以管理员身份运行cmd.2.在命令行上输入:netsh wlan set ...

  7. XP系统电脑带安卓手机上网教程(无需adhoc补丁)

    XP系统电脑带安卓手机上网教程(无需adhoc补丁) WIN7系统可以虚拟wifi热点,安卓手机连上这个热点就能上网.XP系统虚拟出来的wifi热点是adhoc形式的,原生的安卓系统并不支持adhoc ...

  8. 如何在windows系统自带命令查看硬件信息?

    如何在windows系统自带命令查看硬件信息? 对于在windows下查看系统信息大家一定不陌生了,我现在说几个最常用的方法,对命令感兴趣的朋友看看,(给菜鸟看的,老手就不要笑话我了,大家都是从那个时 ...

  9. 系统自带的日志管理工具-rsyslogd

    系统自带的日志管理工具-rsyslogd 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.日志管理简介 1.什么是日志 系统日志是记录系统中硬件.软件和系统问题的信息,同时还可以 ...

随机推荐

  1. 13、Flask实战第13天:SQLAlchemy操作MySQL数据库

    安装MySQL 在MySQL官网下载win版MySQL 双击运行 后面根据提示设置密码然后启动即可,这里我设置的密码是:123456 我们可以通过Navicat客户端工具连接上MySQL addres ...

  2. 25、Django实战第25天:讲师详情页

    1.复制teacher-detail.html到templates目录下 2.编辑teacher-detail.html,继承base.html 3.编辑organization.view.py cl ...

  3. Java 线程 锁

    http://www.blogjava.net/tscfengkui/archive/2010/11/10/337709.html?opt=admin http://hi.baidu.com/xhxz ...

  4. 某考试 T1 lcm

    把lcm写成 (a+n)*(b+n) / gcd(a+n,b+n). 因为gcd可以辗转相减,所以就成了gcd(abs(a-b),a+n),一个常量一个变量之间的gcd,我们可以直接把abs(a-b) ...

  5. Codeforces 788C The Great Mixing(背包问题建模+bitset优化或BFS)

    [题目链接] http://codeforces.com/problemset/problem/788/C [题目大意] 给出一些浓度的饮料,要求调出n/1000浓度的饮料,问最少需要多少升饮料 [题 ...

  6. [51nod1538]一道难题

    先观察一下题目给出的式子:对所有满足$\begin{align*}\sum\limits_{i=1}^na_ib_i=m\end{align*}$的$b_{1\cdots n}$,计算$\begin{ ...

  7. 【动态规划】bzoj1633 [Usaco2007 Feb]The Cow Lexicon 牛的词典

    f[i]=min{f[i+1]+1,f[i+len[j]+cant]+cant}(for i=L-1 downto 0)(1<=j<=w) #include<cstdio> # ...

  8. Mysql-库的基本操作

    一 .系统数据库 二 .创建数据库 三 .数据库相关操作 一. 系统数据库 information_schema: 虚拟库,不占用磁盘空间,存储的是数据库启动后的一些参数,如用户表信息.列信息.权限信 ...

  9. hdu2829 四边形优化dp

    Lawrence Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total S ...

  10. centos7.2+zabbix3.2+sedmail邮件告警

    http://blog.csdn.net/xiegh2014/article/details/56277111