1 Vivado中编译Questasim仿真需要的基础库

Questasim作为一个第三方的仿真工具,如果需要仿真Vivado中的工程,则需要将Vivado中的仿真库编译一下,为能够在Questasim工具中使用。
Vivado编译Questasim仿真库的方法如下所示:

1.首先打开Vivado,点击Tools -> Compile Simulation Libraries…

2. Simulator选择Questasim ,Advanced Simulator,Advanced中的Compiled library location是基础库编译的存放位置,自定义选择本地的路径。

2 仿真文件do文件编写步骤

do文件可以理解为makefile文件,表明Questasim仿真工程中需要的源文件、仿真文件、链接库等文件,主要为仿真行为服务,所以do文件的编写主要是添加文件以及库函数。do文件的编写如下所示:

1 设置相对路径

设置相对路径的作用是简化do文件中重复添加的工程路径,以及对所需文件起到一个概略分类的作用。设置相对路径如下所示:

set SRC_DIR {"project_name/sources_1"}
set IP_DIR {"project_name/ip"}
set SIM_DIR {"project_name/sim_1"}
set LIB_DIR {"D/Questasim/Quastasim_lib"}

SRC_DIR 路径为工程源文件的路径;
IP_DIR 路径为工程IP的路径;
SIM_DIR 路径为仿真文件的路径;
LIB_DIR 路径为vivado编译的Quastasim仿真环境下的使用的vivado基础库目录。

2 创建work库及映射仿真库

file delete -force work
vlib work#base library
vmap secureip {$LIB_DIR}/secureip
vmap unimacro {$LIB_DIR}/unimacro
vmap unisim {$LIB_DIR}/unisim
vmap unifast {$LIB_DIR}/unifast
#user library
vmap library_name {$LIB_DIR}/library_name

其中secureip 、unimacro 、unisim 和unifast 为基础库,都需要添加的基础库。library_name为工程中需要的库,例如FIFO、FFT之类。
如果不知道所需IP仿真库的名称,可以这样找,在打开工程的Sources界面中IP Sources,选择所需IP的 *.vhdl文件,打开,前面部分即为IP仿真库的名称,如图所示:

打开 vhdl文件,前面即为IP仿真库名称,如图所示:

其中UNISIM为仿真库名称(此处仅作为举例,需按照实际工程命名)。

3 添加设计源文件以及仿真文件

vlog -work $SRC_DIR/ *.v
vlog -work $SIM_DIR/project_name.tb
vlog -work glbl.v

其中.v文件为仿真工程中所需的所有源文件,需要依次添加,tb文件即为仿真文件,按照说明添加即可。
vlog为Verilog工程的仿真文件添加语句,vcom为VHDL工程的仿真文件添加语句。glbl.v文件为必须添加的文件。

4 使用vsim运行仿真文件

调用vsim工具,运行仿真文件,脚本编写为:

vsim -voptargs="+acc" \ -t 1ps-L secureip \-L unimacro \-L unimacro \-L unimacro \-lib -work work work.project_name.tb work.glbl.v

前4行为固定写法,-lib选项中的tb文件,即为仿真工程的tb文件。

5 设置观测窗口

 view waveview structureview singalsrun -all

上述也为固定写法,还可以设置其他选项,但是上述选项对于仿真行为来说,足够。

3 在Questasim中运行do文件

1 打开Questasim,中命令行工具处,使用

 cd {do文件路径}

cd命令,跳转到do文件的路径下;
2 执行do文件

 do {Filename.do}

使用do命令,执行do文件即可。

