Я создал два разных модуля Verilog (shiftByImm
и immShifter
). То, что я хочу сделать, - это выбрать только выход одного из двух в качестве вывода этого небольшого модуля мультиплексора, который я создаю.Verilog: выберите один из двух экземпляров в качестве вывода
module superShifter(input [0:31] in, input select, input [0:4] shift_value, input[0:1] shift, output reg [0:31] out);
shiftByImm shift0(in, shift_value, shift, out);
immShifter shift1(in, shift_value, out);
assign {out} = select == 1'b0 ? shift0 : shift1;
endmodule
Однако, это дает мне две совершенно понятные ошибки:
Illegal ссылку на интерфейс "shift0"
and
Illegal ссылку на интерфейс "SHIFT1"
Я знаю, что есть что-то здесь отсутствует. Как выбрать выход модуля SuperShifter
для того же выхода одного из готовых модулей?