VCS的各种坑和Iverilog的曙光

使用VCS的过程真是充满了痛苦,写此文章记录一下。

1. 破解文件过期

在这里插入图片描述
可以看到破解器里显示的EXPIRE date是2020-12-12号,所以导致在我第一次安装完时(还是2020年)可以正常使用,到了2021年就不能运行了。
解决办法是修改这个时间到2030-12-12(或者任意的时间),同时还需要修改Synopsys.src中所有的2020到2030.

2. 环境变量设置有误

环境变量需要设置如下:
在这里插入图片描述
不要忘了设置VCS_TARGET_ARCH=linux64,

3. root权限运行

必须在root权限运行,否则会报Segmentation fault.

4. makefile运行失败

VCS_ARCH_OVERRIDE = linux

OUTPUT = and_top
ALL_DEFINE = +define+DUMP_VPD

VPD_NAME = +vpdfile+${OUTPUT}.vpd

VCS = vcs +v2k -timescale=1ns/1ns             \
	  -debug_pp					\
	  -o ${OUTPUT}					\
	  -l compile.log				\
	  ${VPD_NAME}					\
	  ${ALL_DEFINE}

SIM = ./${OUTPUT} ${VPD_NAME} -l ${OUTPUT}.log

com:
	${VCS} and.v andtb.v

sim:
	${SIM}

debug:
	dve -vpd ${OUTPUT}.vpd &
	
clean:
	rm -rf ./csrc *.daidir *.log simv* *.key *.vpd ./DVEfiles tmp_dir*

在运行make com时会报错,是由于makefile中的vcs直接去运行了bin目录下的vcs并没有使用环境变量中设置的alias,所以需要修改为如下:

VCS = vcs -full64 -cpp g++-4.8 -cc gcc-4.8 -LDFLAGS -Wl,--no-as-needed \
          +v2k -timescale=1ns/1ns             \
	  -debug_pp					\
	  -o ${OUTPUT}					\
	  -l compile.log				\
	  ${VPD_NAME}					\
	  ${ALL_DEFINE}

5. 曙光-Iverilog

最后无意中发现,其实Iverilog更好用,只需要输入如下命令就可以完成编译:
sudo iverilog -o test -y ./ andtb.v and.v
接着执行./test就可以运行仿真,简单好用,安装简单还不需要破解!

参考引用

https://zhuanlan.zhihu.com/p/95081329
https://blog.csdn.net/huayangshiboqi/article/details/89525723
https://zhuanlan.zhihu.com/p/143164198

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 技术黑板 设计师:CSDN官方博客 返回首页