move default values to power_enums.py
authorLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Tue, 3 Mar 2020 19:25:52 +0000 (19:25 +0000)
committerLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Tue, 3 Mar 2020 19:25:52 +0000 (19:25 +0000)
src/decoder/power_decoder.py
src/decoder/power_enums.py

index 39c7976dd6c38ef01ad6d53e85d86e67d3a2ddf6..d6b026008c6362a55d9e962ed4b11165968dd710 100644 (file)
@@ -1,7 +1,7 @@
 from nmigen import Module, Elaboratable, Signal
 from power_enums import (Function, InternalOp, In1Sel, In2Sel, In3Sel,
                          OutSel, RC, LdstLen, CryIn, get_csv, single_bit_flags,
-                         get_signal_name)
+                         get_signal_name, default_values)
 
 
 class PowerOp:
@@ -24,10 +24,7 @@ class PowerOp:
 
     def _eq(self, row=None):
         if row is None:
-            row = {'unit': "NONE", 'internal op': "OP_ILLEGAL",
-                   'in1': "RA", 'in2': 'NONE', 'in3': 'NONE', 'out': 'NONE',
-                   'ldst len': 'NONE',
-                   'rc' : 'NONE', 'cry in' : 'ZERO'}
+            row = default_values
         res = [self.function_unit.eq(Function[row['unit']]),
                self.internal_op.eq(InternalOp[row['internal op']]),
                self.in1_sel.eq(In1Sel[row['in1']]),
index 38ef0325328886a05b80a7a433e73e598a7e02a6..b92c6224eb083bd3ebfad498b2c2056cc64a5b51 100644 (file)
@@ -22,6 +22,11 @@ single_bit_flags = ['CR in', 'CR out', 'inv A', 'inv out',
                     'cry out', 'BR', 'sgn ext', 'upd', 'rsrv', '32b',
                     'sgn', 'lk', 'sgl pipe']
 
+# default values for fields in the table
+default_values = {'unit': "NONE", 'internal op': "OP_ILLEGAL",
+                   'in1': "RA", 'in2': 'NONE', 'in3': 'NONE', 'out': 'NONE',
+                   'ldst len': 'NONE',
+                   'rc' : 'NONE', 'cry in' : 'ZERO'}
 
 def get_signal_name(name):
     return name.lower().replace(' ', '_')