用Model技术公司的ModelSim做分析设计

上传人:ldj****22 文档编号:54418535 上传时间:2018-09-12 格式:PPT 页数:73 大小:906KB
返回 下载 相关 举报
用Model技术公司的ModelSim做分析设计_第1页
第1页 / 共73页
用Model技术公司的ModelSim做分析设计_第2页
第2页 / 共73页
用Model技术公司的ModelSim做分析设计_第3页
第3页 / 共73页
用Model技术公司的ModelSim做分析设计_第4页
第4页 / 共73页
用Model技术公司的ModelSim做分析设计_第5页
第5页 / 共73页
点击查看更多>>
资源描述

《用Model技术公司的ModelSim做分析设计》由会员分享,可在线阅读,更多相关《用Model技术公司的ModelSim做分析设计(73页珍藏版)》请在金锄头文库上搜索。

1、1,用Model技术公司的 ModelSim 做分析设计,更多内容请访问http:/,2,典型的PLD设计流程,3,系统产品,设计规范,典型的PLD流程,设计输入,RTL仿真,设计综合,门级仿真,布局和布线,时序分析,系统上验证,修改设计,4,典型的PLD设计流程,设计输入 设计的行为或结构描述 RTL仿真(ModelSim) 功能仿真 验证逻辑模型(没有使用时间延迟) 可能要求编辑设计 综合 把设计翻译成原始的目标工艺 最优化 合适的面积要求和性能要求 布局和布线 映射设计到目标工艺里指定位置 指定的布线资源应被使用,5,典型的PLD设计流程,门级仿真 (ModelSim) 时序仿真 验证设

2、计一旦编程或配置将能在目标工艺里工作 可能要求编辑设计 时序分析 验证合乎性能规范 可能要求编辑设计 版图设计 仿真版图设计 在板编程和测试器件,6,ModelSim概览,ModelSim 仿真工具,由Model技术公司开发工业上最通用的仿真器之一可在Verilog 和 VHDL仿真 OEM版本允许Verilog仿真 或者 VHDL 仿真,8,ModelSim 产品,ModelSim/VHDL 或者 ModelSim/Verilog OEM ModelSim/LNL 许可 Verilog 或者 VHDL,但是不同时许可 ModelSim/PLUS 设计者能立刻混合仿真Verilog 和 VHD

3、L ModelSim/SE 首要的版本 PLUS的所有功能连同附加功能,9,ModelSim OEM 功能,提供完全的标准 87 VHDL 93 VHDL IEEE 1364-95 Verilog SDF 1.0 - 3.0 VITAL 2.2b VITAL 95 易用的界面 通用的平台,10,用ModelSim 仿真,课程安排,基本的仿真步骤 用户界面 功能仿真 Quartus输出仿真文件 时序仿真,12,Model 技术公司的 ModelSim,main主窗口:,structure结构窗口,process处理窗口:,Signal&variable信号和变量窗口,dataflow数据流窗口,

4、source源窗口,Wave&list 波形和列表窗口,13,ModelSim实现方法,交互式的命令行 (Cmd) 唯一的界面是控制台的命令行, 没有用户界面 用户界面 (UI) 能接受菜单输入和命令行输入 课程主要讨论 批处理模式 从DOS或UNIX命令行运行批处理文件 不讨论,14,基本仿真步骤,1 建立库2 映射库到物理目录3 编译源代码- 所有的HDL代码必须被编译- Verilog和VHDL是不同的4 启动仿真器5 执行仿真,15,1 建立ModelSim库,UI) 从主菜单里面:Design - Create a New LibraryCmd) 从main, 记录窗口:ModelS

5、im vlib ,16,ModelSim 库,包含编译设计单元的目录 VHDL 和 Verilog 都被编译到库里 两个类型 Working (缺省值 work) 包含当前被编译的设计单元 编译前必须建立一个working库 每个编译只允许一个 Resource 包含能被当前编译引用的设计单元 在编译期间允许多个 VHDL库能通过LIBRARY和USE子句引用,17,ModelSim 设计单元,主要 在一个特定的库中必须有唯一的名字 VHDL Entities(实体) Package Declarations(包声明) Configurations(结构) Verilog Modules(模块

6、) User Defined Primitives (用户定义原语),次要 在相同的库里单元可以用一个普通名称 VHDL Architectures(体系) Package bodies Verilog没有次要单元,18,VHDL Library std 包含packages standard 和 textio 这些packages初学者不要去修改 IEEEpure 包含唯一IEEE 认可的 std_logic_1164 packages 用于仿真加速 IEEE 包含预编译的Synopsys和IEEE 算法包 给std_logic的基本类型 用于仿真加速,VHDL 预先确定库,19,vlib

7、命令,建立库 缺省值是 work,_info,any_verilog_module,any_vhdl_unit,_lock,_primary.dat _primary.vhd verilog.asm,_primary.dat .dat .asm,Where _primary.dat - Verilog module 或 VHDL entity的编码格式 _primary.vhd - Verilog 端口的VHDL entity陈述 .dat - VHDL体系的编码格式 verilog.asm 和 .asm 执行代码文件,20,建立库(UI),选择 a new library only 和输入库

