aboutsummaryrefslogtreecommitdiff
path: root/content/StateOfPlay
diff options
context:
space:
mode:
authorRob Austein <sra@hactrn.net>2021-10-08 00:30:08 -0400
committerRob Austein <sra@hactrn.net>2021-10-08 00:30:08 -0400
commit71487660812754e5f26f26595b6c3d456f9f6db8 (patch)
treee960190262edcbb0164edbac1e52915c5a339442 /content/StateOfPlay
parentb11298b250f63daf091591d1638608325f766d9a (diff)
Get rid of conversion stuff, just build content -> website
Diffstat (limited to 'content/StateOfPlay')
-rw-r--r--content/StateOfPlay/novena__linkcells.svg198
-rw-r--r--content/StateOfPlay/novena_eim__linkcells.svg293
-rw-r--r--content/StateOfPlay/novena_i2c_simple__linkcells.svg178
-rw-r--r--content/StateOfPlay/trng__linkcells.svg158
4 files changed, 827 insertions, 0 deletions
diff --git a/content/StateOfPlay/novena__linkcells.svg b/content/StateOfPlay/novena__linkcells.svg
new file mode 100644
index 0000000..fdc7694
--- /dev/null
+++ b/content/StateOfPlay/novena__linkcells.svg
@@ -0,0 +1,198 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
+ "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<!-- Generated by graphviz version 2.26.3 (20100126.1600)
+ -->
+<!-- Title: v3graph Pages: 1 -->
+<svg width="803pt" height="332pt"
+ viewBox="0.00 0.00 803.00 332.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+<g id="graph1" class="graph" transform="scale(1 1) rotate(0) translate(4 328)">
+<title>v3graph</title>
+<polygon fill="white" stroke="white" points="-4,5 -4,-328 800,-328 800,5 -4,5"/>
+<!-- n0 -->
+<g id="node1" class="node"><title>n0</title>
+<ellipse fill="none" stroke="black" cx="107" cy="-306" rx="40.9919" ry="18"/>
+<text text-anchor="middle" x="107" y="-303.8" font-family="Times Roman,serif" font-size="8.00">novena_fpga</text>
+</g>
+<!-- n1 -->
+<g id="node2" class="node"><title>n1</title>
+<ellipse fill="none" stroke="black" cx="31" cy="-234" rx="31.1769" ry="18"/>
+<text text-anchor="middle" x="31" y="-231.8" font-family="Times Roman,serif" font-size="8.00">IBUFGDS</text>
+</g>
+<!-- n0&#45;&gt;n1 -->
+<g id="edge2" class="edge"><title>n0&#45;&gt;n1</title>
+<path fill="none" stroke="red" d="M89.7544,-289.662C79.4352,-279.886 66.1703,-267.319 54.8566,-256.601"/>
+<polygon fill="red" stroke="red" points="57.0625,-253.87 47.3958,-249.533 52.2483,-258.951 57.0625,-253.87"/>
+</g>
+<!-- n2 -->
+<g id="node3" class="node"><title>n2</title>
+<ellipse fill="none" stroke="black" cx="107" cy="-234" rx="27" ry="18"/>
+<text text-anchor="middle" x="107" y="-231.8" font-family="Times Roman,serif" font-size="8.00">IOBUF</text>
+</g>
+<!-- n0&#45;&gt;n2 -->
+<g id="edge4" class="edge"><title>n0&#45;&gt;n2</title>
+<path fill="none" stroke="red" d="M107,-287.831C107,-280.131 107,-270.974 107,-262.417"/>
+<polygon fill="red" stroke="red" points="110.5,-262.413 107,-252.413 103.5,-262.413 110.5,-262.413"/>
+</g>
+<!-- n3 -->
+<g id="node4" class="node"><title>n3</title>
+<ellipse fill="none" stroke="black" cx="203" cy="-234" rx="50.8068" ry="18"/>
+<text text-anchor="middle" x="203" y="-231.8" font-family="Times Roman,serif" font-size="8.00">coretest_hashes</text>
+</g>
+<!-- n0&#45;&gt;n3 -->
+<g id="edge6" class="edge"><title>n0&#45;&gt;n3</title>
+<path fill="none" stroke="red" d="M127.831,-290.377C141.015,-280.489 158.276,-267.543 172.933,-256.551"/>
+<polygon fill="red" stroke="red" points="175.31,-259.142 181.21,-250.342 171.11,-253.542 175.31,-259.142"/>
+</g>
+<!-- n4 -->
+<g id="node5" class="node"><title>n4</title>
+<ellipse fill="none" stroke="black" cx="56" cy="-162" rx="30.0222" ry="18"/>
+<text text-anchor="middle" x="56" y="-159.8" font-family="Times Roman,serif" font-size="8.00">coretest</text>
+</g>
+<!-- n3&#45;&gt;n4 -->
+<g id="edge8" class="edge"><title>n3&#45;&gt;n4</title>
+<path fill="none" stroke="red" d="M172.898,-219.256C148.318,-207.217 113.652,-190.238 88.456,-177.897"/>
+<polygon fill="red" stroke="red" points="89.8242,-174.67 79.304,-173.414 86.7451,-180.956 89.8242,-174.67"/>
+</g>
+<!-- n5 -->
+<g id="node6" class="node"><title>n5</title>
+<ellipse fill="none" stroke="black" cx="131" cy="-162" rx="27" ry="18"/>
+<text text-anchor="middle" x="131" y="-159.8" font-family="Times Roman,serif" font-size="8.00">i2c</text>
+</g>
+<!-- n3&#45;&gt;n5 -->
+<g id="edge10" class="edge"><title>n3&#45;&gt;n5</title>
+<path fill="none" stroke="red" d="M185.937,-216.937C176.166,-207.166 163.793,-194.793 153.264,-184.264"/>
+<polygon fill="red" stroke="red" points="155.533,-181.583 145.987,-176.987 150.583,-186.533 155.533,-181.583"/>
+</g>
+<!-- n6 -->
+<g id="node7" class="node"><title>n6</title>
+<ellipse fill="none" stroke="black" cx="203" cy="-162" rx="27" ry="18"/>
+<text text-anchor="middle" x="203" y="-159.8" font-family="Times Roman,serif" font-size="8.00">sha1</text>
+</g>
+<!-- n3&#45;&gt;n6 -->
+<g id="edge12" class="edge"><title>n3&#45;&gt;n6</title>
+<path fill="none" stroke="red" d="M203,-215.831C203,-208.131 203,-198.974 203,-190.417"/>
+<polygon fill="red" stroke="red" points="206.5,-190.413 203,-180.413 199.5,-190.413 206.5,-190.413"/>
+</g>
+<!-- n7 -->
+<g id="node8" class="node"><title>n7</title>
+<ellipse fill="none" stroke="black" cx="280" cy="-162" rx="27.2089" ry="18"/>
+<text text-anchor="middle" x="280" y="-159.8" font-family="Times Roman,serif" font-size="8.00">sha256</text>
+</g>
+<!-- n3&#45;&gt;n7 -->
+<g id="edge14" class="edge"><title>n3&#45;&gt;n7</title>
+<path fill="none" stroke="red" d="M221.248,-216.937C231.871,-207.003 245.371,-194.381 256.75,-183.74"/>
+<polygon fill="red" stroke="red" points="259.314,-186.135 264.228,-176.748 254.533,-181.022 259.314,-186.135"/>
+</g>
+<!-- n8 -->
+<g id="node9" class="node"><title>n8</title>
+<ellipse fill="none" stroke="black" cx="416" cy="-162" rx="27.2089" ry="18"/>
+<text text-anchor="middle" x="416" y="-159.8" font-family="Times Roman,serif" font-size="8.00">sha512</text>
+</g>
+<!-- n3&#45;&gt;n8 -->
+<g id="edge16" class="edge"><title>n3&#45;&gt;n8</title>
+<path fill="none" stroke="red" d="M240.102,-221.459C280.147,-207.922 343.379,-186.548 382.124,-173.451"/>
+<polygon fill="red" stroke="red" points="383.537,-176.668 391.89,-170.15 381.296,-170.037 383.537,-176.668"/>
+</g>
+<!-- n9 -->
+<g id="node10" class="node"><title>n9</title>
+<ellipse fill="none" stroke="black" cx="114" cy="-90" rx="30.0222" ry="18"/>
+<text text-anchor="middle" x="114" y="-87.8" font-family="Times Roman,serif" font-size="8.00">i2c_core</text>
+</g>
+<!-- n5&#45;&gt;n9 -->
+<g id="edge18" class="edge"><title>n5&#45;&gt;n9</title>
+<path fill="none" stroke="red" d="M126.798,-144.202C124.918,-136.241 122.658,-126.667 120.563,-117.796"/>
+<polygon fill="red" stroke="red" points="123.917,-116.771 118.213,-107.843 117.104,-118.379 123.917,-116.771"/>
+</g>
+<!-- n10 -->
+<g id="node11" class="node"><title>n10</title>
+<ellipse fill="none" stroke="black" cx="197" cy="-90" rx="35.2184" ry="18"/>
+<text text-anchor="middle" x="197" y="-87.8" font-family="Times Roman,serif" font-size="8.00">sha1_core</text>
+</g>
+<!-- n6&#45;&gt;n10 -->
+<g id="edge20" class="edge"><title>n6&#45;&gt;n10</title>
+<path fill="none" stroke="red" d="M201.486,-143.831C200.844,-136.131 200.081,-126.974 199.368,-118.417"/>
+<polygon fill="red" stroke="red" points="202.853,-118.088 198.534,-108.413 195.877,-118.669 202.853,-118.088"/>
+</g>
+<!-- n12 -->
+<g id="node13" class="node"><title>n12</title>
+<ellipse fill="none" stroke="black" cx="291" cy="-90" rx="40.9919" ry="18"/>
+<text text-anchor="middle" x="291" y="-87.8" font-family="Times Roman,serif" font-size="8.00">sha256_core</text>
+</g>
+<!-- n7&#45;&gt;n12 -->
+<g id="edge22" class="edge"><title>n7&#45;&gt;n12</title>
+<path fill="none" stroke="red" d="M282.776,-143.831C283.952,-136.131 285.351,-126.974 286.659,-118.417"/>
+<polygon fill="red" stroke="red" points="290.136,-118.827 288.187,-108.413 283.217,-117.77 290.136,-118.827"/>
+</g>
+<!-- n15 -->
+<g id="node16" class="node"><title>n15</title>
+<ellipse fill="none" stroke="black" cx="550" cy="-90" rx="40.9919" ry="18"/>
+<text text-anchor="middle" x="550" y="-87.8" font-family="Times Roman,serif" font-size="8.00">sha512_core</text>
+</g>
+<!-- n8&#45;&gt;n15 -->
+<g id="edge24" class="edge"><title>n8&#45;&gt;n15</title>
+<path fill="none" stroke="red" d="M437.233,-150.591C458.042,-139.41 490.134,-122.167 514.769,-108.93"/>
+<polygon fill="red" stroke="red" points="516.654,-111.89 523.807,-104.074 513.341,-105.724 516.654,-111.89"/>
+</g>
+<!-- n11 -->
+<g id="node12" class="node"><title>n11</title>
+<ellipse fill="none" stroke="black" cx="106" cy="-18" rx="42.8036" ry="18"/>
+<text text-anchor="middle" x="106" y="-15.8" font-family="Times Roman,serif" font-size="8.00">sha1_w_mem</text>
+</g>
+<!-- n10&#45;&gt;n11 -->
+<g id="edge26" class="edge"><title>n10&#45;&gt;n11</title>
+<path fill="none" stroke="red" d="M177.701,-74.7307C165.054,-64.7237 148.308,-51.4748 134.181,-40.2974"/>
+<polygon fill="red" stroke="red" points="136.231,-37.456 126.217,-33.9959 131.888,-42.9455 136.231,-37.456"/>
+</g>
+<!-- n13 -->
+<g id="node14" class="node"><title>n13</title>
+<ellipse fill="none" stroke="black" cx="227" cy="-18" rx="60.0444" ry="18"/>
+<text text-anchor="middle" x="227" y="-15.8" font-family="Times Roman,serif" font-size="8.00">sha256_k_constants</text>
+</g>
+<!-- n12&#45;&gt;n13 -->
+<g id="edge28" class="edge"><title>n12&#45;&gt;n13</title>
+<path fill="none" stroke="red" d="M275.833,-72.937C267.899,-64.0119 258.036,-52.9159 249.255,-43.0373"/>
+<polygon fill="red" stroke="red" points="251.762,-40.5895 242.503,-35.4407 246.531,-45.2401 251.762,-40.5895"/>
+</g>
+<!-- n14 -->
+<g id="node15" class="node"><title>n14</title>
+<ellipse fill="none" stroke="black" cx="354" cy="-18" rx="49.1506" ry="18"/>
+<text text-anchor="middle" x="354" y="-15.8" font-family="Times Roman,serif" font-size="8.00">sha256_w_mem</text>
+</g>
+<!-- n12&#45;&gt;n14 -->
+<g id="edge30" class="edge"><title>n12&#45;&gt;n14</title>
+<path fill="none" stroke="red" d="M305.93,-72.937C313.74,-64.0119 323.449,-52.9159 332.092,-43.0373"/>
+<polygon fill="red" stroke="red" points="334.788,-45.2712 338.739,-35.4407 329.52,-40.6617 334.788,-45.2712"/>
+</g>
+<!-- n16 -->
+<g id="node17" class="node"><title>n16</title>
+<ellipse fill="none" stroke="black" cx="481" cy="-18" rx="60.0444" ry="18"/>
+<text text-anchor="middle" x="481" y="-15.8" font-family="Times Roman,serif" font-size="8.00">sha512_k_constants</text>
+</g>
+<!-- n15&#45;&gt;n16 -->
+<g id="edge32" class="edge"><title>n15&#45;&gt;n16</title>
+<path fill="none" stroke="red" d="M533.997,-73.3008C525.368,-64.2965 514.547,-53.0052 504.936,-42.9769"/>
+<polygon fill="red" stroke="red" points="507.325,-40.4114 497.879,-35.6132 502.271,-45.2548 507.325,-40.4114"/>
+</g>
+<!-- n17 -->
+<g id="node18" class="node"><title>n17</title>
+<ellipse fill="none" stroke="black" cx="619" cy="-18" rx="60.0444" ry="18"/>
+<text text-anchor="middle" x="619" y="-15.8" font-family="Times Roman,serif" font-size="8.00">sha512_h_constants</text>
+</g>
+<!-- n15&#45;&gt;n17 -->
+<g id="edge34" class="edge"><title>n15&#45;&gt;n17</title>
+<path fill="none" stroke="red" d="M566.003,-73.3008C574.632,-64.2965 585.453,-53.0052 595.064,-42.9769"/>
+<polygon fill="red" stroke="red" points="597.729,-45.2548 602.121,-35.6132 592.675,-40.4114 597.729,-45.2548"/>
+</g>
+<!-- n18 -->
+<g id="node19" class="node"><title>n18</title>
+<ellipse fill="none" stroke="black" cx="746" cy="-18" rx="49.1506" ry="18"/>
+<text text-anchor="middle" x="746" y="-15.8" font-family="Times Roman,serif" font-size="8.00">sha512_w_mem</text>
+</g>
+<!-- n15&#45;&gt;n18 -->
+<g id="edge36" class="edge"><title>n15&#45;&gt;n18</title>
+<path fill="none" stroke="red" d="M581.491,-78.432C614.073,-66.463 665.226,-47.6721 701.84,-34.2221"/>
+<polygon fill="red" stroke="red" points="703.104,-37.4865 711.284,-30.753 700.69,-30.9158 703.104,-37.4865"/>
+</g>
+</g>
+</svg>
diff --git a/content/StateOfPlay/novena_eim__linkcells.svg b/content/StateOfPlay/novena_eim__linkcells.svg
new file mode 100644
index 0000000..20e3fab
--- /dev/null
+++ b/content/StateOfPlay/novena_eim__linkcells.svg
@@ -0,0 +1,293 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
+ "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<!-- Generated by graphviz version 2.26.3 (20100126.1600)
+ -->
+<!-- Title: v3graph Pages: 1 -->
+<svg width="1280pt" height="332pt"
+ viewBox="0.00 0.00 1280.00 332.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+<g id="graph1" class="graph" transform="scale(1 1) rotate(0) translate(4 328)">
+<title>v3graph</title>
+<polygon fill="white" stroke="white" points="-4,5 -4,-328 1277,-328 1277,5 -4,5"/>
+<!-- n0 -->
+<g id="node1" class="node"><title>n0</title>
+<ellipse fill="none" stroke="black" cx="389" cy="-306" rx="40.9919" ry="18"/>
+<text text-anchor="middle" x="389" y="-303.8" font-family="Times Roman,serif" font-size="8.00">novena_fpga</text>
+</g>
+<!-- n1 -->
+<g id="node2" class="node"><title>n1</title>
+<ellipse fill="none" stroke="black" cx="36" cy="-234" rx="35.8748" ry="18"/>
+<text text-anchor="middle" x="36" y="-231.8" font-family="Times Roman,serif" font-size="8.00">sync_reset</text>
+</g>
+<!-- n0&#45;&gt;n1 -->
+<g id="edge2" class="edge"><title>n0&#45;&gt;n1</title>
+<path fill="none" stroke="red" d="M349.027,-301.673C289.712,-294.653 175.253,-278.8 81,-252 78.3595,-251.249 75.6612,-250.397 72.9626,-249.483"/>
+<polygon fill="red" stroke="red" points="73.8864,-246.094 63.2924,-245.961 71.4913,-252.672 73.8864,-246.094"/>
+</g>
+<!-- n2 -->
+<g id="node3" class="node"><title>n2</title>
+<ellipse fill="none" stroke="black" cx="117" cy="-234" rx="27" ry="18"/>
+<text text-anchor="middle" x="117" y="-231.8" font-family="Times Roman,serif" font-size="8.00">IBUFG</text>
+</g>
+<!-- n0&#45;&gt;n2 -->
+<g id="edge4" class="edge"><title>n0&#45;&gt;n2</title>
+<path fill="none" stroke="red" d="M350.796,-299.306C304.495,-290.685 224.424,-274.135 158,-252 154.902,-250.968 151.718,-249.79 148.558,-248.542"/>
+<polygon fill="red" stroke="red" points="149.841,-245.284 139.264,-244.662 147.144,-251.744 149.841,-245.284"/>
+</g>
+<!-- n3 -->
+<g id="node4" class="node"><title>n3</title>
+<ellipse fill="none" stroke="black" cx="230" cy="-162" rx="27" ry="18"/>
+<text text-anchor="middle" x="230" y="-159.8" font-family="Times Roman,serif" font-size="8.00">BUFG</text>
+</g>
+<!-- n0&#45;&gt;n3 -->
+<g id="edge6" class="edge"><title>n0&#45;&gt;n3</title>
+<path fill="none" stroke="red" d="M349.539,-300.906C297.466,-293.281 210.14,-277.059 191,-252 175.353,-231.514 191.847,-203.787 207.942,-184.545"/>
+<polygon fill="red" stroke="red" points="210.728,-186.678 214.72,-176.864 205.479,-182.046 210.728,-186.678"/>
+</g>
+<!-- n4 -->
+<g id="node5" class="node"><title>n4</title>
+<ellipse fill="none" stroke="black" cx="227" cy="-234" rx="27.1355" ry="18"/>
+<text text-anchor="middle" x="227" y="-231.8" font-family="Times Roman,serif" font-size="8.00">bclk_dll</text>
+</g>
+<!-- n0&#45;&gt;n4 -->
+<g id="edge8" class="edge"><title>n0&#45;&gt;n4</title>
+<path fill="none" stroke="red" d="M358.996,-293.724C333.329,-283.084 295.493,-267.07 263,-252 261.241,-251.184 259.44,-250.334 257.627,-249.466"/>
+<polygon fill="red" stroke="red" points="259.124,-246.301 248.602,-245.059 256.052,-252.591 259.124,-246.301"/>
+</g>
+<!-- n5 -->
+<g id="node6" class="node"><title>n5</title>
+<ellipse fill="none" stroke="black" cx="308" cy="-234" rx="35.7957" ry="18"/>
+<text text-anchor="middle" x="308" y="-231.8" font-family="Times Roman,serif" font-size="8.00">dcm_delay</text>
+</g>
+<!-- n0&#45;&gt;n5 -->
+<g id="edge10" class="edge"><title>n0&#45;&gt;n5</title>
+<path fill="none" stroke="red" d="M370.62,-289.662C359.593,-279.86 345.409,-267.253 333.33,-256.516"/>
+<polygon fill="red" stroke="red" points="335.55,-253.806 325.751,-249.778 330.9,-259.038 335.55,-253.806"/>
+</g>
+<!-- n6 -->
+<g id="node7" class="node"><title>n6</title>
+<ellipse fill="none" stroke="black" cx="467" cy="-234" rx="32.9865" ry="18"/>
+<text text-anchor="middle" x="467" y="-231.8" font-family="Times Roman,serif" font-size="8.00">BUFIO2FB</text>
+</g>
+<!-- n0&#45;&gt;n6 -->
+<g id="edge12" class="edge"><title>n0&#45;&gt;n6</title>
+<path fill="none" stroke="red" d="M406.699,-289.662C417.29,-279.886 430.904,-267.319 442.516,-256.601"/>
+<polygon fill="red" stroke="red" points="445.199,-258.888 450.173,-249.533 440.451,-253.744 445.199,-258.888"/>
+</g>
+<!-- n7 -->
+<g id="node8" class="node"><title>n7</title>
+<ellipse fill="none" stroke="black" cx="389" cy="-234" rx="27" ry="18"/>
+<text text-anchor="middle" x="389" y="-231.8" font-family="Times Roman,serif" font-size="8.00">clk_dll</text>
+</g>
+<!-- n0&#45;&gt;n7 -->
+<g id="edge14" class="edge"><title>n0&#45;&gt;n7</title>
+<path fill="none" stroke="red" d="M389,-287.831C389,-280.131 389,-270.974 389,-262.417"/>
+<polygon fill="red" stroke="red" points="392.5,-262.413 389,-252.413 385.5,-262.413 392.5,-262.413"/>
+</g>
+<!-- n8 -->
+<g id="node9" class="node"><title>n8</title>
+<ellipse fill="none" stroke="black" cx="545" cy="-234" rx="27" ry="18"/>
+<text text-anchor="middle" x="545" y="-231.8" font-family="Times Roman,serif" font-size="8.00">FDSE</text>
+</g>
+<!-- n0&#45;&gt;n8 -->
+<g id="edge16" class="edge"><title>n0&#45;&gt;n8</title>
+<path fill="none" stroke="red" d="M418.251,-293.236C442.643,-282.497 478.25,-266.599 509,-252 510.752,-251.168 512.547,-250.306 514.355,-249.428"/>
+<polygon fill="red" stroke="red" points="515.94,-252.549 523.368,-244.995 512.85,-246.268 515.94,-252.549"/>
+</g>
+<!-- n9 -->
+<g id="node10" class="node"><title>n9</title>
+<ellipse fill="none" stroke="black" cx="621" cy="-234" rx="31.1769" ry="18"/>
+<text text-anchor="middle" x="621" y="-231.8" font-family="Times Roman,serif" font-size="8.00">IBUFGDS</text>
+</g>
+<!-- n0&#45;&gt;n9 -->
+<g id="edge18" class="edge"><title>n0&#45;&gt;n9</title>
+<path fill="none" stroke="red" d="M425.245,-297.517C464.23,-287.998 527.789,-271.334 581,-252 583.094,-251.239 585.231,-250.418 587.375,-249.558"/>
+<polygon fill="red" stroke="red" points="588.844,-252.737 596.699,-245.628 586.125,-246.287 588.844,-252.737"/>
+</g>
+<!-- n10 -->
+<g id="node11" class="node"><title>n10</title>
+<ellipse fill="none" stroke="black" cx="697" cy="-234" rx="27" ry="18"/>
+<text text-anchor="middle" x="697" y="-231.8" font-family="Times Roman,serif" font-size="8.00">IOBUF</text>
+</g>
+<!-- n0&#45;&gt;n10 -->
+<g id="edge20" class="edge"><title>n0&#45;&gt;n10</title>
+<path fill="none" stroke="red" d="M429.059,-301.457C482.893,-294.588 581.062,-279.364 661,-252 662.884,-251.355 664.795,-250.631 666.703,-249.852"/>
+<polygon fill="red" stroke="red" points="668.402,-252.926 676.087,-245.632 665.531,-246.542 668.402,-252.926"/>
+</g>
+<!-- n11 -->
+<g id="node12" class="node"><title>n11</title>
+<ellipse fill="none" stroke="black" cx="793" cy="-234" rx="50.8068" ry="18"/>
+<text text-anchor="middle" x="793" y="-231.8" font-family="Times Roman,serif" font-size="8.00">coretest_hashes</text>
+</g>
+<!-- n0&#45;&gt;n11 -->
+<g id="edge22" class="edge"><title>n0&#45;&gt;n11</title>
+<path fill="none" stroke="red" d="M428.799,-301.534C493.215,-293.909 624.092,-276.764 733,-252 737.056,-251.078 741.24,-250.029 745.422,-248.913"/>
+<polygon fill="red" stroke="red" points="746.424,-252.267 755.118,-246.212 744.546,-245.524 746.424,-252.267"/>
+</g>
+<!-- n12 -->
+<g id="node13" class="node"><title>n12</title>
+<ellipse fill="none" stroke="black" cx="36" cy="-162" rx="27" ry="18"/>
+<text text-anchor="middle" x="36" y="-159.8" font-family="Times Roman,serif" font-size="8.00">FDPE</text>
+</g>
+<!-- n1&#45;&gt;n12 -->
+<g id="edge24" class="edge"><title>n1&#45;&gt;n12</title>
+<path fill="none" stroke="red" d="M36,-215.831C36,-208.131 36,-198.974 36,-190.417"/>
+<polygon fill="red" stroke="red" points="39.5001,-190.413 36,-180.413 32.5001,-190.413 39.5001,-190.413"/>
+</g>
+<!-- n4&#45;&gt;n3 -->
+<g id="edge28" class="edge"><title>n4&#45;&gt;n3</title>
+<path fill="none" stroke="red" d="M227.757,-215.831C228.078,-208.131 228.459,-198.974 228.816,-190.417"/>
+<polygon fill="red" stroke="red" points="232.313,-190.55 229.233,-180.413 225.319,-190.259 232.313,-190.55"/>
+</g>
+<!-- n13 -->
+<g id="node14" class="node"><title>n13</title>
+<ellipse fill="none" stroke="black" cx="308" cy="-162" rx="28.9458" ry="18"/>
+<text text-anchor="middle" x="308" y="-159.8" font-family="Times Roman,serif" font-size="8.00">DCM_SP</text>
+</g>
+<!-- n4&#45;&gt;n13 -->
+<g id="edge26" class="edge"><title>n4&#45;&gt;n13</title>
+<path fill="none" stroke="red" d="M243.392,-219.43C254.953,-209.153 270.635,-195.213 283.654,-183.641"/>
+<polygon fill="red" stroke="red" points="286.206,-186.055 291.355,-176.796 281.555,-180.823 286.206,-186.055"/>
+</g>
+<!-- n5&#45;&gt;n3 -->
+<g id="edge32" class="edge"><title>n5&#45;&gt;n3</title>
+<path fill="none" stroke="red" d="M290.689,-218.021C279.718,-207.893 265.388,-194.666 253.409,-183.608"/>
+<polygon fill="red" stroke="red" points="255.656,-180.92 245.934,-176.709 250.908,-186.063 255.656,-180.92"/>
+</g>
+<!-- n5&#45;&gt;n13 -->
+<g id="edge30" class="edge"><title>n5&#45;&gt;n13</title>
+<path fill="none" stroke="red" d="M308,-215.831C308,-208.131 308,-198.974 308,-190.417"/>
+<polygon fill="red" stroke="red" points="311.5,-190.413 308,-180.413 304.5,-190.413 311.5,-190.413"/>
+</g>
+<!-- n7&#45;&gt;n3 -->
+<g id="edge34" class="edge"><title>n7&#45;&gt;n3</title>
+<path fill="none" stroke="red" d="M367.391,-222.957C362.671,-220.612 357.686,-218.186 353,-216 316.56,-199.003 306.779,-196.251 270,-180 267.323,-178.817 264.547,-177.583 261.764,-176.341"/>
+<polygon fill="red" stroke="red" points="262.958,-173.041 252.401,-172.145 260.095,-179.429 262.958,-173.041"/>
+</g>
+<!-- n7&#45;&gt;n13 -->
+<g id="edge36" class="edge"><title>n7&#45;&gt;n13</title>
+<path fill="none" stroke="red" d="M372.608,-219.43C361.047,-209.153 345.365,-195.213 332.346,-183.641"/>
+<polygon fill="red" stroke="red" points="334.445,-180.823 324.645,-176.796 329.794,-186.055 334.445,-180.823"/>
+</g>
+<!-- n14 -->
+<g id="node15" class="node"><title>n14</title>
+<ellipse fill="none" stroke="black" cx="690" cy="-162" rx="27" ry="18"/>
+<text text-anchor="middle" x="690" y="-159.8" font-family="Times Roman,serif" font-size="8.00">sha1</text>
+</g>
+<!-- n11&#45;&gt;n14 -->
+<g id="edge38" class="edge"><title>n11&#45;&gt;n14</title>
+<path fill="none" stroke="red" d="M769.885,-217.842C754.371,-206.997 733.86,-192.659 717.506,-181.227"/>
+<polygon fill="red" stroke="red" points="719.107,-178.076 708.906,-175.216 715.097,-183.814 719.107,-178.076"/>
+</g>
+<!-- n15 -->
+<g id="node16" class="node"><title>n15</title>
+<ellipse fill="none" stroke="black" cx="793" cy="-162" rx="27.2089" ry="18"/>
+<text text-anchor="middle" x="793" y="-159.8" font-family="Times Roman,serif" font-size="8.00">sha256</text>
+</g>
+<!-- n11&#45;&gt;n15 -->
+<g id="edge40" class="edge"><title>n11&#45;&gt;n15</title>
+<path fill="none" stroke="red" d="M793,-215.831C793,-208.131 793,-198.974 793,-190.417"/>
+<polygon fill="red" stroke="red" points="796.5,-190.413 793,-180.413 789.5,-190.413 796.5,-190.413"/>
+</g>
+<!-- n16 -->
+<g id="node17" class="node"><title>n16</title>
+<ellipse fill="none" stroke="black" cx="911" cy="-162" rx="27.2089" ry="18"/>
+<text text-anchor="middle" x="911" y="-159.8" font-family="Times Roman,serif" font-size="8.00">sha512</text>
+</g>
+<!-- n11&#45;&gt;n16 -->
+<g id="edge42" class="edge"><title>n11&#45;&gt;n16</title>
+<path fill="none" stroke="red" d="M818.604,-218.377C837.329,-206.952 862.746,-191.443 882.182,-179.584"/>
+<polygon fill="red" stroke="red" points="884.203,-182.451 890.916,-174.255 880.557,-176.476 884.203,-182.451"/>
+</g>
+<!-- n17 -->
+<g id="node18" class="node"><title>n17</title>
+<ellipse fill="none" stroke="black" cx="660" cy="-90" rx="35.2184" ry="18"/>
+<text text-anchor="middle" x="660" y="-87.8" font-family="Times Roman,serif" font-size="8.00">sha1_core</text>
+</g>
+<!-- n14&#45;&gt;n17 -->
+<g id="edge44" class="edge"><title>n14&#45;&gt;n17</title>
+<path fill="none" stroke="red" d="M682.738,-144.571C679.325,-136.38 675.176,-126.422 671.361,-117.267"/>
+<polygon fill="red" stroke="red" points="674.481,-115.653 667.404,-107.769 668.019,-118.346 674.481,-115.653"/>
+</g>
+<!-- n18 -->
+<g id="node19" class="node"><title>n18</title>
+<ellipse fill="none" stroke="black" cx="793" cy="-90" rx="40.9919" ry="18"/>
+<text text-anchor="middle" x="793" y="-87.8" font-family="Times Roman,serif" font-size="8.00">sha256_core</text>
+</g>
+<!-- n15&#45;&gt;n18 -->
+<g id="edge46" class="edge"><title>n15&#45;&gt;n18</title>
+<path fill="none" stroke="red" d="M793,-143.831C793,-136.131 793,-126.974 793,-118.417"/>
+<polygon fill="red" stroke="red" points="796.5,-118.413 793,-108.413 789.5,-118.413 796.5,-118.413"/>
+</g>
+<!-- n19 -->
+<g id="node20" class="node"><title>n19</title>
+<ellipse fill="none" stroke="black" cx="1027" cy="-90" rx="40.9919" ry="18"/>
+<text text-anchor="middle" x="1027" y="-87.8" font-family="Times Roman,serif" font-size="8.00">sha512_core</text>
+</g>
+<!-- n16&#45;&gt;n19 -->
+<g id="edge48" class="edge"><title>n16&#45;&gt;n19</title>
+<path fill="none" stroke="red" d="M930.941,-149.623C948.434,-138.765 974.195,-122.775 994.637,-110.087"/>
+<polygon fill="red" stroke="red" points="996.668,-112.946 1003.32,-104.698 992.977,-106.998 996.668,-112.946"/>
+</g>
+<!-- n20 -->
+<g id="node21" class="node"><title>n20</title>
+<ellipse fill="none" stroke="black" cx="583" cy="-18" rx="42.8036" ry="18"/>
+<text text-anchor="middle" x="583" y="-15.8" font-family="Times Roman,serif" font-size="8.00">sha1_w_mem</text>
+</g>
+<!-- n17&#45;&gt;n20 -->
+<g id="edge50" class="edge"><title>n17&#45;&gt;n20</title>
+<path fill="none" stroke="red" d="M642.911,-74.0209C632.688,-64.4611 619.51,-52.1394 608.118,-41.4871"/>
+<polygon fill="red" stroke="red" points="610.27,-38.7071 600.575,-34.4336 605.489,-43.8201 610.27,-38.7071"/>
+</g>
+<!-- n21 -->
+<g id="node22" class="node"><title>n21</title>
+<ellipse fill="none" stroke="black" cx="704" cy="-18" rx="60.0444" ry="18"/>
+<text text-anchor="middle" x="704" y="-15.8" font-family="Times Roman,serif" font-size="8.00">sha256_k_constants</text>
+</g>
+<!-- n18&#45;&gt;n21 -->
+<g id="edge52" class="edge"><title>n18&#45;&gt;n21</title>
+<path fill="none" stroke="red" d="M773.248,-74.0209C761.373,-64.4145 746.052,-52.0192 732.84,-41.3315"/>
+<polygon fill="red" stroke="red" points="734.913,-38.5061 724.937,-34.9377 730.51,-43.9483 734.913,-38.5061"/>
+</g>
+<!-- n22 -->
+<g id="node23" class="node"><title>n22</title>
+<ellipse fill="none" stroke="black" cx="831" cy="-18" rx="49.1506" ry="18"/>
+<text text-anchor="middle" x="831" y="-15.8" font-family="Times Roman,serif" font-size="8.00">sha256_w_mem</text>
+</g>
+<!-- n18&#45;&gt;n22 -->
+<g id="edge54" class="edge"><title>n18&#45;&gt;n22</title>
+<path fill="none" stroke="red" d="M802.393,-72.2022C806.732,-63.981 811.978,-54.041 816.787,-44.9301"/>
+<polygon fill="red" stroke="red" points="820.011,-46.3201 821.583,-35.8425 813.82,-43.0527 820.011,-46.3201"/>
+</g>
+<!-- n23 -->
+<g id="node24" class="node"><title>n23</title>
+<ellipse fill="none" stroke="black" cx="958" cy="-18" rx="60.0444" ry="18"/>
+<text text-anchor="middle" x="958" y="-15.8" font-family="Times Roman,serif" font-size="8.00">sha512_k_constants</text>
+</g>
+<!-- n19&#45;&gt;n23 -->
+<g id="edge56" class="edge"><title>n19&#45;&gt;n23</title>
+<path fill="none" stroke="red" d="M1011,-73.3008C1002.37,-64.2965 991.547,-53.0052 981.936,-42.9769"/>
+<polygon fill="red" stroke="red" points="984.325,-40.4114 974.879,-35.6132 979.271,-45.2548 984.325,-40.4114"/>
+</g>
+<!-- n24 -->
+<g id="node25" class="node"><title>n24</title>
+<ellipse fill="none" stroke="black" cx="1096" cy="-18" rx="60.0444" ry="18"/>
+<text text-anchor="middle" x="1096" y="-15.8" font-family="Times Roman,serif" font-size="8.00">sha512_h_constants</text>
+</g>
+<!-- n19&#45;&gt;n24 -->
+<g id="edge58" class="edge"><title>n19&#45;&gt;n24</title>
+<path fill="none" stroke="red" d="M1043,-73.3008C1051.63,-64.2965 1062.45,-53.0052 1072.06,-42.9769"/>
+<polygon fill="red" stroke="red" points="1074.73,-45.2548 1079.12,-35.6132 1069.67,-40.4114 1074.73,-45.2548"/>
+</g>
+<!-- n25 -->
+<g id="node26" class="node"><title>n25</title>
+<ellipse fill="none" stroke="black" cx="1223" cy="-18" rx="49.1506" ry="18"/>
+<text text-anchor="middle" x="1223" y="-15.8" font-family="Times Roman,serif" font-size="8.00">sha512_w_mem</text>
+</g>
+<!-- n19&#45;&gt;n25 -->
+<g id="edge60" class="edge"><title>n19&#45;&gt;n25</title>
+<path fill="none" stroke="red" d="M1058.49,-78.432C1091.07,-66.463 1142.23,-47.6721 1178.84,-34.2221"/>
+<polygon fill="red" stroke="red" points="1180.1,-37.4865 1188.28,-30.753 1177.69,-30.9158 1180.1,-37.4865"/>
+</g>
+</g>
+</svg>
diff --git a/content/StateOfPlay/novena_i2c_simple__linkcells.svg b/content/StateOfPlay/novena_i2c_simple__linkcells.svg
new file mode 100644
index 0000000..b131c81
--- /dev/null
+++ b/content/StateOfPlay/novena_i2c_simple__linkcells.svg
@@ -0,0 +1,178 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
+ "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<!-- Generated by graphviz version 2.26.3 (20100126.1600)
+ -->
+<!-- Title: v3graph Pages: 1 -->
+<svg width="740pt" height="332pt"
+ viewBox="0.00 0.00 740.00 332.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+<g id="graph1" class="graph" transform="scale(1 1) rotate(0) translate(4 328)">
+<title>v3graph</title>
+<polygon fill="white" stroke="white" points="-4,5 -4,-328 737,-328 737,5 -4,5"/>
+<!-- n0 -->
+<g id="node1" class="node"><title>n0</title>
+<ellipse fill="none" stroke="black" cx="121" cy="-306" rx="40.9919" ry="18"/>
+<text text-anchor="middle" x="121" y="-303.8" font-family="Times Roman,serif" font-size="8.00">novena_fpga</text>
+</g>
+<!-- n1 -->
+<g id="node2" class="node"><title>n1</title>
+<ellipse fill="none" stroke="black" cx="45" cy="-234" rx="31.1769" ry="18"/>
+<text text-anchor="middle" x="45" y="-231.8" font-family="Times Roman,serif" font-size="8.00">IBUFGDS</text>
+</g>
+<!-- n0&#45;&gt;n1 -->
+<g id="edge2" class="edge"><title>n0&#45;&gt;n1</title>
+<path fill="none" stroke="red" d="M103.754,-289.662C93.4352,-279.886 80.1703,-267.319 68.8566,-256.601"/>
+<polygon fill="red" stroke="red" points="71.0625,-253.87 61.3958,-249.533 66.2483,-258.951 71.0625,-253.87"/>
+</g>
+<!-- n2 -->
+<g id="node3" class="node"><title>n2</title>
+<ellipse fill="none" stroke="black" cx="121" cy="-234" rx="27" ry="18"/>
+<text text-anchor="middle" x="121" y="-231.8" font-family="Times Roman,serif" font-size="8.00">IOBUF</text>
+</g>
+<!-- n0&#45;&gt;n2 -->
+<g id="edge4" class="edge"><title>n0&#45;&gt;n2</title>
+<path fill="none" stroke="red" d="M121,-287.831C121,-280.131 121,-270.974 121,-262.417"/>
+<polygon fill="red" stroke="red" points="124.5,-262.413 121,-252.413 117.5,-262.413 124.5,-262.413"/>
+</g>
+<!-- n3 -->
+<g id="node4" class="node"><title>n3</title>
+<ellipse fill="none" stroke="black" cx="217" cy="-234" rx="50.8068" ry="18"/>
+<text text-anchor="middle" x="217" y="-231.8" font-family="Times Roman,serif" font-size="8.00">coretest_hashes</text>
+</g>
+<!-- n0&#45;&gt;n3 -->
+<g id="edge6" class="edge"><title>n0&#45;&gt;n3</title>
+<path fill="none" stroke="red" d="M141.831,-290.377C155.015,-280.489 172.276,-267.543 186.933,-256.551"/>
+<polygon fill="red" stroke="red" points="189.31,-259.142 195.21,-250.342 185.11,-253.542 189.31,-259.142"/>
+</g>
+<!-- n4 -->
+<g id="node5" class="node"><title>n4</title>
+<ellipse fill="none" stroke="black" cx="106" cy="-162" rx="30.0222" ry="18"/>
+<text text-anchor="middle" x="106" y="-159.8" font-family="Times Roman,serif" font-size="8.00">i2c_core</text>
+</g>
+<!-- n3&#45;&gt;n4 -->
+<g id="edge8" class="edge"><title>n3&#45;&gt;n4</title>
+<path fill="none" stroke="red" d="M192.366,-218.021C175.505,-207.084 153.071,-192.533 135.294,-181.002"/>
+<polygon fill="red" stroke="red" points="136.771,-177.788 126.476,-175.282 132.961,-183.66 136.771,-177.788"/>
+</g>
+<!-- n5 -->
+<g id="node6" class="node"><title>n5</title>
+<ellipse fill="none" stroke="black" cx="181" cy="-162" rx="27" ry="18"/>
+<text text-anchor="middle" x="181" y="-159.8" font-family="Times Roman,serif" font-size="8.00">sha1</text>
+</g>
+<!-- n3&#45;&gt;n5 -->
+<g id="edge10" class="edge"><title>n3&#45;&gt;n5</title>
+<path fill="none" stroke="red" d="M208.101,-216.202C203.898,-207.796 198.796,-197.592 194.157,-188.315"/>
+<polygon fill="red" stroke="red" points="197.151,-186.476 189.549,-179.097 190.89,-189.607 197.151,-186.476"/>
+</g>
+<!-- n6 -->
+<g id="node7" class="node"><title>n6</title>
+<ellipse fill="none" stroke="black" cx="253" cy="-162" rx="27.2089" ry="18"/>
+<text text-anchor="middle" x="253" y="-159.8" font-family="Times Roman,serif" font-size="8.00">sha256</text>
+</g>
+<!-- n3&#45;&gt;n6 -->
+<g id="edge12" class="edge"><title>n3&#45;&gt;n6</title>
+<path fill="none" stroke="red" d="M225.899,-216.202C230.102,-207.796 235.204,-197.592 239.843,-188.315"/>
+<polygon fill="red" stroke="red" points="243.11,-189.607 244.451,-179.097 236.849,-186.476 243.11,-189.607"/>
+</g>
+<!-- n7 -->
+<g id="node8" class="node"><title>n7</title>
+<ellipse fill="none" stroke="black" cx="371" cy="-162" rx="27.2089" ry="18"/>
+<text text-anchor="middle" x="371" y="-159.8" font-family="Times Roman,serif" font-size="8.00">sha512</text>
+</g>
+<!-- n3&#45;&gt;n7 -->
+<g id="edge14" class="edge"><title>n3&#45;&gt;n7</title>
+<path fill="none" stroke="red" d="M247.794,-219.603C274.374,-207.176 312.609,-189.299 339.417,-176.766"/>
+<polygon fill="red" stroke="red" points="341.157,-179.816 348.733,-172.411 338.192,-173.475 341.157,-179.816"/>
+</g>
+<!-- n8 -->
+<g id="node9" class="node"><title>n8</title>
+<ellipse fill="none" stroke="black" cx="120" cy="-90" rx="35.2184" ry="18"/>
+<text text-anchor="middle" x="120" y="-87.8" font-family="Times Roman,serif" font-size="8.00">sha1_core</text>
+</g>
+<!-- n5&#45;&gt;n8 -->
+<g id="edge16" class="edge"><title>n5&#45;&gt;n8</title>
+<path fill="none" stroke="red" d="M167.462,-146.021C159.575,-136.711 149.468,-124.782 140.609,-114.326"/>
+<polygon fill="red" stroke="red" points="143.271,-112.052 134.136,-106.685 137.93,-116.577 143.271,-112.052"/>
+</g>
+<!-- n9 -->
+<g id="node10" class="node"><title>n9</title>
+<ellipse fill="none" stroke="black" cx="253" cy="-90" rx="40.9919" ry="18"/>
+<text text-anchor="middle" x="253" y="-87.8" font-family="Times Roman,serif" font-size="8.00">sha256_core</text>
+</g>
+<!-- n6&#45;&gt;n9 -->
+<g id="edge18" class="edge"><title>n6&#45;&gt;n9</title>
+<path fill="none" stroke="red" d="M253,-143.831C253,-136.131 253,-126.974 253,-118.417"/>
+<polygon fill="red" stroke="red" points="256.5,-118.413 253,-108.413 249.5,-118.413 256.5,-118.413"/>
+</g>
+<!-- n10 -->
+<g id="node11" class="node"><title>n10</title>
+<ellipse fill="none" stroke="black" cx="487" cy="-90" rx="40.9919" ry="18"/>
+<text text-anchor="middle" x="487" y="-87.8" font-family="Times Roman,serif" font-size="8.00">sha512_core</text>
+</g>
+<!-- n7&#45;&gt;n10 -->
+<g id="edge20" class="edge"><title>n7&#45;&gt;n10</title>
+<path fill="none" stroke="red" d="M390.941,-149.623C408.434,-138.765 434.195,-122.775 454.637,-110.087"/>
+<polygon fill="red" stroke="red" points="456.668,-112.946 463.319,-104.698 452.977,-106.998 456.668,-112.946"/>
+</g>
+<!-- n11 -->
+<g id="node12" class="node"><title>n11</title>
+<ellipse fill="none" stroke="black" cx="43" cy="-18" rx="42.8036" ry="18"/>
+<text text-anchor="middle" x="43" y="-15.8" font-family="Times Roman,serif" font-size="8.00">sha1_w_mem</text>
+</g>
+<!-- n8&#45;&gt;n11 -->
+<g id="edge22" class="edge"><title>n8&#45;&gt;n11</title>
+<path fill="none" stroke="red" d="M102.911,-74.0209C92.6875,-64.4611 79.5102,-52.1394 68.1182,-41.4871"/>
+<polygon fill="red" stroke="red" points="70.2696,-38.7071 60.5749,-34.4336 65.4886,-43.8201 70.2696,-38.7071"/>
+</g>
+<!-- n12 -->
+<g id="node13" class="node"><title>n12</title>
+<ellipse fill="none" stroke="black" cx="164" cy="-18" rx="60.0444" ry="18"/>
+<text text-anchor="middle" x="164" y="-15.8" font-family="Times Roman,serif" font-size="8.00">sha256_k_constants</text>
+</g>
+<!-- n9&#45;&gt;n12 -->
+<g id="edge24" class="edge"><title>n9&#45;&gt;n12</title>
+<path fill="none" stroke="red" d="M233.248,-74.0209C221.373,-64.4145 206.052,-52.0192 192.84,-41.3315"/>
+<polygon fill="red" stroke="red" points="194.913,-38.5061 184.937,-34.9377 190.51,-43.9483 194.913,-38.5061"/>
+</g>
+<!-- n13 -->
+<g id="node14" class="node"><title>n13</title>
+<ellipse fill="none" stroke="black" cx="291" cy="-18" rx="49.1506" ry="18"/>
+<text text-anchor="middle" x="291" y="-15.8" font-family="Times Roman,serif" font-size="8.00">sha256_w_mem</text>
+</g>
+<!-- n9&#45;&gt;n13 -->
+<g id="edge26" class="edge"><title>n9&#45;&gt;n13</title>
+<path fill="none" stroke="red" d="M262.393,-72.2022C266.732,-63.981 271.978,-54.041 276.787,-44.9301"/>
+<polygon fill="red" stroke="red" points="280.011,-46.3201 281.583,-35.8425 273.82,-43.0527 280.011,-46.3201"/>
+</g>
+<!-- n14 -->
+<g id="node15" class="node"><title>n14</title>
+<ellipse fill="none" stroke="black" cx="418" cy="-18" rx="60.0444" ry="18"/>
+<text text-anchor="middle" x="418" y="-15.8" font-family="Times Roman,serif" font-size="8.00">sha512_k_constants</text>
+</g>
+<!-- n10&#45;&gt;n14 -->
+<g id="edge28" class="edge"><title>n10&#45;&gt;n14</title>
+<path fill="none" stroke="red" d="M470.997,-73.3008C462.368,-64.2965 451.547,-53.0052 441.936,-42.9769"/>
+<polygon fill="red" stroke="red" points="444.325,-40.4114 434.879,-35.6132 439.271,-45.2548 444.325,-40.4114"/>
+</g>
+<!-- n15 -->
+<g id="node16" class="node"><title>n15</title>
+<ellipse fill="none" stroke="black" cx="556" cy="-18" rx="60.0444" ry="18"/>
+<text text-anchor="middle" x="556" y="-15.8" font-family="Times Roman,serif" font-size="8.00">sha512_h_constants</text>
+</g>
+<!-- n10&#45;&gt;n15 -->
+<g id="edge30" class="edge"><title>n10&#45;&gt;n15</title>
+<path fill="none" stroke="red" d="M503.003,-73.3008C511.632,-64.2965 522.453,-53.0052 532.064,-42.9769"/>
+<polygon fill="red" stroke="red" points="534.729,-45.2548 539.121,-35.6132 529.675,-40.4114 534.729,-45.2548"/>
+</g>
+<!-- n16 -->
+<g id="node17" class="node"><title>n16</title>
+<ellipse fill="none" stroke="black" cx="683" cy="-18" rx="49.1506" ry="18"/>
+<text text-anchor="middle" x="683" y="-15.8" font-family="Times Roman,serif" font-size="8.00">sha512_w_mem</text>
+</g>
+<!-- n10&#45;&gt;n16 -->
+<g id="edge32" class="edge"><title>n10&#45;&gt;n16</title>
+<path fill="none" stroke="red" d="M518.491,-78.432C551.073,-66.463 602.226,-47.6721 638.84,-34.2221"/>
+<polygon fill="red" stroke="red" points="640.104,-37.4865 648.284,-30.753 637.69,-30.9158 640.104,-37.4865"/>
+</g>
+</g>
+</svg>
diff --git a/content/StateOfPlay/trng__linkcells.svg b/content/StateOfPlay/trng__linkcells.svg
new file mode 100644
index 0000000..b9236df
--- /dev/null
+++ b/content/StateOfPlay/trng__linkcells.svg
@@ -0,0 +1,158 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
+ "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<!-- Generated by graphviz version 2.26.3 (20100126.1600)
+ -->
+<!-- Title: v3graph Pages: 1 -->
+<svg width="839pt" height="260pt"
+ viewBox="0.00 0.00 839.00 260.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+<g id="graph1" class="graph" transform="scale(1 1) rotate(0) translate(4 256)">
+<title>v3graph</title>
+<polygon fill="white" stroke="white" points="-4,5 -4,-256 836,-256 836,5 -4,5"/>
+<!-- n0 -->
+<g id="node1" class="node"><title>n0</title>
+<ellipse fill="none" stroke="black" cx="561" cy="-234" rx="27" ry="18"/>
+<text text-anchor="middle" x="561" y="-231.8" font-family="Times Roman,serif" font-size="8.00">trng</text>
+</g>
+<!-- n1 -->
+<g id="node2" class="node"><title>n1</title>
+<ellipse fill="none" stroke="black" cx="319" cy="-162" rx="35.7957" ry="18"/>
+<text text-anchor="middle" x="319" y="-159.8" font-family="Times Roman,serif" font-size="8.00">trng_mixer</text>
+</g>
+<!-- n0&#45;&gt;n1 -->
+<g id="edge2" class="edge"><title>n0&#45;&gt;n1</title>
+<path fill="none" stroke="red" d="M536.013,-226.566C494.35,-214.17 410.301,-189.164 359.904,-174.17"/>
+<polygon fill="red" stroke="red" points="360.879,-170.808 350.296,-171.311 358.883,-177.518 360.879,-170.808"/>
+</g>
+<!-- n2 -->
+<g id="node3" class="node"><title>n2</title>
+<ellipse fill="none" stroke="black" cx="500" cy="-162" rx="38.7629" ry="18"/>
+<text text-anchor="middle" x="500" y="-159.8" font-family="Times Roman,serif" font-size="8.00">trng_csprng</text>
+</g>
+<!-- n0&#45;&gt;n2 -->
+<g id="edge4" class="edge"><title>n0&#45;&gt;n2</title>
+<path fill="none" stroke="red" d="M547.462,-218.021C539.707,-208.868 529.807,-197.182 521.058,-186.855"/>
+<polygon fill="red" stroke="red" points="523.485,-184.305 514.35,-178.938 518.144,-188.83 523.485,-184.305"/>
+</g>
+<!-- n3 -->
+<g id="node4" class="node"><title>n3</title>
+<ellipse fill="none" stroke="black" cx="623" cy="-162" rx="54.9263" ry="18"/>
+<text text-anchor="middle" x="623" y="-159.8" font-family="Times Roman,serif" font-size="8.00">avalanche_entropy</text>
+</g>
+<!-- n0&#45;&gt;n3 -->
+<g id="edge6" class="edge"><title>n0&#45;&gt;n3</title>
+<path fill="none" stroke="red" d="M574.453,-218.377C582.343,-209.215 592.494,-197.427 601.472,-187"/>
+<polygon fill="red" stroke="red" points="604.179,-189.22 608.052,-179.359 598.875,-184.653 604.179,-189.22"/>
+</g>
+<!-- n4 -->
+<g id="node5" class="node"><title>n4</title>
+<ellipse fill="none" stroke="black" cx="756" cy="-162" rx="41.0684" ry="18"/>
+<text text-anchor="middle" x="756" y="-159.8" font-family="Times Roman,serif" font-size="8.00">rosc_entropy</text>
+</g>
+<!-- n0&#45;&gt;n4 -->
+<g id="edge8" class="edge"><title>n0&#45;&gt;n4</title>
+<path fill="none" stroke="red" d="M584.911,-225.171C617.256,-213.228 675.435,-191.747 714.871,-177.186"/>
+<polygon fill="red" stroke="red" points="716.298,-180.39 724.467,-173.643 713.873,-173.824 716.298,-180.39"/>
+</g>
+<!-- n5 -->
+<g id="node6" class="node"><title>n5</title>
+<ellipse fill="none" stroke="black" cx="230" cy="-90" rx="40.9919" ry="18"/>
+<text text-anchor="middle" x="230" y="-87.8" font-family="Times Roman,serif" font-size="8.00">sha512_core</text>
+</g>
+<!-- n1&#45;&gt;n5 -->
+<g id="edge10" class="edge"><title>n1&#45;&gt;n5</title>
+<path fill="none" stroke="red" d="M299.688,-146.377C287.411,-136.444 271.318,-123.426 257.691,-112.402"/>
+<polygon fill="red" stroke="red" points="259.557,-109.41 249.581,-105.841 255.155,-114.852 259.557,-109.41"/>
+</g>
+<!-- n6 -->
+<g id="node7" class="node"><title>n6</title>
+<ellipse fill="none" stroke="black" cx="393" cy="-90" rx="39.9156" ry="18"/>
+<text text-anchor="middle" x="393" y="-87.8" font-family="Times Roman,serif" font-size="8.00">chacha_core</text>
+</g>
+<!-- n2&#45;&gt;n6 -->
+<g id="edge12" class="edge"><title>n2&#45;&gt;n6</title>
+<path fill="none" stroke="red" d="M477.83,-147.082C462.296,-136.629 441.321,-122.515 424.116,-110.938"/>
+<polygon fill="red" stroke="red" points="425.761,-107.826 415.51,-105.147 421.853,-113.634 425.761,-107.826"/>
+</g>
+<!-- n7 -->
+<g id="node8" class="node"><title>n7</title>
+<ellipse fill="none" stroke="black" cx="500" cy="-90" rx="49.1506" ry="18"/>
+<text text-anchor="middle" x="500" y="-87.8" font-family="Times Roman,serif" font-size="8.00">trng_csprng_fifo</text>
+</g>
+<!-- n2&#45;&gt;n7 -->
+<g id="edge14" class="edge"><title>n2&#45;&gt;n7</title>
+<path fill="none" stroke="red" d="M500,-143.831C500,-136.131 500,-126.974 500,-118.417"/>
+<polygon fill="red" stroke="red" points="503.5,-118.413 500,-108.413 496.5,-118.413 503.5,-118.413"/>
+</g>
+<!-- n8 -->
+<g id="node9" class="node"><title>n8</title>
+<ellipse fill="none" stroke="black" cx="635" cy="-90" rx="68.2032" ry="18"/>
+<text text-anchor="middle" x="635" y="-87.8" font-family="Times Roman,serif" font-size="8.00">avalanche_entropy_core</text>
+</g>
+<!-- n3&#45;&gt;n8 -->
+<g id="edge16" class="edge"><title>n3&#45;&gt;n8</title>
+<path fill="none" stroke="red" d="M626.028,-143.831C627.312,-136.131 628.838,-126.974 630.264,-118.417"/>
+<polygon fill="red" stroke="red" points="633.739,-118.853 631.931,-108.413 626.835,-117.702 633.739,-118.853"/>
+</g>
+<!-- n9 -->
+<g id="node10" class="node"><title>n9</title>
+<ellipse fill="none" stroke="black" cx="776" cy="-90" rx="54.8483" ry="18"/>
+<text text-anchor="middle" x="776" y="-87.8" font-family="Times Roman,serif" font-size="8.00">rosc_entropy_core</text>
+</g>
+<!-- n4&#45;&gt;n9 -->
+<g id="edge18" class="edge"><title>n4&#45;&gt;n9</title>
+<path fill="none" stroke="red" d="M761.047,-143.831C763.209,-136.046 765.785,-126.773 768.185,-118.135"/>
+<polygon fill="red" stroke="red" points="771.581,-118.985 770.885,-108.413 764.836,-117.112 771.581,-118.985"/>
+</g>
+<!-- n10 -->
+<g id="node11" class="node"><title>n10</title>
+<ellipse fill="none" stroke="black" cx="60" cy="-18" rx="60.0444" ry="18"/>
+<text text-anchor="middle" x="60" y="-15.8" font-family="Times Roman,serif" font-size="8.00">sha512_k_constants</text>
+</g>
+<!-- n5&#45;&gt;n10 -->
+<g id="edge20" class="edge"><title>n5&#45;&gt;n10</title>
+<path fill="none" stroke="red" d="M200.388,-77.4586C173.864,-66.2247 134.594,-49.5929 104.327,-36.774"/>
+<polygon fill="red" stroke="red" points="105.418,-33.4347 94.8444,-32.7576 102.688,-39.8805 105.418,-33.4347"/>
+</g>
+<!-- n11 -->
+<g id="node12" class="node"><title>n11</title>
+<ellipse fill="none" stroke="black" cx="198" cy="-18" rx="60.0444" ry="18"/>
+<text text-anchor="middle" x="198" y="-15.8" font-family="Times Roman,serif" font-size="8.00">sha512_h_constants</text>
+</g>
+<!-- n5&#45;&gt;n11 -->
+<g id="edge22" class="edge"><title>n5&#45;&gt;n11</title>
+<path fill="none" stroke="red" d="M222.09,-72.2022C218.474,-64.0675 214.111,-54.2501 210.097,-45.2181"/>
+<polygon fill="red" stroke="red" points="213.19,-43.5592 205.93,-35.8425 206.793,-46.4022 213.19,-43.5592"/>
+</g>
+<!-- n12 -->
+<g id="node13" class="node"><title>n12</title>
+<ellipse fill="none" stroke="black" cx="325" cy="-18" rx="49.1506" ry="18"/>
+<text text-anchor="middle" x="325" y="-15.8" font-family="Times Roman,serif" font-size="8.00">sha512_w_mem</text>
+</g>
+<!-- n5&#45;&gt;n12 -->
+<g id="edge24" class="edge"><title>n5&#45;&gt;n12</title>
+<path fill="none" stroke="red" d="M250.614,-74.3771C263.66,-64.4891 280.742,-51.5429 295.246,-40.5506"/>
+<polygon fill="red" stroke="red" points="297.582,-43.1718 303.437,-34.3421 293.354,-37.593 297.582,-43.1718"/>
+</g>
+<!-- n13 -->
+<g id="node14" class="node"><title>n13</title>
+<ellipse fill="none" stroke="black" cx="426" cy="-18" rx="34.139" ry="18"/>
+<text text-anchor="middle" x="426" y="-15.8" font-family="Times Roman,serif" font-size="8.00">chacha_qr</text>
+</g>
+<!-- n6&#45;&gt;n13 -->
+<g id="edge26" class="edge"><title>n6&#45;&gt;n13</title>
+<path fill="none" stroke="red" d="M401.157,-72.2022C404.954,-63.9192 409.55,-53.8915 413.751,-44.7248"/>
+<polygon fill="red" stroke="red" points="416.952,-46.142 417.937,-35.593 410.588,-43.2254 416.952,-46.142"/>
+</g>
+<!-- n14 -->
+<g id="node15" class="node"><title>n14</title>
+<ellipse fill="none" stroke="black" cx="776" cy="-18" rx="27" ry="18"/>
+<text text-anchor="middle" x="776" y="-15.8" font-family="Times Roman,serif" font-size="8.00">rosc</text>
+</g>
+<!-- n9&#45;&gt;n14 -->
+<g id="edge28" class="edge"><title>n9&#45;&gt;n14</title>
+<path fill="none" stroke="red" d="M776,-71.8314C776,-64.131 776,-54.9743 776,-46.4166"/>
+<polygon fill="red" stroke="red" points="779.5,-46.4132 776,-36.4133 772.5,-46.4133 779.5,-46.4132"/>
+</g>
+</g>
+</svg>