Systemc example based on VCS

README

VCS example path: $VCS_HOME/doc/examples/systemc/

SYSTEMC_HOME: module load systemc(or 自己download systemc, VCS_HOME下应该也有:$VCS_HOME/include/systemc233/tlm_utils)

gcc需要是7.3.0版本,module load gcc/7.3.0

注意事项

vcs 需要加上-full64, 否则会报“/bin/ld: cannot find -lstdc++”

VCS command

syscan -full64 -tlm2  sc_toop.cpp:sc_top

vcs  -full64 -sverilog -sysc  -ntb_opts rvm +incdir+${VCS_HOME}/etc/systemc/tlm/tli  -timescale=1ns/1ps 

Simple

修改Makefile,增加-full64

make comp -> make run

uvm_tlm_analysis

cmd:

syscan -full64 -tlm2  consumer.cpp

syscan  -full64 -tlm2 producer.cpp

syscan  -full64 -tlm2 sc_top.cpp:sc_top   

vcs -full64 -sverilog  -ntb_opts uvm +define+NO_VMM_UVM_INTEROP+VCS_TLI_GP_PACKING +incdir+${VCS_HOME}/etc/systemc/tlm/tli -sysc  -timescale=1ns/1ps   +define+VMM_12 -l comp.log ./top.v

注:当用到uvmc的时候,如果报找不到uvmc中的function:

uvmc_channels.h:512: undefined reference to `uvmc::uvmc_packer::init_pack(unsigned int*, int)'

uvmc_channels.h:514: undefined reference to `uvmc_pkg_scope'

解决方法:

OPT = -full64 -tlm2 -cflags "-g -DVCS -I. -I../sc -I${UVMC_HOME}/src/connect/sc -I${VCS_HOME}/etc/systemc/tlm/tli"

syscan ${OPT} ${UVMC_HOME}/src/connect/sc/uvmc.cpp 

syscan ${OPT} ../sc/sc_top.cpp

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值