Я пытаюсь переписать OpenSoCFaric-1.1.2 с долота 2 на долото 3. Но я сталкиваюсь с сообщениями об ошибках "данные для подключения 'chisel3.core.UInt@103' должны быть аппаратными, а не чистым типом долота" для приведенного ниже кода:
Файл: packettoFlit.scala класс: PacketToFlit
val flitWidth = Flit.fromBits (0.U, parms) .getWidth
Файл: channel.scala объект: Flit
object Flit {
def head(h: HeadFlit) : Flit = {
val f = new Flit(h.parms)
f.x := f.union.pack("Head", h)
f
}
def body(b: BodyFlit) : Flit = {
val f = new Flit(b.parms)
f.x := f.union.pack("Body", b)
f
}
def fromBits(n: UInt, parms: Parameters) : Flit = {
val f = new Flit(parms)
f.x := n
f
}
/*
def zeroHead(parms: Parameters) : HeadFlit = {
val x = new HeadFlit(parms)
x.
}
*/
}
И теперь у меня нет хороших идей о том, как переписать такие сегменты кода, чтобы исправить ошибку. Не могли бы вы дать некоторую помощь или предложения? Большое спасибо!