modelsim仿真教程

合集下载

使用ModelSim仿真入门

使用ModelSim仿真入门

1.点击 ModelSim实验 下载实验文档,保存并解压到D:盘根目录下。

2.启动 ModelSim6.0,执行 File 菜单下的 Change Directory... 命令。

在随后弹出的对话框中,选择 D:\exam 文件夹,点击“OK”按扭。

3.执行 File->New 菜单下的 Library 命令,在随后弹出的对话框上,点击“OK”按钮,建立 work 库。

4.执行 File->New 菜单下的 Project 命令,在随后弹出的对话框的 Project Name 栏,输入 counter,点击“OK”按钮。

5.点击“Use Current Ini”按钮。

6.点击“Add Existing File”图标。

在随后弹出的对话框上,通过点击“Browse...”按钮,选中 D:\exam文件夹下的 tb.v、counter.v 文件,然后点击“OK”按钮。

点击 Add Item to Project 对话框的“Close”按钮。

7.在 Workspace 窗口里,点击右键。

在弹出菜单中点击 Compile 下的 Compile All 命令。

8.在 Simulate 菜单下,点击 Start Simulation... 命令。

9.在随后弹出的对话框中,将 Design Unit 项设为 work 库下 tb 单元,将 Resolution 设为 ns,然后点击“OK”按钮。

10.执行 View->Debug Windows 菜单下的 Wave 命令,打开 Wave 窗口。

11.在 Objects 窗口下,点击右键。

在弹出菜单下,点击 Add to Wave 下的 Signals in Design 命令。

12.在 Transcript 窗口里,输入 run 10 ms 命令。

13.进入 Wave 窗口,观察各个信号的波形,是否与原设计相符。

14.在 Wave 窗口里,双击 cnt 的波形,打开 dataflow 窗口,观察各个信号传递关系。

modelsim仿真流程

modelsim仿真流程

1、运行ModelSim,如果上一次使用ModelSim建立过工程,这时候会自动打开上一次所建立的工程;2、点击File->New->Project,在Project Name中我们输入建立的工程名,在Project Location中输入工程保存的路径,注意ModelSim不能为一个工程自动建立一个目录,这里我们最好是自己在Project Location中输入路径来为工程建立目录,在Default Library Name中为我们的设计编译到哪一个库中,这里我们使用默认值,这样,在我们编译设计文件后,在Workspace窗口的Library 中就会出现 work库。

这里我们输入完以后,点击OK;3、如果提示我们给定的工程路径不存在,是否建立该路径,我们的目的就是为工程建立一个新目录,因此,点击确定;4、点击Create New File可以为工程添加新建的文件,点击Add Existing File 为工程添加已经存在的文件,点击Create Simulation为工程添加仿真,点击Create New Folder可以为工程添加新的目录。

这里我们点击Create New File;5、我们在File Name中输入文件名称,Add file as type为输入文件的类型为VHDL、Verilog、TCL或text,这里我们使用默认设置VHDL,Folder为新建的文件所在的路径,Top Level为在我们刚才所设定的工程路径下。

点击OK;并在Add items to the Project窗口点击Close关闭该窗口;6、这时候在Workspace窗口中出现了Project选项卡,在其中有文件名.vhd,其状态栏有一个问号,表示未编译,我们双击该文件,这时候出现编辑窗口,在其中我们输入我们的设计文件7、点击File->Save,并退出该窗口(File->Close);8、在WorkSpace窗口的文件名.vhd上点击右键,选择Compile->Compile All;9、在脚本窗口中将出现一行绿色字体Compile of DivClkHDL.vhd was successful.,说明文件编译成功,在该文件的状态栏后有一绿色的对号,表示编译成功;10、下面我们开始仿真,点击菜单Simulate->Simulate,展开Design选项卡下的work库,并选中其中的behavioral,这是在Simulate中出现了work.实体名(behavioral)表示我们所要仿真的对象,Resolution为仿真的时间精度,这里我们使用默认值,点击OK;11、为了观察波形窗口,我们点击菜单View->Wave;12、这时候出现的Wave窗口为空,里面什么都没有,我们要为该窗口添加我们需要观察的对象,首先在主窗口而不是波形窗口中点击View-> Signals打开信号列表窗口,在改窗口中点击Add->Wave->Signals in Design,这时候在波形窗口中就可以看到这些信号了;13、下面我们就开始仿真了,在主窗口中输入命令对信号进行驱动仿真14、退出仿真,在主窗口中点击Simulate->End Simulation,会出现对话框,提示我们是否确认退出仿真,我们点击是退出仿真;15、仿真结果分析;。

Modelsim的仿真教程

Modelsim的仿真教程

ModelSim的仿真1.仿真的分类仿真过程是正确实现设计的关键环节,用来验证设计者的设计思想是否正确,及在设计实现过程中各种分布参数引入后,其设计的功能是否依然正确无误。

仿真主要分为功能仿真和时序仿真。

功能仿真是在设计输入后进行;时序仿真是在逻辑综合后或布局布线后进行。

1). 功能仿真( 前仿真)功能仿真是指在一个设计中,在设计实现前对所创建的逻辑进行的验证其功能是否正确的过程。

布局布线以前的仿真都称作功能仿真,它包括综合前仿真(Pre-Synthesis Simulation )和综合后仿真(Post-Synthesis Simulation )。

综合前仿真主要针对基于原理框图的设计; 综合后仿真既适合原理图设计, 也适合基于HDL 语言的设计。

2). 时序仿真(后仿真)时序仿真使用布局布线后器件给出的模块和连线的延时信息,在最坏的情况下对电路的行为作出实际地估价。

