是否有任何通用解决方案可以处理在 chisel3 中添加相同的泛型类型?
Is there are any general solution that can handle adding same generic type addition in chisel3?
我正在尝试制作通用硬件 class 模块,它是用 chisel3 编写的。
我的代码如下所示。
class hardware_module[T <: Data](bandwidth: T)extends Module {
val io = IO(new Bundle {
val in0 = Input(bandwidth)
val in1 = Input(bandwidth)
val out = Output(bandwidth)
})
io.out := io.in0 + io.in1
}
错误消息如下所示
type mismatch; found: T requried: String
通过互联网,我发现这个错误信息来自同时添加两个泛型类型。我想知道在Chisel3中也有关于这个问题的通用解决方案。
+
仅针对某些 Data
sub-类(例如 Bits
)定义,一般不会为 Data
定义。绑定到 Num[T <: Data] or use Structural Types pattern (a.k.a Duck Typing) https://alvinalexander.com/scala/how-to-use-duck-typing-in-scala-structural-types/
我正在尝试制作通用硬件 class 模块,它是用 chisel3 编写的。
我的代码如下所示。
class hardware_module[T <: Data](bandwidth: T)extends Module {
val io = IO(new Bundle {
val in0 = Input(bandwidth)
val in1 = Input(bandwidth)
val out = Output(bandwidth)
})
io.out := io.in0 + io.in1
}
错误消息如下所示
type mismatch; found: T requried: String
通过互联网,我发现这个错误信息来自同时添加两个泛型类型。我想知道在Chisel3中也有关于这个问题的通用解决方案。
+
仅针对某些 Data
sub-类(例如 Bits
)定义,一般不会为 Data
定义。绑定到 Num[T <: Data] or use Structural Types pattern (a.k.a Duck Typing) https://alvinalexander.com/scala/how-to-use-duck-typing-in-scala-structural-types/