如何为intel-modelsim加上已经编译好的uvm

intel-modelsim不会像vcs那样自动编译uvm,需要手动编译 编译的命令 gcc -fPIC -shared -o libuvm_dpi.so uvm_dpi.cc -I/home/zhoujie/intelFPGA/20.1/modelsim_ase/include/ -DQUESTA

含义: uvm_dpi.cc,这是入口,它通过include已经包括了dpi目录下所有文件 -I/home/zhoujie/intelFPGA/20.1/modelsim_ase/include/ 有些依赖在仿真器里,需要include -DQUESTA指定,因为在uvm_hdl.c里面,判断使用哪一个编译器,如果用modelsim,需要指定QUESTA

另外

ini 复制代码
uvm_common.c: In function 'm_uvm_report_dpi':
uvm_common.c:50:3: error: unknown type name 'svScope'
   50 |   svScope old_scope = svSetScope(svGetScopeFromName(uvm_package_scope_name));
      |   ^~~~~~~
uvm_common.c:50:23: warning: implicit declaration of function 'svSetScope' [-Wimplicit-function-declaration]
   50 |   svScope old_scope = svSetScope(svGetScopeFromName(uvm_package_scope_name));
      |                       ^~~~~~~~~~
uvm_common.c:50:34: warning: implicit declaration of function 'svGetScopeFromName' [-Wimplicit-function-declaration]
   50 |   svScope old_scope = svSetScope(svGetScopeFromName(uvm_package_scope_name));
      |                                  ^~~~~~~~~~~~~~~~~~
uvm_common.c: In function 'int_str_max':
uvm_common.c:57:15: error: 'INT_MAX' undeclared (first use in this function)
   57 |     int val = INT_MAX;
      |               ^~~~~~~
uvm_common.c:1:1: note: 'INT_MAX' is defined in header '<limits.h>'; did you forget to '#include <limits.h>'?
  +++ |+#include <limits.h>
    1 | //----------------------------------------------------------------------
uvm_common.c:57:15: note: each undeclared identifier is reported only once for each function it appears in
   57 |     int val = INT_MAX;
      |               ^~~~~~~

这个虽然不知道为什么,但是就是缺

arduino 复制代码
#include <svdpi.h>
#include <limits.h>

在uvm_common.c加上即可

UVM版本

1800.2-2020

Merge pull request #18 from jrefice/official_release_3_1 · accellera-official/uvm-core@78c0654

坑2

刚刚编译的uvm是64位的,但是intel-modelsim是32位的,不匹配

需要编译32位的, gcc -m32 -fPIC -shared -o libuvm_dpi.so uvm_dpi.cc -I/home/zhoujie/intelFPGA/20.1/modelsim_ase/include/ -DQUESTA

缺一些依赖,根据gcc和g++版本装即可

sudo apt-get install gcc-11-multilib g++-11-multilib

相关推荐
芯片智造1 天前
一文看懂什么是GaN HEMT以及其工艺流程(氮化镓高电子迁移率晶体管)
经验分享·芯片·半导体·晶体管·氮化镓高电子迁移率晶体管
TheoJ7 天前
DC-DC芯片基础及其ATE测试
芯片
云卓SKYDROID12 天前
无人机芯片休眠模式解析
无人机·芯片·遥控器·高科技·云卓科技·休眠模式
至为芯14 天前
IP5362至为芯支持22.5W三路C口快充的移动电源方案芯片
集成电路·芯片·电子元器件
算家计算24 天前
DeepSeek R2因芯片问题再次延迟发布!千亿级大模型训练的算力之困
人工智能·芯片·deepseek
GOTXX1 个月前
【CS创世SD NAND征文】小型夜灯为何需要存储芯片?从基础照明到智能存储的升级密码
数据库·科技·安全·芯片·储存
吾鳴1 个月前
网信办约谈英伟达,H20芯片后门风波震动中国AI产业
人工智能·nvidia·芯片
小刘摸鱼中2 个月前
INA226 数据手册解读
stm32·单片机·嵌入式硬件·芯片
YoungHong19922 个月前
如何在 Android Framework层面控制高通(Qualcomm)芯片的 CPU 和 GPU。
android·cpu·gpu·芯片·高通