时序仿真使用的仿真器和功能仿真使用的仿真器是相同的,所需的流程和激励也是相同的;惟一的差别是为时序仿真加载到仿真器的设计包括基于实际布局布线设计的最坏情况的布局布线延时,并且在仿真结果波形图中,时序仿真后的信号加载了时延,而功能仿真没有。

后仿真也称为时序仿真或者布局布线后仿真,是指电路已经映射到特定的工艺环境以后,综合考虑电路的路径延迟与门延迟的影响,验证电路能否在一定时序条件下满足设计构想的过程,是否存在时序违规。

其输入文件为从布局布线结果中抽象出来的门级网表、Testbench 和扩展名为SDO 或SDF 的标准时延文件。

SDO 或SDF 的标准时延文件不仅包含门延迟,还包括实际布线延迟,能较好地反映芯片的实际工作情况。

一般来说后仿真是必选的,检查设计时序与实际的FPGA运行情况是否一致,确保设计的可靠性和稳定性。

2.仿真的作用1).设计出能工作的电路:因此功能仿真不是一个孤立的过程,其和综合、时序分析等形成一个反馈工作过程,只有这个过程收敛,各个环节才有意义。

【翻译】modelsim指南之基本仿真(digital logic)

【翻译】modelsim指南之基本仿真(digital logic)

Introduction本文将一步步实现以下基本仿真流程:1.创建设计工作库2.编译设计单元3.加载设计4.运行仿真本文用到的设计文件本文的范例是一个8位的二进制加法计数器和相关的测试文件。

保存路径:Verilog-<install_dir>/examples/tutorials/verilog/basicSimulation/counter.v and tcounter.v相关阅读用户手册的章节:设计库、Verilog和SystemVerilog仿真。

参考命令:vlib,vmap,vlog,vcom,view,run.创建设计工作库在你仿真前,必须先创建一个库并编译源码到这个库。

1.创建一个新目录并复制本文的设计文件。

Copy counter.v 和tcounter.v2. 启动modelsim。

a. windows下双击快捷方式启动,你将看到modelsim的欢迎对话框,单击Close.b. 选择File > Change Directory 指定到第一步创建的目录。

3. 创建工作库。

a. 选择File > New > Library.弹出一个对话框,可以指定库名等选项。

如图1。

图1 创建一个新库b. 在Library Name项输入work(如果它没有自动输入)。

c. 单击OK.modelsim创建了一个目录work并写了一个名为_info的文件到这个目录。

这个_info文件必须保持在work文件夹以区分他是modelsim的库。

不要从你的操作系统里修改这个文件夹里的内容;所有操作应该在modelsim里进行。

modelsim也把work库添加到库窗口(图2)并记录库映射作为未来参考(modelsim.ini)。

图2当你在第3步单击确定后,Transcript窗口显示以下内容:vlib workvmap work work这两行命令等于你的菜单操作。

编译设计单元创建工作库后,接着就准备编译你的源文件。

modelsim仿真流程

modelsim仿真流程

modelsim仿真流程
ModelsIm仿真流程 ModelSim是一个功能强大且广泛使用的数字电路和模拟软件。

它能够模拟各种不同的电路,包括FPGA、ASIC、流片等,并且可以仿真VHDL、Verilog和SystemC等语言编写的代码。

本文将介绍ModelSim的仿真流程。

1. 建立仿真环境首先,我们需要创建一个仿真环境。

这意味着我们需要创建一个Project文件夹,将仿真所需要的所有文件(包括设计文件、仿真模型以及测试文件等)都放在里面。

我们可以选择使用ModelSim自带的Project Manager工具或者直接使用终端命令行来完成这个工程。

2. 编译设计文件下一步是编译设计文件。

这意味着我们需要把设计文件转换为ModelSim可以理解的仿真模型。

我们可以使用vlib命令来建立一个仿真库,然后使用vlog命令来编译设计文件。

编译完成后,我们需要使用vsim命令进入仿真环境。

3. 进行仿真在仿真界面中,我们可以加载测试文件,然后使用run命令来进行仿真。

这将模拟电路在一个虚拟的环境中运行,并产生仿真结果。

我们可以使用ModelSim提供的信号跟踪和波形查看工具来观察电路的运行状态并分析仿真结果。

4. 仿真结束仿真完成后,我们可以使用exit命令退出仿真环境,并使用ModelSim提供的波形分析和统计工具来评估仿真结果。

如果需要进行更详细的分析,我们可以将波形数据导出到其他工具进行进一步处理。

总之,ModelSim是一个非常强大的数字电路和模拟软件。

掌握其基本操作和仿真流程,可以帮助我们更高效地进行数字电路设计和开发工作。

EDK工程ModelSim仿真流程

EDK工程ModelSim仿真流程

EDK工程ModelSim仿真流程前期准备:1.已经安装软件工具:Xilinx ISE 11.1ModelSim 6.5Debussy5.4v92.EDK和ModelSim6.5联合仿真库设置完毕3.EDK和ModelSim6.5可以生成”.FSDB”文件,供Debussy波形查看器观察波形以参加电子设计竞赛的H.264工程为例,进行仿真演示。

1.首先确保工程simulation文件夹下没有文件。

2.如果有文件,要通过如下方式清除,不能直接删除。

3.清除后,点击Simulation Generate Simulation HDLFiles,重新生成工程仿真的库文件。

Console控制台显示生成了Simulation ModelSimulation文件夹下生成了一堆文件。

4.在Simulation文件夹下,找到“system_tb.v”文件,打开,添加如下语句initial begin$dumpfile("aa.fsdb");$dumpvars;end以便仿真时,生成fsdb文件。

