【发布时间】:2015-06-11 13:14:02
【问题描述】:
我最近在 Verilog 代码中发现了这样的代码,我指的是编写有限状态机。
reg [15:0]Bus;
Bus = 'bzzzzzzzzzzzz1111;
这里z是什么意思?
【问题讨论】:
标签: verilog
我最近在 Verilog 代码中发现了这样的代码,我指的是编写有限状态机。
reg [15:0]Bus;
Bus = 'bzzzzzzzzzzzz1111;
这里z是什么意思?
【问题讨论】:
标签: verilog
来自IEEE Std 1800-2012,“6.3.1 逻辑值”部分:
z——代表高阻态
The SystemVerilog value set consists of the following four basic values:
0—represents a logic zero or a false condition
1—represents a logic one or a true condition
x—represents an unknown logic value
z—represents a high-impedance state
The values 0 and 1 are logical complements of one another.
【讨论】:
Z 代表高阻抗状态,但您为什么要这样呢?
这基本上意味着您没有驱动总线的输出,因此其他东西可以驱动它。
您最有可能在驱动设备的输出端口时使用它,例如 FPGA 正在使用 I2C 协议与另一个芯片通信,您发送读取请求,然后在总线上驱动 Z 以允许设备回复您请求的数据
【讨论】: