Modelsim仿真教程_第1页
Modelsim仿真教程_第2页
Modelsim仿真教程_第3页
Modelsim仿真教程_第4页
Modelsim仿真教程_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、FPGA系统设计与实践系统设计与实践 第四章第四章 功能仿真功能仿真 第四章第四章 功能仿真功能仿真n内容提要内容提要 功能仿真(Function Simulation)的作用是对源代码进行编译。本章介绍了Model Technology 公司的Modelsim XE II v5.6e的主要结构、属性设置、Modelsim XE II v5.6e与ISE5.2的软件接口,测试激励文件的建立以及Modelsim仿真分析方法。Altera公司QuartusII3.0仿真器(Simulator) 的主要结构、属性设置以及仿真分析方法。 第四章第四章 功能仿真功能仿真n知识要点知识要点: 功能仿真,M

2、odelsim,测试激励文件,QuartusII3.0仿真器n教学建议教学建议: 本章的重点是掌握Model Technology 公司的Modelsim XE II v5.6e和Altera公司QuartusII3.0仿真器(Simulator)的结构和使用方法。建议学时数为4学时。注意区分Modelsim和QuartusII3.0仿真器(Simulator)的不同点。 第四章第四章 功能仿真功能仿真 在学习过程中,应结合第8章中的应用实例设计,去掌握仿真分析的步骤、属性设置及技巧。注意仿真分析中属性参数的设置,可以通过调整参数的设置,改变仿真输出波形。必须牢记功能仿真和时序仿真的区别。FP

3、GA系统设计与实践系统设计与实践 基于基于Modelsim的功能仿真的功能仿真 4.1 基于基于Modelsim的功能仿真的功能仿真 功能仿真(Function Simulation)是对源代码进行编译,检测在语法上是否正确,发现错误,并且提供出错的原因,设计者可以根据提示进行修改。编译通过后,仿真器再根据输入信号产生输出,根据输出可以判断功能是否正确。如果不正确,需要反复修改代码,直到语法和功能都达到要求。4.1 基于基于Modelsim的功能仿真的功能仿真 功能仿真只验证在功能上是否正确,在时序上不做验证。在做功能仿真时还需要注意,信号通过某个网络时是存在延迟的,而在功能仿真时不会体现出来

4、,输入信号的改变会立即在输出端反映出来。所以必须牢记功能仿真和时序仿真的是有区别的,这一点十分重要。 4.1.1 介绍介绍Modelsim XE II v5.6e Modelsim XE II v5.6e是Model Technology 公司直接为Xilinx公司设计。Xilinx公司的ISE 5.2为Modelsim XE留有接口,并且向Modelsim XE II v5.6e提供器件的仿真数据库。主窗口结构体窗口 进程窗口 信号窗口 变量窗口 源程序窗口 波形窗口 数据流窗口 列表窗口 主窗口是Modelsim的核心窗口,在缺省(默认)状态下,在启动Modelsim时会自动打开。主窗口分

5、为工作区和脚本区两部分。在工作区,可以很方便地对当前工程的工作库以及所有数据集合进行控制。在脚本区,可以输入Modelsim的各种命令,命令执行后会反馈执行后的信息,使用户了解执行的实际情况。 主窗口主窗口 选择Veiw Active命令后,窗口中显示的是当前工程中的所有进程。 选择In Regin 命令后,在窗口中显示的是当前层次结构中包含的进程。Ready表示此进程将在当前的很短的一个时间内被执行;Wait表示进程正等待信号的变化。Done表示进程正在执行等待语句。 进程窗口进程窗口结构窗口用来显示仿真中的层次信息,选择不同的结构层次,其他窗口中的信息都会发生相应的变化。 结构窗口结构窗口

6、当前层次结构中的所有信号名称 信号的值 用户必须在结构窗口中选择确定的层次结构,来获得想要仿真的信号。 信号窗口信号窗口进程中的变量 变量窗口变量窗口信号波形 信号名称和路径 指针所在位置的值 光标工具 波形查看工具仿真控制工具 波形窗口波形窗口 双击波形窗口中的信号名 信号属性对话框 信号属性对话框信号属性对话框显示的信号名称 波形的颜色名称的颜色 信号数据的显示方式 信号属性对话框信号属性对话框波形显示的格式 Analog显示Logic显示Literal显示Modelsim XE II v5.6e与与ISE5.2的软件接口的软件接口 Modelsim XE系列是Model Technolo

7、gy公司为Xilinx公司的FPGA/CPLD提供的OEM版本Modelsim工具,同时,ISE5.2为ModelsimXE提供了软件的接口。ISE5.2和ModelsimXE的结合使设计更高效,方便。在ISE5.2中启动ModelsimXE,ModelsimXE会调用缺省的批处理方式使仿真更高效。 属性设置设置Modelsim可执行文件的路径 4.1.2 建立测试激励文件建立测试激励文件 要对模块进行仿真必须首先建立仿真测试激励文件,Modelsim根据测试激励对设计进行仿真。而ISE5.2提供了一个相当实用的工具HDL Bencher(HDL 测试台)。HDL Bencher可以方便地定义

8、想要的输入波形和输出波形,仿真后Modelsim还可以将实际仿真的结果与测试者提供的波形进行比较,并且提示错误。1D触发器测试激励文件的建立触发器测试激励文件的建立 下面以一个例子进行说明仿真测试激励文件的建立:在3.1.2节中,使用VHDL输入设计了一个异步复位的D触发器,现在可以通过功能仿真来验证它的正确性。 新建测试激励文件新建测试激励文件 下一步选择与测试激励文件相关联的源文件选择与测试激励文件相关联的源文件 下一步单时钟多时钟组合逻辑设置异步时序下一步时钟选择对话框时钟选择对话框 下一步异步信号设置异步信号同步信号设置同步信号NEXT=时钟设置时钟设置 波形触发类型时钟高电平时间 时

9、钟低电平时间 输入建立时间 输出有效时间 偏移量 时钟单位 信号列表端口属性 备注 测试台波形编辑窗口 源代码显示窗口 输入期望的测试波形 测试激励文件加入工程 功能仿真 翻译后仿真 布局布线后仿真(时序仿真)生成期望的仿真结果 布局后仿真 双击其中一种仿真 4.1.3 启动启动Modelsim仿真仿真 仿真后的波形 4.1.4 功能仿真例:功能仿真例:10进制计数器进制计数器 1 .10 1 .10进制计数器测试激励文件的建立进制计数器测试激励文件的建立 (1)打开在3.1.4节中建立的工程pIP. 1 .101 .10进制计数器测试激励文件的建立进制计数器测试激励文件的建立 (2)为了方便

10、仿真,有必要将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 关联原文件关联原文件下一步时钟初始化下一步下一步时钟选择时钟选择信号属性设置信号属性设置下一步时钟设置时钟设置完成设置波形设置波形注意仿真界限的位置 启动仿真启动仿真Modelsim仿真缺省窗口 单击全屏按钮 仿真波形图仿真波形图经过译码后的7段LED显示用代码 在structure窗口选择my_cou后signal窗口中发生的变化 将signals中的q移入wave窗口中单击restart按

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论