免责声明:由于我们的代码库仍处于过渡阶段,下面的问题将出现在Chisel-2语义中。
我试图在Scala/Chisel中实现一个脚本,它将从文本文件中读取一些配置数据,并将其分配给适当的包。
想象一下,这个捆绑包是这样的:
class b1 extends Bundle{
e1 = UInt(width=x)
e2 = UInt(width=y)
e3 = new b2 // b2 is another bundle with elements f1,f2
}文本文件可以以下列方式具有配置数据:
b1.e2 = 2
b1.e1 = 3
b1.e3.f1 = 5
b1.e3.f2 = 6我计划逐行读取文件,并使用正则表达式首先找到相应的包,然后在包中的元素将值赋值给。
为此,我需要某种类型的包映射(本例中为b1和b2 )。一旦我确定了它是哪个包,那么我还需要确定我必须将值赋值给哪个元素。
所以,我的问题是:
有什么方法可以为Chisel的包获得这样的地图吗?
还有,有没有人尝试过做类似于我想要达到的目标?
发布于 2018-11-05 18:37:17
Bundle有一个字段elements,它返回ListMap[String, Data],其中键是字段的名称,值是Chisel Data元素。您不仅可以使用这张地图来检查束的字段,还可以连接到其中的一些字段。
b1.elements("e3").elements("f1") := 5.Uhttps://stackoverflow.com/questions/53153474
复制相似问题