ModelsimSE仿真步骤

合集下载

如何在ISE环境中使用ModelSim仿真

如何在ISE环境中使用ModelSim仿真

如何在ISE环境中使用ModelSim仿真作者:jbb0523(彬彬有礼)说明:以下说明中ISE为10.1版本!1、准备在新建工程时的“Device Properties”选项卡中的Simulator项选择Modelsim-SE Mixed,如图1所示:图1 Device Properties选项卡如果在新建工程时未选择,可按如下步骤进行修改:图2 Source- Properties如图2所示,先单击一下芯片“xc4vsx55-12ff1148”(这因个人选择不同而不同),然后执行Source——Properties,修改即可。

2、仿真步骤1)如图3所示,在需要仿真的源文件上右击,选择“New Source…”图3 右击---New Source2)如图4所示,在Select Source Type选项卡中选择“Verilog Test Fixture”,输入File name,单周next,直到完成。

图4 Select Source Type3)将source for选择为“Behavioral Simulation”,打开刚刚新建的文件,编辑该文件,输入仿真需要的代码(其实就是对输入信号进行配置)。

然后双击过程管理区的“Simulate Behavioral Model”,即可自动打开ModelSim进行仿真(此时ModelSim不能处于打开状态,否则会出错的),如图5所示(注意图中每一处用红线标记的部分)。

4)如果是首次仿真,ModelSim会出现如下错误:图6 ModelSim error这是一个很普遍的错误,百度此错误中的关键字“Failed to access library 'xilinxcorelib_ver' at "xilinxcorelib_ver".”即可找到解决办法。

如图7所示,Source for中重新选择Implementation,其它按照图中的红线标识单击或选择,然后双击“Compile HDL Simulation Libraries”,等待编译成功结束后,重新执行步骤3)即可。

ModelsimSE的使用方法 简单易懂

ModelsimSE的使用方法 简单易懂

2020/10/13
西安邮电学院计算机系
9
图2.3
2020/10/13
西安邮电学院计算机系
10
编译: 编译(包括原代码和库文件的编译),编译可点击Comlile > Comlile All来完成。
2020/10/13
西安邮电学院计算机系
11
装载文件: 如图2.4,点击Simulate -> Simulate..后,如图 2.5所示,选定顶层文件(激励文件),ADD加入,然后 点击load,装载。
2020/10/13西安邮电学Fra bibliotek计算机系3
2.1代码仿真需要的文件
设计HDL源代码:可以使用VHDL语言或Verilog HDL语言。(这里以附录用Verilog语言编写的4位计数器 为例进行说明)
测试激励代码:根据设计要求编写输入/输出的激励程序, 由于不需要进行综合,书写具有很大的灵活性。
2020/10/13
西安邮电学院计算机系
21
图3.1
2020/10/13
西安邮电学院计算机系
22
图3.2
2020/10/13
西安邮电学院计算机系
23
用Qusrtus产生仿真所需要的网表与sdf文件: 在作了第一步的正确设置后,每当你完成一次编译, Quartus会自动在你的当前Project 目录下生成一个 simulation目录,在该目录下,就有我们所需要的文件。如 果使用VHDL语言,网表文件是.VHO,SDF文件.SDO;如果 使用Verilog语言,网表文件是.VO,SDF文件也是.SDO。
2020/10/13
西安邮电学院计算机系
5
图2.1
2020/10/13

用ModelSimSE进行功能仿真和时序仿真的方法(ALTERA篇)

用ModelSimSE进行功能仿真和时序仿真的方法(ALTERA篇)

用ModelSimSE进行 功能仿真和时序仿真的方法 (ALTERA篇)黄俊April 2007用ModelSim SE进行功能仿真和时序仿真的方法 (ALTERA篇)软件准备(1) QuartusII,本文截图是QuartusII 6.1界面的。

我个人认为,如果是开发StratixII或CycloneII或MAXII,用QuartusII6.0+SP1+SP2比较稳定。

(2) ModelSim SE. ALTERA仿真库要已经装好,安装仿真库的笔记已记录于《在ModelSimSE中添加ALTERA仿真库的详细步骤》中。

