打印

安富利GSM给您讲讲使用ModelSim 进行设计仿真

[复制链接]
楼主: GoldSunMonkey
手机看帖
扫描二维码
随时随地手机跟帖
41
GoldSunMonkey|  楼主 | 2011-12-23 21:25 | 只看该作者 |只看大图 回帖奖励 |倒序浏览
(9) Wave(波形)
打开波形窗口,这是我们仿真时经常需要查看的窗口,在其中显示了输入和输出的波形。
(10) Datasets
打开Dataset浏览器来打开、关闭、重命名或激活一个Dataset。你在使用的时候会发现没有什么变化,
这时候你可以看看Workspace窗口下是不是多了一个选项卡。该选项卡显示的内容与Structure窗口显
示的完全相同。
(11) Coverage(覆盖率)
查看仿真的代码覆盖率。
(12) Active Processes(活动的进程)
当前正在执行的进程。
(13) workspace(工作区)
打开当前的工作区。
(14) Encoding(编码)
以不同的编码查看。
(15) Properties
显示工作区中选中对象的属性

使用特权

评论回复
42
GoldSunMonkey|  楼主 | 2011-12-23 21:26 | 只看该作者
4. Compile(编译)菜单
(1) Compile(编译)
把HDL源文件编译到当前工程的工作库中。
(2) Compile Options(编译选项)
设置VHDL和Verilog编译选项,例如可以选择编译时采用的语法标准等。
(3) Compile All(全编译)
编译当前工程中的所有文件。
(4) Compile Select(编译选中的文件)
编译当前工程中的选中文件。
(5) Compile Order(编译顺序)
设置编译顺序,一般系统会根据设计对VHDL自动生成编译顺序,但对于Verilog需要指定编译顺序。

使用特权

评论回复
43
GoldSunMonkey|  楼主 | 2011-12-23 21:26 | 只看该作者
(6) Compile Report(编译报告)
有关工程中已选文件的编译报告。
(7) Compile Summary(编译摘要)
有关工程中所有文件的编译报告。

使用特权

评论回复
44
GoldSunMonkey|  楼主 | 2011-12-23 21:26 | 只看该作者
5. Simulate(仿真)菜单
这里的编译及运行命令类似于VC等高级语言的调试时候的命令。
(1) Simulate(仿真)
装载设计单元。
(2) Simulation Options(仿真选项)
设置仿真选项。
(3) Run(运行)
Run ***ns:在该仿真时间长度内进行仿真。若要改变长度,可在Simulation Options中设置或在工具栏中修改;
Run-All(运行所有仿真):进行仿真,直到用户停止它;
Continue(继续):继续仿真;
Run-Next(运行到下一事件):运行到下一个事件发生为止;
Step(单步):单步仿真;
Step-Over:仿真至子程序结束;
Restrat:重新开始仿真,重新加载设计模块,并初始化仿真时间为零。

使用特权

评论回复
45
GoldSunMonkey|  楼主 | 2011-12-23 21:27 | 只看该作者
(4) Break(停止)
停止当前的仿真。
(5) End Simulation(结束仿真)
结束当前仿真。

使用特权

评论回复
46
GoldSunMonkey|  楼主 | 2011-12-23 21:27 | 只看该作者
6. Tool(工具)菜单
(1) Waveform Compare(波形比较)
在子菜单中有具体进行波形比较的命令。
(2) Coverage(覆盖率)
测试仿真的代码覆盖率,所谓代码覆盖率是指仿真运行到当前已运行的代码占所有代码的比例,当然是越接近100%越好。
(3) Breakpoints(断点设置)
单击此选项出现断点设置对话框,设置断点。
(4) Execute Macro(执行宏文件)
所谓的宏文件就是保存后的脚本,脚本保存起来,以后可以利用该命令来重新执行。
(5) Options(选项)
Transcript File:设置脚本文件的保存。
Command History:命令历史。
Save File:保存脚本文件。
Saved Lines:限制脚本文件的行数。
Line Prefix:设置每一行的初始前缀。
Update Rate:设置状态条的刷新频率。
ModelSim Prompt:改变ModelSim的命令提示符。
VSIM Prompt: 改变VSIM的命令提示符。
Paused Prompt: 改变Paused的命令提示符。
HTML Viewer:设置打开在线帮助的文件。

