(PS:笔记来自网络收集,仅做记录学习之用,如有侵权,请后台私戳我,立刻删除)
基本语法
1. 空白符 : 空格、\b 、\t
2. 注释: // 单行注释,/*、、、、、*/多行注释
3. 标识符、转义标识符
标识符有:字母、数字、$、下划线,其中只有字母和下划线可作开头,但是当数字前有"\"时也可以作开头
4. 关键字
(全小写),比如:always,begin
5. 数值
基本:0,1,x/X ,z/Z,大小写无所谓 ,x表示不定态,z表示高阻态
x:意味着信号数值的不确定,即在实际电路里,信号可能为 1,也可能为 0
z:意味着信号处于高阻状态,常见于信号(input, reg)没有驱动时的逻辑结果。例如一个 pad 的 input 呈现高阻状态时,其逻辑值和上下拉的状态有关系。上拉则逻辑值为 1,下拉则为 0 。
整数
格式 = 位宽(2进制)+ ' + 几进制(b\o\d\h) + 数值
注:b o d h 分别是 二进制、八进制、十进制、十六进制
注意事项:
a.下划线不能开头
b.默认位宽32位
c.2进制x表示1位,8进制x表示3位,6进制x表示4位
d.没定义位宽,位宽=数值二进制位数
e.位宽>实际长度,补0或x或z
f.负数写补码(+符号位,多写一位)
g.不写位宽进制,表示10进制
实数
比如5.1,可以写成5.1,表示10进制5.1,但5.0不可以写成5.
比如2.3×10^8,需要写成2.3e8或者2.3E8,但若是0.3e5,不可以写成.3e5
字符串
在 " " 内,=ASCII序列