我电脑上装的是ModelSim SE6.1b。

例子程序的制作先在Quartus II里生成一个例子程序,以方便介绍三种仿真的方法。

步骤如下:1、新建一个工程(Project),工程名取lpm_shift, 器件选CycloneII EP2C5Q208C, 第三方的工具暂时都不选。

2、菜单栏上ToolsÆMegaWizard Plug-In Manager, 点Next,在storage中选LPM_SHIFTREG,输出文件格式根据习惯选一种语言,在这里以Verilog的为例,在右边的output file名字中加上lpm_shift。

点Next。

3、这个例子是做一个移位寄存器,调用lpm库,和cycloneII元件库,也正好可以作为对前面建好的ALTERA库的一个验证。

点可以查到该模块的使用说明和详细介绍。

移位寄存器比较简单,就不用细看了。

如下图设置.点Next.4、加上一个异步清零端,点Next,再点Next,最后点Finish.Add/Remove Files in Project…,6、点图标,选中生成的lpm_shift,点打开再点Add都加到项目中去。

7、在这里直接把lpm_shift.v当成顶层文件,就不需要再例化它了。

8、下面写一个简单的TestBench.a)Quartus II工具栏上点图标,选Verilog HDL;b)点,设文件名为top_tb;c)如下所述写一个简单的TestBench.(例子见附件)开始仿真z ModelSim仿真有很多种流程,下面我采用个人感觉比较好一个流程进行仿真验证:基于工程(Project)的流程Step1 新建一个工程Step2 添加文件到工程中去Step3 编译设计文件Step4 启动仿真器,指定顶层设计单元Step5 查看和调试结果z对的设计有三个阶段的仿真。

Modelsim SE的使用方法

Modelsim SE的使用方法

2012/11/5
西安邮电学院计算机系
24
在ModelSim中建立Project: 与代码仿真相似,建立工程,并加入文件。不同的是, 门级仿真或时序仿真,则是加入综合后的网表文件,源
代码文件不需要,可以将其从Project中删除。
2012/11/5
西安邮电学院计算机系
25
编译源代码和网表: 源代码的编译可点击Comlile -> Comlile All来完成。
Modelsim的版本,作相应的选择。
2012/11/5
西安邮电学院计算机系
21
图3.1
2012/11/5 西安邮电学院计算机系 22
图3.2
2012/11/5 西安邮电学院计算机系 23
用Qusrtus产生仿真所需要的网表与sdf文件: 在作了第一步的正确设置后,每当你完成一次编译,Quartus 会自动在你的当前Project 目录下生成一个simulation目录, 在该目录下,就有我们所需要的文件。如果使用VHDL语言, 网表文件是.VHO,SDF文件.SDO;如果使用Verilog语言,网 表文件是.VO,SDF文件也是.SDO。
2012/11/5
西安邮电学院计算机系
12
图2.4
2012/11/5 西安邮电学院计算机系 13
图2.5
2012/11/5 西安邮电学院计算机系 14
开始仿真:如下图示
2012/11/5
西安邮电学院计算机系
15
仿真波形如下图
2012/11/5
西安邮电学院计算机系
16
波形信号的保存:
有时,在波形窗口拖放了很多的信号,可以保存起来以后调 入。在wave窗口,File -> Save format,保存成*.do文件。 以后需要调入时,在modelsim主窗口命令行内执行:do *.do即可。

Modelsim仿真新手入门最详细教程

Modelsim仿真新手入门最详细教程

Modelsim仿真新⼿⼊门最详细教程2021年11⽉15⽇00 安装包/版本我是提前在⽹上下好的(但这⼀点也给我的实验造成了“⿇烦”),⽤的是Modelsim SE-64 2020.4版本的,学校实验室的似乎不同。

但最终没有太⼤影响。

01 配置环境步骤学校有⼀个⽂档,在机房电脑照做就⾏。

我因为是⾃⼰下载的,配置与机房软件有所不同,所以⼜平添了很多⿇烦。

