Modelsim使用指南_pdf

(文档共9页)  

当前位置: 雨花文库>IT/计算机>计算机软件及应用>Modelsim使用指南_pdf


Modelsim使用指南

1 前言

作为一种简单易用,功能强大的逻辑仿真工具,Modelsim具有广泛的应用。这里对ModelSim作一个入门性的简单介绍。首先介绍ModelSim的代码仿真,然后介绍门级仿真和时序验证。

2 代码仿真

在完成一个设计的代码编写工作之后,可以直接对代码进行仿真,检测源代码是否符合功能要求。这时,仿真的对象为HDL代码,比较直观,速度比较快,可以进行与软件相类似的多种手段的调试(如单步执行等)。在设计的最初阶段发现问题,可以节省大量的精力。

2.1 代码仿真需要的文件

1.设计HDL源代码:可以使VHDL语言或Verilog语言。

2.测试激励代码:根据设计要求输入/输出的激励程序,由于不需要进行综合,书写具有很大的灵活性。

3.仿真模型/库:根据设计内调用的器件供应商提供的模块而定,如:FIFO(Altera 常用的FIFO有:lpm_fifo /lpm_fifo_dc等)、DPRAM等。

2.2 代码仿真步骤

1.建立工程:在ModelSim中建立Project。如图2.1所示,点击FileÖNewÖProject,得到Creata Project的弹出窗口,如图2.2所示。在Project Name栏中填写你的项目名字,建议和你的顶层文件名字一致。Project Location是你的工作目录,你可通过Brose按钮来选择或改变。Ddfault Library Name可以采用工具默认的work。

Modelsim使用指南

图2.1

Modelsim使用指南

图2.2

2.给工程加入文件:ModelSim会自动弹出Add Items to the project窗口,如图2.3所示。选择Add Exsiting File后,根据相应提示将文件加到该Project中。

Modelsim使用指南

图2.3

3.编译:编译(包括源代码和库文件的编译)。编译可点击ComlileÖComlile All 来完成。

4.装载文件:如图2.4,点击SimulateÖSimulate…后,如图2.5所示,选定顶层文件(激励文件),ADD加入,然后点击LOAD,装载。

Modelsim使用指南

图2.4

Modelsim使用指南

图2.5

5.开始仿真:同过菜单:View -> Structure,View -> Signals,View -> Wave 打开Structure,Signals,Wave三个窗口。在Structure窗口内选定你所要观察的信号所在的模块,然后在Signals窗口选定信号,同过鼠标左键拖放到Wave窗口,如图

2.6。然后在Wave窗口,点击run all,运行,在波形窗口就可以看到信号的仿真波形。如图2.7.

Modelsim使用指南

图2.6

Modelsim使用指南

图2.7

6.波形信号的保存:有时,在波形窗口内拖放了较多的信号,可以保存起来以后调入。在wave窗口,File -> Save format,保存成*.do文件。以后需要调入时,在modelsim主窗口命令行内执行:do *.do即可。

3 门级仿真和时序仿真

使用综合软件综合后生成的门级网表或者是实现后生成的门级模型进行仿真,不加入时延文件的仿真就是门级仿真。可以检验综合后或实现后的功能是否满足功能要求,其速度比代码功能仿真要慢,但是比时序仿真要快。

在门级仿真的基础上加入时延文件“.sdf”文件的仿真就是时延仿真。优点是:比较真实的反映逻辑的时延与功能,缺点是速度比较慢,如果逻辑比较大,那么需要很长的时间。

在这里仿真以Altera的器件为例。利用经过综合布局布线的网表和具有时延信息的反标文件进行仿真,可以比较精确的仿真逻辑的时序是否满足要求。

3.1 仿真需要的文件

1.综合布局布线生成的网表文件

2.测试激励

3.元件库

4.时序仿真的话,还需要综合布局布线生成的具有时延时延信息的反标文件(sdf)3.2 仿真步骤

1.在Quartus2中正确设置仿真工具:如图3.1所示,点击Quartus2的Assignment 菜单下的EDA Tools Settings,进入图3.2。在图3.2中,点击EDA tool type,再在Tools Settings的下拉菜单中,根据你所使用的语言与Modelsim的版本,作相应的选择。

(文档共9页)