使用特权

评论回复
47
GoldSunMonkey|  楼主 | 2011-12-23 21:27 | 只看该作者
(6) Edit Preferences(编辑参数选取):
设置编辑参数。
(7) Save Preferences(保存参数选取):
设置保存用的参数。

使用特权

评论回复
48
GoldSunMonkey|  楼主 | 2011-12-23 21:27 | 只看该作者
7. Window (窗口)菜单:
(1) Initial Layout(初始化版面)
恢复所有窗口到初始时的大小和位置。
(2) Cascade(层叠)
使所有打开的窗口层叠。
(3) Tile Horizontally(水平平铺)
水平分隔屏幕,显示所用打开的窗口。
(4) Tile Vertically(垂直平铺)
垂直分隔屏幕,显示所用打开的窗口。
(5) Layout Style(版面格式)
Default(默认格式):与Initial Layout格式相同;
Classic(经典格式):采样低于5.5版本的格式;
Cascade:与Cascade格式相同;
Horizontally:与Tile Horizontally格式相同;
Vertically:与Tile Vertically格式相同。
(6) Icon Children
除了主窗口之外的其他窗口缩为图标。
(7) Icon All
将所有窗口缩为图标。
(8) Deicon All
将所用缩为图标的窗口还原。

使用特权

评论回复
49
GoldSunMonkey|  楼主 | 2011-12-23 21:28 | 只看该作者
8. Help(帮助)菜单
(1) About ModelSim
显示ModelSim的版本、版权等信息。
(2) Release Notes
显示ModelSim的版本发布信息。
(3) Welocme Menu
显示欢迎画面。
(4) PDF Documentation
在子菜单中可以选择ModelSim的PDF文档。
SE HTML Documentation:ModelSim的超文本文档。
(5) Tcl Help:Tcl帮助文档。
Tcl是Tools Command Language的缩写, 它是一种可扩充的命令解释语言,具有与C语言的接口和命
令的能力,应用非常广泛,这方面也有专门的书籍。.
(6) Tcl Man Pages:Tcl主页面。
(7) Technotes:技术文档。

使用特权

评论回复
50
GoldSunMonkey|  楼主 | 2011-12-23 21:28 | 只看该作者
8. Help(帮助)菜单
(1) About ModelSim
显示ModelSim的版本、版权等信息。
(2) Release Notes
显示ModelSim的版本发布信息。
(3) Welocme Menu
显示欢迎画面。
(4) PDF Documentation
在子菜单中可以选择ModelSim的PDF文档。
SE HTML Documentation:ModelSim的超文本文档。
(5) Tcl Help:Tcl帮助文档。
Tcl是Tools Command Language的缩写, 它是一种可扩充的命令解释语言,具有与C语言的接口和命令的能力,应用非常广泛,这方面也有专门的书籍。.
(6) Tcl Man Pages:Tcl主页面。
(7) Technotes:技术文档。

使用特权

评论回复
51
GoldSunMonkey|  楼主 | 2011-12-23 21:29 | 只看该作者
工具栏
ModelSim的工具栏如图8-2-2所示。从左到右依次为:打开、复制、粘贴、如何更新ModelSim、编译选
定、编译全部、仿真、停止仿真、重新开始仿真、仿真步长、运行一步、继续运行、运行所有、单步执行、主程序的单步执行。

使用特权

评论回复
52
GoldSunMonkey|  楼主 | 2011-12-23 21:29 | 只看该作者
状态栏
ModelSim的状态条如图8-2-3所示,其中Project后面为当前工程的名称,Now后面为当前仿真时间。最右边的
为选定的仿真结构中变量。

使用特权

