条件运算符

Verilog 语言为了让连续赋值的功能更加完善,于是又从 C 语言中引入了条件操作符来构建从两个输入中选择一个作为输出的条件选择结构,功能等同于 always 中的 if-else 语句,如下。

例子:使用?:wire [15:0] bus = bus_enable ? drive ? bus_data : 16'bz;
wire [7:0] data = (sel_a ? data_a :
                   sel_b ? data_b :
                   sel_c ? data_c : 8'bz);