diff --git a/Makefile b/Makefile index a0cdc80..f40b112 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -all: postZfa postZfhmin preZfhmin postZvfhmin insideZvfhmin insideZfhmin wideningModule +all: postZfa postZfhmin preZfhmin postZvfhmin insideZvfhmin insideZfhmin wideningModule preOptimization postOptimization postZfa: inkscape $@.svg --export-type=pdf --export-filename=$@.pdf @@ -21,5 +21,11 @@ insideZfhmin: wideningModule: inkscape $@.svg --export-type=pdf --export-filename=$@.pdf +preOptimization: + inkscape $@.svg --export-type=pdf --export-filename=$@.pdf + +postOptimization: + inkscape $@.svg --export-type=pdf --export-filename=$@.pdf + clean: rm -rf *.pdf diff --git a/insideFcvtmod.svg b/insideFcvtmod.svg new file mode 100644 index 0000000..5158813 --- /dev/null +++ b/insideFcvtmod.svg @@ -0,0 +1,3799 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + V + A + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Vdd + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + PVmodule + + + + + + + + + + + + + + + + + C + 3 + + + L + 2 + + + + + + + M + rS + + + + + + + I + s + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + R + 1 + + + + + + + B + 1 + + + A + 0 + + S0 + Z + + S1 + + C + 2 + + D + 3 + + + + + + + B + 1 + + + + A + 0 + + + S1 + + + Z + + + S2 + + + C + 2 + + + + D + 3 + + + + E + 4 + + + + F + 5 + + + + G + 6 + + + + H + 7 + + + S0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A + B + 1 + 0 + S0 + Z + + + S0 + + + + + + A + B + 1 + 0 + + sign == 0 + + + + + 1 + 0 + + + + + + + A + B + 1 + 0 + S0 + Z + + + + + + + FP32TOFP16 + + + + + SIGNEXTEND + + + + + + + + NEG + + diff --git a/insideZfhmin.svg b/insideZfhmin.svg index 3e9966f..100cc00 100644 --- a/insideZfhmin.svg +++ b/insideZfhmin.svg @@ -2,13 +2,13 @@ + originx="-377.0747" + originy="-948.67122" /> @@ -3417,23 +3417,23 @@ is_f32f16 + x="-586.97736" + y="-529.45349" + style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:5.69684px;line-height:125%;font-family:'Courier New';text-align:center;writing-mode:lr-tb;text-anchor:middle;stroke-width:0.356052">is_fp32 + transform="translate(-62.207134,-101.0207)"> result_ostatus_o 1 0 is_f32f16 + x="-645.31519" + y="-470.78137" + style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:5.69684px;line-height:125%;font-family:'Courier New';text-align:center;writing-mode:lr-tb;text-anchor:middle;stroke-width:0.356052">is_widening result_o + transform="translate(-49.018066,-104.4275)"> is_f32f16 + x="-641.90839" + y="-583.21393" + style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:5.69684px;line-height:125%;font-family:'Courier New';text-align:center;writing-mode:lr-tb;text-anchor:middle;stroke-width:0.356052">is_widening result_o TOFP16 - - - - - - FP16TOFP32 - - - - - - FP32TOFP16 - - - - - - FP16TOFP64 - - - - - - FP64TOFP16 - - + + + FP16FP32 + + + + FP32FP16 + + + + FP16FP64 + + + + FP64FP16 + operand_i diff --git a/insideZvfhmin.svg b/insideZvfhmin.svg index c7abf19..02d8371 100644 --- a/insideZvfhmin.svg +++ b/insideZvfhmin.svg @@ -3,12 +3,12 @@ - - V - A - - - - - - + V + A + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + id="g5265" + transform="matrix(1.1774769,0,0,1.1774769,1392.1926,-690.28435)" + style="stroke-width:0.849274;stroke-dasharray:none"> + id="path13824-2" + d="m -84.210381,-24.020385 h -5.41128" + style="fill:none;stroke:#000000;stroke-width:0.849274;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + id="path13826-1" + d="m -86.916031,-21.298115 v -5.44453" + style="fill:none;stroke:#000000;stroke-width:0.849274;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> + + + + + + + + + + + + + + + + + + + + + Vdd + + + + + + + + + + + + + + + + + + + + + - - - Vdd - - - - - - - - + style="display:inline;stroke-width:0.849274;stroke-dasharray:none" + id="g6427-2" + transform="matrix(1.1774769,0,0,1.1774769,402.97084,-581.15989)"> - - - - - - + id="path7119-0-2-7-6" + d="M 190.85038,-152.98725 V -174.2471" + style="fill:none;stroke:#000000;stroke-width:0.849274;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> + id="path8000-5-2-5-3" + d="M 183.76377,-184.87702 H 197.937" + style="fill:none;stroke:#000000;stroke-width:0.849274;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> + style="fill:none;stroke:#000000;stroke-width:0.849274;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + d="m 190.85038,-184.87702 v -21.25984" + id="path8002-0-0-1-7" + sodipodi:nodetypes="cc" /> - + id="path5293-4-2-7-9" + d="M 183.76377,-173.98812 H 197.937 l -7.08662,-10.8889 z" + style="fill:none;stroke:#000000;stroke-width:0.849274;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + style="display:inline;stroke-width:0.849274;stroke-dasharray:none" + id="g6427-0" + transform="matrix(1.1774769,0,0,1.1774769,516.69471,-581.15989)"> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + id="path7119-0-2-7-0" + d="M 190.85038,-152.98725 V -174.2471" + style="fill:none;stroke:#000000;stroke-width:0.849274;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> + id="path8000-5-2-5-6" + d="M 183.76377,-184.87702 H 197.937" + style="fill:none;stroke:#000000;stroke-width:0.849274;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> + style="fill:none;stroke:#000000;stroke-width:0.849274;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + d="m 190.85038,-184.87702 v -21.25984" + id="path8002-0-0-1-5" + sodipodi:nodetypes="cc" /> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - PVmodule - - - - - - - - - - - - - + id="path5293-4-2-7-6" + d="M 183.76377,-173.98812 H 197.937 l -7.08662,-10.8889 z" + style="fill:none;stroke:#000000;stroke-width:0.849274;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> + + + + + + + + + + + PVmodule + + + + + + + + + + C + 3 + L + 2 + + + + style="display:inline;stroke-width:0.849274;stroke-dasharray:none" + id="g7599-7" + transform="matrix(1.1774769,0,0,1.1774769,-622.67591,-1010.3844)"> C - 3 - - - L - 2 - - - - - - - M - M + rS - + id="tspan7980-1" + sodipodi:role="line" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8px;line-height:1;font-family:'Times New Roman';-inkscape-font-specification:'Times New Roman,';stroke-width:0.849274;stroke-dasharray:none">rS + + - - - - + I - I + s - - - - - - - - - - - - - - - - - - - - - + id="tspan7980-71" + sodipodi:role="line" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8px;line-height:1;font-family:'Times New Roman';-inkscape-font-specification:'Times New Roman,';stroke-width:0.849274;stroke-dasharray:none">s + + + + + + + + + + + + + + transform="matrix(1.1774769,0,0,1.1774769,387.08878,-581.01207)" + style="display:inline;stroke-width:0.849274;stroke-dasharray:none" + id="g4789-1"> + - - - - - + id="path5225-4" + d="m -71.354343,-193.73628 c 0,-12.52712 0,-12.52712 0,-12.52712" + style="fill:none;stroke:#000000;stroke-width:0.849274;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> + + + + + + style="display:inline;stroke-width:0.849274;stroke-dasharray:none" + id="g5083-5" + transform="matrix(1.1774769,0,0,1.1774769,366.22792,-581.15989)"> + style="fill:none;stroke:#000000;stroke-width:0.849274;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> + style="fill:none;stroke:#000000;stroke-width:0.849274;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1" /> + style="fill:none;stroke:#000000;stroke-width:0.849274;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1" /> + + + + + + + style="display:inline;stroke-width:0.849274;stroke-dasharray:none" + id="g5260-9" + transform="matrix(1.1774769,0,0,1.1774769,370.40009,-580.10079)"> - - - - - - - - - - - - - + sodipodi:nodetypes="ccssssssssssssssssssssssssssssscc" /> + style="fill:none;stroke:#000000;stroke-width:0.849274;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1" /> + style="fill:none;stroke:#000000;stroke-width:0.849274;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> - - - - - - - - - - + style="display:inline;stroke-width:0.849274;stroke-dasharray:none" + id="g5260-9-0" + transform="matrix(-1.1774769,0,0,1.1774769,636.26878,-580.10079)"> + id="path3254-2-4-0" + style="fill:none;stroke:#000000;stroke-width:0.849274;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + d="m 105.81101,-160.07487 v -2.67107 c 2.07646,0 3.37793,-1.92096 3.37793,-3.77734 0,-1.85637 -1.68529,-3.36295 -3.76175,-3.36295 -1.17691,0 -3.04376,0.62757 -3.0368,1.42126 0.009,0.7937 1.79571,1.36791 3.0368,1.36791 2.07646,0 3.76175,-1.50663 3.76175,-3.363 0,-1.85636 -1.68529,-3.36297 -3.76175,-3.36297 -1.23914,0 -2.99166,0.5046 -2.99147,1.37752 9e-5,0.87291 1.76763,1.41166 2.99147,1.41166 2.07646,0 3.76175,-1.50663 3.76175,-3.363 0,-1.85635 -1.68529,-3.36298 -3.76175,-3.36298 -1.23626,0 -3.05137,0.51182 -3.05981,1.36299 -0.009,0.85115 1.79516,1.4262 3.05981,1.4262 2.07646,0 3.76175,-1.50661 3.76175,-3.36299 0,-1.85635 -1.68529,-3.36298 -3.76175,-3.36298 -1.28263,0 -3.01817,0.61164 -3.01093,1.45197 0.009,0.8403 1.78199,1.33723 3.01093,1.33723 2.07646,0 3.76175,-1.50662 3.76175,-3.36297 0,-1.85639 -1.68529,-3.363 -3.76175,-3.363 -1.2166,0 -3.00288,0.60582 -2.95864,1.42272 0.0445,0.81693 1.71199,1.36646 2.95864,1.36646 2.07646,0 3.76175,-1.50661 3.76175,-3.36296 0,-1.8564 -1.68529,-3.36301 -3.76175,-3.36301 -1.24359,0 -3.03292,0.55344 -3.03014,1.39651 0,0.84306 1.80964,1.39267 3.03014,1.39267 2.07646,0 3.76175,-1.50659 3.76175,-3.36296 0,-1.85637 -1.68529,-3.363 -3.76175,-3.363 -1.23533,0 -3.01779,0.53013 -3.02262,1.38915 0,0.859 1.7818,1.40003 3.02262,1.40003 2.07646,0 3.76175,-1.50662 3.76175,-3.36296 0,-1.85637 -1.36202,-3.41844 -3.37793,-3.36398 v -2.69589" + sodipodi:nodetypes="ccssssssssssssssssssssssssssssscc" /> + transform="translate(-0.488198,-142.35831)" + id="path5256-5-8" + d="M 106.29921,-56.692935 V -63.77955" + style="fill:none;stroke:#000000;stroke-width:0.849274;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + transform="matrix(1.1774769,0,0,1.1774769,451.01561,-581.15989)" + style="display:inline;stroke-width:0.849274;stroke-dasharray:none" + id="g5940-3"> + + id="path7213-1-4-32" + sodipodi:nodetypes="cc" /> + style="fill:none;stroke:#000000;stroke-width:0.849274;stroke-linecap:round;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker11340-8-9)" /> + id="path7217-0-4-3-1-7-0-5" + sodipodi:nodetypes="cc" /> + id="path7217-0-4-3-1-7-0-6-2" + sodipodi:nodetypes="cc" /> + id="path7217-0-4-3-1-7-0-8-9" + sodipodi:nodetypes="cc" /> + style="fill:none;stroke:#000000;stroke-width:0.849274;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1" /> + style="fill:none;stroke:#000000;stroke-width:0.849274;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1" /> + style="fill:none;stroke:#000000;stroke-width:0.849274;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1" /> + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - + transform="matrix(1.1774769,0,0,1.1774769,-82.34945,-896.93244)" + id="g6362" + style="display:inline;stroke-width:0.849274;stroke-dasharray:none"> + style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:none;stroke:#000000;stroke-width:1.69855;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none" + id="path4729" + transform="matrix(0.49999834,0,0,0.49999834,828.6458,98.586776)" + cx="81.496063" + cy="134.64568" + r="3.5433071" /> + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + transform="matrix(1.1774769,0,0,1.1774769,-69.83299,-890.67414)" + id="g6418" + style="display:inline;stroke-width:0.849274;stroke-dasharray:none"> + style="display:inline;stroke-width:0.849274;stroke-dasharray:none" + id="g9025-9" + transform="translate(60.20054,-51.531465)"> + sodipodi:nodetypes="cccc" + id="path4741-0" + d="m 828.68135,215.66919 h 3.50762 l 3.50761,-7.23912 h 2.00762" + style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:none;stroke:#000000;stroke-width:0.849274;stroke-linecap:square;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none" /> - - - - - - - + id="path4743-3" + d="m 835.69658,208.43007 h -3.50761 l -3.50762,7.23912 h -2.50762" + style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:none;stroke:#000000;stroke-width:0.849274;stroke-linecap:square;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none" + sodipodi:nodetypes="cccc" /> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + transform="translate(42.51969,-5.314965)" + style="display:inline;stroke-width:0.849274;stroke-dasharray:none" + id="g6362-1"> + style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:none;stroke:#000000;stroke-width:0.849274;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none" /> + style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:none;stroke:#000000;stroke-width:0.849274;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none" /> + style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:none;stroke:#000000;stroke-width:0.849274;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none" /> + transform="matrix(1.1774769,0,0,1.1774769,-61.48868,-907.36284)" + id="g6518" + style="display:inline;stroke-width:0.849274;stroke-dasharray:none"> - - - - - - - - - - + id="g6510" + transform="translate(-19.488179,31.889771)" + style="stroke-width:0.849274;stroke-dasharray:none"> + + - - - - - - - - - - - - - + style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:none;stroke:#000000;stroke-width:0.849274;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none" + d="m 823.3307,206.65843 v 24.80214 l 12.55014,6.2e-4 c 18.82529,9e-4 18.82529,-24.80121 0,-24.80214 z" + id="path4699-1-4" + sodipodi:nodetypes="ccssc" /> - - - - - - - - - + + + + + + + + + + - - - - + id="g6510-3" + transform="matrix(1.1774769,0,0,1.1774769,-84.435488,-828.09175)" + style="stroke-width:0.849274;stroke-dasharray:none"> + - - + sodipodi:nodetypes="cc" + id="path4727-5-9-4-0" + d="m 872.93699,187.16922 h 5.31496" + style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:none;stroke:#000000;stroke-width:0.849274;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none" /> - - R - 1 - - - - - - - + + + R + 1 + + + + + B - B + 1 - - - 1 + + + A - A + 0 + + S0 + Z + + S1 + + C + 2 + + D + 3 + + + + + B + 1 + + + + A + 0 + style="font-size:24px;line-height:1.25;stroke-width:2.78942;stroke-dasharray:none">0 - S0 - Z + d="m 709.01334,-490.38612 h 11.03188" + id="path2784-6" /> S1 - - C - 2 - - D - 3 - - - - - - - B - 1 - - - - A - 0 - - - S1 - - - + + Z - - - Z + + + S2 - - - + + C - C + 2 - - - - D - 3 - - - - E - 4 - - - - F - 5 - - - - G - 6 - - - - H - 7 - + id="tspan2850-2" + sodipodi:role="line" + style="font-size:24px;line-height:1.25;stroke-width:2.78942;stroke-dasharray:none">2 + + + id="path2854-8" + d="m 156.36328,56.328125 v -30" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.78942;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> D + 3 + + + + E + 4 + + + + F + 5 + + + + G + 6 + + + + H + 7 + + + S0 - - - - - - - - - + transform="matrix(1.1774769,0,0,1.1774769,54.15309,-895.06447)" + id="g6432-0" + style="display:inline;stroke-width:0.849274;stroke-dasharray:none"> + + + + + + + - - - - - - - - - - - - - - - - - - - - A - B - 1 - 0 - + + + + + + + + + + A + B + 1 + 0 + S0 - Z - + Z + id="g14-8" + style="stroke-width:1;stroke-dasharray:none" + transform="rotate(180,648.68101,-528.76361)"> + + + - - - - - - 1 - 0 - + d="m 763.11555,-492.17454 v 9.38224" + id="path2780-2-6-6-6-9" /> + is_f32f16 + id="tspan2804-3-7-0-7-8" + x="497.43585" + y="791.50446" + style="font-size:8.54526px;line-height:1.25;stroke-width:1;stroke-dasharray:none">1 + 0 + is_f32f16 result_o status_o - - - - - - - + + + + + A - A + B - B + 1 - 1 + 0 - 0 + S0 - Z - + style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:5.69684px;line-height:125%;font-family:'Courier New';text-align:center;writing-mode:lr-tb;text-anchor:middle;stroke-width:1;stroke-dasharray:none">Z - - - - - - + + + + 31:0 + y="-684.63873">31:0 FP32FP32TOFP16 FP32FP32TOFP16 + FP32FP16 + FP32FP16 FP32TOFP16 - FP32TOFP16 - FP16TOFP32 FP16TOFP32 + style="font-size:8.46667px;stroke-width:1;stroke-dasharray:none" + x="598.08472" + y="-650.11194" + id="tspan12-6">FP32 FP16FP16TOFP32 + style="font-size:8.46667px;stroke-width:1;stroke-dasharray:none" + x="635.37518" + y="-650.11194" + id="tspan12-61">FP32 FP16FP16TOFP32 + style="font-size:8.46667px;stroke-width:1;stroke-dasharray:none" + x="672.66565" + y="-650.11194" + id="tspan12-2">FP32 63:32 + y="-684.64117">63:32 95:64 + y="-684.64117">95:64 127:96 operand_i 15:0 + y="-684.63873">15:0 31:16 + y="-684.64117">31:16 47:32 + y="-684.64117">47:32 63:48 - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + status result diff --git a/postOptimization.svg b/postOptimization.svg index ef2ce46..cb9d593 100644 --- a/postOptimization.svg +++ b/postOptimization.svg @@ -2,13 +2,13 @@ + + + + + + @@ -678,10 +706,10 @@ inkscape:transform-center-y="-4.4586184e-06" /> + + 3 - - + style="display:inline;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.068;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + d="M 445.71066,-687.80352 H 418.12018" + id="path2840-9-8-0" /> - 1 - - - - 0 - - S0 - - S1 + d="M 481.29146,-687.80328 H 460.05331" + id="path2840-9-8-0-11" /> - 2 + d="M 407.71222,-629.41868 H 387.86817" + id="path2840-9-8-0-0" /> - 3 + d="M 498.1289,-595.73884 H 435.06151" + id="path2840-9-8-0-1" /> + + + + - + + + + + - + + + + - - - - - - - - PendingFP OPSQueue - ZFAPostProcess - CVFPU ZFHMIN - ZFACONV Z - - - - - + + + + + + 1 + 0 + + + + + + + 1 + 0 + Z - - - - instruction_i - instruction_o + inkscape:connector-curvature="0" /> - + + + + + + + + + + diff --git a/postZfa.svg b/postZfa.svg index 47d4f5b..5f8e319 100644 --- a/postZfa.svg +++ b/postZfa.svg @@ -2,13 +2,13 @@ + ry="17.716532" /> 3 - - - 1 - - - - 0 - S0 - - S1 - - 2 - - 3 - - - - - - - - - - - + + + + + PendingPendingFP OPSQueue ZFAPostPostProcess + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:7.40833px;font-family:sans-serif;-inkscape-font-specification:sans-serif;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0;stroke-dasharray:none;stroke-opacity:1" + x="488.89001" + y="-702.11639" + id="tspan9">Process CVFPU - ZFHMIN ZFACONV Z instruction_i + style="font-size:6.35px;stroke-width:0;stroke-dasharray:none" + x="390.53751" + y="-712.47125">instruction_i instruction_o + style="font-size:6.35px;stroke-width:0;stroke-dasharray:none" + x="506.81018" + y="-712.44226">instruction_o - + - - - + + + + + + + 1 + 0 + diff --git a/postZfhmin.svg b/postZfhmin.svg index 1ee998b..6127f42 100644 --- a/postZfhmin.svg +++ b/postZfhmin.svg @@ -2,13 +2,13 @@ + 3 + + + + + 1 + + + + 0 + + S0 + + S1 + + + 2 + + 3 + + + transform="matrix(1.1774769,0,0,1.1774769,-146.65995,-846.10916)"> + + PendingPendingFP OPSQueue PostProcess + CVFPU ZFHMIN + + ZFACONV Z - - - - - 1 - 0 - S0 Z + style="display:inline;stroke-width:0.907024;stroke-dasharray:none"> instruction_i + style="font-size:6.35px;stroke-width:0;stroke-dasharray:none" + x="387.89163" + y="-713.5296">instruction_i instruction_o + style="font-size:6.35px;stroke-width:0;stroke-dasharray:none" + x="503.63513" + y="-713.50061">instruction_o + + - + style="display:inline;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.068;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1" + d="m 402.93183,-609.74698 -0.005,-10.79352" + id="path17" + inkscape:connector-type="polyline" + inkscape:connector-curvature="0" /> + d="m 414.86441,-609.74698 h 13.34832" + id="path18" + sodipodi:nodetypes="cc" /> + diff --git a/postZvfhmin.svg b/postZvfhmin.svg index 94f215c..e3a54e4 100644 --- a/postZvfhmin.svg +++ b/postZvfhmin.svg @@ -6,7 +6,7 @@ height="195mm" id="svg2" version="1.1" - inkscape:version="1.4.3 (0d15f75042, 2025-12-25)" + inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" sodipodi:docname="postZvfhmin.svg" viewBox="0 0 343 195" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" @@ -23,17 +23,17 @@ borderopacity="1.0" inkscape:pageopacity="0.0" inkscape:pageshadow="2" - inkscape:zoom="0.52277942" - inkscape:cx="719.2326" - inkscape:cy="280.23291" + inkscape:zoom="0.53987778" + inkscape:cx="580.68699" + inkscape:cy="526.97113" inkscape:document-units="mm" - inkscape:current-layer="g1-3-0-5-9-6-3-6" + inkscape:current-layer="layer1" showgrid="false" units="mm" - inkscape:window-width="1920" - inkscape:window-height="1052" - inkscape:window-x="0" - inkscape:window-y="0" + inkscape:window-width="1854" + inkscape:window-height="1011" + inkscape:window-x="1986" + inkscape:window-y="32" inkscape:window-maximized="1" objecttolerance="20" gridtolerance="10" @@ -3777,51 +3777,42 @@ transform="rotate(90)" /> - - ZVFHMIN - - - - - - + ZVFHMIN + + + @@ -3865,14 +3856,6 @@ x="-705.63635" y="-370.71628" transform="rotate(90)" /> - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + V + A + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Vdd + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + PVmodule + + + + + + + + + + + + + + + + + + + C + 3 + + + L + 2 + + + + + + + M + rS + + + + + + + I + s + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + R + 1 + + + + + + B + 1 + + + A + 0 + + S0 + Z + + S1 + + C + 2 + + D + 3 + + + + + 1 + + + + 0 + + S0 + + S1 + + + + + + + 2 + + + + 3 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + CVFPU + ZFHMIN + ZFACONV + + + + + + A + B + 1 + 0 + S0 + Z + + + + + + A + B + 1 + 0 + S0 + Z + + + + + + + + + + + + + + + + + + + + + diff --git a/preZfhmin.svg b/preZfhmin.svg index 0992686..6fb3e72 100644 --- a/preZfhmin.svg +++ b/preZfhmin.svg @@ -2,13 +2,13 @@ + x="478.3251" + y="102.39651" /> PendingPendingFP OPSQueue CVFPU Z instruction_i + x="387.50885" + y="-713.08038">instruction_i instruction_o + x="449.85706" + y="-713.05139">instruction_o diff --git a/wideningModule.svg b/wideningModule.svg index cfe9b2b..d6d346f 100644 --- a/wideningModule.svg +++ b/wideningModule.svg @@ -2,13 +2,13 @@ + x="3.1341312" + y="53.658634" /> + width="113.29295" + height="153.6461" + x="3.1339405" + y="155.56776" /> + + x="127.77197" + y="250.26566" /> + x="146.84343" + y="16.035332" /> @@ -781,7 +784,7 @@ inkscape:transform-center-x="2.0860962" id="path13572-5" style="display:inline;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.06093" - cx="421.81821" + cx="393.64902" cy="-605.70789" r="2.0860951" inkscape:transform-center-y="-4.4586184e-06" /> @@ -789,7 +792,7 @@ inkscape:transform-center-x="2.0860962" id="path13572-56" style="display:inline;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.06093" - cx="537.09418" + cx="508.92502" cy="-648.19147" r="2.0860951" inkscape:transform-center-y="-4.4586184e-06" /> @@ -797,7 +800,7 @@ inkscape:transform-center-x="2.0860962" id="path13572-9" style="display:inline;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.06093" - cx="553.79498" + cx="525.62585" cy="-682.53821" r="2.0860951" inkscape:transform-center-y="-4.4586184e-06" /> @@ -805,7 +808,7 @@ inkscape:transform-center-x="2.0860962" id="path13572-2" style="display:inline;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.06093" - cx="553.93805" + cx="525.76892" cy="-648.25952" r="2.0860951" inkscape:transform-center-y="-4.4586184e-06" /> @@ -813,7 +816,7 @@ inkscape:transform-center-x="2.0860962" id="path13572-0" style="display:inline;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.06093" - cx="565.65466" + cx="525.86945" cy="-612.1322" r="2.0860951" inkscape:transform-center-y="-4.4586184e-06" /> @@ -821,7 +824,7 @@ inkscape:transform-center-x="2.0860962" id="path13572-0-7" style="display:inline;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.06093" - cx="477.4068" + cx="449.23761" cy="-584.46521" r="2.0860951" inkscape:transform-center-y="-4.4586184e-06" /> @@ -829,7 +832,7 @@ inkscape:transform-center-x="2.0860962" id="path13572-3" style="display:inline;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.06093" - cx="658.13324" + cx="629.96411" cy="-648.31458" r="2.0860951" inkscape:transform-center-y="-4.4586184e-06" /> @@ -837,7 +840,7 @@ inkscape:transform-center-x="2.0860962" id="path13572-61" style="display:inline;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.06093" - cx="658.08966" + cx="629.92053" cy="-612.39813" r="2.0860951" inkscape:transform-center-y="-4.4586184e-06" /> @@ -1552,7 +1555,7 @@ x="-124.50394" y="-144.12999" rx="17.716532" - ry="0" /> + ry="17.716532" /> operand_i [14:10] [9:0] [31] [30:0] [30:23] [22:0] [30:23] [15] [31] 112 13 operand_o status_o @@ -3908,28 +3911,28 @@ style="display:inline;fill:none;stroke:#000000;stroke-width:1.17748;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1" id="path5527-5-0-3-3" cx="648.21368" - cy="605.9436" + cy="577.77448" rx="12.822311" ry="12.897488" transform="rotate(-90)" /> << - - - - - - - - - << - + + + + + + + << + + transform="rotate(90,692.25278,-832.49623)"> 0 - - - - - - - 1 - 0 - - - - - - - - 1 - 0 - frac16 == 0 - + + + + + 1 + 0 + + + + + + 1 + 0 + frac == 0 + 1 0 exp16 == 0 + x="501.72098" + y="-493.19611" + style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:5.69684px;line-height:125%;font-family:'Courier New';text-align:center;writing-mode:lr-tb;text-anchor:middle;stroke-width:0.356052">exp == 0 is_nan_i + x="485.90247" + y="-432.53268" + style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:5.69684px;line-height:125%;font-family:'Courier New';text-align:center;writing-mode:lr-tb;text-anchor:middle;stroke-width:0.356052">is_nan is_snan_i + transform="rotate(-90,670.18196,-492.39364)"> 112 0 QNAN 0 NV [22:0]