应用时注意:
在十六进制中不区分大小写,例如,4’hF 和 4’hf 表示同样的值
较 长 的 书 中 间 可 以 用 下 划 线 分 开 以 提 高 可 读 性 , 如
12’b1100_0101_1010
当数字不说明位宽时,默认值为 32 位
x 或 z 在二进制中表示 1 位 x 或 z,在八进制中表示 3 位 x 或 z,在 16
进制中表示 4 位 x 或 z,其代表的宽度取决于所用的进制,如 8’h9x 等
价于 8’b1001xxxx
如果没有定义一个整数的位宽,其宽度为相应值中定义的位数,如’o721
表示 9 位八进制,’hAF 表示 8 位十六进制
如果定义的位宽比实际的位数长,通常在左边填‘0’,但如果最左边为 z
或 z 则相应地用 x 或 z 在左边补位
如: 10’b10 等价于 10’b0000000010;
10’bx0x1 等价于 10’bxxxxxxx0x1
如果定义的位宽比实际的位数小,那么最左边的位数相应地被截断
如: 3’b1001_0011 等价于 3’b11
5’h0FFF 等价于 5’h1F
“?”是高阻态 z 的另一种表示符号,两种数字表示完全等价
整数可以带符号(正、负号)
缺省位宽与缺省进制代表十进制的数,如:28 表示十进制 28
数字中不能有空格
2.3.3 实数(Real constants)
实数的两种表示法:
十进制表示法
例如 2.0、5.678、0.1 是合法的,但是 2.是非法的,小数点两边都必须
有数字
科学计数法
例如:43_5.1e2 值为 43510.0;4E-4 值为 0.0005
Verilog 定义了实数转换为整数的方法,遵循四舍五入的规则,如:
42.446, 42.45 //若转换为整数都是 42
2.3.4 字符串(String constants)
字符串是双引号内的字符序列。字符串不能分成多行书写。
例如:“this is an example”
2.4 标识符(Identifiers)
Verilog 中的标识符可以是任意一组字母、数字以及符号“$”和“_”的组合,但标识符
的第一个字符必须是字母或者下划线。另外,标识符是区分大小写的。
例如:cnt_1、_A1 是合法的;而 30_t、cout*是不正确的。
注意,标识符还可以是以符号“\”开头,以空白符结尾的任何字符序列,但反斜线和
结束空白符不是标识符的一部分。例如:\OutGate 与 OutGate 等价。
评论0