add CacheRecord
authorTobias Platen <tplaten@posteo.de>
Thu, 30 Jul 2020 16:57:46 +0000 (18:57 +0200)
committerTobias Platen <tplaten@posteo.de>
Thu, 30 Jul 2020 16:57:46 +0000 (18:57 +0200)
src/soc/experiment/l0_cache.py

index cc74c53810ef15759a71189518e7faffae6d5d3a..dffb5ae77b273a11899bfad5fde1669064612f88 100644 (file)
@@ -99,6 +99,26 @@ class DataMergerRecord(Record):
         self.data.reset_less = True
         self.en.reset_less = True
 
+class CacheRecord(Record):
+    def __init__(self, name=None):
+        layout = (('addr', 37),
+                  ('a_even', 7),
+                  ('bytemask_even', 16),
+                  ('data_even', 128),
+                  ('a_odd', 7),
+                  ('bytemask_odd', 16),
+                  ('data_odd', 128))
+        Record.__init__(self, Layout(layout), name=name)
+
+        self.addr.reset_less = True
+        self.a_even.reset_less = True
+        self.bytemask_even.reset_less = True
+        self.data_even.reset_less = True
+        self.a_odd.reset_less = True
+        self.bytemask_odd.reset_less = True
+        self.data_odd.reset_less = True
+
+
 
 # TODO: formal verification
 class DataMerger(Elaboratable):