Files

10 lines
1.5 KiB
XML

<svg xmlns="http://www.w3.org/2000/svg" width="600" height="210" viewBox="0 0 600 210" role="img" aria-labelledby="title desc">
<title id="title">Ścieżka dekodowania instrukcji RV32I</title><desc id="desc">Instrukcja jest dzielona na pola, dekoder wybiera klasę, a bank rejestrów dostarcza operandy.</desc>
<defs><marker id="a" markerWidth="9" markerHeight="9" refX="8" refY="3" orient="auto"><path d="M0 0L0 6L8 3z" fill="#16324a"/></marker></defs>
<rect width="600" height="210" fill="#f7fafc"/>
<g fill="#eef3f7" stroke="#16324a" stroke-width="2"><rect x="20" y="58" width="135" height="84" rx="10"/><rect x="220" y="58" width="135" height="84" rx="10"/><rect x="420" y="58" width="160" height="84" rx="10"/></g>
<g font-family="system-ui,sans-serif" text-anchor="middle" fill="#16324a"><text x="87" y="91" font-size="18" font-weight="700">INSTR[31:0]</text><text x="87" y="118" font-size="14">opcode · rd · rs1</text><text x="287" y="91" font-size="18" font-weight="700">DEKODER</text><text x="287" y="118" font-size="14">klasa / illegal</text><text x="500" y="91" font-size="18" font-weight="700">REGISTER FILE</text><text x="500" y="118" font-size="14">x0 · rs1 · rs2 · rd</text></g>
<g stroke="#16324a" stroke-width="3" marker-end="url(#a)"><path d="M155 100H210"/><path d="M355 100H410"/></g>
<text x="300" y="184" font-family="system-ui,sans-serif" text-anchor="middle" font-size="15" fill="#b6402d">Nieznane kodowanie → illegal, nigdy przypadkowe sterowanie.</text>
</svg>