用ModelSim作功能仿真(8).ppt

  1. 1、本文档共30页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:400-050-0739(电话支持时间:9:00-19:00)。
用ModelSim作功能仿真(8) 3 ? 编译源代码(Verilog) UI) Design -> Compile Cmd) vlog -work <library_name> <file1>.v <file2>.v 文件按出现的顺序被编译 文件的顺序或者编辑的顺序不重要 支持增量式编译(只有被改动的设计单元被编译) 缺省编译到work库 例如. vlog my_design.v 用ModelSim作功能仿真(9) 3 ? 编译源代码 用ModelSim作功能仿真(10) 3 ? 编译源代码----错误信息 用ModelSim作功能仿真(11) 4 ? 启动仿真器 UI) Design -> Load New Design Cmd) vsim -lib <library_name> <top_level_design> VHDL vsim top_entity top_architecture Verilog vsim top_level1 top_level2 仿真多个top级模块 用ModelSim作功能仿真(11) 4 ? 启动仿真器 用ModelSim作功能仿真(12) 4 ? 启动仿真器 用ModelSim作功能仿真(13) 4 ? 启动仿真器----vsim 命令的参数 参数 -t <time_unit> 指定仿真的时间分辨率 单位可以是{fs, ps, ns, ms, sec, min, hr} 如果用了 Verilog的 ‘timescale指令, 将使用整个设计中的最小的时间精度 可选项(缺省是 ns) -sdfmin | -sdftyp | -sdfmax <instance>=<sdf_filename> 注释SDF文件 可选项 使用实例名也是可选项; 如果没有使用, SDF用于顶级 用ModelSim作功能仿真(14) 5 ? 执行仿真 UI) Run CMD) run <time_step> <time_units> 按timesteps指定的时间长度执行仿真 add wave /clk add wave /clr add wave /load add wave -hex /data add wave /q force /clk 0 0, 1 50 -repeat 100 force /clr 0 0, 1 100 run 500 force /load 1 0, 0 100 force /data 16#A5 0 force /clk 0 0, 1 50 -repeat 100 run 1000 用ModelSim作时序仿真 时序仿真的含义 时序仿真的实现方法 其他问题 时序仿真的含义: 布局布线后进行的后仿真 包含有延时信息 仿真结果可能与功能仿真不相同 除功能仿真时需要的文件以外,还需要网表文件(如time_sim.vhd或time_sim.v)和包含延时信息的文件(time_sim.sdf文件) 时序仿真的实现方法: 编译Xilinx公司的库文件: 先将modelsim.ini文件的只读属性去掉 将Xilinx公司元件库的脚本文件COPY到modelsim的安装目录下 在main窗口运行: MODELSIM> source <path_to_script>/xilinx_lib.tcl 这里的路径一定要用/来表示,比如e:/tools/xilinx 看到弹出对话框后,选择相应的选项,进行库的编译 时序仿真的实现方法: 以Foundation为例: Foundation所产生的netlist不包含time delay的数据,有一个time_sim.SDF文件来存储TIMING数据。(有的厂商的布局布线所产生的NETLIST文件已经包含有time delay的数据). Foundation所产生的NETLIST文件默认的文件名是time_sim.vhd(或time_sim.v) time_sim.vhd或time_sim.v文件用到新的simprim库,因此必须在仿真前先建立。 做时序仿真,要编译time_sim.vhd或time_sim.v,以及time_sim.SDF 加载测试文件 时序仿真的容易遇到的问题: 以Xilinx公司的为例: GSR信号产生的影响(可以通过改变输入信号时延来解决) D触发器的setup time不足(可以通过分析SDF文件来追究错误所在) 总结 前面讲述了ModelSim的基本使用方法。大家可通过例子来练习使用ModelSim 还有一些较深入的问题,例如: 用VITAL仿真模型支持VHDL 布局布线后仿真;用Tcl 去定制ModelSim图形用户界面;用Tcl 去自动生成测试矢量;用性能分

文档评论(0)

阿毛
该用户很懒,什么也没介绍

相关文档

相关课程推荐