From c326a274ac37bd35197801444dce360d6be58db7 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 f6316829..c967186c 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;