Как сказал Чик, нам действительно нужно увидеть больше контекста, но я думаю, что у меня достаточно, чтобы понять, что происходит. Одна часть сообщения об ошибке, которую я подозреваю, вы остановили:
[error] inferred type arguments [chisel3.core.Data] do not conform to method apply's type parameter bounds [T <: chisel3.Bits]
[error] io.out(i) := Cat(io.in1(0), io.in2)
[error]
Это означает, что тип аргументов для Cat
должен быть подтипом chisel3.Bits
. Vec
не является подтипом Bits
, поэтому вы не можете передать Vec
Cat
.
Было бы полезно получить больше информации о том, что вы пытаетесь сделать, чтобы дать лучший совет, но если вы пытаетесь построить UInt
, который является конкатенацией UInt
и Vec
, вы можете преобразовать Vec
в UInt позвонив по номеру .asUInt
, например. Cat(io.in1(0), io.in2.asUInt)
. Если вы пытаетесь построить больший Vec
, добавив к нему UInt
, вы можете попробовать io.in1(0) +: io.in2
.
person
Jack Koenig
schedule
24.07.2018