5.返回XPS界面,选择Simulation->Launch HDL Simulator,通过这种方式,打开了ModelSim6.5软件6.打开了ModelSim6.5软件,如下图所示7.打开Simulation文件夹中的system_setup.do文件,该文件中存放了系统生成的仿真脚本语句。

8.返回ModelSim6.5,在命令行下先输入“do system.do”命令。

9.输入如下命令“vsim -novopt -t ps D:/modeltech_6.5/win32/novas.dll -Lxilinxcorelib_ver -L secureip -L unisims_ver +notimingchecks system_tb glbl”理由(复制system_setup.do文件中第二条脚本语句”vsim -novopt -t ps -L xilinxcorelib_ver -L secureip -L unisims_ver +notimingchecks system_tb glbl”,注意到要仿真生成fsdb波形文件,所以在ps和-L前添加一条新的语句”D:/modeltech_6.5/win32/novas.dll”,要链接这个“novas.dll”动态链接文件。

modelsim使用教程

modelsim使用教程

modelsim使用教程ModelSim是一款常用的硬件描述语言(HDL)仿真工具,本教程将向您介绍如何使用ModelSim进行仿真。

步骤1:安装ModelSim首先,您需要下载和安装ModelSim软件。

在您的电脑上找到安装程序并按照提示进行安装。

步骤2:创建工程打开ModelSim软件,点击"File"菜单中的"New",然后选择"Project"。

在弹出的对话框中,选择工程的存储位置,并为工程命名。

点击"OK"完成工程创建。

步骤3:添加设计文件在ModelSim的工程窗口中,右键点击"Design"文件夹,选择"Add Existing File"。

然后选择包含您的设计文件的目录,并将其添加到工程中。

步骤4:配置仿真设置在工程窗口中,右键点击"Design"文件夹,选择"Properties"。

在弹出的对话框中,选择"Simulation"选项卡。

在"Top level entity"字段中,选择您的设计的顶层模块。

点击"Apply"和"OK"保存设置。

步骤5:运行仿真在ModelSim的工具栏中,找到"Simulate"按钮,点击并选择"Start Simulation"。

这将打开仿真窗口。

在仿真窗口中,您可以使用不同的命令来控制和观察设计的行为。

步骤6:查看仿真结果您可以在仿真窗口中查看信号波形、调试设计并分析仿真结果。

在仿真窗口的菜单栏中,您可以找到一些常用的查看和分析工具,如波形浏览器、信号分析器等。

步骤7:结束仿真当您完成仿真时,可以选择在仿真窗口的菜单栏中找到"Simulate"按钮,并选择"End Simulation"以结束仿真。

Modelsim仿真流程-经验总结

Modelsim仿真流程-经验总结

Modelsim仿真流程-经验总结1.Modelsim简介略。

2.modelsim仿真流程:modelsim基本的仿真流程包括建立库、建立工程并编译、仿真、调试、但在libero环境中运行modelsim时,软件自动映射库和生成工程文件。

其中功能仿真、综合仿真以及后仿真分别映射presynth、postsynth和postlayout库。

基本流程是:建立工作库→编译源代码→启动仿真→分析、调试。

2.1建立库并映射在modelsim中,任何使用VHDL、Verilog HDL、SystemC等语言实现的设计,都被编译到一个库中。

♥方法一:File>New>Library选择新建并映射到该库;♥方法二:在modelsim>提示符下运行命令vlib work2-建立库,vmap work work2-建立映射库;2.2建立工程Modelsim仿真需要建立自己的工程,同时modelsim还提供了文件夹管理工程的功能。

♥step1:File>New>project,并指定库文件名;♥step2:新建文件或导入文件;2.3编译文件建立好工程后,使用compile功能对源文件进行编译。

Libero环境启动modelsim时,系统执行run.do脚本文件自动编译源文件。

♥鼠标右击文件,选择compile All对所有的工程文件执行编译操作;♥启动仿真,使用simulation>start simulation>选择design选项卡功能使modelsim进入仿真状态,之后可以运行仿真。

在libero环境下,运行modelsim直接从运行仿真这一步骤开始。

♥运行仿真可以设置仿真时间或选择仿真全部♥tcl命令:do run.do –当设计修改后,使用此命令重新导入设计;Do wave.do-打开波形列表文件,或者向当前波形添加列表;Restart-复位当前仿真,从0时刻重新仿真;Run 1ms-运行仿真1ms时间;Run all-运行全部的仿真;在libero环境下,可以自己编写脚本文件代替run.do文件,在项目比较大的情况下可以大大简化仿真的操作。

modelsim新手入门仿真教程

modelsim新手入门仿真教程

Modelsim新手入门仿真教程1.打开modelsim软件,新建一个library。

2.library命名3.新建一个工程。

3.出现下面界面,点击close。

4.新建一个verilog文件键入主程序。

下面以二分之一分频器为例。

文件代码:module half_clk(reset,clk_in,clk_out); input clk_in,reset;output clk_out;reg clk_out;always@(negedge clk_in)beginif(!reset)clk_out=0;elseclk_out=~clk_out;endendmodule编辑完成后,点击保存。

文件名要与module后面的名称相同。

5.再新建一个测试文件,步骤同上面新建的主程序文件,文件名后缀改为.vt程序代码如下:`timescale 1ns/100ps`define clk_cycle 50module top;reg clk,reset;wire clk_out;always #`clk_cycle clk=~clk;initialbeginclk=0;reset=1;#10 reset=0;#110 reset=1;#100000 $stop;endhalf_clk m0(.reset(reset),.clk_in(clk),.clk_out(clk_out));Endmodule6.添加文件,编译文件先右键点击左边空白处,选择add to project→existing File选择刚刚新建的两个文件。

按ctrl键可以同时选择两个,选择打开,下一步点击ok7选中其中一个,右键,选择complie→complie all出现两个勾,说明编译通过。

出现×,说明文件编译出错,双击×,可以查看错误。

8.终于可以仿真了选择simulate→start simulate。

选择刚刚新建的库里面的top,或者测试文件名称,左下角的enable optimization一定要去掉勾,有勾的画不会出来波形,一定要去掉勾!一定要去掉勾!一定要去掉勾!(本人也不清楚原因,都是初学者,嘻嘻)跳出界面,右键测试文件,选择如下图接下来,选择仿真,run→run all点击缩小键,如图,就可以看到波形啦到此结束!初学者,如有错误,欢迎指出。

modelsim后仿真教程

modelsim后仿真教程

1.3.2后端仿真(1)在源代码窗口中选择【adder】模块,然后在相关的程序窗口【Process】中单击【Implement Design】左侧的“+”号展开程序组,单击【Place & Route】左侧的“+”号展开程序组,双击【Generate Post-Place & Route Simulation Model】,生成后端仿真所需要的文件,如图1-21所示,编译成功以后,如图1-22所示。

图1-21图1-22(1)双击桌面上的Modelsim SE6.0的快捷图标启动Modelsim 6.0SE仿真开发环境,或者从Windows XP操作系统中选择【开始】/【所有程序】/【Modelsim SE 6.0】/【Modelsim】命令启动Modelsim,如图1-23所示。

图1-23(2)新建后仿工程【adder】,如图1-24所示。

在【Project Name】一栏中输入工程名称【adder】,在【Project Location】中选择默认路径,如图1-25所示,单击,进入添加仿真文件页面,如图1-26所示。

图1-24图1-25图1-26(3)在图1-26中选择【Add Existing File】,进入文件添加页面,如图1-27所示。

单击【Copy to project directory】,将所需要添加的存在文件复制到仿真工程【adder】的文件夹下。

单击,选择需要添加的文件集。

后端仿真需要三个.v文件。

这三个文件分别是【test_adder.v】、【adder_timsim.v】、【glbl.v】,其中,【glbl.v】文件在Xilinx安装盘:\Xilinx\verilog\src文件夹里。

然后,打开【adder_timsim.v】文件,把sdf文件的相对路径netgen/par/adder_timesim.sdf改为绝对路径D:\program\XILINX10.1\ISE\study\adder\netgen\par,如图1-28所示。

ModelSim后仿真 详细流程介绍

ModelSim后仿真 详细流程介绍
综合后门级功能仿真,综合 工具给出的仿真网表已经是 与生产厂家的器件的底层元 件模型对应起来了,可估计 门延时对电路带来的影响。
考虑的是理想化的情况, 没有门延迟,没有布线延 迟。只关注代码的行为级 功能描述是否正确。
只能估计门延时,不能估计线延 时,仿真结果和布线后的实际情 况还有一定的差距,并不十分准 确。由于目前综合工具比较成熟, 一般省去此环节的仿真,直接进 行下一步仿真。
延时信息
目录
仿真的基本概念
后仿真前的基本准备工作
后仿真的基本操作步骤
后仿真前的基本准备工作
ModelSim库
库文件,是指已经编译通过的设计文件的总体。 ModelSim中有两种库类型:
工作库
1.库的内容会随着使用者 更新设计文件和重新编译 而变化; 2.存放当前设计文件编译 Description of the business 后产生的设计单元; 3.编译前必须先创建好工 作库; 4.每次编译只允许有一个 工作库; 5.默认的工作库名是work
仿真的基本概念
什么是仿真?
仿真的一般性含义是:使用EDA工具,通过对设计 的实际工作情况进行模拟,验证设计的正确性。
仿真过程,是正确实现设计的关键环节,用来验证设计者的设 计思想是否正确,及在设计实现过程中各种分布参数引入后, 其设计的功能是否依然正确无误。
仿真的基本概念
什么是仿真?
仿真的一般性含义是:使用EDA工具,通过对设计 的实际工作情况进行模拟,验证设计的正确性。
LPM
altera_mf
调用了 lpm 元件的设计仿真时需要
调用了 Altera 的MegaFunction的设计仿真时需要
调用了 Altera 的原语(primitive )的设计仿真时需要

使用ModelSim的仿真步骤

使用ModelSim的仿真步骤

使用ModelSim的仿真步骤:
1.建立工程:选file/new/project菜单,打开Create Project窗口.
填Project Name栏,为你的工程启一个名子.
按Browse按纽,为你的工程指定一个盘上目录,作为以后工程文件的存放位置.
指定缺省库名为Work库.
2.在出现的ADD ITEMS TO THE PROJECT窗口中选Create New File为当前工程加入一个新建文件,或选Add existing File为当前工程加入一个已存在的文件.
3.选Compile/compile All对当前设计工程进行编译.
4.选Simulate/Star Simulation菜单项,打开仿真器.
5.在仿真器中选Design页,点击WORK页前的加号,打开WORK 库,选一个仿真文件,选好后,点击右下脚的OK按纽.
6.在出现的Object窗口中,会有芯片的引脚列表.选一个引脚,压鼠标右键,弹出一菜单,在其中选Add to wave/Selected Signal菜单项,可将引脚对象加入到Wave窗口中.重复上述过程,将全部引脚加入到Wave波形窗口中.
7.在WAVE中,选一个引脚,用WAVE窗口的工具画加在引脚上的波形.
8.画完输入引脚的波形后,输入RUN –ALL,回车,执行仿真.
注:上述仿真过程,可用命令:
vsim work.filename
启动仿真窗口.
view wave
打开波形窗口
add wave –dec *
加入所有波形信号,以十进制方式force
为每个引脚加入驱动信号
run –all
执行仿真任务。

Modelsim 仿真步骤总结

Modelsim 仿真步骤总结

Modelsim 仿真步骤总结Modelsim 仿真主要有以下三个方面:各版本的方法大体一致。

(1)建立库并映射库到物理目录;(2)编译源代码(包括testbench);(3)执行仿真;下面具体演示每一步的操作方法及流程,为力求简洁,其中有多种操方法的只介绍一种。

一)建立库的演示:步骤为——启动modelsim>点击file菜单>(Change Directory)>new>(project)>library.注括号内的步骤非必须。

