首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

Modelsim初级使用教程(5)

Modelsim初级使用教程(5)

自动仿真和手动仿真的区别:
  这种方法比较简单,因为QuartusII调用Modelsim,所以除了生成自动生成了modelsim仿真所需要的.vo文件(网表文件)和.sdo文件(时延文件)外,还生成了gate_work文件夹、verilog_libs文件夹;gate_work文件夹(可以叫工作库,也可以叫编译库)下存放了已编译的文件,verilog_libs文件夹下存放了仿真所需要的资源库,上例是cycloneii_ver库(文件夹)。而手动仿真则需要自己添加这些文件和库。具体如下。
②手动仿真  手动仿真需要自己添加文件和编译库,但可以充分发挥modelsim强大的仿真功能。操作时也要先对quartus进行设置,设置与前面相同只是不要选中RunGate Level Simulation automatically aftercomplication。然后启动modelsim,将当前路径改到"工程文件夹\simulation\modelsim"下。如下图所示。

图19启动modelsim

  相比①中,这里少了一些库(实际是verilog_libs库、gate_work库和work库),因此下面要添加一个库。新建一个库,此处默认库名为work,此时,"工程文件夹\simulation\modelsim"文件夹下出现了一个work文件夹,work库下面没有目标文件和测试文件,即work文件夹下没有任何文件,建库的目的就是将编译的文件都放在该库里,即放在该文件夹下。编译之前,还需要添加仿真所需要的资源库cycloneii_atoms(用到EP2C8),将D:\altera\90\quartus\eda\sim_lib目录下的cycloneii_atoms文件复制到.vo所在的目录,即"工程文件夹\simulation\modelsim"下。
  如果按照①中的方法编写testbench并同样放在.vo所在的目录,这时点Compile下的Compile或点将会出现下面的对话框,将所选文件进行编译。

图20编译所需文件和资源库

  编译完成之后,work工作库下多了很多文件,同样work文件夹下也多了很多文件(夹),建库的目的可见一斑,其中有Counter_tb测试文件和counter目标文件。点击simulate->StartSimulation或快捷按钮 会出现start simulate对话框。这里和①相比只有Libraries标签在SearchLibrary时不一样,其余2项都一样。Libraries标签在Search Library的设置如下图。

图21选择仿真所需要的资源库

后面的观察波形步骤跟前面一样。

四、观察波形的一些方法和技巧。4.1 手动创建输入波形(待定)  对于复杂的设计文件,最好是自己编写testbench文件,这样可以精确定义各信号以及各个信号之间的依赖关系等,提高仿真效率。
对于一些简单的设计文件,也可以在波形窗口自己创建输入波形进行仿真。具体方法是鼠标右击work库里的目标仿真文件counter.v,然后点createwave,弹出wave default窗口。如下图所示。

图22 Addto Wave

  在wave窗口中选中要创建波形的信号,如此例中的CLK,然后右键点击,选择Create/Modify/Wave项出现下面的窗口:

图23设置输入波形

  在Patterns中选择输入波形的类型,然后分别在右边的窗口中设定起始时间、终止时间以及单位,再点Next出现下面的窗口,我们把初始值的HiZ改为0,然后修改时钟周期和占空比,然后点Finish。
继承事业,薪火相传
返回列表