|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
×
小弟初学验证,项目要求用UVM验证一个SystemC事务级建模的模块,这个模块里有读写两个函数,其中写函数中包含wait()函数。
我决定先解决通信问题再搭建UVM,于是写了个简单的SV Testbench,并用Modelsim的DPI接口将SC的函数导过来进行调用,两个函数如下:
import "DPI-SC" context function void top_write_byte (input int unsigned address, input byte unsigned data);
import "DPI-SC" context function byte unsigned top_read_byte (input int unsigned address);
但仿真时modelsim出现报错(Code 222)并立即退出,提示原因:wait()只能在SC_THREAD中调用,在SC_METHODS中调用将出错。
1. 我分析是仿真工具将SV的testbench认为是方法而非线程,因此尝试在SV中使用fork-join语句、建立任务,但都没有作用,请问各位大侠是否有办法解决?
2. Mentor推出了支持SC与SV的TLM通信的库UVM Connect,但不支持个人下载,请问我是否应该直接用这个库实现通信?难度如何 |
|