1.1)启动modelsim;(1.2)点击file菜单,此时若需更改路径,可以点击其中的Change Directory.(注modelsim会自动默认路径。

我们也可以在1.1步骤之前建立一个文件夹用于modelsim的工程,再将路径更改到我们新建的文件夹路径。

)(1.3)点击file子菜单中的new,选择project用于新建立一个modelsim工程。

(虽然此步非必须,但是建立一个新工程有益于接下来整个仿真文件的管理。

)1.4)点击file子菜单new,再点击new下的library,用于建立一个库。

(仔细观察1.3步,新建工程的同时亦可建立库)。

至此,modelsim仿真第一大步建立库的工作完毕。

二)编译源代码(包括testbench):大家都已知道在quartus中编译源代码的方法,这里说明一下在modelsim中编译源代码及testbench的方法。

步骤为——建立一个新工程(同时建立库)后,会自动提示你四个选项。

如图:选create new file后提示对话框,(也可以在有源文件的情况下选择add existing file到工程中。

例如我们用quartus写好文件后,可以用此方法将quartus中的文件添加到modelsim工程中来)让你命名你即将创建的新文件,完毕后,会自动出现一个空白的编辑窗口,在那里输入源代码和testbench。

Modelsim仿真详细教程

Modelsim仿真详细教程
(1)打开在3.1.4节中建立的工程pIP.
.10进制计数器测试激励文件的建立 1 .10进制计数器测试激励文件的建立
(2)为了方便仿真,有必要将div30模块进行修改。因 为div30是30,000,000分频,这么大的分频系数, 难于仿 真,所以将div30模块中的分频系数做如下改动。
process(clkin,reset) variable cnt : integer range 0 to 3 :=0; --将分频系数改为3,即6分频; begin if reset = '0' then cnt :=0 ; Reg_clk <= '0'; elsif rising_edge(clkin) then cnt := cnt + 1; if cnt = 3 then cnt := 0; Reg_clk <= not Reg_clk ; end if; end if; end process;
FPGA系统设计与实践
第四章 功能仿真
第四章 功能仿真
内容提要
功能仿真(Function Simulation)的作用是对 源代码进行编译。本章介绍了Model Technology 公 司的Modelsim XE II v5.6e的主要结构、属性设置、 Modelsim XE II v5.6e与ISE5.2的软件接口,测试激 励文件的建立以及Modelsim仿真分析方法。Altera 公司QuartusII3.0仿真器(Simulator) 的主要结构、属 性设置以及仿真分析方法。
信号窗口 波形窗口
变量窗口
数据流窗口
列表窗口
进程窗口
主窗口
主窗口是Modelsim的核心窗口,在缺省(默认)状 态下,在启动Modelsim时会自动打开。主窗口分为 工作区和脚本区两部分。在工作区,可以很方便地 对当前工程的工作库以及所有数据集合进行控制。 在脚本区,可以输入Modelsim的各种命令,命令执 行后会反馈执行后的信息,使用户了解执行的实际 情况。

