questasim常见问题解决方案

问题描述一:

** Error: (vlog-13069) E:/questasim_project/UVM_platform/my_driver.sv(5): near "uvm_driver": syntax error, unexpected IDENTIFIER.
** Error: E:/questasim_project/UVM_platform/my_driver.sv(5): Error in class extension specification.

解决方案:

在代码开头将UVM的库文件添加进去

`include "uvm_macros.svh"
import uvm_pkg::*;

问题描述二:

** Error: (vlog-13069) E:/questasim_project/UVM_platform/my_driver.sv(10): near "extends": syntax error, unexpected extends, expecting function or task or "SystemVerilog keyword 'pure'".

 解决方案:

        这是将task定义在class的外部了,可能造成的原因是,在class内部声明了task,在外部进行task的功能定义,但是在class内部生命task时,没有加extern前缀,导致questasim不会再class外部去寻找对应的task定义。

 如上在class中的task前加上extern即可。

问题描述三:

** Error: ** while parsing file included at E:/questasim_project/UVM_platform_2/my_agent.sv(6)
** while parsing file included at my_monitor.sv(2)
** at my_transaction.sv(5): Typedef 'my_transaction' multiply defined.

解决方案:

某个函数被多重定义了,报错while parsing file included,譬如出现如下架构:

         driver要用到transaction.sv,monitor也要用到transaction.sv,因此我们在driver.sv和monitor.sv中都在一开始`include "transaction.sv",这对于driver和monitor来说都不会报错,但是当我们在env中把driver.sv和monitor.sv都include到env时,由于在driver和monitor都进行了`include "transaction.sv",所以对于env来说,transaction就被include了两次也就是被定义了两次,重定义了,所以虽然driver和monitor不会报错但是env.sv会报错

        这种重复编译、重复定义的问题,可以通过在被include的文件首尾加入:

`ifndef MY_TRANSACTION__SV
`define MY_TRANSACTION__SV

//my_codes

`endif

        首尾加入这三句话后,在这中间的代码如果被编译过一次,那么哪怕在多个文件都include了它,也只会编译一次,就不会出现重复定义的情况了。

  • 5
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Questasim是一款由Mentor Graphics公司提供的高度可定制化、适用于各种数字电路仿真的工具。下面我会介绍Questasim的搭建过程。 1. 确认系统要求 在搭建Questasim之前,请确保您的系统满足以下要求: - 操作系统:Windows、Linux或UNIX。 - 电脑处理器:Intel Pentium或AMD Athlon。 - 运行内存:至少1GB RAM,建议2GB以上。 - 磁盘空间:至少4GB空闲空间,建议8GB以上。 2. 下载Questasim 您可以在Mentor Graphics官网上下载Questasim。下载后,根据提示安装Questasim软件。 3. 添加环境变量 完成安装后,请将Questasim的安装路径添加到系统环境变量中,这可以让您在任何目录下都可以使用Questasim的命令。 4. 运行Questasim 打开终端或命令行窗口,输入以下命令来启动Questasim: vsim [options] [designfiles] 其中,designfiles参数是您要仿真的设计文件。 5. 创建仿真模型 为了在Questasim中仿真您的电路设计,您需要创建一个仿真模型。这个模型应该包含您的设计文件、仿真参数和仿真器设置等信息。 6. 运行仿真 完成仿真模型的设置后,您可以通过在Questasim中输入仿真命令来启动仿真。根据仿真模型中设置的仿真参数,您可以观察电路的运行情况,并进行调试和仿真结果的分析。 综上所述,搭建Questasim需要确认系统要求、下载软件、添加环境变量、创建仿真模型和运行仿真。在完成这些步骤后,您就可以轻松地使用Questasim对数字电路进行仿真了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不吃葱的酸菜鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值