Когда я использую DecoupledIO, кажется, что он генерирует ошибки, вызванные тем, что Reference io не полностью инициализирован.
Это потому, что мне нужно инициализировать вывод, в данном случае биты, и действительный или готовый (в зависимости от того, перевернутый или нет)
Предположим, что биты и действительный - это Вывод.
когда я использую следующую инструкцию:
when(reset.toBool) {
bits := 0.U
valid := true.B
}
это порождает ошибку.
Но когда оператор инициализации существует вне оператора when, он не вызывает ошибок.
Итак, как решить такие проблемы инициализации?
Всегда ли мне нужно инициализировать такие значения вне оператора when, хотя я хочу поместить его внутри оператора when (reset.toBool)?
Даже пример маршрутизатора на вики-странице вызывает ошибку, хотя я следую руководству, описанному в разделе неподключенных проводов (это произошло из-за того, что все операторы init существуют внутри оператора when)