modelsim怎么仿真波形

modelsim怎么仿真波形

modelsim怎么仿真波形ModelSim是一款用于硬件描述语言(HDL)仿真的软件,它支持Verilog、VHDL等多种硬件描述语言。

使用ModelSim进行波形仿真的基本步骤如下:1.新建工程:首先,在ModelSim中创建一个新的工程。

点击左上角的“File”菜单,选择“Project”,然后在弹出的界面中输入工程名字和选择工程路径,点击“OK”完成新建工程。

2.新建或导入工程文件:完成新建工程后,会弹出添加文件界面。

你可以选择“Create New File”来新建工程文件,或者通过“Add Existing File”来加入已有的工程文件。

3.文档编译:添加文件后,文件会有一个问号表示状态未知,需要右键点击选择“Compile all”进行编译。

编译成功后,文档显示为对勾。

4.开始仿真:在“Project”界面点击“Simulate”后,选择“start simulation”。

并选择你的测试文件(tb)作为仿真主文件。

注意,若在“Library”界面直接点击上方的Simulate可能会报错,需要在该界面的work下,选择需要仿真的文件,右键进行Simulate。

5.添加仿真波形:在仿真阶段,会自动出现sim界面。

此时,你需要手动添加观测信号。

在出现的objects窗口中选择你想观察的信号,右键选择“Add to”,然后选择“wave”,再选择“selected signal”。

6.调整仿真时间并运行仿真:你可以设置仿真时间,然后点击仿真图标开始仿真。

仿真结果会在波形窗口中显示出来,你可以放大或缩小波形以便观察。

以上就是在ModelSim中进行波形仿真的基本步骤。

如果你在使用过程中遇到任何问题,建议查阅ModelSim的官方文档或者在线教程,这些资源提供了详细的帮助和指导。

Modelsim的功能仿真的详细过程适合初学者

Modelsim的功能仿真的详细过程适合初学者

