comma-separated.
Here is how they are used:
-```
-class CRInputData(IntegerData):
- regspec = [('INT', 'a', '0:63'), # 64 bit range
- ('INT', 'b', '0:63'), # 6B bit range
- ('CR', 'full_cr', '0:31'), # 32 bit range
- ('CR', 'cr_a', '0:3'), # 4 bit range
- ('CR', 'cr_b', '0:3'), # 4 bit range
- ('CR', 'cr_c', '0:3')] # 4 bit range
-```
+
+ class CRInputData(IntegerData):
+ regspec = [('INT', 'a', '0:63'), # 64 bit range
+ ('INT', 'b', '0:63'), # 6B bit range
+ ('CR', 'full_cr', '0:31'), # 32 bit range
+ ('CR', 'cr_a', '0:3'), # 4 bit range
+ ('CR', 'cr_b', '0:3'), # 4 bit range
+ ('CR', 'cr_c', '0:3')] # 4 bit range
This tells us, when used by MultiCompUnit, that:
Likewise there is a corresponding regspec for CROutputData. The two are combined
and associated with the Pipeline:
-```
-class CRPipeSpec(CommonPipeSpec):
- regspec = (CRInputData.regspec, CROutputData.regspec)
- opsubsetkls = CompCROpSubset
-```
+ class CRPipeSpec(CommonPipeSpec):
+ regspec = (CRInputData.regspec, CROutputData.regspec)
+ opsubsetkls = CompCROpSubset
In this way the pipeline can be connected up to a generic, general-purpose class
(MultiCompUnit), which would otherwise know nothing about the details of the ALU