这种理解是部分正确的,看这个逻辑电路图,sel信号是地址端,其高低电平决定了输入。但是需要注意,sel输入高低电平和data_0/1的对应关系,以verilog代码为例:

always@(sel)
begin
if(sel) out=data_0;
else out=data_1;
end
这里if(sel)决定了sel为高电平时输出的是data_0;如果这里改为if(!sel),那么就是低电平输出data_0.
always@(a,late_data,c,d,sl)

begin
out=1’b0;
if(sl[0])
out=a;
if(!sl[2])
out=c;
if(sl[3])

out=d;
if(sl[1])
out=late_data;
end
之前是错的,这是if...;if...;结构描述是不带优先级的平行判断语,综合之后的电路是3个MUX串行排列,所以要把延时最长的输入信号放到最后一个MUX输出,之前以为是if..else结构,给大家造成误导实在不好意思。


