From b7239917c029e5788807784d7c87507da66b8fc7 Mon Sep 17 00:00:00 2001 From: Richard Yan Date: Tue, 6 Aug 2024 02:33:13 -0700 Subject: [PATCH] temporary fix to rename fp units --- .../resources/vsrc/TensorDotProductUnit.sv | 594 +++++++++--------- 1 file changed, 297 insertions(+), 297 deletions(-) diff --git a/src/main/resources/vsrc/TensorDotProductUnit.sv b/src/main/resources/vsrc/TensorDotProductUnit.sv index 07ab98c..643c4d5 100644 --- a/src/main/resources/vsrc/TensorDotProductUnit.sv +++ b/src/main/resources/vsrc/TensorDotProductUnit.sv @@ -1,78 +1,78 @@ -module MulFullRawFN( // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 47:7] - input io_a_isNaN, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 49:16] - input io_a_isInf, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 49:16] - input io_a_isZero, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 49:16] - input io_a_sign, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 49:16] - input [9:0] io_a_sExp, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 49:16] - input [24:0] io_a_sig, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 49:16] - input io_b_isNaN, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 49:16] - input io_b_isInf, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 49:16] - input io_b_isZero, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 49:16] - input io_b_sign, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 49:16] - input [9:0] io_b_sExp, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 49:16] - input [24:0] io_b_sig, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 49:16] - output io_invalidExc, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 49:16] - output io_rawOut_isNaN, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 49:16] - output io_rawOut_isInf, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 49:16] - output io_rawOut_isZero, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 49:16] - output io_rawOut_sign, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 49:16] - output [9:0] io_rawOut_sExp, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 49:16] - output [47:0] io_rawOut_sig // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 49:16] +module TensorDPUMulFullRawFN( // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 47:7] + input io_a_isNaN, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 49:16] + input io_a_isInf, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 49:16] + input io_a_isZero, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 49:16] + input io_a_sign, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 49:16] + input [9:0] io_a_sExp, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 49:16] + input [24:0] io_a_sig, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 49:16] + input io_b_isNaN, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 49:16] + input io_b_isInf, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 49:16] + input io_b_isZero, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 49:16] + input io_b_sign, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 49:16] + input [9:0] io_b_sExp, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 49:16] + input [24:0] io_b_sig, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 49:16] + output io_invalidExc, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 49:16] + output io_rawOut_isNaN, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 49:16] + output io_rawOut_isInf, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 49:16] + output io_rawOut_isZero, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 49:16] + output io_rawOut_sign, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 49:16] + output [9:0] io_rawOut_sExp, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 49:16] + output [47:0] io_rawOut_sig // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 49:16] ); - wire notSigNaN_invalidExc = io_a_isInf & io_b_isZero | io_a_isZero & io_b_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 58:60] - wire [9:0] _common_sExpOut_T_2 = $signed(io_a_sExp) + $signed(io_b_sExp); // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 62:36] - wire [49:0] _common_sigOut_T = io_a_sig * io_b_sig; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 63:35] + wire notSigNaN_invalidExc = io_a_isInf & io_b_isZero | io_a_isZero & io_b_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 58:60] + wire [9:0] _common_sExpOut_T_2 = $signed(io_a_sExp) + $signed(io_b_sExp); // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 62:36] + wire [49:0] _common_sigOut_T = io_a_sig * io_b_sig; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 63:35] wire _io_invalidExc_T_2 = io_a_isNaN & ~io_a_sig[22]; // @[generators/hardfloat/hardfloat/src/main/scala/common.scala 82:46] wire _io_invalidExc_T_5 = io_b_isNaN & ~io_b_sig[22]; // @[generators/hardfloat/hardfloat/src/main/scala/common.scala 82:46] - assign io_invalidExc = _io_invalidExc_T_2 | _io_invalidExc_T_5 | notSigNaN_invalidExc; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 66:71] - assign io_rawOut_isNaN = io_a_isNaN | io_b_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 70:35] - assign io_rawOut_isInf = io_a_isInf | io_b_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 59:38] - assign io_rawOut_isZero = io_a_isZero | io_b_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 60:40] - assign io_rawOut_sign = io_a_sign ^ io_b_sign; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 61:36] - assign io_rawOut_sExp = $signed(_common_sExpOut_T_2) - 10'sh100; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 62:48] - assign io_rawOut_sig = _common_sigOut_T[47:0]; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 63:46] + assign io_invalidExc = _io_invalidExc_T_2 | _io_invalidExc_T_5 | notSigNaN_invalidExc; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 66:71] + assign io_rawOut_isNaN = io_a_isNaN | io_b_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 70:35] + assign io_rawOut_isInf = io_a_isInf | io_b_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 59:38] + assign io_rawOut_isZero = io_a_isZero | io_b_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 60:40] + assign io_rawOut_sign = io_a_sign ^ io_b_sign; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 61:36] + assign io_rawOut_sExp = $signed(_common_sExpOut_T_2) - 10'sh100; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 62:48] + assign io_rawOut_sig = _common_sigOut_T[47:0]; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 63:46] endmodule -module MulRawFN( // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 75:7] - input io_a_isNaN, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 77:16] - input io_a_isInf, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 77:16] - input io_a_isZero, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 77:16] - input io_a_sign, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 77:16] - input [9:0] io_a_sExp, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 77:16] - input [24:0] io_a_sig, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 77:16] - input io_b_isNaN, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 77:16] - input io_b_isInf, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 77:16] - input io_b_isZero, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 77:16] - input io_b_sign, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 77:16] - input [9:0] io_b_sExp, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 77:16] - input [24:0] io_b_sig, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 77:16] - output io_invalidExc, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 77:16] - output io_rawOut_isNaN, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 77:16] - output io_rawOut_isInf, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 77:16] - output io_rawOut_isZero, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 77:16] - output io_rawOut_sign, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 77:16] - output [9:0] io_rawOut_sExp, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 77:16] - output [26:0] io_rawOut_sig // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 77:16] +module TensorDPUMulRawFN( // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 75:7] + input io_a_isNaN, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 77:16] + input io_a_isInf, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 77:16] + input io_a_isZero, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 77:16] + input io_a_sign, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 77:16] + input [9:0] io_a_sExp, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 77:16] + input [24:0] io_a_sig, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 77:16] + input io_b_isNaN, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 77:16] + input io_b_isInf, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 77:16] + input io_b_isZero, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 77:16] + input io_b_sign, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 77:16] + input [9:0] io_b_sExp, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 77:16] + input [24:0] io_b_sig, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 77:16] + output io_invalidExc, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 77:16] + output io_rawOut_isNaN, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 77:16] + output io_rawOut_isInf, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 77:16] + output io_rawOut_isZero, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 77:16] + output io_rawOut_sign, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 77:16] + output [9:0] io_rawOut_sExp, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 77:16] + output [26:0] io_rawOut_sig // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 77:16] ); - wire mulFullRaw_io_a_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 84:28] - wire mulFullRaw_io_a_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 84:28] - wire mulFullRaw_io_a_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 84:28] - wire mulFullRaw_io_a_sign; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 84:28] - wire [9:0] mulFullRaw_io_a_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 84:28] - wire [24:0] mulFullRaw_io_a_sig; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 84:28] - wire mulFullRaw_io_b_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 84:28] - wire mulFullRaw_io_b_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 84:28] - wire mulFullRaw_io_b_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 84:28] - wire mulFullRaw_io_b_sign; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 84:28] - wire [9:0] mulFullRaw_io_b_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 84:28] - wire [24:0] mulFullRaw_io_b_sig; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 84:28] - wire mulFullRaw_io_invalidExc; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 84:28] - wire mulFullRaw_io_rawOut_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 84:28] - wire mulFullRaw_io_rawOut_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 84:28] - wire mulFullRaw_io_rawOut_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 84:28] - wire mulFullRaw_io_rawOut_sign; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 84:28] - wire [9:0] mulFullRaw_io_rawOut_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 84:28] - wire [47:0] mulFullRaw_io_rawOut_sig; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 84:28] - MulFullRawFN mulFullRaw ( // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 84:28] + wire mulFullRaw_io_a_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 84:28] + wire mulFullRaw_io_a_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 84:28] + wire mulFullRaw_io_a_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 84:28] + wire mulFullRaw_io_a_sign; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 84:28] + wire [9:0] mulFullRaw_io_a_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 84:28] + wire [24:0] mulFullRaw_io_a_sig; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 84:28] + wire mulFullRaw_io_b_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 84:28] + wire mulFullRaw_io_b_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 84:28] + wire mulFullRaw_io_b_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 84:28] + wire mulFullRaw_io_b_sign; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 84:28] + wire [9:0] mulFullRaw_io_b_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 84:28] + wire [24:0] mulFullRaw_io_b_sig; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 84:28] + wire mulFullRaw_io_invalidExc; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 84:28] + wire mulFullRaw_io_rawOut_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 84:28] + wire mulFullRaw_io_rawOut_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 84:28] + wire mulFullRaw_io_rawOut_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 84:28] + wire mulFullRaw_io_rawOut_sign; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 84:28] + wire [9:0] mulFullRaw_io_rawOut_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 84:28] + wire [47:0] mulFullRaw_io_rawOut_sig; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 84:28] + TensorDPUMulFullRawFN mulFullRaw ( // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 84:28] .io_a_isNaN(mulFullRaw_io_a_isNaN), .io_a_isInf(mulFullRaw_io_a_isInf), .io_a_isZero(mulFullRaw_io_a_isZero), @@ -93,27 +93,27 @@ module MulRawFN( // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.sca .io_rawOut_sExp(mulFullRaw_io_rawOut_sExp), .io_rawOut_sig(mulFullRaw_io_rawOut_sig) ); - assign io_invalidExc = mulFullRaw_io_invalidExc; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 89:19] - assign io_rawOut_isNaN = mulFullRaw_io_rawOut_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 90:15] - assign io_rawOut_isInf = mulFullRaw_io_rawOut_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 90:15] - assign io_rawOut_isZero = mulFullRaw_io_rawOut_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 90:15] - assign io_rawOut_sign = mulFullRaw_io_rawOut_sign; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 90:15] - assign io_rawOut_sExp = mulFullRaw_io_rawOut_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 90:15] - assign io_rawOut_sig = {mulFullRaw_io_rawOut_sig[47:22],|mulFullRaw_io_rawOut_sig[21:0]}; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 93:10] - assign mulFullRaw_io_a_isNaN = io_a_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 86:21] - assign mulFullRaw_io_a_isInf = io_a_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 86:21] - assign mulFullRaw_io_a_isZero = io_a_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 86:21] - assign mulFullRaw_io_a_sign = io_a_sign; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 86:21] - assign mulFullRaw_io_a_sExp = io_a_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 86:21] - assign mulFullRaw_io_a_sig = io_a_sig; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 86:21] - assign mulFullRaw_io_b_isNaN = io_b_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 87:21] - assign mulFullRaw_io_b_isInf = io_b_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 87:21] - assign mulFullRaw_io_b_isZero = io_b_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 87:21] - assign mulFullRaw_io_b_sign = io_b_sign; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 87:21] - assign mulFullRaw_io_b_sExp = io_b_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 87:21] - assign mulFullRaw_io_b_sig = io_b_sig; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 87:21] + assign io_invalidExc = mulFullRaw_io_invalidExc; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 89:19] + assign io_rawOut_isNaN = mulFullRaw_io_rawOut_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 90:15] + assign io_rawOut_isInf = mulFullRaw_io_rawOut_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 90:15] + assign io_rawOut_isZero = mulFullRaw_io_rawOut_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 90:15] + assign io_rawOut_sign = mulFullRaw_io_rawOut_sign; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 90:15] + assign io_rawOut_sExp = mulFullRaw_io_rawOut_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 90:15] + assign io_rawOut_sig = {mulFullRaw_io_rawOut_sig[47:22],|mulFullRaw_io_rawOut_sig[21:0]}; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 93:10] + assign mulFullRaw_io_a_isNaN = io_a_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 86:21] + assign mulFullRaw_io_a_isInf = io_a_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 86:21] + assign mulFullRaw_io_a_isZero = io_a_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 86:21] + assign mulFullRaw_io_a_sign = io_a_sign; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 86:21] + assign mulFullRaw_io_a_sExp = io_a_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 86:21] + assign mulFullRaw_io_a_sig = io_a_sig; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 86:21] + assign mulFullRaw_io_b_isNaN = io_b_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 87:21] + assign mulFullRaw_io_b_isInf = io_b_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 87:21] + assign mulFullRaw_io_b_isZero = io_b_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 87:21] + assign mulFullRaw_io_b_sign = io_b_sign; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 87:21] + assign mulFullRaw_io_b_sExp = io_b_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 87:21] + assign mulFullRaw_io_b_sig = io_b_sig; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 87:21] endmodule -module RoundAnyRawFNToRecFN_ie8_is26_oe8_os24( // @[generators/hardfloat/hardfloat/src/main/scala/RoundAnyRawFNToRecFN.scala 48:5] +module TensorDPURoundAnyRawFNToRecFN_ie8_is26_oe8_os24( // @[generators/hardfloat/hardfloat/src/main/scala/RoundAnyRawFNToRecFN.scala 48:5] input io_invalidExc, // @[generators/hardfloat/hardfloat/src/main/scala/RoundAnyRawFNToRecFN.scala 58:16] input io_in_isNaN, // @[generators/hardfloat/hardfloat/src/main/scala/RoundAnyRawFNToRecFN.scala 58:16] input io_in_isInf, // @[generators/hardfloat/hardfloat/src/main/scala/RoundAnyRawFNToRecFN.scala 58:16] @@ -211,7 +211,7 @@ module RoundAnyRawFNToRecFN_ie8_is26_oe8_os24( // @[generators/hardfloat/hardflo wire [9:0] _io_out_T = {signOut,expOut}; // @[generators/hardfloat/hardfloat/src/main/scala/RoundAnyRawFNToRecFN.scala 286:23] assign io_out = {_io_out_T,fractOut}; // @[generators/hardfloat/hardfloat/src/main/scala/RoundAnyRawFNToRecFN.scala 286:33] endmodule -module RoundRawFNToRecFN_e8_s24( // @[generators/hardfloat/hardfloat/src/main/scala/RoundAnyRawFNToRecFN.scala 295:5] +module TensorDPURoundRawFNToRecFN_e8_s24( // @[generators/hardfloat/hardfloat/src/main/scala/RoundAnyRawFNToRecFN.scala 295:5] input io_invalidExc, // @[generators/hardfloat/hardfloat/src/main/scala/RoundAnyRawFNToRecFN.scala 299:16] input io_in_isNaN, // @[generators/hardfloat/hardfloat/src/main/scala/RoundAnyRawFNToRecFN.scala 299:16] input io_in_isInf, // @[generators/hardfloat/hardfloat/src/main/scala/RoundAnyRawFNToRecFN.scala 299:16] @@ -229,7 +229,7 @@ module RoundRawFNToRecFN_e8_s24( // @[generators/hardfloat/hardfloat/src/main/sc wire [9:0] roundAnyRawFNToRecFN_io_in_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/RoundAnyRawFNToRecFN.scala 310:15] wire [26:0] roundAnyRawFNToRecFN_io_in_sig; // @[generators/hardfloat/hardfloat/src/main/scala/RoundAnyRawFNToRecFN.scala 310:15] wire [32:0] roundAnyRawFNToRecFN_io_out; // @[generators/hardfloat/hardfloat/src/main/scala/RoundAnyRawFNToRecFN.scala 310:15] - RoundAnyRawFNToRecFN_ie8_is26_oe8_os24 roundAnyRawFNToRecFN ( // @[generators/hardfloat/hardfloat/src/main/scala/RoundAnyRawFNToRecFN.scala 310:15] + TensorDPURoundAnyRawFNToRecFN_ie8_is26_oe8_os24 roundAnyRawFNToRecFN ( // @[generators/hardfloat/hardfloat/src/main/scala/RoundAnyRawFNToRecFN.scala 310:15] .io_invalidExc(roundAnyRawFNToRecFN_io_invalidExc), .io_in_isNaN(roundAnyRawFNToRecFN_io_in_isNaN), .io_in_isInf(roundAnyRawFNToRecFN_io_in_isInf), @@ -248,38 +248,38 @@ module RoundRawFNToRecFN_e8_s24( // @[generators/hardfloat/hardfloat/src/main/sc assign roundAnyRawFNToRecFN_io_in_sExp = io_in_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/RoundAnyRawFNToRecFN.scala 315:44] assign roundAnyRawFNToRecFN_io_in_sig = io_in_sig; // @[generators/hardfloat/hardfloat/src/main/scala/RoundAnyRawFNToRecFN.scala 315:44] endmodule -module MulRecFN( // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 100:7] - input [32:0] io_a, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 102:16] - input [32:0] io_b, // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 102:16] - output [32:0] io_out // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 102:16] +module TensorDPUMulRecFN( // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 100:7] + input [32:0] io_a, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 102:16] + input [32:0] io_b, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 102:16] + output [32:0] io_out // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 102:16] ); - wire mulRawFN__io_a_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 113:26] - wire mulRawFN__io_a_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 113:26] - wire mulRawFN__io_a_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 113:26] - wire mulRawFN__io_a_sign; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 113:26] - wire [9:0] mulRawFN__io_a_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 113:26] - wire [24:0] mulRawFN__io_a_sig; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 113:26] - wire mulRawFN__io_b_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 113:26] - wire mulRawFN__io_b_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 113:26] - wire mulRawFN__io_b_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 113:26] - wire mulRawFN__io_b_sign; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 113:26] - wire [9:0] mulRawFN__io_b_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 113:26] - wire [24:0] mulRawFN__io_b_sig; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 113:26] - wire mulRawFN__io_invalidExc; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 113:26] - wire mulRawFN__io_rawOut_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 113:26] - wire mulRawFN__io_rawOut_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 113:26] - wire mulRawFN__io_rawOut_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 113:26] - wire mulRawFN__io_rawOut_sign; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 113:26] - wire [9:0] mulRawFN__io_rawOut_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 113:26] - wire [26:0] mulRawFN__io_rawOut_sig; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 113:26] - wire roundRawFNToRecFN_io_invalidExc; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 121:15] - wire roundRawFNToRecFN_io_in_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 121:15] - wire roundRawFNToRecFN_io_in_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 121:15] - wire roundRawFNToRecFN_io_in_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 121:15] - wire roundRawFNToRecFN_io_in_sign; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 121:15] - wire [9:0] roundRawFNToRecFN_io_in_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 121:15] - wire [26:0] roundRawFNToRecFN_io_in_sig; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 121:15] - wire [32:0] roundRawFNToRecFN_io_out; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 121:15] + wire mulRawFN__io_a_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 113:26] + wire mulRawFN__io_a_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 113:26] + wire mulRawFN__io_a_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 113:26] + wire mulRawFN__io_a_sign; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 113:26] + wire [9:0] mulRawFN__io_a_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 113:26] + wire [24:0] mulRawFN__io_a_sig; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 113:26] + wire mulRawFN__io_b_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 113:26] + wire mulRawFN__io_b_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 113:26] + wire mulRawFN__io_b_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 113:26] + wire mulRawFN__io_b_sign; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 113:26] + wire [9:0] mulRawFN__io_b_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 113:26] + wire [24:0] mulRawFN__io_b_sig; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 113:26] + wire mulRawFN__io_invalidExc; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 113:26] + wire mulRawFN__io_rawOut_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 113:26] + wire mulRawFN__io_rawOut_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 113:26] + wire mulRawFN__io_rawOut_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 113:26] + wire mulRawFN__io_rawOut_sign; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 113:26] + wire [9:0] mulRawFN__io_rawOut_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 113:26] + wire [26:0] mulRawFN__io_rawOut_sig; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 113:26] + wire roundRawFNToRecFN_io_invalidExc; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 121:15] + wire roundRawFNToRecFN_io_in_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 121:15] + wire roundRawFNToRecFN_io_in_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 121:15] + wire roundRawFNToRecFN_io_in_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 121:15] + wire roundRawFNToRecFN_io_in_sign; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 121:15] + wire [9:0] roundRawFNToRecFN_io_in_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 121:15] + wire [26:0] roundRawFNToRecFN_io_in_sig; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 121:15] + wire [32:0] roundRawFNToRecFN_io_out; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 121:15] wire [8:0] mulRawFN_io_a_exp = io_a[31:23]; // @[generators/hardfloat/hardfloat/src/main/scala/rawFloatFromRecFN.scala 51:21] wire mulRawFN_io_a_isZero = mulRawFN_io_a_exp[8:6] == 3'h0; // @[generators/hardfloat/hardfloat/src/main/scala/rawFloatFromRecFN.scala 52:53] wire mulRawFN_io_a_isSpecial = mulRawFN_io_a_exp[8:7] == 2'h3; // @[generators/hardfloat/hardfloat/src/main/scala/rawFloatFromRecFN.scala 53:53] @@ -290,7 +290,7 @@ module MulRecFN( // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.sca wire mulRawFN_io_b_isSpecial = mulRawFN_io_b_exp[8:7] == 2'h3; // @[generators/hardfloat/hardfloat/src/main/scala/rawFloatFromRecFN.scala 53:53] wire _mulRawFN_io_b_out_sig_T = ~mulRawFN_io_b_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/rawFloatFromRecFN.scala 61:35] wire [1:0] _mulRawFN_io_b_out_sig_T_1 = {1'h0,_mulRawFN_io_b_out_sig_T}; // @[generators/hardfloat/hardfloat/src/main/scala/rawFloatFromRecFN.scala 61:32] - MulRawFN mulRawFN_ ( // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 113:26] + TensorDPUMulRawFN mulRawFN_ ( // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 113:26] .io_a_isNaN(mulRawFN__io_a_isNaN), .io_a_isInf(mulRawFN__io_a_isInf), .io_a_isZero(mulRawFN__io_a_isZero), @@ -311,7 +311,7 @@ module MulRecFN( // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.sca .io_rawOut_sExp(mulRawFN__io_rawOut_sExp), .io_rawOut_sig(mulRawFN__io_rawOut_sig) ); - RoundRawFNToRecFN_e8_s24 roundRawFNToRecFN ( // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 121:15] + TensorDPURoundRawFNToRecFN_e8_s24 roundRawFNToRecFN ( // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 121:15] .io_invalidExc(roundRawFNToRecFN_io_invalidExc), .io_in_isNaN(roundRawFNToRecFN_io_in_isNaN), .io_in_isInf(roundRawFNToRecFN_io_in_isInf), @@ -321,7 +321,7 @@ module MulRecFN( // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.sca .io_in_sig(roundRawFNToRecFN_io_in_sig), .io_out(roundRawFNToRecFN_io_out) ); - assign io_out = roundRawFNToRecFN_io_out; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 127:23] + assign io_out = roundRawFNToRecFN_io_out; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 127:23] assign mulRawFN__io_a_isNaN = mulRawFN_io_a_isSpecial & mulRawFN_io_a_exp[6]; // @[generators/hardfloat/hardfloat/src/main/scala/rawFloatFromRecFN.scala 56:33] assign mulRawFN__io_a_isInf = mulRawFN_io_a_isSpecial & ~mulRawFN_io_a_exp[6]; // @[generators/hardfloat/hardfloat/src/main/scala/rawFloatFromRecFN.scala 57:33] assign mulRawFN__io_a_isZero = mulRawFN_io_a_exp[8:6] == 3'h0; // @[generators/hardfloat/hardfloat/src/main/scala/rawFloatFromRecFN.scala 52:53] @@ -334,15 +334,15 @@ module MulRecFN( // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.sca assign mulRawFN__io_b_sign = io_b[32]; // @[generators/hardfloat/hardfloat/src/main/scala/rawFloatFromRecFN.scala 59:25] assign mulRawFN__io_b_sExp = {1'b0,$signed(mulRawFN_io_b_exp)}; // @[generators/hardfloat/hardfloat/src/main/scala/rawFloatFromRecFN.scala 60:27] assign mulRawFN__io_b_sig = {_mulRawFN_io_b_out_sig_T_1,io_b[22:0]}; // @[generators/hardfloat/hardfloat/src/main/scala/rawFloatFromRecFN.scala 61:44] - assign roundRawFNToRecFN_io_invalidExc = mulRawFN__io_invalidExc; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 122:39] - assign roundRawFNToRecFN_io_in_isNaN = mulRawFN__io_rawOut_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 124:39] - assign roundRawFNToRecFN_io_in_isInf = mulRawFN__io_rawOut_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 124:39] - assign roundRawFNToRecFN_io_in_isZero = mulRawFN__io_rawOut_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 124:39] - assign roundRawFNToRecFN_io_in_sign = mulRawFN__io_rawOut_sign; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 124:39] - assign roundRawFNToRecFN_io_in_sExp = mulRawFN__io_rawOut_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 124:39] - assign roundRawFNToRecFN_io_in_sig = mulRawFN__io_rawOut_sig; // @[generators/hardfloat/hardfloat/src/main/scala/MulRecFN.scala 124:39] + assign roundRawFNToRecFN_io_invalidExc = mulRawFN__io_invalidExc; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 122:39] + assign roundRawFNToRecFN_io_in_isNaN = mulRawFN__io_rawOut_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 124:39] + assign roundRawFNToRecFN_io_in_isInf = mulRawFN__io_rawOut_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 124:39] + assign roundRawFNToRecFN_io_in_isZero = mulRawFN__io_rawOut_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 124:39] + assign roundRawFNToRecFN_io_in_sign = mulRawFN__io_rawOut_sign; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 124:39] + assign roundRawFNToRecFN_io_in_sExp = mulRawFN__io_rawOut_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 124:39] + assign roundRawFNToRecFN_io_in_sig = mulRawFN__io_rawOut_sig; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUMulRecFN.scala 124:39] endmodule -module StallingPipe( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 48:7] +module TensorDPUStallingPipe( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 48:7] input clock, // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 48:7] input reset, // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 48:7] input io_stall, // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 63:14] @@ -448,7 +448,7 @@ end // initial `endif `endif // SYNTHESIS endmodule -module StallingPipe_1( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 48:7] +module TensorDPUStallingPipe_1( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 48:7] input clock, // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 48:7] input reset, // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 48:7] input io_stall, // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 63:14] @@ -524,56 +524,56 @@ end // initial `endif `endif // SYNTHESIS endmodule -module AddRawFN( // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 47:7] - input io_a_isNaN, // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 49:16] - input io_a_isInf, // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 49:16] - input io_a_isZero, // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 49:16] - input io_a_sign, // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 49:16] - input [9:0] io_a_sExp, // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 49:16] - input [24:0] io_a_sig, // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 49:16] - input io_b_isNaN, // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 49:16] - input io_b_isInf, // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 49:16] - input io_b_isZero, // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 49:16] - input io_b_sign, // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 49:16] - input [9:0] io_b_sExp, // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 49:16] - input [24:0] io_b_sig, // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 49:16] - output io_invalidExc, // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 49:16] - output io_rawOut_isNaN, // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 49:16] - output io_rawOut_isInf, // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 49:16] - output io_rawOut_isZero, // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 49:16] - output io_rawOut_sign, // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 49:16] - output [9:0] io_rawOut_sExp, // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 49:16] - output [26:0] io_rawOut_sig // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 49:16] +module TensorDPUAddRawFN( // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 47:7] + input io_a_isNaN, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 49:16] + input io_a_isInf, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 49:16] + input io_a_isZero, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 49:16] + input io_a_sign, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 49:16] + input [9:0] io_a_sExp, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 49:16] + input [24:0] io_a_sig, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 49:16] + input io_b_isNaN, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 49:16] + input io_b_isInf, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 49:16] + input io_b_isZero, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 49:16] + input io_b_sign, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 49:16] + input [9:0] io_b_sExp, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 49:16] + input [24:0] io_b_sig, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 49:16] + output io_invalidExc, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 49:16] + output io_rawOut_isNaN, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 49:16] + output io_rawOut_isInf, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 49:16] + output io_rawOut_isZero, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 49:16] + output io_rawOut_sign, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 49:16] + output [9:0] io_rawOut_sExp, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 49:16] + output [26:0] io_rawOut_sig // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 49:16] ); - wire eqSigns = io_a_sign == io_b_sign; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 61:29] - wire [9:0] sDiffExps = $signed(io_a_sExp) - $signed(io_b_sExp); // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 63:31] - wire _modNatAlignDist_T = $signed(sDiffExps) < 10'sh0; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 64:41] - wire [9:0] _modNatAlignDist_T_3 = $signed(io_b_sExp) - $signed(io_a_sExp); // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 64:58] - wire [9:0] _modNatAlignDist_T_4 = $signed(sDiffExps) < 10'sh0 ? $signed(_modNatAlignDist_T_3) : $signed(sDiffExps); // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 64:30] - wire [4:0] modNatAlignDist = _modNatAlignDist_T_4[4:0]; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 64:81] - wire [4:0] _isMaxAlign_T = sDiffExps[9:5]; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 66:19] - wire _isMaxAlign_T_6 = $signed(_isMaxAlign_T) != -5'sh1 | sDiffExps[4:0] == 5'h0; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 67:51] - wire isMaxAlign = $signed(_isMaxAlign_T) != 5'sh0 & _isMaxAlign_T_6; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 66:45] - wire [4:0] alignDist = isMaxAlign ? 5'h1f : modNatAlignDist; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 68:24] - wire _closeSubMags_T = ~eqSigns; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 69:24] - wire closeSubMags = ~eqSigns & ~isMaxAlign & modNatAlignDist <= 5'h1; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 69:48] - wire _close_alignedSigA_T = 10'sh0 <= $signed(sDiffExps); // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 73:18] - wire [26:0] _close_alignedSigA_T_3 = {io_a_sig, 2'h0}; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 73:58] - wire [26:0] _close_alignedSigA_T_4 = 10'sh0 <= $signed(sDiffExps) & sDiffExps[0] ? _close_alignedSigA_T_3 : 27'h0; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 73:12] - wire [25:0] _close_alignedSigA_T_9 = {io_a_sig, 1'h0}; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 74:58] - wire [25:0] _close_alignedSigA_T_10 = _close_alignedSigA_T & ~sDiffExps[0] ? _close_alignedSigA_T_9 : 26'h0; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 74:12] - wire [26:0] _GEN_0 = {{1'd0}, _close_alignedSigA_T_10}; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 73:68] - wire [26:0] _close_alignedSigA_T_11 = _close_alignedSigA_T_4 | _GEN_0; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 73:68] - wire [24:0] _close_alignedSigA_T_13 = _modNatAlignDist_T ? io_a_sig : 25'h0; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 75:12] - wire [26:0] _GEN_1 = {{2'd0}, _close_alignedSigA_T_13}; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 74:68] - wire [26:0] _close_sSigSum_T = _close_alignedSigA_T_11 | _GEN_1; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 76:43] - wire [25:0] _close_sSigSum_T_2 = {io_b_sig, 1'h0}; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 76:66] - wire [26:0] _GEN_2 = {{1{_close_sSigSum_T_2[25]}},_close_sSigSum_T_2}; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 76:50] - wire [26:0] close_sSigSum = $signed(_close_sSigSum_T) - $signed(_GEN_2); // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 76:50] - wire _close_sigSum_T = $signed(close_sSigSum) < 27'sh0; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 77:42] - wire [26:0] _close_sigSum_T_3 = 27'sh0 - $signed(close_sSigSum); // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 77:49] - wire [26:0] _close_sigSum_T_4 = $signed(close_sSigSum) < 27'sh0 ? $signed(_close_sigSum_T_3) : $signed(close_sSigSum); // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 77:27] - wire [25:0] close_sigSum = _close_sigSum_T_4[25:0]; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 77:79] + wire eqSigns = io_a_sign == io_b_sign; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 61:29] + wire [9:0] sDiffExps = $signed(io_a_sExp) - $signed(io_b_sExp); // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 63:31] + wire _modNatAlignDist_T = $signed(sDiffExps) < 10'sh0; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 64:41] + wire [9:0] _modNatAlignDist_T_3 = $signed(io_b_sExp) - $signed(io_a_sExp); // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 64:58] + wire [9:0] _modNatAlignDist_T_4 = $signed(sDiffExps) < 10'sh0 ? $signed(_modNatAlignDist_T_3) : $signed(sDiffExps); // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 64:30] + wire [4:0] modNatAlignDist = _modNatAlignDist_T_4[4:0]; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 64:81] + wire [4:0] _isMaxAlign_T = sDiffExps[9:5]; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 66:19] + wire _isMaxAlign_T_6 = $signed(_isMaxAlign_T) != -5'sh1 | sDiffExps[4:0] == 5'h0; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 67:51] + wire isMaxAlign = $signed(_isMaxAlign_T) != 5'sh0 & _isMaxAlign_T_6; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 66:45] + wire [4:0] alignDist = isMaxAlign ? 5'h1f : modNatAlignDist; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 68:24] + wire _closeSubMags_T = ~eqSigns; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 69:24] + wire closeSubMags = ~eqSigns & ~isMaxAlign & modNatAlignDist <= 5'h1; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 69:48] + wire _close_alignedSigA_T = 10'sh0 <= $signed(sDiffExps); // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 73:18] + wire [26:0] _close_alignedSigA_T_3 = {io_a_sig, 2'h0}; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 73:58] + wire [26:0] _close_alignedSigA_T_4 = 10'sh0 <= $signed(sDiffExps) & sDiffExps[0] ? _close_alignedSigA_T_3 : 27'h0; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 73:12] + wire [25:0] _close_alignedSigA_T_9 = {io_a_sig, 1'h0}; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 74:58] + wire [25:0] _close_alignedSigA_T_10 = _close_alignedSigA_T & ~sDiffExps[0] ? _close_alignedSigA_T_9 : 26'h0; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 74:12] + wire [26:0] _GEN_0 = {{1'd0}, _close_alignedSigA_T_10}; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 73:68] + wire [26:0] _close_alignedSigA_T_11 = _close_alignedSigA_T_4 | _GEN_0; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 73:68] + wire [24:0] _close_alignedSigA_T_13 = _modNatAlignDist_T ? io_a_sig : 25'h0; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 75:12] + wire [26:0] _GEN_1 = {{2'd0}, _close_alignedSigA_T_13}; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 74:68] + wire [26:0] _close_sSigSum_T = _close_alignedSigA_T_11 | _GEN_1; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 76:43] + wire [25:0] _close_sSigSum_T_2 = {io_b_sig, 1'h0}; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 76:66] + wire [26:0] _GEN_2 = {{1{_close_sSigSum_T_2[25]}},_close_sSigSum_T_2}; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 76:50] + wire [26:0] close_sSigSum = $signed(_close_sSigSum_T) - $signed(_GEN_2); // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 76:50] + wire _close_sigSum_T = $signed(close_sSigSum) < 27'sh0; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 77:42] + wire [26:0] _close_sigSum_T_3 = 27'sh0 - $signed(close_sSigSum); // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 77:49] + wire [26:0] _close_sigSum_T_4 = $signed(close_sSigSum) < 27'sh0 ? $signed(_close_sigSum_T_3) : $signed(close_sSigSum); // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 77:27] + wire [25:0] close_sigSum = _close_sigSum_T_4[25:0]; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 77:79] wire close_reduced2SigSum_reducedVec_0 = |close_sigSum[1:0]; // @[generators/hardfloat/hardfloat/src/main/scala/primitives.scala 103:54] wire close_reduced2SigSum_reducedVec_1 = |close_sigSum[3:2]; // @[generators/hardfloat/hardfloat/src/main/scala/primitives.scala 103:54] wire close_reduced2SigSum_reducedVec_2 = |close_sigSum[5:4]; // @[generators/hardfloat/hardfloat/src/main/scala/primitives.scala 103:54] @@ -605,21 +605,21 @@ module AddRawFN( // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.sca wire [3:0] _close_normDistReduced2_T_22 = close_reduced2SigSum[10] ? 4'h2 : _close_normDistReduced2_T_21; // @[src/main/scala/chisel3/util/Mux.scala 50:70] wire [3:0] _close_normDistReduced2_T_23 = close_reduced2SigSum[11] ? 4'h1 : _close_normDistReduced2_T_22; // @[src/main/scala/chisel3/util/Mux.scala 50:70] wire [3:0] close_normDistReduced2 = close_reduced2SigSum[12] ? 4'h0 : _close_normDistReduced2_T_23; // @[src/main/scala/chisel3/util/Mux.scala 50:70] - wire [4:0] close_nearNormDist = {close_normDistReduced2, 1'h0}; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 81:53] - wire [56:0] _GEN_7 = {{31'd0}, close_sigSum}; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 82:38] - wire [56:0] _close_sigOut_T = _GEN_7 << close_nearNormDist; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 82:38] - wire [57:0] _close_sigOut_T_1 = {_close_sigOut_T, 1'h0}; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 82:59] - wire [26:0] close_sigOut = _close_sigOut_T_1[26:0]; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 82:63] - wire close_totalCancellation = ~(|close_sigOut[26:25]); // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 83:35] - wire close_notTotalCancellation_signOut = io_a_sign ^ _close_sigSum_T; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 84:56] - wire far_signOut = _modNatAlignDist_T ? io_b_sign : io_a_sign; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 87:26] - wire [24:0] _far_sigLarger_T_1 = _modNatAlignDist_T ? io_b_sig : io_a_sig; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 88:29] - wire [23:0] far_sigLarger = _far_sigLarger_T_1[23:0]; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 88:66] - wire [24:0] _far_sigSmaller_T_1 = _modNatAlignDist_T ? io_a_sig : io_b_sig; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 89:29] - wire [23:0] far_sigSmaller = _far_sigSmaller_T_1[23:0]; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 89:66] - wire [28:0] _far_mainAlignedSigSmaller_T = {far_sigSmaller, 5'h0}; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 90:52] - wire [28:0] far_mainAlignedSigSmaller = _far_mainAlignedSigSmaller_T >> alignDist; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 90:56] - wire [25:0] _far_reduced4SigSmaller_T = {far_sigSmaller, 2'h0}; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 91:60] + wire [4:0] close_nearNormDist = {close_normDistReduced2, 1'h0}; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 81:53] + wire [56:0] _GEN_7 = {{31'd0}, close_sigSum}; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 82:38] + wire [56:0] _close_sigOut_T = _GEN_7 << close_nearNormDist; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 82:38] + wire [57:0] _close_sigOut_T_1 = {_close_sigOut_T, 1'h0}; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 82:59] + wire [26:0] close_sigOut = _close_sigOut_T_1[26:0]; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 82:63] + wire close_totalCancellation = ~(|close_sigOut[26:25]); // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 83:35] + wire close_notTotalCancellation_signOut = io_a_sign ^ _close_sigSum_T; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 84:56] + wire far_signOut = _modNatAlignDist_T ? io_b_sign : io_a_sign; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 87:26] + wire [24:0] _far_sigLarger_T_1 = _modNatAlignDist_T ? io_b_sig : io_a_sig; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 88:29] + wire [23:0] far_sigLarger = _far_sigLarger_T_1[23:0]; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 88:66] + wire [24:0] _far_sigSmaller_T_1 = _modNatAlignDist_T ? io_a_sig : io_b_sig; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 89:29] + wire [23:0] far_sigSmaller = _far_sigSmaller_T_1[23:0]; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 89:66] + wire [28:0] _far_mainAlignedSigSmaller_T = {far_sigSmaller, 5'h0}; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 90:52] + wire [28:0] far_mainAlignedSigSmaller = _far_mainAlignedSigSmaller_T >> alignDist; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 90:56] + wire [25:0] _far_reduced4SigSmaller_T = {far_sigSmaller, 2'h0}; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 91:60] wire far_reduced4SigSmaller_reducedVec_0 = |_far_reduced4SigSmaller_T[3:0]; // @[generators/hardfloat/hardfloat/src/main/scala/primitives.scala 120:54] wire far_reduced4SigSmaller_reducedVec_1 = |_far_reduced4SigSmaller_T[7:4]; // @[generators/hardfloat/hardfloat/src/main/scala/primitives.scala 120:54] wire far_reduced4SigSmaller_reducedVec_2 = |_far_reduced4SigSmaller_T[11:8]; // @[generators/hardfloat/hardfloat/src/main/scala/primitives.scala 120:54] @@ -633,81 +633,81 @@ module AddRawFN( // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.sca wire [8:0] far_roundExtraMask_shift = 9'sh100 >>> alignDist[4:2]; // @[generators/hardfloat/hardfloat/src/main/scala/primitives.scala 76:56] wire [6:0] far_roundExtraMask = {far_roundExtraMask_shift[1],far_roundExtraMask_shift[2],far_roundExtraMask_shift[3], far_roundExtraMask_shift[4],far_roundExtraMask_shift[5],far_roundExtraMask_shift[6],far_roundExtraMask_shift[7]}; // @[generators/hardfloat/hardfloat/src/main/scala/primitives.scala 77:20] - wire [6:0] _far_alignedSigSmaller_T_3 = far_reduced4SigSmaller & far_roundExtraMask; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 95:76] - wire _far_alignedSigSmaller_T_5 = |far_mainAlignedSigSmaller[2:0] | |_far_alignedSigSmaller_T_3; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 95:49] - wire [26:0] far_alignedSigSmaller = {far_mainAlignedSigSmaller[28:3],_far_alignedSigSmaller_T_5}; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 94:12] - wire [26:0] _far_negAlignedSigSmaller_T = ~far_alignedSigSmaller; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 97:62] - wire [27:0] _far_negAlignedSigSmaller_T_1 = {1'h1,_far_negAlignedSigSmaller_T}; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 97:56] + wire [6:0] _far_alignedSigSmaller_T_3 = far_reduced4SigSmaller & far_roundExtraMask; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 95:76] + wire _far_alignedSigSmaller_T_5 = |far_mainAlignedSigSmaller[2:0] | |_far_alignedSigSmaller_T_3; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 95:49] + wire [26:0] far_alignedSigSmaller = {far_mainAlignedSigSmaller[28:3],_far_alignedSigSmaller_T_5}; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 94:12] + wire [26:0] _far_negAlignedSigSmaller_T = ~far_alignedSigSmaller; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 97:62] + wire [27:0] _far_negAlignedSigSmaller_T_1 = {1'h1,_far_negAlignedSigSmaller_T}; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 97:56] wire [27:0] far_negAlignedSigSmaller = _closeSubMags_T ? _far_negAlignedSigSmaller_T_1 : {{1'd0}, - far_alignedSigSmaller}; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 97:39] - wire [26:0] _far_sigSum_T = {far_sigLarger, 3'h0}; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 98:36] - wire [27:0] _GEN_3 = {{1'd0}, _far_sigSum_T}; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 98:41] - wire [27:0] _far_sigSum_T_2 = _GEN_3 + far_negAlignedSigSmaller; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 98:41] - wire [27:0] _GEN_4 = {{27'd0}, _closeSubMags_T}; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 98:68] - wire [27:0] far_sigSum = _far_sigSum_T_2 + _GEN_4; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 98:68] - wire [26:0] _GEN_5 = {{26'd0}, far_sigSum[0]}; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 99:67] - wire [26:0] _far_sigOut_T_2 = far_sigSum[27:1] | _GEN_5; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 99:67] - wire [27:0] _far_sigOut_T_3 = _closeSubMags_T ? far_sigSum : {{1'd0}, _far_sigOut_T_2}; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 99:25] - wire [26:0] far_sigOut = _far_sigOut_T_3[26:0]; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 99:83] - wire notSigNaN_invalidExc = io_a_isInf & io_b_isInf & _closeSubMags_T; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 102:57] - wire notNaN_isInfOut = io_a_isInf | io_b_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 103:38] - wire addZeros = io_a_isZero & io_b_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 104:32] - wire notNaN_specialCase = notNaN_isInfOut | addZeros; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 105:46] - wire _notNaN_signOut_T_1 = io_a_isInf & io_a_sign; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 109:39] - wire _notNaN_signOut_T_2 = eqSigns & io_a_sign | _notNaN_signOut_T_1; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 108:63] - wire _notNaN_signOut_T_3 = io_b_isInf & io_b_sign; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 110:39] - wire _notNaN_signOut_T_4 = _notNaN_signOut_T_2 | _notNaN_signOut_T_3; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 109:63] - wire _notNaN_signOut_T_9 = ~notNaN_specialCase; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 112:10] - wire _notNaN_signOut_T_12 = ~notNaN_specialCase & closeSubMags & ~close_totalCancellation; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 112:46] - wire _notNaN_signOut_T_13 = _notNaN_signOut_T_12 & close_notTotalCancellation_signOut; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 113:38] - wire _notNaN_signOut_T_14 = _notNaN_signOut_T_4 | _notNaN_signOut_T_13; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 111:63] - wire _notNaN_signOut_T_18 = _notNaN_signOut_T_9 & ~closeSubMags & far_signOut; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 114:47] - wire [9:0] _common_sExpOut_T_2 = closeSubMags | _modNatAlignDist_T ? $signed(io_b_sExp) : $signed(io_a_sExp); // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 116:13] - wire [4:0] _common_sExpOut_T_3 = closeSubMags ? close_nearNormDist : {{4'd0}, _closeSubMags_T}; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 117:18] - wire [5:0] _common_sExpOut_T_4 = {1'b0,$signed(_common_sExpOut_T_3)}; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 117:66] - wire [9:0] _GEN_6 = {{4{_common_sExpOut_T_4[5]}},_common_sExpOut_T_4}; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 117:13] + far_alignedSigSmaller}; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 97:39] + wire [26:0] _far_sigSum_T = {far_sigLarger, 3'h0}; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 98:36] + wire [27:0] _GEN_3 = {{1'd0}, _far_sigSum_T}; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 98:41] + wire [27:0] _far_sigSum_T_2 = _GEN_3 + far_negAlignedSigSmaller; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 98:41] + wire [27:0] _GEN_4 = {{27'd0}, _closeSubMags_T}; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 98:68] + wire [27:0] far_sigSum = _far_sigSum_T_2 + _GEN_4; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 98:68] + wire [26:0] _GEN_5 = {{26'd0}, far_sigSum[0]}; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 99:67] + wire [26:0] _far_sigOut_T_2 = far_sigSum[27:1] | _GEN_5; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 99:67] + wire [27:0] _far_sigOut_T_3 = _closeSubMags_T ? far_sigSum : {{1'd0}, _far_sigOut_T_2}; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 99:25] + wire [26:0] far_sigOut = _far_sigOut_T_3[26:0]; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 99:83] + wire notSigNaN_invalidExc = io_a_isInf & io_b_isInf & _closeSubMags_T; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 102:57] + wire notNaN_isInfOut = io_a_isInf | io_b_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 103:38] + wire addZeros = io_a_isZero & io_b_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 104:32] + wire notNaN_specialCase = notNaN_isInfOut | addZeros; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 105:46] + wire _notNaN_signOut_T_1 = io_a_isInf & io_a_sign; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 109:39] + wire _notNaN_signOut_T_2 = eqSigns & io_a_sign | _notNaN_signOut_T_1; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 108:63] + wire _notNaN_signOut_T_3 = io_b_isInf & io_b_sign; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 110:39] + wire _notNaN_signOut_T_4 = _notNaN_signOut_T_2 | _notNaN_signOut_T_3; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 109:63] + wire _notNaN_signOut_T_9 = ~notNaN_specialCase; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 112:10] + wire _notNaN_signOut_T_12 = ~notNaN_specialCase & closeSubMags & ~close_totalCancellation; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 112:46] + wire _notNaN_signOut_T_13 = _notNaN_signOut_T_12 & close_notTotalCancellation_signOut; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 113:38] + wire _notNaN_signOut_T_14 = _notNaN_signOut_T_4 | _notNaN_signOut_T_13; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 111:63] + wire _notNaN_signOut_T_18 = _notNaN_signOut_T_9 & ~closeSubMags & far_signOut; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 114:47] + wire [9:0] _common_sExpOut_T_2 = closeSubMags | _modNatAlignDist_T ? $signed(io_b_sExp) : $signed(io_a_sExp); // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 116:13] + wire [4:0] _common_sExpOut_T_3 = closeSubMags ? close_nearNormDist : {{4'd0}, _closeSubMags_T}; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 117:18] + wire [5:0] _common_sExpOut_T_4 = {1'b0,$signed(_common_sExpOut_T_3)}; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 117:66] + wire [9:0] _GEN_6 = {{4{_common_sExpOut_T_4[5]}},_common_sExpOut_T_4}; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 117:13] wire _io_invalidExc_T_2 = io_a_isNaN & ~io_a_sig[22]; // @[generators/hardfloat/hardfloat/src/main/scala/common.scala 82:46] wire _io_invalidExc_T_5 = io_b_isNaN & ~io_b_sig[22]; // @[generators/hardfloat/hardfloat/src/main/scala/common.scala 82:46] - assign io_invalidExc = _io_invalidExc_T_2 | _io_invalidExc_T_5 | notSigNaN_invalidExc; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 121:71] - assign io_rawOut_isNaN = io_a_isNaN | io_b_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 125:35] - assign io_rawOut_isInf = io_a_isInf | io_b_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 103:38] - assign io_rawOut_isZero = addZeros | ~notNaN_isInfOut & closeSubMags & close_totalCancellation; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 106:37] - assign io_rawOut_sign = _notNaN_signOut_T_14 | _notNaN_signOut_T_18; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 113:77] - assign io_rawOut_sExp = $signed(_common_sExpOut_T_2) - $signed(_GEN_6); // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 117:13] - assign io_rawOut_sig = closeSubMags ? close_sigOut : far_sigOut; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 118:28] + assign io_invalidExc = _io_invalidExc_T_2 | _io_invalidExc_T_5 | notSigNaN_invalidExc; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 121:71] + assign io_rawOut_isNaN = io_a_isNaN | io_b_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 125:35] + assign io_rawOut_isInf = io_a_isInf | io_b_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 103:38] + assign io_rawOut_isZero = addZeros | ~notNaN_isInfOut & closeSubMags & close_totalCancellation; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 106:37] + assign io_rawOut_sign = _notNaN_signOut_T_14 | _notNaN_signOut_T_18; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 113:77] + assign io_rawOut_sExp = $signed(_common_sExpOut_T_2) - $signed(_GEN_6); // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 117:13] + assign io_rawOut_sig = closeSubMags ? close_sigOut : far_sigOut; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 118:28] endmodule -module AddRecFN( // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 133:7] - input [32:0] io_a, // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 135:16] - input [32:0] io_b, // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 135:16] - output [32:0] io_out // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 135:16] +module TensorDPUAddRecFN( // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 133:7] + input [32:0] io_a, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 135:16] + input [32:0] io_b, // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 135:16] + output [32:0] io_out // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 135:16] ); - wire addRawFN__io_a_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 147:26] - wire addRawFN__io_a_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 147:26] - wire addRawFN__io_a_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 147:26] - wire addRawFN__io_a_sign; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 147:26] - wire [9:0] addRawFN__io_a_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 147:26] - wire [24:0] addRawFN__io_a_sig; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 147:26] - wire addRawFN__io_b_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 147:26] - wire addRawFN__io_b_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 147:26] - wire addRawFN__io_b_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 147:26] - wire addRawFN__io_b_sign; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 147:26] - wire [9:0] addRawFN__io_b_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 147:26] - wire [24:0] addRawFN__io_b_sig; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 147:26] - wire addRawFN__io_invalidExc; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 147:26] - wire addRawFN__io_rawOut_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 147:26] - wire addRawFN__io_rawOut_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 147:26] - wire addRawFN__io_rawOut_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 147:26] - wire addRawFN__io_rawOut_sign; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 147:26] - wire [9:0] addRawFN__io_rawOut_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 147:26] - wire [26:0] addRawFN__io_rawOut_sig; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 147:26] - wire roundRawFNToRecFN_io_invalidExc; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 157:15] - wire roundRawFNToRecFN_io_in_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 157:15] - wire roundRawFNToRecFN_io_in_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 157:15] - wire roundRawFNToRecFN_io_in_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 157:15] - wire roundRawFNToRecFN_io_in_sign; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 157:15] - wire [9:0] roundRawFNToRecFN_io_in_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 157:15] - wire [26:0] roundRawFNToRecFN_io_in_sig; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 157:15] - wire [32:0] roundRawFNToRecFN_io_out; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 157:15] + wire addRawFN__io_a_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 147:26] + wire addRawFN__io_a_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 147:26] + wire addRawFN__io_a_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 147:26] + wire addRawFN__io_a_sign; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 147:26] + wire [9:0] addRawFN__io_a_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 147:26] + wire [24:0] addRawFN__io_a_sig; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 147:26] + wire addRawFN__io_b_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 147:26] + wire addRawFN__io_b_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 147:26] + wire addRawFN__io_b_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 147:26] + wire addRawFN__io_b_sign; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 147:26] + wire [9:0] addRawFN__io_b_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 147:26] + wire [24:0] addRawFN__io_b_sig; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 147:26] + wire addRawFN__io_invalidExc; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 147:26] + wire addRawFN__io_rawOut_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 147:26] + wire addRawFN__io_rawOut_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 147:26] + wire addRawFN__io_rawOut_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 147:26] + wire addRawFN__io_rawOut_sign; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 147:26] + wire [9:0] addRawFN__io_rawOut_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 147:26] + wire [26:0] addRawFN__io_rawOut_sig; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 147:26] + wire roundRawFNToRecFN_io_invalidExc; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 157:15] + wire roundRawFNToRecFN_io_in_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 157:15] + wire roundRawFNToRecFN_io_in_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 157:15] + wire roundRawFNToRecFN_io_in_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 157:15] + wire roundRawFNToRecFN_io_in_sign; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 157:15] + wire [9:0] roundRawFNToRecFN_io_in_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 157:15] + wire [26:0] roundRawFNToRecFN_io_in_sig; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 157:15] + wire [32:0] roundRawFNToRecFN_io_out; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 157:15] wire [8:0] addRawFN_io_a_exp = io_a[31:23]; // @[generators/hardfloat/hardfloat/src/main/scala/rawFloatFromRecFN.scala 51:21] wire addRawFN_io_a_isZero = addRawFN_io_a_exp[8:6] == 3'h0; // @[generators/hardfloat/hardfloat/src/main/scala/rawFloatFromRecFN.scala 52:53] wire addRawFN_io_a_isSpecial = addRawFN_io_a_exp[8:7] == 2'h3; // @[generators/hardfloat/hardfloat/src/main/scala/rawFloatFromRecFN.scala 53:53] @@ -718,7 +718,7 @@ module AddRecFN( // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.sca wire addRawFN_io_b_isSpecial = addRawFN_io_b_exp[8:7] == 2'h3; // @[generators/hardfloat/hardfloat/src/main/scala/rawFloatFromRecFN.scala 53:53] wire _addRawFN_io_b_out_sig_T = ~addRawFN_io_b_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/rawFloatFromRecFN.scala 61:35] wire [1:0] _addRawFN_io_b_out_sig_T_1 = {1'h0,_addRawFN_io_b_out_sig_T}; // @[generators/hardfloat/hardfloat/src/main/scala/rawFloatFromRecFN.scala 61:32] - AddRawFN addRawFN_ ( // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 147:26] + TensorDPUAddRawFN addRawFN_ ( // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 147:26] .io_a_isNaN(addRawFN__io_a_isNaN), .io_a_isInf(addRawFN__io_a_isInf), .io_a_isZero(addRawFN__io_a_isZero), @@ -739,7 +739,7 @@ module AddRecFN( // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.sca .io_rawOut_sExp(addRawFN__io_rawOut_sExp), .io_rawOut_sig(addRawFN__io_rawOut_sig) ); - RoundRawFNToRecFN_e8_s24 roundRawFNToRecFN ( // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 157:15] + TensorDPURoundRawFNToRecFN_e8_s24 roundRawFNToRecFN ( // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 157:15] .io_invalidExc(roundRawFNToRecFN_io_invalidExc), .io_in_isNaN(roundRawFNToRecFN_io_in_isNaN), .io_in_isInf(roundRawFNToRecFN_io_in_isInf), @@ -749,7 +749,7 @@ module AddRecFN( // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.sca .io_in_sig(roundRawFNToRecFN_io_in_sig), .io_out(roundRawFNToRecFN_io_out) ); - assign io_out = roundRawFNToRecFN_io_out; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 163:23] + assign io_out = roundRawFNToRecFN_io_out; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 163:23] assign addRawFN__io_a_isNaN = addRawFN_io_a_isSpecial & addRawFN_io_a_exp[6]; // @[generators/hardfloat/hardfloat/src/main/scala/rawFloatFromRecFN.scala 56:33] assign addRawFN__io_a_isInf = addRawFN_io_a_isSpecial & ~addRawFN_io_a_exp[6]; // @[generators/hardfloat/hardfloat/src/main/scala/rawFloatFromRecFN.scala 57:33] assign addRawFN__io_a_isZero = addRawFN_io_a_exp[8:6] == 3'h0; // @[generators/hardfloat/hardfloat/src/main/scala/rawFloatFromRecFN.scala 52:53] @@ -762,15 +762,15 @@ module AddRecFN( // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.sca assign addRawFN__io_b_sign = io_b[32]; // @[generators/hardfloat/hardfloat/src/main/scala/rawFloatFromRecFN.scala 59:25] assign addRawFN__io_b_sExp = {1'b0,$signed(addRawFN_io_b_exp)}; // @[generators/hardfloat/hardfloat/src/main/scala/rawFloatFromRecFN.scala 60:27] assign addRawFN__io_b_sig = {_addRawFN_io_b_out_sig_T_1,io_b[22:0]}; // @[generators/hardfloat/hardfloat/src/main/scala/rawFloatFromRecFN.scala 61:44] - assign roundRawFNToRecFN_io_invalidExc = addRawFN__io_invalidExc; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 158:39] - assign roundRawFNToRecFN_io_in_isNaN = addRawFN__io_rawOut_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 160:39] - assign roundRawFNToRecFN_io_in_isInf = addRawFN__io_rawOut_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 160:39] - assign roundRawFNToRecFN_io_in_isZero = addRawFN__io_rawOut_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 160:39] - assign roundRawFNToRecFN_io_in_sign = addRawFN__io_rawOut_sign; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 160:39] - assign roundRawFNToRecFN_io_in_sExp = addRawFN__io_rawOut_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 160:39] - assign roundRawFNToRecFN_io_in_sig = addRawFN__io_rawOut_sig; // @[generators/hardfloat/hardfloat/src/main/scala/AddRecFN.scala 160:39] + assign roundRawFNToRecFN_io_invalidExc = addRawFN__io_invalidExc; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 158:39] + assign roundRawFNToRecFN_io_in_isNaN = addRawFN__io_rawOut_isNaN; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 160:39] + assign roundRawFNToRecFN_io_in_isInf = addRawFN__io_rawOut_isInf; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 160:39] + assign roundRawFNToRecFN_io_in_isZero = addRawFN__io_rawOut_isZero; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 160:39] + assign roundRawFNToRecFN_io_in_sign = addRawFN__io_rawOut_sign; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 160:39] + assign roundRawFNToRecFN_io_in_sExp = addRawFN__io_rawOut_sExp; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 160:39] + assign roundRawFNToRecFN_io_in_sig = addRawFN__io_rawOut_sig; // @[generators/hardfloat/hardfloat/src/main/scala/TensorDPUAddRecFN.scala 160:39] endmodule -module StallingPipe_2( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 48:7] +module TensorDPUStallingPipe_2( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 48:7] input clock, // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 48:7] input reset, // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 48:7] input io_stall, // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 63:14] @@ -856,7 +856,7 @@ end // initial `endif `endif // SYNTHESIS endmodule -module DotProductPipe( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 106:7] +module TensorDPUDotProductPipe( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 106:7] input clock, // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 106:7] input reset, // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 106:7] input io_in_valid, // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 110:14] @@ -954,27 +954,27 @@ module DotProductPipe( // @[generators/radiance/src/main/scala/radiance/core/Ten wire [32:0] accStageOut_p_io_enq_bits; // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 88:19] wire accStageOut_p_io_deq_valid; // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 88:19] wire [32:0] accStageOut_p_io_deq_bits; // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 88:19] - MulRecFN mul_0 ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 124:33] + TensorDPUMulRecFN mul_0 ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 124:33] .io_a(mul_0_io_a), .io_b(mul_0_io_b), .io_out(mul_0_io_out) ); - MulRecFN mul_1 ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 124:33] + TensorDPUMulRecFN mul_1 ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 124:33] .io_a(mul_1_io_a), .io_b(mul_1_io_b), .io_out(mul_1_io_out) ); - MulRecFN mul_2 ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 124:33] + TensorDPUMulRecFN mul_2 ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 124:33] .io_a(mul_2_io_a), .io_b(mul_2_io_b), .io_out(mul_2_io_out) ); - MulRecFN mul_3 ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 124:33] + TensorDPUMulRecFN mul_3 ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 124:33] .io_a(mul_3_io_a), .io_b(mul_3_io_b), .io_out(mul_3_io_out) ); - StallingPipe mulStageOut_p ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 88:19] + TensorDPUStallingPipe mulStageOut_p ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 88:19] .clock(mulStageOut_p_clock), .reset(mulStageOut_p_reset), .io_stall(mulStageOut_p_io_stall), @@ -989,7 +989,7 @@ module DotProductPipe( // @[generators/radiance/src/main/scala/radiance/core/Ten .io_deq_bits_2(mulStageOut_p_io_deq_bits_2), .io_deq_bits_3(mulStageOut_p_io_deq_bits_3) ); - StallingPipe_1 mulStageC_p ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 88:19] + TensorDPUStallingPipe_1 mulStageC_p ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 88:19] .clock(mulStageC_p_clock), .reset(mulStageC_p_reset), .io_stall(mulStageC_p_io_stall), @@ -998,17 +998,17 @@ module DotProductPipe( // @[generators/radiance/src/main/scala/radiance/core/Ten .io_deq_valid(mulStageC_p_io_deq_valid), .io_deq_bits(mulStageC_p_io_deq_bits) ); - AddRecFN add1_0 ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 138:38] + TensorDPUAddRecFN add1_0 ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 138:38] .io_a(add1_0_io_a), .io_b(add1_0_io_b), .io_out(add1_0_io_out) ); - AddRecFN add1_1 ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 138:38] + TensorDPUAddRecFN add1_1 ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 138:38] .io_a(add1_1_io_a), .io_b(add1_1_io_b), .io_out(add1_1_io_out) ); - StallingPipe_2 add1StageOut_p ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 88:19] + TensorDPUStallingPipe_2 add1StageOut_p ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 88:19] .clock(add1StageOut_p_clock), .reset(add1StageOut_p_reset), .io_stall(add1StageOut_p_io_stall), @@ -1019,7 +1019,7 @@ module DotProductPipe( // @[generators/radiance/src/main/scala/radiance/core/Ten .io_deq_bits_0(add1StageOut_p_io_deq_bits_0), .io_deq_bits_1(add1StageOut_p_io_deq_bits_1) ); - StallingPipe_1 add1StageC_p ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 88:19] + TensorDPUStallingPipe_1 add1StageC_p ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 88:19] .clock(add1StageC_p_clock), .reset(add1StageC_p_reset), .io_stall(add1StageC_p_io_stall), @@ -1028,12 +1028,12 @@ module DotProductPipe( // @[generators/radiance/src/main/scala/radiance/core/Ten .io_deq_valid(add1StageC_p_io_deq_valid), .io_deq_bits(add1StageC_p_io_deq_bits) ); - AddRecFN add2 ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 152:20] + TensorDPUAddRecFN add2 ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 152:20] .io_a(add2_io_a), .io_b(add2_io_b), .io_out(add2_io_out) ); - StallingPipe_1 add2StageOut_p ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 88:19] + TensorDPUStallingPipe_1 add2StageOut_p ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 88:19] .clock(add2StageOut_p_clock), .reset(add2StageOut_p_reset), .io_stall(add2StageOut_p_io_stall), @@ -1042,7 +1042,7 @@ module DotProductPipe( // @[generators/radiance/src/main/scala/radiance/core/Ten .io_deq_valid(add2StageOut_p_io_deq_valid), .io_deq_bits(add2StageOut_p_io_deq_bits) ); - StallingPipe_1 add2StageC_p ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 88:19] + TensorDPUStallingPipe_1 add2StageC_p ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 88:19] .clock(add2StageC_p_clock), .reset(add2StageC_p_reset), .io_stall(add2StageC_p_io_stall), @@ -1051,12 +1051,12 @@ module DotProductPipe( // @[generators/radiance/src/main/scala/radiance/core/Ten .io_deq_valid(add2StageC_p_io_deq_valid), .io_deq_bits(add2StageC_p_io_deq_bits) ); - AddRecFN acc ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 165:19] + TensorDPUAddRecFN acc ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 165:19] .io_a(acc_io_a), .io_b(acc_io_b), .io_out(acc_io_out) ); - StallingPipe_1 accStageOut_p ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 88:19] + TensorDPUStallingPipe_1 accStageOut_p ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 88:19] .clock(accStageOut_p_clock), .reset(accStageOut_p_reset), .io_stall(accStageOut_p_io_stall), @@ -1625,7 +1625,7 @@ module TensorDotProductUnit( // @[generators/radiance/src/main/scala/radiance/co wire [22:0] io_out_bits_data_fractOut = io_out_bits_data_isSubnormal ? io_out_bits_data_denormFract : _io_out_bits_data_fractOut_T_1; // @[generators/hardfloat/hardfloat/src/main/scala/fNFromRecFN.scala 62:16] wire [8:0] io_out_bits_data_hi = {io_out_bits_data_rawIn__sign,io_out_bits_data_expOut}; // @[generators/hardfloat/hardfloat/src/main/scala/fNFromRecFN.scala 66:12] - DotProductPipe dpu ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 36:19] + TensorDPUDotProductPipe dpu ( // @[generators/radiance/src/main/scala/radiance/core/TensorDPU.scala 36:19] .clock(dpu_clock), .reset(dpu_reset), .io_in_valid(dpu_io_in_valid),