022天津同城交友网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 交友 人才 房产
查看: 1057|回复: 1
打印 上一主题 下一主题

关于Questasim + OVM

[复制链接]
跳转到指定楼层
楼主
发表于 2020-4-7 18:46:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    文章简介:请问各位大侠,做验证的时候一般都用什么版本的Questasim和什么版本#**Error:Sequencer.sv(13):Illegalpar#**Error:Sequencer.sv(13):near"#":sy#**Error:Sequencer.sv(20):super.new(#**Error:Sequence.sv(11):Illegalpara#**Error:Sequence.sv(14):super.new()#**Error:Sequence.sv(30):Illegalpara#**Error:Sequence.sv(33):super.new()#**Errorriver.sv(13):Illegalparameqverilog+incdir+ovmovm/ovm_pkg.sv+in我看过OVM2.0.1的用户手册,那里面说的关于上面报错的语法都能上面语



请问各位大侠,做验证的时候一般都用什么版本的Questasim 和什么版本的OVM,我用Questasim6.4 + OVM 2.0.1行吗?但是用这个去运行网站:
http://www.testbench.in/CM_11_PHASE_8_SCOREBOARD.html给的例子,会报错:
# QuestaSim qverilog 6.4 Compiler 2008.06 Jun 18 2008
# -- Compiling package ovm_pkg
# -- Compiling module switch
# -- Compiling interface mem_interface
# -- Compiling interface input_interface
# -- Compiling interface output_interface
# ** Error: Sequencer.sv(13): Illegal parameter specification for non-parameterized class type.
# ** Error: Sequencer.sv(13): near "#": syntax error, unexpected '#', expecting ';'
# ** Error: Sequencer.sv(13): Error in class extension specification.
# ** Error: Sequencer.sv(20): super.new() call illegal for class with no super-class.
# ** Error: Sequence.sv(11): Illegal parameter specification for non-parameterized class type.
# ** Error: Sequence.sv(11): near "#": syntax error, unexpected '#', expecting ';'
# ** Error: Sequence.sv(11): Error in class extension specification.
# ** Error: Sequence.sv(14): super.new() call illegal for class with no super-class.
# ** Error: Sequence.sv(30): Illegal parameter specification for non-parameterized class type.
# ** Error: Sequence.sv(30): near "#": syntax error, unexpected '#', expecting ';'
# ** Error: Sequence.sv(30): Error in class extension specification.
# ** Error: Sequence.sv(33): super.new() call illegal for class with no super-class.
# ** Error: Driver.sv(13): Illegal parameter specification for non-parameterized class type.
# ** Error: Driver.sv(13): near "#": syntax error, unexpected '#', expecting ';'
# ** Error: Driver.sv(13): Error in class extension specification.
# ** Error: Driver.sv(25): super.new() call illegal for class with no super-class.
# ** Error: Environment.sv(32):  FAIled to find name 'type_id' in specified scope
# ** Error: Environment.sv(33):  Failed to find name 'type_id' in specified scope
# ** Error: Environment.sv(36):  Failed to find name 'type_id' in specified scope
# ** Error: Environment.sv(40):  Failed to find name 'type_id' in specified scope
# C:/questasim_6.4/win32/qverilog failed.

我输入的编译命令是:
qverilog +incdir+ovm ovm/ovm_pkg.sv +incdir+. rtl.sv interface.sv top.sv -R +OVM_TESTNAME=test1

也是按照它给的例子的命令写的,其中我的库叫OVM,在所在工程的根目录下,已经編译了ovm_pkg。

其中,error对应的代码为:

class Sequencer extends ovm_sequencer #(Packet);

super.new(name, parent);

class Seq_device0_and_device1 extends ovm_sequence #(Packet);

super.new(name);

Drvr   = Driver::type_id::create("Drvr",this);
Seqncr = Sequencer::type_id::create("Seqncr",this);

Rcvr   = Receiver::type_id::create($psprintf("Rcvr%0d",i),this);

Sbd   = Scoreboard::type_id::create("Sbd",this);

  我看过OVM2.0.1的用户手册,那里面说的关于上面报错的语法都能上面语法中那么使用,但是不知道在这里为什么会报错,也就是说利用OVM2.0.1可以这么写:“class Sequencer extends ovm_sequencer #(Packet);”,但是在我这里就会出错,不知道为什么啊?是不是我的操作有问题?很多例子都是这样,在我这都不能运行了,老报错,這个问题困扰我好长时间了。

附件中的程序就是Phase8的程序代码。

各位能不能下载下来运行一下,帮我解答一下我的疑问,谢谢!


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享
回复

使用道具 举报

沙发
 楼主| 发表于 2020-4-7 18:46:24 | 只看该作者
看下$OVM_HOME/README-Questa.txt就知道什么工具能支持什么版本的ovm了。看你的error,应该是include整个代码结构时出现了问题。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|联系我们|022天津同城交友网

GMT+8, 2024-5-7 05:48 , Processed in 1.203125 second(s), 16 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表