位置:51电子网 » 技术资料 » EDA/PLD

Verilog HDL数字值集合

发布时间:2008/5/28 0:00:00 访问次数:1263

4.4 数字值集合
本小节介绍verilog hdl 的值的集合和常量(整型、实型、字符型)和变量等。
4.4.1 值集合
verilog hdl 中规定了四种基本的值类型:
0:逻辑0或“假”;
1:逻辑1或“真”;
x:未知值;
z:高阻。
注意这四种值的解释都内置于语言中。如一个为z 的值总是意味着高阻抗,一个为0 的值通常
是指逻辑0 。
在门的输入或一个表达式中的为“z ”的值通常解释成“x ”。
此外,x 值和z 值都是不分大小写的,也就是说,值0x1z 与值0x1z 相同。
verilog hdl 中的常量是由以上这四类基本值组成的。

4.4.2 常量
verilog hdl 中有三种常量:
整型、实型、字符串型。
2004-08-16 第18页,共41页
版权所有,侵权必究


绝密
verilog hdl 入门教程请输入文档编号

下划线符号(_)可以随意用在整数或实数中,它们就数量本身没有意义。它们能用来提高易
读性;唯一的限制是下划线符号不能用作为首字符。

下面主要介绍整型和字符串型。

1. 整型
整型数可以按如下两种方式书写:
1) 简单的十进制数格式
2) 基数格式
a. 简单的十进制格式
这种形式的整数定义为带有一个可选的“+”(一元)或“-”(一元)操作符的数字序列。
下面是这种简易十进制形式整数的例子。
32 十进制数32
-15 十进制数-15

b. 基数表示法
这种形式的整数格式为:
[size ] 'base value

size 定义以位计的常量的位长;base 为o 或o(表示八进制),b 或b(表示二进制),d 或d
(表示十进制),h 或h (表示十六进制)之一;value 是基于base 的值的数字序列。值x 和z 以及
十六进制中的a 到f 不区分大小写。

下面是一些具体实例:

5 'o37 5 位八进制数(二进制 11111 )
4'd2 4 位十进制数( 二进制0011)
4 'b1x_01 4 位二进制数
7'hx 7位x(扩展的x), 即xxxxxxx
4 'hz 4 位z(扩展的z) , 即zzzz
4'd-4 非法:数值不能为负
8 'h 2a 在位长和字符之间,以及基数和数值之间允许出现空格
3' b 001 非法: ` 和基数b 之间不允许出现空格
(2+3)'b10 非法:位长不能够为表达式

注意,x (或z )在十六进制值中代表4 位x(或z ),在八进制中代表3 位x(或z ),在二进
制中代表1 位x (或z )。
基数格式计数形式的数通常为无符号数。这种形式的整型数的长度定义是可选的。如果没有

定义一个整数型的长度,数的长度为相应值中定义的位数。下面是两个例子:
'o721 9 位八进制数
'haf 8 位十六进制数

2004-08-16 第19页,共41页
版权所有,侵权必究


绝密
verilog hdl 入门教程请输入文档编号

如果定义的长度比为常量指定的长度长,通常在左边填0 补位。但是如果数最左边一位为x 或

z ,就相应地用x 或z 在左边补位。例如:
10'b10 左边添0 占位, 0000000010
10'bx0x1 左边添x 占位, x x x x x x x 0 x 1

如果长度定义得更小,那么最左边的位相应地被截断。例如:
3 ' b1001 _ 0011 与3'b011 相等
5'h0fff 与5'h1f 相等


2. 字符串型
字符串是双引号内的字符序列。字符串不能分成多行书写。例如:
"internal error"
" reached->here "
用8 位ascii 值表示的字符可看作是无符号整数。因此字符串是8 位ascii 值的序列。为存储


字符串“internal error ”,变量需要8 * 1 4 位。
r e g [1: 8*14] message;
. . .
message = "internal error"



