Pārlūkot izejas kodu

add rendering description

master
peteraa pirms 6 gadiem
vecāks
revīzija
8a9afc6550
8 mainītis faili ar 51249 papildinājumiem un 0 dzēšanām
  1. +672
    -0
      Images/Source/adder outputs.svg
  2. +49726
    -0
      Images/Source/drawing2.svg
  3. Binārs
      Images/inkscape.png
  4. Binārs
      Images/simulatedAdder.png
  5. Binārs
      Images/svgs.png
  6. +105
    -0
      circuitRendering.org
  7. +651
    -0
      src/test/resources/svgs/SumOrSquare.svg
  8. +95
    -0
      src/test/scala/SVGNestedSpec.scala

+ 672
- 0
Images/Source/adder outputs.svg Parādīt failu

@@ -0,0 +1,672 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->

<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="210mm"
height="297mm"
viewBox="0 0 210 297"
version="1.1"
id="svg10361"
inkscape:version="0.92.4 (unknown)"
sodipodi:docname="huh.svg">
<defs
id="defs10355">
<inkscape:path-effect
effect="spiro"
id="path-effect1515"
is_visible="true" />
<inkscape:path-effect
is_visible="true"
id="path-effect1494"
effect="spiro" />
<inkscape:path-effect
effect="spiro"
id="path-effect1515-4"
is_visible="true" />
<inkscape:path-effect
is_visible="true"
id="path-effect1494-3"
effect="spiro" />
<inkscape:path-effect
effect="spiro"
id="path-effect1515-0"
is_visible="true" />
<inkscape:path-effect
is_visible="true"
id="path-effect1494-8"
effect="spiro" />
<inkscape:path-effect
effect="spiro"
id="path-effect1515-07"
is_visible="true" />
<inkscape:path-effect
is_visible="true"
id="path-effect1494-6"
effect="spiro" />
<inkscape:path-effect
effect="spiro"
id="path-effect1515-00"
is_visible="true" />
<inkscape:path-effect
is_visible="true"
id="path-effect1494-34"
effect="spiro" />
<inkscape:path-effect
effect="spiro"
id="path-effect1515-2"
is_visible="true" />
<inkscape:path-effect
is_visible="true"
id="path-effect1494-4"
effect="spiro" />
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.24748737"
inkscape:cx="-187.0749"
inkscape:cy="-35.674605"
inkscape:document-units="mm"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:window-width="696"
inkscape:window-height="1149"
inkscape:window-x="3500"
inkscape:window-y="400"
inkscape:window-maximized="0" />
<metadata
id="metadata10358">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1">
<g
id="layer1-4"
inkscape:label="Layer 1"
transform="translate(-247.82643,-100.06018)"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96">
<rect
y="25.988699"
x="33.408691"
height="35.546844"
width="42.228577"
id="rect815"
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.79374999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<path
sodipodi:nodetypes="cccccccc"
inkscape:connector-curvature="0"
id="rect1510"
d="M 33.408691,25.988699 H 75.637268 V 61.535543 H 61.905124 L 54.52298,55.676912 47.140835,61.535543 H 33.408691 Z"
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.79374999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<path
sodipodi:nodetypes="cccccccc"
inkscape:connector-curvature="0"
id="rect1489"
d="m 46.931991,88.529769 h 24.78925 L 85.927158,99.1131 100.13308,88.529769 h 24.78925 L 114.33899,117.39488 H 57.515325 Z"
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.79374999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<path
transform="translate(7.9375,-0.1889881)"
inkscape:original-d="m 57.997486,61.535545 c 2.65e-4,8.997809 2.65e-4,17.995884 0,26.994222"
inkscape:path-effect="#path-effect1494"
inkscape:connector-curvature="0"
id="path1492"
d="M 57.997486,61.535545 V 88.529767"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500006;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
inkscape:connector-curvature="0"
id="path1500"
d="m 86.328056,117.12761 v 21.9161 H 153.67998 V 44.430296 H 75.370006"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500006;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<flowRoot
inkscape:label="Reg_A_value"
transform="scale(0.26458333)"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="Reg_A"
xml:space="preserve"><flowRegion
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start"
id="flowRegion1504"><rect
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start"
y="122.97374"
x="139.40105"
height="21.213207"
width="138.39091"
id="rect1506" /></flowRegion><flowPara
id="flowPara1615">Reg_A = 0</flowPara></flowRoot> <path
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500006;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 57.997486,61.535545 V 88.529767"
id="path1513"
inkscape:connector-curvature="0"
inkscape:path-effect="#path-effect1515"
inkscape:original-d="m 57.997486,61.535545 c 2.65e-4,8.997809 2.65e-4,17.995884 0,26.994222"
transform="translate(49.420387,-0.1889881)" />
<flowRoot
transform="scale(0.26458333)"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="flowRoot1517"
xml:space="preserve"><flowRegion
id="flowRegion1519"><rect
y="222.16254"
x="416.42856"
height="38.57143"
width="92.5"
id="rect1521" /></flowRegion><flowPara
id="flowPara1523">1</flowPara></flowRoot> <flowRoot
transform="scale(0.26458333)"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="flowRoot1525"
xml:space="preserve"><flowRegion
id="flowRegion1527"><rect
y="219.66254"
x="416.07144"
height="74.64286"
width="117.14286"
id="rect1529" /></flowRegion><flowPara
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:21.33333397px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start"
id="flowPara1531">1</flowPara></flowRoot> </g>
<g
id="layer1-7"
inkscape:label="Layer 1"
transform="translate(-247.82643,41.356975)"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96">
<rect
y="25.988699"
x="33.408691"
height="35.546844"
width="42.228577"
id="rect815-2"
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.79374999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<path
sodipodi:nodetypes="cccccccc"
inkscape:connector-curvature="0"
id="rect1510-5"
d="M 33.408691,25.988699 H 75.637268 V 61.535543 H 61.905124 L 54.52298,55.676912 47.140835,61.535543 H 33.408691 Z"
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.79374999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<path
sodipodi:nodetypes="cccccccc"
inkscape:connector-curvature="0"
id="rect1489-8"
d="m 46.931991,88.529769 h 24.78925 L 85.927158,99.1131 100.13308,88.529769 h 24.78925 L 114.33899,117.39488 H 57.515325 Z"
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.79374999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<path
transform="translate(7.9375,-0.1889881)"
inkscape:original-d="m 57.997486,61.535545 c 2.65e-4,8.997809 2.65e-4,17.995884 0,26.994222"
inkscape:path-effect="#path-effect1494-3"
inkscape:connector-curvature="0"
id="path1492-9"
d="M 57.997486,61.535545 V 88.529767"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500006;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
inkscape:connector-curvature="0"
id="path1500-0"
d="m 86.328056,117.12761 v 21.9161 H 153.67998 V 44.430296 H 75.370006"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500006;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<flowRoot
inkscape:label="Reg_A_value"
transform="scale(0.26458333)"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="Reg_A-2"
xml:space="preserve"><flowRegion
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start"
id="flowRegion1504-4"><rect
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start"
y="122.97374"
x="139.40105"
height="21.213207"
width="138.39091"
id="rect1506-7" /></flowRegion><flowPara
id="flowPara1615-6">Reg_A = 1</flowPara></flowRoot> <path
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500006;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 57.997486,61.535545 V 88.529767"
id="path1513-5"
inkscape:connector-curvature="0"
inkscape:path-effect="#path-effect1515-4"
inkscape:original-d="m 57.997486,61.535545 c 2.65e-4,8.997809 2.65e-4,17.995884 0,26.994222"
transform="translate(49.420387,-0.1889881)" />
<flowRoot
transform="scale(0.26458333)"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="flowRoot1517-7"
xml:space="preserve"><flowRegion
id="flowRegion1519-1"><rect
y="222.16254"
x="416.42856"
height="38.57143"
width="92.5"
id="rect1521-3" /></flowRegion><flowPara
id="flowPara1523-3">1</flowPara></flowRoot> <flowRoot
transform="scale(0.26458333)"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="flowRoot1525-3"
xml:space="preserve"><flowRegion
id="flowRegion1527-8"><rect
y="219.66254"
x="416.07144"
height="74.64286"
width="117.14286"
id="rect1529-5" /></flowRegion><flowPara
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:21.33333397px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start"
id="flowPara1531-1">1</flowPara></flowRoot> </g>
<g
id="layer1-6"
inkscape:label="Layer 1"
transform="translate(-247.82643,182.77412)"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96">
<rect
y="25.988699"
x="33.408691"
height="35.546844"
width="42.228577"
id="rect815-3"
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.79374999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<path
sodipodi:nodetypes="cccccccc"
inkscape:connector-curvature="0"
id="rect1510-50"
d="M 33.408691,25.988699 H 75.637268 V 61.535543 H 61.905124 L 54.52298,55.676912 47.140835,61.535543 H 33.408691 Z"
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.79374999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<path
sodipodi:nodetypes="cccccccc"
inkscape:connector-curvature="0"
id="rect1489-80"
d="m 46.931991,88.529769 h 24.78925 L 85.927158,99.1131 100.13308,88.529769 h 24.78925 L 114.33899,117.39488 H 57.515325 Z"
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.79374999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<path
transform="translate(7.9375,-0.1889881)"
inkscape:original-d="m 57.997486,61.535545 c 2.65e-4,8.997809 2.65e-4,17.995884 0,26.994222"
inkscape:path-effect="#path-effect1494-8"
inkscape:connector-curvature="0"
id="path1492-4"
d="M 57.997486,61.535545 V 88.529767"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500006;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
inkscape:connector-curvature="0"
id="path1500-1"
d="m 86.328056,117.12761 v 21.9161 H 153.67998 V 44.430296 H 75.370006"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500006;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<flowRoot
inkscape:label="Reg_A_value"
transform="scale(0.26458333)"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="Reg_A-1"
xml:space="preserve"><flowRegion
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start"
id="flowRegion1504-3"><rect
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start"
y="122.97374"
x="139.40105"
height="21.213207"
width="138.39091"
id="rect1506-5" /></flowRegion><flowPara
id="flowPara1615-9">Reg_A = 2</flowPara></flowRoot> <path
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500006;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 57.997486,61.535545 V 88.529767"
id="path1513-3"
inkscape:connector-curvature="0"
inkscape:path-effect="#path-effect1515-0"
inkscape:original-d="m 57.997486,61.535545 c 2.65e-4,8.997809 2.65e-4,17.995884 0,26.994222"
transform="translate(49.420387,-0.1889881)" />
<flowRoot
transform="scale(0.26458333)"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="flowRoot1517-4"
xml:space="preserve"><flowRegion
id="flowRegion1519-15"><rect
y="222.16254"
x="416.42856"
height="38.57143"
width="92.5"
id="rect1521-0" /></flowRegion><flowPara
id="flowPara1523-8">1</flowPara></flowRoot> <flowRoot
transform="scale(0.26458333)"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="flowRoot1525-35"
xml:space="preserve"><flowRegion
id="flowRegion1527-6"><rect
y="219.66254"
x="416.07144"
height="74.64286"
width="117.14286"
id="rect1529-59" /></flowRegion><flowPara
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:21.33333397px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start"
id="flowPara1531-9">1</flowPara></flowRoot> </g>
<g
id="layer1-76"
inkscape:label="Layer 1"
transform="translate(-247.82643,324.19122)"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96">
<rect
y="25.988699"
x="33.408691"
height="35.546844"
width="42.228577"
id="rect815-1"
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.79374999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<path
sodipodi:nodetypes="cccccccc"
inkscape:connector-curvature="0"
id="rect1510-506"
d="M 33.408691,25.988699 H 75.637268 V 61.535543 H 61.905124 L 54.52298,55.676912 47.140835,61.535543 H 33.408691 Z"
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.79374999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<path
sodipodi:nodetypes="cccccccc"
inkscape:connector-curvature="0"
id="rect1489-5"
d="m 46.931991,88.529769 h 24.78925 L 85.927158,99.1131 100.13308,88.529769 h 24.78925 L 114.33899,117.39488 H 57.515325 Z"
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.79374999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<path
transform="translate(7.9375,-0.1889881)"
inkscape:original-d="m 57.997486,61.535545 c 2.65e-4,8.997809 2.65e-4,17.995884 0,26.994222"
inkscape:path-effect="#path-effect1494-6"
inkscape:connector-curvature="0"
id="path1492-0"
d="M 57.997486,61.535545 V 88.529767"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500006;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
inkscape:connector-curvature="0"
id="path1500-8"
d="m 86.328056,117.12761 v 21.9161 H 153.67998 V 44.430296 H 75.370006"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500006;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<flowRoot
inkscape:label="Reg_A_value"
transform="scale(0.26458333)"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="Reg_A-12"
xml:space="preserve"><flowRegion
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start"
id="flowRegion1504-2"><rect
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start"
y="122.97374"
x="139.40105"
height="21.213207"
width="138.39091"
id="rect1506-6" /></flowRegion><flowPara
id="flowPara1615-91">Reg_A = 3</flowPara></flowRoot> <path
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500006;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 57.997486,61.535545 V 88.529767"
id="path1513-0"
inkscape:connector-curvature="0"
inkscape:path-effect="#path-effect1515-07"
inkscape:original-d="m 57.997486,61.535545 c 2.65e-4,8.997809 2.65e-4,17.995884 0,26.994222"
transform="translate(49.420387,-0.1889881)" />
<flowRoot
transform="scale(0.26458333)"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="flowRoot1517-42"
xml:space="preserve"><flowRegion
id="flowRegion1519-7"><rect
y="222.16254"
x="416.42856"
height="38.57143"
width="92.5"
id="rect1521-4" /></flowRegion><flowPara
id="flowPara1523-0">1</flowPara></flowRoot> <flowRoot
transform="scale(0.26458333)"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="flowRoot1525-32"
xml:space="preserve"><flowRegion
id="flowRegion1527-80"><rect
y="219.66254"
x="416.07144"
height="74.64286"
width="117.14286"
id="rect1529-3" /></flowRegion><flowPara
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:21.33333397px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start"
id="flowPara1531-7">1</flowPara></flowRoot> </g>
<g
id="layer1-2"
inkscape:label="Layer 1"
transform="translate(-247.82643,465.60835)"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96">
<rect
y="25.988699"
x="33.408691"
height="35.546844"
width="42.228577"
id="rect815-7"
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.79374999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<path
sodipodi:nodetypes="cccccccc"
inkscape:connector-curvature="0"
id="rect1510-4"
d="M 33.408691,25.988699 H 75.637268 V 61.535543 H 61.905124 L 54.52298,55.676912 47.140835,61.535543 H 33.408691 Z"
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.79374999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<path
sodipodi:nodetypes="cccccccc"
inkscape:connector-curvature="0"
id="rect1489-2"
d="m 46.931991,88.529769 h 24.78925 L 85.927158,99.1131 100.13308,88.529769 h 24.78925 L 114.33899,117.39488 H 57.515325 Z"
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.79374999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<path
transform="translate(7.9375,-0.1889881)"
inkscape:original-d="m 57.997486,61.535545 c 2.65e-4,8.997809 2.65e-4,17.995884 0,26.994222"
inkscape:path-effect="#path-effect1494-34"
inkscape:connector-curvature="0"
id="path1492-5"
d="M 57.997486,61.535545 V 88.529767"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500006;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
inkscape:connector-curvature="0"
id="path1500-2"
d="m 86.328056,117.12761 v 21.9161 H 153.67998 V 44.430296 H 75.370006"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500006;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<flowRoot
inkscape:label="Reg_A_value"
transform="scale(0.26458333)"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="Reg_A-4"
xml:space="preserve"><flowRegion
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start"
id="flowRegion1504-43"><rect
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start"
y="122.97374"
x="139.40105"
height="21.213207"
width="138.39091"
id="rect1506-8" /></flowRegion><flowPara
id="flowPara1615-60">Reg_A = 4</flowPara></flowRoot> <path
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500006;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 57.997486,61.535545 V 88.529767"
id="path1513-8"
inkscape:connector-curvature="0"
inkscape:path-effect="#path-effect1515-00"
inkscape:original-d="m 57.997486,61.535545 c 2.65e-4,8.997809 2.65e-4,17.995884 0,26.994222"
transform="translate(49.420387,-0.1889881)" />
<flowRoot
transform="scale(0.26458333)"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="flowRoot1517-9"
xml:space="preserve"><flowRegion
id="flowRegion1519-2"><rect
y="222.16254"
x="416.42856"
height="38.57143"
width="92.5"
id="rect1521-2" /></flowRegion><flowPara
id="flowPara1523-31">1</flowPara></flowRoot> <flowRoot
transform="scale(0.26458333)"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="flowRoot1525-8"
xml:space="preserve"><flowRegion
id="flowRegion1527-3"><rect
y="219.66254"
x="416.07144"
height="74.64286"
width="117.14286"
id="rect1529-4" /></flowRegion><flowPara
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:21.33333397px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start"
id="flowPara1531-2">1</flowPara></flowRoot> </g>
<g
id="layer1-1"
inkscape:label="Layer 1"
transform="translate(-247.82643,607.02547)"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96">
<rect
y="25.988699"
x="33.408691"
height="35.546844"
width="42.228577"
id="rect815-75"
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.79374999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<path
sodipodi:nodetypes="cccccccc"
inkscape:connector-curvature="0"
id="rect1510-7"
d="M 33.408691,25.988699 H 75.637268 V 61.535543 H 61.905124 L 54.52298,55.676912 47.140835,61.535543 H 33.408691 Z"
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.79374999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<path
sodipodi:nodetypes="cccccccc"
inkscape:connector-curvature="0"
id="rect1489-1"
d="m 46.931991,88.529769 h 24.78925 L 85.927158,99.1131 100.13308,88.529769 h 24.78925 L 114.33899,117.39488 H 57.515325 Z"
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.79374999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<path
transform="translate(7.9375,-0.1889881)"
inkscape:original-d="m 57.997486,61.535545 c 2.65e-4,8.997809 2.65e-4,17.995884 0,26.994222"
inkscape:path-effect="#path-effect1494-4"
inkscape:connector-curvature="0"
id="path1492-6"
d="M 57.997486,61.535545 V 88.529767"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500006;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
inkscape:connector-curvature="0"
id="path1500-9"
d="m 86.328056,117.12761 v 21.9161 H 153.67998 V 44.430296 H 75.370006"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500006;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<flowRoot
inkscape:label="Reg_A_value"
transform="scale(0.26458333)"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="Reg_A-8"
xml:space="preserve"><flowRegion
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start"
id="flowRegion1504-1"><rect
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start"
y="122.97374"
x="139.40105"
height="21.213207"
width="138.39091"
id="rect1506-3" /></flowRegion><flowPara
id="flowPara1615-3">Reg_A = 5</flowPara></flowRoot> <path
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500006;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 57.997486,61.535545 V 88.529767"
id="path1513-37"
inkscape:connector-curvature="0"
inkscape:path-effect="#path-effect1515-2"
inkscape:original-d="m 57.997486,61.535545 c 2.65e-4,8.997809 2.65e-4,17.995884 0,26.994222"
transform="translate(49.420387,-0.1889881)" />
<flowRoot
transform="scale(0.26458333)"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="flowRoot1517-98"
xml:space="preserve"><flowRegion
id="flowRegion1519-6"><rect
y="222.16254"
x="416.42856"
height="38.57143"
width="92.5"
id="rect1521-7" /></flowRegion><flowPara
id="flowPara1523-04">1</flowPara></flowRoot> <flowRoot
transform="scale(0.26458333)"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="flowRoot1525-84"
xml:space="preserve"><flowRegion
id="flowRegion1527-81"><rect
y="219.66254"
x="416.07144"
height="74.64286"
width="117.14286"
id="rect1529-6" /></flowRegion><flowPara
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:21.33333397px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start"
id="flowPara1531-8">1</flowPara></flowRoot> </g>
<text
xml:space="preserve"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:9.8777771px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="-212.42261"
y="-80.976196"
id="text11186"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96"><tspan
sodipodi:role="line"
id="tspan11184"
x="-212.42261"
y="-80.976196"
style="stroke-width:0.26458332px">Cycle 0</tspan></text>
<text
id="text11190"
y="61.142853"
x="-212.42261"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:9.87777778px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;"
xml:space="preserve"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96"><tspan
sodipodi:role="line"
id="tspan11216">Cycle 1</tspan></text>
<text
id="text11194"
y="203.2619"
x="-212.42261"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:9.87777778px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;"
xml:space="preserve"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96"><tspan
sodipodi:role="line"
id="tspan11218">Cycle 2</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:9.87777778px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;"
x="-212.42261"
y="345.38095"
id="text11198"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96"><tspan
sodipodi:role="line"
id="tspan11220">Cycle 3</tspan></text>
<text
id="text11202"
y="484.56613"
x="-215.62984"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:9.87777778px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;"
xml:space="preserve"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96"><tspan
sodipodi:role="line"
id="tspan11222">Cycle 4</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:9.87777778px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;"
x="-215.62984"
y="626.68518"
id="text11206"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96"><tspan
sodipodi:role="line"
id="tspan11224">Cycle 5</tspan></text>
</g>
</svg>

