| 
 | 
 
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册  
 
×
 
请问各位大侠,做验证的时候一般都用什么版本的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的程序代码。 
 
各位能不能下载下来运行一下,帮我解答一下我的疑问,谢谢! 
 |   
 
 
 
 |