modelsim altera_Vivado联合modelsim仿真

欢迎FPGA工程师加入官方微信技术群

点击蓝字关注我们FPGA之家-中国最好最大的FPGA纯工程师社群

1103a0ae83a15603db89a828a5a038ea.png

ModelsIm是FPGA仿真中最常见的软件之一。可以单独利用Modelsim来仿真或者通过开发工具调用来联合仿真。至于用哪一种方法呢?那就取决于个人的喜好了,经过一段时间的对比,目前我比较趋向于利用开发工具联调来仿真。主要有以下优势:

联调仿真分析,操作简单。你几乎不需要手动敲Tcl指令就可以进行仿真,自动化程度更高。

与单独用Modelsim建立工程仿真相比,联调仿真一般在仿真是所需要调用的库,软件会自动分析,不需要自己筛选仿真所需的库文件,且不容易出错。这一优势在你仿真工程中带有大量IP核、原语的时候,会体现得淋漓尽致。

在仿真时候,多个测试用例仿真时,层次结构更加清晰。

本文就如何利用vivado联合modelsim仿真进行简要说明。

1.仿真前具体设置

利用vivado先编译好modelsim仿真所需要的库。存放在某个文件夹中,方便以后调用。我的习惯一般将库放到modelsim的安装目录下,新建一个文件夹来存放新编译的库。如下图所示文件夹叫vivado2017_lib。方便区分,我就以我用的vivado版本来命名。

d1c92076d165d0448790c2b98b1e71dd.png

  • 修改modelsim.ini文件,将库添加到modelsim的启动中。具体做法在介绍modelsim仿真一文有详细说明,这里不展开。

  • 接Vivado的相关设置。主要包含以下4步,其中第4步是把仿真库指向前一个步骤编译出来的库文件。第5步是指向modelsim启动程序的路径。

de3487fe48aa52e496687c6a8a82ab1e.png

b24ea4215494f08797382e1253dd0a36.png

以上即做好了联合仿真前的准备设置工作了。

2.仿真步骤

工程准备完毕后,添加好仿真所需文件(testbench/仿真激励模块)。例如下图中,1是我准备要仿真的工程。2是仿真的顶层文件即测试用例,3是仿真包含的内容,包括需要仿真的文件(UDT),仿真激励,例如时钟以及复位产生文件等。其中UDT即仿真对象是可综合的文件。

2022595b8e7cdef8e9919bf1c99983ae.png

激活当前仿真的测试用例,就可以开始仿真了。

问题1:如何保留我这一次的观察信号设置?

具体操作步骤如下:

deec0fc3608dafba1af280f6eaa787e7.png

为了方便保留这一次仿真中的一些观察信号以及设置,我们可以把它保存下来。在modelsim软件呢中,点击保存,想这次的相关设置保存好do文件。注意:为例避免被覆盖掉,一般不能取默认的命名,建议将do文件命名与对应的测试用例对应上。

问题2:怎样还原上一次的仿真波形等设置?

在下一次启动modelsim的时候,选择File—>LoadàMacro_File,然后选择上一次保留的设置文件即可。

ce4969ba506bda6e977b8bbac51831c0.png

问题3.如何添加多个测试用例文件?

通过下述步骤添加仿真文件。例如不同的testbench等。

d44d846c340da2ac4e8386f8370063af.png

针对多个testbench的情况,通过设计set_as_top选择来激活当前testbench,从而决定该次仿真的测试用例。如下图的工程中,包含了2个测试用例,当前激活的是tb02。

172486a8c673b93a4f214326c4956fc0.png

3.可能出现的问题

联合仿真的时候,有时候并不像单独利用modelsim仿真的那样,会弹出错误日志方便你定位。有时候有些错误(例如语法错误,编译顺序的问题,中文路径或者缺乏某个文件导致没能仿真成功)会导致vivado一直卡住了,没能够走到调用modelsim的不骤。那么碰到这种情况,我们可以去哪找到日志呢?

以我建的工程为例,一般在vivado存放仿真工程的路径中,可以找到compile.log和simulate.log这两个日志文件,方便定位。

5edab64fc1eea325e944e6758cf964cd.png

4.仿真文件管理建议

一个好的仿真文件管理习惯,有助于快速还原当初的仿真环境,有助于定位问题。

8a3dbe3559fc6ac299876d5f17ec1d56.png

最起码可以在仿真文件中包含以下几个子文件夹,其中HDL用于存放仿真是所编写的一些文件,例如仿真的时钟产生模块、外围芯片模型等;TB_PTN用于存放不同的测试用例,即不同的testbench。Wave文件用于存放针对不同testbench下观察信号的设置等等。

209e09da92485e1ca6093fa96fa54339.png

欢迎通信工程师和FPGA工程师关注公众号

49d14c7063c0581475bb6eef24ac1fa9.png

全国第一大FPGA微信技术群

欢迎大家加入全国FPGA微信技术群,这个群体拥有数万工程师、一群热爱技术的工程师,这里的FPGA工程师相互帮助,相互分享,技术氛围浓厚!赶紧叫上小伙伴一起加入吧!

ad80736ce9c6a1e309467930d4612b4c.png

用手指按住就可以加入FPGA全国技术群哦

FPGA之家元器件芯城

优势元器件服务,有需求请扫码联系群主:金娟 邮箱:293580331@qq.com 欢迎推荐给采购

ACTEL、AD部分优势订货(经营全系列):

8db3d3490a6bab958654fdd38428a09b.png

XILINX、ALTERA优势现货或订货(经营全系列):

2260e016b64cd60f6fb53bfcced57cc3.png

(以上器件为部分型号,更多型号请咨询群主金娟)

服务理念:FPGA之家元器件自营芯城,旨在方便工程师快速方便购买器件服务,经过数年竭诚服务,我们的客服遍布国内大型上市公司、军工科研单位、中小企业、最大的优势是强调服务至上的理念、并且做到快速交货、价格优惠!

直营品牌:Xilinx ALTERA ADI TI NXP ST E2V、镁光 等百余元器件品牌,尤其擅长欧美对华禁运器件,欢迎工程师朋友把我们推荐给采购或者亲自咨询我们!我们将一如既往提供业内最佳服务!

b64147cbf565a6b93175139412c27e64.png

FPGA技术群官方鸣谢品牌:Xilinx、 intel(Altera)、microsemi(,Actel)、LattIC e,Vantis,Quicklogic,Lucent等

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值