modelsim 10仿真教程
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Modelsim仿真教程
一、前期准备
1、正确安装好modelsim和quartus软件。我用的平台的版本是Modelsim SE10.1
和Quartus II10.1。
2、在ModelSim中加入Quartus提供的仿真库
在ModelSim中进行仿真需要加入Quartus提供的仿真库,原因是下面三个方面:
·Quartus不支持Testbench;
·调用了megafunction或者lpm库之类的Altera的函数;
·时序仿真要在Modelsim下做仿真。
下面以Altera器件为例,介绍如何在ModelSim中加入Altera的仿真库,Quartus II 软件中自带有Altera的仿真库,只要把它拿到ModelSim中去编译一下就可以了,具体步骤如下:
(1).设置仿真库路径
打开ModelSim安装目录(我用的是ModelSim SE10.1版本,安装在C:\modeltech_10.1
目录下),新建文件夹altera,我们就在该目录下存放预编译的各种Altera库。
启动ModelSim SE,在主窗口执行【File】/【Change Directory】命令将路径转到altera
文件夹。
(2).新建库
Quartus II中提供的仿真库文件存放的路径是....\altera\10.1sp1\quartus\eda\sim_lib,每个库文件提供了两种形式:.v(Verilog)格式和.vhd(VHDL)格式两种,根据你所用的语言选择使用。用于编译资源库的文件有220model.v,220model.vhd,220pack.vhd,altera_mf.v,altera_mf.vhd,altera_mf_components.vhd,altera_primitives.v,altera_primitives.vhd,
altera_primitives_components.vhd文件。网上的很多教程都是把这些文件一起编译,这样适用于Verilog和VHDL混合仿真,但如果只用一种语言,如Verilog则完全没必要全部编译。下面以该目录下的altera_mf.v为例介绍建立预编译库的方法。
注:ModelSim中仿真库可以分为两大类:第一类是工作库(working),默认值为“work”目录,work目录中包含当前工程下所有被编译的设计单元,编译前必须建立一个work库,并且每个编译有且仅有一个work库;第二类是资源库(resource),存储能被当前编译引用的设计单元,在编译期间允许有多个resource库,这节所讲的都是添加altera资源库。
在主窗口中选择【File】/【New】/【Library】命令,新建一个名为altera_mf的库。
(3).编译库
方便起见在altera文件夹下新建目录src,把用于编译资源库的文件复制到src文件夹中。
在主菜单中选【Compile】/【Compile】命令,弹出Compile Source Files对话框,library 中选择你刚才建立的库名altera_mf,查找范围你选择altera_mf.v文件,刚才你已经把它复制到了...\altera\src目录下。执行编译命令。
继续按照步骤2和3中介绍的方法添加剩下的几个库。添加完成后如下图所示。1、
(4).配置modelsim.ini文件
这一步是为了将前面建立的库添加进系统库,以后就不用再重复添加了。
ModelSim安装根目录下的配置文件modelsim.ini的只读属性去掉,用记事本或其他文本编辑程序打开。在[Library]下修改前面添加的库的路径。注意修改后关闭并改回只读属性。
注:第1步设置的仿真库路径必须在ModelSim的安装目录下才能能够用此相对路径。
altera_primitives=$MODEL_TECH/../altera/altera_primitives
220model=$MODEL_TECH/../altera/220model
altera_mf=$MODEL_TECH/../altera/altera_mf
2、如果有需要,读者可以按此方法建其他资源库。这个所谓的前期准备不是必须的前期准备,大家可以在做具体的仿真工程中再建,只不此方法是是为了把这些新建的库添加到系统库中,这样就不用再在具体仿真的时候重复添加。
二、功能仿真实例
3、新建一个文件夹用于存放仿真工程。
4、执行【File】/【Change Directory】命令将工作路径转到你新建的文件夹下。
5、新建一个工程。【File】/【new】/【project】,输入工程名。
按OK后弹出如下对话框,如果你有编写好的.V文件可以在此添加,或者直接新建文件。
4、再这里我选择新建一个文件counter.v和一个测试文件counter_tb.v
代码如下:
5、选择文件,右键/compile/compile all.
6、开始仿真。菜单栏选择【simulate】/【start simulation】,在star simulation选项卡中的Design选项中选择测试文件counter_tb,点击【optimization options】在【visibility】中做如下选择:
在libraries选项中添加需要的仿真库
点击OK开始仿真。然后添加波形。
执行【simulate】/【run】/【run100】仿真一百个时间单位。或者点击工具栏中的run
按钮。仿真结果如下: