概述
Verilog 常用命令及一些总结
1.编译生成二进制文件
$vcs source_file[compile_time_options]
compile_time_options:
- -debug :启用UCLI命令和DVE
- -debug_all :启用UCLI命令和DVE,也使线路步进
- -timescale=t1/t2:指明时间精度,t1,t2自己定义
- -l filename :用于写编译信息,大型项目中经常使用,如 -l compile.log
- -sverilog :允许在Accellera systemVerilog规范中使用Verilog语言扩展
- +v2k :支持verilog2001的标准
- -gui[=] :启动用户指定的图形用户界面,如果未提供参数,则在检测到有效的VCS_HOME环境变量时,VCS将启动Verdi。 否则DVE将默认启动
- -vpd filename :在运行时,定义VCS写入的VPD文件
2.仿真
$vcdpluson :产生Synopsys公司 VCS DVE支持的波形文件,即vpd 文件
dve & :打开vcs GUI界面,dve命令是VCS仿真工具启动的图形化界面,&是为了让DVE在后台运行,Terminal还能输入命令
dve -vpd vcdplus.vpd &
3.Makefile文件
3.1 :=, =, ?=和+=的区别
- “=”是最普通的等号,使用”=”进行赋值,变量的值是整个makefile中最后被指定的值。举个例子如下:
x = A
y = $(x) B
x = AA
经过上面的赋值后,最后y的值是AA B,而不是A B。
- ”:=”表示直接赋值,赋予当前位置的值
x := A
y := $(x) B
x := AA
- “?=”表示如果该变量没有被赋值,则赋予等号后的值,如果该变量已经赋值,则变量采用原来的值
- “+=”和平时写代码的理解是一样的,表示将等号后面的值添加到前面的变量上
3.2 时间转换命令
date +%s 可以得到UNIX的时间戳;
3.3 格式转换符的一些注意
- %0d的意思是将变数的数值,以前面不含0的十进位制数的形式列印
3.4 $random函数
$random函数调用时返回一个32位的随机数,它是一个带符号的整形数。
(1) $random
略去了seed这个传入参数,$random会使用一个默认的seed,默认为0。
(2) $random()
这种写法和写法1)的作用是相同的,同样是没有给$random传入seed。
(3) $random(seed)
这种写法与上面两种不同,给
r
a
n
d
o
m
传
入
了
参
数
s
e
e
d
,
因
此
random传入了参数seed,因此
random传入了参数seed,因此random根据seed来产生随机数。seed不同,产生的随机数的序列也不同。而且,每执行一次$random(seed)产生一个随机数,seed也自动更新一次。
4.清除编译后文件
rm -rf simv* csrc* *.tmp *.vpd *.key *.log *hdrs.v DVEfiles *.bak *.help
5.一些区别
5.1 forever语句和always语句区别
forever :连续执行过程语句。它与always语句不同处在于不能独立写在程序中,而必须写在initial块中,常用于产生周期性的波形。
5.2 $test$plusargs和$value$plusargs
用法:
$test$plusargs(string):只有一个参数,只要外面传了string这个字符串,那这个函数就会反回1,否则返回0。
$value$plusargs(user_string, variable):两个参数,前面的参数是一个传数据的格式,后面是要改变的变量,若外面传了值,则例如:
$value$plusargs ( “abc= %0d”, x )
其作用是将变量abc的值赋给变量x,如果仿真命令输入:
+abc = 100
则x的值为100。
参考资料
1.https://www.jianshu.com/p/d25463612a02
2.https://blog.csdn.net/big_ju_god/article/details/91478958
3.https://www.it610.com/article/1187894658873794560.htm
4.https://www.jianshu.com/p/3c5ef1bbdff3
5.https://blog.csdn.net/Chauncey_wu/article/details/97654074
最后
以上就是清新外套为你收集整理的Verilog 常用命令及一些注意(持续更新)Verilog 常用命令及一些总结1.编译生成二进制文件2.仿真3.Makefile文件4.清除编译后文件5.一些区别参考资料的全部内容,希望文章能够帮你解决Verilog 常用命令及一些注意(持续更新)Verilog 常用命令及一些总结1.编译生成二进制文件2.仿真3.Makefile文件4.清除编译后文件5.一些区别参考资料所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复