4.4 数字值集合
本小节介绍verilog hdl 的值的集合和常量(整型、实型、字符型)和变量等。
4.4.1 值集合
verilog hdl 中规定了四种基本的值类型:
0:逻辑0或“假”;
1:逻辑1或“真”;
x:未知值;
z:高阻。
注意这四种值的解释都内置于语言中。如一个为z 的值总是意味着高阻抗,一个为0 的值通常
是指逻辑0 。
在门的输入或一个表达式中的为“z ”的值通常解释成“x ”。
此外,x 值和z 值都是不分大小写的,也就是说,值0x1z 与值0x1z 相同。
verilog hdl 中的常量是由以上这四类基本值组成的。

4.4.2 常量
verilog hdl 中有三种常量:
整型、实型、字符串型。
2004-08-16 第18页,共41页
版权所有,侵权必究


绝密
verilog hdl 入门教程请输入文档编号

下划线符号(_)可以随意用在整数或实数中,它们就数量本身没有意义。它们能用来提高易
读性;唯一的限制是下划线符号不能用作为首字符。

下面主要介绍整型和字符串型。

1. 整型
整型数可以按如下两种方式书写:
1) 简单的十进制数格式
2) 基数格式
a. 简单的十进制格式
这种形式的整数定义为带有一个可选的“+”(一元)或“-”(一元)操作符的数字序列。
下面是这种简易十进制形式整数的例子。
32 十进制数32
-15 十进制数-15

b. 基数表示法
这种形式的整数格式为:
[size ] 'base value

size 定义以位计的常量的位长;base 为o 或o(表示八进制),b 或b(表示二进制),d 或d
(表示十进制),h 或h (表示十六进制)之一;value 是基于base 的值的数字序列。值x 和z 以及
十六进制中的a 到f 不区分大小写。

下面是一些具体实例:

5 'o37 5 位八进制数(二进制 11111 )
4'd2 4 位十进制数( 二进制0011)
4 'b1x_01 4 位二进制数
7'hx 7位x(扩展的x), 即xxxxxxx
4 'hz 4 位z(扩展的z) , 即zzzz
4'd-4 非法:数值不能为负
8 'h 2a 在位长和字符之间,以及基数和数值之间允许出现空格
3' b 001 非法: ` 和基数b 之间不允许出现空格
(2+3)'b10 非法:位长不能够为表达式

注意,x (或z )在十六进制值中代表4 位x(或z ),在八进制中代表3 位x(或z ),在二进
制中代表1 位x (或z )。
基数格式计数形式的数通常为无符号数。这种形式的整型数的长度定义是可选的。如果没有

定义一个整数型的长度,数的长度为相应值中定义的位数。下面是两个例子:
'o721 9 位八进制数
'haf 8 位十六进制数

2004-08-16 第19页,共41页
版权所有,侵权必究


绝密
verilog hdl 入门教程请输入文档编号

如果定义的长度比为常量指定的长度长,通常在左边填0 补位。但是如果数最左边一位为x 或

z ,就相应地用x 或z 在左边补位。例如:
10'b10 左边添0 占位, 0000000010
10'bx0x1 左边添x 占位, x x x x x x x 0 x 1

如果长度定义得更小,那么最左边的位相应地被截断。例如:
3 ' b1001 _ 0011 与3'b011 相等
5'h0fff 与5'h1f 相等


2. 字符串型
字符串是双引号内的字符序列。字符串不能分成多行书写。例如:
"internal error"
" reached->here "
用8 位ascii 值表示的字符可看作是无符号整数。因此字符串是8 位ascii 值的序列。为存储


字符串“internal error ”,变量需要8 * 1 4 位。
r e g [1: 8*14] message;
. . .
message = "internal error"



相关IC型号

热门点击

 

推荐技术资料

声道前级设计特点
    与通常的Hi-Fi前级不同,EP9307-CRZ这台分... [详细]
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!