Initial commit

This commit is contained in:
muellerlu
2026-05-29 10:19:13 +02:00
commit fedfd92270
726 changed files with 542654 additions and 0 deletions
+131
View File
@@ -0,0 +1,131 @@
<mxfile host="65bd71144e">
<diagram name="Page-1" id="6TD31-tx4YeMT5SjUeEL">
<mxGraphModel dx="796" dy="265" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
<root>
<mxCell id="0"/>
<mxCell id="1" parent="0"/>
<mxCell id="fx5yl9cXGPLrq4qI7ClV-1" value="" style="group" parent="1" vertex="1" connectable="0">
<mxGeometry x="370" y="345.16" width="152.95000000000005" height="118.00999999999999" as="geometry"/>
</mxCell>
<mxCell id="fx5yl9cXGPLrq4qI7ClV-2" value="" style="group" parent="fx5yl9cXGPLrq4qI7ClV-1" vertex="1" connectable="0">
<mxGeometry y="4.839999999999975" width="152.95000000000005" height="113.17000000000002" as="geometry"/>
</mxCell>
<mxCell id="fx5yl9cXGPLrq4qI7ClV-3" style="edgeStyle=none;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.75;exitDx=0;exitDy=0;startArrow=none;startFill=0;endArrow=none;endFill=0;" parent="fx5yl9cXGPLrq4qI7ClV-2" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="150" y="75.66836734693868" as="targetPoint"/>
<mxPoint x="118.95000000000005" y="75.50000000000011" as="sourcePoint"/>
</mxGeometry>
</mxCell>
<mxCell id="fx5yl9cXGPLrq4qI7ClV-4" value="eqFlag" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" parent="fx5yl9cXGPLrq4qI7ClV-3" vertex="1" connectable="0">
<mxGeometry x="-0.8665" relative="1" as="geometry">
<mxPoint x="21" y="7" as="offset"/>
</mxGeometry>
</mxCell>
<mxCell id="fx5yl9cXGPLrq4qI7ClV-5" value="" style="shape=image;verticalLabelPosition=bottom;labelBackgroundColor=default;verticalAlign=top;aspect=fixed;imageAspect=0;image=data:image/png,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;" parent="fx5yl9cXGPLrq4qI7ClV-2" vertex="1">
<mxGeometry x="70" y="10" width="48.95" height="101" as="geometry"/>
</mxCell>
<mxCell id="fx5yl9cXGPLrq4qI7ClV-6" value="&lt;span style=&quot;color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: center; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; white-space: normal; background-color: rgb(251, 251, 251); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&quot;&gt;ALU&lt;/span&gt;" style="text;whiteSpace=wrap;html=1;" parent="fx5yl9cXGPLrq4qI7ClV-2" vertex="1">
<mxGeometry x="88.94999999999999" y="45.5" width="30" height="30" as="geometry"/>
</mxCell>
<mxCell id="fx5yl9cXGPLrq4qI7ClV-7" style="rounded=0;orthogonalLoop=1;jettySize=auto;html=1;verticalAlign=middle;endArrow=none;endFill=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;strokeWidth=2;" parent="fx5yl9cXGPLrq4qI7ClV-2" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="108.36999999999988" y="8" as="targetPoint"/>
<mxPoint x="108.36999999999999" y="29" as="sourcePoint"/>
</mxGeometry>
</mxCell>
<mxCell id="fx5yl9cXGPLrq4qI7ClV-8" value="aluOp" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" parent="fx5yl9cXGPLrq4qI7ClV-7" vertex="1" connectable="0">
<mxGeometry x="0.1579" relative="1" as="geometry">
<mxPoint y="-17" as="offset"/>
</mxGeometry>
</mxCell>
<mxCell id="fx5yl9cXGPLrq4qI7ClV-9" value="" style="endArrow=none;html=1;rounded=0;" parent="fx5yl9cXGPLrq4qI7ClV-2" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="104.52000000000002" y="23" as="sourcePoint"/>
<mxPoint x="112.52000000000002" y="13" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="fx5yl9cXGPLrq4qI7ClV-10" value="&lt;span style=&quot;font-size: 9px;&quot;&gt;3&lt;/span&gt;" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="fx5yl9cXGPLrq4qI7ClV-2" vertex="1">
<mxGeometry x="99.99999999999999" y="5" width="30" height="30" as="geometry"/>
</mxCell>
<mxCell id="fx5yl9cXGPLrq4qI7ClV-11" style="edgeStyle=none;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.25;exitDx=0;exitDy=0;endArrow=none;endFill=0;strokeWidth=2;" parent="fx5yl9cXGPLrq4qI7ClV-2" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="148.95000000000016" y="50.70270270270271" as="targetPoint"/>
<mxPoint x="118.94999999999999" y="50.625" as="sourcePoint"/>
</mxGeometry>
</mxCell>
<mxCell id="fx5yl9cXGPLrq4qI7ClV-12" value="result" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" parent="fx5yl9cXGPLrq4qI7ClV-11" vertex="1" connectable="0">
<mxGeometry x="0.1333" relative="1" as="geometry">
<mxPoint x="2" y="-14" as="offset"/>
</mxGeometry>
</mxCell>
<mxCell id="fx5yl9cXGPLrq4qI7ClV-13" value="" style="endArrow=none;html=1;rounded=0;" parent="fx5yl9cXGPLrq4qI7ClV-2" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="128.95" y="56" as="sourcePoint"/>
<mxPoint x="136.95" y="46" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="fx5yl9cXGPLrq4qI7ClV-14" style="edgeStyle=none;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.25;exitDx=0;exitDy=0;endArrow=none;endFill=0;strokeWidth=2;" parent="fx5yl9cXGPLrq4qI7ClV-2" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="70.00000000000011" y="29.702702702702766" as="targetPoint"/>
<mxPoint x="40" y="30.000000000000057" as="sourcePoint"/>
</mxGeometry>
</mxCell>
<mxCell id="fx5yl9cXGPLrq4qI7ClV-15" value="" style="endArrow=none;html=1;rounded=0;" parent="fx5yl9cXGPLrq4qI7ClV-2" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="50" y="35.00000000000006" as="sourcePoint"/>
<mxPoint x="58" y="25.000000000000057" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="fx5yl9cXGPLrq4qI7ClV-16" value="&lt;span style=&quot;font-size: 9px;&quot;&gt;32&lt;/span&gt;" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="fx5yl9cXGPLrq4qI7ClV-2" vertex="1">
<mxGeometry x="44" y="23.000000000000057" width="30" height="30" as="geometry"/>
</mxCell>
<mxCell id="fx5yl9cXGPLrq4qI7ClV-17" value="op1" style="text;strokeColor=none;align=center;fillColor=none;html=1;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent="fx5yl9cXGPLrq4qI7ClV-2" vertex="1">
<mxGeometry x="5" y="19.500000000000057" width="40" height="20" as="geometry"/>
</mxCell>
<mxCell id="fx5yl9cXGPLrq4qI7ClV-18" style="edgeStyle=none;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.25;exitDx=0;exitDy=0;endArrow=none;endFill=0;strokeWidth=2;" parent="fx5yl9cXGPLrq4qI7ClV-2" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="70.00000000000011" y="89.87270270270272" as="targetPoint"/>
<mxPoint x="40" y="90.17000000000002" as="sourcePoint"/>
</mxGeometry>
</mxCell>
<mxCell id="fx5yl9cXGPLrq4qI7ClV-19" value="" style="endArrow=none;html=1;rounded=0;" parent="fx5yl9cXGPLrq4qI7ClV-2" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="50" y="95.17000000000002" as="sourcePoint"/>
<mxPoint x="58" y="85.17000000000002" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="fx5yl9cXGPLrq4qI7ClV-20" value="&lt;span style=&quot;font-size: 9px;&quot;&gt;32&lt;/span&gt;" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="fx5yl9cXGPLrq4qI7ClV-2" vertex="1">
<mxGeometry x="44" y="83.17000000000002" width="30" height="30" as="geometry"/>
</mxCell>
<mxCell id="fx5yl9cXGPLrq4qI7ClV-21" value="op2" style="text;strokeColor=none;align=center;fillColor=none;html=1;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent="fx5yl9cXGPLrq4qI7ClV-2" vertex="1">
<mxGeometry x="5" y="79.67000000000002" width="40" height="20" as="geometry"/>
</mxCell>
<mxCell id="fx5yl9cXGPLrq4qI7ClV-22" value="&lt;font style=&quot;font-size: 9px;&quot;&gt;32&lt;/font&gt;" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="fx5yl9cXGPLrq4qI7ClV-2" vertex="1">
<mxGeometry x="122.95000000000005" y="41.58000000000004" width="30" height="30" as="geometry"/>
</mxCell>
<mxCell id="80" style="edgeStyle=none;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=none;endFill=0;" edge="1" parent="fx5yl9cXGPLrq4qI7ClV-2">
<mxGeometry relative="1" as="geometry">
<mxPoint x="99.94999999999999" y="94.67000000000002" as="targetPoint"/>
<mxPoint x="100" y="110" as="sourcePoint"/>
</mxGeometry>
</mxCell>
<mxCell id="81" value="aluNegAr" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="80">
<mxGeometry x="0.0744" relative="1" as="geometry">
<mxPoint y="18" as="offset"/>
</mxGeometry>
</mxCell>
<mxCell id="fx5yl9cXGPLrq4qI7ClV-23" style="edgeStyle=none;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=none;endFill=0;" parent="fx5yl9cXGPLrq4qI7ClV-1" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="85" as="targetPoint"/>
<mxPoint x="85" y="22.840000000000032" as="sourcePoint"/>
</mxGeometry>
</mxCell>
<mxCell id="fx5yl9cXGPLrq4qI7ClV-24" value="aluBypass" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" parent="fx5yl9cXGPLrq4qI7ClV-23" vertex="1" connectable="0">
<mxGeometry x="0.0744" relative="1" as="geometry">
<mxPoint y="-21" as="offset"/>
</mxGeometry>
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>
+77
View File
@@ -0,0 +1,77 @@
<svg host="65bd71144e" xmlns="http://www.w3.org/2000/svg" style="background: transparent; background-color: transparent;" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="573px" height="359px" viewBox="-0.5 -0.5 573 359" content="&lt;mxfile scale=&quot;2&quot; border=&quot;0&quot;&gt;&lt;diagram name=&quot;Page-1&quot; id=&quot;Dras1X57W6EPz2KZu20U&quot;&gt;5Vdtb9sgEP41lrYPqWyIU+djm75sXSdVi9R1nyoaU5vOBg+TxN6v32FwbJKsydp1mzopUriH4+DuHh5kD0/y6lySIv0oYpp5yI8rD594CB0i5OmfH9cGwGhogESy2EBBB0zZd2pB36JzFtPScVRCZIoVLjgTnNOZcjAipVi6bvcic3ctSEI3gOmMZJvoZxar1KAROuzwd5QlabtzMBqbmZy0zjaTMiWxWPYgfOrhiRRCmVFeTWima9fWxaw7+8ns6mCScrXPghPCBqT208uL24vkw4M/u59OBigyYRYkm9uM7WlV3ZZASUZ4oq3jZcoUnRZkpqeW0HDAUpVnYAUwlEIRxQQHczD2AbhnWTYRmZCAcMF1iFJJ8ZW2oIdwhO7waAQz0EJFGKca14s3E7Q5L6hUtOpBNuFzKnKqZA0udhZFoVmyYp9txrLrZcu0tN9GixHLnmQVuSswDGyNf6HeGG+p9yiDbY9jtoBhoprMDVQWhDu9GH2ba7pAqZryHcGkTO7ewGnhOH7797YJAVznalA2N0o7BqioTGwbpN3t03s42DV4TISk7daQndndPRHAzjnXqCLFnMc0tg3cwRZ9Pnvhg2Fr21jBdvK8BEVC36FIEG1SJNpGkfClONJqyyu9k8PAvZNoS8H/6J0cjjbKS2N4BKwppEpFIjjJTjv02GV653MpRGEr/0CVqi3ByVwJty+0YuqmN/6iQx2E1jqpbOTGqFuDQ743faO3Spvdssaqd3WtFHM5o4/plS26IjKhag9h05V7lAWSZsDHhfu8butps/RISlL3HArBuCp7ka800CPX2L3N7e0+29Mf7/BfveZP9EdhuMZXk2HH3lWpnvHI+BsCksMlvs1p/hoUG0drNQ32U+zoxQQk/KsCcuD7rohgPHySjKBdOqKjXFHJoGy7G7pbW/C+2uL/bm15XruDf6vd4Xj8pHYf/jft3q7NGK/pyDh0Q5iU7Ko10jwq02B233XGvfs4xqc/AA==&lt;/diagram&gt;&lt;/mxfile&gt;">
<defs/>
<g>
<g>
<path d="M 144 280 L 164 290 L 144 300 Z" fill="none" stroke="#82b366" stroke-width="2" stroke-miterlimit="10" transform="rotate(-90,154,290)" pointer-events="all" style="stroke: light-dark(rgb(130, 179, 102), rgb(68, 110, 44));"/>
</g>
<g>
<rect x="74" y="0" width="160" height="300" fill="none" stroke="#000000" stroke-width="2" pointer-events="all" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
</g>
<g>
<g transform="translate(-0.5 -0.5)scale(2)">
<switch>
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 75px; margin-left: 38px;">
<div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; ">
<div style="display: inline-block; font-size: 14px; font-family: &quot;Helvetica&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; word-wrap: normal; ">
<div>
<span style="color: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); font-size: 12px;">
RISC-V Core
</span>
</div>
</div>
</div>
</div>
</foreignObject>
<text x="77" y="79" fill="light-dark(#000000, #ffffff)" font-family="&quot;Helvetica&quot;" font-size="14px" text-anchor="middle" font-weight="bold">
RISC-V Core
</text>
</switch>
</g>
</g>
<g>
<path d="M 404 200 L 424 210 L 404 220 Z" fill="none" stroke="#82b366" stroke-width="2" stroke-miterlimit="10" transform="rotate(-90,414,210)" pointer-events="all" style="stroke: light-dark(rgb(130, 179, 102), rgb(68, 110, 44));"/>
</g>
<g>
<path d="M 494 140 L 554 140 L 554 340 L 14 340 L 14 150.03 L 61.26 150.01" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
<path d="M 71.76 150 L 57.77 157.01 L 61.26 150.01 L 57.76 143.01 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="all" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
</g>
<g>
<rect x="334" y="60" width="160" height="160" fill="none" stroke="#000000" stroke-width="2" pointer-events="all" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
</g>
<g>
<g transform="translate(-0.5 -0.5)scale(2)">
<switch>
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 70px; margin-left: 168px;">
<div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; ">
<div style="display: inline-block; font-size: 14px; font-family: &quot;Helvetica&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; word-wrap: normal; ">
main_mem
</div>
</div>
</div>
</foreignObject>
<text x="207" y="74" fill="light-dark(#000000, #ffffff)" font-family="&quot;Helvetica&quot;" font-size="14px" text-anchor="middle" font-weight="bold">
main_mem
</text>
</switch>
</g>
</g>
<g>
<path d="M 234.16 100.2 L 284.03 100.23 L 321.26 100.06" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
<path d="M 331.76 100.01 L 317.8 107.07 L 321.26 100.06 L 317.73 93.07 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="all" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
</g>
<g>
<path d="M 234.16 179.7 L 284.03 179.61 L 321.26 179.9" fill="none" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
<path d="M 331.76 179.98 L 317.71 186.87 L 321.26 179.9 L 317.82 172.87 Z" fill="#000000" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="all" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
</g>
</g>
<switch>
<g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/>
<a transform="translate(0,-5)" xlink:href="https://www.drawio.com/doc/faq/svg-export-text-problems" target="_blank">
<text text-anchor="middle" font-size="10px" x="50%" y="100%">
Text is not SVG - cannot display
</text>
</a>
</switch>
</svg>

