0

我正在尝试使用 Verilog 构建一个模块,该模块在最后调用多路复用器(已经设计并在文件中)。但是,当我调用多路复用器并分配其输入时,我收到一条错误消息:

    Syntax error near "[".

它引用的行是这样的:

    .MUX_in[0](inv_ymux),

我正在尝试调用我的 4 位的第一位MUX_in(在我的多路复用器模块中指定)。我这样做正确吗?我应该如何分配它?

    module multiplexer(MUX_in, S_in, MUX_out);
    input [3:0] MUX_in;
    input [1:0] S_in;
    output MUX_out;

    reg MUX_out;

    always @ (MUX_in or S_in)begin
        case(S_in)
            2'b00: MUX_out = MUX_in[0];
            2'b01: MUX_out = MUX_in[1];
            2'b10: MUX_out = MUX_in[2];
            2'b11: MUX_out = MUX_in[3];
        endcase
    end
    endmodule

以上是多路复用器的模块。

4

1 回答 1

2

一种方法是连接端口连接中的其他信号。以下连接inv_ymuxMUX_in[0]

mux i0 (
    .MUX_in ({3'b000, inv_ymux}),
    // other port connections
);
于 2013-01-25T19:06:49.357 回答