11 看波形文件为
12 右击输出信号
13 在 Format 中点击 Analog,观看模拟信号,改变宽带
14 正旋波
6.
选择 Compile > Compile,出现如下窗口。同时选中 4 个文件。
7 打开 work 编译 双击 wave_top,wave_top 相当与 test加波形文件
10 在 Transcript 栏中打 run 10us (自己根据实际的情况)
Modelsim 中的功能仿真
1. modelsim 中库的编译 1. 自己新建一个文件夹,如 D:\modelsimpro\modelsim,将 需要的文件拷贝到 (如果用到了 IP 核, 该文件夹下。 那要把 altera_mf.v 加入, 还要把 cycloneii_atoms.v 所用的) 2. 点击 modelsim 的图标,打开 modelsim 的界面窗口。 3. 选择 File > Change Directory,选择步骤 1 中的目录,点击 OK。 4. 选择 File > New > Library。 5. 在 library name 与 library physical name 两栏中均填 work.点击 OK。

modelsim基本仿真流程

modelsim基本仿真流程

modelsim基本仿真流程ModelsSim基本仿真流程ModelsSim是一款常用的数字电路仿真工具,主要用于验证和调试硬件设计。

本文将介绍ModelsSim的基本仿真流程,帮助读者了解如何使用ModelsSim进行数字电路仿真。

一、创建工程我们需要创建一个ModelsSim工程。

在ModelsSim界面上方的菜单栏中选择"File",然后选择"New",再选择"Project"。

在弹出的对话框中,输入工程名称和工程路径,点击"OK"按钮即可创建工程。

二、添加设计文件在创建好的工程中,我们需要添加要仿真的设计文件。

在ModelsSim界面左侧的"Project"窗口中,右键点击工程名称,选择"Add Existing File"。

然后选择要添加的设计文件,点击"OK"按钮即可将设计文件添加到工程中。

三、设置仿真编译选项在添加完设计文件后,我们需要设置仿真编译选项。

在ModelsSim 界面左侧的"Project"窗口中,双击工程名称,打开工程设置窗口。

在"Compile"选项卡中,选择仿真模型和仿真器,并设置仿真选项。

根据需要,可以选择不同的仿真模型和仿真器,以及设置仿真时钟周期等参数。

四、编译设计设置完仿真编译选项后,我们需要编译设计。

在ModelsSim界面左侧的"Project"窗口中,右键点击工程名称,选择"Compile"。

ModelsSim将会对设计文件进行编译,生成仿真所需的文件。

五、创建仿真波形在编译设计后,我们需要创建仿真波形。

在ModelsSim界面下方的"Wave"窗口中,点击"New Wave"按钮。

在弹出的对话框中,选择要仿真的信号和时钟,并设置仿真时间范围。

Modelsim工具的一般仿真流程

Modelsim工具的一般仿真流程

Modelsim工具的使用仿真流程1.建立work库通常modelsim在使用的时候,和大多数开发软件一样,第一步先建立一个工程。

而modelsim在建立工程之前,一般都要建立一个工作库(library),命名为work,仿真的时候工程就运行在这个库里面。

通常modelsim在第一次运行的时候,并没有work这个库文件,所以没有work库的话,先建立一个work的library,再建立新的工程。

一般的工程路径设置如下:project 放置FPGA的工程文件,source 放置源代码(ipcore, 建议放在工程的根目录下,有同事发现ipcore改变其路径,仿真的时候会出错,并且工程里面要手动添加IP核的文件),simulation 放置modelsim的仿真工程。

新建一个work库。