01-0 verilog⽂件这个代码可以在很多地⽅编写:Visual Studio Code⾥有Verilog的插件;还可以有更强⼤的语⾔编辑器:Nodepad++。

这⾥我使⽤的是Nodepad++,因为看上去专业⼀点。

Nodepad++的页⾯效果如图:其实第⼀次上机,⽼师会给⼤家⽰例⽂件(包括设计代码与测试代码),跑出来⽰例波形就⾏。

01-1 具体步骤1. 新建⼀个⽤于安放project的⽂档,放在哪⾥都⾏。

把前⾯做出的.v⽂件添加到这个⽂档。

留意⼀下路径。

2. 打开modelsim,在jumpstart中create a new project。

3. 在弹出的提⽰框⾥browse,找到刚才的⽂件夹。

选中。

填写project 名,注意要与.v⽂件⾥的module名保持⼀致。

点击ok。

4. 进⼊页⾯后会是这样⼦:注意此处两个⽂件后⾯应当都有问号,代表没有编译。

先逐个右击⽂件add to this project确保加⼊。

5. 在上⽅提⽰栏中complie->compile all。

稍等些许会看到⽂件后问号全部变为对勾,表⽰代码编译通过,没有问题。

如果此步出错则代表代码有bug。

在下⾯的Transcript中上翻查找错误。

6. 点击上⽅Simulate->start simulation。

由于注意与实验室不同的,选中下⾯的Enable optimization,再在右侧Optimization Options中的Visibility中选中Apply full visibility....7. 接着在work⾥找到测试代码的⽂件,选中。

ModelSim+SE+6.5仿真软件下载及安装步骤

ModelSim+SE+6.5仿真软件下载及安装步骤

ModelSim SE 6.5下载及安装步骤1 ModelSim SE 6.5下载在ModelSim网站下载ModelSim SE 6.5源文件,进入后,进入DOWNLOADS,再进入Download Archives,在MODELSIM SE中选择版本,这里选择SE 6.5,进入请求下载的注册界面,简单注册一下,进入ftp,点击倒数第二个exe文件,下载源文件。

点击倒数第一个文件,这是一个安装说明文件,也可以下载下来。

2 安装ModelSim SE 6.5双击源文件ModelSim-win32-6.5-se.exe,安装ModelSim。

依次出现下面以下界面,点击【Next>>】,点击【Agree】点击【Browse】,选择安装路径,此处安装在E:\Eapp\EDA\ModelSim下,点击【Next>>】,正在安装,单击【Y es】,建立桌面快捷方式,单击【Y es】,单击【Y es】,单击【Y es】,重启计算机。

3 ModelSim SE 6.5破解3.1 生成LECENSE.dat文件到网上下载一个ModelSim SE 6.5的破解文件,我下载的是ModelSim6.5_KeyGen 文件夹,里面有个MentorKG.exe文件,双击它产生LECENSE.txt文件,将文件后缀txt改成dat。

复制LECENSE.dat到Modelsim SE 6.5\win32下,此处为E:\Eapp\EDA\Modelsim SE 6.5\win32。

3.2 右击桌面上的“我的电脑”,打开“属性”/“高级”/“环境变量”,在系统变量中新建LM_LICENSE_FILE,编辑中输入上一步LIECENSE.dat所在的路径,E:\Eapp\EDA\Modelsim SE 6.5\win32\ LICENSE.dat,确定即可。

重启计算机。

(这一步在下载的安装说明文件中有详细说明)。

在ModelSimSE中添加ALTERA仿真库的详细步骤

在ModelSimSE中添加ALTERA仿真库的详细步骤

ModelSim学习笔记(二)在ModelSimSE中添加ALTERA仿真库的详细步骤黄俊April 2007以前用的是LATTICE的,ispLEVER有自带了一个OEM版的ModelSim。

要仿真时,不需要添加库,用起来比较方便,自己有点懒,所以就一直凑合着用。

现在转向用ALTERA 了,ALTERA也有OEM版的ModelSim,也不用添加库。

后来听说ModelSim SE的功能更强大,速度更快,所以就决定把ModelSim SE好好摸索一下,再多学习一点关于TestBench 技巧方面的知识。