+ 49726
- 0
Images/Source/drawing2.svg
Failā izmaiņas netiks attēlotas, jo tās ir par lielu
Parādīt failu


Binārs
Images/inkscape.png Parādīt failu

Pirms Pēc
Platums: 1198  |  Augstums: 945  |  Izmērs: 126KB

Binārs
Images/simulatedAdder.png Parādīt failu

Pirms Pēc
Platums: 459  |  Augstums: 3156  |  Izmērs: 71KB

Binārs
Images/svgs.png Parādīt failu

Pirms Pēc
Platums: 866  |  Augstums: 608  |  Izmērs: 40KB

+ 105
- 0
circuitRendering.org Parādīt failu

@@ -0,0 +1,105 @@
* Rendering your circuit
This system is very WIP, and is therefore pretty janktastic.
The general idea of the circuit renderer is that you create a vector drawing of your circuit
with special labels for the circuit state you want to render.
The only svg program I have tested this with is inkscape, and I recommend against using other
drawing programs.
As an example we will use a very simple circuit:
[[./Images/inkscape.jpg]]
This circuit has a register, and we want to see how its state evolves, thus we add a label.
The name of the register is "Reg_A", which will be replaced by the actual value as the circuit
is simulated. We indicate this by adding "_field" as a postfix.
Next we make a test for our circuit
#+begin_src scala
class Adder() extends Module {
val io = IO(
new Bundle {
val reg_a = Output(UInt(32.W))
}
)
val reg_a = RegInit(0.U(8.W))
reg_a := reg_a + 1.U
io.reg_a := reg_a
}
#+end_src

