如何在不必分配每个索引(没有循环)的情况下将输入总线分配给输出总线。
我有类似的想法:
module test(input [2:0] in, input CLK, output [2:0] out);
reg [2:0] state;
always @(posedge CLK) state <= in;
assign out = state;
但是这段代码不起作用。我需要:out[0] = in[0], out[1] = in[1], out[2] = in[2]
。
答案 0 :(得分:2)
给予代码的问题:
CLK
定义为3位输入,应为1位;
)endmodule
仅供参考:通过将out
声明为output reg
,可以省略中间state
。
module test (
input [2:0] in,
input CLK, // <-- CLK is single bit
output reg [2:0] out // <-- out is a reg type
); // <-- semicolon here
always @(posedge CLK)
out <= in; // <-- synchronous assignment
endmodule // <-- keyword