【问题标题】:what does 3'bzzz stands for in verilog?3'bzzz 在verilog中代表什么?
【发布时间】:2014-06-20 15:17:06
【问题描述】:

我有以下代码,但我不知道3'bzzz 代表什么:

`timescale 1ns / 1ps
module reg_tercer_estado(entrada,hab,salida);
input [2:0] entrada;
input hab;
output [2:0] salida;
reg [2:0] auxsalida;

always @(entrada)
begin
    case (hab)
    1'b0: auxsalida=entrada;
    1'b1: auxsalida=3'bzzz;
    endcase
end

assign salida=auxsalida;

endmodule

【问题讨论】:

    标签: verilog hardware-programming


    【解决方案1】:

    根据“HDL Compiler for Verilog”手册,3'bzzz是3位数字,z'断开''高阻抗'的条件 em>,而且它也是不可合成的。

    所以,3'bzzz 表示一个 3 位值,所有 3 位都处于断开状态。

    【讨论】:

    • 一个更正:z 在声明三态驱动程序时是可综合的。示例assign salida = (hab==1'b0) ? entrada : 3'bzzz;
    • 谢谢你,格雷格。坦率地说,回答这个问题是我第一次看 Verilog。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多