我的学习资料主要是ModelSim SE自带的教程、ALTERA提供的资料以及edacn上面ModelSim专栏由网友们上传的资料。

因为是初学,加上看到英文资料一大堆,烦都烦死,而有些中文文档可能是有些步骤没有讲清楚,我实际按照文档上面说的一步一步做下来也老是完成不了,花了不少时间。

我于是就想自己摸清楚后,把步骤截图下来,整理清楚,做成笔记。

一方面加深自己的认识,另一方面对初学者也许会有些许用处。

我近期计划陆续整理出以下几个方面的学习笔记:初学ModelSimSE时被迷糊了几天的若干概念在ModelSimSE中添加ALTERA仿真库的详细步骤用ModelSimSE进行功能仿真和时序仿真的方法(ALTERA篇)ModelSimSE中常用到的几个命令及DO文件的学习笔记近来学到的几招TestBench的技巧MSN: paulhuang_sz@E-mail: huangjun5927@Blog: /index.php/2599在ModelSimSE中添加ALTERA仿真库的详细步骤装仿真库前要先了解几个概念1、装ModelSim之前,要先装QuartusII。

安装好QuartusII后,在其安装目录下…\quartus\eda\sim_lib里面存放了所有的仿真原型文件(simulation modelfiles)。

modelsim+ISE后仿真流程

modelsim+ISE后仿真流程

一、为modelsim 添加ISE的3 个仿真库。

首先,介绍一下这三个库。

Simprim_ver:用于布局布线后的仿真。

Unisim_ver :如果要做综合后的仿真,还要编译这个库。

Xilinxcorelib_ver:如果设计中调用了CoreGen产生的核,则还需要编译这个库。

我们要为modelsim生成的是标准库。

所谓的标准库就是modelsim运行后,会自动加载的库。

不过这方面我还不是很肯定。

因为我在后仿真时,还是要为仿真指定库的路径,不然modelsim找不到。

第一步:在modelsim环境下,新建工程,工程的路径与你想把库存储的路径一致。

第二步:新建库,库名起作simprim_ver。

我们首先就是要建的就是这个库。

