【python】脚本中调用VCS编译遇错中断的解决

在python中我调用了VCS工具编译文件,见:

【python脚本】当我需要一个完整的rtl list时,还是选择求助vcs吧

当时我是需要借助vcs的力量把文件都编译出来得到文件的filelist,但是我发先如果文件有错的话就会中止的脚本,哪怕我用了try保护都没法阻止:

def wrap_catch_except(f):
    def wrapper(*args, **kwargs):
        try:
            return f(*args, **kwargs)
        except Exception, e:
            print("error %s" % e)
    return wrapper

我发现脚本还是中断了。

直到最后,我绝望的把代码改成了。

原来:

    cmd = "vcs -f tb.f -l %s +libext+.sv+.v +v2k -sverilog -ntb_opts uvm-1.2 -timescale=1ns/1ps -unit_timescale=1ns/1ps" % sys_log
    os.system(cmd) if re_cmp == True or not os.path.exists(sys_log) else ""

之后:

    cmd = "vcs -f tb.f -l %s +libext+.sv+.v +v2k -sverilog -ntb_opts uvm-1.2 -timescale=1ns/1ps -unit_timescale=1ns/1ps > log" % sys_log
    os.system(cmd) if re_cmp == True or not os.path.exists(sys_log) else ""

脚本就可以继续执行下去了~

所以只要避免让执行过程在屏幕上打印,就不会影响到脚本的执行?

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

尼德兰的喵

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值