8、名,这个命令在局部目录建立一个库子目录,- vlib lpm_sim,21,映射逻辑库名,必须映射一个逻辑库名到库路径(定位) 在库路径里的文件必须已经被编译 支持相对的, 绝对的, 和软件路径名 需要库在工作目录里没有定位 用vmap命令,22,2 映射逻辑库名,语法: vmap ,UI) 从主菜单:Design - Browse LibrariesDesign - Create a New LibraryCmd) 从主体的记录窗口:ModelSim vmap my_work c:/my_design/my_lib,23,映射现有的库(UI),选择 a map to an existing

9、library 和输入库名,浏览库目录,用这个命令可映射一个设计单元已经预编译的库目录,- vmap lpm_sim c:/Quartus/library/lpm,24,映射现有的库(UI),选择 a new library and a logical mapping to it a输入库名,这个命令在局部目录建立一个库目录然后为它设立映射,- vlib my_lib - vmap my_lib my_lib,25,映射库 (UI),用Add 按钮建立一个新的库和映射,26,其他的库命令,vdel 从指定的库中删除一个完整的库或者一个设计单元 UI) Design - Library Brow

10、ser (删除库或者映射) UI) Design - View Library Contents (删除设计单元) Cmd) vdel -lib vdir 显示指定库的内容 UI) Design - View Library Contents Cmd) vdir -lib ,27,3 编译源代码(VHDL),UI) Design - Compile Cmd) vcom -work .vhd .vhd 文件按出现的顺序被编译 Compilation order/dependencies (next slide)87 VHDL是缺省的 UI) 用Default Options 按钮设为93 Cmd

11、) 用 -93 选项(必须是第一个参数) 缺省编译到工作库 例如. Vcom -93 my_design.vhd,注意: 当库中涉及的设计单元被改变时设计单元必须重新分析。,28,VHDL Design Units Dependencies,Entity before Architecture Package Declaration before Package Body Design units must compiled before being referenced Packages before Entity/Architectures using them Entities/Conf

12、igurations before Architectures referencing them Configurations are compiled last,29,3 编译源代码(Verilog),UI) Design - Compile Cmd) vlog -work .v .v 文件按出现的顺序被编译 文件的顺序或者编辑的顺序不重要支持增量式编译缺省编译到work库 例如. vlog my_design.v,注意:当库中涉及的设计单元被改变时设计单元必须重新分析。,30,Verilog 增量编译,只有被改变的设计单元被编译 自动或者手动 手动更有效 自动在命令行用 -incr 选项

13、Module 和 UDP实例和 hierarchical references可在仿真时解决 一些错误在编辑时将不能察觉 引用的模块没有编译 不正确的端口连接 不正确的hierarchical references,31,编译 (UI),点亮一个或多个文件并点击 Compile,32,错误信息,错误信息在 Main 窗口显示,在信息上双击,引起错误的代码在 Source 窗口被点亮,33,4 启动仿真器,UI) Design - Load New Design Cmd) vsim -lib VHDL vsim top_entity top_architecture 仿真 Entity/Arch

14、itecture 对 也能选择一个结构 Verilog vsim top_level1 top_level2 仿真多个top级模块,34,启动仿真器 (UI),选择仿真器的分辨率,选择库,选择顶级module 或 entity/architecture,35,启动仿真器(UI),指定 SDF文件,使用定时值的等级的类型 (如果不是顶级),36,vsim 命令的参数,参数 -t 指定仿真的时间分辨率 单位可以是fs, ps, ns, ms, sec, min, hr 如果用了 Verilog的 timescale指令, 将使用整个设计中的最小的时间精度 可选项(缺省是 ns)-sdfmin |

15、-sdftyp | -sdfmax = 注释SDF文件 可选项 使用实例名也是可选项; 如果没有使用, SDF用于顶级,37,5 执行仿真,UI) Run COM) run 按timesteps指定的时间长度执行仿真,38,执行仿真 (UI),选择 timesteps数量就可以执行仿真,Restart 重装任何已改动的设计元素并把仿真时间设为零COM) restart,39,run 命令参数,可选的参数 - 指定运行的timesteps数量 单位可用fs, ps, ns, ms, sec-step Steps to the next HDL statement-continue 继续上次在-s

16、tep或断点后的仿真-all 运行仿真器直到没有其他的事件,40,run 命令举例,run 1000 从当前位置运行仿真 1000 timesteps run 2500 ns 从当前位置运行仿真2500 ns run 3000 运行仿真到 timestep 3000,41,仿真器激励,测试台 Verilog 或 VHDL 非常复杂的仿真 交互式仿真force命令 简单的模块仿真 直接从命令控制台输入 .DO 文件 (宏文件),42,force 命令,允许用户给VHDL信号和Verilog线网予以激励 常规语法: force , 参数 item_name 被激励的HDL项的名称 必需的 必须是一个Must be a scalar or one-dimensional array of characters Can be an indexed array, array slice, or record sub-element as long as its of the above type Can use wildcards as long as only one match is obtained,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号