summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAditya Naik2023-12-15 09:22:44 -0800
committerAditya Naik2023-12-15 09:22:44 -0800
commit783bcb8b3436e342a04169eaf967db2dbc58abc7 (patch)
tree7e67f79fa4e5d6662d5be696f86403bed677398d
parentaf415532cf160e63e971ceb301833b8433c18a50 (diff)
Add abstract module
-rw-r--r--AbstractModule.scala21
-rw-r--r--src/test/scala/chiselTests/AbstractModule.scala7
2 files changed, 25 insertions, 3 deletions
diff --git a/AbstractModule.scala b/AbstractModule.scala
new file mode 100644
index 00000000..2c2574ad
--- /dev/null
+++ b/AbstractModule.scala
@@ -0,0 +1,21 @@
+package chiselTests
+
+import chisel3._
+import chisel3.stage.ChiselStage
+
+class AbstractModule[T <: Data](params: T) extends Module[T] {
+ val node = IO(params)
+}
+
+class AbstractModuleContainer extends Module {
+ val mod1 = Module(new AbstractModule[UInt](Input(UInt(0.W))))
+ val mod2 = Module(new AbstractModule[UInt](Output(UInt(0.W))))
+ mod2.node := mod1.node
+}
+
+object main {
+ def main(args: Array[String]): Unit = {
+ // println(getVerilogString(new Example))
+ println(chisel3.stage.ChiselStage.emitVerilog(new AbstractModuleContainer))
+ }
+}
diff --git a/src/test/scala/chiselTests/AbstractModule.scala b/src/test/scala/chiselTests/AbstractModule.scala
index dc381120..9942f290 100644
--- a/src/test/scala/chiselTests/AbstractModule.scala
+++ b/src/test/scala/chiselTests/AbstractModule.scala
@@ -13,8 +13,9 @@ class AbstractModuleContainer extends Module {
mod2.node := mod1.node
}
-class AbstractModuleSpec extends ChiselPropSpec with Utils {
- property("Abstract module should elaborate") {
- ChiselStage.elaborate { new AbstractModuleContainer }
+object AbstractModuleSpec {
+ def main(args: Array[String]): Unit = {
+ // println(getVerilogString(new Example))
+ println(chisel3.stage.ChiselStage.emitVerilog(new AbstractModuleContainer))
}
}