Questasim仿真工具do文件编写说明相关推荐

  1. 【Android 安装包优化】开启 ProGuard 混淆 ( 压缩 Shrink | 优化 Optimize | 混淆 Obfuscate | 预检 | 混淆文件编写 | 混淆前后对比 )

    文章目录 一.开启 ProGuard 混淆 二.混淆文件编写 三.混淆前后对比 四.build.gradle 完整配置文件 五.参考资料 一.开启 ProGuard 混淆 在 build.gradle ...

  2. Android.mk文件编写

    Android.mk文件编写的例子: LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := hello LOCAL_SR ...

  3. 函数||值传递||函数的常见样式||函数的声明||函数的分文件编写

    概述 作用:将一段经常使用的代码封装起来,减少重复代码 一个较大的程序,一般分为若干个程序块,每个模块实现特定的功能. 函数的定义 函数的定义一般主要有5个步骤: 1.返回值类型 2.函数名 3.参数 ...

  4. Python实训day01pm【练习题、文件编写、列表的使用】

    Python实训-15天-博客汇总表 目录 Jupyter中文用户名导致无法运行的问题 练习题 练习1 练习2 Python文件编写注意事项 Python列表 list:有序列表 Jupyter中文用 ...

  5. C++阶段01笔记06【函数(概述、定义、调用、值传递、常见样式、声明、分文件编写)】

    C++| 匠心之作 从0到1入门学编程[视频+课件+笔记+源码] 目录 6 函数 6.1 概述 6.2 函数的定义 函数的语法 示例:加法函数 6.3 函数的调用 示例 6.4 值传递 示例 6.5 ...

  6. ITK:从文件编写一个转换

    ITK:从文件编写一个转换 内容提要 C++实现代码 内容提要 从文件编写一个转换 C++实现代码 #include "itkVersion.h" #include "i ...

  7. K8S——关于K8S控制台的yaml文件编写(基于上一章多节点K8S部署)

    K8S--关于K8S控制台的yaml文件编写(基于上一章多节点K8S部署) 一.yaml文件编写流程 二.证书自签 一.yaml文件编写流程 rbac.yaml---->secret.yaml- ...

  8. cmake使用总结(转)---工程主目录CMakeList文件编写

    在linux 下进行开发很多人选择编写makefile 文件进行项目环境搭建,而makefile 文件依赖关系复杂,工作量很大,搞的人头很大.采用自动化的项目构建工具cmake 可以将程序员从复杂的m ...

  9. 基础知识(三)makefile文件编写初级篇

    linux下进行c++开发,需要熟悉相关编译器的编译.链接命令.这边主要以实例讲解,如何在linux中,进行c++程序简单的编译链接运行. 一.单文件编译链接 这里先从最简单的单个文件编译链接为例.在 ...

最新文章

  1. sklearn中cross_val_score、cross_val_predict的用法比较
  2. OpenCV对图像进行尺寸变换
  3. 踏踏实实做事,老老实实做人
  4. 扩展方法的定义及使用
  5. djano 模型查询
  6. SSH2整合需要jar包解释
  7. Spring 解耦反射创建对象
  8. VSCode打开终端的快捷键
  9. Python 分析国庆热门旅游景点,告诉你哪些地方好玩、便宜、人又少!
  10. 浓缩的就是精华——ES6迭代器精炼讲解
  11. Transformer长大了,它的兄弟姐妹们呢?(含Transformers超细节知识点)
  12. php教程笔记复习1-ajax
  13. 《TextRank: Bringing Order into Texts》
  14. Python小游戏及登录系统
  15. 手游传奇架设教程_「教程」传奇新手架设简单教程,自己做GM,「GEE版本」
  16. 官方JwPlayer去水印步骤
  17. 对索引存储与散列存储的一些形而上的思考
  18. C语言字符串分割 trimmed simplified split
  19. 计算机保研面试题——操作系统
  20. 惊艳的产品背后,是锐利的设计思维

热门文章

  1. 贝叶斯思维 统计建模的Python学习法pdf
  2. 解决SpringCloud之Feign超时问题(Read timed out executing POST http://***)
  3. 微信小程序-页面间通信
  4. 一篇博客,带你找回登录密码
  5. 支持第三方认证用户开启MFA认证流程,支持工单申请Redis数据库应用,JumpServer堡垒机v2.19.0发布
  6. 高效轻量级深度模型的研究与实践
  7. iphone配什么蓝牙耳机最好?iphone适配蓝牙耳机推荐
  8. 短信只有文字不洋气?5G消息让短信活泼起来
  9. 《lol掌上联盟助手》上线
  10. 《加班狗是怎样炼成的?》卧槽!连看三遍有木有!