没有合适的资源?快使用搜索试试~ 我知道了~
Modelsim6.0使用教程
需积分: 9 26 下载量 92 浏览量
2008-12-19
10:42:54
上传
评论
收藏 423KB PDF 举报
温馨提示
试读
18页
Modelsim6.0详细使用教程,非常详细
资源详情
资源评论
资源推荐
Modelsim 6.0 使用教程
1. Modelsim 简介
Modelsim 仿真工具是 Model 公司开发的。它支持 Verilog、VHDL 以及他们的混合仿真,
它可以将整个程序分步执行,使设计者直接看到他的程序下一步要执行的语句,而且在程序
执行的任何步骤任何时刻都可以查看任意变量的当前值,可以在 Dataflow 窗口查看某一单
元或模块的输入输出的连续变化等,比 quartus 自带的仿真器功能强大的多,是目前业界最
通用的仿真器之一。
对于初学者,modelsim 自带的教程是一个很好的选择,在 Help->SE PDF
Documentation->Tutorial 里面.它从简单到复杂、从低级到高级详细地讲述了 modelsim 的
各项功能的使用,简单易懂。但是它也有缺点,就是它里面所有事例的初期准备工作都已经
放在 example 文件夹里,直接将它们添加到 modelsim 就可以用,它假设使用者对当前操作
的前期准备工作都已经很熟悉,所以初学者往往不知道如何做当前操作的前期准备。
2. 安装
同许多其他软件一样,Modelsim SE 同样需要合法的 License,通常我们用 Kengen 产生
license.dat。
⑴. 解压安装工具包开始安装,安装时选择 Full product 安装。当出现 Install
Hardware Security Key Driver 时选择否。当出现 Add Modelsim To Path 选
择是。出现 Modelsim License Wizard 时选择 Close。
⑵. 在 C 盘根目录新建一个文件夹 flexlm,用 Keygen 产生一个 License.dat,然后
复制到该文件夹下。
⑶. 修改系统的环境变量。右键点击桌面我的电脑图标,属性->高级->环境变量->
(系统变量)新建。按下图所示内容填写,变量值内如果已经有别的路径了,
请用“;”将其与要填的路径分开。LM_LICENSE_FILE = c:lexlm\license.dat
1
⑷.安装完毕,可以运行。
3. Modelsim 仿真方法
Modelsim 的仿真分为前仿真和后仿真,下面先具体介绍一下两者的区别。
3.1 前仿真
前仿真也称为功能仿真,主旨在于验证电路的功能是否符合设计要求,其特点是不考虑
电路门延迟与线延迟,主要是验证电路与理想情况是否一致。可综合 FPGA 代码是用 RTL 级
代码语言描述的,其输入为 RTL 级代码与 Testbench.
3.2 后仿真
后仿真也称为时序仿真或者布局布线后仿真,是指电路已经映射到特定的工艺环境以
后,综合考虑电路的路径延迟与门延迟的影响,验证电路能否在一定时序条件下满足设计构
想的过程,是否存在时序违规。其输入文件为从布局布线结果中抽象出来的门级网表、
Testbench 和扩展名为 SDO 或 SDF 的标准时延文件。SDO 或 SDF 的标准时延文件不仅包含门
延迟,还包括实际布线延迟,能较好地反映芯片的实际工作情况。一般来说后仿真是必选的,
检查设计时序与实际的 FPGA 运行情况是否一致,确保设计的可靠性和稳定性。
3.3 Modelsim 仿真的基本步骤
Modelsim 的仿真主要有以下几个步骤:建立库并映射库到物理目录;编译原代码(包
括 Testbench;执行仿真。
3.3.1 建立库
在执行一个仿真前先建立一个单独的文件夹,后面的操作都在此文件下进行,以防止文
件间的误操作。然后启动 Modelsim 将当前路径修改到该文件夹下,修改的方法是点
File->Change Directory 选择刚刚新建的文件夹见下图。
2
仿真库是存储已编译设计单元的目录,modelsim 中有两类仿真库,一种是工作库,默
认的库名为 work,另一种是资源库。Work 库下包含当前工程下所有已经编译过的文件。所以
编译前一定要建一个 work 库,而且只能建一个 work 库。资源库存放 work 库中已经编译文
件所要调用的资源,这样的资源可能有很多,它们被放在不同的资源库内。例如想要对综合
在 cyclone 芯片中的设计做后仿真,就需要有一个名为 cyclone_ver 的资源库。
映射库用于将已经预编译好的文件所在的目录映射为一个 modelsim 可识别的库,库内
的文件应该是已经编译过的,在 Workspace 窗口内展开该库应该能看见这些文件,如果是没
有编译过的文件在库内是看不见的。
建立仿真库的方法有两种。一种是在用户界面模式下,点 File->New->Library 出现下
面的对话框,选择 a new library and a logical mapping to it,在 Library Name 内输入
3
要创建库的名称,然后 OK,即可生成一个已经映射的新库。另一种方法是在 Transcript 窗
口输入以下命令:
vlib work
/* 库名 */
vmap work work
/* 映射的逻辑名称 存放的物理路径 */
如果要删除某库,只需选中该库名,点右键选择 Delete 即可。
需要注意的是不要在 modelsim 外部的系统盘内手动创建库或者添加文件到库里;也不
要 modelsim 用到的路径名或文件名中使用汉字,因为 modelsim 可能无法识别汉字而导致莫
名其妙的错误。
3.3.2 编写与编译测试文件
在编写 Testbench 之前最好先将要仿真的目标文件编译到工作库中,点
Compile->Compile 或
,将出现下面的对话框,
在 Library 中选择工作库,在查找范围内找到要仿真的目标文件,然后点 Compile 和 Done。
或在命令行输入 vlog fulladder.v。此时目标文件已经编译到工作库中,在 Library 中展
开工作库会发现该文件。
4
剩余17页未读,继续阅读
wangd81216
- 粉丝: 0
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0