modelsim新增技巧之coverage和tcl

总结一下,modelsim新增技巧(注:以下都是基于do文件的方式):

1、统计代码的覆盖率:在vlog/vcom命令中加上命令+cover sbef,关于sbef的解释,可以在modelsim的命令行中输入vlog -helpvcom -help中查看。之后在vsim命令行中添加-coverage;当运行完毕之后就可以在界面中看到当前代码的测试覆盖率了。

2、modelsim的do文件是支持tcl语言的。前两天遇到一个大坑:在do脚本中想用到if语句,就从help目录下查找tcl syntax,大概看了一下,感觉很简单(毕竟有一点语言基础),谁知运行下来总是报错,最终纠结于两点:1)if语句的条件表达式必须使用{}包含起来;2)if语句的执行必须使用{}包含起来,并且条件表达式的 } 和执行的 { 得在同一行中,并且两者之间必须有空格。

3、tcl语言中判断一个变量和一个字符串是否相等,可以之间使用A=B这种方式(因为tcl是针对字符串进行操作的语言,所有变量实际都是字符串类型),或者使用string match A B这种方式

4、tcl语言想提取一个字符串中的特定字符,可以考虑先使用lassign命令,将一连串的字符分开,然后再对某一个字符进行操作(这个是目前自己想到的方法,期待更好的办法……)。

编辑 重设标签(回车键确认) 标为违禁 关闭 合并 删除
popomao 头像