• ModelSim 使用笔记1


    ModelSim 使用笔记1

     

     ModelSim提供了简单仿真方式,还有一种要建立project,目前这种方式暂时够我用了。

    总结了以下,做了一个简单的《modelsim quick start》。 

    简单方针模式下面,操作步骤如下(黄色字符部分为每个操作对应的script指令,打开modelsim软件,在script窗口输入这些指令即可):

    1.新建library。“file->new->library"。选择library种类为“Create: a new library and a logical mapping to it”。

    vlib newlib

    vmap newlib newlib 

    2.compile所有的源程序。"compile->compile"在弹出对话框选择要编译的源文件即可。compile所有的源程序之后,会将这些编译后的文件全部添加到新建的Library中去。

    VHDL程序使用:vcom -work newlib sourcecode.vdl 

    Verilog程序使用:vlog -work newlib sourcecode.v  

    (A:源文件编译的前后顺序,对结果没有影响. B:如果前面使用的newlib名字是work,则不许要在这里指定工作lib。) 

    3.loading module到simulator里面。点击work左侧“+”号,展开lib,双击我们要观察的module。此时,会有signal窗口弹出(窗口标题是vsim)。

    vsim  lib_name.module_name

    (ATT:可能会因为vopt的缘故使得一些不重要signal被modelsim自动忽略,需添加选项 -novopt,即,vsim -novopt module_name)

    4.调整窗口,准备调试。“view->..."来打开想要观察的window。(如果wave,signals等窗口都在,就不用执行这一步了)

    view signals source wave

    5.添加要观察的signal到wave viewer里面。在对应的信号上右键“Add -> to wave -> all items in region"。

    add wave -r /* 

    add signal_name 添加单个信号到wave窗口

    6.点击run快捷按钮或者是,simulate->run,开始仿真

    run 500(运行500单位时间)

    run @ 3000(特定时刻观察)

    run -all (运行,直到testbench定义的stop时间)

    7.可以使用breakbutton来终止run,“simulate->break”

    break

    8.设置断点,直接单击要设置断点行的左侧 (不是所有行都可以设置断点,不同版本软件下自行实验)。

    当程序停止在设置的断点上时,通过以下方法查看变量值:

    1)在signal window里面直接看变量的值

    2)在source window里面,鼠标指针停留在变量上面时,会自动显示该变量的值(不确定是否全部版本都有)。

    3)在source window里面,右键examine。

    4)使用examine命令。在script窗口输入“examine var”

    9.wave观察

    观察一个数组时,可以选择用二进制,十进制,十六进制,还可以设置有符号无符号。

    还可以把它转化为analog方式,如调试一个供da使用sine输出,可以选择用analog方式来查看dout。

    Extra topic:compile the ISE standard lib for modelsim SE:


    1. use the ISE native tools.(Preferred)
    $ise_install_path/ise/bin/lin64/compxlibgui(compxlib is available for cmdline only)
    ATT: u'd better run it as root.

    2. Copy compiled libs from modelsim XE.

    3. compile the library in modelsim.
    cd $modelsim_install_path/
    mkdir ise_lib
    cd ise_lib
    mkdir unisim_ver
    vlib unisim_ver
    vmap unisim_ver unisim_ver
    vlog -work unisim_ver $ise_install_path/ise/verilog/src/unisim/*.v
    (source code for VHDL is in another dir)

    Do such for all libs.

    u need to modify the modelsim.ini before using the lib:

    $ise_install_path/ise/modelsim.ini
    add the flowing context(before[vcom]):
    unisim = $MODEL_TECH/../ise/unisim
    simprim = $MODEL_TECH/../ise/simprim
    xilinxcorelib = $MODEL_TECH/../ise/xilinxcorelib
    cpld = $MODEL_TECH/../ise/cpld
    secureip = $MODEL_TECH/../ise/secureip
    unimacro = $MODEL_TECH/../ise/unimacro
    cpld_ver = $MODEL_TECH/../ise/cpld_ver
    simprims_ver = $MODEL_TECH/../ise/simprims_ver
    uni9000_ver = $MODEL_TECH/../ise/uni9000_ver
    unimacro_ver = $MODEL_TECH/../ise/unimacro_ver
    unisims_ver = $MODEL_TECH/../ise/unisims_ver
    xilinxcorelib_ver = $MODEL_TECH/../ise/xilinxcorelib_ver

    =========================分割线=================================

    其他一些零碎:

    1.在当前工作目录下,会产生一个名为transcript的文本文件,里面记录了你在modelsim中的所有操作。 

    ——————
    无论在哪里做什么,只要坚持服务、创新、创造价值,其他的东西自然都会来的
     
    转载:https://www.cnblogs.com/pied/archive/2012/03/22/2396621.html
  • 相关阅读:
    DL_WITH_PY系统学习(第2章)
    JavaScript学习require的用法
    Vue的prop属性
    vue store action与Mutation与getters的具体用法
    OpenEBS 实现 Local PV 动态持久化存储
    vue modules 使用
    【转载】 tSNE是什么? —— 使用指南
    【转载】 Do's and Don'ts of using tSNE to Understand Vision Models —— tSNE 作者写的使用指南(PPT版本)
    【转载】 机器学习数据可视化 (tSNE 使用指南)—— Why You Are Using tSNE Wrong
    【转载】 机器学习的高维数据可视化技术(tSNE 介绍) 外文博客原文:How tSNE works and Dimensionality Reduction
  • 原文地址:https://www.cnblogs.com/chengqi521/p/7927657.html
Copyright © 2020-2023  润新知