add regspecmap function to PowerDecode2
authorLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Tue, 2 Jun 2020 18:20:52 +0000 (19:20 +0100)
committerLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Tue, 2 Jun 2020 18:20:55 +0000 (19:20 +0100)
src/soc/decoder/power_decoder2.py

index 40071b3435958d4f5aaa56453aea7201e21e15ea..a3d8d9b6d4e26e0507967107f2c030303d194ca5 100644 (file)
@@ -9,6 +9,7 @@ from nmigen.cli import rtlil
 from nmutil.iocontrol import RecordObject
 from nmutil.extend import exts
 
+from soc.decoder.power_regspec_map import regspec_decode
 from soc.decoder.power_decoder import create_pdecode
 from soc.decoder.power_enums import (InternalOp, CryIn, Function,
                                      CRInSel, CROutSel,
@@ -593,6 +594,13 @@ class PowerDecode2(Elaboratable):
 
         return m
 
+    def regspecmap(self, regfile, regname):
+        """regspecmap: provides PowerDecode2 with an encoding relationship
+        to Function Unit port regfiles (read-enable, read regnum, write regnum)
+        regfile and regname arguments are fields 1 and 2 from a given regspec.
+        """
+        return regspec_decode(self, regfile, regname)
+
 
 if __name__ == '__main__':
     pdecode = create_pdecode()