动态创建凿子中的模块,同时将动态参数传递给那些模块

CV_Ruddha

考虑这个例子

for(x <- 0 until numberOfHWBlocks){
    val hw_block = Module(new HW_BLOCK(x)(p :Parameters)).io
}

每次这都会根据x值创建一个新模块。我想要的是我不想每次都将val hw_block声明为for循环内的一个单独实体,因为此值将覆盖先前的值。我想将这些模块的序列存储在单个val中。像这样

for( x <- 0 until numberOfHWBlocks){
    hw_block(x) = Module(new HW_BLOCK(x)(p :Parameters)).io
}

其中hw_block被定义为for循环之外的Seq

val hw_block = Seq.fill(numberOfHWBlocks){//What do I have to instantiate here??//}
小鸡马克利

你考虑过制表吗

val hw_block = Seq.tablulate(numberOfHardHWBlocks) { x =>
  Module(new HW_BLOCK(x)(p :Parameters)).io
}

tabulate 就像文件一样,但是使您能够区分正在实例化哪个元素

注意:我认为您用于创建模块的语法略有错误。我认为应该是这样Module(new HW_BLOCK(...)).io,这将创建模块,然后返回io包以供HW_Block参考

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章