aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/firrtl/annotations/MemoryInitAnnotation.scala
diff options
context:
space:
mode:
authorCarlos Eduardo2021-04-01 18:55:03 -0300
committerGitHub2021-04-01 14:55:03 -0700
commitd0d3cd4ec4348eea381fe463ac9c96956fdd5eba (patch)
tree3a035449ef49e5e7bca8f620339e18163285255e /src/main/scala/firrtl/annotations/MemoryInitAnnotation.scala
parentffe83fa43b9269f1e899122ba7825025df173b5a (diff)
Add memory initialization options for synthesis (#2166)
This PR adds options for memory initialization inside or outside the `ifndef SYNTHESIS` block.
Diffstat (limited to 'src/main/scala/firrtl/annotations/MemoryInitAnnotation.scala')
-rw-r--r--src/main/scala/firrtl/annotations/MemoryInitAnnotation.scala6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/main/scala/firrtl/annotations/MemoryInitAnnotation.scala b/src/main/scala/firrtl/annotations/MemoryInitAnnotation.scala
index 62dc96f4..1e81301d 100644
--- a/src/main/scala/firrtl/annotations/MemoryInitAnnotation.scala
+++ b/src/main/scala/firrtl/annotations/MemoryInitAnnotation.scala
@@ -52,3 +52,9 @@ case class MemoryFileInlineAnnotation(
override def initValue: MemoryInitValue = MemoryFileInlineInit(filename, hexOrBinary)
override def isRandomInit: Boolean = false
}
+
+/** Initializes the memory inside the `ifndef SYNTHESIS` block (default) */
+case object MemoryNoSynthInit extends NoTargetAnnotation
+
+/** Initializes the memory outside the `ifndef SYNTHESIS` block */
+case object MemorySynthInit extends NoTargetAnnotation