File New- Library^Hamc Type|旳thlibrary □fate 冋叶 djibs/dltera 兰沖忡阿」iflibraryGsfrfr^r^/vM 」ih 叩袖暮 A 』I F土扛就am_nF 』Pt Library冷忡怕.VFTl ihr^iy U Mr 耳丫日皿 ^clgrsiLibrary U fJter 耳什 d.libqkydbMii r 車 cyclorigii^ver 匸• fbalfi 讨 bIpm Library C :fafcsr^/Y«riag 」ts|cy!cbn“i 』er Library 押 aOEL.TECHT 简 adfbdb Library C; I'dtere/Yf-dJib 訓 pm r 血 IfTTl fCF Library Cii'dterc/Ycrioq itsl|prn vei (K nr 匚E 」b (emipo) Library JHODEL lEO-i/.JirEiJb —机 rrtlA/m 上rrtCWm Library Library SwaEiBL_TEOf.,^IIi J1MCiCiELJEOif,.jbm-2J 2 4-jt^ nrtPA 上虫nrtU^F Library 4MaOELJBOf..#ia_lb Library ^OCEL_lKHf../upfJlb 七 >[■ nrtlJ /in Library 4HariELjEa-v.,Aj^-i.]d 二九 Oiv^fn Libr^^y jH0CEL_lEair..1iO5V'7TTT jrtL 驹肚哼 Ubhfiiy C ; |前岀i ■訝计M 」ibs/sMEef 4t 珂aS_Vd Llbifliy C^i'dlsre/Yri 1匚电_11&4护1口_样「 + A L #_血 ULr^ryinciriELjrciir.js^sd 二 4^ vtaLocu Library iNUDEL.IECHf ../Vt^OCO 二 jL IPlibrary钿 tWEL-TECHLQ*_ 血 iTcddsinni 」ti library 榔口DEL JEO#. /rrcrtslcm 」H函山,ddlibrary $WCiLELJEO*../£td 上 JtL ctdjdsssIc-ptrMt Library iMQLEL_7EO+skps* 抄it丄血 a^ncpsyi Library 4b<GDEL_7EQf ii/syncpsyi 工忙 vsrilog Library!|NCi[jEL_IE'CHf../voracgHl Ubraiy — ■pgM 丄::灯血刃向dl H K , ±O -I Mirai-dtei e_rf dtei 0jrf_W5T J L 业 dteia_^-r +札i y 叭戸■ 1血ryderal ■湘于 土丸1幻畝惟」血 ± -fl.晌 1 JL 布肝■榆 血 (mptr) t-血 + 脚.fil":皿1 七 J^lntFAffltllTmtUMnO5>*TTi占艸 列4_¥・■5i,i_^fd MtdiZDEO■see _____ tn 处加i 」t> 1,直泅4- 血 ^itd rfevd-^rrTS^I : t_ 刊「即裤 £ 血 Wl IJIJtrtrra v UbTs y Lltrof!/li 啊母章 Llbrsr/ Libi Lib ary Libitr^ Llbrcrj^ Ubi-arji Libi BTy Libror^ Lihi aru LltfWy Li 輛屮 Hfeiar^ Ubtar^ Uts a 3LlbiSTy Liti it JLibi CT 'JLltieryUbiery 心灯t 冋vMIJte/dm U.Ttinqghdl Ib5]l 或er 士 nf U idtei ■5,lm1kgJt5jdiiT!r3_Tf_ver ■"LMlteldJ^lkg 」二吋*阳 d.-'if!C\ i^tti 时』hdl 」b5」cytkKiH* G :jairHi^iv**lkgJr^ci<l0rFl!_wi 『Ibsjdbgrs^nfC ; t^tri ■5,lwUcgJb^!dii ,?r3_Tf_ver口 i^tei 讯 \rhdl 」b5」cytki 『前口円忙叭 FijIVfldlrgJr^cyclDnFlI.^『刚建立的work 库是空的,因为里面什么东西都没有,但是当添加了相应的文件后,编译一 次,work 就会有容了。

Modelsim6.5基本仿真步骤

Modelsim6.5基本仿真步骤
1、建立文件夹,准备文件
复制以下路径文件到新建的仿真目录下(我的仿真目录是/我的文档/MODELSIM/BASICSIMULATION),
Verilog–<install_dir>/examples/tutorials/verilog/basicSimulation/counter.vand tcounter.v
a)在主窗口中选择Simulate > End Simulation
b)输入命令vsim -novopt counter
14、打开之前生成的波形文件
a)输入view wave
b)选择File > Load
c)双击waveedit.do文件
15、导出刚才创建的波形
a)第一种是导出格式为HDL格式的test bench文件。
i.File > Export > Waveform
ii.选择Verilog Testbench(你用什么就选什么)
iii.如果必要的话输入1000for End Time
iv.在文件名中输入“export”然后点OK
v.
vi.通过以上步骤,modelsim就根据波形自动创建了一个名为export.v的test bench文件。
*/
for (i = 4'b0; ((carry == 4'b1) && (i <= 7)); i = i+ 4'b1)
begin
increment[i] = val[i] ^ carry;
carry = val[i] & carry;
end
end
endfunction
always @ (posedge clk or posedge reset)

modelsim 10仿真教程

modelsim 10仿真教程

Modelsim仿真教程一、前期准备1、正确安装好modelsim和quartus软件。

我用的平台的版本是Modelsim SE10.1和Quartus II10.1。

2、在ModelSim中加入Quartus提供的仿真库在ModelSim中进行仿真需要加入Quartus提供的仿真库,原因是下面三个方面:·Quartus不支持Testbench;·调用了megafunction或者lpm库之类的Altera的函数;·时序仿真要在Modelsim下做仿真。

下面以Altera器件为例,介绍如何在ModelSim中加入Altera的仿真库,Quartus II 软件中自带有Altera的仿真库,只要把它拿到ModelSim中去编译一下就可以了,具体步骤如下:(1).设置仿真库路径打开ModelSim安装目录(我用的是ModelSim SE10.1版本,安装在C:\modeltech_10.1目录下),新建文件夹altera,我们就在该目录下存放预编译的各种Altera库。

启动ModelSim SE,在主窗口执行【File】/【Change Directory】命令将路径转到altera文件夹。

(2).新建库Quartus II中提供的仿真库文件存放的路径是....\altera\10.1sp1\quartus\eda\sim_lib,每个库文件提供了两种形式:.v(Verilog)格式和.vhd(VHDL)格式两种,根据你所用的语言选择使用。

用于编译资源库的文件有220model.v,220model.vhd,220pack.vhd,altera_mf.v,altera_mf.vhd,altera_mf_components.vhd,altera_primitives.v,altera_primitives.vhd,altera_primitives_components.vhd文件。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

本教程使用软件的下载链接如下:/download/quartus_modelsim_setup.zipMolelsim仿真使用教程——利用quartus生成网表文件Mentor公司的ModelSim是业界最优秀的HDL语言仿真软件,它能提供友好的仿真环境,是业界唯一的单内核支持VHDL和Verilog混合仿真的仿真器。

它采用直接优化的编译技术、Tcl/Tk技术、和单一内核仿真技术,编译仿真速度快,编译的代码与平台无关,便于保护IP核,个性化的图形界面和用户接口,为用户加快调错提供强有力的手段,是FPGA/ASIC设计的首选仿真软件,接下来以一个简单的例子介绍modelsim的基本使用方法。

第一步:建立工程,该过程与quartus使用的教程大部分是一样的,区别如下:在simluation选项中选择MoselSim-Altera作为仿真工具,fomat中的选项根据编程语言进行选择,本教程以VHDL为例。

