FPGA学习---Modelsim自动仿真
FPGA中的Modelsim自动仿真,就是在Quartus II 软件中调用Modelsim软件进行仿真。用流水灯的工程演示一下自动仿真步骤。
首先打开led工程。
编译工程
代码没有错误,下面就可以生成仿真文件了。
工具栏中选择 Tools --- Options
打开的Options选项中选择 EDA Tool Options,然后在右边ModelSim的右边添加仿真软件的按照路径。
然后点击OK按钮,退出设置。
工具栏中选择 Assignments---Settings
在打开的设置对话框中选中左边的 EDA Tool Settings,在右边的选择Simulation的仿真工具为ModelSim,代码格式为 Verilog HDL。选择完成后点底下的OK按钮。
在工具栏中选择 Processing---Start---Start Test Bench Template Writer
这时软件最下方,信息提示栏会显示,测试文件led.vt已经生成。
这时候在led工程目录中就能看见生成的测试文件。文件在 led\par\simulation\modelsim文件夹中
为了方便区分哪个是测试文件,将文件重命名一下,将 led.vt 改成 led_tb.vt,给文件名后面加上 _tb,代表这是测试文件。
将修改后问led_tb.vt文件直接拖动到Quartus II软件中打开
打开文件后,文件里面已经有软件自动生成的测试代码了。不过这个代码不能直接用,还需要自己修改一下。
首先修改一下时钟和文件名,然后将里面没用的代码删除。
下来编写测试文件
在初始化中设置系统时钟和复位默认值都为0,然后延时100个时钟周期,再讲复位信号拉高。always 语句用于产生系统时钟,由于系统是50MHz,时钟为20ns,所以always语句,每隔10ns对系统时钟取一次反。
测试文件就编写好了,下来编译一下测试文件。
点三角形上面带对勾的那个按钮,开始编译当前测试文件。
编译完成后,会显示代码的错误和警告数量,没有错误的话就可以添加测试文件了。
工具栏中选择 Assignments----Settings
在打开的设置界面中选择 EDA Tool Settings ---- Simulation
下来选中Compile test bench,然后点击后面的Test bench 按钮,准备添加测试文件。
在打开的界面上选择右边的New按钮,准备添加新文件
在打开的对话框中 Test bench name 后面输入测试文件名 led_tb,这时候第二行也会自动填写上led_tb。
然后点File name后面 三个点的按钮,添加测试文件。
选择 \led\par\simulation\modelsim下的led_tb.vt文件。点open按钮。
这时候测试文件路径就被添加到File name 后面,然后点Add按钮,添加文件。
这时刚才选择的测试文件路径就会被添加到下面的列表中。
然后点OK按钮,这时会弹出一个确定界面。
直接点OK按钮,这时就会返回到设置界面。
测试文件已经被添加进去了,然后点底下的Apply按钮,在点OK按钮。
这时就可以使用自动仿真功能了。
点工具栏中的 Tools -- Run Simulation Tool -- RTL Simulation
这时就会自动打开仿真界面,默认情况下看不到波形显示界面。
在信息提示框中会打印出测试文件中编写的字符串。说明测试文件系统启动成功。
如果要显示波形时,将鼠标停留在任务栏时,会显示出波形显示界面的缩略图。用鼠标选中右边的波形显示界面。
切换到波形显示界面后,看不到任何波形,这时要点一下红色的stop按钮,停止仿真。
停止仿真后就可以看见波形了
默认情况下波形显示的比较大,看不清楚,需要点缩小按钮,将波形缩小到能看清为止。可以将led波形前面的加号点一下,展开led的波形,就能看到四个led的波形变化。
如果感觉显示的名称比较长的话,在工具栏中选择 Format ---- Toggle leaf Names,这样就可以隐藏名称的路径。
这样就只显示信号名称,不显示路径。看起来就会比较清晰。
默认情况下仿真会一直进行,除非点停止按钮才会停止仿真。如果想要仿真运行指定时间后自动停止。可以在仿真时间设置框中直接填写要运行时长。
比如想要运行10us后停止运行,直接输入10us。
点复位按钮
在出现对话框中直接点OK按钮,这时候波形显示区域就会全部变成空白,也是就是全部为黑色。
下面点开始运行按钮
这时软件运行10us后,就会自动停止。
如果想要显示其他波形的话,在信号设置界面上选中要添加的波形,然后单击鼠标右键,选择Add Wave
在波形显示界面就会看到添加的信号,但是此时后面是没有波形显示的。需要先复位一次,然后重新运行。
复位之后重新运行一次,这时就能看到新添加信号的波形了。
关于如何新建工程参考 FPGA学习---Quartus II新建工程
FPGA学习---Modelsim自动仿真相关推荐
- ZYNQ之FPGA学习----Vivado功能仿真
1 Vivado功能仿真 阅读本文需先学习: FPGA学习----Vivado软件使用 典型的FPGA设计流程,如图所示: 图片来自<领航者ZYNQ之FPGA开发指南> Vivado 设计 ...
- FPGA学习-5:仿真
在实际FPGA开发过程中 我们不可能直接将代码烧录进板子里进行测试 一是我们无法观察到其内部逻辑变换 而是万一代码中的逻辑有问题 直接进行甚至会导致芯片损坏 毕竟FPGA无法像单片机那样可以利用串口打 ...
- 脚本化Questasim/Modelsim自动仿真——脱离联合仿真
目录 引言 脚本仿真步骤分析 完整的脚本代码 保姆级使用教程 扩展 引言 之前对于工程一直采用的是vivado+questasim联合仿真的模式,对于大型工程来说这个是合适的,因为需要调用一些ip库和 ...
- 国产智多晶FPGA使用Modelsim仿真RTL设计方法
大家好,我是小梅哥,这里给大家介绍国产FPGA厂家"西安智多晶"微电子的FPGA使用Modelsim软件仿真智多晶FPGA的RTL设计的方法.本博客将陆续发表更多国产FPGA的开发 ...
- FPGA学习笔记(六)Modelsim单独仿真和Quartus联合仿真及signaltap使用
系列文章目录 一.FPGA学习笔记(一)入门背景.软件及时钟约束 二.FPGA学习笔记(二)Verilog语法初步学习(语法篇1) 三.FPGA学习笔记(三) 流水灯入门FPGA设计流程 四.FPGA ...
- FPGA学习笔记(五)Testbench(测试平台)文件编写进行Modelsim仿真
系列文章目录 一.FPGA学习笔记(一)入门背景.软件及时钟约束 二.FPGA学习笔记(二)Verilog语法初步学习(语法篇1) 三.FPGA学习笔记(三) 流水灯入门FPGA设计流程 四.FPGA ...
- FPGA学习之路—Vivado与Modelsim联合仿真
Vivado与Modelsim联合仿真 笔者在学习FPGA过程中遇到了如何使用Vivado和Modelsim进行联合仿真的问题,特此记录. 首先确定版本 笔者Vivado用的是2018.3版本,先是随 ...
- 小梅哥FPGA学习笔记——开发流程及仿真示例
开发流程及仿真示例 FPGA整体设计开发流程 1. 设计定义 2. 设计输入(Quartus II) 3. 分析和综合(Quartus II) 4. 功能仿真(modelsim-altera/mode ...
- FPGA学习altera 系列 第十七篇 自动售货机设计
今天给大侠带来"FPGA学习系列 altera"系列,持续更新.此学习心得是本人之前所写,所用设计软件为Quartus II 13.1,现Quartus II 新版本已更新到19+ ...
最新文章
- mybatis中config.xml文件的解析
- Python 计算机视觉(三)—— 数字图像处理基本操作
- Jenkins实战演练之Linux服务器快速搭建
- GDCM:对dicom文件的简单Scanner的测试程序
- [转]C#读写xml文件
- LeetCode 1834. 单线程 CPU(排序 + 优先队列)
- observable java_Observable基本用法(RxJava)
- [裴礼文数学分析中的典型问题与方法习题参考解答]4.3.14
- 加密技术,给邮件安全加上一把锁
- php图片缩放比例缩放,php图片等比例放大与缩小的方法举例
- js去空格的其他方法
- linux 控制音量大小,linux 控制音量大小
- SpringAOP的实现原理
- 联想计算机启天m6900价格,联想启天m6900内存及基本【参数介绍】
- 当我们在谈论HTTP队头阻塞时,我们在谈论什么?
- 朝花夕拾 - 2020 1024
- known_hosts有什么用?
- 应用计算机测定电阻伏安特性,实验: 应用计算机测线性电阻伏安特性
- Android 传感器开发详解
- error LNK2001: 无法解析的外部符号 _DllMainCRTStartup@12