From add381a09efd7d466760868f292d80100df4e40b Mon Sep 17 00:00:00 2001 From: David Harris Date: Mon, 26 Dec 2022 08:54:57 -0800 Subject: [PATCH] Fixed early termination for square root --- pipelined/src/fpu/fdivsqrt/fdivsqrtfsm.sv | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pipelined/src/fpu/fdivsqrt/fdivsqrtfsm.sv b/pipelined/src/fpu/fdivsqrt/fdivsqrtfsm.sv index f63168290..c967186cf 100644 --- a/pipelined/src/fpu/fdivsqrt/fdivsqrtfsm.sv +++ b/pipelined/src/fpu/fdivsqrt/fdivsqrtfsm.sv @@ -116,8 +116,7 @@ module fdivsqrtfsm( if (SpecialCaseE) state <= #1 DONE; else state <= #1 BUSY; end else if (state == BUSY) begin -// if (step == 1 | WZeroE) state <= #1 DONE; // finished steps or terminate early on zero residual - if (step == 1) state <= #1 DONE; // finished steps or terminate early on zero residual + if (step == 1 | WZeroE) state <= #1 DONE; // finished steps or terminate early on zero residual step <= step - 1; end else if (state == DONE) begin if (StallM) state <= #1 DONE;