第三方的仿真工具所以在此选择第二步:新建文件:新建一个源文件,保存为led.vhdlibrary ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;entity led isport(led_out : out std_logic_vector(7 downto 0);clk : in std_logic;rst_n : in std_logic);end led;architecture behavior of led issignal light : std_logic_vector (7 downto 0);beginprocess(clk,rst_n)beginif(rst_n = '0')thenlight <= "00000010";elsif(clk'event and clk ='1' )thenif(light = "10000000") thenlight <= "00000001";elselight <= light(6 downto 0)& '0';end if;end if;end process;led_out <= light;end behavior;新建一个testbench 文件,保存为testbench.vhd(testbench是电路的激励文件,在后面章节会详细介绍,这里仅仅作为软件的演示不具体介绍testbench的设计过程):library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;use ieee.numeric_std.all;entity testbench isend testbench;architecture behavior of testbench iscomponent ledport ( clk : in std_logic;rst_n : in std_logic;led_out : out std_logic_vector(7 downto 0));end component;--input signalsignal clk : std_logic := '0' ;signal rst_n : std_logic :='0';--output signalsignal led_out : std_logic_vector (7 downto 0);--contstantconstant clk_period : time := 20ns;begincp1 : led port map (clk =>clk,rst_n => rst_n,led_out => led_out );clk_gen : processbeginclk <= '1';wait for clk_period/2;clk <= '0';wait for clk_period/2;end process;rst : processbeginrst_n <= '0';wait for 20ns;rst_n <= '1';wait for 200ns;wait;end process;end;然后对顶层模块led.vhd进行检查语法和编译,在编译的窗口出现EDA Netlist Writer 是表示第三方仿真工具所需要用到的网表文件(Netlist)成功生成。

在信息栏中会出现以下信息:led.vho 就是网表文件,led_vhd.sdo是时序仿真时候的时序文件(里面有线延时,寄存器延时等信息)网表文件和时序文件都已经生成完成,接下来开始使用modelsim进行仿真。

第三步:利用modelsim做仿真:1,在上一个步骤quartusii所建立的工程所保存的硬盘位置目录中多出一个文件夹:仿真需要的文件就在里面2,打开modelsim,新建工程(file>new>project),选择好保存路径和工作名称,点击OK:编译成功之后综合布线都成功当选择第三方工具的时候就会产生该项目,表示生成了其他软件所需要用到的vho和sdo文件建立Modelsim仿真工程。

3,添加文件:选择Add Existing File,将上步骤中simulation中的四个文件中的led.vho和led_vhd.sdo复制并添加到工程中,点击OK,然后以相同的方式将上面建立的testbench.vhd也复制到工程中,操作如下:该步骤实现将led.vho,led_vhd.sdo,testbench.vhd三个文件添加到仿真工程中,工程栏出现以下窗口:4,编译:两个问号表示在modelsim中还没有编译,所以接下来我们进行编译,点击快捷工具栏中的开始进行编译,信息栏中出现以下窗口表示编译已经成功:创建新文件添加已有文件到工程中,因为之前有综合出来的vho文件,直接添加到工程中选中则将文件复制到本工程中浏览文件,将led.vho,led_vhd.sdo,testbench.vhd添加到工程中5,功能仿真(主要是观察波形看看我们的逻辑是否正确):(1),点击仿真按钮,work下拉中找到testbench,选中后点击OK:(2)点击ok选中testbench对波形进行放大缩小,和整体显示波形窗口对应的信号(3)在testbench点击将led_out前面的加号,之后出现窗口:点击(run all),然后点击停止仿真()查看仿真波形:黄色标尺所在位置的数值执行run命令后的结果波形可观测到的信号(4)上个步骤并不是一次性就能够得到上图的现实效果,需要通过各个功能按键来选择不同的观察效果,要熟悉下列按键的使用:波形的放大缩小;将仿真时间内的全部波形显示在屏幕上默认模式,该模式下您在波形图中可以将黄线拉到不同位置,观察某时刻的具体值。

该模式下,您可以拉动某部分作为全屏幕显示停止仿真1)时序仿真时序仿真与功能仿真唯一的不同就是加入时延文件,仿真步骤有差别。

建立工程,添加vho,sdo,testbench文件,编译均与功能仿真相同,这里不再赘述。

(1)建立工程——>添加vho,sdo,testbench文件——>编译(2)开始时序仿真:编译完成后,点击依然在work下拉中找到testbench,然后在相同的这个对话框中点击SDF,点击add…将SDO文件(在工程目录中)添加进工程,并在SDF Options 两个都打勾:该选项卡是选择时序约束文件,既Quartus产生的sdo文件两个全部打勾,如果没有打勾可能会出错,但是这个出错是由于系统照成的,用户完全可以忽略(3)点击OK开始观看仿真波形,具体操作和上述功能仿真一样,结果仅仅出现很小的延时,在做大规模设计时候会看到明显是时延。

总结:Modelsim 已经成为了业界最优秀的仿真软件之一,它兼容了VHDL和Verilog HDL两种硬件描述语言,同时支持xilinx和altera等多家公司的器件仿真。

有良好的UI界面并且编译速度快,同时支持GUI控制和DOS控制。

相对于quartus ii自带的仿真工具而言,modelsim 的主要优势在于以下几个方面:◆quartus ii 是altera公司专用的集成开发工具,其自带的仿真器仅仅能够支持altera的器件,而modelsim则支持altera以及xilinx等多家公司的器件仿真;◆quartus ii的仿真时间最大一般不超过1ms,而使用modelsim仿真不会受到这方面的限制。

因此仿真运行时间超过1ms的系统,quartus ii做不到。

◆modelsim支持激励文件(testbench)的输入,测试仿真多种输入状态,quartus ii只能通过修改波形来改变输入的状态,当输入状态数量很大时,modelsim更加有优势。

◆quartus ii 10.0以上版本已经不带仿真功能了。

相关文档
最新文档