summaryrefslogtreecommitdiff
path: root/chiselFrontend/src/main/scala
diff options
context:
space:
mode:
authorDonggyu2016-10-27 14:58:44 -0700
committerGitHub2016-10-27 14:58:44 -0700
commit4d684398a1774a8b6a7a86e9d2dd92a165e02cfe (patch)
tree50d1670948f1d3f3b37cb9e438061c2ba500b620 /chiselFrontend/src/main/scala
parentbf83e428bfc4cbdecf86e464fc343bb6a030bdaa (diff)
parentaea7e1e754a3ebdb5b7e84c3ae1d35b16e547823 (diff)
Merge pull request #339 from ucb-bar/fix_seqmem_enable
fix SeqMem's read port creation
Diffstat (limited to 'chiselFrontend/src/main/scala')
-rw-r--r--chiselFrontend/src/main/scala/chisel3/core/Mem.scala8
1 files changed, 6 insertions, 2 deletions
diff --git a/chiselFrontend/src/main/scala/chisel3/core/Mem.scala b/chiselFrontend/src/main/scala/chisel3/core/Mem.scala
index 9cd5a4d8..a43b19fe 100644
--- a/chiselFrontend/src/main/scala/chisel3/core/Mem.scala
+++ b/chiselFrontend/src/main/scala/chisel3/core/Mem.scala
@@ -147,7 +147,11 @@ sealed class SeqMem[T <: Data](t: T, n: Int) extends MemBase[T](t, n) {
def read(addr: UInt, enable: Bool): T = {
implicit val sourceInfo = UnlocatableSourceInfo
val a = Wire(UInt())
- when (enable) { a := addr }
- read(a)
+ var port: Option[T] = None
+ when (enable) {
+ a := addr
+ port = Some(read(a))
+ }
+ port.get
}
}