《Verilog HDL数字系统设计——原理、实例及仿真》课件第13章.pptx
第13章ModelSim仿真工具
13.1ModelSim概述
13.2设计输入
13.3设计Testbench
13.4设计验证与仿真
13.5ModelSim的调试
13.6相关文件介绍
13.1ModeISim概述
ModelSim仿真工具是MentorGraphics的子公司Model
Technology公司开发的硬件描述语言的仿真软件。该软件是业界最优秀的HDL语言仿真软件之一,是单一内核支持
VHDL和VerilogHDL混合仿真的仿真器。它提供了友好的调试环境,支持PC和UNIX、Linux混合平台,并提供有完善和高性能的验证功能,具有仿真速度快、编译代码与仿真平台无关、全面支持业界广泛的标准等优点。
ModelSim仿真工具的主要特点如下:
(1)本地编译结构,编译仿真速度快,跨平台、跨版本仿真。
(2)先进的数据流窗口,可以迅速追踪到产生错误或者不稳定状态的原因。
(3)性能分析工具可帮助分析性能瓶颈,加速仿真。
(4)代码覆盖率检测确保了测试的完备性。
(5)先进的信号检测功能,可以方便地访问VHDL、VerilogHDL或者两者混合设计中的底层信号。
(6)支持加密IP。
(7)可以实现与MATLAB的Simulink的联合仿真。
13.1.1ModeISim的运行模式
ModelSim的运行模式有以下4种:
(1)用户图形界面(GUI)模式:在主窗口中直接输入操作命令并执行,这是该软件的主要操作方式之—。
(2)交互式命令(Cmd)模式:没有图形化的用户界面,仅仅通过命令控制台输入的命令完成相应工作。
(3)Tcl和宏(Macro)模式:可执行扩展名为do的宏文件或Tcl语法文件,完成与在GUI主窗口逐条输入命令等同的功能。
(4)批处理文件(Batch)模式:在DOS、UNIX或Linux操作系统下执行批处理文件,完成软件功能。
13.1.2ModeISim的仿真流程
ModelSim基本应用的仿真步骤分为如下4步:
(1)创建工程。包括创建.mpf后缀的工程文件,建立库并将逻辑库映射到物理目录。
(2)设计输入。向工程中添加有效的设计单元,包括设计文件、ModelSim管理文件夹、仿真环境设置等。可以将这些文件拷贝到工程目录,也可以简单地将它们映射到本地。
(3)编译设计文件。进行语法检查并完成编译。
(4)运行仿真。对指定的设计单元进行仿真。
图13.1给出了在ModelSim工程中仿真一个设计的基本流程,该流程是基本的仿真流程。
创建工程
设计输入
编译设计文件
运行仿真
调试结果
图13.1ModelSim的基本仿真流程
13.2设计输入
这里通过一个简单的实例,即具有同步置数、异步复位功能的4位二进制计数器来学习如何使用ModelSim软件进行功能仿真。
计数器是数字系统设计中最基本的功能模块之一,是对
时钟信号的个数进行计数的时序逻辑器件,用来实现数字测
量、状态控制等功能。4位二进制计数器的接口如图13.2所示。其中data[3..0]是4位数据输入端,out[3..0]是4位数据输出端,
clk和rst是时钟信号和复位信号,load是置数端。当load有效时,停止计数,data[3..0]的数据将被直接赋给out[3..0]。
inst
图13.2同步置数、异步复位的4位二进制计数器
data[3..0]
load
clk
rst
out[3..0]
count4
13.2.1创建工程
创建工程的操作步骤如下:
(1)启动软件。双击桌面上的ModelSim图标,启动
ModelSimSE6.5e软件,显示如图13.3的Main主窗口界面。由图可见,Main窗口主要由菜单栏、工具栏、工作区、命令窗口和状态栏组成。
IodelSinSE6.5e□口区
FileEditYiewCompileSimulateAddLibraryToolsLayoutWindowHelp
具团
Help
]E蒸”:“的留
Layout
NoDesigm
山Library
Name
TypePath
二田团区
血work(empty)
±山vital2000
+山verilog工具栏
+山mtiUPF
+血synopsys
+血sv_std
+血std_developerskit
+血std
+山mtiPA
+山mtiOvm
+血mode