zoukankan      html  css  js  c++  java
  • Modelsim建立UVM环境

    http://weixin.niurenqushi.com/article/2016-07-11/4359380.html

    modelsim中建立UVM环境,使用的UVM是UVM1.1d。

          如果安装的是modelsim 10.4版本的话,软件自动的将UVM的库给编译好了,生成了.dll文件,供UVM验证使用。

          在modelsim的安装目录下的 UVM-1.1d/win64下,就有一个uvm_dpi.dll。

     

     

     

          以hello_world.sv这个例子为例,说明验证环境的搭建。在这个文件目录下,有3个文件。

     

         

     Hello_world.sv: 验证的代码

          Run.bat:windows运行的脚本

          Sim.do:  modelsim运行的脚本文件

     

          对于hello_world.sv,该程序,就是输出一个hello uvm。

     

     

     

          对于rum.bat,就一句,就是调用modelsim,使用-do选项,当 modelsim启动后,自动执行sim.do脚本。

     

          对于sim.do文件

          代码

    set  UVM_DPI_HOME   C:/software/modeltech64_10.4/uvm-1.1d/win64

    vlib work

    vlog  -L mtiAvm -L mtiOvm -L mtiUvm -L mtiUPF  hello_world.sv

    vsim -c -sv_lib $UVM_DPI_HOME/uvm_dpi   work.hello_world_example

    run 100

     

     

          设置环境变量UVM_DPI_HOME,指定modelsim下的UVM1.1d的DPI的位置

          建立work library

          编译hello_world.sv代码,通过-L 指定编译需要的几个library

          执行仿真,通过-sv_lib选项,执行UVM1.1d的uvm_dpi.dll,然后针对于哪一个module进行仿真

          运行100ns

     

          执行,也很简单了,直接对run.bat双击。

     

          

    就会调用modelsim,然后开始执行sim.do脚本。      

          

    最后,就会显示Hello UVM。

     

          至此,验证环境搭建成功。后面,就是增加代码文件,然后在sim.do文件中,对增加的代码文件进行编译,然后针对于顶层module进行仿真即可。

  • 相关阅读:
    Php扩展--protocolbuffers消息打包
    Php扩展--seasLog日志扩展安装
    PHP系统编程--03.PHP进程信号处理
    PHP系统编程--01.多进程与多线程
    PHP系统编程--02.PHP守护进程化
    linux shell 之if-------用if做判断
    Connection:Keep-alive
    Http报头Accept与Content-Type的区别
    json解析
    JSON-lib框架,转换JSON、XML不再困难
  • 原文地址:https://www.cnblogs.com/hfyfpga/p/7088831.html
Copyright © 2011-2022 走看看