New talk about TCG
authorRichard W.M. Jones <rjones@redhat.com>
Tue, 16 Apr 2024 14:40:57 +0000 (15:40 +0100)
committerRichard W.M. Jones <rjones@redhat.com>
Tue, 16 Apr 2024 14:40:57 +0000 (15:40 +0100)
2024-tcg/01-tcg-translation.svg [new file with mode: 0644]

diff --git a/2024-tcg/01-tcg-translation.svg b/2024-tcg/01-tcg-translation.svg
new file mode 100644 (file)
index 0000000..ec4876b
--- /dev/null
@@ -0,0 +1,310 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   width="210mm"
+   height="297mm"
+   viewBox="0 0 210 297"
+   version="1.1"
+   id="svg1"
+   inkscape:version="1.3.2 (091e20ef0f, 2023-11-25)"
+   sodipodi:docname="01-tcg-translation.svg"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:svg="http://www.w3.org/2000/svg">
+  <sodipodi:namedview
+     id="namedview1"
+     pagecolor="#ffffff"
+     bordercolor="#000000"
+     borderopacity="0.25"
+     inkscape:showpageshadow="2"
+     inkscape:pageopacity="0.0"
+     inkscape:pagecheckerboard="0"
+     inkscape:deskcolor="#d1d1d1"
+     inkscape:document-units="mm"
+     inkscape:zoom="1.0393815"
+     inkscape:cx="396.87064"
+     inkscape:cy="422.84763"
+     inkscape:window-width="1920"
+     inkscape:window-height="1029"
+     inkscape:window-x="0"
+     inkscape:window-y="27"
+     inkscape:window-maximized="1"
+     inkscape:current-layer="layer1" />
+  <defs
+     id="defs1">
+    <marker
+       style="overflow:visible"
+       id="marker10"
+       refX="0"
+       refY="0"
+       orient="auto-start-reverse"
+       inkscape:stockid="Triangle arrow"
+       markerWidth="1"
+       markerHeight="1"
+       viewBox="0 0 1 1"
+       inkscape:isstock="true"
+       inkscape:collect="always"
+       preserveAspectRatio="xMidYMid">
+      <path
+         transform="scale(0.5)"
+         style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:1pt"
+         d="M 5.77,0 -2.88,5 V -5 Z"
+         id="path10" />
+    </marker>
+    <marker
+       style="overflow:visible"
+       id="Triangle"
+       refX="0"
+       refY="0"
+       orient="auto-start-reverse"
+       inkscape:stockid="Triangle arrow"
+       markerWidth="1"
+       markerHeight="1"
+       viewBox="0 0 1 1"
+       inkscape:isstock="true"
+       inkscape:collect="always"
+       preserveAspectRatio="xMidYMid">
+      <path
+         transform="scale(0.5)"
+         style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:1pt"
+         d="M 5.77,0 -2.88,5 V -5 Z"
+         id="path135" />
+    </marker>
+    <rect
+       x="162.24125"
+       y="170.28457"
+       width="154.29239"
+       height="363.85593"
+       id="rect5" />
+    <rect
+       x="162.24125"
+       y="170.28457"
+       width="154.29239"
+       height="363.85593"
+       id="rect6" />
+  </defs>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1">
+    <rect
+       style="fill:none;stroke:#000000;stroke-width:0.264583"
+       id="rect1"
+       width="74.798347"
+       height="119.69866"
+       x="20.345798"
+       y="29.729326" />
+    <rect
+       style="fill:none;stroke:#000000;stroke-width:0.264583"
+       id="rect2"
+       width="77.662941"
+       height="155.75682"
+       x="110.99847"
+       y="30.05344" />
+    <g
+       id="g14">
+      <rect
+         style="fill:none;stroke:#000000;stroke-width:0.264583"
+         id="rect4"
+         width="37.450123"
+         height="24.308727"
+         x="37.793518"
+         y="38.232224" />
+      <text
+         xml:space="preserve"
+         transform="matrix(0.26458333,0,0,0.26458333,-4.2320215,-5.4130078)"
+         id="text4"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'Liberation Mono';-inkscape-font-specification:'Liberation Mono';white-space:pre;shape-inside:url(#rect5);fill:none;stroke:#000000"><tspan
+           x="162.24219"
+           y="180.96249"
+           id="tspan2"><tspan
+             style="fill:#000000"
+             id="tspan1">auipc   a5,0x13
+</tspan></tspan><tspan
+           x="162.24219"
+           y="195.96249"
+           id="tspan4"><tspan
+             style="fill:#000000"
+             id="tspan3">addi    a5,a5,1756
+</tspan></tspan><tspan
+           x="162.24219"
+           y="210.96249"
+           id="tspan8"><tspan
+             style="fill:#000000"
+             id="tspan7">sd      a5,8(s9)
+</tspan></tspan><tspan
+           x="162.24219"
+           y="225.96249"
+           id="tspan10"><tspan
+             style="fill:#000000"
+             id="tspan9">sd      a5,0(s9)
+</tspan></tspan><tspan
+           x="162.24219"
+           y="240.96249"
+           id="tspan29"><tspan
+             style="fill:#000000"
+             id="tspan28">j       591c
+</tspan></tspan></text>
+    </g>
+    <g
+       id="g15">
+      <text
+         xml:space="preserve"
+         transform="matrix(0.26458333,0,0,0.26458333,-4.8443119,27.385114)"
+         id="text6"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'Liberation Mono';-inkscape-font-specification:'Liberation Mono';white-space:pre;shape-inside:url(#rect6);fill:none;stroke:#000000"><tspan
+           x="162.24219"
+           y="180.96249"
+           id="tspan31"><tspan
+             style="fill:#000000"
+             id="tspan30">
+</tspan></tspan><tspan
+           x="162.24219"
+           y="195.96249"
+           id="tspan33"><tspan
+             style="fill:#000000"
+             id="tspan32">mv      a0,a3
+</tspan></tspan><tspan
+           x="162.24219"
+           y="210.96249"
+           id="tspan35"><tspan
+             style="fill:#000000"
+             id="tspan34">sd      a3,-296(s0)
+</tspan></tspan><tspan
+           x="162.24219"
+           y="225.96249"
+           id="tspan37"><tspan
+             style="fill:#000000"
+             id="tspan36">jal     40a0
+</tspan></tspan><tspan
+           x="162.24219"
+           y="240.96249"
+           id="tspan39"><tspan
+             style="fill:#000000"
+             id="tspan38">beqz    a0,584e
+</tspan></tspan></text>
+      <rect
+         style="fill:none;stroke:#000000;stroke-width:0.264583"
+         id="rect7"
+         width="37.541172"
+         height="20.928635"
+         x="37.395733"
+         y="75.41626" />
+    </g>
+    <path
+       style="fill:none;stroke:#000000;stroke-width:0.264583;marker-end:url(#marker10)"
+       d="m 10.108932,33.475348 26.955989,7.618676"
+       id="path9"
+       sodipodi:nodetypes="cc" />
+    <path
+       style="fill:none;stroke:#000000;stroke-width:0.264583;marker-end:url(#marker10)"
+       d="m 39.903305,62.377129 1.506638,12.33334"
+       id="path11"
+       sodipodi:nodetypes="cc" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.9389px;font-family:'Liberation Mono';-inkscape-font-specification:'Liberation Mono';fill:none;stroke:#000000;stroke-width:0.264583"
+       x="124.62286"
+       y="52.453163"
+       id="text11"><tspan
+         sodipodi:role="line"
+         id="tspan11"
+         style="fill:#000000;stroke-width:0.264583"
+         x="124.62286"
+         y="52.453163">TCG ops</tspan><tspan
+         sodipodi:role="line"
+         style="fill:#000000;stroke-width:0.264583"
+         x="124.62286"
+         y="58.626789"
+         id="tspan12" /><tspan
+         sodipodi:role="line"
+         style="fill:#000000;stroke-width:0.264583"
+         x="124.62286"
+         y="64.800415"
+         id="tspan13" /><tspan
+         sodipodi:role="line"
+         style="fill:#000000;stroke-width:0.264583"
+         x="124.62286"
+         y="70.974037"
+         id="tspan14">native code</tspan><tspan
+         sodipodi:role="line"
+         style="fill:#000000;stroke-width:0.264583"
+         x="124.62286"
+         y="77.147659"
+         id="tspan22" /><tspan
+         sodipodi:role="line"
+         style="fill:#000000;stroke-width:0.264583"
+         x="124.62286"
+         y="83.321289"
+         id="tspan23" /><tspan
+         sodipodi:role="line"
+         style="fill:#000000;stroke-width:0.264583"
+         x="124.62286"
+         y="89.494911"
+         id="tspan24">TranslationBlock</tspan><tspan
+         sodipodi:role="line"
+         style="fill:#000000;stroke-width:0.264583"
+         x="124.62286"
+         y="95.668541"
+         id="tspan25">  (TB)</tspan><tspan
+         sodipodi:role="line"
+         style="fill:#000000;stroke-width:0.264583"
+         x="124.62286"
+         y="101.84216"
+         id="tspan15" /><tspan
+         sodipodi:role="line"
+         style="fill:#000000;stroke-width:0.264583"
+         x="124.62286"
+         y="108.01579"
+         id="tspan16" /><tspan
+         sodipodi:role="line"
+         style="fill:#000000;stroke-width:0.264583"
+         x="124.62286"
+         y="114.18941"
+         id="tspan17" /><tspan
+         sodipodi:role="line"
+         style="fill:#000000;stroke-width:0.264583"
+         x="124.62286"
+         y="120.36304"
+         id="tspan18" /><tspan
+         sodipodi:role="line"
+         style="fill:#000000;stroke-width:0.264583"
+         x="124.62286"
+         y="126.53667"
+         id="tspan19">(cpu state, address)</tspan><tspan
+         sodipodi:role="line"
+         style="fill:#000000;stroke-width:0.264583"
+         x="124.62286"
+         y="132.71028"
+         id="tspan20">    hashed to</tspan><tspan
+         sodipodi:role="line"
+         style="fill:#000000;stroke-width:0.264583"
+         x="124.62286"
+         y="138.88391"
+         id="tspan21">        TB</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.9389px;font-family:'Liberation Mono';-inkscape-font-specification:'Liberation Mono';fill:#000000;stroke:#000000;stroke-width:0.264583"
+       x="111.41705"
+       y="28.275999"
+       id="text26"><tspan
+         sodipodi:role="line"
+         id="tspan26"
+         style="stroke-width:0.264583"
+         x="111.41705"
+         y="28.275999">in qemu (host) memory.</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.9389px;font-family:'Liberation Mono';-inkscape-font-specification:'Liberation Mono';fill:#000000;stroke:#000000;stroke-width:0.264583"
+       x="21.956394"
+       y="27.18642"
+       id="text27"><tspan
+         sodipodi:role="line"
+         id="tspan27"
+         style="stroke-width:0.264583"
+         x="21.956394"
+         y="27.18642">guest physical page</tspan></text>
+  </g>
+</svg>