评论回复
53
GoldSunMonkey|  楼主 | 2011-12-23 21:30 | 只看该作者
从一个例子开始学习ModelSim
前面两节简要介绍了有关ModelSim的安装以及用户界面的功能,初学者可能会觉得又很多名词看不懂,这一
节我们来从一个简单的例子学习ModelSim的简单的使用。学完本节你会发现ModelSim不仅好用,而且易
用。
这一节我们使用的例子是一个分频电路的设计。所谓分频电路是将较高频率的时钟分频,得到较低频率的时
钟,分频电路的使用较为广泛,例如,我们要编写一个显示时间的电路就需要一个分频器,将晶振的频率分频
得到1Hz的时钟信号。分频有几种方法,对于较为规则的分频,如2分频、4分频、8分频等可以调用ISE本身的
库函数来实现,对于较不规则的分频,我们也有两种方法,一种是利用计数器的某一位来作为分频输出,一种

计数器计数到某一数值时,分频时钟信号翻转来实现分频。两种方法的可以从其仿真结果得到。之所以选择这
个例子,是因为这里例子有实用价值并且设计本身简单,仿真也较为简单。好了,下面我们开始我们的设计。

使用特权

评论回复
54
GoldSunMonkey|  楼主 | 2011-12-23 21:32 | 只看该作者
考虑到初学者,这里的讲述较为详细,初学者可以按照如下步骤开始:1、运行
ModelSim,方法是点击开始->程序->ModelSim XE II 5.7c->ModelSim或双击桌面上的快捷方式,
会出现如图所示的界面,如果上一次使用ModelSim建立过工程,这时候会
自动打开上一次所建立的工程;

使用特权

评论回复
55
GoldSunMonkey|  楼主 | 2011-12-23 21:33 | 只看该作者
本帖最后由 GoldSunMonkey 于 2011-12-23 21:34 编辑

点击File->New->Project,会出现如图示的界面,在Project Name中我们输入建立的工程名字为
DivClkSimu,在Project Location中输入工程保存的路径为
D:/yuProj/modelsim/DivClk,注意ModelSim不能为一个工程自动建立一个目录,这里我
们最好是自己在Project Location中输入路径来为工程建立目录,在Default Library Name
中为我们的设计编译到哪一个库中,这里我们使用默认值,这样,在我们编译设计文件后,
在Workspace窗口的Library中就会出现work库。这里我们输入完以后,点击OK;

使用特权

评论回复
56
GoldSunMonkey|  楼主 | 2011-12-23 21:36 | 只看该作者
3、这时有对话框如图所示,提示我们给定的工程路径不存在,是否建立该路径,我们的目的就是为工程建立一个新目录,因此,点击确定;

使用特权

评论回复
57
GoldSunMonkey|  楼主 | 2011-12-23 21:36 | 只看该作者
3、这时有对话框如图所示,提示我们给定的工程路径不存在,是否建立该路径,我们的目的就是为工程建立一个新目录,因此,点击确定;

使用特权

评论回复
58
GoldSunMonkey|  楼主 | 2011-12-23 21:37 | 只看该作者
本帖最后由 GoldSunMonkey 于 2011-12-23 22:21 编辑

这时候出现如图所示的界面,可以点击不同的图标来为工程添加不同的项目,点击Create New File可以为工程添加新建的文件,点击Add Existing File为工程添加已经存在的文件,点击Create Simulation为工程添加仿真,点击Create New Folder可以为工程添加新的目录。这里我们点击Create New File;

使用特权

评论回复
59
GoldSunMonkey|  楼主 | 2011-12-23 21:37 | 只看该作者
本帖最后由 GoldSunMonkey 于 2011-12-23 22:22 编辑

这时候出现如图所示的界面,可以点击不同的图标来为工程添加不同的项目,点击Create New
File可以为工程添加新建的文件,点击Add Existing File为工程添加已经存在的文件,点击Create Simulation为工程添加仿真,点击Create New Folder可以为工程添加新的目录。这里我们点击Create New File;

使用特权

评论回复
60
GoldSunMonkey|  楼主 | 2011-12-23 22:23 | 只看该作者
出现界面如图所示,我们在File Name中输入DivClkHDL作为文件的名称,Add file as type为输入文件的类型为VHDL、Verilog、TCL或text,这里我们使用默认设置VHDL,Folder为新建的文件所在的路径,Top Level为在我们刚才所设定的工程路径下。点击OK;并在Add items to the Project窗口点击Close关闭该窗口;

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则