Next we create a test, using an extension of PeekPokeTester
#+begin_src scala
class AdderTester(c: Adder) extends PeekPokeTesterLogger(c) {
// ^^^^^^^^^^^^^^^^^^^^^^^ This is an extension of the regular peek poke tester


// Tells us which signals should be logged
override def ioLoggers = List(c.io)

for(ii <- 0 until 10){
step(1)
}

// Writes the log to disk
writeLog
}
#+end_src
When the addertester is run it will record the state of ~c.io~ for every timestep and store it.
When testing is done, calling writeLog will search for an SVG whose name matches the tested device in
the resources folder.
For adder this corresponds to [[./src/test/resources/svgs/Adder.svg][src/test/resources/svgs/Adder.svg]]
The svg is loaded, and every value with the ~_field~ postfix is replaced with the recorded value sharing
its name.
In the simple adder circuit the only value in io is ~reg_a~ which matches ~Reg_A_field~.

By running
~testOnly Ex0.SVGSpec~ 10 svg files will be created, showing the state of the circuit for every step

You can now see the output svgs in the [[./svgOutputs/][svgOutputs]] folder.
#+CAPTION: The simulated adders
[[./Images/simulatedAdder.png]]
If you want to view them as pngs and you have inkscape installed you can run ./convert.sh to get png
output instead.
For a more fully fledged example take a look at
[[./src/test/scala/SVGNestedSpec.scala][src/test/scala/SVGNestedSpec.scala]]
which can be run with
~testOnly Ex0.SVGSNestedSpec~

