HDLbits刷题记录之Always if
题目的要求是用always@(*)块和assign表达式来实现相同的2to1多路复用器。也就是再次练习一下,这两者的区别,话不多说,代码如下
// synthesis verilog_input_version verilog_2001
module top_module(
input a,
input b,
input sel_b1,
input sel_b2,
output wire out_assign,
output reg out_always );
assign out_assign = (sel_b1 && sel_b2)?b:a;
always@(*)begin
if( (sel_b1 && sel_b2) == 1 )
out_always = b;
else
out_always = a;
end
endmodule
总结
菜鸡本鸡。