繁体   English   中英

从列表生成凿子模块IO接口

[英]Generating Chisel Module IO Interface From a List

我想从存储在scala变量中的规范生成Module IO接口。

我想生成这个类定义:

class AddIfc extends Module {
   val io = IO(new Bundle {
     val a = Input(UInt(8.W))
     val b = Input(UInt(8.W))
     val o = Output(UInt(8.W))
   })
}

从像元组列表的东西:

List( ("a", "in", 8), ("b", "in", 8), ("o", "out", 8))

我可以想象使用scala中的一些反射功能构建AST并对其进行评估。 有没有人这样做并有一个例子来展示?

看一下Record (Bundle的父类)。 它们有点高级,因为你必须实现元素(而不是在Bundle中为你做反射),你必须实现cloneType。

在Chisel测试中有一个例子

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM