Quartus II 18.x Modelsim仿真设置
本节内容介绍在如何在QuartusII 应用环境下设置modelsim仿真选项,并进行波形仿真。下面以四位乘法器为例介绍。
在QuartusII 18.x 的界面下建立两个文件,一个是设计文件mul4.v实现4×4的乘法器;另一个是testbench 文件tb.v,提供激励。
mul4.v文件如下:
module mul4
(
input [3:0] a,
input [3:0] b,
output [7:0] c
);
 
assign c = a * b;
 
endmodule
tb.v 文件如下:
`timescale 1 ns/1 ps
 
module tb
(
 
);
 
parameter PERIOD = 10 ;
 
reg CLK;
 
initial
begin
CLK = 1'b0;
#4;
 
forever
#4 CLK = ~CLK;
 
end
 
reg [3:0] a,b;
 
wire [7:0] c;
 
initial
begin
a = 4'b0000;
b = 4'b0000;
end
 
always @(posedge CLK)
begin
a <= a + 1;
if(a == 15)
b <= b + 1;
end
 
mul4 mul4_dut
(
.a (a),
.b (b),
.c (c)
);
 
endmodule
  • QuartusII 18.x的界面如下:
 
 
图 1
  • QuartusII仿真 仿真设置步骤如下:
  1. 在菜单Assignment 下选中Settings…,如下图:
 
 
图2
  1. 打开Settings 对话框
  2. 在General对话框设置Top-level entity 为tb(testbench 文件)
 
 
 
图3
  • 在EDA Tools setting 选中 Simulation,如图5
 
 
图5
在对话框中 Tool name –>Modelsim-Altera,其它按照图中内容选择。特别是最下方的选项,NativeLink settings… 里设置好 Compile test bench: 如图5,
如果你设计的testbench 文件名不是tb,需要点击test Benches ,选择对应的testbench 文件。如图6,
 
 
图6
在图6中 Test bench and simulation files部分,点击…部分,进行testbench设定并选取需要的test bench 文件。如:图7
 
 
 
图7
在图7 中,默认的是使用已设定好的testbench,如图中Existing test bench settings: 中Name–>tb, top Level Model name –>tb, test Bench File(s)–>tb.v.
如果首次使用,要点击New…按钮,进行新testbench设定,如图8:
 
 
图8
在图8中,testbench name–>tb, top Level Model in testbench file–>tb, 注意:这里的名称一定要与下一个步骤的文件名一致。如图9
在Simulation Period 的选项中,如果在testbench中的激励是有限项选择Run simulation utile all Vector stimuli are used,如本例在initial给的仿真只有有限项,如果是无限项如时钟驱动的仿真。
在test bench and simulation files 中点击…选文件,跳出对话框如图9.
 
 
图9
在图9中选择好对应的文件,如tb.v,这个文件将会被modelsim编译,形成激励条件。然后在图8中点击ADD按钮,加入库中如图10.
 
 
 
图10
图10中的文件名tb要和上面的test bench name以及top Level module in test bench 名字一致,本例中都是tb.
检查编译工具目录,点击菜单Tools->Options, General-> EDA Tool Options 如图11,
 
 
图11
 
  • 在Project Navigator 里选取mul4.v, 鼠标右键单击,Set as top level entity。单击工具栏图标Start Analysis and Elaboration, 如果有语法错误,则修改,直到没有错误为止。
  • 以上步骤设定好后,如图12,在主菜单Tools下,点击Run Simulation Tool ->RTL Simulation
 
 
 
图 12
如果tb.v没有错误,打开的界面应如下图13所示,点击红框内STOP按钮,
 
 
图 13
(3)选中波形区域,如图13,点击zoom in, Zoom out, 观察仿真波形。
Module sim的详细使用,请见modelsim仿真初步。

Quartus II 18.x Modelsim仿真设置的更多相关文章

  1. Quartus II——工程建立和常用设置

    Quartus ii是针对Altera FPGA的一款EDA软件,在此以一个led闪烁工程来简单说一下基本操作: 一.注意事项 Quartus ii最大的注意事项就一点:工程名称以及工程里面的文件名称 ...

  2. quartus II输入原理图及仿真步骤

    在Quartus II中输入原理图以及实现仿真是学习基本数字电路的好方法.下面以一个基本的D锁存器为例,在quartus II 13.0中一步一步来实现原理图输入以及仿真过程. 1,创建工程 指定工程 ...

  3. FPGA学习记录 - Quartus II 未使用管脚设置为三态输入

    未使用管脚设置为三态输入 Assignments  -> Device 或双击器件

  4. Quartus II 与 Modelsim 联调【转】

    Quartus II 9.0版本的时候软件还有自带的仿真工具,现在安装的是11.0以上版本,才发现 Quartus II 11.0以上取消了软件自带的波形仿真工具,因此需要波形仿真就要调用专业的仿真工 ...

  5. Altera Quartus II 15.0安装

       写在前面的话 开始学习之前,我们首先应该选择并安装好自己的开发工具,那么我们用什么软件来编译代码呢?梦翼师兄推荐给大家的是Altera 目前最新的Quartus II 15.0 版本,当然啦,这 ...

  6. 【转】Quartus II调用modelsim无缝仿真

    Quartus II调用modelsim无缝仿真  ★emouse 思·睿博客文章★ 原创文章转载请注明:http://emouse.cnblogs.com 本篇文章为转载,写的不错,最近在学mode ...

  7. Quartus II调用modelsim无缝仿真

    本篇文章为转载,写的不错,最近在学modelsim仿真,网上的教程很乱,把自己认为不错的整理贴出来,后面有机会会写个详细点的. Quartus 中调用modelsim的流程 1. 设定仿真工具 ass ...

  8. FPGA —— Quartus II 15.0 使用 ModelSim SE-64 2019.2 软件进行仿真

    Quartus II 15.0 使用 ModelSim SE-64 2019.2 软件进行仿真 ModelSim 仿真 Verilog HDL 时需要编写一个 TestBench 仿真文件,通过仿真文 ...

  9. (转)Quartus II和Modelsim的联合仿真(详细)

    这篇文章不需要在modelsim中建库.映射.建工程等一些繁琐的步骤,直接使用modelsim中的默认work库.使用quartus+modelsim联合仿真. 首先推荐一篇文章 http://www ...

  10. 设置 Quartus II 的仿真时间大于 1us

    Quartus II 仿真的默认时长是 1us. 设置时钟时看到 End time 想修改时长,把默认的 1us 改成 10us. 然后提示 End time 不合法.(只能设置为 0 到 1us) ...

随机推荐

  1. MQTT 发布/订阅模式介绍

    MQTT 发布/订阅模式 发布订阅模式(Publish-Subscribe Pattern)是一种消息传递模式,它将发送消息的客户端(发布者)与接收消息的客户端(订阅者)解耦,使得两者不需要建立直接的 ...

  2. 【uni-app】第2节HBuilderX未检测到手机问题(今天终于找到解决办法了,亲测可以)

        1.[问题描述]项目想在真机调试,开发者选项已开启USB调试,但是HBuilderX未检测到手机或模拟器     2.[解决办法]             2.1 找到HBuilderX安装目 ...

  3. matplotlib处理数据可是化的时候出现中文显示异常,为[][]的解决方法

    1.在使用matplotlib处理数据实现可是化操作的时候,处于语言习惯,经常会使用中文做图表备注,而中文显示会出现异常,如下图: 中文显示异常 那如何解决呢,实际上我们只需要在代码中添加两行内容即可 ...

  4. JQuery的dataTable实现分页

    关于dataTable基本使用有很多帖子说的很详细,在此不做详述. 最近使用dataTable处理服务器返回分页数据时遇到问题,问题解决后有一些心得分享一下: 1. 如果打开界面通过dataTable ...

  5. 内存参数kernel.shmmax和kernel.shmall的含义

    安装oracle数据库的时候,都要设置这个内核参数 vi /etc/sysctl.conf kernel.panic_on_oops = 1 1:程序出错,不继续运行 0:程序出错,继续运行 kern ...

  6. noi 2.1基本算法之枚举

    7647:余数相同问题 1.描述 已知三个正整数 a,b,c. 现有一个大于1的整数x,将其作为除数分别除a,b,c,得到的余数相同. 请问满足上述条件的x的最小值是多少? 数据保证x有解. 2.输入 ...

  7. docker的安装和命令

    一. 认识Docker 我们写的代码会接触好几个环境:开发环境,测试环境以及生产环境 开发环境:程序员开发代码的环境 测试环境:开发完的代码部署到测试环境 给测试人员进行测试 生产环境:测试完成后有运 ...

  8. 解析bean封装成BeanDefinition

    默认命名空间 1:parseDefaultElement 从代码中可以了解到默认的命名空间的一节节点主要是4种,import,alias,bean,beans private void parseDe ...

  9. spring-cloud-alibaba-dubbo踩坑记

    在https://start.aliyun.com/bootstrap.html下载了示例程序,用的版本如下: spring-boot:2.3.7.RELEASE spring-cloud-aliba ...

  10. 2.VS编写XML实例程序

    在VS中编写XML实例程序 1.如下,在 VS 中分别新建  XML 文件.XML 解析类.XML 实体类 2.在项目中代码,如下 (1)XML 文件(注:在 VS 解决方案资源管理器中选中 XML ...