Предположим, у моего модуля 8-битный вход и 8-битный выход.
module MyModule (input logic [7:0] in, output logic [7:0] out);
...
endmodule : MyModule
Если я хочу подключить 1-битный вход и оставить остальные биты равными нулю, работает следующее:
MyModule (.in({7'b0, a}), .out(b))
Как я могу сделать то же самое, если мне нужен 1-битный вывод, игнорируя другие биты? Что-то вроде этого
MyModule (.in(a), .out({7'b0, b}))
vcs сообщает, что он недействителен, и прямое подключение b
выдает предупреждение. В идеале мне нужно решение, которое не выводит предупреждений.
Вот что я подумал:
- Используйте
.out(b)
иb[0]
для бит - Создайте неиспользуемую логическую переменную
unused
и используйте.out({unused, b})
, которая действительно работает - Используйте
assign
statment (я бы этого не хотел)
Есть ли какое-нибудь решение лучше этих?