After

Width:  |  Height:  |  Size: 7.3 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 136 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 18 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 89 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 144 KiB

@@ -0,0 +1,163 @@
<mxfile host="Electron" agent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/26.2.2 Chrome/134.0.6998.178 Electron/35.1.2 Safari/537.36" version="26.2.2">
<diagram name="Page-1" id="vqPtpfTpDl2-zyb6y6Gk">
<mxGraphModel dx="2152" dy="1262" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1169" pageHeight="827" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="QNMoGRvylN2gnaf27AE2-2" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#f5f5f5;fontColor=#333333;strokeColor=default;" parent="1" vertex="1">
<mxGeometry x="200" y="270" width="680" height="340" as="geometry" />
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-1" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#f8cecc;strokeColor=default;" parent="1" vertex="1">
<mxGeometry x="250" y="480" width="540" height="80" as="geometry" />
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-3" value="" style="shape=flexArrow;endArrow=classic;html=1;rounded=0;entryX=0.47;entryY=1;entryDx=0;entryDy=0;entryPerimeter=0;exitX=0.683;exitY=0.008;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" edge="1" source="QNMoGRvylN2gnaf27AE2-24">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="650.4" y="435" as="sourcePoint" />
<mxPoint x="649.9999999999999" y="355" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-4" value="" style="shape=flexArrow;endArrow=classic;html=1;rounded=0;exitX=0.588;exitY=0.999;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.489;entryY=0.019;entryDx=0;entryDy=0;entryPerimeter=0;" parent="1" edge="1" target="QNMoGRvylN2gnaf27AE2-23">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="579.7999999999997" y="354.99999999999994" as="sourcePoint" />
<mxPoint x="579.96" y="435.16" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-5" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.118;entryY=0.001;entryDx=0;entryDy=0;entryPerimeter=0;" parent="1" edge="1" source="QNMoGRvylN2gnaf27AE2-7">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="299.7999999999998" y="400" as="sourcePoint" />
<mxPoint x="299.7999999999998" y="480.0799999999999" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-6" value="" style="endArrow=classic;html=1;rounded=0;entryX=0.118;entryY=0.001;entryDx=0;entryDy=0;entryPerimeter=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" parent="1" edge="1" source="QNMoGRvylN2gnaf27AE2-8">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="370" y="360" as="sourcePoint" />
<mxPoint x="369.8" y="480" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-7" value="setClk()" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=default;" parent="1" vertex="1">
<mxGeometry x="270" y="325" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-8" value="setReset()" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=default;" parent="1" vertex="1">
<mxGeometry x="340" y="325" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-9" value="enable()" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=default;" parent="1" vertex="1">
<mxGeometry x="410" y="325" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-10" value="setInitial()" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=default;" parent="1" vertex="1">
<mxGeometry x="480" y="325" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-11" value="setBtn()" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=default;" parent="1" vertex="1">
<mxGeometry x="550" y="325" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-12" value="getLed()" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=default;" parent="1" vertex="1">
<mxGeometry x="620" y="325" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-13" value="loadRAM" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=default;" parent="1" vertex="1">
<mxGeometry x="690" y="325" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-14" value="dumpRAM()" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=default;" parent="1" vertex="1">
<mxGeometry x="760" y="325" width="70" height="30" as="geometry" />
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-15" value="cpu_harness" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="790" y="580" width="90" height="30" as="geometry" />
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-20" value="cpu (device under test)" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="650" y="530" width="140" height="30" as="geometry" />
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-21" value="clk" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="280" y="480" width="40" height="30" as="geometry" />
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-22" value="rst" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="345" y="480" width="40" height="30" as="geometry" />
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-23" value="btn[6:0]" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="550" y="480" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-24" value="led[7:0]" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="610" y="480" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-25" value="DPI-C tasks and functions" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="500" y="295" width="160" height="30" as="geometry" />
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-26" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=default;" parent="1" vertex="1">
<mxGeometry x="200" y="80" width="680" height="160" as="geometry" />
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-27" value="tb_cpu_harness" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="780" y="210" width="110" height="30" as="geometry" />
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-28" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=default;" parent="1" vertex="1">
<mxGeometry x="610" y="100" width="130" height="110" as="geometry" />
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-29" value="&lt;b&gt;class cpu&lt;/b&gt;&lt;div&gt;cpu::tick()&lt;/div&gt;&lt;div&gt;cpu::setReset()&lt;/div&gt;&lt;div&gt;cpu::waitClocks()&lt;/div&gt;&lt;div&gt;cpu::loadRAM()&lt;/div&gt;&lt;div&gt;...&lt;/div&gt;" style="text;html=1;align=left;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="630" y="110" width="110" height="100" as="geometry" />
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-30" value="" style="endArrow=classic;html=1;rounded=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;exitX=0.052;exitY=0.966;exitDx=0;exitDy=0;exitPerimeter=0;flowAnimation=0;shadow=0;dashed=1;" parent="1" source="QNMoGRvylN2gnaf27AE2-28" target="QNMoGRvylN2gnaf27AE2-7" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="940" y="260" as="sourcePoint" />
<mxPoint x="500" y="400" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-31" value="" style="endArrow=classic;html=1;rounded=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;exitX=0.138;exitY=1.004;exitDx=0;exitDy=0;exitPerimeter=0;dashed=1;" parent="1" source="QNMoGRvylN2gnaf27AE2-28" target="QNMoGRvylN2gnaf27AE2-8" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="557" y="216" as="sourcePoint" />
<mxPoint x="310" y="335" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-32" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.834;exitY=1.006;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.603;entryY=0.068;entryDx=0;entryDy=0;entryPerimeter=0;dashed=1;" parent="1" source="QNMoGRvylN2gnaf27AE2-29" target="QNMoGRvylN2gnaf27AE2-14" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="-20" y="450" as="sourcePoint" />
<mxPoint x="30" y="400" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-33" value="&lt;b&gt;&lt;font style=&quot;font-size: 19px;&quot;&gt;...&lt;/font&gt;&lt;/b&gt;" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="650" y="200" width="40" height="40" as="geometry" />
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-34" value="&lt;blockquote style=&quot;margin: 0 0 0 40px; border: none; padding: 0px;&quot;&gt;&lt;b&gt;main()&lt;/b&gt;&lt;div&gt;create cpu instance&lt;/div&gt;&lt;div&gt;cpu.loadRam(&quot;hexfile&quot;);&lt;/div&gt;&lt;div&gt;cpu.reset(10);&lt;/div&gt;&lt;div&gt;cpu.start();&lt;/div&gt;&lt;div&gt;...&lt;/div&gt;&lt;div&gt;cpu.stop();&lt;/div&gt;&lt;div&gt;cpu.delete();&lt;/div&gt;&lt;/blockquote&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=default;align=left;" parent="1" vertex="1">
<mxGeometry x="260" y="95" width="210" height="130" as="geometry" />
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-35" value="" style="shape=flexArrow;endArrow=classic;startArrow=classic;html=1;rounded=0;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=-0.002;entryY=0.547;entryDx=0;entryDy=0;entryPerimeter=0;fillColor=#bac8d3;strokeColor=default;" parent="1" source="QNMoGRvylN2gnaf27AE2-34" target="QNMoGRvylN2gnaf27AE2-28" edge="1">
<mxGeometry width="100" height="100" relative="1" as="geometry">
<mxPoint x="440" y="250" as="sourcePoint" />
<mxPoint x="530" y="160" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-36" value="&lt;font style=&quot;font-size: 20px;&quot;&gt;&lt;b&gt;C++&lt;/b&gt;&lt;/font&gt;" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;rotation=-90;" parent="1" vertex="1">
<mxGeometry x="930" y="140" width="60" height="40" as="geometry" />
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-37" value="&lt;font style=&quot;font-size: 20px;&quot;&gt;&lt;b&gt;SystemVerilog&lt;/b&gt;&lt;/font&gt;" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;rotation=-90;" parent="1" vertex="1">
<mxGeometry x="880" y="394" width="160" height="40" as="geometry" />
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-39" value="" style="endArrow=none;html=1;rounded=0;" parent="1" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="960" y="120" as="sourcePoint" />
<mxPoint x="960" y="80" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-40" value="" style="endArrow=none;html=1;rounded=0;" parent="1" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="959.66" y="240" as="sourcePoint" />
<mxPoint x="959.66" y="200" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-41" value="" style="endArrow=none;html=1;rounded=0;exitX=0.996;exitY=0.511;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" source="QNMoGRvylN2gnaf27AE2-37" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="959.66" y="325" as="sourcePoint" />
<mxPoint x="959.66" y="285" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-42" value="" style="endArrow=none;html=1;rounded=0;" parent="1" target="QNMoGRvylN2gnaf27AE2-37" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="959.66" y="560" as="sourcePoint" />
<mxPoint x="959.66" y="520" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="CcVjRRQ9gQZcIWVMXx_5-1" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=none;" vertex="1" parent="1">
<mxGeometry x="160" y="40" width="890" height="620" as="geometry" />
</mxCell>
<mxCell id="CcVjRRQ9gQZcIWVMXx_5-2" value="Text" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="1">
<mxGeometry x="1105" y="548" width="50" height="30" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>
@@ -0,0 +1,160 @@
<mxfile host="65bd71144e">
<diagram name="Page-1" id="vqPtpfTpDl2-zyb6y6Gk">
<mxGraphModel dx="1708" dy="882" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1169" pageHeight="827" math="0" shadow="0">
<root>
<mxCell id="0"/>
<mxCell id="1" parent="0"/>
<mxCell id="QNMoGRvylN2gnaf27AE2-2" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#f5f5f5;fontColor=#333333;strokeColor=default;" parent="1" vertex="1">
<mxGeometry x="200" y="270" width="680" height="340" as="geometry"/>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-1" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#f8cecc;strokeColor=default;" parent="1" vertex="1">
<mxGeometry x="250" y="480" width="540" height="80" as="geometry"/>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-3" value="" style="shape=flexArrow;endArrow=classic;html=1;rounded=0;entryX=0.47;entryY=1;entryDx=0;entryDy=0;entryPerimeter=0;exitX=0.683;exitY=0.008;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" source="QNMoGRvylN2gnaf27AE2-24" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="650.4" y="435" as="sourcePoint"/>
<mxPoint x="649.9999999999999" y="355" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-4" value="" style="shape=flexArrow;endArrow=classic;html=1;rounded=0;exitX=0.588;exitY=0.999;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.489;entryY=0.019;entryDx=0;entryDy=0;entryPerimeter=0;" parent="1" target="QNMoGRvylN2gnaf27AE2-23" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="579.7999999999997" y="354.99999999999994" as="sourcePoint"/>
<mxPoint x="579.96" y="435.16" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-5" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.118;entryY=0.001;entryDx=0;entryDy=0;entryPerimeter=0;" parent="1" source="QNMoGRvylN2gnaf27AE2-7" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="299.7999999999998" y="400" as="sourcePoint"/>
<mxPoint x="299.7999999999998" y="480.0799999999999" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-6" value="" style="endArrow=classic;html=1;rounded=0;entryX=0.118;entryY=0.001;entryDx=0;entryDy=0;entryPerimeter=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" parent="1" source="QNMoGRvylN2gnaf27AE2-8" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="370" y="360" as="sourcePoint"/>
<mxPoint x="369.8" y="480" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-7" value="setClk()" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=default;" parent="1" vertex="1">
<mxGeometry x="270" y="325" width="60" height="30" as="geometry"/>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-8" value="setReset()" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=default;" parent="1" vertex="1">
<mxGeometry x="340" y="325" width="60" height="30" as="geometry"/>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-9" value="enable()" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=default;" parent="1" vertex="1">
<mxGeometry x="410" y="325" width="60" height="30" as="geometry"/>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-10" value="setInitial()" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=default;" parent="1" vertex="1">
<mxGeometry x="480" y="325" width="60" height="30" as="geometry"/>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-11" value="setBtn()" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=default;" parent="1" vertex="1">
<mxGeometry x="550" y="325" width="60" height="30" as="geometry"/>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-12" value="getLed()" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=default;" parent="1" vertex="1">
<mxGeometry x="620" y="325" width="60" height="30" as="geometry"/>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-13" value="loadRAM" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=default;" parent="1" vertex="1">
<mxGeometry x="690" y="325" width="60" height="30" as="geometry"/>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-14" value="dumpRAM()" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=default;" parent="1" vertex="1">
<mxGeometry x="760" y="325" width="70" height="30" as="geometry"/>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-15" value="cpu_harness" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="790" y="580" width="90" height="30" as="geometry"/>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-20" value="cpu (device under test)" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="645" y="530" width="150" height="30" as="geometry"/>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-21" value="clk" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="280" y="480" width="40" height="30" as="geometry"/>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-22" value="rst" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="345" y="480" width="40" height="30" as="geometry"/>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-23" value="btn[6:0]" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="550" y="480" width="60" height="30" as="geometry"/>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-24" value="led[7:0]" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="610" y="480" width="60" height="30" as="geometry"/>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-25" value="DPI-C tasks and functions" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="500" y="295" width="160" height="30" as="geometry"/>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-26" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#d5e8d4;strokeColor=default;" parent="1" vertex="1">
<mxGeometry x="200" y="80" width="680" height="160" as="geometry"/>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-27" value="tb_cpu_harness" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="780" y="210" width="110" height="30" as="geometry"/>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-28" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=default;" parent="1" vertex="1">
<mxGeometry x="610" y="100" width="130" height="110" as="geometry"/>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-29" value="&lt;b&gt;class cpu&lt;/b&gt;&lt;div&gt;cpu::tick()&lt;/div&gt;&lt;div&gt;cpu::setReset()&lt;/div&gt;&lt;div&gt;cpu::waitClocks()&lt;/div&gt;&lt;div&gt;cpu::loadRAM()&lt;/div&gt;&lt;div&gt;...&lt;/div&gt;" style="text;html=1;align=left;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="630" y="110" width="110" height="100" as="geometry"/>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-30" value="" style="endArrow=classic;html=1;rounded=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;exitX=0.052;exitY=0.966;exitDx=0;exitDy=0;exitPerimeter=0;flowAnimation=0;shadow=0;dashed=1;" parent="1" source="QNMoGRvylN2gnaf27AE2-28" target="QNMoGRvylN2gnaf27AE2-7" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="940" y="260" as="sourcePoint"/>
<mxPoint x="500" y="400" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-31" value="" style="endArrow=classic;html=1;rounded=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;exitX=0.138;exitY=1.004;exitDx=0;exitDy=0;exitPerimeter=0;dashed=1;" parent="1" source="QNMoGRvylN2gnaf27AE2-28" target="QNMoGRvylN2gnaf27AE2-8" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="557" y="216" as="sourcePoint"/>
<mxPoint x="310" y="335" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-32" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.834;exitY=1.006;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.603;entryY=0.068;entryDx=0;entryDy=0;entryPerimeter=0;dashed=1;" parent="1" source="QNMoGRvylN2gnaf27AE2-29" target="QNMoGRvylN2gnaf27AE2-14" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="-20" y="450" as="sourcePoint"/>
<mxPoint x="30" y="400" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-33" value="&lt;b&gt;&lt;font style=&quot;font-size: 19px;&quot;&gt;...&lt;/font&gt;&lt;/b&gt;" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="650" y="200" width="40" height="40" as="geometry"/>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-34" value="&lt;blockquote style=&quot;margin: 0 0 0 40px; border: none; padding: 0px;&quot;&gt;&lt;b&gt;main()&lt;/b&gt;&lt;div&gt;create cpu instance&lt;/div&gt;&lt;div&gt;cpu.loadRam(&quot;hexfile&quot;);&lt;/div&gt;&lt;div&gt;cpu.reset(10);&lt;/div&gt;&lt;div&gt;cpu.start();&lt;/div&gt;&lt;div&gt;...&lt;/div&gt;&lt;div&gt;cpu.stop();&lt;/div&gt;&lt;div&gt;cpu.delete();&lt;/div&gt;&lt;/blockquote&gt;" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=default;align=left;" parent="1" vertex="1">
<mxGeometry x="260" y="95" width="210" height="130" as="geometry"/>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-35" value="" style="shape=flexArrow;endArrow=classic;startArrow=classic;html=1;rounded=0;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=-0.002;entryY=0.547;entryDx=0;entryDy=0;entryPerimeter=0;fillColor=#bac8d3;strokeColor=default;" parent="1" source="QNMoGRvylN2gnaf27AE2-34" target="QNMoGRvylN2gnaf27AE2-28" edge="1">
<mxGeometry width="100" height="100" relative="1" as="geometry">
<mxPoint x="440" y="250" as="sourcePoint"/>
<mxPoint x="530" y="160" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-36" value="&lt;font style=&quot;font-size: 20px;&quot;&gt;&lt;b&gt;C++&lt;/b&gt;&lt;/font&gt;" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;rotation=-90;" parent="1" vertex="1">
<mxGeometry x="930" y="140" width="60" height="40" as="geometry"/>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-37" value="&lt;font style=&quot;font-size: 20px;&quot;&gt;&lt;b&gt;SystemVerilog&lt;/b&gt;&lt;/font&gt;" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;rotation=-90;" parent="1" vertex="1">
<mxGeometry x="880" y="394" width="160" height="40" as="geometry"/>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-39" value="" style="endArrow=none;html=1;rounded=0;" parent="1" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="960" y="120" as="sourcePoint"/>
<mxPoint x="960" y="80" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-40" value="" style="endArrow=none;html=1;rounded=0;" parent="1" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="959.66" y="240" as="sourcePoint"/>
<mxPoint x="959.66" y="200" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-41" value="" style="endArrow=none;html=1;rounded=0;exitX=0.996;exitY=0.511;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" source="QNMoGRvylN2gnaf27AE2-37" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="959.66" y="325" as="sourcePoint"/>
<mxPoint x="959.66" y="285" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="QNMoGRvylN2gnaf27AE2-42" value="" style="endArrow=none;html=1;rounded=0;" parent="1" target="QNMoGRvylN2gnaf27AE2-37" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="959.66" y="560" as="sourcePoint"/>
<mxPoint x="959.66" y="520" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="2" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=none;" vertex="1" parent="1">
<mxGeometry x="160" y="40" width="890" height="620" as="geometry"/>
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>
Binary file not shown.

After

Width:  |  Height:  |  Size: 89 KiB

Binary file not shown.