From 368da4f833b31b3d78bb70ae5f64bdddeef95ab7 Mon Sep 17 00:00:00 2001 From: Luke Kenneth Casson Leighton Date: Sun, 11 Aug 2019 08:42:47 +0100 Subject: [PATCH] start converting hardfloat-verilog fmac to nmigen --- src/ieee754/fpdiv/mulAddRecFN.py | 162 ++++++++++++++++--------------- 1 file changed, 86 insertions(+), 76 deletions(-) diff --git a/src/ieee754/fpdiv/mulAddRecFN.py b/src/ieee754/fpdiv/mulAddRecFN.py index 87863d50..e502cddf 100644 --- a/src/ieee754/fpdiv/mulAddRecFN.py +++ b/src/ieee754/fpdiv/mulAddRecFN.py @@ -170,13 +170,11 @@ class mulAddRecFNToRaw_preMul(Elaboratable): Mux((posNatCAlignDist < sigSumWidth - 1), posNatCAlignDist[:num_bits(sigSumWidth)], sigSumWidth - 1)), - # XXX check! {doSubMags ? ~sigC : sigC, - # {(sigSumWidth - sigWidth + 2){doSubMags}}}; sc = [Repl(doSubMags, (sigSumWidth - sigWidth + 2)] + \ [Mux(doSubMags, ~sigC, sigC)] extComplSigC.eq(Cat(*sc)) # XXX check! nmigen doesn't have >>> operator, only >> - mainAlignedSigC.eq(extComplSigC >>> CAlignDist), + mainAlignedSigC.eq(extComplSigC >> CAlignDist), grainAlignedSigC.eq(sigC<