* Should I use this? What's the approach?
The time invested in drawing a circuit, laying out fields etc is likely not worth it.
However, for the 5-stage RISCV pipeline the answer is definitely a yes!
In order to get a feel for this approach I recommend trying to debug the matrix multiplier
unit (last exercise) with this approach.
To do so you need to do the following steps:
(Or you could repurpose the SVGSNestedSpec)

** Draw the circuit in inkscape
You can add as much detail as you want here, the only thing the parser looks for is
text fields that are postfixed with "_field"
The fields I would be interested in are the row and column counters, and the dot product
accumulator state.
Save the svg as
/src/test/resources/svgs/MatMul.svg

** Wire the debug IO
The peek poke logger can only observe the top level IO modules, so the signals you want to
record must be made available.
This approach is shown in the chisel introduction.

** Create the test runner
Your tester should extend PeekPokeTesterLogger.
In your test you need to override the ioLoggers function to record the ports you want to
monitor (typically io, maybe a special debug port)
At the end of your test add writeLog in order to actually write the svgs
** Run your test
If everything goes smooth you can now take a look at the SVG output, or if you have inkscape
render it as an svg

+ 651
- 0
src/test/resources/svgs/SumOrSquare.svg Parādīt failu

@@ -0,0 +1,651 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->

<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="420mm"
height="594mm"
viewBox="0 0 420 594"
version="1.1"
id="svg8"
inkscape:version="0.92.4 (unknown)"
sodipodi:docname="SumOrSquare.svg">
<defs
id="defs2">
<inkscape:path-effect
is_visible="true"
id="path-effect1713"
effect="spiro" />
<inkscape:path-effect
effect="spiro"
id="path-effect1699"
is_visible="true" />
<inkscape:path-effect
is_visible="true"
id="path-effect1687"
effect="spiro" />
<inkscape:path-effect
effect="spiro"
id="path-effect1643"
is_visible="true" />
<inkscape:path-effect
is_visible="true"
id="path-effect1515"
effect="spiro" />
<inkscape:path-effect
effect="spiro"
id="path-effect1494"
is_visible="true" />
<inkscape:path-effect
is_visible="true"
id="path-effect1515-4"
effect="spiro" />
<inkscape:path-effect
effect="spiro"
id="path-effect1494-3"
is_visible="true" />
<inkscape:path-effect
is_visible="true"
id="path-effect1515-0"
effect="spiro" />
<inkscape:path-effect
effect="spiro"
id="path-effect1494-8"
is_visible="true" />
<inkscape:path-effect
is_visible="true"
id="path-effect1515-07"
effect="spiro" />
<inkscape:path-effect
effect="spiro"
id="path-effect1494-6"
is_visible="true" />
<inkscape:path-effect
is_visible="true"
id="path-effect1515-00"
effect="spiro" />
<inkscape:path-effect
effect="spiro"
id="path-effect1494-34"
is_visible="true" />
<inkscape:path-effect
is_visible="true"
id="path-effect1515-2"
effect="spiro" />
<inkscape:path-effect
effect="spiro"
id="path-effect1494-4"
is_visible="true" />
<inkscape:path-effect
is_visible="true"
id="path-effect1515-05"
effect="spiro" />
<inkscape:path-effect
effect="spiro"
id="path-effect1494-9"
is_visible="true" />
<inkscape:path-effect
is_visible="true"
id="path-effect1515-9"
effect="spiro" />
<inkscape:path-effect
effect="spiro"
id="path-effect1494-4-4"
is_visible="true" />
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.7"
inkscape:cx="663.5464"
inkscape:cy="650.12429"
inkscape:document-units="mm"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:snap-global="true"
inkscape:window-width="1198"
inkscape:window-height="1149"
inkscape:window-x="2998"
inkscape:window-y="400"
inkscape:window-maximized="0" />
<metadata
id="metadata5">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(0,297)">
<rect
inkscape:export-ydpi="96"
inkscape:export-xdpi="96"
style="opacity:1;fill:#f1f1f1;fill-opacity:1;stroke:#000000;stroke-width:0.79400003;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="rect1731"
width="350.44623"
height="329.05038"
x="23.210676"
y="-205.1756" />
<rect
y="-179.92462"
x="52.175465"
height="176.903"
width="122.22733"
id="rect891"
style="opacity:1;fill:#d5d5d5;fill-opacity:1;stroke:#000000;stroke-width:0.79374999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<rect
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.79374999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="rect815"
width="25.682747"
height="21.619226"
x="63.846184"
y="-102.42162"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<path
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.79374999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
d="M 63.846173,-102.42161 H 95.96554 v 21.619228 H 85.520766 l -5.614909,-3.56316 -5.614908,3.56316 H 63.846173 Z"
id="rect1510"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccccc"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<path
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.79374999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
d="m 72.070836,-64.384772 h 15.076415 l 8.639811,6.43668 8.639828,-6.43668 h 15.07642 l -6.43662,17.55545 H 78.50744 Z"
id="rect1489"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccccc"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<path
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.75110662;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 57.997486,61.535545 V 88.529767"
id="path1492"
inkscape:connector-curvature="0"
inkscape:path-effect="#path-effect1494"
inkscape:original-d="m 57.997486,61.535545 c 2.65e-4,8.997809 2.65e-4,17.995884 0,26.994222"
transform="matrix(0.608184,0,0,0.60818977,48.355011,-118.34262)"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<path
transform="matrix(0.608184,0,0,0.60818977,73.584236,-118.34262)"
inkscape:original-d="m 57.997486,61.535545 c 2.65e-4,8.997809 2.65e-4,17.995884 0,26.994222"
inkscape:path-effect="#path-effect1515"
inkscape:connector-curvature="0"
id="path1513"
d="M 57.997486,61.535545 V 88.529767"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.75110662;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<flowRoot
xml:space="preserve"
id="flowRoot1517"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
transform="matrix(0.26458333,0,0,0.26458333,-169.83306,-522.19195)"><flowRegion
id="flowRegion1519"><rect
id="rect1521"
width="92.5"
height="38.57143"
x="416.42856"
y="222.16254" /></flowRegion><flowPara
id="flowPara1523">1</flowPara></flowRoot> <flowRoot
xml:space="preserve"
id="flowRoot1525"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.64423144px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
transform="matrix(0.16091535,0,0,0.16091688,43.52754,-118.22766)"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96"><flowRegion
id="flowRegion1527"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:1.64423144px"><rect
id="rect1529"
width="117.14286"
height="74.64286"
x="416.07144"
y="219.66254"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:1.64423144px" /></flowRegion><flowPara
id="flowPara1667"
style="stroke-width:1.64423144px">1</flowPara></flowRoot> <flowRoot
xml:space="preserve"
id="flowRoot1517-2"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
transform="matrix(0.26458333,0,0,0.26458333,-286.86281,727.96923)"><flowRegion
id="flowRegion1519-8"><rect
id="rect1521-9"
width="92.5"
height="38.57143"
x="416.42856"
y="222.16254" /></flowRegion><flowPara
id="flowPara1523-3">1</flowPara></flowRoot> <path
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.79375011;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
d="m 74.270048,-145.13575 h 37.816662 l -9.23804,15.68609 H 83.508078 Z"
id="rect909"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccc"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<flowRoot
xml:space="preserve"
id="flowRoot1517-8"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
transform="matrix(0.26458333,0,0,0.26458333,-335.83203,560.00572)"><flowRegion
id="flowRegion1519-1"><rect
id="rect1521-2"
width="92.5"
height="38.57143"
x="416.42856"
y="222.16254" /></flowRegion><flowPara
id="flowPara1523-8">1</flowPara></flowRoot> <path
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.75110662;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 57.997486,61.535545 V 88.529767"
id="path1641"
inkscape:connector-curvature="0"
inkscape:path-effect="#path-effect1643"
inkscape:original-d="m 57.997486,61.535545 c 2.65e-4,8.997809 2.65e-4,17.995884 0,26.994222"
transform="matrix(0.608184,0,0,0.60818977,47.576386,-199.29279)"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<flowRoot
transform="matrix(0.16091535,0,0,0.16091688,17.74957,-199.47988)"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.64423144px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="flowRoot1661"
xml:space="preserve"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96"><flowRegion
id="flowRegion1657"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:1.64423144px"><rect
y="219.66254"
x="416.07144"
height="74.64286"
width="117.14286"
id="rect1655"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:1.64423144px" /></flowRegion><flowPara
id="flowPara1663"
style="stroke-width:1.64423144px">0</flowPara></flowRoot> <path
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500018;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 95.324385,-47.122872 v 18.85025 H 145.43802 V -157.92563 H 96.243906 v 12.41359"
id="path1669"
inkscape:connector-curvature="0"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<path
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500018;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 108.07485,-137.56458 h 37.11696"
id="path1671"
inkscape:connector-curvature="0"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<path
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500018;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 92.525907,-129.76216 v 11.05344 h -11.70352 v 15.92996"
id="path1673"
inkscape:connector-curvature="0"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<path
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500018;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 145.43802,-28.272622 v 69.45791"
id="path1675"
inkscape:connector-curvature="0"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<rect
inkscape:export-ydpi="96"
inkscape:export-xdpi="96"
style="opacity:1;fill:#d5d5d5;fill-opacity:1;stroke:#000000;stroke-width:0.79374999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="rect1677"
width="122.22733"
height="176.903"
x="215.37473"
y="-179.92462" />
<rect
y="-102.42162"
x="227.04544"
height="21.619226"
width="25.682747"
id="rect1679"
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.79374999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<path
sodipodi:nodetypes="cccccccc"
inkscape:connector-curvature="0"
id="path1681"
d="m 227.04543,-102.42161 h 30.72177 v 21.619228 h -9.99029 l -5.3706,-3.56316 -5.37059,3.56316 h -9.99029 z"
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.79374999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<path
sodipodi:nodetypes="cccccccc"
inkscape:connector-curvature="0"
id="path1683"
d="m 235.27008,-64.384772 h 15.07644 l 8.6398,6.43668 8.63982,-6.43668 h 15.07642 l -6.43661,17.55545 h -34.55926 z"
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.79374999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<path
transform="matrix(0.608184,0,0,0.60818977,211.55427,-118.34262)"
inkscape:original-d="m 57.997486,61.535545 c 2.65e-4,8.997809 2.65e-4,17.995884 0,26.994222"
inkscape:path-effect="#path-effect1687"
inkscape:connector-curvature="0"
id="path1685"
d="M 57.997486,61.535545 V 88.529767"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.75110662;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<flowRoot
inkscape:label="Reg_A_value"
transform="matrix(0.16091535,0,0,0.16091688,206.7268,-118.22766)"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:21.33333397px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.64423144px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="flowRoot1695"
xml:space="preserve"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96"><flowRegion
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:21.33333397px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:1.64423144px"
id="flowRegion1691"><rect
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:21.33333397px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:1.64423144px"
y="122.97374"
x="139.40105"
height="86.873131"
width="165.66504"
id="rect1689" /></flowRegion><flowPara
id="flowPara1785"
style="stroke-width:1.64423144px">counter_b_field</flowPara></flowRoot> <path
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.75110662;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 57.997486,61.535545 V 88.529767"
id="path1697"
inkscape:connector-curvature="0"
inkscape:path-effect="#path-effect1699"
inkscape:original-d="m 57.997486,61.535545 c 2.65e-4,8.997809 2.65e-4,17.995884 0,26.994222"
transform="matrix(0.608184,0,0,0.60818977,236.78349,-118.34262)"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<flowRoot
transform="matrix(0.16091535,0,0,0.16091688,206.7268,-118.22766)"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.64423144px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="flowRoot1707"
xml:space="preserve"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96"><flowRegion
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:1.64423144px"
id="flowRegion1703"><rect
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:1.64423144px"
y="219.66254"
x="416.07144"
height="74.64286"
width="117.14286"
id="rect1701" /></flowRegion><flowPara
id="flowPara1705"
style="stroke-width:1.64423144px">1</flowPara></flowRoot> <path
inkscape:export-ydpi="96"
inkscape:export-xdpi="96"
sodipodi:nodetypes="ccccc"
inkscape:connector-curvature="0"
id="path1709"
d="m 237.46931,-145.13575 h 37.81664 l -9.23803,15.68609 h -19.34058 z"
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.79375011;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<path
transform="matrix(0.608184,0,0,0.60818977,210.77564,-199.29279)"
inkscape:original-d="m 57.997486,61.535545 c 2.65e-4,8.997809 2.65e-4,17.995884 0,26.994222"
inkscape:path-effect="#path-effect1713"
inkscape:connector-curvature="0"
id="path1711"
d="M 57.997486,61.535545 V 88.529767"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.75110662;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<flowRoot
xml:space="preserve"
id="flowRoot1721"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.64423144px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
transform="matrix(0.16091535,0,0,0.16091688,180.94884,-199.47988)"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96"><flowRegion
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:1.64423144px"
id="flowRegion1717"><rect
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:1.64423144px"
id="rect1715"
width="117.14286"
height="74.64286"
x="416.07144"
y="219.66254" /></flowRegion><flowPara
id="flowPara1719"
style="stroke-width:1.64423144px">0</flowPara></flowRoot> <path
inkscape:connector-curvature="0"
id="path1723"
d="m 258.52365,-47.122872 v 18.85025 h 50.11363 V -157.92563 h -49.19412 v 12.41359"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500018;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<path
inkscape:connector-curvature="0"
id="path1725"
d="m 271.27409,-137.56458 h 37.11698"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500018;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<path
inkscape:connector-curvature="0"
id="path1727"
d="m 255.72516,-129.76216 v 11.05344 h -11.70352 v 15.92996"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500018;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<path
inkscape:connector-curvature="0"
id="path1729"
d="m 308.63728,-28.272622 v 68.53838"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500018;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<path
sodipodi:nodetypes="cccccccc"
inkscape:connector-curvature="0"
id="path1733"
d="m 57.116317,57.203078 h 15.076431 l 8.639811,6.43668 8.639811,-6.43668 h 15.07643 l -6.436621,17.55547 H 63.552921 Z"
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.79374999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<path
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.79374999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
d="m 124.73672,57.203078 h 15.07643 l 8.63981,6.43668 8.63982,-6.43668 h 15.07642 l -6.43661,17.55547 h -34.55925 z"
id="path1735"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccccc"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<path
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500018;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 64.892573,56.845908 v -15.60485 h 80.949437 16.9051 v 15.27976"
id="path1737"
inkscape:connector-curvature="0"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<path
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500018;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 132.18788,57.171008 V 40.915968"
id="path1739"
inkscape:connector-curvature="0"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<path
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500018;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 96.101992,56.845908 V 41.241058"
id="path1741"
inkscape:connector-curvature="0"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<path
inkscape:connector-curvature="0"
id="path1049"
d="m 91.771159,61.340928 v 10.51709"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.26499999;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<path
inkscape:export-ydpi="96"
inkscape:export-xdpi="96"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.26499999;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 97.029652,66.599468 H 86.512679"
id="path1743"
inkscape:connector-curvature="0" />
<path
inkscape:export-ydpi="96"
inkscape:export-xdpi="96"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.26499999;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 160.19498,62.001948 v 10.51706"
id="path1745"
inkscape:connector-curvature="0" />
<path
inkscape:connector-curvature="0"
id="path1747"
d="M 165.45347,67.260478 H 154.93649"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.26499999;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<path
inkscape:connector-curvature="0"
id="path1749"
d="m 163.91329,63.542118 -7.43663,7.43672"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.26499999;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<path
inkscape:export-ydpi="96"
inkscape:export-xdpi="96"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.26499999;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 163.91329,70.978838 -7.43663,-7.43672"
id="path1751"
inkscape:connector-curvature="0" />
<path
inkscape:export-ydpi="96"
inkscape:export-xdpi="96"
sodipodi:nodetypes="ccccc"
inkscape:connector-curvature="0"
id="path1753"
d="m 96.338442,90.262658 h 37.816648 l -9.23803,15.686102 h -19.34059 z"
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.79375011;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<path
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500018;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 79.922492,74.714188 v 6.20679 h 27.815368 v 8.96539"
id="path1757"
inkscape:connector-curvature="0"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<path
inkscape:connector-curvature="0"
id="path1761"
d="m 150.48826,74.714188 v 6.20679 h -27.81537 v 8.96539"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500018;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<path
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500018;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 308.63728,40.265758 v 57.54292 H 129.262"
id="path1767"
inkscape:connector-curvature="0"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<path
inkscape:connector-curvature="0"
id="path1769"
d="m 115.48921,106.11131 v 43.7749"
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.06500018;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<path
sodipodi:nodetypes="cccccccc"
inkscape:connector-curvature="0"
id="path1805"
d="M 63.846173,-102.42161 H 95.96554 v 21.619228 H 85.520766 l -5.614909,-3.56316 -5.614908,3.56316 H 63.846173 Z"
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.79374999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" />
<flowRoot
xml:space="preserve"
id="flowRoot1793"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:21.33333397px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.64423144px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
transform="matrix(0.16091535,0,0,0.16091688,45.024948,-118.22766)"
inkscape:label="Reg_A_value"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96"><flowRegion
id="flowRegion1789"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:21.33333397px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:1.64423144px"><rect
id="rect1787"
width="165.66504"
height="86.873131"
x="139.40105"
y="122.97374"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:21.33333397px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:1.64423144px" /></flowRegion><flowPara
id="flowPara1795"
style="stroke-width:1.64423144px">counter_a_field</flowPara></flowRoot> <flowRoot
inkscape:label="Reg_A_value"
transform="matrix(0.16091535,0,0,0.16091688,40.375295,62.853678)"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:21.33333397px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.64423144px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="flowRoot1803"
xml:space="preserve"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96"><flowRegion
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:21.33333397px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:1.64423144px"
id="flowRegion1799"><rect
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:21.33333397px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:1.64423144px"
y="122.97374"
x="139.40105"
height="86.873131"
width="165.66504"
id="rect1797" /></flowRegion><flowPara
id="flowPara1801"
style="stroke-width:1.64423144px">sum_field</flowPara></flowRoot> <flowRoot
xml:space="preserve"
id="flowRoot1821"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:21.33335457px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.64423144px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
transform="matrix(0.16091535,0,0,0.16091688,124.28115,62.853678)"
inkscape:label="Reg_A_value"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96"><flowRegion
id="flowRegion1817"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:21.33335457px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr;text-anchor:start;stroke-width:1.64423144px;"><rect
id="rect1815"
width="165.66504"
height="86.873131"
x="139.40105"
y="122.97374"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:21.33335457px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr;text-anchor:start;stroke-width:1.64423144px;" /></flowRegion><flowPara
id="flowPara1844">square_field</flowPara></flowRoot> <flowRoot
inkscape:export-ydpi="96"
inkscape:export-xdpi="96"
inkscape:label="Reg_A_value"
transform="matrix(0.16091535,0,0,0.16091688,95.55496,94.225702)"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:21.33335457px;line-height:125%;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.64423144px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
id="flowRoot1852"
xml:space="preserve"><flowRegion
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:21.33335457px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr;text-anchor:start;stroke-width:1.64423144px;"
id="flowRegion1848"><rect
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:21.33335457px;font-family:Verdana;-inkscape-font-specification:'Verdana, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr;text-anchor:start;stroke-width:1.64423144px;"
y="122.97374"
x="139.40105"
height="86.873131"
width="165.66504"
id="rect1846" /></flowRegion><flowPara
id="flowPara1856">out_field</flowPara></flowRoot> </g>
</svg>

