【NB】2.2 Verilog 数值表示

896452247   ·   发表于 2021-3-13   ·   编程代码

数值种类
Verilog HDL 有下列四种基本的值来表示硬件电路中的电平逻辑:
0:逻辑 0 或 "假"
1:逻辑 1 或 "真"
x 或 X:未知
z 或 Z:高阻
x 意味着信号数值的不确定,即在实际电路里,信号可能为 1,也可能为 0。
z 意味着信号处于高阻状态,常见于信号(input, reg)没有驱动时的逻辑结果。例如一个 pad 的 input 呈现高阻状态时,其逻辑值和上下拉的状态有关系。上拉则逻辑值为 1,下拉则为 0 。
20 Reply   |  Until 2021-3-15 | 3030 View

173406131
发表于 2021-3-13

教程开始了

整数数值表示方法
数字声明时,合法的基数格式有 4 中,包括:十进制('d 或 'D),十六进制('h 或 'H),二进制('b 或 'B),八进制('o 或 'O)。数值可指明位宽,也可不指明位宽。

评论列表

  • 加载数据中...

编写评论内容

admin
发表于 2021-3-13

实例
4'b1011 // 4bit 数值
32'h3022_c0de // 32bit 的数值
其中,下划线 _ 是为了增强代码的可读性。

评论列表

  • 加载数据中...

编写评论内容

1691684352
发表于 2021-3-13

不指明位宽:
一般直接写数字时,默认为十进制表示,例如下面的 3 种写法是等效的:

评论列表

  • 加载数据中...

编写评论内容

143242
发表于 2021-3-13

负数表示
通常在表示位宽的数字前面加一个减号来表示负数。例如:
-6'd15
-15
-15 在 5 位二进制中的形式为 5'b10001, 在 6 位二进制中的形式为 6'b11_0001。

评论列表

  • 加载数据中...

编写评论内容

376383538
发表于 2021-3-13

需要注意的是,减号放在基数和数字之间是非法的,例如下面的表示方法是错误的:
4'd-2 //非法说明

评论列表

  • 加载数据中...

编写评论内容

明明哦
发表于 2021-3-13

实数表示方法
实数表示方法主要有两种方式:
十进制:
30.123
6.0
3.0
0.001

评论列表

  • 加载数据中...

编写评论内容

3180386827
发表于 2021-3-13

科学计数法:
1.2e4 //大小为12000
1_0001e4 //大小为100010000
1E-3 //大小为0.001

评论列表

  • 加载数据中...

编写评论内容

小新
发表于 2021-3-13

字符串表示方法
字符串是由双引号包起来的字符队列。字符串不能多行书写,即字符串中不能包含回车符。Verilog 将字符串当做一系列的单字节 ASCII 字符队列。例如,为存储字符串 "www.runoob.com", 需要 14*8bit 的存储单元。例如:

评论列表

  • 加载数据中...

编写评论内容

yangxu
发表于 2021-3-13

来来来[滑稽]

评论列表

  • 加载数据中...

编写评论内容

1691684352
发表于 2021-3-13

去把那个当家叫来[滑稽]。

评论列表

  • 加载数据中...

编写评论内容
LoginCan Publish Content