- UID
- 1029342
- 性别
- 男
|
自动仿真和手动仿真的区别:
这种方法比较简单,因为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。 |
|