Mercurial > hg > ede
changeset 37:db6b8c9552bb
couple of last minute bug fixes
author | james <jb302@eecs.qmul.ac.uk> |
---|---|
date | Fri, 18 Apr 2014 18:58:58 +0100 |
parents | 8205f1734ff2 |
children | 9ff51da22b9b |
files | dbg/dbg.py docs/img/ede/system_overview.svg docs/img/emu/ELB816_system.svg docs/img/emu/controller.svg docs/img/emu/memory.svg docs/lyx/#emu.lyx# docs/lyx/asm.lyx docs/lyx/dbg.lyx docs/lyx/ede.lyx docs/lyx/emu.lyx docs/lyx/emu.lyx~ docs/lyx/final_report.lyx docs/lyx/final_report.lyx~ docs/lyx/intro.lyx docs/lyx/intro.lyx~ emu/.mem.h.swp emu/main.c emu52/main.c |
diffstat | 18 files changed, 12296 insertions(+), 20 deletions(-) [+] |
line wrap: on
line diff
--- a/dbg/dbg.py Thu Apr 17 15:50:42 2014 +0100 +++ b/dbg/dbg.py Fri Apr 18 18:58:58 2014 +0100 @@ -78,27 +78,27 @@ return self.rcv(lenl | (lenh << 8)) def get_a(self): + self.snd(0x08) + return self.rcv(1) + + def get_flags(self): self.snd(0x09) return self.rcv(1) - def get_flags(self): + def get_ir(self): self.snd(0x0A) return self.rcv(1) - def get_ir(self): + def run_len(self, lenh, lenl): self.snd(0x0B) - return self.rcv(1) - - def run_len(self, lenh, lenl): - self.snd(0x0C) self.snd(lenh) self.snd(lenl) def free_run(self): - self.snd(0x0D) + self.snd(0x0C) def set_bp(self, i, addrh, addrl): - self.snd(0x0E) + self.snd(0x0D) self.snd(i) self.snd(addrh) self.snd(addrl)
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/docs/img/ede/system_overview.svg Fri Apr 18 18:58:58 2014 +0100 @@ -0,0 +1,365 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + version="1.2" + width="744.09448" + height="1052.3622" + id="svg2" + inkscape:version="0.48.4 r9939" + sodipodi:docname="system_overview.svg"> + <sodipodi:namedview + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1" + objecttolerance="10" + gridtolerance="10" + guidetolerance="10" + inkscape:pageopacity="0" + inkscape:pageshadow="2" + inkscape:window-width="718" + inkscape:window-height="879" + id="namedview83" + showgrid="false" + inkscape:zoom="0.22425739" + inkscape:cx="372.04724" + inkscape:cy="526.18109" + inkscape:window-x="0" + inkscape:window-y="19" + inkscape:window-maximized="0" + inkscape:current-layer="svg2" /> + <defs + id="defs4"> + <marker + refX="0" + refY="0" + orient="auto" + id="TriangleOutM" + style="overflow:visible"> + <path + d="m 5.77,0 -8.65,5 0,-10 8.65,5 z" + transform="scale(0.4,0.4)" + id="path3344" + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" /> + </marker> + <marker + refX="0" + refY="0" + orient="auto" + id="TriangleInM" + style="overflow:visible"> + <path + d="m 5.77,0 -8.65,5 0,-10 8.65,5 z" + transform="scale(-0.4,-0.4)" + id="path3335" + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" /> + </marker> + <marker + refX="0" + refY="0" + orient="auto" + id="TriangleInM-8" + style="overflow:visible"> + <path + d="m 5.77,0 -8.65,5 0,-10 8.65,5 z" + transform="scale(-0.4,-0.4)" + id="path3335-0" + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" /> + </marker> + <marker + refX="0" + refY="0" + orient="auto" + id="TriangleOutM-9" + style="overflow:visible"> + <path + d="m 5.77,0 -8.65,5 0,-10 8.65,5 z" + transform="scale(0.4,0.4)" + id="path3344-6" + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" /> + </marker> + </defs> + <metadata + id="metadata7"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title></dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <g + id="layer1"> + <rect + width="351.98816" + height="49.126373" + x="71.674179" + y="112.34235" + id="rect2383" + style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;opacity:0.98999999;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1.87737501;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0.77000008;stroke-dasharray:none;stroke-dashoffset:0;font-family:Arial;-inkscape-font-specification:Arial" /> + <flowRoot + transform="matrix(0.4011573,0,0,0.4011573,178.31134,-29.837943)" + id="flowRoot2385" + xml:space="preserve" + style="font-size:39.88460541px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial"><flowRegion + id="flowRegion2387"><rect + width="167.14285" + height="103.57143" + x="122.14286" + y="388.79074" + id="rect2389" + style="font-size:39.88460541px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Arial;-inkscape-font-specification:Arial" /></flowRegion><flowPara + id="flowPara2391" + style="font-size:39.88460541px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Arial;-inkscape-font-specification:Arial">UI</flowPara></flowRoot> <rect + width="104.33029" + height="49.126404" + x="191.1982" + y="207.15591" + id="rect3173" + style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;opacity:0.98999999;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1.87737501;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0.77000008;stroke-dasharray:none;stroke-dashoffset:0;font-family:Arial;-inkscape-font-specification:Arial" /> + <flowRoot + transform="matrix(0.4011573,0,0,0.4011573,158.55948,63.962739)" + id="flowRoot3175" + xml:space="preserve" + style="font-size:39.88460541px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial"><flowRegion + id="flowRegion3177"><rect + width="251.72978" + height="99.783966" + x="122.14286" + y="388.79074" + id="rect3179" + style="font-size:39.88460541px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Arial;-inkscape-font-specification:Arial" /></flowRegion><flowPara + id="flowPara3181" + style="font-size:39.88460541px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Arial;-inkscape-font-specification:Arial">Assembler</flowPara></flowRoot> <rect + width="104.33029" + height="49.126404" + x="318.82559" + y="207.15591" + id="rect3183" + style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;opacity:0.98999999;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1.87737501;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0.77000008;stroke-dasharray:none;stroke-dashoffset:0;font-family:Arial;-inkscape-font-specification:Arial" /> + <flowRoot + transform="matrix(0.4011573,0,0,0.4011573,270.98184,62.929106)" + id="flowRoot3185" + xml:space="preserve" + style="font-size:39.88460541px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial"><flowRegion + id="flowRegion3187"><rect + width="251.72978" + height="99.783966" + x="122.14286" + y="388.79074" + id="rect3189" + style="font-size:39.88460541px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;text-anchor:middle;font-family:Arial;-inkscape-font-specification:Arial" /></flowRegion><flowPara + id="flowPara3191" + style="font-size:39.88460541px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;text-anchor:middle;font-family:Arial;-inkscape-font-specification:Arial">Debugger</flowPara></flowRoot> <path + d="m 245.00424,167.7258 0,33.42621" + id="path4496" + style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:none;stroke:#000000;stroke-width:1.87737501;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#TriangleInM);marker-end:url(#TriangleOutM);font-family:Arial;-inkscape-font-specification:Arial" /> + <path + d="m 370.99074,167.7258 0,33.42621" + id="path4498" + style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:none;stroke:#000000;stroke-width:1.87737501;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#TriangleInM);marker-end:url(#TriangleOutM);font-family:Arial;-inkscape-font-specification:Arial" /> + <rect + width="104.33029" + height="49.126404" + x="318.82559" + y="425.93878" + id="rect4500" + style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;opacity:0.98999999;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1.87737501;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0.77000008;stroke-dasharray:none;stroke-dashoffset:0;font-family:Arial;-inkscape-font-specification:Arial" /> + <flowRoot + transform="matrix(0.4011573,0,0,0.4011573,270.84121,274.13586)" + id="flowRoot4502" + xml:space="preserve" + style="font-size:39.88460541px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial"><flowRegion + id="flowRegion4504"><rect + width="251.72978" + height="99.783966" + x="122.14286" + y="388.79074" + id="rect4506" + style="font-size:39.88460541px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;text-anchor:middle;font-family:Arial;-inkscape-font-specification:Arial" /></flowRegion><flowPara + id="flowPara4508" + style="font-size:39.88460541px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;text-anchor:middle;font-family:Arial;-inkscape-font-specification:Arial">Host serial interface</flowPara></flowRoot> <path + d="m 370.99074,260.19993 0,158.94215" + id="path4510" + style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:none;stroke:#000000;stroke-width:1.87699997;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker-start:url(#TriangleInM-8);marker-end:url(#TriangleOutM);font-family:Arial;-inkscape-font-specification:Arial" /> + <rect + width="104.33029" + height="49.126404" + x="189.66219" + y="331.59903" + id="rect4512" + style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;opacity:0.98999999;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1.87737501;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0.77000008;stroke-dasharray:none;stroke-dashoffset:0;font-family:Arial;-inkscape-font-specification:Arial" /> + <flowRoot + transform="matrix(0.4011573,0,0,0.4011573,127.60782,178.95928)" + id="flowRoot4514" + xml:space="preserve" + style="font-size:39.88460541px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial"><flowRegion + id="flowRegion4516"><rect + width="328.53171" + height="153.88872" + x="122.14286" + y="388.79074" + id="rect4518" + style="font-size:39.88460541px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;text-anchor:middle;font-family:Arial;-inkscape-font-specification:Arial" /></flowRegion><flowPara + id="flowPara2481" + style="font-size:39.88460541px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;text-anchor:middle;font-family:Arial;-inkscape-font-specification:Arial">software </flowPara><flowPara + id="flowPara2483" + style="font-size:39.88460541px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;text-anchor:middle;font-family:Arial;-inkscape-font-specification:Arial">emulator</flowPara></flowRoot> <rect + width="104.33029" + height="49.126404" + x="189.66219" + y="426.00421" + id="rect5566" + style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;opacity:0.98999999;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1.87737501;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0.77000008;stroke-dasharray:none;stroke-dashoffset:0;font-family:Arial;-inkscape-font-specification:Arial" /> + <flowRoot + transform="matrix(0.4011573,0,0,0.4011573,144.362,274.20127)" + id="flowRoot5568" + xml:space="preserve" + style="font-size:39.88460541px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial"><flowRegion + id="flowRegion5570"><rect + width="251.72978" + height="99.783966" + x="122.14286" + y="388.79074" + id="rect5572" + style="font-size:39.88460541px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;text-anchor:middle;font-family:Arial;-inkscape-font-specification:Arial" /></flowRegion><flowPara + id="flowPara5574" + style="font-size:39.88460541px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;text-anchor:middle;font-family:Arial;-inkscape-font-specification:Arial">emulated peripherals</flowPara></flowRoot> <path + d="m 241.13724,385.6244 0,33.42621" + id="path5576" + style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:none;stroke:#000000;stroke-width:1.87737501;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#TriangleInM);marker-end:url(#TriangleOutM);font-family:Arial;-inkscape-font-specification:Arial" /> + <path + d="m 50.25095,508.54329 593.25049,0" + id="path5580" + style="fill:none;stroke:#000000;stroke-width:1.50190008;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:12.01519987, 12.01519987;stroke-dashoffset:0" /> + <path + d="m 370.99074,481.10231 0,62.39143" + id="path5582" + style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:none;stroke:#000000;stroke-width:1.87737501;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#TriangleInM);marker-end:url(#TriangleOutM);font-family:Arial;-inkscape-font-specification:Arial" /> + <rect + width="104.33029" + height="49.126404" + x="318.82559" + y="642.72968" + id="rect5594" + style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;opacity:0.98999999;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1.87737501;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0.77000008;stroke-dasharray:none;stroke-dashoffset:0;font-family:Arial;-inkscape-font-specification:Arial" /> + <flowRoot + transform="matrix(0.4011573,0,0,0.4011573,268.41674,491.30396)" + id="flowRoot5596" + xml:space="preserve" + style="font-size:39.88460541px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial"><flowRegion + id="flowRegion5598"><rect + width="264.32028" + height="185.39923" + x="122.14286" + y="388.79074" + id="rect5600" + style="font-size:39.88460541px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;text-anchor:middle;font-family:Arial;-inkscape-font-specification:Arial" /></flowRegion><flowPara + id="flowPara5602" + style="font-size:39.88460541px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;text-anchor:middle;font-family:Arial;-inkscape-font-specification:Arial">hardware emulator</flowPara></flowRoot> <rect + width="104.33029" + height="49.126404" + x="318.82559" + y="735.13483" + id="rect5606" + style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;opacity:0.98999999;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1.87737501;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0.77000008;stroke-dasharray:none;stroke-dashoffset:0;font-family:Arial;-inkscape-font-specification:Arial" /> + <flowRoot + transform="matrix(0.4011573,0,0,0.4011573,270.98184,583.33192)" + id="flowRoot5608" + xml:space="preserve" + style="font-size:39.88460541px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial"><flowRegion + id="flowRegion5610"><rect + width="251.72978" + height="99.783966" + x="122.14286" + y="388.79074" + id="rect5612" + style="font-size:39.88460541px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;text-anchor:middle;font-family:Arial;-inkscape-font-specification:Arial" /></flowRegion><flowPara + id="flowPara5614" + style="font-size:39.88460541px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;text-anchor:middle;font-family:Arial;-inkscape-font-specification:Arial">peripheral drivers</flowPara></flowRoot> <path + d="m 370.99074,696.75506 0,33.42621" + id="path5616" + style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:none;stroke:#000000;stroke-width:1.87737501;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#TriangleInM);marker-end:url(#TriangleOutM);font-family:Arial;-inkscape-font-specification:Arial" /> + <rect + width="104.33029" + height="49.126404" + x="318.82559" + y="549.09454" + id="rect5620" + style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;opacity:0.98999999;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1.87737501;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0.77000008;stroke-dasharray:none;stroke-dashoffset:0;font-family:Arial;-inkscape-font-specification:Arial" /> + <flowRoot + transform="matrix(0.4011573,0,0,0.4011573,270.84121,397.66883)" + id="flowRoot5622" + xml:space="preserve" + style="font-size:39.88460541px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial"><flowRegion + id="flowRegion5624"><rect + width="251.72978" + height="99.783966" + x="122.14286" + y="388.79074" + id="rect5626" + style="font-size:39.88460541px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;text-anchor:middle;font-family:Arial;-inkscape-font-specification:Arial" /></flowRegion><flowPara + id="flowPara5628" + style="font-size:39.88460541px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;text-anchor:middle;font-family:Arial;-inkscape-font-specification:Arial">MCU serial interface</flowPara></flowRoot> <flowRoot + transform="matrix(0.6948432,0,0,0.6948432,400.35591,-7.5818183)" + id="flowRoot5688" + xml:space="preserve" + style="font-size:40px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:TradeGothic-BoldTwo;-inkscape-font-specification:TradeGothic-BoldTwo"><flowRegion + id="flowRegion5690"><rect + width="251.72978" + height="99.783966" + x="122.14286" + y="388.79074" + id="rect5692" /></flowRegion><flowPara + id="flowPara5694" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Arial;-inkscape-font-specification:Arial">Host Software</flowPara></flowRoot> <flowRoot + transform="matrix(0.6948432,0,0,0.6948432,394.295,392.41818)" + id="flowRoot5704" + xml:space="preserve" + style="font-size:40px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:TradeGothic-BoldTwo;-inkscape-font-specification:TradeGothic-BoldTwo"><flowRegion + id="flowRegion5706"><rect + width="286.62064" + height="99.783966" + x="122.14286" + y="388.79074" + id="rect5708" /></flowRegion><flowPara + id="flowPara5710" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Arial;-inkscape-font-specification:Arial">MCU Software</flowPara></flowRoot> <path + d="m 365.17307,295.755 -123.24447,0 0,29.30028" + id="path2479" + style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:none;stroke:#000000;stroke-width:1.875;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker-start:url(#TriangleInM);marker-end:url(#TriangleOutM);font-family:Arial;-inkscape-font-specification:Arial" /> + <flowRoot + id="flowRoot2485" + xml:space="preserve" + style="font-size:40px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:TradeGothic-BoldTwo;-inkscape-font-specification:TradeGothic-BoldTwo"><flowRegion + id="flowRegion2487"><rect + width="82.832504" + height="55.558388" + x="199.00005" + y="661.43317" + id="rect2489" /></flowRegion><flowPara + id="flowPara2491" /></flowRoot> <text + x="159.6041" + y="929.1236" + id="text2517" + xml:space="preserve" + style="font-size:40px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:TradeGothic-BoldTwo;-inkscape-font-specification:TradeGothic-BoldTwo"><tspan + x="159.6041" + y="929.1236" + id="tspan2519" /></text> + <path + d="m 370.99074,604.28188 0,33.4262" + id="path5616-2" + style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:none;stroke:#000000;stroke-width:1.87737501;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#TriangleInM);marker-end:url(#TriangleOutM);font-family:Arial;-inkscape-font-specification:Arial" /> + </g> +</svg>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/docs/img/emu/ELB816_system.svg Fri Apr 18 18:58:58 2014 +0100 @@ -0,0 +1,4008 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="1052.3622" + height="744.09448" + id="svg2" + sodipodi:version="0.32" + inkscape:version="0.48.4 r9939" + sodipodi:docname="ELB816_system.svg" + inkscape:output_extension="org.inkscape.output.svg.inkscape" + version="1.0" + style="display:inline"> + <defs + id="defs4"> + <inkscape:perspective + sodipodi:type="inkscape:persp3d" + inkscape:vp_x="0 : 372.04724 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_z="1052.3622 : 372.04724 : 1" + inkscape:persp3d-origin="526.18109 : 248.03149 : 1" + id="perspective272" /> + <marker + inkscape:stockid="TriangleOutM" + orient="auto" + refY="0" + refX="0" + id="TriangleOutM" + style="overflow:visible"> + <path + id="path2489" + d="M 5.77,0 L -2.88,5 L -2.88,-5 L 5.77,0 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" + transform="scale(0.4,0.4)" /> + </marker> + <marker + inkscape:stockid="TriangleOutS" + orient="auto" + refY="0" + refX="0" + id="TriangleOutS" + style="overflow:visible"> + <path + id="path2486" + d="M 5.77,0 L -2.88,5 L -2.88,-5 L 5.77,0 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" + transform="scale(0.2,0.2)" /> + </marker> + <marker + inkscape:stockid="TriangleInS" + orient="auto" + refY="0" + refX="0" + id="TriangleInS" + style="overflow:visible"> + <path + id="path2495" + d="M 5.77,0 L -2.88,5 L -2.88,-5 L 5.77,0 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" + transform="scale(-0.2,-0.2)" /> + </marker> + <marker + inkscape:stockid="TriangleInM" + orient="auto" + refY="0" + refX="0" + id="TriangleInM" + style="overflow:visible"> + <path + id="path2498" + d="M 5.77,0 L -2.88,5 L -2.88,-5 L 5.77,0 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" + transform="scale(-0.4,-0.4)" /> + </marker> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="0.8338764" + inkscape:cx="439.89055" + inkscape:cy="310.73169" + inkscape:document-units="px" + inkscape:current-layer="layer10" + inkscape:window-width="1024" + inkscape:window-height="691" + inkscape:window-x="55" + inkscape:window-y="156" + showguides="true" + inkscape:guide-bbox="true" + width="1052.3622px" + height="744.09448px" + showgrid="false" + inkscape:window-maximized="0" /> + <metadata + id="metadata7"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title></dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:groupmode="layer" + id="layer11" + inkscape:label="base" + style="display:inline" + sodipodi:insensitive="true"> + <rect + style="opacity:0.98999999;fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect9291" + width="805.57666" + height="498.60968" + x="101.75706" + y="135.24805" /> + </g> + <g + inkscape:groupmode="layer" + id="layer9" + inkscape:label="control" + style="display:inline" + sodipodi:insensitive="true"> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutM);stroke-opacity:1;display:inline" + d="M 218.12726,343.0516 L 245.26248,343.0516" + id="path3529" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + id="path3531" + d="M 218.12726,351.0516 L 245.26248,351.0516" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutM);stroke-opacity:1;display:inline" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutM);stroke-opacity:1;display:inline" + d="M 218.12726,387.0516 L 245.26248,387.0516" + id="path3533" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.71828008;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:2.71827997, 5.43655994;stroke-dashoffset:0;stroke-opacity:1;display:inline" + d="M 230.8469,359.39094 L 230.8469,378.43875" + id="path3535" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + xml:space="preserve" + id="flowRoot3537" + style="font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:100%;writing-mode:lr-tb;text-anchor:middle;display:inline;font-family:Arial" + transform="translate(94.322827,-214.94084)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3539"><rect + id="rect3541" + width="59.358288" + height="50.878532" + x="145.85179" + y="562.2323" + style="font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:100%;writing-mode:lr-tb;text-anchor:middle;font-family:Arial" /></flowRegion><flowPara + id="flowPara3543">Internal control lines</flowPara></flowRoot> </g> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1" + style="display:inline"> + <flowRoot + xml:space="preserve" + id="flowRoot3918" + transform="translate(445.86417,12.548995)"><flowRegion + id="flowRegion3920"><rect + id="rect3922" + width="47.486629" + height="16.111536" + x="306.11917" + y="522.77289" /></flowRegion><flowPara + id="flowPara3930">Address</flowPara></flowRoot> <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + d="M 839.18647,185.31521 L 177.40469,185.31521" + id="path1493" + sodipodi:nodetypes="cc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <g + inkscape:groupmode="layer" + id="layer12" + inkscape:label="ALU" + style="display:inline" + sodipodi:insensitive="true"> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.89664149px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="M 402.09423,262.00528 L 441.54235,353.3305 L 487.69645,353.3305 L 522.28118,261.74497 L 475.76747,261.74497 L 463.59877,293.12742 L 451.28965,261.86484 L 402.09423,262.00528 z" + id="path1425" + sodipodi:nodetypes="cccccccc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot1427" + transform="translate(316.65935,-129.89971)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion1429"><rect + id="rect1431" + width="55.966385" + height="33.919022" + x="134.40413" + y="437.5799" /></flowRegion><flowPara + id="flowPara1433">ALU</flowPara></flowRoot> <rect + style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="rect1455" + width="65.714287" + height="17.857143" + x="468.80139" + y="223.14444" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot1457" + transform="translate(205.45347,-199.36059)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion1459"><rect + id="rect1461" + width="45.714287" + height="20" + x="280" + y="424.50504" /></flowRegion><flowPara + id="flowPara1463">TMP2</flowPara></flowRoot> <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 462.4945,352.96261 L 462.4945,393.80878 L 574.02182,393.80878 L 574.02182,192.30476" + id="path1475" + sodipodi:nodetypes="cccc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 501.65855,241.67848 L 501.65855,255.95891" + id="path1477" + sodipodi:nodetypes="cc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#TriangleInS);marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 501.65855,191.10554 L 501.65855,218.00273" + id="path1479" + sodipodi:nodetypes="cc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <rect + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + y="223.14444" + x="392.80139" + height="17.857143" + width="65.714287" + id="rect3562" + style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" /> + <flowRoot + style="display:inline" + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(129.45347,-199.36059)" + id="flowRoot3564" + xml:space="preserve"><flowRegion + id="flowRegion3566"><rect + y="424.50504" + x="280" + height="20" + width="45.714287" + id="rect3568" /></flowRegion><flowPara + id="flowPara3570">TMP1</flowPara></flowRoot> <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + sodipodi:nodetypes="cc" + id="path3572" + d="M 425.65855,241.67848 L 425.65855,256.80689" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + sodipodi:nodetypes="cc" + id="path3574" + d="M 425.65855,191.10554 L 425.65855,218.00273" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#TriangleInS);marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + </g> + <g + inkscape:groupmode="layer" + id="layer25" + inkscape:label="ELB816regfile3" + style="display:none" + sodipodi:insensitive="true"> + <rect + style="opacity:0.98999999;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.25;stroke-linecap:butt;stroke-miterlimit:4;stroke-dasharray:1.25, 2.5;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="rect4419" + width="31.779289" + height="9.1440411" + x="782.78986" + y="318.07211" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(528.37047,-149.81695)" + xml:space="preserve" + id="flowRoot4395" + style="font-size:9px;display:inline"><flowRegion + id="flowRegion4397"><rect + style="font-size:9px" + id="rect4399" + width="38.605877" + height="19.515076" + x="254.28572" + y="466.64789" /></flowRegion><flowPara + id="flowPara4401">(DPTR)</flowPara></flowRoot> <rect + y="336.52182" + x="782.63995" + height="10.792967" + width="31.779289" + id="rect4421" + style="opacity:0.98999999;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.25;stroke-linecap:butt;stroke-miterlimit:4;stroke-dasharray:1.25, 2.5;stroke-dashoffset:0;stroke-opacity:1;display:inline" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(534.8568,-131.17112)" + xml:space="preserve" + id="flowRoot4403" + style="font-size:9px;display:inline"><flowRegion + id="flowRegion4405"><rect + style="font-size:9px" + id="rect4407" + width="25.714285" + height="20.714285" + x="254.28572" + y="466.64789" /></flowRegion><flowPara + id="flowPara4409">(SP)</flowPara></flowRoot> <rect + style="opacity:0.98999999;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.25;stroke-linecap:butt;stroke-miterlimit:4;stroke-dasharray:1.25, 2.5;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="rect4423" + width="31.779289" + height="9.1440411" + x="782.63995" + y="357.12143" /> + <flowRoot + style="font-size:9px;display:inline" + id="flowRoot4411" + xml:space="preserve" + transform="translate(534.56676,-110.54499)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion4413"><rect + style="font-size:9px" + y="466.64789" + x="254.28572" + height="20.714285" + width="25.714285" + id="rect4415" /></flowRegion><flowPara + id="flowPara4417">(PC)</flowPara></flowRoot> </g> + <g + inkscape:groupmode="layer" + id="layer24" + inkscape:label="ELB816regfile2" + style="display:none" + sodipodi:insensitive="true"> + <path + style="fill:none;fill-rule:evenodd;stroke:#dadada;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:3, 3;stroke-dashoffset:0;stroke-opacity:1;display:inline" + d="M 799.21694,312.1911 L 799.21694,331.69453" + id="path4202" /> + <rect + style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="rect4204" + width="84.43927" + height="80.028313" + x="757.75537" + y="232.20062" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 841.96645,272.34677 L 757.9836,272.34677" + id="path4206" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + id="path4208" + d="M 841.96645,252.29411 L 757.9836,252.29411" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot4210" + transform="translate(533.95159,-212.87327)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion4212"><rect + id="rect4214" + width="22.857143" + height="16.428572" + x="257.85715" + y="447.36218" /></flowRegion><flowPara + id="flowPara4216">R0</flowPara></flowRoot> <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot4218" + transform="translate(537.66936,-213.06077)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion4220"><rect + id="rect4222" + width="25.714285" + height="20.714285" + x="254.28572" + y="466.64789" /></flowRegion><flowPara + id="flowPara4224">R1</flowPara></flowRoot> <flowRoot + style="display:inline" + id="flowRoot4226" + xml:space="preserve" + transform="translate(537.71623,-193.96702)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion4228"><rect + y="466.64789" + x="254.28572" + height="20.714285" + width="25.714285" + id="rect4230" /></flowRegion><flowPara + id="flowPara4232">R2</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="flowRoot4236" + xml:space="preserve" + transform="translate(570.5111,-151.33545)" + style="font-size:12px;fill:#000000;fill-opacity:1;display:inline"><flowRegion + id="flowRegion4238"><rect + style="font-size:12px;fill:#000000;fill-opacity:1" + y="466.64789" + x="254.28572" + height="20.714294" + width="28.412521" + id="rect4240" /></flowRegion><flowPara + id="flowPara4242">DPL</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="flowRoot4244" + xml:space="preserve" + transform="translate(497.72641,-151.33545)" + style="font-size:12px;fill:#000000;fill-opacity:1;display:inline"><flowRegion + id="flowRegion4246"><rect + style="font-size:12px;fill:#000000;fill-opacity:1" + y="466.64789" + x="254.28572" + height="20.41449" + width="30.810957" + id="rect4248" /></flowRegion><flowPara + id="flowPara4250">DPH</flowPara></flowRoot> <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="path4252" + d="M 841.96645,292.34677 L 757.9836,292.34677" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(537.71623,-173.96702)" + xml:space="preserve" + id="flowRoot4254" + style="display:inline"><flowRegion + id="flowRegion4256"><rect + id="rect4258" + width="25.714285" + height="20.714285" + x="254.28572" + y="466.64789" /></flowRegion><flowPara + id="flowPara4260">R3</flowPara></flowRoot> <path + id="path4262" + d="M 799.21694,331.74139 L 799.21694,351.24482" + style="fill:none;fill-rule:evenodd;stroke:#dadada;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:3, 3;stroke-dashoffset:0;stroke-opacity:1;display:inline" /> + <flowRoot + style="font-size:12px;fill:#000000;fill-opacity:1;display:inline" + transform="translate(570.5111,-131.78516)" + xml:space="preserve" + id="flowRoot4264" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion4266"><rect + style="font-size:12px;fill:#000000;fill-opacity:1" + id="rect4268" + width="32.010178" + height="20.114685" + x="254.28572" + y="466.64789" /></flowRegion><flowPara + id="flowPara4270">SPL</flowPara></flowRoot> <flowRoot + style="font-size:12px;fill:#000000;fill-opacity:1;display:inline" + transform="translate(497.72641,-131.78516)" + xml:space="preserve" + id="flowRoot4272" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion4274"><rect + style="font-size:12px;fill:#000000;fill-opacity:1" + id="rect4276" + width="32.609787" + height="19.81488" + x="254.28572" + y="466.64789" /></flowRegion><flowPara + id="flowPara4278">SPH</flowPara></flowRoot> <path + style="fill:none;fill-rule:evenodd;stroke:#dadada;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:3, 3;stroke-dashoffset:0;stroke-opacity:1;display:inline" + d="M 799.21694,351.3174 L 799.21694,370.82083" + id="path4280" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="flowRoot4282" + xml:space="preserve" + transform="translate(570.5111,-112.20915)" + style="font-size:12px;fill:#000000;fill-opacity:1;display:inline"><flowRegion + id="flowRegion4284"><rect + style="font-size:12px;fill:#000000;fill-opacity:1" + y="466.64789" + x="254.28572" + height="21.014099" + width="28.712326" + id="rect4286" /></flowRegion><flowPara + id="flowPara4288">PCL</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="flowRoot4290" + xml:space="preserve" + transform="translate(497.72641,-112.20915)" + style="font-size:12px;fill:#000000;fill-opacity:1;display:inline"><flowRegion + id="flowRegion4292"><rect + style="font-size:12px;fill:#000000;fill-opacity:1" + y="466.64789" + x="254.28572" + height="18.915466" + width="35.60783" + id="rect4294" /></flowRegion><flowPara + id="flowPara4296">PCH</flowPara></flowRoot> <flowRoot + style="font-size:9px;display:inline" + id="flowRoot4298" + xml:space="preserve" + transform="translate(446.25402,-149.81695)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion4300"><rect + y="466.64789" + x="254.28572" + height="19.515076" + width="38.605877" + id="rect4302" + style="font-size:9px" /></flowRegion><flowPara + id="flowPara4304">DPTR</flowPara></flowRoot> <flowRoot + style="font-size:9px;display:inline" + id="flowRoot4306" + xml:space="preserve" + transform="translate(457.82824,-131.17112)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion4308"><rect + y="466.64789" + x="254.28572" + height="20.714285" + width="25.714285" + id="rect4310" + style="font-size:9px" /></flowRegion><flowPara + id="flowPara4312">SP</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(457.47668,-110.54499)" + xml:space="preserve" + id="flowRoot4314" + style="font-size:9px;display:inline"><flowRegion + id="flowRegion4316"><rect + id="rect4318" + width="25.714285" + height="20.714285" + x="254.28572" + y="466.64789" + style="font-size:9px" /></flowRegion><flowPara + id="flowPara4320">PC</flowPara></flowRoot> <path + style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + d="M 727.62582,332.21437 L 874.53009,332.21437" + id="path4382" /> + <path + id="path4384" + d="M 727.62582,351.86313 L 874.53009,351.86313" + style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#TriangleInS);marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 798.32258,225.5566 L 798.32258,191.60228" + id="path4386" + sodipodi:nodetypes="cc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <rect + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + y="312.40689" + x="727.987" + height="58.545235" + width="146.46161" + id="rect4234" + style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" /> + </g> + <g + inkscape:groupmode="layer" + id="layer23" + inkscape:label="ELB816regfile" + style="display:inline"> + <g + id="g4064" + transform="translate(0,-10)"> + <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="path4058" + d="M 845.96645,266.34677 L 761.9836,266.34677" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 845.96645,246.29411 L 761.9836,246.29411" + id="path4060" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 845.96645,286.34677 L 761.9836,286.34677" + id="path4062" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <rect + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + y="226.20062" + x="761.75537" + height="80.028313" + width="84.43927" + id="rect3262" + style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" /> + </g> + <rect + style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="rect3096" + width="146.46161" + height="78.04866" + x="727.987" + y="302.40689" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="flowRoot3205" + xml:space="preserve" + transform="translate(577.71032,-160.13624)" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1;display:inline"><flowRegion + id="flowRegion3207"><rect + style="font-size:8px;fill:#9e9e9e;fill-opacity:1" + y="466.64789" + x="254.28572" + height="20.714294" + width="28.412521" + id="rect3209" /></flowRegion><flowPara + id="flowPara3211">(TPL)</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="flowRoot3213" + xml:space="preserve" + transform="translate(492.32212,-160.13624)" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1;display:inline"><flowRegion + id="flowRegion3215"><rect + style="font-size:8px;fill:#9e9e9e;fill-opacity:1" + y="466.64789" + x="254.28572" + height="20.41449" + width="30.810957" + id="rect3217" /></flowRegion><flowPara + id="flowPara3219">(TPH)</flowPara></flowRoot> <flowRoot + style="display:inline" + id="flowRoot3221" + xml:space="preserve" + transform="translate(524.81682,-161.96702)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3223"><rect + y="466.64789" + x="254.28572" + height="18.315857" + width="45.201584" + id="rect3225" /></flowRegion><flowPara + id="flowPara3227">(TMPA)</flowPara></flowRoot> <path + style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="M 727.62582,322.42637 L 874.53009,322.42637" + id="path3229" /> + <rect + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + y="222.20062" + x="755.75537" + height="80.028313" + width="84.43927" + id="rect3066" + style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" /> + <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="path3068" + d="M 839.96645,262.34677 L 755.9836,262.34677" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 839.96645,242.29411 L 755.9836,242.29411" + id="path3070" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(531.95159,-222.87327)" + id="flowRoot3072" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion3074"><rect + y="447.36218" + x="257.85715" + height="16.428572" + width="22.857143" + id="rect3076" /></flowRegion><flowPara + id="flowPara3078">R0</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(535.66936,-223.06077)" + id="flowRoot3080" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion3082"><rect + y="466.64789" + x="254.28572" + height="20.714285" + width="25.714285" + id="rect3084" /></flowRegion><flowPara + id="flowPara3086">R1</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(535.71623,-203.96702)" + xml:space="preserve" + id="flowRoot3088" + style="display:inline"><flowRegion + id="flowRegion3090"><rect + id="rect3092" + width="25.714285" + height="20.714285" + x="254.28572" + y="466.64789" /></flowRegion><flowPara + id="flowPara3094">R2</flowPara></flowRoot> <flowRoot + style="font-size:8px;fill:#9e9e9e;fill-opacity:1;display:inline" + transform="translate(577.71032,-142.13624)" + xml:space="preserve" + id="flowRoot3098" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3100"><rect + id="rect3102" + width="28.412521" + height="20.714294" + x="254.28572" + y="466.64789" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1" /></flowRegion><flowPara + id="flowPara3104">(DPL)</flowPara></flowRoot> <flowRoot + style="font-size:8px;fill:#9e9e9e;fill-opacity:1;display:inline" + transform="translate(492.32212,-142.13624)" + xml:space="preserve" + id="flowRoot3106" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3108"><rect + id="rect3110" + width="30.810957" + height="20.41449" + x="254.28572" + y="466.64789" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1" /></flowRegion><flowPara + id="flowPara3112">(DPH)</flowPara></flowRoot> <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 839.96645,282.34677 L 755.9836,282.34677" + id="path3139" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + id="flowRoot3141" + xml:space="preserve" + transform="translate(535.71623,-183.96702)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3143"><rect + y="466.64789" + x="254.28572" + height="20.714285" + width="25.714285" + id="rect3145" /></flowRegion><flowPara + id="flowPara3147">R3</flowPara></flowRoot> <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + sodipodi:nodetypes="cc" + id="path3300" + d="M 798.32258,212.2197 L 798.32258,191.60228" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#TriangleInS);marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="flowRoot3347" + xml:space="preserve" + transform="translate(577.71032,-122.58595)" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1;display:inline"><flowRegion + id="flowRegion3349"><rect + y="466.64789" + x="254.28572" + height="20.114685" + width="32.010178" + id="rect3351" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1" /></flowRegion><flowPara + id="flowPara3353">(SPL)</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="flowRoot3355" + xml:space="preserve" + transform="translate(492.32212,-122.58595)" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1;display:inline"><flowRegion + id="flowRegion3357"><rect + y="466.64789" + x="254.28572" + height="19.81488" + width="32.609787" + id="rect3359" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1" /></flowRegion><flowPara + id="flowPara3361">(SPH)</flowPara></flowRoot> <flowRoot + style="font-size:8px;fill:#9e9e9e;fill-opacity:1;display:inline" + transform="translate(577.71032,-103.00994)" + xml:space="preserve" + id="flowRoot3367" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3369"><rect + id="rect3371" + width="28.712326" + height="21.014099" + x="254.28572" + y="466.64789" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1" /></flowRegion><flowPara + id="flowPara3373">(PCL)</flowPara></flowRoot> <flowRoot + style="font-size:8px;fill:#9e9e9e;fill-opacity:1;display:inline" + transform="translate(492.32212,-103.00994)" + xml:space="preserve" + id="flowRoot3375" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3377"><rect + id="rect3379" + width="35.60783" + height="18.915466" + x="254.28572" + y="466.64789" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1" /></flowRegion><flowPara + id="flowPara3381">(PCH)</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(528.81682,-143.96702)" + xml:space="preserve" + id="flowRoot4177" + style="display:inline"><flowRegion + id="flowRegion4179"><rect + id="rect4181" + width="38.605877" + height="19.515076" + x="254.28572" + y="466.64789" /></flowRegion><flowPara + id="flowPara4183">DPTR</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(537.69084,-123.96702)" + xml:space="preserve" + id="flowRoot4185" + style="display:inline"><flowRegion + id="flowRegion4187"><rect + id="rect4189" + width="25.714285" + height="20.714285" + x="254.28572" + y="466.64789" /></flowRegion><flowPara + id="flowPara4191">SP</flowPara></flowRoot> <flowRoot + style="display:inline" + id="flowRoot4193" + xml:space="preserve" + transform="translate(537.23381,-105.36741)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion4195"><rect + y="466.64789" + x="254.28572" + height="20.714285" + width="25.714285" + id="rect4197" /></flowRegion><flowPara + id="flowPara4199">PC</flowPara></flowRoot> <path + id="path4389" + d="M 727.62582,340.42637 L 874.53009,340.42637" + style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" /> + <path + style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="M 727.62582,359.86313 L 874.53009,359.86313" + id="path4391" /> + <rect + style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="rect4451" + width="146.14145" + height="17.857178" + x="728.30701" + y="406.83582" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot4453" + transform="translate(506.05645,-16.781884)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion4455"><rect + id="rect4457" + width="218.40175" + height="30.792967" + x="280" + y="424.50504" /></flowRegion><flowPara + id="flowPara4459">MAR</flowPara></flowRoot> <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 799.5218,380.0832 L 799.5218,401.73154" + id="path4461" + sodipodi:nodetypes="cc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="path4463" + d="M 788.84367,394.42416 L 809.61519,387.33859" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.89908892px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(322.44731,-268.06521)" + id="flowRoot4465" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion4467"><rect + y="652.11774" + x="489.28189" + height="21.199389" + width="35.614975" + id="rect4469" /></flowRegion><flowPara + id="flowPara4471">16</flowPara></flowRoot> </g> + <g + inkscape:groupmode="layer" + id="PC_16_regfile" + style="display:none"> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#TriangleInS);marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 798.32258,244.7441 L 798.32258,191.60228" + id="path3000" + sodipodi:nodetypes="cc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <rect + style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="rect3212" + width="84.43927" + height="80.028313" + x="757.75537" + y="250.78851" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 841.96645,290.93466 L 757.9836,290.93466" + id="path3214" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + id="path3216" + d="M 841.96645,270.882 L 757.9836,270.882" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3218" + transform="translate(533.95159,-194.28538)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3220"><rect + id="rect3222" + width="22.857143" + height="16.428572" + x="257.85715" + y="447.36218" /></flowRegion><flowPara + id="flowPara3224">R0</flowPara></flowRoot> <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3226" + transform="translate(537.66936,-194.47288)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3228"><rect + id="rect3230" + width="25.714285" + height="20.714285" + x="254.28572" + y="466.64789" /></flowRegion><flowPara + id="flowPara3232">R1</flowPara></flowRoot> <flowRoot + style="display:inline" + id="flowRoot3234" + xml:space="preserve" + transform="translate(537.71623,-175.37913)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3236"><rect + y="466.64789" + x="254.28572" + height="20.714285" + width="25.714285" + id="rect3238" /></flowRegion><flowPara + id="flowPara3240">R2</flowPara></flowRoot> <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="path3260" + d="M 841.96645,310.93466 L 757.9836,310.93466" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(537.71623,-155.37913)" + xml:space="preserve" + id="flowRoot3262" + style="display:inline"><flowRegion + id="flowRegion3264"><rect + id="rect3266" + width="25.714285" + height="20.714285" + x="254.28572" + y="466.64789" /></flowRegion><flowPara + id="flowPara3268">R3</flowPara></flowRoot> <rect + style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="rect4550" + width="146.14145" + height="17.857178" + x="728.30701" + y="406.83582" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot4552" + transform="translate(506.05645,-16.781884)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion4554"><rect + id="rect4556" + width="218.40175" + height="30.792967" + x="280" + y="424.50504" /></flowRegion><flowPara + id="flowPara4558">MAR</flowPara></flowRoot> <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 799.5218,370.48946 L 799.5218,401.73154" + id="path4560" + sodipodi:nodetypes="cc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="path4562" + d="M 788.84367,390.42416 L 809.61519,383.33859" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.89908892px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(322.44731,-272.06521)" + id="flowRoot4564" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion4566"><rect + y="652.11774" + x="489.28189" + height="21.199389" + width="35.614975" + id="rect4568" /></flowRegion><flowPara + id="flowPara4570">16</flowPara></flowRoot> <path + style="fill:none;fill-rule:evenodd;stroke:#b1b1b1;stroke-width:1px;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="M 799.50398,352.61287 L 799.50398,349.91463" + id="path4583" /> + <path + id="path4585" + d="M 799.50398,333.71346 L 799.50398,331.01522" + style="fill:none;fill-rule:evenodd;stroke:#b1b1b1;stroke-width:1px;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1;display:inline" /> + <path + sodipodi:nodetypes="cc" + id="path4587" + d="M 799.50398,371.21248 L 799.50398,369.04422" + style="fill:none;fill-rule:evenodd;stroke:#b1b1b1;stroke-width:1px;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1;display:inline" /> + <flowRoot + style="font-size:8px;fill:#9e9e9e;fill-opacity:1;display:inline" + transform="translate(577.71032,-130.58595)" + xml:space="preserve" + id="flowRoot4589" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion4591"><rect + style="font-size:8px;fill:#9e9e9e;fill-opacity:1" + id="rect4593" + width="32.010178" + height="20.114685" + x="254.28572" + y="466.64789" /></flowRegion><flowPara + id="flowPara4595">(SPL)</flowPara></flowRoot> <flowRoot + style="font-size:8px;fill:#9e9e9e;fill-opacity:1;display:inline" + transform="translate(492.32212,-130.58595)" + xml:space="preserve" + id="flowRoot4597" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion4599"><rect + style="font-size:8px;fill:#9e9e9e;fill-opacity:1" + id="rect4601" + width="32.609787" + height="19.81488" + x="254.28572" + y="466.64789" /></flowRegion><flowPara + id="flowPara4603">(SPH)</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="flowRoot4605" + xml:space="preserve" + transform="translate(577.71032,-111.00994)" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1;display:inline"><flowRegion + id="flowRegion4607"><rect + style="font-size:8px;fill:#9e9e9e;fill-opacity:1" + y="466.64789" + x="254.28572" + height="21.014099" + width="28.712326" + id="rect4609" /></flowRegion><flowPara + id="flowPara4611">(PCL)</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="flowRoot4613" + xml:space="preserve" + transform="translate(492.32212,-111.00994)" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1;display:inline"><flowRegion + id="flowRegion4615"><rect + style="font-size:8px;fill:#9e9e9e;fill-opacity:1" + y="466.64789" + x="254.28572" + height="18.915466" + width="35.60783" + id="rect4617" /></flowRegion><flowPara + id="flowPara4619">(PCH)</flowPara></flowRoot> <flowRoot + style="display:inline" + id="flowRoot4621" + xml:space="preserve" + transform="translate(537.69084,-133.23898)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion4623"><rect + y="466.64789" + x="254.28572" + height="20.714285" + width="25.714285" + id="rect4625" /></flowRegion><flowPara + id="flowPara4627">SP</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(537.23381,-113.36741)" + xml:space="preserve" + id="flowRoot4629" + style="display:inline"><flowRegion + id="flowRegion4631"><rect + id="rect4633" + width="25.714285" + height="20.714285" + x="254.28572" + y="466.64789" /></flowRegion><flowPara + id="flowPara4635">PC</flowPara></flowRoot> <path + id="path4639" + d="M 727.62582,350.96372 L 874.53009,350.96372" + style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" /> + <rect + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + y="330.84488" + x="727.987" + height="40.224884" + width="146.46161" + id="rect3242" + style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" /> + </g> + <g + inkscape:groupmode="layer" + id="layer21" + inkscape:label="16bit-MAR" + style="display:none" + sodipodi:insensitive="true"> + <rect + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + y="406.83582" + x="728.30701" + height="17.857178" + width="146.14145" + id="rect3947" + style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(506.05645,-16.781884)" + id="flowRoot3949" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion3951"><rect + y="424.50504" + x="280" + height="30.792967" + width="218.40175" + id="rect3953" /></flowRegion><flowPara + id="flowPara3955">MAR</flowPara></flowRoot> <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + sodipodi:nodetypes="cc" + id="path3962" + d="M 799.5218,350.10274 L 799.5218,401.73154" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.89908892px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="M 788.84367,390.42416 L 809.61519,383.33859" + id="path3231" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3233" + transform="translate(322.44731,-272.06521)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3235"><rect + id="rect3237" + width="35.614975" + height="21.199389" + x="489.28189" + y="652.11774" /></flowRegion><flowPara + id="flowPara3239">16</flowPara></flowRoot> </g> + <g + inkscape:groupmode="layer" + id="layer26" + inkscape:label="PCTMP_regfile" + style="display:none" + sodipodi:insensitive="true"> + <rect + style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="rect3160" + width="84.43927" + height="118.71924" + x="757.75537" + y="250.78851" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + id="path3162" + d="M 841.96645,310.98731 L 757.9836,310.98731" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 841.96645,290.93466 L 757.9836,290.93466" + id="path3164" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + id="path3166" + d="M 841.96645,270.882 L 757.9836,270.882" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3168" + transform="translate(533.95159,-194.28538)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3170"><rect + id="rect3172" + width="22.857143" + height="16.428572" + x="257.85715" + y="447.36218" /></flowRegion><flowPara + id="flowPara3174">R0</flowPara></flowRoot> <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3176" + transform="translate(537.66936,-194.47288)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3178"><rect + id="rect3180" + width="25.714285" + height="20.714285" + x="254.28572" + y="466.64789" /></flowRegion><flowPara + id="flowPara3182">R1</flowPara></flowRoot> <flowRoot + style="display:inline" + id="flowRoot3184" + xml:space="preserve" + transform="translate(537.71623,-175.37913)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3186"><rect + y="466.64789" + x="254.28572" + height="20.714285" + width="25.714285" + id="rect3188" /></flowRegion><flowPara + id="flowPara3190">R2</flowPara></flowRoot> <flowRoot + style="display:inline" + transform="translate(537.59612,-153.74146)" + xml:space="preserve" + id="flowRoot3192" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3194"><rect + id="rect3196" + width="25.714285" + height="20.714285" + x="254.28572" + y="466.64789" /></flowRegion><flowPara + id="flowPara3198">R3</flowPara></flowRoot> <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#TriangleInS);marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 798.32258,244.7441 L 798.32258,191.60228" + id="path3200" + sodipodi:nodetypes="cc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 841.96645,330.98731 L 757.9836,330.98731" + id="path3202" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="flowRoot3204" + xml:space="preserve" + transform="translate(529.59612,-133.74146)" + style="display:inline"><flowRegion + id="flowRegion3206"><rect + y="466.64789" + x="254.28572" + height="18.315857" + width="41.903728" + id="rect3208" /></flowRegion><flowPara + id="flowPara3210">TMPA</flowPara></flowRoot> <rect + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + y="406.83582" + x="758.86969" + height="17.857147" + width="83.102974" + id="rect3213" + style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(506.05645,-16.781884)" + id="flowRoot3215" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion3217"><rect + y="424.50504" + x="280" + height="30.792967" + width="218.40175" + id="rect3220" /></flowRegion><flowPara + id="flowPara3222">MAR</flowPara></flowRoot> <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + sodipodi:nodetypes="cc" + id="path3224" + d="M 799.5218,369.88985 L 799.5218,401.73154" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="path3226" + d="M 788.84367,391.62338 L 809.61519,384.53781" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.89908892px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(322.44731,-270.86599)" + id="flowRoot3228" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion3230"><rect + y="652.11774" + x="489.28189" + height="21.199389" + width="35.614975" + id="rect3232" /></flowRegion><flowPara + id="flowPara3234">8</flowPara></flowRoot> <path + id="path3273" + d="M 841.96645,349.78809 L 757.9836,349.78809" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + transform="translate(537.59612,-114.94068)" + xml:space="preserve" + id="flowRoot3275" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3277"><rect + id="rect3279" + width="25.714285" + height="20.714285" + x="254.28572" + y="466.64789" /></flowRegion><flowPara + id="flowPara3281">PC</flowPara></flowRoot> </g> + <g + inkscape:groupmode="layer" + id="layer19" + inkscape:label="PC_regfile" + style="display:none" + sodipodi:insensitive="true"> + <rect + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + y="250.78851" + x="757.75537" + height="99.531738" + width="84.43927" + id="rect2892" + style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" /> + <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 841.96645,310.98731 L 757.9836,310.98731" + id="path2894" /> + <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="path2896" + d="M 841.96645,290.93466 L 757.9836,290.93466" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 841.96645,270.882 L 757.9836,270.882" + id="path2898" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(533.95159,-194.28538)" + id="flowRoot2900" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion2902"><rect + y="447.36218" + x="257.85715" + height="16.428572" + width="22.857143" + id="rect2904" /></flowRegion><flowPara + id="flowPara2906">R0</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(537.66936,-194.47288)" + id="flowRoot2908" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion2910"><rect + y="466.64789" + x="254.28572" + height="20.714285" + width="25.714285" + id="rect2912" /></flowRegion><flowPara + id="flowPara2914">R1</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(537.71623,-175.37913)" + xml:space="preserve" + id="flowRoot2916" + style="display:inline"><flowRegion + id="flowRegion2918"><rect + id="rect2920" + width="25.714285" + height="20.714285" + x="254.28572" + y="466.64789" /></flowRegion><flowPara + id="flowPara2922">R2</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="flowRoot2924" + xml:space="preserve" + transform="translate(537.59612,-153.74146)" + style="display:inline"><flowRegion + id="flowRegion2926"><rect + y="466.64789" + x="254.28572" + height="20.714285" + width="25.714285" + id="rect2928" /></flowRegion><flowPara + id="flowPara2955">R3</flowPara></flowRoot> <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + sodipodi:nodetypes="cc" + id="path2932" + d="M 798.32258,244.7441 L 798.32258,191.60228" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#TriangleInS);marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <path + id="path2981" + d="M 841.96645,330.98731 L 757.9836,330.98731" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + transform="translate(537.59612,-133.74146)" + xml:space="preserve" + id="flowRoot2983" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion2985"><rect + id="rect2987" + width="25.714285" + height="20.714285" + x="254.28572" + y="466.64789" /></flowRegion><flowPara + id="flowPara2989">PC</flowPara></flowRoot> <rect + style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="rect4484" + width="83.102974" + height="17.857147" + x="758.86969" + y="406.83582" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot4486" + transform="translate(506.05645,-16.781884)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion4488"><rect + id="rect4490" + width="218.40175" + height="30.792967" + x="280" + y="424.50504" /></flowRegion><flowPara + id="flowPara4492">MAR</flowPara></flowRoot> <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 799.5218,350.10274 L 799.5218,401.73154" + id="path4494" + sodipodi:nodetypes="cc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.89908892px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="M 788.84367,391.62338 L 809.61519,384.53781" + id="path4496" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot4498" + transform="translate(322.44731,-270.86599)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion4500"><rect + id="rect4502" + width="35.614975" + height="21.199389" + x="489.28189" + y="652.11774" /></flowRegion><flowPara + id="flowPara4504">8</flowPara></flowRoot> </g> + <g + inkscape:groupmode="layer" + id="layer22" + inkscape:label="8bit-PCMAR" + style="display:none" + sodipodi:insensitive="true"> + <rect + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + y="406.83582" + x="758.86969" + height="17.857147" + width="83.102974" + id="rect2947" + style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(506.05645,-16.781884)" + id="flowRoot2949" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion2951"><rect + y="424.50504" + x="280" + height="30.792967" + width="218.40175" + id="rect2953" /></flowRegion><flowPara + id="flowPara2956">MAR</flowPara></flowRoot> <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + sodipodi:nodetypes="cc" + id="path2958" + d="M 799.5218,371.08906 L 799.5218,401.73154" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="path2960" + d="M 788.84367,391.62338 L 809.61519,384.53781" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.89908892px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(322.44731,-270.86599)" + id="flowRoot2962" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion2964"><rect + y="652.11774" + x="489.28189" + height="21.199389" + width="35.614975" + id="rect2966" /></flowRegion><flowPara + id="flowPara2968">8</flowPara></flowRoot> </g> + <g + inkscape:groupmode="layer" + id="layer13" + inkscape:label="simple_regfile" + style="display:none" + sodipodi:insensitive="true"> + <rect + style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="rect1307" + width="84.439293" + height="79.744629" + x="757.75537" + y="250.78851" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + id="path1315" + d="M 841.96645,310.98731 L 757.9836,310.98731" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 841.96645,290.93466 L 757.9836,290.93466" + id="path1317" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + id="path1319" + d="M 841.96645,270.882 L 757.9836,270.882" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot1339" + transform="translate(533.95159,-194.28538)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion1341"><rect + id="rect1343" + width="22.857143" + height="16.428572" + x="257.85715" + y="447.36218" /></flowRegion><flowPara + id="flowPara1345">R0</flowPara></flowRoot> <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot1355" + transform="translate(537.66936,-194.47288)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion1357"><rect + id="rect1359" + width="25.714285" + height="20.714285" + x="254.28572" + y="466.64789" /></flowRegion><flowPara + id="flowPara1361">R1</flowPara></flowRoot> <flowRoot + style="display:inline" + id="flowRoot1371" + xml:space="preserve" + transform="translate(537.71623,-175.37913)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion1373"><rect + y="466.64789" + x="254.28572" + height="20.714285" + width="25.714285" + id="rect1375" /></flowRegion><flowPara + id="flowPara1377">R2</flowPara></flowRoot> <flowRoot + style="display:inline" + transform="translate(537.59612,-155.01342)" + xml:space="preserve" + id="flowRoot1379" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion1381"><rect + id="rect1383" + width="25.714285" + height="20.714285" + x="254.28572" + y="466.64789" /></flowRegion><flowPara + id="flowPara1385">R3</flowPara></flowRoot> <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#TriangleInS);marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 798.32258,244.7441 L 798.32258,191.60228" + id="path1487" + sodipodi:nodetypes="cc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <rect + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + y="406.83582" + x="758.86969" + height="17.857147" + width="83.102974" + id="rect4517" + style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(506.05645,-16.781884)" + id="flowRoot4519" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion4521"><rect + y="424.50504" + x="280" + height="30.792967" + width="218.40175" + id="rect4523" /></flowRegion><flowPara + id="flowPara4525">MAR</flowPara></flowRoot> <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + sodipodi:nodetypes="cc" + id="path4527" + d="M 799.5218,330.91524 L 799.5218,401.73154" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="path4529" + d="M 788.84367,371.62338 L 809.61519,364.53781" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.89908892px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(322.44731,-290.86599)" + id="flowRoot4531" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion4533"><rect + y="652.11774" + x="489.28189" + height="21.199389" + width="35.614975" + id="rect4535" /></flowRegion><flowPara + id="flowPara4537">8</flowPara></flowRoot> </g> + <g + inkscape:groupmode="layer" + id="layer15" + inkscape:label="8bit-simple-MAR" + style="display:none" + sodipodi:insensitive="true"> + <rect + style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="rect1465" + width="83.102974" + height="17.857147" + x="758.86969" + y="406.83582" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot1467" + transform="translate(506.05645,-16.781884)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion1469"><rect + id="rect1471" + width="218.40175" + height="30.792967" + x="280" + y="424.50504" /></flowRegion><flowPara + id="flowPara1473">MAR</flowPara></flowRoot> <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 799.5218,330.91524 L 799.5218,401.73154" + id="path1489" + sodipodi:nodetypes="cc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.89908892px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="M 788.84367,371.62338 L 809.61519,364.53781" + id="path3221" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3223" + transform="translate(322.44731,-290.86599)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3225"><rect + id="rect3227" + width="35.614975" + height="21.199389" + x="489.28189" + y="652.11774" /></flowRegion><flowPara + id="flowPara3229">8</flowPara></flowRoot> </g> + <g + inkscape:groupmode="layer" + id="layer14" + inkscape:label="MDR" + style="display:inline" + sodipodi:insensitive="true"> + <rect + style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="rect1495" + width="65.714287" + height="17.857143" + x="636.34436" + y="406.83582" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot1497" + transform="translate(374.72885,-16.568635)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion1499"><rect + id="rect1501" + width="45.714287" + height="20" + x="280" + y="424.50504" /></flowRegion><flowPara + id="flowPara1503">MDR</flowPara></flowRoot> <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#TriangleInS);marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 669.20152,400.88357 L 669.20152,190.75431" + id="path1515" + sodipodi:nodetypes="cc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + </g> + <g + inkscape:groupmode="layer" + id="layer16" + inkscape:label="Acc" + style="display:inline" + sodipodi:insensitive="true"> + <rect + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + y="223.70009" + x="309.65295" + height="17.857143" + width="65.714287" + id="rect3536" + style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" /> + <flowRoot + style="display:inline" + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(58.408552,-198.80494)" + id="flowRoot3538" + xml:space="preserve"><flowRegion + id="flowRegion3540"><rect + y="424.50504" + x="280" + height="20" + width="45.714287" + id="rect3542" /></flowRegion><flowPara + id="flowPara3544">A</flowPara></flowRoot> <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#TriangleInS);marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 342.81057,191.10554 L 342.81057,218.00273" + id="path4175" + sodipodi:nodetypes="cc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + sodipodi:nodetypes="cccc" + id="path3267" + d="M 288.54014,191.10554 L 288.54014,273.46848 L 314.82738,273.46805 L 314.82738,298.56041" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#TriangleInS);marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + </g> + <g + inkscape:groupmode="layer" + id="layer17" + inkscape:label="flags" + style="display:inline" + sodipodi:insensitive="true"> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#TriangleInM);marker-end:url(#TriangleOutM);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 420.2146,314.10049 L 370.22666,314.10049" + id="path2638" + sodipodi:nodetypes="cc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <rect + style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="rect2604" + width="74.525116" + height="17.857178" + x="292.80844" + y="304.93201" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(30.421569,-117.97583)" + id="flowRoot2667" + xml:space="preserve"><flowRegion + id="flowRegion2669"><rect + y="424.50504" + x="280" + height="20" + width="45.714287" + id="rect2671" /></flowRegion><flowPara + id="flowPara2673">FLAGS</flowPara></flowRoot> <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutM);stroke-opacity:1;display:inline" + d="M 291.53008,313.72651 L 220.97917,313.72651" + id="path2713" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" + sodipodi:nodetypes="cc" /> + <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + sodipodi:nodetypes="cc" + id="path4177" + d="M 342.81057,299.74605 L 342.81057,245.71364" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#TriangleInM);marker-end:url(#TriangleOutM);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + </g> + <g + inkscape:groupmode="layer" + id="layer27" + inkscape:label="IR" + style="display:inline" + sodipodi:insensitive="true"> + <rect + style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="rect1505" + width="65.714287" + height="17.857143" + x="144.57491" + y="206.35538" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot1507" + transform="translate(-109.69585,-216.14965)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion1509"><rect + id="rect1511" + width="45.714287" + height="20" + x="280" + y="424.50504" /></flowRegion><flowPara + id="flowPara1513">IR</flowPara></flowRoot> <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 177.43204,224.87769 L 177.43204,235.20923" + id="path1519" + sodipodi:nodetypes="cc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <rect + style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="rect1521" + width="79.836281" + height="37.04464" + x="137.51389" + y="240.32021" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + xml:space="preserve" + id="flowRoot1523" + transform="translate(-159.48205,-180.9856)" + style="text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;display:inline" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion1525"><rect + id="rect1527" + width="114.06974" + height="60.77343" + x="280" + y="424.50504" + style="text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle" /></flowRegion><flowPara + id="flowPara1529">Instruction</flowPara><flowPara + id="flowPara1531">Decoder</flowPara></flowRoot> <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 177.43204,276.95255 L 177.43204,296.05482" + id="path1545" + sodipodi:nodetypes="cc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + sodipodi:nodetypes="cc" + id="path3207" + d="M 177.40469,183.51326 L 177.40469,199.94689" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + </g> + <g + inkscape:groupmode="layer" + id="layer18" + inkscape:label="micro" + style="display:inline" + sodipodi:insensitive="true"> + <path + style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;display:inline" + d="M 136.65861,302.82692 L 218.20547,302.82692 L 218.20547,401.5004 L 392.88844,401.50037 L 392.88844,433.30069 L 136.65861,433.30069 L 136.65861,302.82692 z" + id="rect1533" + sodipodi:nodetypes="ccccccc" /> + <flowRoot + xml:space="preserve" + id="flowRoot1535" + style="text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;display:inline" + transform="translate(118.26603,-221.87913)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion1537"><rect + id="rect1539" + width="63.558578" + height="68.355453" + x="27.582026" + y="563.08099" + style="text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle" /></flowRegion><flowPara + id="flowPara1541">Timing and Control</flowPara></flowRoot> <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot2789" + transform="translate(128.66733,0.4284978)"><flowRegion + id="flowRegion2791"><rect + id="rect2793" + width="44.942703" + height="17.807486" + x="144.15584" + y="414.23199" /></flowRegion><flowPara + id="flowPara2795">M</flowPara></flowRoot> <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot2797" + transform="translate(130.04233,-1.2902522)"><flowRegion + id="flowRegion2799"><rect + id="rect2801" + width="50.878532" + height="16.111536" + x="192.49045" + y="415.92795" /></flowRegion><flowPara + id="flowPara2803">RD</flowPara></flowRoot> <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot2805" + transform="translate(115.46811,1.2722478)"><flowRegion + id="flowRegion2807"><rect + id="rect2809" + width="39.854851" + height="16.959511" + x="239.1291" + y="413.38403" /></flowRegion><flowPara + id="flowPara2811">WR</flowPara></flowRoot> <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="M 273.49561,415.37204 L 282.82334,415.37204" + id="path2813" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="M 322.50249,414.52407 L 338.61402,414.52407" + id="path2815" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="M 354.59722,414.52407 L 373.25268,414.52407" + id="path2817" + sodipodi:nodetypes="cc" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3231" + transform="translate(98.489829,0.4284978)"><flowRegion + id="flowRegion3233"><rect + id="rect3235" + width="44.942703" + height="17.807486" + x="144.15584" + y="414.23199" /></flowRegion><flowPara + id="flowPara3237">IO</flowPara></flowRoot> <path + id="path3239" + d="M 243.49561,415.37204 L 253.67132,415.37204" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + sodipodi:nodetypes="cc" /> + <flowRoot + transform="translate(6.489829,0.4284978)" + id="flowRoot3241" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion3243"><rect + y="414.23199" + x="144.15584" + height="17.807486" + width="44.942703" + id="rect3245" /></flowRegion><flowPara + id="flowPara3247">INT</flowPara></flowRoot> <path + sodipodi:nodetypes="cc" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="M 151.49561,415.37204 L 170.06585,415.37204" + id="path3249" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3251" + transform="translate(42.489829,0.4284978)"><flowRegion + id="flowRegion3253"><rect + id="rect3255" + width="44.942703" + height="17.807486" + x="144.15584" + y="414.23199" /></flowRegion><flowPara + id="flowPara3257">INTA</flowPara></flowRoot> <path + id="path3259" + d="M 187.49561,415.37204 L 212.66155,415.37204" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + sodipodi:nodetypes="cc" /> + </g> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3033" + transform="translate(206.89731,-185.80562)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3035"><rect + id="rect3037" + width="197.57831" + height="25.439266" + x="230.64935" + y="345.99854" /></flowRegion><flowPara + id="flowPara3039">Internal Data Bus</flowPara></flowRoot> </g> + <g + inkscape:groupmode="layer" + id="layer4" + inkscape:label="8-bit labels" + style="display:inline" + sodipodi:insensitive="true"> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="M 627.462,193.56802 L 637.65999,175.90458" + id="path3553" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3555" + transform="translate(102.56513,-199.37323)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3557"><rect + id="rect3559" + width="39.854851" + height="30.527121" + x="529.98474" + y="390.09326" /></flowRegion><flowPara + id="flowPara3561">8</flowPara></flowRoot> <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3578" + transform="translate(195.31502,-359.66725)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3580"><rect + id="rect3582" + width="35.614975" + height="21.199389" + x="489.28189" + y="652.11774" /></flowRegion><flowPara + id="flowPara3584">8</flowPara></flowRoot> <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3588" + transform="translate(99.669492,-356.27535)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3590"><rect + id="rect3592" + width="35.614975" + height="21.199389" + x="489.28189" + y="652.11774" /></flowRegion><flowPara + id="flowPara3594">8</flowPara></flowRoot> <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.89908892px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="M 787.60596,208.97542 L 808.37748,201.88985" + id="path3596" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3598" + transform="translate(321.2096,-453.51395)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3600"><rect + id="rect3602" + width="35.614975" + height="21.199389" + x="489.28189" + y="652.11774" /></flowRegion><flowPara + id="flowPara3604">8</flowPara></flowRoot> <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.89908892px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="M 658.15361,302.71522 L 678.92513,295.62965" + id="path3606" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.89908892px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="M 564.20831,306.31288 L 584.97983,299.22731" + id="path3610" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3521" + transform="translate(174.89731,-185.80562)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3523"><rect + id="rect3525" + width="197.57831" + height="25.439266" + x="230.64935" + y="345.99854" /></flowRegion><flowPara + id="flowPara3527">8-bit </flowPara></flowRoot> </g> + <g + inkscape:groupmode="layer" + id="layer5" + inkscape:label="4-bit labels" + style="display:none" + sodipodi:insensitive="true"> + <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="path6576" + d="M 627.462,193.56802 L 637.65999,175.90458" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(102.56513,-199.37323)" + id="flowRoot6578" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion6580"><rect + y="390.09326" + x="529.98474" + height="30.527121" + width="39.854851" + id="rect6582" /></flowRegion><flowPara + id="flowPara6584">4</flowPara></flowRoot> <flowRoot + xml:space="preserve" + id="flowRoot6586" + transform="translate(176.13031,-267.38164)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" + style="display:inline"><flowRegion + id="flowRegion6588"><rect + id="rect6590" + width="33.071045" + height="28.831169" + x="636.82965" + y="648.72583" /></flowRegion><flowPara + id="flowPara6592">4</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(195.31502,-359.66725)" + id="flowRoot6594" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion6596"><rect + y="652.11774" + x="489.28189" + height="21.199389" + width="35.614975" + id="rect6598" /></flowRegion><flowPara + id="flowPara6600">4</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(99.669492,-356.27535)" + id="flowRoot6602" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion6604"><rect + y="652.11774" + x="489.28189" + height="21.199389" + width="35.614975" + id="rect6606" /></flowRegion><flowPara + id="flowPara6608">4</flowPara></flowRoot> <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="path6610" + d="M 787.60596,218.97542 L 808.37748,211.88985" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.89908892px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(321.2096,-443.51395)" + id="flowRoot6612" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion6614"><rect + y="652.11774" + x="489.28189" + height="21.199389" + width="35.614975" + id="rect6616" /></flowRegion><flowPara + id="flowPara6618">4</flowPara></flowRoot> <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="path6620" + d="M 658.15361,302.71522 L 678.92513,295.62965" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.89908892px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" /> + <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="path6622" + d="M 789.04225,390.25817 L 809.81377,383.1726" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.89908892px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" /> + <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="path6624" + d="M 564.20831,306.31288 L 584.97983,299.22731" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.89908892px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(174.51841,-185.80562)" + id="flowRoot6655" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion6657"><rect + y="345.99854" + x="230.64935" + height="25.439266" + width="197.57831" + id="rect6659" /></flowRegion><flowPara + id="flowPara6661">4-bit</flowPara></flowRoot> </g> + <g + inkscape:groupmode="layer" + id="layer2" + inkscape:label="8-bit internal" + style="display:none" + sodipodi:insensitive="true"> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + d="M 799.63986,424.10439 L 799.63986,469.94071" + id="path6370" + sodipodi:nodetypes="cc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#TriangleInS);marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + d="M 668.4716,429.79184 L 668.4716,469.44398" + id="path6372" + sodipodi:nodetypes="cc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + xml:space="preserve" + id="flowRoot6374" + transform="translate(165.78765,-179.78645)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion6376"><rect + id="rect6378" + width="117.02064" + height="35.614948" + x="451.12299" + y="658.05353" /></flowRegion><flowPara + id="flowPara6380">External Data Bus</flowPara></flowRoot> <flowRoot + xml:space="preserve" + id="flowRoot6382" + transform="translate(286.01874,-179.51091)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" + inkscape:transform-center-y="4.6435547"><flowRegion + id="flowRegion6384"><rect + id="rect6386" + width="150.09169" + height="51.726482" + x="451.12299" + y="658.05353" /></flowRegion><flowPara + id="flowPara6388">External Address Bus</flowPara></flowRoot> <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + d="M 655.24303,451.48572 L 681.31012,444.50107" + id="path6390" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + d="M 785.9428,451.48572 L 812.37707,444.40268" + id="path6392" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + xml:space="preserve" + id="flowRoot6394" + transform="translate(194.7923,-213.35163)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion6396"><rect + id="rect6398" + width="35.614975" + height="21.199389" + x="489.28189" + y="652.11774" /></flowRegion><flowPara + id="flowPara6400">8</flowPara></flowRoot> <flowRoot + xml:space="preserve" + id="flowRoot6402" + transform="translate(177.09635,-209.11175)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion6404"><rect + id="rect6406" + width="33.071045" + height="28.831169" + x="636.82965" + y="648.72583" /></flowRegion><flowPara + id="flowPara6408">8</flowPara></flowRoot> <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutM);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + d="M 169.357,433.951 L 169.357,464.53672" + id="path6410" + sodipodi:nodetypes="cc" /> + <path + id="path6412" + d="M 217.95055,433.951 L 217.95055,464.53672" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutM);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutM);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + d="M 265.69158,433.951 L 265.69158,464.26212" + id="path6414" + sodipodi:nodetypes="cc" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(-299.3002,-179.78645)" + id="flowRoot3634" + xml:space="preserve"><flowRegion + id="flowRegion3636"><rect + y="658.05353" + x="451.12299" + height="38.158855" + width="184.0107" + id="rect3638" /></flowRegion><flowPara + id="flowPara3640">External Control Signals</flowPara></flowRoot> </g> + <g + inkscape:groupmode="layer" + id="layer6" + inkscape:label="4-bit internals" + style="display:none" + sodipodi:insensitive="true"> + <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + sodipodi:nodetypes="cc" + id="path6692" + d="M 799.63986,424.10439 L 799.63986,469.94071" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + sodipodi:nodetypes="cc" + id="path6694" + d="M 668.4716,429.79184 L 668.4716,469.44398" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#TriangleInS);marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <flowRoot + style="display:inline" + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(165.78765,-179.78645)" + id="flowRoot6696" + xml:space="preserve"><flowRegion + id="flowRegion6698"><rect + y="658.05353" + x="451.12299" + height="35.614948" + width="117.02064" + id="rect6700" /></flowRegion><flowPara + id="flowPara6702">External Data Bus</flowPara></flowRoot> <flowRoot + style="display:inline" + inkscape:transform-center-y="4.6435547" + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(286.01874,-179.51091)" + id="flowRoot6704" + xml:space="preserve"><flowRegion + id="flowRegion6706"><rect + y="658.05353" + x="451.12299" + height="51.726482" + width="150.09169" + id="rect6708" /></flowRegion><flowPara + id="flowPara6710">External Address Bus</flowPara></flowRoot> <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="path6712" + d="M 655.24303,451.48572 L 681.31012,444.50107" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" /> + <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="path6714" + d="M 785.9428,451.48572 L 812.37707,444.40268" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" /> + <flowRoot + style="display:inline" + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(194.7923,-213.35163)" + id="flowRoot6716" + xml:space="preserve"><flowRegion + id="flowRegion6718"><rect + y="652.11774" + x="489.28189" + height="21.199389" + width="35.614975" + id="rect6720" /></flowRegion><flowPara + id="flowPara6722">4</flowPara></flowRoot> <flowRoot + style="display:inline" + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(177.09635,-209.11175)" + id="flowRoot6724" + xml:space="preserve"><flowRegion + id="flowRegion6726"><rect + y="648.72583" + x="636.82965" + height="28.831169" + width="33.071045" + id="rect6728" /></flowRegion><flowPara + id="flowPara6730">4</flowPara></flowRoot> <path + sodipodi:nodetypes="cc" + id="path6732" + d="M 169.357,433.951 L 169.357,464.53672" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutM);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <path + sodipodi:nodetypes="cc" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutM);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 217.95055,433.951 L 217.95055,464.53672" + id="path6734" /> + <path + sodipodi:nodetypes="cc" + id="path6736" + d="M 265.69158,433.951 L 265.69158,464.26212" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutM);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot6738" + transform="translate(-299.3002,-179.78645)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion6740"><rect + id="rect6742" + width="184.0107" + height="38.158855" + x="451.12299" + y="658.05353" /></flowRegion><flowPara + id="flowPara6744">External Control Signals</flowPara></flowRoot> </g> + <g + inkscape:groupmode="layer" + id="layer3" + inkscape:label="8-bit external" + style="display:none" + sodipodi:insensitive="true"> + <rect + style="opacity:1;fill:none;fill-opacity:1;stroke:#a8a8a8;stroke-width:2.05071378;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:2.05071363, 2.05071363;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="rect3519" + width="780.07391" + height="305.2312" + x="113.47778" + y="144.17757" + ry="8.4797554" + rx="8.4797554" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#TriangleInS);marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 669.60506,429.65913 L 669.60506,523.5817" + id="path1517" + sodipodi:nodetypes="cc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot2614" + transform="translate(223.73547,-164.39891)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion2616"><rect + id="rect2618" + width="90.733383" + height="82.253632" + x="451.12299" + y="658.05353" /></flowRegion><flowPara + id="flowPara2620">Data Bus</flowPara></flowRoot> <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot2622" + transform="translate(353.83822,-165.14401)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion2624"><rect + id="rect2626" + width="90.733383" + height="82.253632" + x="451.12299" + y="658.05353" /></flowRegion><flowPara + id="flowPara2628">Address Bus</flowPara></flowRoot> <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="M 656.37649,487.35301 L 682.44358,480.36836" + id="path3547" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="M 785.07626,487.35301 L 811.51053,480.26997" + id="path3549" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3563" + transform="translate(195.92576,-177.48434)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3565"><rect + id="rect3567" + width="35.614975" + height="21.199389" + x="489.28189" + y="652.11774" /></flowRegion><flowPara + id="flowPara3569">8</flowPara></flowRoot> <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3571" + transform="translate(176.22981,-173.24446)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3573"><rect + id="rect3575" + width="33.071045" + height="28.831169" + x="636.82965" + y="648.72583" /></flowRegion><flowPara + id="flowPara3577">8</flowPara></flowRoot> <rect + style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="rect2570" + width="415.74655" + height="91.140625" + x="445.29233" + y="528.55933" /> + <flowRoot + xml:space="preserve" + id="flowRoot3445" + style="text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;display:inline" + transform="translate(111.57296,-150.24624)"><flowRegion + id="flowRegion3447"><rect + id="rect3449" + width="122.9199" + height="38.974602" + x="473.09171" + y="714.18256" + style="text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle" /></flowRegion><flowPara + id="flowPara3453">Main Memory</flowPara><flowPara + id="flowPara3457">256x8-bit RAM</flowPara></flowRoot> <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot2867" + transform="translate(323.72433,121.05519)"><flowRegion + id="flowRegion2869"><rect + id="rect2871" + width="44.942703" + height="17.807486" + x="144.15584" + y="414.23199" /></flowRegion><flowPara + id="flowPara2873">CE</flowPara></flowRoot> <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot2875" + transform="translate(311.03499,119.33644)"><flowRegion + id="flowRegion2877"><rect + id="rect2879" + width="50.878532" + height="16.111536" + x="192.49045" + y="415.92795" /></flowRegion><flowPara + id="flowPara2881">RD</flowPara></flowRoot> <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot2883" + transform="translate(294.89316,121.89894)"><flowRegion + id="flowRegion2885"><rect + id="rect2887" + width="39.854851" + height="16.959511" + x="239.1291" + y="413.38403" /></flowRegion><flowPara + id="flowPara2889">WR</flowPara></flowRoot> <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="M 468.72815,533.41642 L 483.14373,533.41642" + id="path2891" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="M 503.49515,533.41642 L 519.60668,533.41642" + id="path2893" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="M 534.02227,533.41642 L 552.67773,533.41642" + id="path2895" + sodipodi:nodetypes="cc" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3910" + transform="translate(349.64415,12.548995)"><flowRegion + id="flowRegion3912"><rect + id="rect3914" + width="47.486629" + height="16.111536" + x="306.11917" + y="522.77289" /></flowRegion><flowPara + id="flowPara3916">Data</flowPara></flowRoot> <flowRoot + style="display:inline" + transform="translate(471.64415,12.548995)" + id="flowRoot6012" + xml:space="preserve"><flowRegion + id="flowRegion6014"><rect + y="522.77289" + x="306.11917" + height="19.709167" + width="63.076473" + id="rect6016" /></flowRegion><flowPara + id="flowPara6018">Address</flowPara></flowRoot> <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 798.77332,423.97168 L 798.77332,523.23046" + id="path1491" + sodipodi:nodetypes="cc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + sodipodi:nodetypes="cc" + id="path3004" + d="M 168.74713,434.08668 L 168.74713,512.04569" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <path + sodipodi:nodetypes="cc" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 217.08174,433.79668 L 217.08174,501.25602" + id="path3006" /> + <path + sodipodi:nodetypes="cc" + id="path3008" + d="M 264.56837,433.49691 L 264.56837,491.11411" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <path + sodipodi:nodetypes="ccc" + id="path3010" + d="M 264.56837,490.50769 L 542.70435,490.50769 L 542.70435,524.42671" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutM);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <path + sodipodi:nodetypes="ccc" + id="path3012" + d="M 217.13317,500.68339 L 510.48128,500.68339 L 510.48128,524.42672" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutM);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <path + sodipodi:nodetypes="ccc" + id="path3014" + d="M 168.74713,511.70708 L 477.41023,511.70708 L 477.41023,524.42671" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutM);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + </g> + <g + inkscape:groupmode="layer" + id="layer20" + inkscape:label="16-bit external" + style="display:inline"> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3057" + transform="translate(224.33508,-177.99657)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3059"><rect + id="rect3061" + width="90.733383" + height="82.253632" + x="451.12299" + y="658.05353" /></flowRegion><flowPara + id="flowPara3063">Data Bus</flowPara></flowRoot> <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3065" + transform="translate(352.639,-177.54245)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3067"><rect + id="rect3069" + width="90.733383" + height="82.253632" + x="451.12299" + y="658.05353" /></flowRegion><flowPara + id="flowPara3071">Address Bus</flowPara></flowRoot> <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="M 656.37649,477.35301 L 682.44358,470.36836" + id="path3073" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="M 785.07626,477.35301 L 811.51053,470.26997" + id="path3075" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3077" + transform="translate(195.92576,-187.48434)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3079"><rect + id="rect3081" + width="35.614975" + height="21.199389" + x="489.28189" + y="652.11774" /></flowRegion><flowPara + id="flowPara3083">8</flowPara></flowRoot> <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3085" + transform="translate(176.22981,-183.24446)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3087"><rect + id="rect3089" + width="33.071045" + height="28.831169" + x="636.82965" + y="648.72583" /></flowRegion><flowPara + id="flowPara3091">16</flowPara></flowRoot> <rect + style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="rect3093" + width="373.34778" + height="92.016022" + x="484.29919" + y="596.9707" /> + <flowRoot + xml:space="preserve" + id="flowRoot3095" + style="text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;display:inline" + transform="translate(113.43936,-86.50259)"><flowRegion + id="flowRegion3097"><rect + id="rect3099" + width="163.69331" + height="39.574219" + x="473.09171" + y="714.18256" + style="text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle" /></flowRegion><flowPara + id="flowPara3101">Main Memory</flowPara><flowPara + id="flowPara3103">64kB (65536 x 8-bit) RAM</flowPara></flowRoot> <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3105" + transform="translate(362.7312,187.62127)"><flowRegion + id="flowRegion3107"><rect + id="rect3109" + width="44.942703" + height="17.807486" + x="144.15584" + y="414.23199" /></flowRegion><flowPara + id="flowPara3111">CE</flowPara></flowRoot> <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3113" + transform="translate(350.04186,185.90252)"><flowRegion + id="flowRegion3115"><rect + id="rect3117" + width="50.878532" + height="16.111536" + x="192.49045" + y="415.92795" /></flowRegion><flowPara + id="flowPara3119">RD</flowPara></flowRoot> <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3121" + transform="translate(333.90003,188.46502)"><flowRegion + id="flowRegion3123"><rect + id="rect3125" + width="39.854851" + height="16.959511" + x="239.1291" + y="413.38403" /></flowRegion><flowPara + id="flowPara3127">WR</flowPara></flowRoot> <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="M 507.73502,602.10244 L 522.1506,602.10244" + id="path3129" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="M 542.50202,602.10244 L 558.61355,602.10244" + id="path3131" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="M 573.02914,602.10244 L 591.6846,602.10244" + id="path3133" + sodipodi:nodetypes="cc" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3135" + transform="translate(349.64415,78.691087)"><flowRegion + id="flowRegion3137"><rect + id="rect3139" + width="47.486629" + height="16.111536" + x="306.11917" + y="522.77289" /></flowRegion><flowPara + id="flowPara3141">Data</flowPara></flowRoot> <flowRoot + style="display:inline" + transform="translate(471.64415,78.691087)" + id="flowRoot3143" + xml:space="preserve"><flowRegion + id="flowRegion3145"><rect + y="522.77289" + x="306.11917" + height="19.709167" + width="63.076473" + id="rect3147" /></flowRegion><flowPara + id="flowPara3149">Address</flowPara></flowRoot> <path + sodipodi:nodetypes="cs" + id="path3151" + d="M 278.13597,434.08668 L 278.13597,489.99833" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <path + sodipodi:nodetypes="cc" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 330.28647,434.22067 L 330.28647,501.68001" + id="path3153" /> + <path + sodipodi:nodetypes="cc" + id="path3155" + d="M 362.93353,433.49691 L 362.93353,491.11411" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <path + sodipodi:nodetypes="ccc" + id="path3157" + d="M 362.93353,464.31816 L 583.47778,464.31816 L 583.47778,592.66895" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutM);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <path + sodipodi:nodetypes="ccs" + id="path3159" + d="M 330.3379,477.09804 L 549.45588,477.09804 L 549.45588,593.30494" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutM);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <path + sodipodi:nodetypes="ccc" + id="path3161" + d="M 278.13597,489.65972 L 515.78522,489.65972 L 515.78522,593.51693" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutM);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#TriangleInS);marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 669.60506,429.65913 L 669.60506,591.32721" + id="path3163" + sodipodi:nodetypes="cc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 798.77332,423.97168 L 798.77332,591.4727" + id="path3217" + sodipodi:nodetypes="cc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <rect + style="opacity:1;fill:none;fill-opacity:1;stroke:#a8a8a8;stroke-width:2.05071378;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:2.05071363, 2.05071363;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="rect3219" + width="780.07391" + height="305.2312" + x="113.47778" + y="144.17757" + ry="8.4797554" + rx="8.4797554" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + </g> + <g + inkscape:groupmode="layer" + id="layer7" + inkscape:label="4bit external" + style="display:none" + sodipodi:insensitive="true"> + <rect + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + rx="8.4797554" + ry="8.4797554" + y="144.17757" + x="113.47778" + height="305.2312" + width="780.07391" + id="rect6786" + style="opacity:1;fill:none;fill-opacity:1;stroke:#a8a8a8;stroke-width:2.05071378;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:2.05071363, 2.05071363;stroke-dashoffset:0;stroke-opacity:1;display:inline" /> + <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + sodipodi:nodetypes="cc" + id="path6788" + d="M 669.60506,429.65913 L 669.60506,523.5817" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#TriangleInS);marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(223.73547,-164.39891)" + id="flowRoot6790" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion6792"><rect + y="658.05353" + x="451.12299" + height="82.253632" + width="90.733383" + id="rect6794" /></flowRegion><flowPara + id="flowPara6796">Data Bus</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(353.83822,-165.14401)" + id="flowRoot6798" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion6800"><rect + y="658.05353" + x="451.12299" + height="82.253632" + width="90.733383" + id="rect6802" /></flowRegion><flowPara + id="flowPara6804">Address Bus</flowPara></flowRoot> <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="path6806" + d="M 656.37649,487.35301 L 682.44358,480.36836" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" /> + <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="path6808" + d="M 785.07626,487.35301 L 811.51053,480.26997" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(195.92576,-177.48434)" + id="flowRoot6810" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion6812"><rect + y="652.11774" + x="489.28189" + height="21.199389" + width="35.614975" + id="rect6814" /></flowRegion><flowPara + id="flowPara6816">4</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(176.22981,-173.24446)" + id="flowRoot6818" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion6820"><rect + y="648.72583" + x="636.82965" + height="28.831169" + width="33.071045" + id="rect6822" /></flowRegion><flowPara + id="flowPara6824">4</flowPara></flowRoot> <rect + y="528.55933" + x="445.29233" + height="91.140625" + width="415.74655" + id="rect6826" + style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" /> + <flowRoot + transform="translate(111.57296,-150.24624)" + style="text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;display:inline" + id="flowRoot6828" + xml:space="preserve"><flowRegion + id="flowRegion6830"><rect + style="text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle" + y="714.18256" + x="473.09171" + height="38.974602" + width="122.9199" + id="rect6832" /></flowRegion><flowPara + id="flowPara6834">Main Memory</flowPara><flowPara + id="flowPara6836">16x4-bit RAM</flowPara></flowRoot> <path + sodipodi:nodetypes="cc" + id="path6850" + d="M 168.74713,434.08668 L 168.74713,512.04569" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <path + sodipodi:nodetypes="cc" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 217.08174,433.79668 L 217.08174,501.25602" + id="path6852" /> + <path + sodipodi:nodetypes="cc" + id="path6854" + d="M 264.56837,433.49691 L 264.56837,491.11411" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <path + sodipodi:nodetypes="ccc" + id="path6856" + d="M 264.56837,490.50769 L 542.70435,490.50769 L 542.70435,524.42671" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutM);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <path + sodipodi:nodetypes="ccc" + id="path6858" + d="M 217.13317,500.68339 L 510.48128,500.68339 L 510.48128,524.42672" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutM);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <path + sodipodi:nodetypes="ccc" + id="path6860" + d="M 168.74713,511.70708 L 477.41023,511.70708 L 477.41023,524.42671" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutM);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <flowRoot + transform="translate(323.72433,121.05519)" + id="flowRoot6882" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion6884"><rect + y="414.23199" + x="144.15584" + height="17.807486" + width="44.942703" + id="rect6886" /></flowRegion><flowPara + id="flowPara6888">CE</flowPara></flowRoot> <flowRoot + transform="translate(311.03499,119.33644)" + id="flowRoot6890" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion6892"><rect + y="415.92795" + x="192.49045" + height="16.111536" + width="50.878532" + id="rect6894" /></flowRegion><flowPara + id="flowPara6896">RD</flowPara></flowRoot> <flowRoot + transform="translate(294.89316,121.89894)" + id="flowRoot6898" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion6900"><rect + y="413.38403" + x="239.1291" + height="16.959511" + width="39.854851" + id="rect6902" /></flowRegion><flowPara + id="flowPara6904">WR</flowPara></flowRoot> <path + sodipodi:nodetypes="cc" + id="path6906" + d="M 468.72815,533.41642 L 483.14373,533.41642" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" /> + <path + sodipodi:nodetypes="cc" + id="path6908" + d="M 503.49515,533.41642 L 519.60668,533.41642" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" /> + <path + sodipodi:nodetypes="cc" + id="path6910" + d="M 534.02227,533.41642 L 552.67773,533.41642" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" /> + <flowRoot + transform="translate(349.64415,12.548995)" + id="flowRoot6954" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion6956"><rect + y="522.77289" + x="306.11917" + height="16.111536" + width="47.486629" + id="rect6958" /></flowRegion><flowPara + id="flowPara6960">Data</flowPara></flowRoot> <flowRoot + xml:space="preserve" + id="flowRoot6962" + transform="translate(471.64415,12.548995)" + style="display:inline"><flowRegion + id="flowRegion6964"><rect + id="rect6966" + width="63.076473" + height="19.709167" + x="306.11917" + y="522.77289" /></flowRegion><flowPara + id="flowPara6968">Address</flowPara></flowRoot> <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + sodipodi:nodetypes="cc" + id="path6970" + d="M 798.77332,423.97168 L 798.77332,523.23046" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + </g> + <g + inkscape:groupmode="layer" + id="layer10" + inkscape:label="IO" + style="display:inline"> + <rect + style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="rect6838" + width="188.09526" + height="91.100708" + x="215.05074" + y="597.24542" /> + <flowRoot + xml:space="preserve" + id="flowRoot6840" + style="text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;display:inline" + transform="translate(-226.50326,-76.969101)"><flowRegion + id="flowRegion6842"><rect + id="rect6844" + width="122.9199" + height="38.974602" + x="473.09171" + y="714.18256" + style="text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle" /></flowRegion><flowPara + id="flowPara6846">I/O Port</flowPara></flowRoot> <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-start:url(#TriangleInS);marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 663.60072,573.07845 L 443.23433,573.07845 L 443.23433,645.69918 L 408.41955,645.6995" + id="path6848" + sodipodi:nodetypes="cccc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + sodipodi:nodetypes="cc" + id="path6862" + d="M 194.27624,625.51151 L 209.80582,625.51151" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 215.1373,660.39844 L 199.60772,660.39844" + id="path6864" + sodipodi:nodetypes="cc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + transform="translate(-21.562955,202.15594)" + id="flowRoot6866" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion6868"><rect + y="415.92795" + x="192.49045" + height="16.111536" + width="50.878532" + id="rect6870" /></flowRegion><flowPara + id="flowPara6872">IN</flowPara></flowRoot> <flowRoot + transform="translate(-26.226819,236.77644)" + id="flowRoot6874" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion6876"><rect + y="415.92795" + x="192.49045" + height="16.111536" + width="50.878532" + id="rect6878" /></flowRegion><flowPara + id="flowPara6880">OUT</flowPara></flowRoot> <flowRoot + transform="translate(114.13949,190.12127)" + id="flowRoot6918" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion6920"><rect + y="414.23199" + x="144.15584" + height="17.807486" + width="44.942703" + id="rect6922" /></flowRegion><flowPara + id="flowPara6924">CS</flowPara></flowRoot> <flowRoot + transform="translate(129.43333,188.40252)" + id="flowRoot6926" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion6928"><rect + y="415.92795" + x="192.49045" + height="16.111536" + width="50.878532" + id="rect6930" /></flowRegion><flowPara + id="flowPara6932">RD</flowPara></flowRoot> <flowRoot + transform="translate(113.7155,190.96502)" + id="flowRoot6934" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion6936"><rect + y="413.38403" + x="239.1291" + height="16.959511" + width="39.854851" + id="rect6938" /></flowRegion><flowPara + id="flowPara6940">WR</flowPara></flowRoot> <path + sodipodi:nodetypes="cc" + id="path6942" + d="M 321.89349,602.4825 L 338.00502,602.4825" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" /> + <path + sodipodi:nodetypes="cc" + id="path6944" + d="M 352.8446,602.4825 L 371.50006,602.4825" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" /> + <flowRoot + transform="translate(63.410064,113.42813)" + id="flowRoot6946" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion6948"><rect + y="522.77289" + x="306.11917" + height="16.111536" + width="47.486629" + id="rect6950" /></flowRegion><flowPara + id="flowPara6952">Data</flowPara></flowRoot> <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutM);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 362.93353,490.15998 L 362.93353,593.14022" + id="path7682" + sodipodi:nodetypes="cc" /> + <path + id="path8218" + d="M 330.28647,500.35331 L 330.28647,593.49146" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutM);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutM);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 248.88082,433.85632 L 248.88082,529.71768" + id="path8754" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="M 259.1433,602.4825 L 275.25483,602.4825" + id="path3261" + sodipodi:nodetypes="cc" /> + <path + transform="matrix(0.8455384,0,0,0.8455384,139.29632,63.718843)" + d="M 266.26431,474.01428 A 1.6959511,2.1199389 0 1 1 262.87241,474.01428 A 1.6959511,2.1199389 0 1 1 266.26431,474.01428 z" + sodipodi:ry="2.1199389" + sodipodi:rx="1.6959511" + sodipodi:cy="474.01428" + sodipodi:cx="264.56836" + id="path6912" + style="fill:#2f2e30;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" + sodipodi:type="arc" /> + <path + sodipodi:type="arc" + style="fill:#2f2e30;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="path6914" + sodipodi:cx="264.56836" + sodipodi:cy="474.01428" + sodipodi:rx="1.6959511" + sodipodi:ry="2.1199389" + d="M 266.26431,474.01428 A 1.6959511,2.1199389 0 1 1 262.87241,474.01428 A 1.6959511,2.1199389 0 1 1 266.26431,474.01428 z" + transform="matrix(0.8455384,0,0,0.8455384,106.64925,76.438475)" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutM);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 198.42628,433.44282 L 198.42628,473.85432" + id="path3263" + sodipodi:nodetypes="cc" /> + <path + sodipodi:nodetypes="cc" + id="path3265" + d="M 160.26738,477.27479 L 160.26738,436.86329" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutM);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <flowRoot + transform="translate(-153.44686,-42.447307)" + id="flowRoot3267" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion3269"><rect + y="522.77289" + x="306.11917" + height="44.94268" + width="96.669212" + id="rect3271" /></flowRegion><flowPara + id="flowPara3273">Interrupt</flowPara></flowRoot> <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3276" + transform="translate(95.629175,120.58727)"><flowRegion + id="flowRegion3278"><rect + id="rect3280" + width="44.942703" + height="17.807486" + x="144.15584" + y="414.23199" /></flowRegion><flowPara + id="flowPara3282">EN</flowPara></flowRoot> <path + sodipodi:nodetypes="cc" + id="path3284" + d="M 240.63298,535.49243 L 256.74451,535.49243" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" /> + <path + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + sodipodi:nodetypes="cccc" + id="path3286" + d="M 798.81261,520.46867 L 548.64246,520.46867 L 287.81243,520.46867 L 287.81239,527.72424" + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutS);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> + <path + sodipodi:type="arc" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="path3288" + sodipodi:cx="264.56836" + sodipodi:cy="474.01428" + sodipodi:rx="1.6959511" + sodipodi:ry="2.1199389" + d="M 266.26431,474.01428 A 1.6959511,2.1199389 0 1 1 262.87241,474.01428 A 1.6959511,2.1199389 0 1 1 266.26431,474.01428 z" + transform="matrix(1.7307793,0,0,1.4726641,340.73905,-177.51756)" /> + <rect + style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="rect5150" + width="88.686462" + height="49.667458" + x="222.71954" + y="533.11218" /> + <flowRoot + transform="matrix(0.8725485,0,0,0.8725485,-41.076423,95.710978)" + id="flowRoot5152" + xml:space="preserve" + style="text-align:center;text-anchor:middle;display:inline"><flowRegion + id="flowRegion5154"><rect + y="522.77289" + x="306.11917" + height="60.006199" + width="91.324097" + id="rect5156" + style="text-align:center;text-anchor:middle" /></flowRegion><flowPara + id="flowPara5160">port address decode logic</flowPara></flowRoot> <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutM);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" + d="M 266.6883,582.74677 L 266.6883,592.99488" + id="path5164" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.82366979px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="M 764.14296,511.40304 L 756.98197,528.65233" + id="path5168" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot5170" + transform="translate(258.89655,-122.42964)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion5172"><rect + id="rect5174" + width="35.614975" + height="21.199389" + x="489.28189" + y="652.11774" /></flowRegion><flowPara + id="flowPara5176">LS8</flowPara></flowRoot> <flowRoot + transform="matrix(0.8725485,0,0,0.8725485,-20.961521,79.240058)" + id="flowRoot12005" + xml:space="preserve" + style="text-align:center;text-anchor:middle;display:inline"><flowRegion + id="flowRegion12007"><rect + y="522.77289" + x="306.11917" + height="60.006199" + width="91.324097" + id="rect12009" + style="text-align:center;text-anchor:middle" /></flowRegion><flowPara + id="flowPara12011">addr</flowPara></flowRoot> </g> + <g + inkscape:groupmode="layer" + id="layer8" + inkscape:label="control lines" + style="display:none" + sodipodi:insensitive="true"> + <path + style="fill:none;fill-rule:evenodd;stroke:#0000ff;stroke-width:2.5999999;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + d="M 218.25777,367.30916 L 407.73429,367.30916 L 407.73429,336.36019 L 429.47453,336.36019" + id="path7075" + sodipodi:nodetypes="cccc" /> + <path + style="fill:none;fill-rule:evenodd;stroke:#0000ff;stroke-width:2.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + d="M 218.3551,377.77584 L 727.92563,377.77584 L 727.92563,303.98129 L 752.85203,303.98129" + id="path7077" + sodipodi:nodetypes="cccc" /> + <path + style="fill:none;fill-rule:evenodd;stroke:#0000ff;stroke-width:1.20000005;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + d="M 218.38006,385.70894 L 732.72251,385.70894 L 732.72251,414.3094 L 754.90805,414.3094" + id="path7079" + sodipodi:nodetypes="cccc" /> + <path + sodipodi:nodetypes="cccc" + id="path7081" + d="M 218.25777,396.03796 L 406.53506,396.03796 L 406.53506,415.51643 L 632.58776,415.51643" + style="fill:none;fill-rule:evenodd;stroke:#0000ff;stroke-width:1.20000005;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> + <path + style="fill:none;fill-rule:evenodd;stroke:#0000ff;stroke-width:1.20000005;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + d="M 218.25777,356.72194 L 290.02581,356.72194 L 290.02581,317.56279 L 302.64256,317.37845" + id="path7083" + sodipodi:nodetypes="cccc" /> + <path + style="fill:none;fill-rule:evenodd;stroke:#0000ff;stroke-width:1.20000005;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + d="M 218.25777,344.58427 L 279.1872,344.58427 L 279.1872,256.01255 L 462.59854,256.01255 L 462.59854,232.02818 L 465.29678,232.02818" + id="path7085" + sodipodi:nodetypes="cccccc" /> + <path + style="fill:none;fill-rule:evenodd;stroke:#0000ff;stroke-width:1.20000005;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + d="M 218.25777,335.34176 L 268.24874,335.34176 L 268.24874,248.81724 L 384.64934,248.81724 L 384.64934,233.2274 L 388.53931,233.25091" + id="path7087" + sodipodi:nodetypes="cccccc" /> + <path + style="fill:none;fill-rule:evenodd;stroke:#0000ff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + d="M 218.25777,327.29848 L 257.45577,327.29848 L 257.45577,229.62974 L 303.35654,229.62974" + id="path7089" + sodipodi:nodetypes="cccc" /> + <path + sodipodi:type="star" + style="opacity:0.98999999;fill:#0000ff;fill-opacity:1;stroke:#0000ff;stroke-width:2;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="path7626" + sodipodi:sides="3" + sodipodi:cx="266.26431" + sodipodi:cy="204.78204" + sodipodi:r1="6.7838044" + sodipodi:r2="3.391902" + sodipodi:arg1="0" + sodipodi:arg2="1.0471976" + inkscape:flatsided="false" + inkscape:rounded="0" + inkscape:randomized="0" + d="M 273.04812,204.78204 L 267.96026,207.71952 L 262.87241,210.65699 L 262.87241,204.78204 L 262.87241,198.9071 L 267.96026,201.84457 L 273.04812,204.78204 z" + transform="matrix(0.6299715,0,0,0.6299715,136.33113,100.36649)" /> + <path + sodipodi:type="star" + style="opacity:0.98999999;fill:#0000ff;fill-opacity:1;stroke:#0000ff;stroke-width:2;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="path7628" + sodipodi:sides="3" + sodipodi:cx="266.26431" + sodipodi:cy="204.78204" + sodipodi:r1="6.7838044" + sodipodi:r2="3.391902" + sodipodi:arg1="0" + sodipodi:arg2="1.0471976" + inkscape:flatsided="false" + inkscape:rounded="0" + inkscape:randomized="0" + d="M 273.04812,204.78204 L 267.96026,207.71952 L 262.87241,210.65699 L 262.87241,204.78204 L 262.87241,198.9071 L 267.96026,201.84457 L 273.04812,204.78204 z" + transform="matrix(0.4295394,0,0,0.4295394,274.19489,145.05218)" /> + <path + sodipodi:type="star" + style="opacity:0.98999999;fill:#0000ff;fill-opacity:1;stroke:#0000ff;stroke-width:2;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="path7630" + sodipodi:sides="3" + sodipodi:cx="266.26431" + sodipodi:cy="204.78204" + sodipodi:r1="6.7838044" + sodipodi:r2="3.391902" + sodipodi:arg1="0" + sodipodi:arg2="1.0471976" + inkscape:flatsided="false" + inkscape:rounded="0" + inkscape:randomized="0" + d="M 273.04812,204.78204 L 267.96026,207.71952 L 262.87241,210.65699 L 262.87241,204.78204 L 262.87241,198.9071 L 267.96026,201.84457 L 273.04812,204.78204 z" + transform="matrix(0.4295394,0,0,0.4295394,351.0967,144.36603)" /> + <path + sodipodi:type="star" + style="opacity:0.98999999;fill:#0000ff;fill-opacity:1;stroke:#0000ff;stroke-width:2;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="path7632" + sodipodi:sides="3" + sodipodi:cx="266.26431" + sodipodi:cy="204.78204" + sodipodi:r1="6.7838044" + sodipodi:r2="3.391902" + sodipodi:arg1="0" + sodipodi:arg2="1.0471976" + inkscape:flatsided="false" + inkscape:rounded="0" + inkscape:randomized="0" + d="M 273.04812,204.78204 L 267.96026,207.71952 L 262.87241,210.65699 L 262.87241,204.78204 L 262.87241,198.9071 L 267.96026,201.84457 L 273.04812,204.78204 z" + transform="matrix(0.4295394,0,0,0.4295394,186.80377,229.51054)" /> + <path + sodipodi:type="star" + style="opacity:0.98999999;fill:#0000ff;fill-opacity:1;stroke:#0000ff;stroke-width:2;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="path7634" + sodipodi:sides="3" + sodipodi:cx="266.26431" + sodipodi:cy="204.78204" + sodipodi:r1="6.7838044" + sodipodi:r2="3.391902" + sodipodi:arg1="0" + sodipodi:arg2="1.0471976" + inkscape:flatsided="false" + inkscape:rounded="0" + inkscape:randomized="0" + d="M 273.04812,204.78204 L 267.96026,207.71952 L 262.87241,210.65699 L 262.87241,204.78204 L 262.87241,198.9071 L 267.96026,201.84457 L 273.04812,204.78204 z" + transform="matrix(0.6299715,0,0,0.6299715,261.11251,207.35334)" /> + <path + sodipodi:type="star" + style="opacity:0.98999999;fill:#0000ff;fill-opacity:1;stroke:#0000ff;stroke-width:2;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="path7636" + sodipodi:sides="3" + sodipodi:cx="266.26431" + sodipodi:cy="204.78204" + sodipodi:r1="6.7838044" + sodipodi:r2="3.391902" + sodipodi:arg1="0" + sodipodi:arg2="1.0471976" + inkscape:flatsided="false" + inkscape:rounded="0" + inkscape:randomized="0" + d="M 273.04812,204.78204 L 267.96026,207.71952 L 262.87241,210.65699 L 262.87241,204.78204 L 262.87241,198.9071 L 267.96026,201.84457 L 273.04812,204.78204 z" + transform="matrix(0.6299715,0,0,0.6299715,584.00209,174.97444)" /> + <path + sodipodi:type="star" + style="opacity:0.98999999;fill:#0000ff;fill-opacity:1;stroke:#0000ff;stroke-width:2;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="path7638" + sodipodi:sides="3" + sodipodi:cx="266.26431" + sodipodi:cy="204.78204" + sodipodi:r1="6.7838044" + sodipodi:r2="3.391902" + sodipodi:arg1="0" + sodipodi:arg2="1.0471976" + inkscape:flatsided="false" + inkscape:rounded="0" + inkscape:randomized="0" + d="M 273.04812,204.78204 L 267.96026,207.71952 L 262.87241,210.65699 L 262.87241,204.78204 L 262.87241,198.9071 L 267.96026,201.84457 L 273.04812,204.78204 z" + transform="matrix(0.4295394,0,0,0.4295394,640.70797,326.34744)" /> + <path + sodipodi:type="star" + style="opacity:0.98999999;fill:#0000ff;fill-opacity:1;stroke:#0000ff;stroke-width:2;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="path7640" + sodipodi:sides="3" + sodipodi:cx="266.26431" + sodipodi:cy="204.78204" + sodipodi:r1="6.7838044" + sodipodi:r2="3.391902" + sodipodi:arg1="0" + sodipodi:arg2="1.0471976" + inkscape:flatsided="false" + inkscape:rounded="0" + inkscape:randomized="0" + d="M 273.04812,204.78204 L 267.96026,207.71952 L 262.87241,210.65699 L 262.87241,204.78204 L 262.87241,198.9071 L 267.96026,201.84457 L 273.04812,204.78204 z" + transform="matrix(0.4295394,0,0,0.4295394,518.08788,327.54665)" /> + <g + inkscape:groupmode="layer" + id="layer28" + inkscape:label="IR control" + style="display:none"> + <path + style="fill:none;fill-rule:evenodd;stroke:#0000ff;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="M 218.77769,320.10671 L 245.06493,320.10671 L 245.06493,216.6537 L 213.29598,216.6537" + id="path7624" + sodipodi:nodetypes="cccc" /> + <path + sodipodi:type="star" + style="opacity:0.98999999;fill:#0000ff;fill-opacity:1;stroke:#0000ff;stroke-width:2;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline" + id="path7642" + sodipodi:sides="3" + sodipodi:cx="266.26431" + sodipodi:cy="204.78204" + sodipodi:r1="6.7838044" + sodipodi:r2="3.391902" + sodipodi:arg1="0" + sodipodi:arg2="1.0471976" + inkscape:flatsided="false" + inkscape:rounded="0" + inkscape:randomized="0" + d="M 273.04812,204.78204 L 267.96026,207.71952 L 262.87241,210.65699 L 262.87241,204.78204 L 262.87241,198.9071 L 267.96026,201.84457 L 273.04812,204.78204 z" + transform="matrix(-0.4295394,0,0,0.4295394,328.86019,128.47638)" /> + </g> + </g> +</svg>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/docs/img/emu/controller.svg Fri Apr 18 18:58:58 2014 +0100 @@ -0,0 +1,945 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="650" + height="400" + id="svg4823" + version="1.1" + inkscape:version="0.48.4 r9939" + sodipodi:docname="controller.svg"> + <defs + id="defs4825"> + <marker + inkscape:stockid="Arrow2Mend" + orient="auto" + refY="0" + refX="0" + id="Arrow2Mend" + style="overflow:visible"> + <path + id="path7308" + style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round" + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" + transform="scale(-0.6,-0.6)" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow2Mstart" + orient="auto" + refY="0" + refX="0" + id="Arrow2Mstart" + style="overflow:visible"> + <path + id="path7305" + style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round" + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" + transform="scale(0.6,0.6)" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow2Lend" + orient="auto" + refY="0" + refX="0" + id="Arrow2Lend" + style="overflow:visible"> + <path + id="path7302" + style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round" + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lstart" + orient="auto" + refY="0" + refX="0" + id="Arrow1Lstart" + style="overflow:visible"> + <path + id="path7281" + d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt" + transform="matrix(0.8,0,0,0.8,10,0)" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="Arrow1Lend" + style="overflow:visible"> + <path + id="path7284" + d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt" + transform="matrix(-0.8,0,0,-0.8,-10,0)" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="TriangleOutS" + orient="auto" + refY="0" + refX="0" + id="TriangleOutS" + style="overflow:visible"> + <path + inkscape:connector-curvature="0" + id="path2486" + d="m 5.77,0 -8.65,5 0,-10 8.65,5 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" + transform="scale(0.2,0.2)" /> + </marker> + <marker + inkscape:stockid="TriangleInS" + orient="auto" + refY="0" + refX="0" + id="TriangleInS" + style="overflow:visible"> + <path + inkscape:connector-curvature="0" + id="path2495" + d="m 5.77,0 -8.65,5 0,-10 8.65,5 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" + transform="scale(-0.2,-0.2)" /> + </marker> + <marker + inkscape:stockid="TriangleOutS" + orient="auto" + refY="0" + refX="0" + id="marker4803" + style="overflow:visible"> + <path + inkscape:connector-curvature="0" + id="path4805" + d="m 5.77,0 -8.65,5 0,-10 8.65,5 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" + transform="scale(0.2,0.2)" /> + </marker> + <marker + inkscape:stockid="TriangleOutS" + orient="auto" + refY="0" + refX="0" + id="TriangleOutS-9" + style="overflow:visible"> + <path + inkscape:connector-curvature="0" + id="path2486-4" + d="m 5.77,0 -8.65,5 0,-10 8.65,5 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" + transform="scale(0.2,0.2)" /> + </marker> + <marker + inkscape:stockid="TriangleInS" + orient="auto" + refY="0" + refX="0" + id="TriangleInS-6" + style="overflow:visible"> + <path + inkscape:connector-curvature="0" + id="path2495-8" + d="m 5.77,0 -8.65,5 0,-10 8.65,5 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" + transform="scale(-0.2,-0.2)" /> + </marker> + <marker + inkscape:stockid="TriangleOutS" + orient="auto" + refY="0" + refX="0" + id="marker6739" + style="overflow:visible"> + <path + inkscape:connector-curvature="0" + id="path6741" + d="m 5.77,0 -8.65,5 0,-10 8.65,5 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" + transform="scale(0.2,0.2)" /> + </marker> + <marker + inkscape:stockid="TriangleInS" + orient="auto" + refY="0" + refX="0" + id="TriangleInS-1" + style="overflow:visible"> + <path + inkscape:connector-curvature="0" + id="path2495-9" + d="m 5.77,0 -8.65,5 0,-10 8.65,5 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" + transform="scale(-0.2,-0.2)" /> + </marker> + <marker + inkscape:stockid="TriangleOutS" + orient="auto" + refY="0" + refX="0" + id="TriangleOutS-6" + style="overflow:visible"> + <path + inkscape:connector-curvature="0" + id="path2486-5" + d="m 5.77,0 -8.65,5 0,-10 8.65,5 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" + transform="scale(0.2,0.2)" /> + </marker> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.625" + inkscape:cx="333.84615" + inkscape:cy="200" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showgrid="false" + inkscape:window-width="1438" + inkscape:window-height="879" + inkscape:window-x="0" + inkscape:window-y="19" + inkscape:window-maximized="0" /> + <metadata + id="metadata4828"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title></dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1" + transform="translate(0,-652.36218)"> + <rect + style="fill:none;stroke:#000000;stroke-width:0.87942779;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;display:inline" + id="rect3093" + width="184.05536" + height="92.386597" + x="352.31451" + y="878.79504" /> + <flowRoot + xml:space="preserve" + id="flowRoot3095" + style="text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;display:inline" + transform="translate(-118.58608,195.50695)"><flowRegion + id="flowRegion3097"><rect + id="rect3099" + width="163.69331" + height="39.574219" + x="473.09171" + y="714.18256" + style="text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle" /></flowRegion><flowPara + id="flowPara3101">Main Memory</flowPara><flowPara + id="flowPara3103">64kB (65536 x 8-bit) RAM</flowPara></flowRoot> <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3135" + transform="translate(99.61871,360.70062)"><flowRegion + id="flowRegion3137"><rect + id="rect3139" + width="47.486629" + height="16.111536" + x="306.11917" + y="522.77289" /></flowRegion><flowPara + id="flowPara3141">Data</flowPara></flowRoot> <flowRoot + style="display:inline" + transform="translate(157.61871,360.70062)" + id="flowRoot3143" + xml:space="preserve"><flowRegion + id="flowRegion3145"><rect + y="522.77289" + x="306.11917" + height="19.709167" + width="63.076473" + id="rect3147" /></flowRegion><flowPara + id="flowPara3149">Address</flowPara></flowRoot> <path + style="fill:none;stroke:#000000;stroke-width:2.85700011;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#Arrow2Mstart);marker-end:url(#Arrow2Mend);display:inline" + d="m 419.57962,796.63857 0,78.6243" + id="path3163" + sodipodi:nodetypes="cc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" + inkscape:connector-curvature="0" /> + <path + style="fill:none;stroke:#000000;stroke-width:2.80497599;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#Arrow2Mstart);marker-end:url(#Arrow2Mend);display:inline" + d="m 482.74788,797.24484 0,78.2986" + id="path3217" + sodipodi:nodetypes="cc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" + inkscape:connector-curvature="0" /> + <path + inkscape:connector-curvature="0" + style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="m 407.6064,851.29583 26.06709,-6.98465" + id="path3073" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3077" + transform="translate(-52.84433,186.45848)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3079"><rect + id="rect3081" + width="35.614975" + height="21.199389" + x="489.28189" + y="652.11774" /></flowRegion><flowPara + id="flowPara3083">8</flowPara></flowRoot> <path + inkscape:connector-curvature="0" + style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="m 468.28675,850.99964 26.06709,-6.98465" + id="path3073-3" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3077-8" + transform="translate(7.836022,186.16229)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3079-2"><rect + id="rect3081-2" + width="35.614975" + height="21.199389" + x="489.28189" + y="652.11774" /></flowRegion><flowPara + id="flowPara3083-4">16</flowPara></flowRoot> <g + style="display:inline" + id="g4064" + transform="translate(-536.43695,652.93867)"> + <path + inkscape:connector-curvature="0" + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="path4058" + d="m 845.96645,266.34677 -83.98285,0" + style="fill:none;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" /> + <path + inkscape:connector-curvature="0" + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + style="fill:none;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" + d="m 845.96645,246.29411 -83.98285,0" + id="path4060" /> + <path + inkscape:connector-curvature="0" + style="fill:none;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" + d="m 845.96645,286.34677 -83.98285,0" + id="path4062" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <rect + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + y="226.20062" + x="761.75537" + height="80.028313" + width="84.43927" + id="rect3262" + style="fill:none;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;display:inline" /> + </g> + <rect + style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;display:inline" + id="rect3096" + width="146.46161" + height="78.04866" + x="191.55003" + y="965.34558" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="flowRoot3205" + xml:space="preserve" + transform="translate(41.27337,502.80243)" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1;display:inline"><flowRegion + id="flowRegion3207"><rect + style="font-size:8px;fill:#9e9e9e;fill-opacity:1" + y="466.64789" + x="254.28572" + height="20.714294" + width="28.412521" + id="rect3209" /></flowRegion><flowPara + id="flowPara3211">(TPL)</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="flowRoot3213" + xml:space="preserve" + transform="translate(-44.11483,502.80243)" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1;display:inline"><flowRegion + id="flowRegion3215"><rect + style="font-size:8px;fill:#9e9e9e;fill-opacity:1" + y="466.64789" + x="254.28572" + height="20.41449" + width="30.810957" + id="rect3217" /></flowRegion><flowPara + id="flowPara3219">(TPH)</flowPara></flowRoot> <flowRoot + style="display:inline" + id="flowRoot3221" + xml:space="preserve" + transform="translate(-11.62013,500.97165)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3223"><rect + y="466.64789" + x="254.28572" + height="18.315857" + width="45.201584" + id="rect3225" /></flowRegion><flowPara + id="flowPara3227">(TMPA)</flowPara></flowRoot> <path + inkscape:connector-curvature="0" + style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="m 191.18886,985.36504 146.90428,0" + id="path3229" /> + <rect + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + y="885.13928" + x="219.31841" + height="80.028313" + width="84.43927" + id="rect3066" + style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;display:inline" /> + <path + inkscape:connector-curvature="0" + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="path3068" + d="m 303.5295,925.28544 -83.98286,0" + style="fill:none;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" /> + <path + inkscape:connector-curvature="0" + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + style="fill:none;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" + d="m 303.5295,905.23278 -83.98286,0" + id="path3070" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(-4.48536,440.0654)" + id="flowRoot3072" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion3074"><rect + y="447.36218" + x="257.85715" + height="16.428572" + width="22.857143" + id="rect3076" /></flowRegion><flowPara + id="flowPara3078">R0</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(-0.76759,439.8779)" + id="flowRoot3080" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion3082"><rect + y="466.64789" + x="254.28572" + height="20.714285" + width="25.714285" + id="rect3084" /></flowRegion><flowPara + id="flowPara3086">R1</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(-0.72072,458.97165)" + xml:space="preserve" + id="flowRoot3088" + style="display:inline"><flowRegion + id="flowRegion3090"><rect + id="rect3092" + width="25.714285" + height="20.714285" + x="254.28572" + y="466.64789" /></flowRegion><flowPara + id="flowPara3094">R2</flowPara></flowRoot> <flowRoot + style="font-size:8px;fill:#9e9e9e;fill-opacity:1;display:inline" + transform="translate(41.27337,520.80243)" + xml:space="preserve" + id="flowRoot3098" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3100"><rect + id="rect3102" + width="28.412521" + height="20.714294" + x="254.28572" + y="466.64789" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1" /></flowRegion><flowPara + id="flowPara3104">(DPL)</flowPara></flowRoot> <flowRoot + style="font-size:8px;fill:#9e9e9e;fill-opacity:1;display:inline" + transform="translate(-44.11483,520.80243)" + xml:space="preserve" + id="flowRoot3106" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3108"><rect + id="rect3110" + width="30.810957" + height="20.41449" + x="254.28572" + y="466.64789" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1" /></flowRegion><flowPara + id="flowPara3112">(DPH)</flowPara></flowRoot> <path + inkscape:connector-curvature="0" + style="fill:none;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" + d="m 303.5295,945.28544 -83.98286,0" + id="path3139" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + id="flowRoot3141" + xml:space="preserve" + transform="translate(-0.72072,478.97165)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3143"><rect + y="466.64789" + x="254.28572" + height="20.714285" + width="25.714285" + id="rect3145" /></flowRegion><flowPara + id="flowPara3147">R3</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="flowRoot3347" + xml:space="preserve" + transform="translate(41.27337,540.35272)" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1;display:inline"><flowRegion + id="flowRegion3349"><rect + y="466.64789" + x="254.28572" + height="20.114685" + width="32.010178" + id="rect3351" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1" /></flowRegion><flowPara + id="flowPara3353">(SPL)</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="flowRoot3355" + xml:space="preserve" + transform="translate(-44.11483,540.35272)" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1;display:inline"><flowRegion + id="flowRegion3357"><rect + y="466.64789" + x="254.28572" + height="19.81488" + width="32.609787" + id="rect3359" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1" /></flowRegion><flowPara + id="flowPara3361">(SPH)</flowPara></flowRoot> <flowRoot + style="font-size:8px;fill:#9e9e9e;fill-opacity:1;display:inline" + transform="translate(41.27337,559.92873)" + xml:space="preserve" + id="flowRoot3367" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3369"><rect + id="rect3371" + width="28.712326" + height="21.014099" + x="254.28572" + y="466.64789" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1" /></flowRegion><flowPara + id="flowPara3373">(PCL)</flowPara></flowRoot> <flowRoot + style="font-size:8px;fill:#9e9e9e;fill-opacity:1;display:inline" + transform="translate(-44.11483,559.92873)" + xml:space="preserve" + id="flowRoot3375" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3377"><rect + id="rect3379" + width="35.60783" + height="18.915466" + x="254.28572" + y="466.64789" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1" /></flowRegion><flowPara + id="flowPara3381">(PCH)</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(-7.62013,518.97165)" + xml:space="preserve" + id="flowRoot4177" + style="display:inline"><flowRegion + id="flowRegion4179"><rect + id="rect4181" + width="38.605877" + height="19.515076" + x="254.28572" + y="466.64789" /></flowRegion><flowPara + id="flowPara4183">DPTR</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(1.25389,538.97165)" + xml:space="preserve" + id="flowRoot4185" + style="display:inline"><flowRegion + id="flowRegion4187"><rect + id="rect4189" + width="25.714285" + height="20.714285" + x="254.28572" + y="466.64789" /></flowRegion><flowPara + id="flowPara4191">SP</flowPara></flowRoot> <flowRoot + style="display:inline" + id="flowRoot4193" + xml:space="preserve" + transform="translate(0.79686,557.57126)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion4195"><rect + y="466.64789" + x="254.28572" + height="20.714285" + width="25.714285" + id="rect4197" /></flowRegion><flowPara + id="flowPara4199">PC</flowPara></flowRoot> <path + inkscape:connector-curvature="0" + id="path4389" + d="m 191.18886,1003.365 146.90428,0" + style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" /> + <path + inkscape:connector-curvature="0" + style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="m 191.18886,1022.8018 146.90428,0" + id="path4391" /> + <path + inkscape:connector-curvature="0" + style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="m 250.32194,851.34567 26.0671,-6.98465" + id="path3073-9" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3077-1" + transform="translate(-212.12878,190.50832)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3079-4"><rect + id="rect3081-5" + width="35.614975" + height="21.199389" + x="489.28189" + y="652.11774" /></flowRegion><flowPara + id="flowPara3083-7">8</flowPara></flowRoot> <path + inkscape:connector-curvature="0" + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="path3068-2" + d="m 173.92691,932.71066 -83.982856,0" + style="fill:none;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" /> + <path + inkscape:connector-curvature="0" + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + style="fill:none;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" + d="m 173.92691,912.658 -83.982856,0" + id="path3070-8" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(-128.70026,447.30312)" + id="flowRoot3080-8" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion3082-8"><rect + y="466.64789" + x="254.28572" + height="20.714285" + width="25.714285" + id="rect3084-5" /></flowRegion><flowPara + id="flowPara3086-6">IR</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(-136.58991,466.39687)" + xml:space="preserve" + id="flowRoot3088-5" + style="display:inline"><flowRegion + id="flowRegion3090-4"><rect + id="rect3092-9" + width="44.00367" + height="15.488754" + x="254.28572" + y="466.64789" /></flowRegion><flowPara + id="flowPara3094-1">flags</flowPara></flowRoot> <path + inkscape:connector-curvature="0" + style="fill:none;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" + d="m 173.92691,952.71066 -83.982856,0" + id="path3139-2" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + id="flowRoot3141-9" + xml:space="preserve" + transform="translate(-126.44733,486.39687)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3143-0"><rect + y="466.64789" + x="254.28572" + height="20.714285" + width="25.714285" + id="rect3145-2" /></flowRegion><flowPara + id="flowPara3147-0">A</flowPara></flowRoot> <rect + style="fill:#000000;fill-opacity:0;stroke:#000000;stroke-width:1.875;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" + id="rect6067" + width="84.044098" + height="58.35186" + x="89.913429" + y="912.19037" /> + <path + style="fill:none;stroke:#000000;stroke-width:2.829;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#Arrow2Mstart);marker-end:url(#Arrow2Mend)" + d="M 132.80019,911.14215 132.36473,797.48666" + id="path6075" + inkscape:connector-type="polyline" + inkscape:connector-curvature="0" /> + <rect + style="fill:#000000;fill-opacity:0;stroke:#000000;stroke-width:2.16017842;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" + id="rect7073" + width="397.59189" + height="126.20728" + x="96.89637" + y="667.10468" /> + <rect + style="fill:#000000;fill-opacity:0;stroke:#000000;stroke-width:2.829;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" + id="rect7077" + width="90.46154" + height="90.46154" + x="550.46155" + y="682.82373" /> + <text + xml:space="preserve" + style="font-size:14px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:DejaVu Sans Mono;-inkscape-font-specification:DejaVu Sans Mono" + x="593.69232" + y="733.74677" + id="text7079" + sodipodi:linespacing="125%"><tspan + sodipodi:role="line" + id="tspan7081" + x="593.69232" + y="733.74677">ELB816</tspan></text> + <path + style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:1, 2;stroke-dashoffset:0;marker-start:url(#Arrow1Lstart);marker-end:url(#Arrow1Lend)" + d="m 550.46155,728.37923 -55.97329,0.40185" + id="path7083" + inkscape:connector-type="polyline" + inkscape:connector-curvature="0" + inkscape:connection-start="#rect7077" + inkscape:connection-start-point="d4" + inkscape:connection-end="#rect7073" + inkscape:connection-end-point="d4" /> + <path + style="fill:none;stroke:#000000;stroke-width:2.85700011;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#Arrow2Mstart);marker-mid:none;marker-end:url(#Arrow2Mend)" + d="m 594,775.52327 0,50.83891" + id="path9089" + inkscape:connector-type="polyline" + inkscape:connector-curvature="0" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;stroke:#000000;stroke-width:2.829;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#Arrow2Mstart);marker-end:url(#Arrow2Mend);display:inline" + d="m 264.61538,797.59957 0,76.90983" + id="path3163-9" + sodipodi:nodetypes="cc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" + inkscape:connector-curvature="0" /> + <path + inkscape:connector-curvature="0" + style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="m 120.65828,866.08753 26.0671,-6.98465" + id="path3073-9-4" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3077-1-5" + transform="translate(-341.79244,205.25018)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3079-4-7"><rect + id="rect3081-5-7" + width="35.614975" + height="21.199389" + x="489.28189" + y="652.11774" /></flowRegion><flowPara + id="flowPara3083-7-7">8</flowPara></flowRoot> <path + style="fill:none;stroke:#000000;stroke-width:2.86088228;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" + d="m 131.69425,826.51409 463.99612,-3.07291" + id="path9153" + inkscape:connector-type="polyline" + inkscape:connector-curvature="0" + sodipodi:nodetypes="cc" /> + <text + xml:space="preserve" + style="font-size:14px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:DejaVu Sans Mono;-inkscape-font-specification:DejaVu Sans Mono" + x="295.48041" + y="735.46515" + id="text9155" + sodipodi:linespacing="125%"><tspan + sodipodi:role="line" + id="tspan9157" + x="295.48041" + y="735.46515">Controller</tspan></text> + <path + sodipodi:type="arc" + style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" + id="path12181" + sodipodi:cx="410.76923" + sodipodi:cy="171.38461" + sodipodi:rx="4" + sodipodi:ry="4" + d="m 414.76923,171.38461 a 4,4 0 1 1 -8,0 4,4 0 1 1 8,0 z" + transform="translate(72,652.36218)" /> + <path + transform="translate(8.923082,653.28526)" + sodipodi:type="arc" + style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" + id="path12181-0" + sodipodi:cx="410.76923" + sodipodi:cy="171.38461" + sodipodi:rx="4" + sodipodi:ry="4" + d="m 414.76923,171.38461 a 4,4 0 1 1 -8,0 4,4 0 1 1 8,0 z" /> + <path + transform="translate(-146.15384,654.51602)" + sodipodi:type="arc" + style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" + id="path12181-7" + sodipodi:cx="410.76923" + sodipodi:cy="171.38461" + sodipodi:rx="4" + sodipodi:ry="4" + d="m 414.76923,171.38461 a 4,4 0 1 1 -8,0 4,4 0 1 1 8,0 z" /> + <path + transform="translate(-277.85046,655.28526)" + sodipodi:type="arc" + style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" + id="path12181-1" + sodipodi:cx="410.76923" + sodipodi:cy="171.38461" + sodipodi:rx="4" + sodipodi:ry="4" + d="m 414.76923,171.38461 a 4,4 0 1 1 -8,0 4,4 0 1 1 8,0 z" /> + <path + style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:none;marker-end:url(#Arrow2Lend)" + d="m 43.692,729.43918 52.308,0" + id="path15295" + inkscape:connector-type="polyline" + inkscape:connector-curvature="0" + sodipodi:nodetypes="cc" /> + <path + inkscape:connector-curvature="0" + style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="M 76.112523,721.44452 54.963439,738.20743" + id="path3073-9-4-7" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3077-1-5-9" + transform="translate(-439.02321,61.404023)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3079-4-7-7"><rect + id="rect3081-5-7-0" + width="35.614975" + height="21.199389" + x="489.28189" + y="652.11774" /></flowRegion><flowPara + id="flowPara3083-7-7-8">8</flowPara></flowRoot> <text + xml:space="preserve" + style="font-size:14px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:DejaVu Sans Mono;-inkscape-font-specification:DejaVu Sans Mono" + x="150.15385" + y="735.42755" + id="text15739" + sodipodi:linespacing="125%"><tspan + sodipodi:role="line" + id="tspan15741" + x="150.15385" + y="735.42755">Command In</tspan></text> + </g> +</svg>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/docs/img/emu/memory.svg Fri Apr 18 18:58:58 2014 +0100 @@ -0,0 +1,637 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="400" + height="285" + id="svg4823" + version="1.1" + inkscape:version="0.48.4 r9939" + sodipodi:docname="memory.svg"> + <defs + id="defs4825"> + <marker + inkscape:stockid="TriangleOutS" + orient="auto" + refY="0" + refX="0" + id="TriangleOutS" + style="overflow:visible"> + <path + inkscape:connector-curvature="0" + id="path2486" + d="m 5.77,0 -8.65,5 0,-10 8.65,5 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" + transform="scale(0.2,0.2)" /> + </marker> + <marker + inkscape:stockid="TriangleInS" + orient="auto" + refY="0" + refX="0" + id="TriangleInS" + style="overflow:visible"> + <path + inkscape:connector-curvature="0" + id="path2495" + d="m 5.77,0 -8.65,5 0,-10 8.65,5 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" + transform="scale(-0.2,-0.2)" /> + </marker> + <marker + inkscape:stockid="TriangleOutS" + orient="auto" + refY="0" + refX="0" + id="marker4803" + style="overflow:visible"> + <path + inkscape:connector-curvature="0" + id="path4805" + d="m 5.77,0 -8.65,5 0,-10 8.65,5 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" + transform="scale(0.2,0.2)" /> + </marker> + <marker + inkscape:stockid="TriangleOutS" + orient="auto" + refY="0" + refX="0" + id="TriangleOutS-9" + style="overflow:visible"> + <path + inkscape:connector-curvature="0" + id="path2486-4" + d="m 5.77,0 -8.65,5 0,-10 8.65,5 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" + transform="scale(0.2,0.2)" /> + </marker> + <marker + inkscape:stockid="TriangleInS" + orient="auto" + refY="0" + refX="0" + id="TriangleInS-6" + style="overflow:visible"> + <path + inkscape:connector-curvature="0" + id="path2495-8" + d="m 5.77,0 -8.65,5 0,-10 8.65,5 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" + transform="scale(-0.2,-0.2)" /> + </marker> + <marker + inkscape:stockid="TriangleOutS" + orient="auto" + refY="0" + refX="0" + id="marker6739" + style="overflow:visible"> + <path + inkscape:connector-curvature="0" + id="path6741" + d="m 5.77,0 -8.65,5 0,-10 8.65,5 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" + transform="scale(0.2,0.2)" /> + </marker> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="0.81190476" + inkscape:cx="300.46137" + inkscape:cy="30.992195" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showgrid="false" + inkscape:window-width="1438" + inkscape:window-height="879" + inkscape:window-x="0" + inkscape:window-y="19" + inkscape:window-maximized="0" /> + <metadata + id="metadata4828"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title></dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1" + transform="translate(0,-767.36218)"> + <rect + style="fill:none;stroke:#000000;stroke-width:0.92494678;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;display:inline" + id="rect3093" + width="203.70215" + height="92.34108" + x="177.12589" + y="902.65942" /> + <flowRoot + xml:space="preserve" + id="flowRoot3095" + style="text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;display:inline" + transform="translate(-292.10514,219.34859)"><flowRegion + id="flowRegion3097"><rect + id="rect3099" + width="163.69331" + height="39.574219" + x="473.09171" + y="714.18256" + style="text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle" /></flowRegion><flowPara + id="flowPara3101">Main Memory</flowPara><flowPara + id="flowPara3103">64kB (65536 x 8-bit) RAM</flowPara></flowRoot> <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3135" + transform="translate(-55.90035,384.54226)"><flowRegion + id="flowRegion3137"><rect + id="rect3139" + width="47.486629" + height="16.111536" + x="306.11917" + y="522.77289" /></flowRegion><flowPara + id="flowPara3141">Data</flowPara></flowRoot> <flowRoot + style="display:inline" + transform="translate(2.099643,384.54226)" + id="flowRoot3143" + xml:space="preserve"><flowRegion + id="flowRegion3145"><rect + y="522.77289" + x="306.11917" + height="19.709167" + width="63.076473" + id="rect3147" /></flowRegion><flowPara + id="flowPara3149">Address</flowPara></flowRoot> <path + style="fill:none;stroke:#000000;stroke-width:2.82915497;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#TriangleInS);marker-end:url(#TriangleOutS);display:inline" + d="m 264.06056,822.26052 0,76.90983" + id="path3163" + sodipodi:nodetypes="cc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" + inkscape:connector-curvature="0" /> + <path + style="fill:none;stroke:#000000;stroke-width:2.84999514;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#TriangleOutS);display:inline" + d="m 327.22882,818.11503 0,81.16458" + id="path3217" + sodipodi:nodetypes="cc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" + inkscape:connector-curvature="0" /> + <path + inkscape:connector-curvature="0" + style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="m 252.08734,867.13747 26.06709,-6.98465" + id="path3073" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3077" + transform="translate(-208.36339,202.30012)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3079"><rect + id="rect3081" + width="35.614975" + height="21.199389" + x="489.28189" + y="652.11774" /></flowRegion><flowPara + id="flowPara3083">8</flowPara></flowRoot> <path + inkscape:connector-curvature="0" + style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="m 312.76769,866.84128 26.06709,-6.98465" + id="path3073-3" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3077-8" + transform="translate(-147.68304,202.00393)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3079-2"><rect + id="rect3081-2" + width="35.614975" + height="21.199389" + x="489.28189" + y="652.11774" /></flowRegion><flowPara + id="flowPara3083-4">16</flowPara></flowRoot> <g + style="display:inline" + id="g4064" + transform="translate(-710.71261,594.93867)"> + <path + inkscape:connector-curvature="0" + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="path4058" + d="m 845.96645,266.34677 -83.98285,0" + style="fill:none;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" /> + <path + inkscape:connector-curvature="0" + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + style="fill:none;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" + d="m 845.96645,246.29411 -83.98285,0" + id="path4060" /> + <path + inkscape:connector-curvature="0" + style="fill:none;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" + d="m 845.96645,286.34677 -83.98285,0" + id="path4062" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <rect + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + y="226.20062" + x="761.75537" + height="80.028313" + width="84.43927" + id="rect3262" + style="fill:none;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;display:inline" /> + </g> + <rect + style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;display:inline" + id="rect3096" + width="146.46161" + height="78.04866" + x="17.274384" + y="907.34558" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="flowRoot3205" + xml:space="preserve" + transform="translate(-133.00229,444.80243)" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1;display:inline"><flowRegion + id="flowRegion3207"><rect + style="font-size:8px;fill:#9e9e9e;fill-opacity:1" + y="466.64789" + x="254.28572" + height="20.714294" + width="28.412521" + id="rect3209" /></flowRegion><flowPara + id="flowPara3211">(TPL)</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="flowRoot3213" + xml:space="preserve" + transform="translate(-218.39049,444.80243)" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1;display:inline"><flowRegion + id="flowRegion3215"><rect + style="font-size:8px;fill:#9e9e9e;fill-opacity:1" + y="466.64789" + x="254.28572" + height="20.41449" + width="30.810957" + id="rect3217" /></flowRegion><flowPara + id="flowPara3219">(TPH)</flowPara></flowRoot> <flowRoot + style="display:inline" + id="flowRoot3221" + xml:space="preserve" + transform="translate(-185.89579,442.97165)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3223"><rect + y="466.64789" + x="254.28572" + height="18.315857" + width="45.201584" + id="rect3225" /></flowRegion><flowPara + id="flowPara3227">(TMPA)</flowPara></flowRoot> <path + inkscape:connector-curvature="0" + style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="m 16.913202,927.36504 146.904278,0" + id="path3229" /> + <rect + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + y="827.13928" + x="45.042755" + height="80.028313" + width="84.43927" + id="rect3066" + style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;display:inline" /> + <path + inkscape:connector-curvature="0" + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="path3068" + d="m 129.25384,867.28544 -83.982858,0" + style="fill:none;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" /> + <path + inkscape:connector-curvature="0" + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + style="fill:none;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" + d="m 129.25384,847.23278 -83.982858,0" + id="path3070" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(-178.76102,382.0654)" + id="flowRoot3072" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion3074"><rect + y="447.36218" + x="257.85715" + height="16.428572" + width="22.857143" + id="rect3076" /></flowRegion><flowPara + id="flowPara3078">R0</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(-175.04325,381.8779)" + id="flowRoot3080" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion3082"><rect + y="466.64789" + x="254.28572" + height="20.714285" + width="25.714285" + id="rect3084" /></flowRegion><flowPara + id="flowPara3086">R1</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(-174.99638,400.97165)" + xml:space="preserve" + id="flowRoot3088" + style="display:inline"><flowRegion + id="flowRegion3090"><rect + id="rect3092" + width="25.714285" + height="20.714285" + x="254.28572" + y="466.64789" /></flowRegion><flowPara + id="flowPara3094">R2</flowPara></flowRoot> <flowRoot + style="font-size:8px;fill:#9e9e9e;fill-opacity:1;display:inline" + transform="translate(-133.00229,462.80243)" + xml:space="preserve" + id="flowRoot3098" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3100"><rect + id="rect3102" + width="28.412521" + height="20.714294" + x="254.28572" + y="466.64789" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1" /></flowRegion><flowPara + id="flowPara3104">(DPL)</flowPara></flowRoot> <flowRoot + style="font-size:8px;fill:#9e9e9e;fill-opacity:1;display:inline" + transform="translate(-218.39049,462.80243)" + xml:space="preserve" + id="flowRoot3106" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3108"><rect + id="rect3110" + width="30.810957" + height="20.41449" + x="254.28572" + y="466.64789" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1" /></flowRegion><flowPara + id="flowPara3112">(DPH)</flowPara></flowRoot> <path + inkscape:connector-curvature="0" + style="fill:none;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" + d="m 129.25384,887.28544 -83.982858,0" + id="path3139" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + id="flowRoot3141" + xml:space="preserve" + transform="translate(-174.99638,420.97165)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3143"><rect + y="466.64789" + x="254.28572" + height="20.714285" + width="25.714285" + id="rect3145" /></flowRegion><flowPara + id="flowPara3147">R3</flowPara></flowRoot> <path + inkscape:connector-curvature="0" + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + sodipodi:nodetypes="cc" + id="path3300" + d="m 87.60997,817.15837 0,-20.61742" + style="fill:none;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#TriangleInS);marker-end:url(#TriangleOutS);display:inline" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="flowRoot3347" + xml:space="preserve" + transform="translate(-133.00229,482.35272)" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1;display:inline"><flowRegion + id="flowRegion3349"><rect + y="466.64789" + x="254.28572" + height="20.114685" + width="32.010178" + id="rect3351" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1" /></flowRegion><flowPara + id="flowPara3353">(SPL)</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="flowRoot3355" + xml:space="preserve" + transform="translate(-218.39049,482.35272)" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1;display:inline"><flowRegion + id="flowRegion3357"><rect + y="466.64789" + x="254.28572" + height="19.81488" + width="32.609787" + id="rect3359" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1" /></flowRegion><flowPara + id="flowPara3361">(SPH)</flowPara></flowRoot> <flowRoot + style="font-size:8px;fill:#9e9e9e;fill-opacity:1;display:inline" + transform="translate(-133.00229,501.92873)" + xml:space="preserve" + id="flowRoot3367" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3369"><rect + id="rect3371" + width="28.712326" + height="21.014099" + x="254.28572" + y="466.64789" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1" /></flowRegion><flowPara + id="flowPara3373">(PCL)</flowPara></flowRoot> <flowRoot + style="font-size:8px;fill:#9e9e9e;fill-opacity:1;display:inline" + transform="translate(-218.39049,501.92873)" + xml:space="preserve" + id="flowRoot3375" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3377"><rect + id="rect3379" + width="35.60783" + height="18.915466" + x="254.28572" + y="466.64789" + style="font-size:8px;fill:#9e9e9e;fill-opacity:1" /></flowRegion><flowPara + id="flowPara3381">(PCH)</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(-181.89579,460.97165)" + xml:space="preserve" + id="flowRoot4177" + style="display:inline"><flowRegion + id="flowRegion4179"><rect + id="rect4181" + width="38.605877" + height="19.515076" + x="254.28572" + y="466.64789" /></flowRegion><flowPara + id="flowPara4183">DPTR</flowPara></flowRoot> <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(-173.02177,480.97165)" + xml:space="preserve" + id="flowRoot4185" + style="display:inline"><flowRegion + id="flowRegion4187"><rect + id="rect4189" + width="25.714285" + height="20.714285" + x="254.28572" + y="466.64789" /></flowRegion><flowPara + id="flowPara4191">SP</flowPara></flowRoot> <flowRoot + style="display:inline" + id="flowRoot4193" + xml:space="preserve" + transform="translate(-173.4788,499.57126)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion4195"><rect + y="466.64789" + x="254.28572" + height="20.714285" + width="25.714285" + id="rect4197" /></flowRegion><flowPara + id="flowPara4199">PC</flowPara></flowRoot> <path + inkscape:connector-curvature="0" + id="path4389" + d="m 16.913202,945.36504 146.904278,0" + style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" /> + <path + inkscape:connector-curvature="0" + style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="m 16.913202,964.8018 146.904278,0" + id="path4391" /> + <path + inkscape:connector-curvature="0" + style="fill:none;stroke:#000000;stroke-width:3.75;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#TriangleOutS);display:inline" + d="m 88.80919,985.0219 0,21.6483" + id="path4461" + sodipodi:nodetypes="cc" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <path + inkscape:connector-curvature="0" + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + id="path4463" + d="M 78.131052,999.3628 98.90258,992.2773" + style="fill:none;stroke:#000000;stroke-width:0.89908892px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" /> + <flowRoot + inkscape:export-ydpi="300" + inkscape:export-xdpi="300" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + transform="translate(-388.2653,336.87346)" + id="flowRoot4465" + xml:space="preserve" + style="display:inline"><flowRegion + id="flowRegion4467"><rect + y="652.11774" + x="489.28189" + height="21.199389" + width="35.614975" + id="rect4469" /></flowRegion><flowPara + id="flowPara4471">16</flowPara></flowRoot> <path + inkscape:connector-curvature="0" + style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" + d="m 74.046286,811.34567 26.067094,-6.98465" + id="path3073-9" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300" /> + <flowRoot + style="display:inline" + xml:space="preserve" + id="flowRoot3077-1" + transform="translate(-386.40444,146.50832)" + inkscape:export-filename="M:\teaching\elb3475\475lectures\week1\images\8080architecture.png" + inkscape:export-xdpi="300" + inkscape:export-ydpi="300"><flowRegion + id="flowRegion3079-4"><rect + id="rect3081-5" + width="35.614975" + height="21.199389" + x="489.28189" + y="652.11774" /></flowRegion><flowPara + id="flowPara3083-7">8</flowPara></flowRoot> </g> +</svg>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/docs/lyx/#emu.lyx# Fri Apr 18 18:58:58 2014 +0100 @@ -0,0 +1,1808 @@ +#LyX 2.0 created this file. For more info see http://www.lyx.org/ +\lyxformat 413 +\begin_document +\begin_header +\textclass article +\begin_preamble +\usepackage[export]{adjustbox}% http://ctan.org/pkg/adjustbox +% Resize figures that are too wide for the page. +\let\oldincludegraphics\includegraphics +\renewcommand\includegraphics[2][]{% + \oldincludegraphics[#1,max width=\linewidth,max height=\textheight]{#2} +} +\end_preamble +\use_default_options true +\maintain_unincluded_children false +\language english +\language_package default +\inputencoding auto +\fontencoding global +\font_roman default +\font_sans default +\font_typewriter default +\font_default_family default +\use_non_tex_fonts false +\font_sc false +\font_osf false +\font_sf_scale 100 +\font_tt_scale 100 + +\graphics default +\default_output_format default +\output_sync 0 +\bibtex_command default +\index_command default +\paperfontsize default +\spacing single +\use_hyperref false +\papersize default +\use_geometry false +\use_amsmath 1 +\use_esint 1 +\use_mhchem 1 +\use_mathdots 1 +\cite_engine basic +\use_bibtopic false +\use_indices false +\paperorientation portrait +\suppress_date false +\use_refstyle 1 +\index Index +\shortcut idx +\color #008000 +\end_index +\secnumdepth 3 +\tocdepth 3 +\paragraph_separation indent +\paragraph_indentation default +\quotes_language english +\papercolumns 1 +\papersides 1 +\paperpagestyle default +\tracking_changes false +\output_changes false +\html_math_output 0 +\html_css_as_file 0 +\html_be_strict false +\end_header + +\begin_body + +\begin_layout Part +The Emulator +\end_layout + +\begin_layout Section +Emulator Design +\end_layout + +\begin_layout Standard +\begin_inset Graphics + filename /home/jmz/qm/ede/docs/img/emu/ELB816_system.svg + display false + +\end_inset + + +\end_layout + +\begin_layout Standard +Above is block diagram of a micro-controller taken from the original ELB816 + specification. + Implementing this system as a piece of software is the goal of this section + of the project. +\end_layout + +\begin_layout Subsection +Memory and Registers +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +bigskip +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Graphics + filename /home/jmz/qm/ede/docs/img/emu/memory.svg + display false + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +bigskip +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +The micro-controller is based on a Von Neumann architecture and has: +\end_layout + +\begin_layout Itemize +A single block of up to 64k byte addressable memory for storing both data + and code. +\end_layout + +\begin_layout Itemize +Two banks of four 8-bit general purpose registers (R0 to R3). +\end_layout + +\begin_layout Itemize +Four 16 bit-content specific (PC, SP, DPTR and TMPA) +\end_layout + +\begin_layout Itemize +Three 8-bit content specific registers (A, flags and IR) +\end_layout + +\begin_layout Standard +The general purpose and 16-bit registers can exist as a single sixteen byte + block of memory spaces with the following encoding: +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +bigskip +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Tabular +<lyxtabular version="3" rows="10" columns="5"> +<features tabularvalignment="middle"> +<column alignment="center" valignment="top" width="0"> +<column alignment="center" valignment="top" width="0"> +<column alignment="center" valignment="top" width="0"> +<column alignment="center" valignment="top" width="0"> +<column alignment="center" valignment="top" width="0"> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout + +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +MSB +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +MSB +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Description +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout + +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +LSB +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout + +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +User Accessible? +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +000 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +R0 bank 1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +R0 bank 0 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +General Purpose +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Yes +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +001 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +R1 bank 1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +R1 bank 0 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +General Purpose +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Yes +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +010 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +R2 bank 1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +R2 bank 0 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +General Purpose +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Yes +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +011 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +R3 bank 1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +R3 bank 0 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +General Purpose +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Yes +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +100 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +DPH +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +DPL +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Data Pointer +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Yes +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +101 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +SPH +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +SPL +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Stack Pointer +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Yes +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +110 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +PCH +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +PCL +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Program Counter +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +No +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +111 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +TPH +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +TPL +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Temp Address Register +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +No +\end_layout + +\end_inset +</cell> +</row> +</lyxtabular> + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Newpage pagebreak +\end_inset + + +\end_layout + +\begin_layout Standard +The 8-bit flag register can exist as a single byte with the following format: +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +bigskip +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Tabular +<lyxtabular version="3" rows="9" columns="3"> +<features tabularvalignment="middle"> +<column alignment="center" valignment="top" width="0"> +<column alignment="center" valignment="top" width="0"> +<column alignment="left" valignment="top" width="10cm"> +<row> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Bit +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Flag +\end_layout + +\end_inset +</cell> +<cell multicolumn="1" alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Description +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +BS +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +User Accessible: Select register bank +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +IE +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +User Accessible: Enable Interrupts when 1 +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +2 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +OV +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Set to 1 when result of arithmetic operation has even parity +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +3 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +S +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Set to 1 when result of arithmetic operation is negative +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +4 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +P +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Set to 1 when result of arithmetic operation has even parity +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +5 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +AC +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Set to 1 when result of arithmetic operation generates a carry or borrow + from bit 3 +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +6 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Z +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Set to 1 when result of arithmetic operation is Zero +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +7 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +C +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +User Accessible: Set to 1 when result of arithmetic operation generates + a carry or borrow from bit 7. + Used in rotate through carry operations +\end_layout + +\end_inset +</cell> +</row> +</lyxtabular> + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +bigskip +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +There is also an 8-bit accumulator register for storing the result of various + operations and an 8-bit instruction register for the storing the instruction + currently being executed. +\end_layout + +\begin_layout Subsection +Control and Execution +\end_layout + +\begin_layout Standard +The emulator needs to be controlled externally. + This could be via a serial or a file buffer depending on the platform. +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +bigskip +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Graphics + filename /home/jmz/qm/ede/docs/img/emu/controller.svg + display false + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +bigskip +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +Below is a control protocol which allows and control of the emulators memory + and execution. +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +bigskip +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Tabular +<lyxtabular version="3" rows="15" columns="5"> +<features tabularvalignment="middle"> +<column alignment="center" valignment="top" width="0"> +<column alignment="left" valignment="top" width="2cm"> +<column alignment="center" valignment="top" width="1cm"> +<column alignment="center" valignment="top" width="1cm"> +<column alignment="center" valignment="top" width="3cm"> +<row> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Function +\end_layout + +\end_inset +</cell> +<cell multicolumn="1" alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Arguments +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Command Byte +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Length +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Description +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +step +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +- +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x00 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Execute Instruction at PC +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +run +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +- +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x01 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Execute instructions from PC until a break point is reached +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +set register +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +register address, value +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x02 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +3 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Set a register +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +get register +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +register address +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x03 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +2 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Get the value of a register +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +set flag +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +flag bit, 0 or 1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x04 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +3 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Turn a flag bit on or off. + LSB = 0, MSB =7 +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +get flag +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +flag bit +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x05 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +2 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Get the value of a flag bit +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +write memory block +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +address high, address low, length high, length low, [byte array] +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x06 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +6+ +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Set a block of memory of arbitrary length with the bytes in the byte array +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +read memory block +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +address high, address low, length high, length low +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x07 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +5 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Read a block of memory of arbitrary length +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +get A +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +- +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x08 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Get value of A +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +get flags +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +- +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x09 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Get value of flags +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +get IR +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +- +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0xA +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Get Value of IR +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +run for length +\end_layout + +\end_inset +</cell> +<cell multirow="3" alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +length high, length low +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x0B +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +3 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Run for length number of instruction +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +free run +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +- +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x0C +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Run forever - Bypass controller +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +set break point +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +break point index, address high, address low +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x0D +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +4 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Set 1 of 8 possible break points +\end_layout + +\end_inset +</cell> +</row> +</lyxtabular> + +\end_inset + + +\end_layout + +\begin_layout Subsection +Interrupt Controller +\end_layout + +\begin_layout Subsection +Timer +\end_layout + +\begin_layout Section +Emulator Implementation +\end_layout + +\begin_layout Section +Emulator Testing +\end_layout + +\end_body +\end_document
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/docs/lyx/asm.lyx Fri Apr 18 18:58:58 2014 +0100 @@ -0,0 +1,79 @@ +#LyX 2.0 created this file. For more info see http://www.lyx.org/ +\lyxformat 413 +\begin_document +\begin_header +\textclass article +\use_default_options true +\maintain_unincluded_children false +\language english +\language_package default +\inputencoding auto +\fontencoding global +\font_roman default +\font_sans default +\font_typewriter default +\font_default_family default +\use_non_tex_fonts false +\font_sc false +\font_osf false +\font_sf_scale 100 +\font_tt_scale 100 + +\graphics default +\default_output_format default +\output_sync 0 +\bibtex_command default +\index_command default +\paperfontsize default +\use_hyperref false +\papersize default +\use_geometry false +\use_amsmath 1 +\use_esint 1 +\use_mhchem 1 +\use_mathdots 1 +\cite_engine basic +\use_bibtopic false +\use_indices false +\paperorientation portrait +\suppress_date false +\use_refstyle 1 +\index Index +\shortcut idx +\color #008000 +\end_index +\secnumdepth 3 +\tocdepth 3 +\paragraph_separation indent +\paragraph_indentation default +\quotes_language english +\papercolumns 1 +\papersides 1 +\paperpagestyle default +\tracking_changes false +\output_changes false +\html_math_output 0 +\html_css_as_file 0 +\html_be_strict false +\end_header + +\begin_body + +\begin_layout Part +The Assembler +\end_layout + +\begin_layout Section +Assembler Design +\end_layout + +\begin_layout Section +Assembler Implementation +\end_layout + +\begin_layout Section +Assembler Testing +\end_layout + +\end_body +\end_document
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/docs/lyx/dbg.lyx Fri Apr 18 18:58:58 2014 +0100 @@ -0,0 +1,79 @@ +#LyX 2.0 created this file. For more info see http://www.lyx.org/ +\lyxformat 413 +\begin_document +\begin_header +\textclass article +\use_default_options true +\maintain_unincluded_children false +\language english +\language_package default +\inputencoding auto +\fontencoding global +\font_roman default +\font_sans default +\font_typewriter default +\font_default_family default +\use_non_tex_fonts false +\font_sc false +\font_osf false +\font_sf_scale 100 +\font_tt_scale 100 + +\graphics default +\default_output_format default +\output_sync 0 +\bibtex_command default +\index_command default +\paperfontsize default +\use_hyperref false +\papersize default +\use_geometry false +\use_amsmath 1 +\use_esint 1 +\use_mhchem 1 +\use_mathdots 1 +\cite_engine basic +\use_bibtopic false +\use_indices false +\paperorientation portrait +\suppress_date false +\use_refstyle 1 +\index Index +\shortcut idx +\color #008000 +\end_index +\secnumdepth 3 +\tocdepth 3 +\paragraph_separation indent +\paragraph_indentation default +\quotes_language english +\papercolumns 1 +\papersides 1 +\paperpagestyle default +\tracking_changes false +\output_changes false +\html_math_output 0 +\html_css_as_file 0 +\html_be_strict false +\end_header + +\begin_body + +\begin_layout Part +The Debugger +\end_layout + +\begin_layout Section +Design +\end_layout + +\begin_layout Section +Implementation +\end_layout + +\begin_layout Section +Testing +\end_layout + +\end_body +\end_document
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/docs/lyx/ede.lyx Fri Apr 18 18:58:58 2014 +0100 @@ -0,0 +1,79 @@ +#LyX 2.0 created this file. For more info see http://www.lyx.org/ +\lyxformat 413 +\begin_document +\begin_header +\textclass article +\use_default_options true +\maintain_unincluded_children false +\language english +\language_package default +\inputencoding auto +\fontencoding global +\font_roman default +\font_sans default +\font_typewriter default +\font_default_family default +\use_non_tex_fonts false +\font_sc false +\font_osf false +\font_sf_scale 100 +\font_tt_scale 100 + +\graphics default +\default_output_format default +\output_sync 0 +\bibtex_command default +\index_command default +\paperfontsize default +\use_hyperref false +\papersize default +\use_geometry false +\use_amsmath 1 +\use_esint 1 +\use_mhchem 1 +\use_mathdots 1 +\cite_engine basic +\use_bibtopic false +\use_indices false +\paperorientation portrait +\suppress_date false +\use_refstyle 1 +\index Index +\shortcut idx +\color #008000 +\end_index +\secnumdepth 3 +\tocdepth 3 +\paragraph_separation indent +\paragraph_indentation default +\quotes_language english +\papercolumns 1 +\papersides 1 +\paperpagestyle default +\tracking_changes false +\output_changes false +\html_math_output 0 +\html_css_as_file 0 +\html_be_strict false +\end_header + +\begin_body + +\begin_layout Part +The ELB816 Development Environment +\end_layout + +\begin_layout Section +EDE Overview +\end_layout + +\begin_layout Section +EDE Interfaces +\end_layout + +\begin_layout Section +EDE Improvements +\end_layout + +\end_body +\end_document
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/docs/lyx/emu.lyx Fri Apr 18 18:58:58 2014 +0100 @@ -0,0 +1,1809 @@ +#LyX 2.0 created this file. For more info see http://www.lyx.org/ +\lyxformat 413 +\begin_document +\begin_header +\textclass article +\begin_preamble +\usepackage[export]{adjustbox}% http://ctan.org/pkg/adjustbox +% Resize figures that are too wide for the page. +\let\oldincludegraphics\includegraphics +\renewcommand\includegraphics[2][]{% + \oldincludegraphics[#1,max width=\linewidth,max height=\textheight]{#2} +} +\end_preamble +\use_default_options true +\maintain_unincluded_children false +\language english +\language_package default +\inputencoding auto +\fontencoding global +\font_roman default +\font_sans default +\font_typewriter default +\font_default_family default +\use_non_tex_fonts false +\font_sc false +\font_osf false +\font_sf_scale 100 +\font_tt_scale 100 + +\graphics default +\default_output_format default +\output_sync 0 +\bibtex_command default +\index_command default +\paperfontsize default +\spacing single +\use_hyperref false +\papersize default +\use_geometry false +\use_amsmath 1 +\use_esint 1 +\use_mhchem 1 +\use_mathdots 1 +\cite_engine basic +\use_bibtopic false +\use_indices false +\paperorientation portrait +\suppress_date false +\use_refstyle 1 +\index Index +\shortcut idx +\color #008000 +\end_index +\secnumdepth 3 +\tocdepth 3 +\paragraph_separation indent +\paragraph_indentation default +\quotes_language english +\papercolumns 1 +\papersides 1 +\paperpagestyle default +\tracking_changes false +\output_changes false +\html_math_output 0 +\html_css_as_file 0 +\html_be_strict false +\end_header + +\begin_body + +\begin_layout Part +The Emulator +\end_layout + +\begin_layout Section +Emulator Design +\end_layout + +\begin_layout Standard +\begin_inset Graphics + filename /home/jmz/qm/ede/docs/img/emu/ELB816_system.svg + display false + +\end_inset + + +\end_layout + +\begin_layout Standard +Above is a block diagram of a micro-controller with the ELB816 micro-processor + at it's core. + This is taken from the original ELB816 specification. + Implementing a system similar to this as a piece of software is the goal + of this section of the project. +\end_layout + +\begin_layout Subsection +Memory and Registers +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +bigskip +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Graphics + filename /home/jmz/qm/ede/docs/img/emu/memory.svg + display false + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +bigskip +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +The micro-controller is based on a Von Neumann architecture and has: +\end_layout + +\begin_layout Itemize +A single block of up to 64k byte addressable memory for storing both data + and code. +\end_layout + +\begin_layout Itemize +Two banks of four 8-bit general purpose registers (R0 to R3). +\end_layout + +\begin_layout Itemize +Four 16-bit content specific (PC, SP, DPTR and TMPA) +\end_layout + +\begin_layout Itemize +Three 8-bit content specific registers (A, flags and IR) +\end_layout + +\begin_layout Standard +The general purpose 8-bit registers and the 16-bit registers can exist as + a single sixteen byte block of memory spaces with the following encoding: +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +bigskip +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Tabular +<lyxtabular version="3" rows="10" columns="5"> +<features tabularvalignment="middle"> +<column alignment="center" valignment="top" width="0"> +<column alignment="center" valignment="top" width="0"> +<column alignment="center" valignment="top" width="0"> +<column alignment="center" valignment="top" width="0"> +<column alignment="center" valignment="top" width="0"> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout + +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +MSB +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +MSB +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Description +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout + +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +LSB +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout + +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +User Accessible? +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +000 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +R0 bank 1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +R0 bank 0 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +General Purpose +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Yes +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +001 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +R1 bank 1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +R1 bank 0 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +General Purpose +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Yes +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +010 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +R2 bank 1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +R2 bank 0 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +General Purpose +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Yes +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +011 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +R3 bank 1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +R3 bank 0 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +General Purpose +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Yes +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +100 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +DPH +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +DPL +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Data Pointer +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Yes +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +101 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +SPH +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +SPL +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Stack Pointer +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Yes +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +110 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +PCH +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +PCL +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Program Counter +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +No +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +111 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +TPH +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +TPL +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Temp Address Register +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +No +\end_layout + +\end_inset +</cell> +</row> +</lyxtabular> + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Newpage pagebreak +\end_inset + + +\end_layout + +\begin_layout Standard +The 8-bit flag register can exist as a single byte with the following format: +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +bigskip +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Tabular +<lyxtabular version="3" rows="9" columns="3"> +<features tabularvalignment="middle"> +<column alignment="center" valignment="top" width="0"> +<column alignment="center" valignment="top" width="0"> +<column alignment="left" valignment="top" width="10cm"> +<row> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Bit +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Flag +\end_layout + +\end_inset +</cell> +<cell multicolumn="1" alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Description +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +BS +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +User Accessible: Select register bank +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +IE +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +User Accessible: Enable Interrupts when 1 +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +2 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +OV +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Set to 1 when result of arithmetic operation has even parity +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +3 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +S +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Set to 1 when result of arithmetic operation is negative +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +4 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +P +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Set to 1 when result of arithmetic operation has even parity +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +5 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +AC +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Set to 1 when result of arithmetic operation generates a carry or borrow + from bit 3 +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +6 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Z +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Set to 1 when result of arithmetic operation is Zero +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +7 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +C +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +User Accessible: Set to 1 when result of arithmetic operation generates + a carry or borrow from bit 7. + Used in rotate through carry operations +\end_layout + +\end_inset +</cell> +</row> +</lyxtabular> + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +bigskip +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +There is also an 8-bit accumulator register for storing the result of various + operations and an 8-bit instruction register for the storing the instruction + currently being executed. +\end_layout + +\begin_layout Subsection +Control and Execution +\end_layout + +\begin_layout Standard +The emulator needs to be controlled externally. + This could be via a serial or a file buffer depending on the platform. +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +bigskip +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Graphics + filename /home/jmz/qm/ede/docs/img/emu/controller.svg + display false + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +bigskip +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +Below is a control protocol which allows and control of the emulators memory + and execution. +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +bigskip +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Tabular +<lyxtabular version="3" rows="15" columns="5"> +<features tabularvalignment="middle"> +<column alignment="center" valignment="top" width="0"> +<column alignment="left" valignment="top" width="2cm"> +<column alignment="center" valignment="top" width="1cm"> +<column alignment="center" valignment="top" width="1cm"> +<column alignment="center" valignment="top" width="3cm"> +<row> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Function +\end_layout + +\end_inset +</cell> +<cell multicolumn="1" alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Arguments +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +CMD byte +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Length +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Description +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +step +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +- +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x00 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Execute instruction at PC +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +run +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +- +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x01 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Execute instructions from PC until a break point is reached +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +set register +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +register address, value +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x02 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +3 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Set a register +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +get register +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +register address +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x03 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +2 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Get the value of a register +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +set flag +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +flag bit, 0 or 1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x04 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +3 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Turn a flag bit on or off. + LSB = 0, MSB =7 +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +get flag +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +flag bit +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x05 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +2 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Get the value of a flag bit +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +write memory block +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +address high, address low, length high, length low, [byte array] +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x06 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +6+ +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Set a block of memory of arbitrary length with the bytes in the byte array +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +read memory block +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +address high, address low, length high, length low +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x07 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +5 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Read a block of memory of arbitrary length +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +get A +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +- +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x08 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Get value of A +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +get flags +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +- +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x09 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Get value of flags +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +get IR +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +- +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x0A +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Get Value of IR +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +run for length +\end_layout + +\end_inset +</cell> +<cell multirow="3" alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +length high, length low +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x0B +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +3 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Run for length number of instruction +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +free run +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +- +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x0C +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Run forever - Bypass controller +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +set break point +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +break point index, address high, address low +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x0D +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +4 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Set 1 of 8 possible break points +\end_layout + +\end_inset +</cell> +</row> +</lyxtabular> + +\end_inset + + +\end_layout + +\begin_layout Subsection +Interrupt Controller +\end_layout + +\begin_layout Subsection +Timer +\end_layout + +\begin_layout Section +Emulator Implementation +\end_layout + +\begin_layout Section +Emulator Testing +\end_layout + +\end_body +\end_document
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/docs/lyx/emu.lyx~ Fri Apr 18 18:58:58 2014 +0100 @@ -0,0 +1,1809 @@ +#LyX 2.0 created this file. For more info see http://www.lyx.org/ +\lyxformat 413 +\begin_document +\begin_header +\textclass article +\begin_preamble +\usepackage[export]{adjustbox}% http://ctan.org/pkg/adjustbox +% Resize figures that are too wide for the page. +\let\oldincludegraphics\includegraphics +\renewcommand\includegraphics[2][]{% + \oldincludegraphics[#1,max width=\linewidth,max height=\textheight]{#2} +} +\end_preamble +\use_default_options true +\maintain_unincluded_children false +\language english +\language_package default +\inputencoding auto +\fontencoding global +\font_roman default +\font_sans default +\font_typewriter default +\font_default_family default +\use_non_tex_fonts false +\font_sc false +\font_osf false +\font_sf_scale 100 +\font_tt_scale 100 + +\graphics default +\default_output_format default +\output_sync 0 +\bibtex_command default +\index_command default +\paperfontsize default +\spacing single +\use_hyperref false +\papersize default +\use_geometry false +\use_amsmath 1 +\use_esint 1 +\use_mhchem 1 +\use_mathdots 1 +\cite_engine basic +\use_bibtopic false +\use_indices false +\paperorientation portrait +\suppress_date false +\use_refstyle 1 +\index Index +\shortcut idx +\color #008000 +\end_index +\secnumdepth 3 +\tocdepth 3 +\paragraph_separation indent +\paragraph_indentation default +\quotes_language english +\papercolumns 1 +\papersides 1 +\paperpagestyle default +\tracking_changes false +\output_changes false +\html_math_output 0 +\html_css_as_file 0 +\html_be_strict false +\end_header + +\begin_body + +\begin_layout Part +The Emulator +\end_layout + +\begin_layout Section +Emulator Design +\end_layout + +\begin_layout Standard +\begin_inset Graphics + filename /home/jmz/qm/ede/docs/img/emu/ELB816_system.svg + display false + +\end_inset + + +\end_layout + +\begin_layout Standard +Above is a block diagram of a micro-controller with the ELB816 micro-processor + at it's core. + This is taken from the original ELB816 specification. + Implementing a system similar to this as a piece of software is the goal + of this section of the project. +\end_layout + +\begin_layout Subsection +Memory and Registers +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +bigskip +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Graphics + filename /home/jmz/qm/ede/docs/img/emu/memory.svg + display false + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +bigskip +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +The micro-controller is based on a Von Neumann architecture and has: +\end_layout + +\begin_layout Itemize +A single block of up to 64k byte addressable memory for storing both data + and code. +\end_layout + +\begin_layout Itemize +Two banks of four 8-bit general purpose registers (R0 to R3). +\end_layout + +\begin_layout Itemize +Four 16-bit content specific (PC, SP, DPTR and TMPA) +\end_layout + +\begin_layout Itemize +Three 8-bit content specific registers (A, flags and IR) +\end_layout + +\begin_layout Standard +The general purpose 8-bit registers and the 16-bit registers can exist as + a single sixteen byte block of memory spaces with the following encoding: +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +bigskip +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Tabular +<lyxtabular version="3" rows="10" columns="5"> +<features tabularvalignment="middle"> +<column alignment="center" valignment="top" width="0"> +<column alignment="center" valignment="top" width="0"> +<column alignment="center" valignment="top" width="0"> +<column alignment="center" valignment="top" width="0"> +<column alignment="center" valignment="top" width="0"> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout + +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +MSB +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +MSB +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Description +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout + +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +LSB +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout + +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +User Accessible? +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +000 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +R0 bank 1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +R0 bank 0 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +General Purpose +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Yes +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +001 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +R1 bank 1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +R1 bank 0 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +General Purpose +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Yes +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +010 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +R2 bank 1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +R2 bank 0 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +General Purpose +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Yes +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +011 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +R3 bank 1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +R3 bank 0 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +General Purpose +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Yes +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +100 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +DPH +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +DPL +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Data Pointer +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Yes +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +101 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +SPH +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +SPL +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Stack Pointer +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Yes +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +110 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +PCH +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +PCL +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Program Counter +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +No +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +111 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +TPH +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +TPL +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Temp Address Register +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +No +\end_layout + +\end_inset +</cell> +</row> +</lyxtabular> + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Newpage pagebreak +\end_inset + + +\end_layout + +\begin_layout Standard +The 8-bit flag register can exist as a single byte with the following format: +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +bigskip +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Tabular +<lyxtabular version="3" rows="9" columns="3"> +<features tabularvalignment="middle"> +<column alignment="center" valignment="top" width="0"> +<column alignment="center" valignment="top" width="0"> +<column alignment="left" valignment="top" width="10cm"> +<row> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Bit +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Flag +\end_layout + +\end_inset +</cell> +<cell multicolumn="1" alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Description +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +BS +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +User Accessible: Select register bank +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +IE +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +User Accessible: Enable Interrupts when 1 +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +2 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +OV +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Set to 1 when result of arithmetic operation has even parity +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +3 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +S +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Set to 1 when result of arithmetic operation is negative +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +4 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +P +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Set to 1 when result of arithmetic operation has even parity +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +5 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +AC +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Set to 1 when result of arithmetic operation generates a carry or borrow + from bit 3 +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +6 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Z +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Set to 1 when result of arithmetic operation is Zero +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +7 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +C +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +User Accessible: Set to 1 when result of arithmetic operation generates + a carry or borrow from bit 7. + Used in rotate through carry operations +\end_layout + +\end_inset +</cell> +</row> +</lyxtabular> + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +bigskip +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +There is also an 8-bit accumulator register for storing the result of various + operations and an 8-bit instruction register for the storing the instruction + currently being executed. +\end_layout + +\begin_layout Subsection +Control and Execution +\end_layout + +\begin_layout Standard +The emulator needs to be controlled externally. + This could be via a serial or a file buffer depending on the platform. +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +bigskip +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Graphics + filename /home/jmz/qm/ede/docs/img/emu/controller.svg + display false + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +bigskip +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +Below is a control protocol which allows and control of the emulators memory + and execution. +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +bigskip +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Tabular +<lyxtabular version="3" rows="15" columns="5"> +<features tabularvalignment="middle"> +<column alignment="center" valignment="top" width="0"> +<column alignment="left" valignment="top" width="2cm"> +<column alignment="center" valignment="top" width="1cm"> +<column alignment="center" valignment="top" width="1cm"> +<column alignment="center" valignment="top" width="3cm"> +<row> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Function +\end_layout + +\end_inset +</cell> +<cell multicolumn="1" alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Arguments +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +CMD byte +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Length +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Description +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +step +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +- +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x00 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Execute instruction at PC +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +run +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +- +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x01 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Execute instructions from PC until a break point is reached +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +set register +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +register address, value +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x02 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +3 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Set a register +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +get register +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +register address +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x03 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +2 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Get the value of a register +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +set flag +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +flag bit, 0 or 1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x04 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +3 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Turn a flag bit on or off. + LSB = 0, MSB =7 +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +get flag +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +flag bit +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x05 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +2 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Get the value of a flag bit +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +write memory block +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +address high, address low, length high, length low, [byte array] +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x06 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +6+ +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Set a block of memory of arbitrary length with the bytes in the byte array +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +read memory block +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +address high, address low, length high, length low +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x07 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +5 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Read a block of memory of arbitrary length +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +get A +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +- +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x08 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Get value of A +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +get flags +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +- +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x09 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Get value of flags +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +get IR +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +- +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0xA +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Get Value of IR +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +run for length +\end_layout + +\end_inset +</cell> +<cell multirow="3" alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +length high, length low +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x0B +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +3 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Run for length number of instruction +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +free run +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +- +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x0C +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +1 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Run forever - Bypass controller +\end_layout + +\end_inset +</cell> +</row> +<row> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +set break point +\end_layout + +\end_inset +</cell> +<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +break point index, address high, address low +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +0x0D +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +4 +\end_layout + +\end_inset +</cell> +<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none"> +\begin_inset Text + +\begin_layout Plain Layout +Set 1 of 8 possible break points +\end_layout + +\end_inset +</cell> +</row> +</lyxtabular> + +\end_inset + + +\end_layout + +\begin_layout Subsection +Interrupt Controller +\end_layout + +\begin_layout Subsection +Timer +\end_layout + +\begin_layout Section +Emulator Implementation +\end_layout + +\begin_layout Section +Emulator Testing +\end_layout + +\end_body +\end_document
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/docs/lyx/final_report.lyx Fri Apr 18 18:58:58 2014 +0100 @@ -0,0 +1,130 @@ +#LyX 2.0 created this file. For more info see http://www.lyx.org/ +\lyxformat 413 +\begin_document +\begin_header +\textclass article +\begin_preamble +\usepackage[export]{adjustbox}% http://ctan.org/pkg/adjustbox +% Resize figures that are too wide for the page. +\let\oldincludegraphics\includegraphics +\renewcommand\includegraphics[2][]{% + \oldincludegraphics[#1,max width=\linewidth,max height=\textheight]{#2} +} +\end_preamble +\use_default_options true +\maintain_unincluded_children false +\language english +\language_package default +\inputencoding auto +\fontencoding global +\font_roman default +\font_sans default +\font_typewriter default +\font_default_family default +\use_non_tex_fonts false +\font_sc false +\font_osf false +\font_sf_scale 100 +\font_tt_scale 100 + +\graphics default +\default_output_format default +\output_sync 0 +\bibtex_command default +\index_command default +\paperfontsize default +\spacing single +\use_hyperref false +\papersize default +\use_geometry false +\use_amsmath 1 +\use_esint 1 +\use_mhchem 1 +\use_mathdots 1 +\cite_engine basic +\use_bibtopic false +\use_indices false +\paperorientation portrait +\suppress_date false +\use_refstyle 1 +\index Index +\shortcut idx +\color #008000 +\end_index +\secnumdepth 3 +\tocdepth 3 +\paragraph_separation indent +\paragraph_indentation default +\quotes_language english +\papercolumns 1 +\papersides 1 +\paperpagestyle default +\tracking_changes false +\output_changes false +\html_math_output 0 +\html_css_as_file 0 +\html_be_strict false +\end_header + +\begin_body + +\begin_layout Title +EDE: ELB816 Development Environment +\end_layout + +\begin_layout Author +James Bowden (110104485) +\end_layout + +\begin_layout Standard +\begin_inset CommandInset include +LatexCommand include +filename "intro.lyx" + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset CommandInset include +LatexCommand include +filename "asm.lyx" + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset CommandInset include +LatexCommand include +filename "emu.lyx" + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset CommandInset include +LatexCommand include +filename "dbg.lyx" + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset CommandInset include +LatexCommand include +filename "ede.lyx" + +\end_inset + + +\end_layout + +\end_body +\end_document
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/docs/lyx/final_report.lyx~ Fri Apr 18 18:58:58 2014 +0100 @@ -0,0 +1,121 @@ +#LyX 2.0 created this file. For more info see http://www.lyx.org/ +\lyxformat 413 +\begin_document +\begin_header +\textclass article +\use_default_options true +\maintain_unincluded_children false +\language english +\language_package default +\inputencoding auto +\fontencoding global +\font_roman default +\font_sans default +\font_typewriter default +\font_default_family default +\use_non_tex_fonts false +\font_sc false +\font_osf false +\font_sf_scale 100 +\font_tt_scale 100 + +\graphics default +\default_output_format default +\output_sync 0 +\bibtex_command default +\index_command default +\paperfontsize default +\use_hyperref false +\papersize default +\use_geometry false +\use_amsmath 1 +\use_esint 1 +\use_mhchem 1 +\use_mathdots 1 +\cite_engine basic +\use_bibtopic false +\use_indices false +\paperorientation portrait +\suppress_date false +\use_refstyle 1 +\index Index +\shortcut idx +\color #008000 +\end_index +\secnumdepth 3 +\tocdepth 3 +\paragraph_separation indent +\paragraph_indentation default +\quotes_language english +\papercolumns 1 +\papersides 1 +\paperpagestyle default +\tracking_changes false +\output_changes false +\html_math_output 0 +\html_css_as_file 0 +\html_be_strict false +\end_header + +\begin_body + +\begin_layout Title +EDE: ELB816 Development Environment +\end_layout + +\begin_layout Author +James Bowden (110104485) +\end_layout + +\begin_layout Standard +\begin_inset CommandInset include +LatexCommand include +filename "intro.lyx" + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset CommandInset include +LatexCommand include +filename "asm.lyx" + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset CommandInset include +LatexCommand include +filename "emu.lyx" + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset CommandInset include +LatexCommand include +filename "dbg.lyx" + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset CommandInset include +LatexCommand include +filename "ede.lyx" + +\end_inset + + +\end_layout + +\end_body +\end_document
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/docs/lyx/intro.lyx Fri Apr 18 18:58:58 2014 +0100 @@ -0,0 +1,203 @@ +#LyX 2.0 created this file. For more info see http://www.lyx.org/ +\lyxformat 413 +\begin_document +\begin_header +\textclass article +\use_default_options true +\maintain_unincluded_children false +\language english +\language_package default +\inputencoding auto +\fontencoding global +\font_roman default +\font_sans default +\font_typewriter default +\font_default_family default +\use_non_tex_fonts false +\font_sc false +\font_osf false +\font_sf_scale 100 +\font_tt_scale 100 + +\graphics default +\default_output_format default +\output_sync 0 +\bibtex_command default +\index_command default +\paperfontsize default +\use_hyperref false +\papersize default +\use_geometry false +\use_amsmath 1 +\use_esint 1 +\use_mhchem 1 +\use_mathdots 1 +\cite_engine basic +\use_bibtopic false +\use_indices false +\paperorientation portrait +\suppress_date false +\use_refstyle 1 +\index Index +\shortcut idx +\color #008000 +\end_index +\secnumdepth 3 +\tocdepth 3 +\paragraph_separation indent +\paragraph_indentation default +\quotes_language english +\papercolumns 1 +\papersides 1 +\paperpagestyle default +\tracking_changes false +\output_changes false +\html_math_output 0 +\html_css_as_file 0 +\html_be_strict false +\end_header + +\begin_body + +\begin_layout Part +Introduction +\end_layout + +\begin_layout Section +Motivations +\end_layout + +\begin_layout Standard +The ELB816 architecture is designed to be a +\begin_inset Quotes eld +\end_inset + +simple to understand 8-bit microprocessor system to help learn about micro-proce +ssor electronics. +\begin_inset Quotes erd +\end_inset + +. + The combination of an ELB816 emulator, debugger and assembler could be + used as a set of tools for learning or teaching micro-processor programming + without the intricacies of real-world commercial microprocessors getting + in the way of a fundamental understanding of the subject. + A PC based emulator would allow students to quickly develop and debug programs + written in a simple assembly language on any modern desktop or laptop, + and an MCS-51 port running on an 8052 would allow students to test programs + in an actual circuit. + EDE aims to bring together these components in order to provide an environment + for using ELB816 as an educational tool. +\end_layout + +\begin_layout Section +Project Aims +\end_layout + +\begin_layout Itemize +Develop an assembler for the ELB816 assembly language. +\end_layout + +\begin_layout Itemize +Develop an emulated programmable micro-controller system based on the ELB816 + micro-processor architecture. +\end_layout + +\begin_layout Itemize +Develop a debugger that allows interactive debugging of programs running + on the emulator. +\end_layout + +\begin_layout Section +Methodology +\end_layout + +\begin_layout Subsection +Assembler +\end_layout + +\begin_layout Description +Language: Python +\end_layout + +\begin_layout Description +Priority: First +\end_layout + +\begin_layout Standard +The assembler will be developed before anything else so that it can subsequently + be used to assemble test programs during development of the emulator. + +\end_layout + +\begin_layout Subsection +Emulator +\end_layout + +\begin_layout Description +Language: C +\end_layout + +\begin_layout Description +Priority: Second +\end_layout + +\begin_layout Standard +The emulator will use only standard libraries in order to ensure it is portable + between compilers and platforms. + Specifically GCC for x86 and Keil C51 for Intel MCS-51. + The emulator will first be developed on Linux to facilitated rapid development. + It will be ported to MCS-51 once it is complete +\end_layout + +\begin_layout Subsection +Debugger +\end_layout + +\begin_layout Description +Language: C/Python +\end_layout + +\begin_layout Description +Priority: Second +\end_layout + +\begin_layout Standard +The debug interface will be developed along side the emulator. + It will communicate with a a simple control function, built into the emulator, + that will read commands using C's +\begin_inset listings +lstparams "basicstyle={\ttfamily}" +inline true +status open + +\begin_layout Plain Layout + +stdio.h +\end_layout + +\end_inset + + library. + This means that on Linux the commands will be issued using +\begin_inset listings +lstparams "basicstyle={\ttfamily}" +inline true +status open + +\begin_layout Plain Layout + +STDIN +\end_layout + +\end_inset + + and on the MCS-51 version they will be issued over a serial interface. + Python will be used to build a controller class for sending commands to + and receiving data from the emulator. + Python will also be used to build a text based user interface on top of + this. +\end_layout + +\end_body +\end_document
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/docs/lyx/intro.lyx~ Fri Apr 18 18:58:58 2014 +0100 @@ -0,0 +1,203 @@ +#LyX 2.0 created this file. For more info see http://www.lyx.org/ +\lyxformat 413 +\begin_document +\begin_header +\textclass article +\use_default_options true +\maintain_unincluded_children false +\language english +\language_package default +\inputencoding auto +\fontencoding global +\font_roman default +\font_sans default +\font_typewriter default +\font_default_family default +\use_non_tex_fonts false +\font_sc false +\font_osf false +\font_sf_scale 100 +\font_tt_scale 100 + +\graphics default +\default_output_format default +\output_sync 0 +\bibtex_command default +\index_command default +\paperfontsize default +\use_hyperref false +\papersize default +\use_geometry false +\use_amsmath 1 +\use_esint 1 +\use_mhchem 1 +\use_mathdots 1 +\cite_engine basic +\use_bibtopic false +\use_indices false +\paperorientation portrait +\suppress_date false +\use_refstyle 1 +\index Index +\shortcut idx +\color #008000 +\end_index +\secnumdepth 3 +\tocdepth 3 +\paragraph_separation indent +\paragraph_indentation default +\quotes_language english +\papercolumns 1 +\papersides 1 +\paperpagestyle default +\tracking_changes false +\output_changes false +\html_math_output 0 +\html_css_as_file 0 +\html_be_strict false +\end_header + +\begin_body + +\begin_layout Part +Introduction +\end_layout + +\begin_layout Section +Motivations +\end_layout + +\begin_layout Standard +The ELB816 architecture is designed to be a +\begin_inset Quotes eld +\end_inset + +simple to understand 8-bit microprocessor system to help learn about micro-proce +ssor electronics. +\begin_inset Quotes erd +\end_inset + +. + The combination of an ELB816 emulator, debugger and assembler could be + used as a set of tools for learning or teaching micro-processor programming + without the intricacies of real-world commercial microprocessors getting + in the way of a fundamental understanding of the subject. + A PC based emulator would allow students to quickly develop and debug programs + written in a simple assembly language on any modern desktop or laptop and + an MCS-51 port running on an 8052 would allow students to test programs + in an actual circuit. + EDE aims to bring together these components in order to provide an environment + for using ELB816 as an educational tool. +\end_layout + +\begin_layout Section +Project Aims +\end_layout + +\begin_layout Itemize +Develop an assembler for the ELB816 assembly language. +\end_layout + +\begin_layout Itemize +Develop an emulated programmable micro-controller system based on the ELB816 + micro-processor architecture. +\end_layout + +\begin_layout Itemize +Develop a debugger that allows interactive debugging of programs running + on the emulator. +\end_layout + +\begin_layout Section +Methodology +\end_layout + +\begin_layout Subsection +Assembler +\end_layout + +\begin_layout Description +Language: Python +\end_layout + +\begin_layout Description +Priority: First +\end_layout + +\begin_layout Standard +The assembler will be developed before anything else so that it can subsequently + be used to assemble test programs during development of the emulator. + +\end_layout + +\begin_layout Subsection +Emulator +\end_layout + +\begin_layout Description +Language: C +\end_layout + +\begin_layout Description +Priority: Second +\end_layout + +\begin_layout Standard +The emulator will use only standard libraries in order to ensure it is portable + between compilers and platforms. + Specifically GCC for x86 and Keil C51 for Intel MCS-51. + The emulator will first be developed on Linux to facilitated rapid development. + It will be ported to MCS-51 once it is complete +\end_layout + +\begin_layout Subsection +Debugger +\end_layout + +\begin_layout Description +Language: C/Python +\end_layout + +\begin_layout Description +Priority: Second +\end_layout + +\begin_layout Standard +The debug interface will be developed along side the emulator. + It will communicate with a a simple control function built into the emulator + that will read commands using C's +\begin_inset listings +lstparams "basicstyle={\ttfamily}" +inline true +status open + +\begin_layout Plain Layout + +stdio.h +\end_layout + +\end_inset + + library. + This means that on Linux the commands will be issued using +\begin_inset listings +lstparams "basicstyle={\ttfamily}" +inline true +status open + +\begin_layout Plain Layout + +STDIN +\end_layout + +\end_inset + + and on the MCS-51 version they will be issued over a serial interface. + Python will be used to build a controller class for sending commands to + and receiving data from the emulator. + Python will also be used to build a text based user interface on top of + this. +\end_layout + +\end_body +\end_document
--- a/emu/main.c Thu Apr 17 15:50:42 2014 +0100 +++ b/emu/main.c Fri Apr 18 18:58:58 2014 +0100 @@ -162,21 +162,22 @@ break; /* get A */ - case 0x09: + case 0x08: snd(A); break; /* get flags */ - case 0x0A: + case 0x09: snd(flags); break; /* get instruction register */ - case 0x0B: + case 0x0A: snd(IR); break; - case 0x0C: + /* run for length */ + case 0x0B: args[0] = rcv(); /* length high */ args[1] = rcv(); /* length low */ tmpw = get_wide(PC); @@ -188,12 +189,12 @@ } break; - case 0x0D: + case 0x0C: free_run = 1; break; /* set break point */ - case 0x0E: + case 0x0D: args[0] = rcv(); /* bp index */ args[1] = rcv(); /* address high */ args[2] = rcv(); /* address low */
--- a/emu52/main.c Thu Apr 17 15:50:42 2014 +0100 +++ b/emu52/main.c Fri Apr 18 18:58:58 2014 +0100 @@ -159,21 +159,21 @@ break; /* get A */ - case 0x09: + case 0x08: snd(A); break; /* get flags */ - case 0x0A: + case 0x09: snd(flags); break; /* get instruction register */ - case 0x0B: + case 0x0A: snd(IR); break; - case 0x0C: + case 0x0B: args[0] = rcv(); /* length high */ args[1] = rcv(); /* length low */ tmpw = get_wide(PC); @@ -185,12 +185,12 @@ } break; - case 0x0D: + case 0x0C: free_run = 1; break; /* set break point */ - case 0x0E: + case 0x0D: args[0] = rcv(); /* bp index */ args[1] = rcv(); /* address high */ args[2] = rcv(); /* address low */