Multiplexer:Verilog多路复用器

帮我解决这个问题,为以下问题

创建一个 16 位宽的 9 对 1 乘法器。sel = 0 选择 a,sel = 1 选择 b 等。对于未使用的情况(sel = 9 到 15),将所有输出位设置为 '1'。

解决方案:

module top_module( 
input [15:0] a,b, c, d, e, f, g, h, i,
input [3:0] sel,
output [15:0] out );
always@(*) begin
    case(sel)
        0:
            out = a;
        1:
            out = b;
        2:
            out = c;
        3:
            out = d;
        4:
            out = e;
        5:
            out = f;
        6:
            out = g;
        7:
            out = h;
        8:
            out = i;
          
        default:
            out = 1;
       
    endcase
end

终端模块

我不知道这个代码有什么问题。可能是整件事。

Note:https://hdlbits.01xz.net/wiki/Mux9to1v
1
module top_module( 
input [15:0] a,b, c, d, e, f, g, h, i,
input [3:0] sel,
output reg [15:0] out
);
always @(*) begin
    case(sel)
        0: out = a;
        1: out = b;
        2: out = c;
        3: out = d;
        4: out = e;
        5: out = f;
        6: out = g;
        7: out = h;
        8: out = i;
        default: out = {16{1'b1}}; //..'1 is not the same in every compiler
    endcase
end
endmodule
0

您没有endomdule关键字(文件意外结束)。

总是块需要 reg(过程分配给非寄存器 out)。不管它是同步还是异步always块。

module top_module( 
    input [15:0] a,b, c, d, e, f, g, h, i,
    input [3:0] sel,
    output reg [15:0] out
);
    always @(*) begin
        case(sel)
            0: out = a;
            1: out = b;
            2: out = c;
            3: out = d;
            4: out = e;
            5: out = f;
            6: out = g;
            7: out = h;
            8: out = i;
            default: out = 1;
        endcase
    end
endmodule
0

无论如何谢谢。找到了答案。必须用 '1 将所有输出位填充为 1。

module top_module( 
input [15:0] a,b, c, d, e, f, g, h, i,
input [3:0] sel,
output reg [15:0] out
);
always @(*) begin
    case(sel)
        0: out = a;
        1: out = b;
        2: out = c;
        3: out = d;
        4: out = e;
        5: out = f;
        6: out = g;
        7: out = h;
        8: out = i;
        default: out = '1;
    endcase
end

终端模块

本站系公益性非盈利分享网址,本文来自用户投稿,不代表边看边学立场,如若转载,请注明出处

(450)
小程序换行代码:换行时在“代码”环境中自动添加换行符号
上一篇
Jira使用:使用 JIRA标签(labels in jira)
下一篇

相关推荐

发表评论

登录 后才能评论

评论列表(5条)