根据配置值初始化 class
Initialize class depending on config value
我想了解如何根据值初始化 Module
。所以我有一个 config.extend
值,它将决定 core
是否实例化 Core
或 ExtendedCore
模块。
但是我收到错误 "value := is not a member of Sodor.core"。
val extend = 1
val core = Module(new Core(data_address))
if(extend==1){
core := Module(new ExtendedCore(data_address))
}
根据语句初始化模块的正确方法是什么,就像在这种情况下?
谢谢。
:=
是Chisel中的连接运算符。它用于连接电线和寄存器。您真正想要做的是在精化时有条件地实例化不同的模块(即使用 Scala 构造 而不是 Chisel 构造)。
尝试以下操作:
val extend = 1
val core = if (extend == 1) Module(new ExtendedCore(data_address))
else Module(new Core(data_address))
我想了解如何根据值初始化 Module
。所以我有一个 config.extend
值,它将决定 core
是否实例化 Core
或 ExtendedCore
模块。
但是我收到错误 "value := is not a member of Sodor.core"。
val extend = 1
val core = Module(new Core(data_address))
if(extend==1){
core := Module(new ExtendedCore(data_address))
}
根据语句初始化模块的正确方法是什么,就像在这种情况下? 谢谢。
:=
是Chisel中的连接运算符。它用于连接电线和寄存器。您真正想要做的是在精化时有条件地实例化不同的模块(即使用 Scala 构造 而不是 Chisel 构造)。
尝试以下操作:
val extend = 1
val core = if (extend == 1) Module(new ExtendedCore(data_address))
else Module(new Core(data_address))