Stack looks like this:
-scnorm - FPDIVSpecialCasesDeNorm ispec FPADDBaseData
+scnorm - FPDIVSpecialCasesDeNorm ispec FPBaseData
------ ospec FPSCData
StageChain: FPDIVSpecialCasesMod,
...
pipediv5 - FPDivStageFinal ispec FPDivStage0Data
--------- ospec FPAddStage1Data
+-------- ospec FPPostCalcData
StageChain: DivPipeCalculateStage,
...
DivPipeFinalStage,
FPDivStage2Mod
-normpack - FPNormToPack ispec FPAddStage1Data
+normpack - FPNormToPack ispec FPPostCalcData
-------- ospec FPPackData
StageChain: Norm1ModSingle,
even 8 is starting to get alarmingly high.
"""
-from nmigen import Module
-from nmigen.cli import main, verilog
-
from nmutil.singlepipe import ControlBase
from nmutil.concurrentunit import ReservationStations, num_bits
-from ieee754.fpcommon.getop import FPADDBaseData
+from ieee754.fpcommon.basedata import FPBaseData
from ieee754.fpcommon.denorm import FPSCData
from ieee754.fpcommon.fpbase import FPFormat
from ieee754.fpcommon.pack import FPPackData
class FPDIVMuxInOut(ReservationStations):
""" Reservation-Station version of FPDIV pipeline.
- * fan-in on inputs (an array of FPADDBaseData: a,b,mid)
+ * fan-in on inputs (an array of FPBaseData: a,b,mid)
* N-stage divider pipeline
* fan-out on outputs (an array of FPPackData: z,mid)
ReservationStations.__init__(self, num_rows)
def i_specfn(self):
- return FPADDBaseData(self.pspec)
+ return FPBaseData(self.pspec)
def o_specfn(self):
return FPPackData(self.pspec)