第三步:在modelsim的命令栏上,打下如下命令:vlog -work simprim_ver C:/Xilinx/12.4/ISE_DS/ISE/verilog/src/simprims/*.v (注意斜线的方向是与windows默认方向相反的)其中的c:/Xilinx是我的Xilinx的安装路径,你把这个改成你的就行了。

以下凡是要根据自己系统环境改变的内容,我都会用绿色标出,并加一个下划线。

编译完之后,你会发现你的工程文件夹下出现了一个simprim文件夹,里面又有很多个文件夹。

这些就是我们要的库了。

第四步:按照上面的方法,编译另外两个库。

所需要键入的命令分别如下:vlog –work unisim_ver C:/Xilinx/12.4/ISE_DS/ISE/verilog/src /unisims/*.vvlog -work xilinxcorelib_ver C:/Xilinx/12.4/ISE_DS/ISE/verilog/src /XilinxCoreLib/*.v第五步:把库建好后,接下来的事情就是使它成为modelsim的标准库。

这只要修改modelsim安装目录下的modelsim.ini文件就可以了。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

WILDSCModelsimSE仿真教程Verilog & VHDL孙玉阳2014/6/3对于ModelsimSE仿真设置网上很难找到详细教程,在此写一篇基于Verilog 和VHDL的ModelsimSE的仿真设置教程,以期缩短大家ModelsimSE学习时间,由于时间仓促,不足之处还请见谅。

目录1 ModelsimSE仿真——Verilog HDL (2)1.1 建立资源库 (2)1.1.1 建立资源库的目的 (2)1.1.2 建立资源库前准备 (2)1.1.3 建立资源库的步骤 (3)1.2 功能仿真 (11)1.2.1 建立ModelsimSE工程 (11)1.2.2 添加Quartus工程文件 (12)1.2.3 编译 (14)1.2.4 仿真 (18)1.3 时序仿真 (21)2 ModelsimSE仿真——VHDL (25)2.1 建立资源库 (25)2.1.1 建立资源库的目的 (25)2.1.2 建立资源库前准备 (25)2.1.3 建立资源库的步骤 (26)2.2 功能仿真 (33)2.2.1 建立ModelsimSE工程 (33)2.2.2 添加Quartus工程文件 (34)2.2.3 编译 (37)2.2.4 仿真 (40)2.3 时序仿真 (44)1ModelsimSE仿真——Verilog HDL1.1建立资源库1.1.1建立资源库的目的Quartus Verilog工程文件里面在使用Primitives、Megafunction、LPM等Quartus自带模块时,会调用Quartus本身自带的一些库文件,但是ModelsimSE在仿真Quartus Verilog工程文件时不会自动去调用Quartus的库文件,同时ModelsimSE也不自带与Primitives、Megafunction、LPM相关的库文件。

所以在仿真Primitives、Megafunction、LPM等模块时,必须在ModelsimSE里建立与其对应的资源库,否则无法仿真。

1.1.2建立资源库前准备(备注:若需要后仿真(时序仿真)则进行这一步骤,若只进行前仿真(功能仿真)则跳过此步骤):打开待仿真的quartus工程,点击菜单Assignments->Settings,打开如下窗口将以下红色部分设置好,先点击apply,然后点击OK即可然后会发现quartus工程里多了个simulation文件夹,打开改文件夹simulation->modelsim,会发现里面有很多.VO和.SDO文件。

1.1.3建立资源库的步骤1.1.3.1建立文件夹首先在modelsimSE的安装目录下(比如,如果安装在C盘,则安装目录为C:\modeltech_10.0c)建立两个空文件夹文件名分别为altera_base_v,altera_device(这个名字最好就命名为这两个)。

1.1.3.2建立库altera_base_v打开modelsimSE,注意此时不要打开任何工程,如若已经打开modelsimSE工程,点击菜单file->change directory ,然后随便指定一个文件夹,将工程关掉。

下面开始建立lpm资源库,首先新建一个library,方法是打开菜单file->new->library,出现如下图所示窗口,按下图所示窗口填好,注意:Library Physical Name应该指向的是上一节所建立的altera_base_v文件夹。

点击OK之后,回到modelsim界面,会发现多出了altera_base_v (empty)库,现在这个库里什么都没有,下面往里面添加内容。

打开菜单Compile->Compile..,弹出如下界面:注意下图设置,Library一定要选择刚刚新建的altera_base_v库,查找范围则是在quartus 的安装目录下,在quartus的安装目录中找到sim_lib文件夹,比如我的quartus安装在C盘,则查找路径为C:\altera\11.0\quartus\eda\sim_lib。

为了建立altera_base_v库,需要编译3个文件,分别是220model.v,altera_mf.v,altera_primitives.v,这三个文件分别对应Quartus中的LPM库、Megafunction库、Primitiv库。

同时选中者三个文件,点击Compile,编译完之后点击Done。

此时发现刚刚新建的altera_base_v库前面出现了“+”号,说明里面已经有东西了,如下图所示:1.1.3.3建立库altera_device建立库altera与建立库altera_base_v的流程是一样的,首先新建一个library,方法是打开菜单file->new->library,出现如下图所示窗口,按下图所示窗口填好,注意:Library Physical Name应该指向的是上一节所建立的altera_device文件夹。

点击OK之后,回到modelsim界面,会发现多出了altera_device (empty)库,现在这个库里什么都没有,下面往里面添加内容。

打开菜单Compile->Compile..,弹出如下界面:注意下图设置,Library一定要选择刚刚新建的altera_device库,查找范围则是在quartus 的安装目录下,在quartus的安装目录中找到sim_lib文件夹,比如我的quartus安装在C盘,则查找路径为C:\altera\11.0\quartus\eda\sim_lib。

为了建立altera_device库,需要编译1个文件cycloneive_atoms.v(用什么型号的FPGA 选择什么名称的文件,这里用的FPGA是cycloneive),选中cycloneive_atoms.v后,点击Compile ,编译完之后点击Done,此时发现刚刚新建的altera_device库前面出现了“+”号,说明里面已经有东西了,如下图所示:1.1.3.4更改ModelsimSE的配置文件两个资源库altera_base_v,altera_device编译完成之后还没有结束,我们还需要改一下ModelsimSE的配置文件,配置文件在ModelsimSE的安装目录下(C:\modeltech_10.0c),文件名为modelsim.ini,在更改modelsim.ini时,最好先备份一下吧,防止不甚改错掉。

用记事本打开modelsim.ini(如果用记事本打开内容很乱,就用写字板打开吧),找到[Library],在后面添加如下图所示的两行命令,指定Library所在的位置,注意每一行命令一定要以回车结尾。

(modelsim.ini是只读文件,首先去掉只读才能更改)关闭ModelsimSE 软件,重新打开,会发现ModelsimSE 中的库多了以下两条,如果找不到这两条,证明库没有添加成功,检查modelsim.ini更改是否正确。

(注意:若是打开之前建立的ModelsimSE工程,则还是不会出现这两个库)1.2功能仿真1.2.1建立ModelsimSE工程打开ModelsimSE菜单file->new->Project,会出现下图对话框:Project Name既是所要建立的工程名,Project Location为工程存放的位置,Default Library Name既是工作库的名字,一般默认为work,不要去改这个名字。

一个ModelsimSE 工程只有一个工作库,很多个资源库,之前建立的altera_base_v,altera_device就是资源库。

1.2.2添加Quartus工程文件Quartus工程文件的结构如下如所示:这里建议把所有的模块名称都换为小写,理由如下:如果lpm_latch_12中有一个字母是大写,在将dsp_fpga_register.bdf生成dsp_fpga_register.v文件时,就会多生成lpm_latch_12_0.v、lpm_latch_12_1.v、…、lpm_latch_12_29.v共30个文件,这样子仿真往往会没有输出结果,如果是小写,就不会有这30个文件,所以在建立Quartus工程时,建议所有的模块名称全部改为小写。

由于ModelsimSE不能对BDF文件进行仿真,必须把BDF文件转换为verilog文件,只要选中BDF文件,在Quartus中选中菜单File->create/Update->create HDL Design file from current file即可。

在ModelsimSE中,如下图所示,选中红框出然后右击空白处,选择Add to Project –> Existing File,电机Browse..选择Quartus中对应的文件。

由上面的Quartus工程文件结构可以发现Quartus从顶层到底层共有两层,共4个实体模块,30个lpm_latch_12模块是同一个实体模块的复制,所以只能算一个,那么ModelsimSE中共需导入4个文件,如下图所示:这四个文件少一个都不行,多了也是不对的。

注意上图的蓝色问号了吧,这是由于ModelsimSE还没有对着四个文件进行编译。

下面新建testbench测试文件,在ModelsimSE中,如下图所示,选中红框出然后右击空白处,选择Add to Project –>New File,注意红框出选择Verilog,点击ok即可。

至于testbench文件如何编写,这里就不做详细叙述了,否则篇幅太大了。

这里只说一个建议吧,testbench文件中signal的名称是可以和Quartus顶层实体输入输出信号的名称一样的,如下图至此,ModelsimSE工程中该添加的文件都添加完了,下面就是编译仿真了。

1.2.3编译由于Quartus里调用了primitives库,所以ModelSimSE里也必须调用我们之前做的库,调用设置如下:在ModelSimSE里打开菜单Simulate->start simulation,打开如下图所示窗口:选择 Libraries,然后Add..,然后点击下拉箭头(注意不要选择Browse..,选择旁边的下拉箭头即可)。

添加如下图所示的两个库,点击OK即可。

在ModelsimSE中右击上一节添加的文件,点击Compile->Compile all编译所有的五个文件,编译通过后,蓝色的问号会全部变为绿色的对号,同时Transcript中也会显示0 failed 0 error,如下面两图:此时点击Library,展开work,会有一系列的实体名出现,这些实体名既是我们Quartus 中的实体名。

相关文档
最新文档