利用ModelSim进行的功能仿真综合后仿真时序仿真_第1页
利用ModelSim进行的功能仿真综合后仿真时序仿真_第2页
利用ModelSim进行的功能仿真综合后仿真时序仿真_第3页
全文预览已结束

下载本文档

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

文档简介

1、利用ModelSim进行的功能仿真,综合后仿真,时序仿真功能仿真,就是在理想状态下不考虑延迟,验证电路的功能是否符合设计 的要求。功能仿真需要:1. TestBe nch或者其他形式的输入鼓励2. 设计代码HDL源程序3. 调用器件的模块定义供给商提供,如FIFO, RAM等等值得一提的是,可以在 ModelSim 直接编写TestBe nch,使用 View-Source-Show Ian guage templates.档来自于网络搜索综合后仿真门级仿真,实际上就是将对综合后的门级网表进行仿真,只 考虑门延迟,而没有参加时延文件。在功能仿真之后检验综合的结果是否满足功 能要求。文档来自于网

2、络搜索综合后仿真需要:1综合后的门级网表,注意这里变成了 *.vo文件,而不是原来功能仿真中所 需要的HDL源代码.2. 测试鼓励3. 元件库 Altera 的仿真库位置为 *:alteraquartusedasim_lib所谓时序仿真,就是在综合后仿真的根底上加上时延文件sdf文件,综合考虑了路径延迟和门延迟的情况,验证电路是否存在时序违规。文档来自于网络搜索时序仿真需要:1. 综合后的门级网表,注意这里变成了 *.vo文件,而不是原来功能仿真中所 需要的HDL源代码.2. 测试鼓励3. 元件库 Altera 的仿真库位置为 *:alteraquartusedasim_lib4. 较门级仿真

3、还需要具有包含时延信息的反标记文件*.sdf可以有两种方法实现门级仿真,或时序仿真。1. 工程编译成功后,自动启用ModelSim来运行门级仿真,前提是要在Quartus II的Options中设置好 ModelSim的路径文档来自于网络搜索和有些参考PDF上说的环境变量好似无关,至少我用的Quartus II 9.0 Web Edtion是这样的具体方法是,进入 文档来自于网络搜索Quartus9.0-Tools-Optio ns,在 Categroy 里选中 Ge neral 下的 EDA Tool Options,在ModelSim右边的Location of文档来自于网络搜索Execu

4、table中双击来改变路径,就并且在工程中设置了自动启动ModelSim,就可以自动启用了文档来自于网络搜索1. 在EDA Tool Settings,首先将仿真工具设置为 ModelSim,然后点击让它自 动启动。文档来自于网络搜索2. NativeLink settings 中选择 testbench,完成相关的设置,例如 test bench name, top level module in test ben ch, Desig n in sta nee n ame in test bench 仿真时 间,然后编译时会自动启动 ModelSim然后完成所有操作,大概这就是 Altera

5、所 指的和很多EDA工具的无缝连接。 文档来自于网络搜索另外一种方法,那么是现在quartus ii中生成门级网表和延时文件,然后调用 ModelSim进行仿真1. 在quartus ii设置仿真工具为ModelSim,这样设置完成后,在当前目录下 会生成一个simulation的目录,该目录下有 文档来自于网络搜索一个simulation文件夹,里面包含了网标文件和时延反标文件,vhdl语言对应的是网表文件为*.vho,时延文件为文档来自于网络搜索*.sdo。Verilog 那么为 *.vo,*sdo。2. 建立库并映射到物理目录,编译 TestBench,执行仿真。对库的理解:我想所谓库,

6、实际上就是一个代替文件夹的符号,区别就是,库中的文件的表述皆是经过了编译的实体或者module,一切操作都在库中进行。ModelSim有两种库,一种是资源库,一种是工作库(默认名为work,保存 当前工程下已通过编译的所有文 文档来自于网络搜索件,资源库放置work库已编译文件所要调用的资源)。所以编译前,一定要 有work库,而且只能有一个。3. 参加仿真库,可以看出,门级仿真和时序仿真都需要仿真库,在ModelSim 中可以通过两种方法将Altera的文档来自于网络搜索仿真库调入进来,一种是新建一个库,用来存放仿真是需要调用的文件,另 一种是将Altera的器件直接编译到work这个lib

7、rary中去。3.1新建一个库,用来存放调用的仿真库文件在Modelsim中建立一个新的project,将*vo,*v(TestBench),所用器件的库, 一起参加到 project当中文档来自于网络搜索去。新建一个库,名字实际是都可以的,当然将名字命名为所用的altera库的名字比拟适宜。最重要的是,要对参加的所用期间的库进行右键属性,在General选项卡中,要设置compile to library到你自己新建的 文档来自于网络搜索这个库中去,否那么的话,编译的文件就都会出现在你的工作库当中,可见新 建的第二库就是作为资源库来使用的。至此,我们已经完成了所有的准备工作,点击你的工作库,

8、然后选择 Simulate 中的 startsimulation,在library标签中,将自己编译的资源库参加。在 design标签中选 择testbench作为设计单文档来自于网络搜索元,要说明的是,如果你没有使用 work库的默认库名,而是自己命名了, 那么此时你可以使用 work库,也可文档来自于网络搜索以使用自己命名的库,二者是等价的。至V这里,就可以完成了门级仿真,女口 果是时序仿真,那么还需要将反标记*.sdo文件参加,具体方法是单击 start simulation后,在SDF标签中可 以参加时延反标记文件。但要 文档来自于网络搜索注意须在Apply to Region中将里面

9、的/改写为testbench名这个很重要,是 testbench文件名,而不是顶层 module名testbench中实例化顶层的名称,如果 是文档来自于网络搜索用模板创立的testbench,这个顶层名称叫做 DUVDesign Under Test/Verification,待测设计。文档来自于网络搜索当然了,不是一帆风顺的,就在参加了SDF文件之后,准备开始的时候,出现了 ERROR,vsim-sdf-文档来自于网络搜索3894:Compiled SDF file was not fou nd不过幸好很快找到了解决方法,那就是 将你的testbench和文档来自于网络搜索*.sdo文件放

10、在同一个目录下,这种错误就可以解决了,默认的会在当前工 程下的simulation/modelsim文档来自于网络搜索中。3.2将库文件直接编译到 work的library中,这种会比3.1简单一些,不用建 立库,直接编译到工作库就可以 文档来自于网络搜索了。如何对Altera的megacore进行仿真呢?根本和上面一致,一般要用到仿真 库中的220model.v和文档来自于网络搜索altera_mf.v。我只找了一个很简单的计数器的例子来试,但发现了一个很有意思的现象, 也是原来我没有考虑到的,如果你想做功能仿真,那么由于你的设置中包含了Altera公司的一些原语,比方lpm_XXXX 等等,那么就需要将 220model或者 altera_mf.v编译进你的工程,但是再做时序仿真或门级仿真的时候却不需要这些,因为你可以自己去看一下生成的门级网

温馨提示

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

评论

0/150

提交评论