+ 95
- 0
src/test/scala/SVGNestedSpec.scala Parādīt failu

@@ -0,0 +1,95 @@
package Ex0

import chisel3._
import chisel3.experimental._
import chisel3.iotesters.PeekPokeTester
import org.scalatest.{Matchers, FlatSpec}
import TestUtils._

import scala.collection.immutable.{ Vector => _ }

class SVGSNestedSpec extends FlatSpec with Matchers {

behavior of "SumOrSquare"

it should "Make some sweet pngs" in {
wrapTester(
chisel3.iotesters.Driver(() => new SumOrSquare(5, 7)) { c =>
new SumOrSquareTester(c)
} should be(true)
)
}

}

class MyCounter(countTo: Int) extends MultiIOModule {
val io = IO( new Bundle {
val out = Output(UInt(32.W))
})

val debug = IO( new Bundle {
val counterState = Output(UInt(32.W))
})

val reg_a = RegInit(0.U(8.W))
val incremented = reg_a + 1.U

when(incremented === countTo.U){
reg_a := 0.U
}.otherwise{
reg_a := reg_a + 1.U
}

io.out := incremented

debug.counterState := reg_a
}


class SumOrSquare(countToA: Int, countToB: Int) extends MultiIOModule {
val io = IO( new Bundle {
val out = Output(UInt(32.W))
})


val debug = IO( new Bundle {
val counter_a = Output(UInt(32.W))
val counter_b = Output(UInt(32.W))
val square = Output(UInt(32.W))
val sum = Output(UInt(32.W))
})


val counterA = Module(new MyCounter(countToA))
val counterB = Module(new MyCounter(countToB))

val sum = counterA.io.out + counterA.io.out
val square = counterA.io.out * counterA.io.out

when(counterB.io.out % 2.U === 0.U){
io.out := sum
}.otherwise{
io.out := square
}


debug.counter_a := counterA.debug.counterState
debug.counter_b := counterB.debug.counterState
debug.square := square
debug.sum := sum
}


class SumOrSquareTester(c: SumOrSquare) extends PeekPokeTesterLogger(c) {
override def ioLoggers = List(
"" -> c.debug,
"" -> c.io
)

for(ii <- 0 until 10){
step(1)
}

writeLog
}


Notiek ielāde…
Atcelt
Saglabāt