commit 5a3d614a22d5710ec2554ad434226479dc638388
parent d6715cf3c9438f8228382d4ec2bb4cfccb0ef9f1
Author: Paul Longtine <paul@nanner.co>
Date: Thu, 18 Jun 2020 01:21:58 -0400
Implemented features to distinguish memory load / save from instruction execution, so that the entire first-class address range is available
Diffstat:
M | CPU/CPU.circ | | | 3028 | ++++++++++++++++++++++++++++++++++++++++--------------------------------------- |
1 file changed, 1543 insertions(+), 1485 deletions(-)
diff --git a/CPU/CPU.circ b/CPU/CPU.circ
@@ -68,22 +68,24 @@
<a name="clabelfont" val="SansSerif plain 12"/>
<appear>
<path d="M53,12 Q57,22 61,12" fill="none" stroke="#808080" stroke-width="2"/>
- <rect fill="none" height="120" stroke="#000000" stroke-width="2" width="120" x="40" y="11"/>
- <rect fill="#707070" height="120" stroke="#000000" width="120" x="40" y="10"/>
+ <rect fill="none" height="137" stroke="#000000" stroke-width="2" width="120" x="40" y="11"/>
+ <rect fill="#707070" height="137" stroke="#000000" width="120" x="40" y="10"/>
<text fill="#fafafa" font-family="Dialog" font-size="10" text-anchor="end" x="101" y="126">tisc v1.2</text>
- <text fill="#fafafa" font-family="Dialog" font-size="10" text-anchor="end" x="153" y="23">INPUT_ENABLE</text>
- <text fill="#fafafa" font-family="Dialog" font-size="10" text-anchor="end" x="151" y="42">INPUT</text>
- <text fill="#fafafa" font-family="Dialog" font-size="10" text-anchor="end" x="153" y="62">ADDRESS</text>
- <text fill="#fafafa" font-family="Dialog" font-size="10" text-anchor="end" x="154" y="82">OUTPUT</text>
- <text fill="#fafafa" font-family="Dialog" font-size="10" text-anchor="end" x="155" y="103">CLK</text>
- <text fill="#fafafa" font-family="Dialog" font-size="10" text-anchor="end" x="154" y="122">RST</text>
- <circ-port height="8" pin="480,340" width="8" x="156" y="16"/>
- <circ-port height="8" pin="420,360" width="8" x="156" y="36"/>
- <circ-port height="10" pin="420,380" width="10" x="155" y="55"/>
- <circ-port height="10" pin="420,400" width="10" x="155" y="75"/>
- <circ-port height="8" pin="480,420" width="8" x="156" y="96"/>
- <circ-port height="8" pin="480,440" width="8" x="156" y="116"/>
- <circ-anchor facing="east" height="6" width="6" x="157" y="17"/>
+ <text fill="#fafafa" font-family="Dialog" font-size="10" text-anchor="end" x="152" y="44">IO ENABLE</text>
+ <text fill="#fafafa" font-family="Dialog" font-size="10" text-anchor="end" x="151" y="62">INPUT</text>
+ <text fill="#fafafa" font-family="Dialog" font-size="10" text-anchor="end" x="153" y="82">ADDRESS</text>
+ <text fill="#fafafa" font-family="Dialog" font-size="10" text-anchor="end" x="154" y="102">OUTPUT</text>
+ <text fill="#fafafa" font-family="Dialog" font-size="10" text-anchor="end" x="155" y="123">CLK</text>
+ <text fill="#fafafa" font-family="Dialog" font-size="10" text-anchor="end" x="154" y="142">RST</text>
+ <text fill="#fafafa" font-family="Dialog" font-size="10" text-anchor="end" x="152" y="24">IO ACTIVE</text>
+ <circ-port height="8" pin="480,340" width="8" x="156" y="36"/>
+ <circ-port height="8" pin="420,360" width="8" x="156" y="56"/>
+ <circ-port height="10" pin="420,380" width="10" x="155" y="75"/>
+ <circ-port height="10" pin="420,400" width="10" x="155" y="95"/>
+ <circ-port height="8" pin="480,420" width="8" x="156" y="116"/>
+ <circ-port height="8" pin="480,440" width="8" x="156" y="136"/>
+ <circ-port height="10" pin="480,320" width="10" x="155" y="15"/>
+ <circ-anchor facing="east" height="6" width="6" x="157" y="37"/>
</appear>
<wire from="(350,140)" to="(350,210)"/>
<wire from="(340,40)" to="(340,180)"/>
@@ -116,6 +118,7 @@
<wire from="(180,190)" to="(230,190)"/>
<wire from="(300,150)" to="(300,160)"/>
<wire from="(260,150)" to="(260,160)"/>
+ <wire from="(460,170)" to="(460,320)"/>
<wire from="(160,30)" to="(160,180)"/>
<wire from="(140,20)" to="(140,110)"/>
<wire from="(170,230)" to="(210,230)"/>
@@ -161,6 +164,7 @@
<wire from="(230,370)" to="(240,370)"/>
<wire from="(170,300)" to="(240,300)"/>
<wire from="(220,400)" to="(420,400)"/>
+ <wire from="(330,170)" to="(460,170)"/>
<wire from="(210,350)" to="(210,420)"/>
<wire from="(180,240)" to="(240,240)"/>
<wire from="(240,150)" to="(240,160)"/>
@@ -172,6 +176,7 @@
<wire from="(200,170)" to="(230,170)"/>
<wire from="(200,210)" to="(230,210)"/>
<wire from="(380,240)" to="(400,240)"/>
+ <wire from="(460,320)" to="(480,320)"/>
<wire from="(140,440)" to="(350,440)"/>
<wire from="(230,90)" to="(250,90)"/>
<wire from="(220,320)" to="(240,320)"/>
@@ -186,26 +191,27 @@
<comp lib="0" loc="(290,340)" name="Constant">
<a name="facing" val="north"/>
</comp>
+ <comp lib="4" loc="(380,300)" name="RAM">
+ <a name="bus" val="separate"/>
+ </comp>
+ <comp loc="(260,130)" name="ALU"/>
<comp lib="6" loc="(303,244)" name="Text">
<a name="text" val="TISCv1.2"/>
<a name="font" val="Dialog plain 14"/>
</comp>
- <comp loc="(280,150)" name="GPR"/>
- <comp loc="(200,90)" name="STK"/>
- <comp lib="0" loc="(420,400)" name="Pin">
+ <comp lib="0" loc="(480,440)" name="Pin">
<a name="facing" val="west"/>
- <a name="output" val="true"/>
- <a name="width" val="8"/>
<a name="tristate" val="false"/>
<a name="pull" val="down"/>
- <a name="label" val="OUT"/>
+ <a name="label" val="RST"/>
<a name="labelloc" val="east"/>
</comp>
- <comp loc="(230,170)" name="ISD"/>
- <comp lib="4" loc="(380,300)" name="RAM">
- <a name="bus" val="separate"/>
+ <comp loc="(200,90)" name="STK"/>
+ <comp lib="2" loc="(290,80)" name="Multiplexer">
+ <a name="select" val="2"/>
+ <a name="width" val="8"/>
+ <a name="enable" val="false"/>
</comp>
- <comp lib="6" loc="(290,239)" name="Text"/>
<comp lib="0" loc="(420,360)" name="Pin">
<a name="facing" val="west"/>
<a name="width" val="8"/>
@@ -214,16 +220,40 @@
<a name="label" val="IN"/>
<a name="labelloc" val="east"/>
</comp>
- <comp lib="0" loc="(420,380)" name="Pin">
+ <comp loc="(160,210)" name="PC"/>
+ <comp lib="6" loc="(290,239)" name="Text"/>
+ <comp loc="(230,170)" name="ISD"/>
+ <comp lib="1" loc="(270,360)" name="AND Gate">
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
+ </comp>
+ <comp lib="1" loc="(400,240)" name="AND Gate">
+ <a name="facing" val="west"/>
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
+ <a name="negate0" val="true"/>
+ </comp>
+ <comp lib="0" loc="(480,320)" name="Pin">
+ <a name="facing" val="west"/>
+ <a name="output" val="true"/>
+ <a name="label" val="IO ACTIVE"/>
+ <a name="labelloc" val="east"/>
+ </comp>
+ <comp lib="0" loc="(420,400)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="8"/>
<a name="tristate" val="false"/>
<a name="pull" val="down"/>
- <a name="label" val="ADDR"/>
+ <a name="label" val="OUT"/>
<a name="labelloc" val="east"/>
</comp>
- <comp loc="(160,210)" name="PC"/>
+ <comp lib="2" loc="(170,280)" name="Multiplexer">
+ <a name="facing" val="south"/>
+ <a name="selloc" val="tr"/>
+ <a name="width" val="8"/>
+ <a name="enable" val="false"/>
+ </comp>
<comp lib="0" loc="(480,420)" name="Pin">
<a name="facing" val="west"/>
<a name="tristate" val="false"/>
@@ -231,11 +261,13 @@
<a name="label" val="CLK"/>
<a name="labelloc" val="east"/>
</comp>
- <comp lib="0" loc="(480,340)" name="Pin">
+ <comp lib="0" loc="(420,380)" name="Pin">
<a name="facing" val="west"/>
+ <a name="output" val="true"/>
+ <a name="width" val="8"/>
<a name="tristate" val="false"/>
<a name="pull" val="down"/>
- <a name="label" val="IN ENABLE"/>
+ <a name="label" val="ADDR"/>
<a name="labelloc" val="east"/>
</comp>
<comp lib="2" loc="(360,220)" name="Multiplexer">
@@ -244,35 +276,14 @@
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="1" loc="(270,360)" name="AND Gate">
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
- </comp>
- <comp lib="2" loc="(170,280)" name="Multiplexer">
- <a name="facing" val="south"/>
- <a name="selloc" val="tr"/>
- <a name="width" val="8"/>
- <a name="enable" val="false"/>
- </comp>
- <comp lib="0" loc="(480,440)" name="Pin">
+ <comp loc="(280,150)" name="GPR"/>
+ <comp lib="0" loc="(480,340)" name="Pin">
<a name="facing" val="west"/>
<a name="tristate" val="false"/>
<a name="pull" val="down"/>
- <a name="label" val="RST"/>
+ <a name="label" val="IO ENABLE"/>
<a name="labelloc" val="east"/>
</comp>
- <comp loc="(260,130)" name="ALU"/>
- <comp lib="1" loc="(400,240)" name="AND Gate">
- <a name="facing" val="west"/>
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
- <a name="negate0" val="true"/>
- </comp>
- <comp lib="2" loc="(290,80)" name="Multiplexer">
- <a name="select" val="2"/>
- <a name="width" val="8"/>
- <a name="enable" val="false"/>
- </comp>
</circuit>
<circuit name="ALU">
<a name="circuit" val="ALU"/>
@@ -591,742 +602,742 @@
<wire from="(200,270)" to="(210,270)"/>
<wire from="(200,750)" to="(210,750)"/>
<wire from="(550,420)" to="(550,470)"/>
- <comp lib="1" loc="(280,200)" name="OR Gate">
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
+ <comp lib="0" loc="(130,720)" name="Tunnel">
+ <a name="facing" val="east"/>
+ <a name="label" val="b7"/>
</comp>
- <comp lib="0" loc="(390,190)" name="Tunnel">
- <a name="label" val="o1"/>
+ <comp lib="6" loc="(611,272)" name="Text">
+ <a name="text" val="Output"/>
</comp>
- <comp lib="1" loc="(300,240)" name="AND Gate">
+ <comp lib="1" loc="(270,500)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
<a name="negate1" val="true"/>
</comp>
- <comp lib="0" loc="(130,270)" name="Tunnel">
- <a name="facing" val="east"/>
- <a name="label" val="b2"/>
- </comp>
- <comp lib="0" loc="(650,320)" name="Splitter">
- <a name="fanout" val="8"/>
- <a name="incoming" val="8"/>
+ <comp lib="0" loc="(140,70)" name="Tunnel">
+ <a name="facing" val="south"/>
+ <a name="label" val="!A"/>
</comp>
- <comp lib="1" loc="(280,560)" name="OR Gate">
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
+ <comp lib="0" loc="(390,730)" name="Tunnel">
+ <a name="label" val="o7"/>
</comp>
- <comp lib="1" loc="(270,140)" name="AND Gate">
+ <comp lib="1" loc="(250,640)" name="NOR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
- <a name="negate1" val="true"/>
</comp>
- <comp lib="6" loc="(624,352)" name="Text">
- <a name="text" val="Opcodes"/>
+ <comp lib="0" loc="(560,210)" name="Tunnel">
+ <a name="facing" val="east"/>
+ <a name="label" val="b7"/>
</comp>
- <comp lib="0" loc="(670,260)" name="Tunnel">
- <a name="label" val="o2"/>
+ <comp lib="1" loc="(830,280)" name="OR Gate">
+ <a name="size" val="70"/>
+ <a name="inputs" val="8"/>
</comp>
- <comp lib="1" loc="(270,770)" name="AND Gate">
+ <comp lib="1" loc="(300,240)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
<a name="negate1" val="true"/>
</comp>
- <comp lib="1" loc="(280,470)" name="OR Gate">
+ <comp lib="1" loc="(250,550)" name="NOR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="1" loc="(340,640)" name="XNOR Gate">
+ <comp lib="0" loc="(130,390)" name="Tunnel">
+ <a name="facing" val="east"/>
+ <a name="label" val="a3"/>
+ </comp>
+ <comp lib="0" loc="(130,630)" name="Tunnel">
+ <a name="facing" val="east"/>
+ <a name="label" val="b6"/>
+ </comp>
+ <comp lib="1" loc="(300,180)" name="OR Gate">
+ <a name="facing" val="south"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="1" loc="(300,450)" name="OR Gate">
- <a name="facing" val="south"/>
+ <comp lib="1" loc="(190,730)" name="XOR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="1" loc="(240,670)" name="AND Gate">
+ <comp lib="1" loc="(340,460)" name="XNOR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="6" loc="(612,164)" name="Text">
- <a name="text" val="Input B"/>
+ <comp lib="6" loc="(340,904)" name="Text">
+ <a name="text" val="FLAG"/>
</comp>
- <comp lib="1" loc="(310,150)" name="OR Gate">
- <a name="facing" val="west"/>
+ <comp lib="1" loc="(270,410)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
+ <a name="negate1" val="true"/>
</comp>
- <comp lib="1" loc="(250,190)" name="NOR Gate">
+ <comp lib="1" loc="(280,380)" name="OR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(740,380)" name="Tunnel">
+ <comp lib="1" loc="(300,540)" name="OR Gate">
<a name="facing" val="south"/>
- <a name="label" val="!A"/>
- </comp>
- <comp lib="0" loc="(130,480)" name="Tunnel">
- <a name="facing" val="east"/>
- <a name="label" val="a4"/>
- </comp>
- <comp lib="1" loc="(250,100)" name="NOR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(130,120)" name="Tunnel">
- <a name="facing" val="east"/>
- <a name="label" val="a0"/>
+ <comp lib="6" loc="(481,532)" name="Text">
+ <a name="text" val="AUX OP"/>
</comp>
- <comp lib="1" loc="(190,460)" name="XOR Gate">
+ <comp lib="0" loc="(670,270)" name="Tunnel">
+ <a name="label" val="o3"/>
+ </comp>
+ <comp lib="0" loc="(710,500)" name="Splitter">
+ <a name="facing" val="west"/>
+ <a name="fanout" val="3"/>
+ <a name="incoming" val="3"/>
+ </comp>
+ <comp lib="1" loc="(190,580)" name="XOR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(130,720)" name="Tunnel">
+ <comp lib="0" loc="(130,210)" name="Tunnel">
<a name="facing" val="east"/>
- <a name="label" val="b7"/>
+ <a name="label" val="a1"/>
</comp>
- <comp lib="0" loc="(220,70)" name="Tunnel">
+ <comp lib="0" loc="(340,70)" name="Tunnel">
<a name="facing" val="south"/>
- <a name="label" val="OR"/>
+ <a name="label" val="FC"/>
</comp>
- <comp lib="0" loc="(130,630)" name="Tunnel">
- <a name="facing" val="east"/>
- <a name="label" val="b6"/>
+ <comp lib="0" loc="(790,380)" name="Tunnel">
+ <a name="facing" val="south"/>
+ <a name="label" val="FC"/>
</comp>
- <comp lib="1" loc="(190,580)" name="XOR Gate">
+ <comp lib="1" loc="(240,670)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="1" loc="(330,130)" name="AND Gate">
+ <comp lib="1" loc="(330,310)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
<a name="negate1" val="true"/>
</comp>
- <comp lib="1" loc="(300,540)" name="OR Gate">
- <a name="facing" val="south"/>
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
+ <comp lib="0" loc="(130,570)" name="Tunnel">
+ <a name="facing" val="east"/>
+ <a name="label" val="a5"/>
</comp>
- <comp lib="1" loc="(240,490)" name="AND Gate">
+ <comp lib="1" loc="(240,130)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(560,200)" name="Tunnel">
- <a name="facing" val="east"/>
- <a name="label" val="b6"/>
+ <comp lib="0" loc="(500,470)" name="Pin">
+ <a name="tristate" val="false"/>
</comp>
- <comp lib="1" loc="(250,730)" name="NOR Gate">
+ <comp lib="1" loc="(190,640)" name="XOR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="6" loc="(340,904)" name="Text">
- <a name="text" val="FLAG"/>
+ <comp lib="0" loc="(390,280)" name="Tunnel">
+ <a name="label" val="o2"/>
</comp>
- <comp lib="1" loc="(310,420)" name="OR Gate">
+ <comp lib="1" loc="(310,330)" name="OR Gate">
<a name="facing" val="west"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="1" loc="(240,220)" name="AND Gate">
+ <comp lib="0" loc="(130,480)" name="Tunnel">
+ <a name="facing" val="east"/>
+ <a name="label" val="a4"/>
+ </comp>
+ <comp lib="1" loc="(300,600)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
- </comp>
- <comp lib="0" loc="(670,550)" name="Splitter">
- <a name="fanout" val="4"/>
- <a name="incoming" val="4"/>
- </comp>
- <comp lib="0" loc="(690,150)" name="Tunnel">
- <a name="facing" val="east"/>
- <a name="label" val="a1"/>
+ <a name="negate1" val="true"/>
</comp>
<comp lib="0" loc="(560,190)" name="Tunnel">
<a name="facing" val="east"/>
<a name="label" val="b5"/>
</comp>
- <comp lib="0" loc="(560,160)" name="Tunnel">
- <a name="facing" val="east"/>
- <a name="label" val="b2"/>
- </comp>
- <comp lib="6" loc="(746,165)" name="Text">
- <a name="text" val="Input A"/>
- </comp>
- <comp lib="1" loc="(190,190)" name="XOR Gate">
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
+ <comp lib="4" loc="(730,400)" name="ROM">
+ <a name="addrWidth" val="3"/>
+ <a name="dataWidth" val="6"/>
+ <a name="contents">addr/data: 3 6
+8 3b 4 0 2 38 7 12
+</a>
</comp>
- <comp lib="1" loc="(280,290)" name="OR Gate">
+ <comp lib="1" loc="(240,580)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="1" loc="(300,510)" name="AND Gate">
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
- <a name="negate1" val="true"/>
+ <comp lib="6" loc="(612,164)" name="Text">
+ <a name="text" val="Input B"/>
</comp>
- <comp lib="1" loc="(310,600)" name="OR Gate">
- <a name="facing" val="west"/>
+ <comp lib="1" loc="(190,100)" name="XOR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(390,280)" name="Tunnel">
- <a name="label" val="o2"/>
+ <comp lib="6" loc="(488,363)" name="Text">
+ <a name="text" val="OPCODE"/>
</comp>
- <comp lib="0" loc="(690,180)" name="Tunnel">
+ <comp lib="0" loc="(390,100)" name="Tunnel">
+ <a name="label" val="o0"/>
+ </comp>
+ <comp lib="1" loc="(310,150)" name="OR Gate">
+ <a name="facing" val="west"/>
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
+ </comp>
+ <comp lib="0" loc="(130,120)" name="Tunnel">
<a name="facing" val="east"/>
- <a name="label" val="a4"/>
+ <a name="label" val="a0"/>
</comp>
<comp lib="2" loc="(570,400)" name="Multiplexer">
<a name="width" val="3"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="1" loc="(330,220)" name="AND Gate">
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
- <a name="negate1" val="true"/>
- </comp>
- <comp lib="1" loc="(240,310)" name="AND Gate">
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
- </comp>
- <comp lib="1" loc="(240,760)" name="AND Gate">
+ <comp lib="1" loc="(250,100)" name="NOR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(670,240)" name="Tunnel">
- <a name="label" val="o0"/>
+ <comp lib="0" loc="(390,460)" name="Tunnel">
+ <a name="label" val="o4"/>
</comp>
- <comp lib="1" loc="(300,630)" name="OR Gate">
- <a name="facing" val="south"/>
+ <comp lib="1" loc="(310,690)" name="OR Gate">
+ <a name="facing" val="west"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(310,890)" name="Pin">
- <a name="facing" val="north"/>
- <a name="output" val="true"/>
- <a name="tristate" val="false"/>
- <a name="labelloc" val="east"/>
+ <comp lib="6" loc="(624,352)" name="Text">
+ <a name="text" val="Opcodes"/>
</comp>
- <comp lib="1" loc="(300,690)" name="AND Gate">
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
- <a name="negate1" val="true"/>
+ <comp lib="0" loc="(690,180)" name="Tunnel">
+ <a name="facing" val="east"/>
+ <a name="label" val="a4"/>
</comp>
- <comp lib="0" loc="(130,390)" name="Tunnel">
+ <comp lib="0" loc="(560,160)" name="Tunnel">
<a name="facing" val="east"/>
- <a name="label" val="a3"/>
+ <a name="label" val="b2"/>
</comp>
- <comp lib="1" loc="(280,380)" name="OR Gate">
+ <comp lib="0" loc="(220,70)" name="Tunnel">
+ <a name="facing" val="south"/>
+ <a name="label" val="OR"/>
+ </comp>
+ <comp lib="1" loc="(250,190)" name="NOR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="1" loc="(190,310)" name="XOR Gate">
+ <comp lib="0" loc="(670,550)" name="Splitter">
+ <a name="fanout" val="4"/>
+ <a name="incoming" val="4"/>
+ </comp>
+ <comp lib="1" loc="(280,740)" name="OR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="1" loc="(190,730)" name="XOR Gate">
+ <comp lib="1" loc="(340,640)" name="XNOR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(670,250)" name="Tunnel">
- <a name="label" val="o1"/>
- </comp>
<comp lib="1" loc="(190,760)" name="XOR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(560,150)" name="Tunnel">
- <a name="facing" val="east"/>
- <a name="label" val="b1"/>
- </comp>
- <comp lib="0" loc="(130,570)" name="Tunnel">
+ <comp lib="0" loc="(690,190)" name="Tunnel">
<a name="facing" val="east"/>
<a name="label" val="a5"/>
</comp>
- <comp lib="0" loc="(260,70)" name="Tunnel">
+ <comp lib="1" loc="(300,450)" name="OR Gate">
<a name="facing" val="south"/>
- <a name="label" val="CC"/>
- </comp>
- <comp lib="1" loc="(250,370)" name="NOR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(670,290)" name="Tunnel">
- <a name="label" val="o5"/>
- </comp>
- <comp lib="0" loc="(130,300)" name="Tunnel">
- <a name="facing" val="east"/>
- <a name="label" val="a2"/>
- </comp>
- <comp lib="0" loc="(560,170)" name="Tunnel">
- <a name="facing" val="east"/>
- <a name="label" val="b3"/>
- </comp>
- <comp lib="0" loc="(690,200)" name="Tunnel">
- <a name="facing" val="east"/>
- <a name="label" val="a6"/>
- </comp>
- <comp lib="1" loc="(190,370)" name="XOR Gate">
+ <comp lib="1" loc="(280,200)" name="OR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(690,170)" name="Tunnel">
+ <comp lib="0" loc="(130,750)" name="Tunnel">
<a name="facing" val="east"/>
- <a name="label" val="a3"/>
- </comp>
- <comp lib="1" loc="(340,100)" name="XNOR Gate">
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
- </comp>
- <comp lib="0" loc="(500,550)" name="Pin">
- <a name="width" val="4"/>
- <a name="tristate" val="false"/>
- </comp>
- <comp lib="0" loc="(390,550)" name="Tunnel">
- <a name="label" val="o5"/>
+ <a name="label" val="a7"/>
</comp>
- <comp lib="1" loc="(190,280)" name="XOR Gate">
+ <comp lib="1" loc="(190,310)" name="XOR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="1" loc="(330,400)" name="AND Gate">
+ <comp lib="1" loc="(340,100)" name="XNOR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
- <a name="negate1" val="true"/>
</comp>
- <comp lib="1" loc="(310,330)" name="OR Gate">
- <a name="facing" val="west"/>
+ <comp lib="1" loc="(280,110)" name="OR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(130,660)" name="Tunnel">
+ <comp lib="0" loc="(690,200)" name="Tunnel">
<a name="facing" val="east"/>
<a name="label" val="a6"/>
</comp>
- <comp lib="0" loc="(760,380)" name="Tunnel">
- <a name="facing" val="south"/>
- <a name="label" val="OR"/>
- </comp>
- <comp lib="1" loc="(340,730)" name="XNOR Gate">
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
- </comp>
- <comp lib="1" loc="(240,400)" name="AND Gate">
+ <comp lib="1" loc="(190,550)" name="XOR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="4" loc="(670,550)" name="ROM">
- <a name="addrWidth" val="4"/>
- <a name="dataWidth" val="4"/>
- <a name="contents">addr/data: 4 4
-7 3 9 a a
-</a>
- </comp>
- <comp lib="0" loc="(300,70)" name="Tunnel">
- <a name="facing" val="south"/>
- <a name="label" val="CI"/>
- </comp>
- <comp lib="1" loc="(270,230)" name="AND Gate">
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
- <a name="negate1" val="true"/>
+ <comp lib="0" loc="(670,280)" name="Tunnel">
+ <a name="label" val="o4"/>
</comp>
- <comp lib="1" loc="(300,420)" name="AND Gate">
+ <comp lib="1" loc="(270,590)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
<a name="negate1" val="true"/>
</comp>
- <comp lib="1" loc="(190,670)" name="XOR Gate">
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
- </comp>
- <comp lib="4" loc="(730,400)" name="ROM">
- <a name="addrWidth" val="3"/>
- <a name="dataWidth" val="6"/>
- <a name="contents">addr/data: 3 6
-8 3b 4 0 2 38 7 12
-</a>
+ <comp lib="0" loc="(670,310)" name="Tunnel">
+ <a name="label" val="o7"/>
</comp>
- <comp lib="1" loc="(300,600)" name="AND Gate">
+ <comp lib="1" loc="(300,780)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
<a name="negate1" val="true"/>
</comp>
- <comp lib="1" loc="(240,580)" name="AND Gate">
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
- </comp>
- <comp lib="1" loc="(190,130)" name="XOR Gate">
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
+ <comp lib="0" loc="(580,130)" name="Splitter">
+ <a name="facing" val="west"/>
+ <a name="fanout" val="8"/>
+ <a name="incoming" val="8"/>
</comp>
- <comp lib="0" loc="(500,470)" name="Pin">
- <a name="tristate" val="false"/>
+ <comp lib="0" loc="(390,190)" name="Tunnel">
+ <a name="label" val="o1"/>
</comp>
<comp lib="1" loc="(340,280)" name="XNOR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="1" loc="(270,590)" name="AND Gate">
+ <comp lib="1" loc="(280,560)" name="OR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
- <a name="negate1" val="true"/>
</comp>
- <comp lib="1" loc="(300,330)" name="AND Gate">
+ <comp lib="1" loc="(250,730)" name="NOR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
- <a name="negate1" val="true"/>
</comp>
- <comp lib="1" loc="(250,460)" name="NOR Gate">
+ <comp lib="1" loc="(270,680)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
+ <a name="negate1" val="true"/>
</comp>
- <comp lib="6" loc="(880,461)" name="Text">
- <a name="text" val="OPCODES: 000: OR, 001: AND, 010: XOR, 011: ADD, 100: CIN, 101: NAND, 110: XNOR, 111: SUB"/>
+ <comp lib="0" loc="(310,890)" name="Pin">
+ <a name="facing" val="north"/>
+ <a name="output" val="true"/>
+ <a name="tristate" val="false"/>
+ <a name="labelloc" val="east"/>
</comp>
- <comp lib="1" loc="(310,780)" name="OR Gate">
- <a name="facing" val="west"/>
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
+ <comp lib="0" loc="(560,150)" name="Tunnel">
+ <a name="facing" val="east"/>
+ <a name="label" val="b1"/>
</comp>
- <comp lib="0" loc="(130,90)" name="Tunnel">
+ <comp lib="0" loc="(560,180)" name="Tunnel">
<a name="facing" val="east"/>
- <a name="label" val="b0"/>
+ <a name="label" val="b4"/>
</comp>
<comp lib="0" loc="(710,130)" name="Splitter">
<a name="facing" val="west"/>
<a name="fanout" val="8"/>
<a name="incoming" val="8"/>
</comp>
- <comp lib="1" loc="(340,550)" name="XNOR Gate">
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
- </comp>
- <comp lib="1" loc="(250,640)" name="NOR Gate">
+ <comp lib="1" loc="(300,330)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
+ <a name="negate1" val="true"/>
</comp>
- <comp lib="1" loc="(250,280)" name="NOR Gate">
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
+ <comp lib="0" loc="(690,160)" name="Tunnel">
+ <a name="facing" val="east"/>
+ <a name="label" val="a2"/>
</comp>
- <comp lib="0" loc="(390,460)" name="Tunnel">
- <a name="label" val="o4"/>
+ <comp lib="0" loc="(500,380)" name="Pin">
+ <a name="width" val="3"/>
+ <a name="tristate" val="false"/>
</comp>
- <comp lib="0" loc="(390,370)" name="Tunnel">
- <a name="label" val="o3"/>
+ <comp lib="0" loc="(130,540)" name="Tunnel">
+ <a name="facing" val="east"/>
+ <a name="label" val="b5"/>
</comp>
- <comp lib="1" loc="(300,780)" name="AND Gate">
+ <comp lib="1" loc="(330,580)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
<a name="negate1" val="true"/>
</comp>
- <comp lib="1" loc="(300,270)" name="OR Gate">
- <a name="facing" val="south"/>
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
+ <comp lib="0" loc="(650,320)" name="Pin">
+ <a name="output" val="true"/>
+ <a name="width" val="8"/>
+ <a name="labelloc" val="east"/>
</comp>
- <comp lib="1" loc="(270,500)" name="AND Gate">
+ <comp lib="1" loc="(190,460)" name="XOR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
- <a name="negate1" val="true"/>
</comp>
- <comp lib="0" loc="(130,750)" name="Tunnel">
- <a name="facing" val="east"/>
- <a name="label" val="a7"/>
+ <comp lib="2" loc="(310,870)" name="Multiplexer">
+ <a name="facing" val="south"/>
+ <a name="selloc" val="tr"/>
+ <a name="enable" val="false"/>
</comp>
- <comp lib="1" loc="(190,400)" name="XOR Gate">
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
+ <comp lib="0" loc="(390,640)" name="Tunnel">
+ <a name="label" val="o6"/>
</comp>
- <comp lib="1" loc="(830,280)" name="OR Gate">
- <a name="size" val="70"/>
- <a name="inputs" val="8"/>
- </comp>
- <comp lib="6" loc="(611,272)" name="Text">
- <a name="text" val="Output"/>
- </comp>
- <comp lib="6" loc="(488,363)" name="Text">
- <a name="text" val="OPCODE"/>
- </comp>
- <comp lib="0" loc="(670,310)" name="Tunnel">
- <a name="label" val="o7"/>
+ <comp lib="0" loc="(640,440)" name="Constant"/>
+ <comp lib="1" loc="(340,190)" name="XNOR Gate">
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(500,380)" name="Pin">
- <a name="width" val="3"/>
- <a name="tristate" val="false"/>
+ <comp lib="4" loc="(670,550)" name="ROM">
+ <a name="addrWidth" val="4"/>
+ <a name="dataWidth" val="4"/>
+ <a name="contents">addr/data: 4 4
+7 3 9 a a
+</a>
</comp>
- <comp lib="0" loc="(580,130)" name="Pin">
- <a name="facing" val="west"/>
- <a name="width" val="8"/>
- <a name="tristate" val="false"/>
+ <comp lib="0" loc="(730,400)" name="Splitter">
+ <a name="facing" val="north"/>
+ <a name="fanout" val="6"/>
+ <a name="incoming" val="6"/>
+ <a name="appear" val="right"/>
</comp>
- <comp lib="0" loc="(130,540)" name="Tunnel">
- <a name="facing" val="east"/>
- <a name="label" val="b5"/>
+ <comp lib="1" loc="(330,400)" name="AND Gate">
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
+ <a name="negate1" val="true"/>
</comp>
- <comp lib="0" loc="(690,140)" name="Tunnel">
- <a name="facing" val="east"/>
- <a name="label" val="a0"/>
+ <comp lib="1" loc="(190,370)" name="XOR Gate">
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(560,210)" name="Tunnel">
+ <comp lib="0" loc="(690,170)" name="Tunnel">
<a name="facing" val="east"/>
- <a name="label" val="b7"/>
+ <a name="label" val="a3"/>
</comp>
- <comp lib="0" loc="(670,300)" name="Tunnel">
- <a name="label" val="o6"/>
+ <comp lib="0" loc="(760,380)" name="Tunnel">
+ <a name="facing" val="south"/>
+ <a name="label" val="OR"/>
</comp>
- <comp lib="0" loc="(560,180)" name="Tunnel">
+ <comp lib="0" loc="(130,270)" name="Tunnel">
<a name="facing" val="east"/>
- <a name="label" val="b4"/>
+ <a name="label" val="b2"/>
</comp>
- <comp lib="0" loc="(780,380)" name="Tunnel">
+ <comp lib="0" loc="(750,380)" name="Tunnel">
<a name="facing" val="south"/>
- <a name="label" val="CI"/>
+ <a name="label" val="!B"/>
</comp>
- <comp lib="1" loc="(280,740)" name="OR Gate">
+ <comp lib="1" loc="(190,190)" name="XOR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="1" loc="(330,670)" name="AND Gate">
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
- <a name="negate1" val="true"/>
+ <comp lib="0" loc="(670,260)" name="Tunnel">
+ <a name="label" val="o2"/>
</comp>
- <comp lib="1" loc="(310,510)" name="OR Gate">
- <a name="facing" val="west"/>
+ <comp lib="1" loc="(340,550)" name="XNOR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="6" loc="(472,453)" name="Text">
- <a name="text" val="COMPARE ENABLE"/>
- </comp>
- <comp lib="0" loc="(180,70)" name="Tunnel">
+ <comp lib="1" loc="(300,270)" name="OR Gate">
<a name="facing" val="south"/>
- <a name="label" val="!B"/>
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(340,70)" name="Tunnel">
- <a name="facing" val="south"/>
- <a name="label" val="FC"/>
+ <comp lib="0" loc="(560,200)" name="Tunnel">
+ <a name="facing" val="east"/>
+ <a name="label" val="b6"/>
</comp>
- <comp lib="1" loc="(310,240)" name="OR Gate">
- <a name="facing" val="west"/>
+ <comp lib="1" loc="(190,490)" name="XOR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(640,440)" name="Constant"/>
- <comp lib="1" loc="(190,640)" name="XOR Gate">
+ <comp lib="1" loc="(300,810)" name="OR Gate">
+ <a name="facing" val="south"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(710,500)" name="Splitter">
- <a name="facing" val="west"/>
- <a name="fanout" val="3"/>
- <a name="incoming" val="3"/>
- </comp>
- <comp lib="1" loc="(190,490)" name="XOR Gate">
+ <comp lib="1" loc="(240,310)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="1" loc="(300,180)" name="OR Gate">
- <a name="facing" val="south"/>
+ <comp lib="1" loc="(240,760)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(690,190)" name="Tunnel">
- <a name="facing" val="east"/>
- <a name="label" val="a5"/>
+ <comp lib="0" loc="(670,290)" name="Tunnel">
+ <a name="label" val="o5"/>
</comp>
- <comp lib="0" loc="(730,400)" name="Splitter">
- <a name="facing" val="north"/>
- <a name="fanout" val="6"/>
- <a name="incoming" val="6"/>
- <a name="appear" val="right"/>
+ <comp lib="0" loc="(500,550)" name="Pin">
+ <a name="width" val="4"/>
+ <a name="tristate" val="false"/>
</comp>
- <comp lib="0" loc="(130,180)" name="Tunnel">
+ <comp lib="0" loc="(690,150)" name="Tunnel">
<a name="facing" val="east"/>
- <a name="label" val="b1"/>
+ <a name="label" val="a1"/>
</comp>
- <comp lib="1" loc="(310,690)" name="OR Gate">
- <a name="facing" val="west"/>
+ <comp lib="1" loc="(330,220)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
+ <a name="negate1" val="true"/>
</comp>
- <comp lib="1" loc="(300,720)" name="OR Gate">
- <a name="facing" val="south"/>
+ <comp lib="1" loc="(240,400)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="1" loc="(300,810)" name="OR Gate">
- <a name="facing" val="south"/>
+ <comp lib="1" loc="(190,670)" name="XOR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="1" loc="(300,360)" name="OR Gate">
- <a name="facing" val="south"/>
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
+ <comp lib="0" loc="(560,140)" name="Tunnel">
+ <a name="facing" val="east"/>
+ <a name="label" val="b0"/>
</comp>
- <comp lib="0" loc="(710,320)" name="Splitter">
- <a name="fanout" val="8"/>
- <a name="incoming" val="8"/>
+ <comp lib="0" loc="(710,130)" name="Pin">
+ <a name="facing" val="west"/>
+ <a name="width" val="8"/>
+ <a name="tristate" val="false"/>
</comp>
- <comp lib="1" loc="(240,130)" name="AND Gate">
+ <comp lib="1" loc="(310,600)" name="OR Gate">
+ <a name="facing" val="west"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="6" loc="(481,532)" name="Text">
- <a name="text" val="AUX OP"/>
- </comp>
- <comp lib="0" loc="(690,160)" name="Tunnel">
+ <comp lib="0" loc="(130,180)" name="Tunnel">
<a name="facing" val="east"/>
- <a name="label" val="a2"/>
+ <a name="label" val="b1"/>
</comp>
- <comp lib="0" loc="(390,730)" name="Tunnel">
- <a name="label" val="o7"/>
+ <comp lib="0" loc="(670,250)" name="Tunnel">
+ <a name="label" val="o1"/>
</comp>
- <comp lib="1" loc="(330,580)" name="AND Gate">
+ <comp lib="1" loc="(270,320)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
<a name="negate1" val="true"/>
</comp>
- <comp lib="0" loc="(390,100)" name="Tunnel">
- <a name="label" val="o0"/>
+ <comp lib="1" loc="(280,290)" name="OR Gate">
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
</comp>
- <comp lib="1" loc="(270,680)" name="AND Gate">
+ <comp lib="0" loc="(780,380)" name="Tunnel">
+ <a name="facing" val="south"/>
+ <a name="label" val="CI"/>
+ </comp>
+ <comp lib="0" loc="(690,140)" name="Tunnel">
+ <a name="facing" val="east"/>
+ <a name="label" val="a0"/>
+ </comp>
+ <comp lib="1" loc="(300,420)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
<a name="negate1" val="true"/>
</comp>
- <comp lib="1" loc="(330,310)" name="AND Gate">
+ <comp lib="6" loc="(880,461)" name="Text">
+ <a name="text" val="OPCODES: 000: OR, 001: AND, 010: XOR, 011: ADD, 100: CIN, 101: NAND, 110: XNOR, 111: SUB"/>
+ </comp>
+ <comp lib="0" loc="(390,370)" name="Tunnel">
+ <a name="label" val="o3"/>
+ </comp>
+ <comp lib="1" loc="(300,360)" name="OR Gate">
+ <a name="facing" val="south"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
- <a name="negate1" val="true"/>
</comp>
- <comp lib="1" loc="(190,100)" name="XOR Gate">
+ <comp lib="0" loc="(650,320)" name="Splitter">
+ <a name="fanout" val="8"/>
+ <a name="incoming" val="8"/>
+ </comp>
+ <comp lib="1" loc="(300,690)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
+ <a name="negate1" val="true"/>
</comp>
- <comp lib="1" loc="(340,370)" name="XNOR Gate">
+ <comp lib="1" loc="(270,230)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
+ <a name="negate1" val="true"/>
</comp>
- <comp lib="0" loc="(770,380)" name="Tunnel">
- <a name="facing" val="south"/>
- <a name="label" val="CC"/>
+ <comp lib="0" loc="(390,550)" name="Tunnel">
+ <a name="label" val="o5"/>
</comp>
- <comp lib="1" loc="(280,650)" name="OR Gate">
+ <comp lib="1" loc="(330,130)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
+ <a name="negate1" val="true"/>
</comp>
- <comp lib="0" loc="(140,70)" name="Tunnel">
- <a name="facing" val="south"/>
- <a name="label" val="!A"/>
+ <comp lib="6" loc="(746,165)" name="Text">
+ <a name="text" val="Input A"/>
</comp>
- <comp lib="1" loc="(190,550)" name="XOR Gate">
+ <comp lib="1" loc="(310,240)" name="OR Gate">
+ <a name="facing" val="west"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="1" loc="(340,460)" name="XNOR Gate">
+ <comp lib="1" loc="(190,280)" name="XOR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(710,130)" name="Pin">
- <a name="facing" val="west"/>
- <a name="width" val="8"/>
- <a name="tristate" val="false"/>
+ <comp lib="0" loc="(130,360)" name="Tunnel">
+ <a name="facing" val="east"/>
+ <a name="label" val="b3"/>
</comp>
<comp lib="0" loc="(690,210)" name="Tunnel">
<a name="facing" val="east"/>
<a name="label" val="a7"/>
</comp>
- <comp lib="1" loc="(280,110)" name="OR Gate">
+ <comp lib="0" loc="(670,240)" name="Tunnel">
+ <a name="label" val="o0"/>
+ </comp>
+ <comp lib="1" loc="(250,370)" name="NOR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="1" loc="(340,190)" name="XNOR Gate">
+ <comp lib="0" loc="(130,660)" name="Tunnel">
+ <a name="facing" val="east"/>
+ <a name="label" val="a6"/>
+ </comp>
+ <comp lib="1" loc="(300,720)" name="OR Gate">
+ <a name="facing" val="south"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(390,640)" name="Tunnel">
- <a name="label" val="o6"/>
- </comp>
- <comp lib="1" loc="(250,550)" name="NOR Gate">
+ <comp lib="1" loc="(300,510)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
+ <a name="negate1" val="true"/>
</comp>
- <comp lib="0" loc="(580,130)" name="Splitter">
- <a name="facing" val="west"/>
- <a name="fanout" val="8"/>
- <a name="incoming" val="8"/>
+ <comp lib="1" loc="(240,490)" name="AND Gate">
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
</comp>
- <comp lib="2" loc="(310,870)" name="Multiplexer">
- <a name="facing" val="south"/>
- <a name="selloc" val="tr"/>
- <a name="enable" val="false"/>
+ <comp lib="0" loc="(670,300)" name="Tunnel">
+ <a name="label" val="o6"/>
</comp>
- <comp lib="1" loc="(330,760)" name="AND Gate">
+ <comp lib="1" loc="(300,150)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
<a name="negate1" val="true"/>
</comp>
- <comp lib="0" loc="(750,380)" name="Tunnel">
- <a name="facing" val="south"/>
- <a name="label" val="!B"/>
+ <comp lib="1" loc="(340,370)" name="XNOR Gate">
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(670,280)" name="Tunnel">
- <a name="label" val="o4"/>
+ <comp lib="0" loc="(560,170)" name="Tunnel">
+ <a name="facing" val="east"/>
+ <a name="label" val="b3"/>
</comp>
- <comp lib="0" loc="(560,140)" name="Tunnel">
+ <comp lib="0" loc="(130,450)" name="Tunnel">
<a name="facing" val="east"/>
- <a name="label" val="b0"/>
+ <a name="label" val="b4"/>
</comp>
- <comp lib="0" loc="(130,210)" name="Tunnel">
+ <comp lib="0" loc="(130,300)" name="Tunnel">
<a name="facing" val="east"/>
- <a name="label" val="a1"/>
+ <a name="label" val="a2"/>
</comp>
- <comp lib="1" loc="(190,220)" name="XOR Gate">
+ <comp lib="0" loc="(300,70)" name="Tunnel">
+ <a name="facing" val="south"/>
+ <a name="label" val="CI"/>
+ </comp>
+ <comp lib="0" loc="(740,380)" name="Tunnel">
+ <a name="facing" val="south"/>
+ <a name="label" val="!A"/>
+ </comp>
+ <comp lib="6" loc="(472,453)" name="Text">
+ <a name="text" val="COMPARE ENABLE"/>
+ </comp>
+ <comp lib="1" loc="(240,220)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(790,380)" name="Tunnel">
- <a name="facing" val="south"/>
- <a name="label" val="FC"/>
+ <comp lib="1" loc="(250,460)" name="NOR Gate">
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(130,450)" name="Tunnel">
- <a name="facing" val="east"/>
- <a name="label" val="b4"/>
+ <comp lib="1" loc="(190,400)" name="XOR Gate">
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(670,270)" name="Tunnel">
- <a name="label" val="o3"/>
+ <comp lib="1" loc="(250,280)" name="NOR Gate">
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
</comp>
- <comp lib="1" loc="(270,320)" name="AND Gate">
+ <comp lib="1" loc="(270,140)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
<a name="negate1" val="true"/>
</comp>
- <comp lib="0" loc="(130,360)" name="Tunnel">
- <a name="facing" val="east"/>
- <a name="label" val="b3"/>
+ <comp lib="0" loc="(710,320)" name="Splitter">
+ <a name="fanout" val="8"/>
+ <a name="incoming" val="8"/>
</comp>
- <comp lib="1" loc="(300,150)" name="AND Gate">
+ <comp lib="1" loc="(330,670)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
<a name="negate1" val="true"/>
</comp>
- <comp lib="1" loc="(270,410)" name="AND Gate">
+ <comp lib="0" loc="(180,70)" name="Tunnel">
+ <a name="facing" val="south"/>
+ <a name="label" val="!B"/>
+ </comp>
+ <comp lib="1" loc="(190,130)" name="XOR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
- <a name="negate1" val="true"/>
</comp>
- <comp lib="0" loc="(650,320)" name="Pin">
- <a name="output" val="true"/>
+ <comp lib="0" loc="(580,130)" name="Pin">
+ <a name="facing" val="west"/>
<a name="width" val="8"/>
- <a name="labelloc" val="east"/>
+ <a name="tristate" val="false"/>
+ </comp>
+ <comp lib="0" loc="(260,70)" name="Tunnel">
+ <a name="facing" val="south"/>
+ <a name="label" val="CC"/>
+ </comp>
+ <comp lib="0" loc="(770,380)" name="Tunnel">
+ <a name="facing" val="south"/>
+ <a name="label" val="CC"/>
+ </comp>
+ <comp lib="1" loc="(270,770)" name="AND Gate">
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
+ <a name="negate1" val="true"/>
+ </comp>
+ <comp lib="1" loc="(310,510)" name="OR Gate">
+ <a name="facing" val="west"/>
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
+ </comp>
+ <comp lib="1" loc="(340,730)" name="XNOR Gate">
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
+ </comp>
+ <comp lib="1" loc="(280,470)" name="OR Gate">
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
</comp>
<comp lib="1" loc="(330,490)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
<a name="negate1" val="true"/>
</comp>
+ <comp lib="1" loc="(330,760)" name="AND Gate">
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
+ <a name="negate1" val="true"/>
+ </comp>
+ <comp lib="1" loc="(310,780)" name="OR Gate">
+ <a name="facing" val="west"/>
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
+ </comp>
+ <comp lib="1" loc="(310,420)" name="OR Gate">
+ <a name="facing" val="west"/>
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
+ </comp>
+ <comp lib="1" loc="(190,220)" name="XOR Gate">
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
+ </comp>
+ <comp lib="0" loc="(130,90)" name="Tunnel">
+ <a name="facing" val="east"/>
+ <a name="label" val="b0"/>
+ </comp>
+ <comp lib="1" loc="(300,630)" name="OR Gate">
+ <a name="facing" val="south"/>
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
+ </comp>
+ <comp lib="1" loc="(280,650)" name="OR Gate">
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
+ </comp>
</circuit>
<circuit name="GPR">
<a name="circuit" val="GPR"/>
@@ -1408,30 +1419,42 @@
<wire from="(180,250)" to="(190,250)"/>
<wire from="(220,250)" to="(230,250)"/>
<wire from="(300,250)" to="(300,310)"/>
- <comp lib="1" loc="(290,230)" name="Controlled Buffer">
+ <comp lib="0" loc="(240,340)" name="Pin">
<a name="facing" val="west"/>
- <a name="width" val="8"/>
- </comp>
- <comp lib="0" loc="(100,90)" name="Pin">
<a name="width" val="2"/>
<a name="tristate" val="false"/>
</comp>
- <comp lib="4" loc="(230,170)" name="Register"/>
- <comp lib="1" loc="(250,230)" name="Controlled Buffer">
- <a name="facing" val="south"/>
+ <comp lib="1" loc="(290,260)" name="Controlled Buffer">
+ <a name="facing" val="west"/>
<a name="width" val="8"/>
</comp>
- <comp lib="0" loc="(100,70)" name="Constant">
+ <comp lib="2" loc="(130,80)" name="Multiplexer">
+ <a name="selloc" val="tr"/>
<a name="width" val="2"/>
- <a name="value" val="0x0"/>
+ <a name="enable" val="false"/>
</comp>
- <comp lib="0" loc="(150,340)" name="Pin">
+ <comp lib="0" loc="(240,180)" name="Constant"/>
+ <comp lib="0" loc="(100,90)" name="Pin">
<a name="width" val="2"/>
<a name="tristate" val="false"/>
</comp>
- <comp lib="0" loc="(240,340)" name="Pin">
+ <comp lib="4" loc="(190,170)" name="Register"/>
+ <comp lib="2" loc="(160,80)" name="Decoder">
+ <a name="facing" val="south"/>
+ <a name="select" val="2"/>
+ <a name="enable" val="false"/>
+ </comp>
+ <comp lib="0" loc="(160,180)" name="Constant"/>
+ <comp lib="1" loc="(250,230)" name="Controlled Buffer">
+ <a name="facing" val="south"/>
+ <a name="width" val="8"/>
+ </comp>
+ <comp lib="1" loc="(290,230)" name="Controlled Buffer">
<a name="facing" val="west"/>
- <a name="width" val="2"/>
+ <a name="width" val="8"/>
+ </comp>
+ <comp lib="0" loc="(140,130)" name="Pin">
+ <a name="width" val="8"/>
<a name="tristate" val="false"/>
</comp>
<comp lib="0" loc="(310,260)" name="Constant">
@@ -1439,30 +1462,15 @@
<a name="width" val="8"/>
<a name="value" val="0x0"/>
</comp>
- <comp lib="0" loc="(140,260)" name="Pin">
- <a name="output" val="true"/>
- <a name="width" val="8"/>
- <a name="labelloc" val="east"/>
+ <comp lib="0" loc="(130,200)" name="Pin">
+ <a name="tristate" val="false"/>
</comp>
- <comp lib="4" loc="(270,170)" name="Register"/>
- <comp lib="2" loc="(240,340)" name="Decoder">
+ <comp lib="2" loc="(150,340)" name="Decoder">
<a name="facing" val="north"/>
- <a name="selloc" val="tr"/>
<a name="select" val="2"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="0" loc="(200,180)" name="Constant"/>
- <comp lib="2" loc="(160,80)" name="Decoder">
- <a name="facing" val="south"/>
- <a name="select" val="2"/>
- <a name="enable" val="false"/>
- </comp>
- <comp lib="2" loc="(130,80)" name="Multiplexer">
- <a name="selloc" val="tr"/>
- <a name="width" val="2"/>
- <a name="enable" val="false"/>
- </comp>
- <comp lib="1" loc="(190,260)" name="Controlled Buffer">
+ <comp lib="1" loc="(170,230)" name="Controlled Buffer">
<a name="facing" val="south"/>
<a name="width" val="8"/>
</comp>
@@ -1470,51 +1478,54 @@
<a name="facing" val="south"/>
<a name="tristate" val="false"/>
</comp>
- <comp lib="0" loc="(140,230)" name="Pin">
- <a name="output" val="true"/>
- <a name="width" val="8"/>
- <a name="labelloc" val="east"/>
- </comp>
<comp lib="0" loc="(310,230)" name="Constant">
<a name="facing" val="west"/>
<a name="width" val="8"/>
<a name="value" val="0x0"/>
</comp>
- <comp lib="1" loc="(210,230)" name="Controlled Buffer">
+ <comp lib="1" loc="(190,260)" name="Controlled Buffer">
+ <a name="facing" val="south"/>
+ <a name="width" val="8"/>
+ </comp>
+ <comp lib="1" loc="(270,260)" name="Controlled Buffer">
<a name="facing" val="south"/>
<a name="width" val="8"/>
</comp>
- <comp lib="0" loc="(160,180)" name="Constant"/>
<comp lib="1" loc="(230,260)" name="Controlled Buffer">
<a name="facing" val="south"/>
<a name="width" val="8"/>
</comp>
- <comp lib="4" loc="(190,170)" name="Register"/>
- <comp lib="0" loc="(130,200)" name="Pin">
+ <comp lib="1" loc="(210,230)" name="Controlled Buffer">
+ <a name="facing" val="south"/>
+ <a name="width" val="8"/>
+ </comp>
+ <comp lib="4" loc="(230,170)" name="Register"/>
+ <comp lib="4" loc="(270,170)" name="Register"/>
+ <comp lib="0" loc="(140,260)" name="Pin">
+ <a name="output" val="true"/>
+ <a name="width" val="8"/>
+ <a name="labelloc" val="east"/>
+ </comp>
+ <comp lib="0" loc="(150,340)" name="Pin">
+ <a name="width" val="2"/>
<a name="tristate" val="false"/>
</comp>
- <comp lib="2" loc="(150,340)" name="Decoder">
+ <comp lib="2" loc="(240,340)" name="Decoder">
<a name="facing" val="north"/>
+ <a name="selloc" val="tr"/>
<a name="select" val="2"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="1" loc="(290,260)" name="Controlled Buffer">
- <a name="facing" val="west"/>
- <a name="width" val="8"/>
- </comp>
- <comp lib="0" loc="(140,130)" name="Pin">
- <a name="width" val="8"/>
- <a name="tristate" val="false"/>
- </comp>
- <comp lib="1" loc="(170,230)" name="Controlled Buffer">
- <a name="facing" val="south"/>
- <a name="width" val="8"/>
+ <comp lib="0" loc="(100,70)" name="Constant">
+ <a name="width" val="2"/>
+ <a name="value" val="0x0"/>
</comp>
- <comp lib="1" loc="(270,260)" name="Controlled Buffer">
- <a name="facing" val="south"/>
+ <comp lib="0" loc="(200,180)" name="Constant"/>
+ <comp lib="0" loc="(140,230)" name="Pin">
+ <a name="output" val="true"/>
<a name="width" val="8"/>
+ <a name="labelloc" val="east"/>
</comp>
- <comp lib="0" loc="(240,180)" name="Constant"/>
</circuit>
<circuit name="ISD">
<a name="circuit" val="ISD"/>
@@ -1528,26 +1539,28 @@
<circ-port height="8" pin="80,80" width="8" x="66" y="106"/>
<circ-port height="8" pin="80,250" width="8" x="146" y="96"/>
<circ-port height="10" pin="440,1610" width="10" x="65" y="45"/>
- <circ-port height="10" pin="620,1600" width="10" x="85" y="45"/>
- <circ-port height="10" pin="530,1830" width="10" x="45" y="95"/>
+ <circ-port height="10" pin="620,1610" width="10" x="85" y="45"/>
+ <circ-port height="10" pin="530,1880" width="10" x="45" y="95"/>
<circ-port height="10" pin="760,1580" width="10" x="45" y="65"/>
<circ-port height="10" pin="800,1580" width="10" x="45" y="55"/>
<circ-port height="10" pin="840,1610" width="10" x="115" y="45"/>
<circ-port height="10" pin="880,1610" width="10" x="105" y="45"/>
<circ-port height="10" pin="920,1610" width="10" x="135" y="45"/>
- <circ-port height="10" pin="1050,1460" width="10" x="75" y="105"/>
- <circ-port height="10" pin="770,1870" width="10" x="45" y="75"/>
- <circ-port height="8" pin="750,1890" width="8" x="56" y="46"/>
+ <circ-port height="10" pin="1110,1190" width="10" x="75" y="105"/>
+ <circ-port height="10" pin="780,1880" width="10" x="45" y="75"/>
+ <circ-port height="8" pin="660,1880" width="8" x="56" y="46"/>
<circ-port height="8" pin="90,1640" width="8" x="46" y="106"/>
<circ-port height="10" pin="330,1680" width="10" x="55" y="105"/>
<circ-port height="8" pin="440,1690" width="8" x="46" y="86"/>
<circ-port height="10" pin="570,1690" width="10" x="145" y="65"/>
- <circ-port height="10" pin="1250,1480" width="10" x="75" y="45"/>
- <circ-port height="10" pin="1250,1370" width="10" x="45" y="45"/>
- <circ-port height="10" pin="440,1870" width="10" x="145" y="85"/>
+ <circ-port height="10" pin="1190,1480" width="10" x="75" y="45"/>
+ <circ-port height="10" pin="1110,1370" width="10" x="45" y="45"/>
+ <circ-port height="10" pin="440,1880" width="10" x="145" y="85"/>
+ <circ-port height="10" pin="830,1890" width="10" x="145" y="55"/>
<circ-anchor facing="east" height="6" width="6" x="47" y="57"/>
</appear>
<wire from="(190,580)" to="(250,580)"/>
+ <wire from="(1090,1500)" to="(1130,1500)"/>
<wire from="(470,470)" to="(470,480)"/>
<wire from="(170,960)" to="(280,960)"/>
<wire from="(210,1360)" to="(210,1440)"/>
@@ -1557,17 +1570,18 @@
<wire from="(200,390)" to="(200,480)"/>
<wire from="(240,430)" to="(240,520)"/>
<wire from="(220,90)" to="(220,180)"/>
+ <wire from="(150,1720)" to="(380,1720)"/>
<wire from="(240,970)" to="(280,970)"/>
<wire from="(240,340)" to="(270,340)"/>
<wire from="(850,210)" to="(850,250)"/>
<wire from="(180,1310)" to="(270,1310)"/>
+ <wire from="(1090,1530)" to="(1100,1530)"/>
<wire from="(200,1020)" to="(280,1020)"/>
<wire from="(450,60)" to="(450,300)"/>
<wire from="(530,1750)" to="(660,1750)"/>
<wire from="(650,60)" to="(650,570)"/>
<wire from="(920,1240)" to="(920,1290)"/>
<wire from="(840,520)" to="(840,570)"/>
- <wire from="(1150,1580)" to="(1170,1580)"/>
<wire from="(880,880)" to="(880,930)"/>
<wire from="(510,1100)" to="(630,1100)"/>
<wire from="(510,1280)" to="(510,1290)"/>
@@ -1576,13 +1590,14 @@
<wire from="(210,730)" to="(270,730)"/>
<wire from="(230,440)" to="(280,440)"/>
<wire from="(170,1410)" to="(280,1410)"/>
- <wire from="(930,1540)" to="(1030,1540)"/>
+ <wire from="(680,1860)" to="(720,1860)"/>
<wire from="(180,500)" to="(180,590)"/>
<wire from="(200,840)" to="(200,930)"/>
<wire from="(220,540)" to="(220,630)"/>
<wire from="(240,880)" to="(240,970)"/>
<wire from="(510,1190)" to="(670,1190)"/>
<wire from="(340,1750)" to="(340,1790)"/>
+ <wire from="(720,1370)" to="(1110,1370)"/>
<wire from="(570,60)" to="(570,120)"/>
<wire from="(690,1140)" to="(690,1200)"/>
<wire from="(920,210)" to="(930,210)"/>
@@ -1590,21 +1605,19 @@
<wire from="(840,970)" to="(840,1020)"/>
<wire from="(880,1330)" to="(880,1380)"/>
<wire from="(930,870)" to="(930,880)"/>
- <wire from="(710,740)" to="(1080,740)"/>
- <wire from="(1140,1490)" to="(1180,1490)"/>
<wire from="(230,890)" to="(280,890)"/>
<wire from="(470,1370)" to="(470,1380)"/>
<wire from="(350,290)" to="(350,300)"/>
<wire from="(910,1010)" to="(1010,1010)"/>
- <wire from="(710,1700)" to="(750,1700)"/>
- <wire from="(1180,1760)" to="(1180,1770)"/>
<wire from="(200,1290)" to="(200,1380)"/>
<wire from="(180,950)" to="(180,1040)"/>
<wire from="(220,990)" to="(220,1080)"/>
<wire from="(230,260)" to="(270,260)"/>
+ <wire from="(150,1690)" to="(150,1720)"/>
<wire from="(190,940)" to="(280,940)"/>
<wire from="(850,1110)" to="(850,1150)"/>
<wire from="(940,1520)" to="(940,1560)"/>
+ <wire from="(1030,1540)" to="(1030,1790)"/>
<wire from="(440,1140)" to="(450,1140)"/>
<wire from="(920,340)" to="(930,340)"/>
<wire from="(100,250)" to="(100,1780)"/>
@@ -1612,14 +1625,16 @@
<wire from="(970,560)" to="(970,1570)"/>
<wire from="(720,780)" to="(730,780)"/>
<wire from="(260,1670)" to="(330,1670)"/>
+ <wire from="(800,1700)" to="(800,1750)"/>
<wire from="(640,60)" to="(650,60)"/>
<wire from="(930,1380)" to="(930,1520)"/>
<wire from="(890,960)" to="(890,970)"/>
<wire from="(850,600)" to="(850,610)"/>
+ <wire from="(1070,1550)" to="(1110,1550)"/>
+ <wire from="(340,1790)" to="(1030,1790)"/>
<wire from="(230,1340)" to="(280,1340)"/>
<wire from="(190,1540)" to="(190,1560)"/>
<wire from="(190,130)" to="(190,220)"/>
- <wire from="(530,1750)" to="(530,1830)"/>
<wire from="(230,170)" to="(230,260)"/>
<wire from="(230,1580)" to="(230,1610)"/>
<wire from="(210,370)" to="(250,370)"/>
@@ -1635,12 +1650,12 @@
<wire from="(880,430)" to="(890,430)"/>
<wire from="(180,1400)" to="(180,1520)"/>
<wire from="(880,750)" to="(890,750)"/>
- <wire from="(150,1690)" to="(150,1810)"/>
<wire from="(670,1190)" to="(670,1200)"/>
- <wire from="(680,1840)" to="(680,1850)"/>
<wire from="(550,110)" to="(550,120)"/>
<wire from="(850,1050)" to="(850,1060)"/>
<wire from="(440,1680)" to="(490,1680)"/>
+ <wire from="(530,1750)" to="(530,1880)"/>
+ <wire from="(1180,1500)" to="(1180,1780)"/>
<wire from="(200,480)" to="(250,480)"/>
<wire from="(220,180)" to="(270,180)"/>
<wire from="(440,1600)" to="(440,1610)"/>
@@ -1651,9 +1666,7 @@
<wire from="(190,580)" to="(190,670)"/>
<wire from="(940,820)" to="(940,840)"/>
<wire from="(530,150)" to="(530,300)"/>
- <wire from="(670,1700)" to="(670,1810)"/>
- <wire from="(550,110)" to="(1080,110)"/>
- <wire from="(730,1750)" to="(1140,1750)"/>
+ <wire from="(670,1700)" to="(670,1820)"/>
<wire from="(80,80)" to="(90,80)"/>
<wire from="(920,1240)" to="(930,1240)"/>
<wire from="(330,920)" to="(590,920)"/>
@@ -1664,6 +1677,7 @@
<wire from="(880,1200)" to="(890,1200)"/>
<wire from="(920,160)" to="(920,210)"/>
<wire from="(190,70)" to="(190,130)"/>
+ <wire from="(660,1750)" to="(800,1750)"/>
<wire from="(600,600)" to="(610,600)"/>
<wire from="(330,740)" to="(710,740)"/>
<wire from="(270,1510)" to="(520,1510)"/>
@@ -1671,8 +1685,8 @@
<wire from="(800,1380)" to="(800,1580)"/>
<wire from="(220,1260)" to="(280,1260)"/>
<wire from="(330,1190)" to="(510,1190)"/>
+ <wire from="(1090,1510)" to="(1130,1510)"/>
<wire from="(590,1010)" to="(630,1010)"/>
- <wire from="(670,1100)" to="(1030,1100)"/>
<wire from="(870,650)" to="(910,650)"/>
<wire from="(170,690)" to="(170,780)"/>
<wire from="(210,730)" to="(210,820)"/>
@@ -1685,13 +1699,14 @@
<wire from="(230,1070)" to="(230,1160)"/>
<wire from="(510,290)" to="(550,290)"/>
<wire from="(210,1690)" to="(210,1790)"/>
- <wire from="(720,1370)" to="(1250,1370)"/>
+ <wire from="(1030,1540)" to="(1110,1540)"/>
<wire from="(930,300)" to="(930,340)"/>
<wire from="(770,960)" to="(770,1380)"/>
<wire from="(330,1620)" to="(330,1660)"/>
+ <wire from="(1170,1500)" to="(1170,1560)"/>
<wire from="(420,1830)" to="(430,1830)"/>
<wire from="(810,870)" to="(810,1380)"/>
- <wire from="(170,1580)" to="(180,1580)"/>
+ <wire from="(380,1670)" to="(380,1720)"/>
<wire from="(840,970)" to="(850,970)"/>
<wire from="(880,1330)" to="(890,1330)"/>
<wire from="(840,1290)" to="(850,1290)"/>
@@ -1700,14 +1715,15 @@
<wire from="(880,250)" to="(880,300)"/>
<wire from="(600,1050)" to="(610,1050)"/>
<wire from="(210,1500)" to="(210,1560)"/>
+ <wire from="(830,1750)" to="(950,1750)"/>
<wire from="(190,400)" to="(250,400)"/>
<wire from="(470,290)" to="(470,300)"/>
<wire from="(200,1380)" to="(250,1380)"/>
<wire from="(170,780)" to="(280,780)"/>
<wire from="(830,650)" to="(830,670)"/>
+ <wire from="(240,250)" to="(240,340)"/>
<wire from="(210,1180)" to="(210,1270)"/>
<wire from="(170,1140)" to="(170,1230)"/>
- <wire from="(240,250)" to="(240,340)"/>
<wire from="(870,1010)" to="(870,1030)"/>
<wire from="(200,210)" to="(200,300)"/>
<wire from="(860,1000)" to="(860,1020)"/>
@@ -1727,16 +1743,15 @@
<wire from="(110,50)" to="(120,50)"/>
<wire from="(210,1180)" to="(280,1180)"/>
<wire from="(800,1380)" to="(810,1380)"/>
- <wire from="(790,1690)" to="(800,1690)"/>
+ <wire from="(800,1700)" to="(810,1700)"/>
+ <wire from="(730,780)" to="(730,1660)"/>
<wire from="(920,1060)" to="(920,1110)"/>
<wire from="(760,60)" to="(770,60)"/>
<wire from="(840,340)" to="(840,390)"/>
<wire from="(880,700)" to="(880,750)"/>
<wire from="(510,1100)" to="(510,1110)"/>
- <wire from="(380,1670)" to="(380,1810)"/>
- <wire from="(1140,1500)" to="(1180,1500)"/>
<wire from="(430,380)" to="(430,390)"/>
- <wire from="(730,780)" to="(730,1680)"/>
+ <wire from="(860,1780)" to="(1180,1780)"/>
<wire from="(170,1230)" to="(280,1230)"/>
<wire from="(790,830)" to="(830,830)"/>
<wire from="(180,320)" to="(180,410)"/>
@@ -1746,9 +1761,9 @@
<wire from="(240,1240)" to="(280,1240)"/>
<wire from="(170,600)" to="(270,600)"/>
<wire from="(220,270)" to="(250,270)"/>
- <wire from="(1140,1530)" to="(1150,1530)"/>
<wire from="(850,480)" to="(850,520)"/>
<wire from="(930,1200)" to="(930,1240)"/>
+ <wire from="(1150,1420)" to="(1150,1480)"/>
<wire from="(250,1600)" to="(260,1600)"/>
<wire from="(650,600)" to="(650,660)"/>
<wire from="(180,320)" to="(250,320)"/>
@@ -1760,16 +1775,16 @@
<wire from="(930,690)" to="(930,700)"/>
<wire from="(210,1000)" to="(270,1000)"/>
<wire from="(190,1300)" to="(250,1300)"/>
+ <wire from="(1080,1570)" to="(1120,1570)"/>
<wire from="(230,710)" to="(280,710)"/>
<wire from="(200,1640)" to="(250,1640)"/>
+ <wire from="(820,1860)" to="(820,1890)"/>
<wire from="(200,1110)" to="(200,1200)"/>
<wire from="(180,770)" to="(180,860)"/>
<wire from="(220,810)" to="(220,900)"/>
<wire from="(230,80)" to="(270,80)"/>
- <wire from="(970,560)" to="(1080,560)"/>
<wire from="(240,1150)" to="(240,1240)"/>
<wire from="(890,1290)" to="(890,1330)"/>
- <wire from="(230,1420)" to="(1200,1420)"/>
<wire from="(570,330)" to="(570,390)"/>
<wire from="(350,290)" to="(430,290)"/>
<wire from="(370,60)" to="(370,300)"/>
@@ -1779,38 +1794,39 @@
<wire from="(880,120)" to="(890,120)"/>
<wire from="(760,960)" to="(770,960)"/>
<wire from="(840,1240)" to="(840,1290)"/>
- <wire from="(620,1400)" to="(620,1600)"/>
+ <wire from="(680,1850)" to="(680,1860)"/>
<wire from="(230,1160)" to="(280,1160)"/>
- <wire from="(1040,1730)" to="(1140,1730)"/>
+ <wire from="(620,1400)" to="(620,1610)"/>
<wire from="(220,1260)" to="(220,1350)"/>
<wire from="(180,1220)" to="(180,1310)"/>
- <wire from="(700,1780)" to="(1190,1780)"/>
<wire from="(290,1450)" to="(830,1450)"/>
<wire from="(90,80)" to="(120,80)"/>
- <wire from="(1030,1100)" to="(1030,1540)"/>
+ <wire from="(1150,1480)" to="(1160,1480)"/>
<wire from="(510,1280)" to="(990,1280)"/>
- <wire from="(730,1680)" to="(760,1680)"/>
- <wire from="(1080,1540)" to="(1080,1790)"/>
- <wire from="(1210,1740)" to="(1210,1800)"/>
+ <wire from="(690,1770)" to="(850,1770)"/>
+ <wire from="(700,1780)" to="(860,1780)"/>
+ <wire from="(800,1750)" to="(830,1750)"/>
<wire from="(170,240)" to="(250,240)"/>
+ <wire from="(780,1690)" to="(780,1880)"/>
<wire from="(530,420)" to="(530,480)"/>
<wire from="(920,610)" to="(930,610)"/>
<wire from="(840,210)" to="(850,210)"/>
<wire from="(490,60)" to="(490,120)"/>
<wire from="(880,250)" to="(890,250)"/>
<wire from="(630,650)" to="(630,660)"/>
+ <wire from="(430,1810)" to="(810,1810)"/>
<wire from="(180,70)" to="(180,140)"/>
<wire from="(850,870)" to="(850,880)"/>
- <wire from="(1120,1550)" to="(1160,1550)"/>
+ <wire from="(1090,1520)" to="(1130,1520)"/>
+ <wire from="(860,1710)" to="(860,1780)"/>
<wire from="(200,300)" to="(250,300)"/>
<wire from="(1010,1010)" to="(1010,1650)"/>
- <wire from="(910,830)" to="(1080,830)"/>
<wire from="(190,400)" to="(190,490)"/>
<wire from="(230,440)" to="(230,530)"/>
<wire from="(210,100)" to="(210,190)"/>
<wire from="(940,640)" to="(940,660)"/>
<wire from="(210,640)" to="(250,640)"/>
- <wire from="(1050,1190)" to="(1050,1460)"/>
+ <wire from="(950,1540)" to="(950,1750)"/>
<wire from="(180,680)" to="(280,680)"/>
<wire from="(620,1380)" to="(650,1380)"/>
<wire from="(770,60)" to="(770,930)"/>
@@ -1827,6 +1843,7 @@
<wire from="(550,380)" to="(550,390)"/>
<wire from="(220,1080)" to="(280,1080)"/>
<wire from="(220,450)" to="(270,450)"/>
+ <wire from="(440,1870)" to="(440,1880)"/>
<wire from="(170,510)" to="(170,600)"/>
<wire from="(210,550)" to="(210,640)"/>
<wire from="(190,850)" to="(190,940)"/>
@@ -1834,7 +1851,6 @@
<wire from="(450,1750)" to="(450,1840)"/>
<wire from="(510,110)" to="(550,110)"/>
<wire from="(930,120)" to="(930,160)"/>
- <wire from="(550,380)" to="(1080,380)"/>
<wire from="(520,150)" to="(530,150)"/>
<wire from="(330,1370)" to="(470,1370)"/>
<wire from="(530,1320)" to="(530,1380)"/>
@@ -1848,8 +1864,6 @@
<wire from="(880,70)" to="(880,120)"/>
<wire from="(850,1380)" to="(850,1580)"/>
<wire from="(190,220)" to="(250,220)"/>
- <wire from="(330,200)" to="(1150,200)"/>
- <wire from="(1140,1510)" to="(1180,1510)"/>
<wire from="(470,110)" to="(470,120)"/>
<wire from="(200,1200)" to="(250,1200)"/>
<wire from="(510,470)" to="(510,480)"/>
@@ -1865,12 +1879,10 @@
<wire from="(860,820)" to="(860,840)"/>
<wire from="(270,1550)" to="(560,1550)"/>
<wire from="(240,610)" to="(280,610)"/>
- <wire from="(1080,1540)" to="(1160,1540)"/>
+ <wire from="(720,1370)" to="(720,1860)"/>
<wire from="(410,1430)" to="(440,1430)"/>
<wire from="(180,950)" to="(270,950)"/>
<wire from="(890,210)" to="(890,250)"/>
- <wire from="(720,1370)" to="(720,1850)"/>
- <wire from="(1220,1500)" to="(1220,1560)"/>
<wire from="(180,1540)" to="(190,1540)"/>
<wire from="(840,1240)" to="(850,1240)"/>
<wire from="(920,880)" to="(920,930)"/>
@@ -1886,8 +1898,8 @@
<wire from="(240,520)" to="(240,610)"/>
<wire from="(200,480)" to="(200,570)"/>
<wire from="(220,180)" to="(220,270)"/>
- <wire from="(150,1810)" to="(380,1810)"/>
<wire from="(240,1060)" to="(280,1060)"/>
+ <wire from="(830,1750)" to="(830,1830)"/>
<wire from="(430,290)" to="(470,290)"/>
<wire from="(220,1460)" to="(220,1560)"/>
<wire from="(220,90)" to="(250,90)"/>
@@ -1907,6 +1919,7 @@
<wire from="(910,560)" to="(970,560)"/>
<wire from="(230,530)" to="(280,530)"/>
<wire from="(370,330)" to="(370,480)"/>
+ <wire from="(800,1660)" to="(800,1680)"/>
<wire from="(200,930)" to="(200,1020)"/>
<wire from="(180,590)" to="(180,680)"/>
<wire from="(220,630)" to="(220,720)"/>
@@ -1915,22 +1928,18 @@
<wire from="(220,540)" to="(250,540)"/>
<wire from="(850,750)" to="(850,790)"/>
<wire from="(890,1110)" to="(890,1150)"/>
- <wire from="(1200,1420)" to="(1200,1480)"/>
<wire from="(400,420)" to="(410,420)"/>
+ <wire from="(850,1710)" to="(850,1770)"/>
<wire from="(360,60)" to="(370,60)"/>
<wire from="(320,1620)" to="(330,1620)"/>
- <wire from="(1050,1460)" to="(1050,1560)"/>
<wire from="(200,1500)" to="(210,1500)"/>
<wire from="(920,300)" to="(930,300)"/>
- <wire from="(660,1840)" to="(660,1890)"/>
<wire from="(200,930)" to="(270,930)"/>
<wire from="(680,60)" to="(690,60)"/>
<wire from="(840,1060)" to="(840,1110)"/>
<wire from="(710,740)" to="(710,750)"/>
<wire from="(930,960)" to="(930,970)"/>
<wire from="(890,600)" to="(890,610)"/>
- <wire from="(170,1550)" to="(230,1550)"/>
- <wire from="(1130,1570)" to="(1170,1570)"/>
<wire from="(240,1630)" to="(290,1630)"/>
<wire from="(230,980)" to="(280,980)"/>
<wire from="(430,1100)" to="(430,1110)"/>
@@ -1943,6 +1952,7 @@
<wire from="(200,1380)" to="(200,1480)"/>
<wire from="(330,470)" to="(350,470)"/>
<wire from="(570,510)" to="(570,1380)"/>
+ <wire from="(160,1580)" to="(180,1580)"/>
<wire from="(360,510)" to="(370,510)"/>
<wire from="(610,960)" to="(610,1020)"/>
<wire from="(920,430)" to="(930,430)"/>
@@ -1954,13 +1964,12 @@
<wire from="(230,70)" to="(230,80)"/>
<wire from="(200,120)" to="(250,120)"/>
<wire from="(120,1770)" to="(300,1770)"/>
+ <wire from="(1030,1510)" to="(1030,1540)"/>
<wire from="(200,1640)" to="(200,1660)"/>
<wire from="(190,220)" to="(190,310)"/>
- <wire from="(910,650)" to="(1080,650)"/>
<wire from="(230,260)" to="(230,350)"/>
<wire from="(690,1230)" to="(690,1380)"/>
<wire from="(570,150)" to="(570,300)"/>
- <wire from="(1200,1480)" to="(1210,1480)"/>
<wire from="(100,1780)" to="(250,1780)"/>
<wire from="(170,510)" to="(250,510)"/>
<wire from="(190,850)" to="(270,850)"/>
@@ -1971,12 +1980,11 @@
<wire from="(330,560)" to="(590,560)"/>
<wire from="(840,160)" to="(850,160)"/>
<wire from="(840,480)" to="(850,480)"/>
+ <wire from="(770,1690)" to="(780,1690)"/>
<wire from="(880,520)" to="(890,520)"/>
<wire from="(490,330)" to="(490,390)"/>
<wire from="(640,600)" to="(650,600)"/>
<wire from="(590,560)" to="(590,570)"/>
- <wire from="(690,1770)" to="(1130,1770)"/>
- <wire from="(1140,1520)" to="(1180,1520)"/>
<wire from="(200,570)" to="(250,570)"/>
<wire from="(590,650)" to="(630,650)"/>
<wire from="(440,1430)" to="(440,1580)"/>
@@ -1989,8 +1997,10 @@
<wire from="(910,560)" to="(910,580)"/>
<wire from="(940,910)" to="(940,930)"/>
<wire from="(250,1690)" to="(250,1780)"/>
+ <wire from="(730,1660)" to="(730,1680)"/>
<wire from="(250,1620)" to="(260,1620)"/>
<wire from="(530,1140)" to="(530,1200)"/>
+ <wire from="(870,1800)" to="(1070,1800)"/>
<wire from="(920,1330)" to="(930,1330)"/>
<wire from="(330,1010)" to="(590,1010)"/>
<wire from="(880,970)" to="(890,970)"/>
@@ -2005,6 +2015,7 @@
<wire from="(330,1280)" to="(510,1280)"/>
<wire from="(510,290)" to="(510,300)"/>
<wire from="(220,720)" to="(270,720)"/>
+ <wire from="(430,1810)" to="(430,1830)"/>
<wire from="(170,780)" to="(170,870)"/>
<wire from="(870,650)" to="(870,670)"/>
<wire from="(190,1120)" to="(190,1210)"/>
@@ -2013,16 +2024,15 @@
<wire from="(910,1010)" to="(910,1030)"/>
<wire from="(900,1000)" to="(900,1020)"/>
<wire from="(210,1360)" to="(250,1360)"/>
- <wire from="(170,1550)" to="(170,1580)"/>
<wire from="(230,1160)" to="(230,1250)"/>
<wire from="(510,380)" to="(550,380)"/>
<wire from="(180,1400)" to="(280,1400)"/>
- <wire from="(1200,1740)" to="(1210,1740)"/>
+ <wire from="(1100,200)" to="(1100,1530)"/>
<wire from="(180,770)" to="(270,770)"/>
<wire from="(930,390)" to="(930,430)"/>
<wire from="(590,920)" to="(750,920)"/>
- <wire from="(660,1890)" to="(750,1890)"/>
<wire from="(480,60)" to="(490,60)"/>
+ <wire from="(730,1660)" to="(800,1660)"/>
<wire from="(800,60)" to="(810,60)"/>
<wire from="(840,1060)" to="(850,1060)"/>
<wire from="(840,1380)" to="(850,1380)"/>
@@ -2035,6 +2045,7 @@
<wire from="(220,1170)" to="(270,1170)"/>
<wire from="(170,870)" to="(280,870)"/>
<wire from="(830,830)" to="(870,830)"/>
+ <wire from="(660,1850)" to="(660,1880)"/>
<wire from="(170,1230)" to="(170,1320)"/>
<wire from="(200,300)" to="(200,390)"/>
<wire from="(240,340)" to="(240,430)"/>
@@ -2046,15 +2057,18 @@
<wire from="(180,1220)" to="(270,1220)"/>
<wire from="(890,480)" to="(890,520)"/>
<wire from="(510,1370)" to="(720,1370)"/>
+ <wire from="(1070,1550)" to="(1070,1800)"/>
<wire from="(480,510)" to="(490,510)"/>
<wire from="(100,70)" to="(100,250)"/>
<wire from="(210,1270)" to="(280,1270)"/>
+ <wire from="(330,200)" to="(1100,200)"/>
<wire from="(920,1150)" to="(920,1200)"/>
<wire from="(840,430)" to="(840,480)"/>
<wire from="(880,790)" to="(880,840)"/>
<wire from="(510,1190)" to="(510,1200)"/>
<wire from="(370,1440)" to="(430,1440)"/>
<wire from="(790,830)" to="(790,840)"/>
+ <wire from="(810,1810)" to="(810,1820)"/>
<wire from="(230,350)" to="(280,350)"/>
<wire from="(170,1320)" to="(280,1320)"/>
<wire from="(180,410)" to="(180,500)"/>
@@ -2065,8 +2079,8 @@
<wire from="(170,690)" to="(270,690)"/>
<wire from="(220,360)" to="(250,360)"/>
<wire from="(930,1290)" to="(930,1330)"/>
+ <wire from="(1030,1510)" to="(1040,1510)"/>
<wire from="(370,510)" to="(370,1440)"/>
- <wire from="(770,1870)" to="(800,1870)"/>
<wire from="(410,420)" to="(410,1430)"/>
<wire from="(610,60)" to="(610,570)"/>
<wire from="(180,410)" to="(250,410)"/>
@@ -2079,7 +2093,6 @@
<wire from="(810,60)" to="(810,840)"/>
<wire from="(750,920)" to="(750,930)"/>
<wire from="(850,60)" to="(850,70)"/>
- <wire from="(230,1420)" to="(230,1550)"/>
<wire from="(210,1090)" to="(270,1090)"/>
<wire from="(190,1390)" to="(250,1390)"/>
<wire from="(250,100)" to="(250,110)"/>
@@ -2090,9 +2103,9 @@
<wire from="(180,860)" to="(180,950)"/>
<wire from="(220,900)" to="(220,990)"/>
<wire from="(230,170)" to="(270,170)"/>
- <wire from="(1040,1590)" to="(1040,1730)"/>
<wire from="(240,1240)" to="(240,1330)"/>
<wire from="(470,1370)" to="(510,1370)"/>
+ <wire from="(160,1420)" to="(1150,1420)"/>
<wire from="(330,290)" to="(350,290)"/>
<wire from="(330,110)" to="(470,110)"/>
<wire from="(360,330)" to="(370,330)"/>
@@ -2121,20 +2134,20 @@
<wire from="(250,1780)" to="(700,1780)"/>
<wire from="(840,300)" to="(850,300)"/>
<wire from="(880,340)" to="(890,340)"/>
+ <wire from="(1150,1560)" to="(1170,1560)"/>
<wire from="(600,60)" to="(610,60)"/>
<wire from="(670,1100)" to="(670,1110)"/>
<wire from="(520,1670)" to="(570,1670)"/>
<wire from="(850,960)" to="(850,970)"/>
<wire from="(890,1380)" to="(890,1510)"/>
<wire from="(200,390)" to="(250,390)"/>
- <wire from="(1080,1510)" to="(1080,1540)"/>
<wire from="(870,1490)" to="(870,1580)"/>
<wire from="(170,150)" to="(170,240)"/>
- <wire from="(910,920)" to="(1080,920)"/>
<wire from="(230,530)" to="(230,620)"/>
<wire from="(190,490)" to="(190,580)"/>
<wire from="(210,190)" to="(210,280)"/>
<wire from="(490,510)" to="(490,1380)"/>
+ <wire from="(1100,1530)" to="(1100,1580)"/>
<wire from="(920,1150)" to="(930,1150)"/>
<wire from="(840,430)" to="(850,430)"/>
<wire from="(880,790)" to="(890,790)"/>
@@ -2155,14 +2168,14 @@
<wire from="(210,640)" to="(210,730)"/>
<wire from="(190,940)" to="(190,1030)"/>
<wire from="(230,980)" to="(230,1070)"/>
+ <wire from="(1080,1570)" to="(1080,1770)"/>
<wire from="(910,830)" to="(910,850)"/>
<wire from="(900,820)" to="(900,840)"/>
<wire from="(240,250)" to="(280,250)"/>
- <wire from="(1130,1770)" to="(1180,1770)"/>
+ <wire from="(160,1420)" to="(160,1580)"/>
<wire from="(180,590)" to="(270,590)"/>
<wire from="(930,210)" to="(930,250)"/>
- <wire from="(550,470)" to="(1080,470)"/>
- <wire from="(140,1800)" to="(1120,1800)"/>
+ <wire from="(710,1700)" to="(730,1700)"/>
<wire from="(330,830)" to="(790,830)"/>
<wire from="(880,1560)" to="(890,1560)"/>
<wire from="(650,1140)" to="(650,1380)"/>
@@ -2173,6 +2186,7 @@
<wire from="(600,960)" to="(610,960)"/>
<wire from="(880,160)" to="(880,210)"/>
<wire from="(650,690)" to="(650,1020)"/>
+ <wire from="(670,1190)" to="(1110,1190)"/>
<wire from="(760,1380)" to="(760,1580)"/>
<wire from="(190,310)" to="(250,310)"/>
<wire from="(200,1290)" to="(250,1290)"/>
@@ -2190,13 +2204,13 @@
<wire from="(240,700)" to="(280,700)"/>
<wire from="(470,290)" to="(510,290)"/>
<wire from="(240,70)" to="(270,70)"/>
- <wire from="(1150,200)" to="(1150,1530)"/>
<wire from="(180,1040)" to="(270,1040)"/>
<wire from="(890,300)" to="(890,340)"/>
<wire from="(480,330)" to="(490,330)"/>
<wire from="(290,1740)" to="(300,1740)"/>
<wire from="(840,1330)" to="(850,1330)"/>
<wire from="(920,970)" to="(920,1020)"/>
+ <wire from="(1100,1580)" to="(1120,1580)"/>
<wire from="(840,250)" to="(840,300)"/>
<wire from="(880,610)" to="(880,660)"/>
<wire from="(210,460)" to="(270,460)"/>
@@ -2211,10 +2225,10 @@
<wire from="(240,1150)" to="(280,1150)"/>
<wire from="(210,70)" to="(210,100)"/>
<wire from="(430,380)" to="(470,380)"/>
+ <wire from="(930,1540)" to="(950,1540)"/>
<wire from="(850,390)" to="(850,430)"/>
<wire from="(890,750)" to="(890,790)"/>
<wire from="(930,1110)" to="(930,1150)"/>
- <wire from="(1120,1550)" to="(1120,1800)"/>
<wire from="(400,60)" to="(410,60)"/>
<wire from="(440,420)" to="(450,420)"/>
<wire from="(180,230)" to="(250,230)"/>
@@ -2226,19 +2240,20 @@
<wire from="(930,600)" to="(930,610)"/>
<wire from="(190,1210)" to="(250,1210)"/>
<wire from="(210,910)" to="(270,910)"/>
+ <wire from="(1090,1490)" to="(1130,1490)"/>
<wire from="(430,1440)" to="(430,1580)"/>
<wire from="(390,380)" to="(390,390)"/>
<wire from="(230,620)" to="(280,620)"/>
+ <wire from="(850,1770)" to="(1080,1770)"/>
<wire from="(180,680)" to="(180,770)"/>
<wire from="(220,720)" to="(220,810)"/>
<wire from="(200,1020)" to="(200,1110)"/>
<wire from="(930,1560)" to="(930,1580)"/>
- <wire from="(340,1790)" to="(1080,1790)"/>
<wire from="(300,1570)" to="(300,1600)"/>
<wire from="(240,1060)" to="(240,1150)"/>
<wire from="(220,630)" to="(250,630)"/>
+ <wire from="(870,1690)" to="(870,1800)"/>
<wire from="(890,1200)" to="(890,1240)"/>
- <wire from="(1080,1510)" to="(1090,1510)"/>
<wire from="(330,1730)" to="(990,1730)"/>
<wire from="(610,600)" to="(610,660)"/>
<wire from="(450,420)" to="(450,1110)"/>
@@ -2246,6 +2261,7 @@
<wire from="(730,60)" to="(730,750)"/>
<wire from="(920,70)" to="(930,70)"/>
<wire from="(750,920)" to="(830,920)"/>
+ <wire from="(820,1890)" to="(830,1890)"/>
<wire from="(880,1510)" to="(880,1560)"/>
<wire from="(840,1150)" to="(840,1200)"/>
<wire from="(300,1770)" to="(690,1770)"/>
@@ -2254,27 +2270,23 @@
<wire from="(250,370)" to="(250,380)"/>
<wire from="(230,1070)" to="(280,1070)"/>
<wire from="(430,1830)" to="(430,1840)"/>
- <wire from="(730,1680)" to="(730,1750)"/>
- <wire from="(670,1190)" to="(1050,1190)"/>
<wire from="(350,470)" to="(350,480)"/>
<wire from="(90,1640)" to="(200,1640)"/>
- <wire from="(680,1850)" to="(720,1850)"/>
<wire from="(220,1170)" to="(220,1260)"/>
<wire from="(180,1130)" to="(180,1220)"/>
<wire from="(210,100)" to="(250,100)"/>
<wire from="(560,1380)" to="(560,1550)"/>
<wire from="(850,1290)" to="(850,1330)"/>
- <wire from="(1240,1480)" to="(1250,1480)"/>
<wire from="(240,1750)" to="(260,1750)"/>
<wire from="(170,150)" to="(250,150)"/>
<wire from="(530,330)" to="(530,390)"/>
<wire from="(120,40)" to="(130,40)"/>
<wire from="(920,520)" to="(930,520)"/>
<wire from="(840,120)" to="(850,120)"/>
+ <wire from="(800,1680)" to="(810,1680)"/>
<wire from="(880,160)" to="(890,160)"/>
<wire from="(880,480)" to="(890,480)"/>
<wire from="(630,560)" to="(630,570)"/>
- <wire from="(1190,1760)" to="(1190,1780)"/>
<wire from="(200,210)" to="(250,210)"/>
<wire from="(210,1500)" to="(260,1500)"/>
<wire from="(190,310)" to="(190,400)"/>
@@ -2291,7 +2303,6 @@
<wire from="(490,420)" to="(490,480)"/>
<wire from="(880,610)" to="(890,610)"/>
<wire from="(640,690)" to="(650,690)"/>
- <wire from="(1200,1560)" to="(1220,1560)"/>
<wire from="(630,1010)" to="(630,1020)"/>
<wire from="(550,290)" to="(550,300)"/>
<wire from="(590,650)" to="(590,660)"/>
@@ -2305,8 +2316,6 @@
<wire from="(900,640)" to="(900,660)"/>
<wire from="(910,650)" to="(910,670)"/>
<wire from="(940,1000)" to="(940,1020)"/>
- <wire from="(1150,1530)" to="(1150,1580)"/>
- <wire from="(550,290)" to="(1080,290)"/>
<wire from="(520,1410)" to="(520,1510)"/>
<wire from="(80,250)" to="(100,250)"/>
<wire from="(520,60)" to="(530,60)"/>
@@ -2320,7 +2329,6 @@
<wire from="(920,340)" to="(920,390)"/>
<wire from="(560,420)" to="(570,420)"/>
<wire from="(560,1380)" to="(570,1380)"/>
- <wire from="(1030,1540)" to="(1030,1560)"/>
<wire from="(190,130)" to="(250,130)"/>
<wire from="(220,810)" to="(270,810)"/>
<wire from="(200,1110)" to="(250,1110)"/>
@@ -2330,281 +2338,295 @@
<wire from="(170,870)" to="(170,960)"/>
<wire from="(210,910)" to="(210,1000)"/>
<wire from="(190,1210)" to="(190,1300)"/>
- <wire from="(1130,1570)" to="(1130,1770)"/>
<wire from="(240,520)" to="(280,520)"/>
<wire from="(220,1460)" to="(260,1460)"/>
+ <wire from="(380,1720)" to="(380,1810)"/>
<wire from="(230,1250)" to="(230,1340)"/>
<wire from="(470,110)" to="(510,110)"/>
<wire from="(510,470)" to="(550,470)"/>
<wire from="(180,860)" to="(270,860)"/>
<wire from="(890,120)" to="(890,160)"/>
+ <wire from="(140,1800)" to="(870,1800)"/>
<wire from="(930,480)" to="(930,520)"/>
<wire from="(300,1570)" to="(970,1570)"/>
<wire from="(200,70)" to="(200,120)"/>
<wire from="(480,150)" to="(490,150)"/>
- <wire from="(1120,1800)" to="(1210,1800)"/>
<wire from="(930,1560)" to="(940,1560)"/>
<wire from="(880,1510)" to="(890,1510)"/>
- <wire from="(800,1690)" to="(800,1870)"/>
<wire from="(840,1150)" to="(850,1150)"/>
<wire from="(920,790)" to="(920,840)"/>
+ <wire from="(730,1680)" to="(740,1680)"/>
<wire from="(840,70)" to="(840,120)"/>
<wire from="(520,510)" to="(530,510)"/>
<wire from="(880,430)" to="(880,480)"/>
<wire from="(450,1140)" to="(450,1580)"/>
- <comp lib="1" loc="(880,1610)" name="OR Gate">
+ <comp lib="0" loc="(440,60)" name="Constant">
<a name="facing" val="south"/>
- <a name="width" val="2"/>
+ <a name="value" val="0x0"/>
+ </comp>
+ <comp lib="0" loc="(280,480)" name="Constant"/>
+ <comp lib="1" loc="(280,370)" name="OR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(280,320)" name="Constant"/>
- <comp lib="1" loc="(760,960)" name="OR Gate">
+ <comp lib="1" loc="(560,150)" name="OR Gate">
<a name="facing" val="south"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(890,60)" name="Constant">
- <a name="facing" val="south"/>
- <a name="width" val="2"/>
- <a name="value" val="0x0"/>
+ <comp lib="1" loc="(330,1280)" name="AND Gate">
+ <a name="inputs" val="8"/>
+ <a name="label" val="SP"/>
+ <a name="negate6" val="true"/>
+ </comp>
+ <comp lib="0" loc="(280,500)" name="Constant"/>
+ <comp lib="0" loc="(280,220)" name="Constant"/>
+ <comp lib="2" loc="(930,960)" name="Multiplexer">
+ <a name="facing" val="south"/>
+ <a name="width" val="2"/>
+ <a name="enable" val="false"/>
</comp>
- <comp lib="1" loc="(670,1810)" name="AND Gate">
+ <comp lib="0" loc="(440,1880)" name="Pin">
<a name="facing" val="north"/>
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
+ <a name="output" val="true"/>
+ <a name="label" val="Memory Select"/>
+ <a name="labelloc" val="south"/>
</comp>
- <comp lib="2" loc="(930,1050)" name="Multiplexer">
+ <comp lib="0" loc="(440,1610)" name="Pin">
+ <a name="facing" val="north"/>
+ <a name="output" val="true"/>
+ <a name="width" val="3"/>
+ <a name="label" val="ALU OP"/>
+ <a name="labelloc" val="south"/>
+ </comp>
+ <comp lib="2" loc="(850,1050)" name="Multiplexer">
<a name="facing" val="south"/>
<a name="width" val="2"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="1" loc="(290,1610)" name="OR Gate">
- <a name="width" val="8"/>
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
- </comp>
- <comp lib="0" loc="(480,60)" name="Constant">
+ <comp lib="0" loc="(280,640)" name="Constant"/>
+ <comp lib="0" loc="(720,60)" name="Constant">
<a name="facing" val="south"/>
<a name="value" val="0x0"/>
</comp>
- <comp lib="1" loc="(330,110)" name="AND Gate">
- <a name="inputs" val="8"/>
- <a name="label" val="OR"/>
- <a name="negate0" val="true"/>
- <a name="negate1" val="true"/>
- </comp>
- <comp lib="0" loc="(930,60)" name="Constant">
+ <comp lib="1" loc="(800,870)" name="OR Gate">
<a name="facing" val="south"/>
- <a name="width" val="2"/>
- <a name="value" val="0x0"/>
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(560,60)" name="Constant">
+ <comp lib="0" loc="(280,1360)" name="Constant"/>
+ <comp lib="0" loc="(520,60)" name="Constant">
<a name="facing" val="south"/>
<a name="value" val="0x0"/>
</comp>
- <comp lib="1" loc="(330,380)" name="AND Gate">
- <a name="inputs" val="8"/>
- <a name="label" val="ADD"/>
- <a name="negate0" val="true"/>
- </comp>
- <comp lib="0" loc="(280,220)" name="Constant"/>
- <comp lib="2" loc="(850,690)" name="Multiplexer">
+ <comp lib="1" loc="(840,1610)" name="OR Gate">
<a name="facing" val="south"/>
<a name="width" val="2"/>
- <a name="enable" val="false"/>
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
</comp>
<comp lib="1" loc="(480,1410)" name="OR Gate">
<a name="facing" val="south"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(900,910)" name="Constant">
- <a name="facing" val="south"/>
- <a name="width" val="2"/>
- <a name="value" val="0x0"/>
+ <comp lib="0" loc="(1150,1480)" name="Splitter">
+ <a name="facing" val="west"/>
+ <a name="fanout" val="4"/>
+ <a name="incoming" val="4"/>
</comp>
- <comp lib="1" loc="(800,870)" name="OR Gate">
+ <comp lib="0" loc="(280,1120)" name="Constant"/>
+ <comp lib="6" loc="(233,1834)" name="Text">
+ <a name="text" val="This input defines the range of MMIO -->"/>
+ </comp>
+ <comp lib="1" loc="(880,1610)" name="OR Gate">
<a name="facing" val="south"/>
+ <a name="width" val="2"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(520,60)" name="Constant">
+ <comp lib="2" loc="(890,1050)" name="Multiplexer">
<a name="facing" val="south"/>
- <a name="value" val="0x0"/>
- </comp>
- <comp lib="1" loc="(330,290)" name="AND Gate">
- <a name="inputs" val="8"/>
- <a name="label" val="NAND"/>
- <a name="negate1" val="true"/>
+ <a name="width" val="2"/>
+ <a name="enable" val="false"/>
</comp>
- <comp lib="1" loc="(330,1010)" name="AND Gate">
- <a name="inputs" val="8"/>
- <a name="label" val="PCR"/>
- <a name="negate2" val="true"/>
- <a name="negate3" val="true"/>
- <a name="negate6" val="true"/>
+ <comp lib="0" loc="(240,1630)" name="Splitter">
+ <a name="facing" val="north"/>
+ <a name="incoming" val="8"/>
+ <a name="bit1" val="0"/>
+ <a name="bit2" val="0"/>
+ <a name="bit3" val="0"/>
+ <a name="bit4" val="1"/>
+ <a name="bit5" val="1"/>
+ <a name="bit6" val="1"/>
+ <a name="bit7" val="1"/>
</comp>
- <comp lib="1" loc="(330,560)" name="AND Gate">
+ <comp lib="1" loc="(330,110)" name="AND Gate">
<a name="inputs" val="8"/>
- <a name="label" val="LLI"/>
- <a name="negate6" val="true"/>
- <a name="negate7" val="true"/>
+ <a name="label" val="OR"/>
+ <a name="negate0" val="true"/>
+ <a name="negate1" val="true"/>
</comp>
- <comp lib="0" loc="(160,1670)" name="Constant">
+ <comp lib="1" loc="(290,1610)" name="OR Gate">
<a name="width" val="8"/>
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
</comp>
- <comp lib="2" loc="(930,600)" name="Multiplexer">
+ <comp lib="2" loc="(850,870)" name="Multiplexer">
<a name="facing" val="south"/>
<a name="width" val="2"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="1" loc="(520,420)" name="OR Gate">
+ <comp lib="1" loc="(640,690)" name="OR Gate">
<a name="facing" val="south"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="1" loc="(330,1370)" name="AND Gate">
- <a name="inputs" val="8"/>
- <a name="label" val="CMP"/>
- </comp>
+ <comp lib="0" loc="(280,300)" name="Constant"/>
<comp lib="0" loc="(900,640)" name="Constant">
<a name="facing" val="south"/>
<a name="width" val="2"/>
</comp>
- <comp lib="1" loc="(520,150)" name="OR Gate">
+ <comp lib="4" loc="(710,1700)" name="Register">
+ <a name="width" val="1"/>
+ <a name="trigger" val="falling"/>
+ </comp>
+ <comp lib="1" loc="(1040,1510)" name="AND Gate">
+ <a name="facing" val="west"/>
+ <a name="label" val="ptrinc"/>
+ </comp>
+ <comp lib="2" loc="(890,960)" name="Multiplexer">
+ <a name="facing" val="south"/>
+ <a name="width" val="2"/>
+ <a name="enable" val="false"/>
+ </comp>
+ <comp lib="0" loc="(160,50)" name="Splitter">
<a name="facing" val="south"/>
+ <a name="fanout" val="8"/>
+ <a name="incoming" val="8"/>
+ </comp>
+ <comp lib="0" loc="(260,1520)" name="Constant">
+ <a name="width" val="2"/>
+ <a name="value" val="0x0"/>
+ </comp>
+ <comp lib="1" loc="(770,1690)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
+ <a name="negate1" val="true"/>
</comp>
- <comp lib="2" loc="(160,50)" name="Multiplexer">
- <a name="width" val="8"/>
- <a name="enable" val="false"/>
+ <comp lib="1" loc="(360,510)" name="OR Gate">
+ <a name="facing" val="south"/>
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
</comp>
<comp lib="0" loc="(280,670)" name="Constant"/>
- <comp lib="0" loc="(80,250)" name="Pin">
- <a name="tristate" val="false"/>
- <a name="label" val="RST"/>
- </comp>
- <comp lib="0" loc="(620,1600)" name="Pin">
- <a name="facing" val="north"/>
- <a name="output" val="true"/>
- <a name="width" val="2"/>
- <a name="label" val="GPR MUX"/>
- <a name="labelloc" val="south"/>
+ <comp lib="0" loc="(280,1300)" name="Constant"/>
+ <comp lib="1" loc="(720,780)" name="OR Gate">
+ <a name="facing" val="south"/>
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(940,820)" name="Constant">
+ <comp lib="0" loc="(940,640)" name="Constant">
<a name="facing" val="south"/>
<a name="width" val="2"/>
- <a name="value" val="0x0"/>
</comp>
- <comp lib="0" loc="(770,1870)" name="Pin">
+ <comp lib="0" loc="(330,1680)" name="Pin">
+ <a name="facing" val="north"/>
<a name="output" val="true"/>
- <a name="label" val="BRANCH"/>
+ <a name="width" val="8"/>
+ <a name="label" val="MEM POINTER"/>
+ <a name="labelloc" val="south"/>
</comp>
- <comp lib="1" loc="(680,1140)" name="OR Gate">
+ <comp lib="1" loc="(480,420)" name="OR Gate">
<a name="facing" val="south"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(280,210)" name="Constant"/>
- <comp lib="0" loc="(1250,1480)" name="Pin">
- <a name="facing" val="west"/>
- <a name="output" val="true"/>
+ <comp lib="0" loc="(240,1580)" name="Constant">
+ <a name="facing" val="south"/>
<a name="width" val="4"/>
- <a name="label" val="Compare OP"/>
- <a name="labelloc" val="east"/>
+ <a name="value" val="0x0"/>
</comp>
- <comp lib="1" loc="(300,1740)" name="OR Gate">
- <a name="facing" val="west"/>
+ <comp lib="2" loc="(290,1450)" name="Multiplexer">
+ <a name="width" val="2"/>
+ <a name="enable" val="false"/>
+ </comp>
+ <comp lib="1" loc="(330,290)" name="AND Gate">
+ <a name="inputs" val="8"/>
+ <a name="label" val="NAND"/>
+ <a name="negate1" val="true"/>
+ </comp>
+ <comp lib="2" loc="(850,960)" name="Multiplexer">
+ <a name="facing" val="south"/>
+ <a name="width" val="2"/>
+ <a name="enable" val="false"/>
+ </comp>
+ <comp lib="1" loc="(680,1230)" name="OR Gate">
+ <a name="facing" val="south"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(750,1890)" name="Pin">
- <a name="facing" val="west"/>
- <a name="tristate" val="false"/>
- <a name="label" val="JMP FLAG"/>
- <a name="labelloc" val="east"/>
- </comp>
- <comp lib="0" loc="(440,1600)" name="Splitter">
+ <comp lib="0" loc="(620,1400)" name="Splitter">
<a name="facing" val="north"/>
- <a name="fanout" val="3"/>
- <a name="incoming" val="3"/>
<a name="appear" val="center"/>
</comp>
- <comp lib="0" loc="(1050,1460)" name="Pin">
+ <comp lib="0" loc="(780,1880)" name="Pin">
<a name="facing" val="north"/>
<a name="output" val="true"/>
- <a name="label" val="Write Enable"/>
- <a name="labelloc" val="east"/>
+ <a name="label" val="BRANCH"/>
+ <a name="labelloc" val="south"/>
</comp>
- <comp lib="0" loc="(440,1870)" name="Pin">
- <a name="facing" val="north"/>
- <a name="output" val="true"/>
- <a name="label" val="MEMORY READ SELECT"/>
- <a name="labelloc" val="east"/>
+ <comp lib="0" loc="(860,1000)" name="Constant">
+ <a name="facing" val="south"/>
+ <a name="width" val="2"/>
+ <a name="value" val="0x0"/>
</comp>
- <comp lib="0" loc="(180,1580)" name="Splitter">
- <a name="facing" val="north"/>
- <a name="incoming" val="4"/>
- <a name="appear" val="right"/>
- <a name="bit1" val="0"/>
- <a name="bit2" val="1"/>
- <a name="bit3" val="1"/>
+ <comp lib="0" loc="(80,250)" name="Pin">
+ <a name="tristate" val="false"/>
+ <a name="label" val="RST"/>
</comp>
- <comp lib="0" loc="(280,410)" name="Constant"/>
- <comp lib="0" loc="(280,150)" name="Constant"/>
- <comp lib="1" loc="(520,510)" name="OR Gate">
+ <comp lib="0" loc="(360,60)" name="Constant">
+ <a name="facing" val="south"/>
+ <a name="value" val="0x0"/>
+ </comp>
+ <comp lib="1" loc="(400,420)" name="OR Gate">
<a name="facing" val="south"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="1" loc="(520,1410)" name="OR Gate">
- <a name="facing" val="south"/>
+ <comp lib="2" loc="(320,1620)" name="Multiplexer">
+ <a name="selloc" val="tr"/>
+ <a name="width" val="8"/>
+ <a name="enable" val="false"/>
+ </comp>
+ <comp lib="1" loc="(280,100)" name="OR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(280,420)" name="Constant"/>
- <comp lib="0" loc="(280,390)" name="Constant"/>
- <comp lib="0" loc="(570,1690)" name="Pin">
+ <comp lib="0" loc="(760,1580)" name="Pin">
<a name="facing" val="north"/>
<a name="output" val="true"/>
- <a name="width" val="8"/>
- <a name="label" val="IMM VALUE"/>
+ <a name="label" val="POP"/>
<a name="labelloc" val="south"/>
</comp>
- <comp lib="0" loc="(180,1540)" name="Splitter">
- <a name="facing" val="north"/>
- <a name="appear" val="center"/>
- </comp>
- <comp lib="0" loc="(280,300)" name="Constant"/>
- <comp lib="1" loc="(330,1280)" name="AND Gate">
- <a name="inputs" val="8"/>
- <a name="label" val="SP"/>
- <a name="negate6" val="true"/>
- </comp>
- <comp lib="1" loc="(330,200)" name="AND Gate">
- <a name="inputs" val="8"/>
- <a name="label" val="SCO"/>
- <a name="negate0" val="true"/>
- <a name="negate1" val="true"/>
- <a name="negate2" val="true"/>
- <a name="negate3" val="true"/>
+ <comp lib="0" loc="(600,60)" name="Constant">
+ <a name="facing" val="south"/>
+ <a name="value" val="0x0"/>
</comp>
- <comp lib="1" loc="(600,690)" name="OR Gate">
+ <comp lib="1" loc="(520,1230)" name="OR Gate">
<a name="facing" val="south"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="2" loc="(910,1560)" name="Multiplexer">
+ <comp lib="2" loc="(930,870)" name="Multiplexer">
<a name="facing" val="south"/>
- <a name="selloc" val="tr"/>
<a name="width" val="2"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="0" loc="(280,1390)" name="Constant"/>
- <comp lib="0" loc="(280,1200)" name="Constant"/>
- <comp lib="0" loc="(280,500)" name="Constant"/>
+ <comp lib="2" loc="(160,50)" name="Multiplexer">
+ <a name="width" val="8"/>
+ <a name="enable" val="false"/>
+ </comp>
<comp lib="0" loc="(230,1580)" name="Splitter">
<a name="facing" val="north"/>
<a name="incoming" val="4"/>
@@ -2612,197 +2634,233 @@
<a name="bit2" val="1"/>
<a name="bit3" val="1"/>
</comp>
- <comp lib="0" loc="(280,310)" name="Constant"/>
- <comp lib="0" loc="(280,330)" name="Constant"/>
- <comp lib="1" loc="(280,100)" name="OR Gate">
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
+ <comp lib="0" loc="(80,50)" name="Pin">
+ <a name="width" val="8"/>
+ <a name="tristate" val="false"/>
+ <a name="label" val="DATA"/>
+ <a name="labelloc" val="north"/>
</comp>
- <comp lib="0" loc="(880,1610)" name="Pin">
- <a name="facing" val="north"/>
- <a name="output" val="true"/>
- <a name="width" val="2"/>
- <a name="label" val="B (R)"/>
- <a name="labelloc" val="south"/>
+ <comp lib="1" loc="(330,560)" name="AND Gate">
+ <a name="inputs" val="8"/>
+ <a name="label" val="LLI"/>
+ <a name="negate6" val="true"/>
+ <a name="negate7" val="true"/>
</comp>
- <comp lib="1" loc="(600,1050)" name="OR Gate">
+ <comp lib="1" loc="(760,960)" name="OR Gate">
<a name="facing" val="south"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="2" loc="(890,960)" name="Multiplexer">
- <a name="facing" val="south"/>
- <a name="width" val="2"/>
- <a name="enable" val="false"/>
- </comp>
- <comp lib="0" loc="(280,130)" name="Constant"/>
+ <comp lib="0" loc="(280,1110)" name="Constant"/>
<comp lib="0" loc="(280,1290)" name="Constant"/>
- <comp lib="2" loc="(850,870)" name="Multiplexer">
+ <comp lib="0" loc="(480,60)" name="Constant">
<a name="facing" val="south"/>
- <a name="width" val="2"/>
- <a name="enable" val="false"/>
+ <a name="value" val="0x0"/>
</comp>
- <comp lib="0" loc="(920,1610)" name="Pin">
- <a name="facing" val="north"/>
- <a name="output" val="true"/>
+ <comp lib="0" loc="(280,540)" name="Constant"/>
+ <comp lib="0" loc="(860,820)" name="Constant">
+ <a name="facing" val="south"/>
<a name="width" val="2"/>
- <a name="label" val="C (W)"/>
- <a name="labelloc" val="south"/>
</comp>
- <comp lib="0" loc="(280,540)" name="Constant"/>
- <comp lib="0" loc="(900,550)" name="Constant">
+ <comp lib="2" loc="(930,1050)" name="Multiplexer">
<a name="facing" val="south"/>
<a name="width" val="2"/>
- <a name="value" val="0x0"/>
+ <a name="enable" val="false"/>
</comp>
- <comp lib="6" loc="(233,1834)" name="Text">
- <a name="text" val="This input defines the range of MMIO -->"/>
+ <comp lib="4" loc="(870,1690)" name="Register">
+ <a name="width" val="1"/>
+ <a name="trigger" val="falling"/>
</comp>
- <comp lib="0" loc="(940,640)" name="Constant">
+ <comp lib="0" loc="(220,1460)" name="Splitter">
+ <a name="facing" val="north"/>
+ <a name="appear" val="center"/>
+ </comp>
+ <comp lib="2" loc="(890,600)" name="Multiplexer">
<a name="facing" val="south"/>
<a name="width" val="2"/>
+ <a name="enable" val="false"/>
</comp>
- <comp lib="0" loc="(360,60)" name="Constant">
+ <comp lib="0" loc="(280,630)" name="Constant"/>
+ <comp lib="0" loc="(280,420)" name="Constant"/>
+ <comp lib="3" loc="(200,1680)" name="Adder"/>
+ <comp lib="0" loc="(900,820)" name="Constant">
<a name="facing" val="south"/>
+ <a name="width" val="2"/>
<a name="value" val="0x0"/>
</comp>
- <comp lib="1" loc="(790,1690)" name="AND Gate">
+ <comp lib="1" loc="(440,1870)" name="AND Gate">
+ <a name="facing" val="south"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
- <a name="negate1" val="true"/>
</comp>
- <comp lib="0" loc="(680,60)" name="Constant">
+ <comp lib="0" loc="(860,910)" name="Constant">
<a name="facing" val="south"/>
+ <a name="width" val="2"/>
<a name="value" val="0x0"/>
</comp>
- <comp lib="4" loc="(1240,1480)" name="Register">
- <a name="width" val="4"/>
- <a name="trigger" val="falling"/>
- </comp>
- <comp lib="2" loc="(230,1670)" name="Multiplexer">
- <a name="width" val="8"/>
- <a name="enable" val="false"/>
+ <comp lib="0" loc="(280,1200)" name="Constant"/>
+ <comp lib="0" loc="(180,1580)" name="Splitter">
+ <a name="facing" val="north"/>
+ <a name="incoming" val="4"/>
+ <a name="appear" val="right"/>
+ <a name="bit1" val="0"/>
+ <a name="bit2" val="1"/>
+ <a name="bit3" val="1"/>
</comp>
- <comp lib="1" loc="(480,150)" name="OR Gate">
+ <comp lib="1" loc="(600,1050)" name="OR Gate">
<a name="facing" val="south"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="2" loc="(890,1050)" name="Multiplexer">
+ <comp lib="0" loc="(940,1000)" name="Constant">
<a name="facing" val="south"/>
<a name="width" val="2"/>
- <a name="enable" val="false"/>
+ <a name="value" val="0x3"/>
</comp>
- <comp lib="0" loc="(280,90)" name="Constant"/>
- <comp lib="0" loc="(220,1610)" name="Constant">
+ <comp lib="0" loc="(250,1600)" name="Splitter">
+ <a name="facing" val="north"/>
+ <a name="incoming" val="8"/>
+ <a name="bit1" val="0"/>
+ <a name="bit2" val="0"/>
+ <a name="bit3" val="0"/>
+ <a name="bit4" val="1"/>
+ <a name="bit5" val="1"/>
+ <a name="bit6" val="1"/>
+ <a name="bit7" val="1"/>
+ </comp>
+ <comp lib="0" loc="(940,550)" name="Constant">
<a name="facing" val="south"/>
- <a name="width" val="4"/>
- <a name="value" val="0x0"/>
+ <a name="width" val="2"/>
</comp>
- <comp lib="1" loc="(640,690)" name="OR Gate">
+ <comp lib="1" loc="(1150,1560)" name="AND Gate">
+ <a name="size" val="30"/>
+ <a name="inputs" val="4"/>
+ <a name="negate0" val="true"/>
+ <a name="negate1" val="true"/>
+ </comp>
+ <comp lib="1" loc="(640,1140)" name="OR Gate">
<a name="facing" val="south"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="1" loc="(840,1610)" name="OR Gate">
+ <comp lib="0" loc="(890,60)" name="Constant">
<a name="facing" val="south"/>
<a name="width" val="2"/>
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
+ <a name="value" val="0x0"/>
</comp>
- <comp lib="1" loc="(400,420)" name="OR Gate">
+ <comp lib="1" loc="(480,150)" name="OR Gate">
<a name="facing" val="south"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="1" loc="(680,1230)" name="OR Gate">
+ <comp lib="0" loc="(1190,1480)" name="Pin">
+ <a name="facing" val="west"/>
+ <a name="output" val="true"/>
+ <a name="width" val="4"/>
+ <a name="label" val="Compare OP"/>
+ <a name="labelloc" val="east"/>
+ </comp>
+ <comp lib="0" loc="(280,390)" name="Constant"/>
+ <comp lib="2" loc="(850,690)" name="Multiplexer">
<a name="facing" val="south"/>
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
+ <a name="width" val="2"/>
+ <a name="enable" val="false"/>
</comp>
- <comp lib="0" loc="(440,1690)" name="Pin">
- <a name="facing" val="north"/>
+ <comp lib="0" loc="(90,1640)" name="Pin">
<a name="width" val="8"/>
<a name="tristate" val="false"/>
- <a name="label" val="PC ADDRESS"/>
+ <a name="label" val="ALU OUTPUT"/>
<a name="labelloc" val="south"/>
</comp>
- <comp lib="4" loc="(110,50)" name="Register">
- <a name="trigger" val="falling"/>
- </comp>
- <comp lib="1" loc="(560,330)" name="OR Gate">
- <a name="facing" val="south"/>
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
- </comp>
- <comp lib="3" loc="(200,1680)" name="Adder"/>
- <comp lib="1" loc="(330,1190)" name="AND Gate">
+ <comp lib="0" loc="(280,230)" name="Constant"/>
+ <comp lib="1" loc="(330,380)" name="AND Gate">
<a name="inputs" val="8"/>
- <a name="label" val="SB"/>
- <a name="negate2" val="true"/>
- <a name="negate6" val="true"/>
+ <a name="label" val="ADD"/>
+ <a name="negate0" val="true"/>
</comp>
- <comp lib="2" loc="(850,600)" name="Multiplexer">
- <a name="facing" val="south"/>
- <a name="width" val="2"/>
- <a name="enable" val="false"/>
+ <comp lib="0" loc="(1110,1190)" name="Pin">
+ <a name="facing" val="west"/>
+ <a name="output" val="true"/>
+ <a name="label" val="Write Enable"/>
+ <a name="labelloc" val="east"/>
</comp>
- <comp lib="0" loc="(760,1580)" name="Pin">
+ <comp lib="0" loc="(660,1880)" name="Pin">
+ <a name="facing" val="north"/>
+ <a name="tristate" val="false"/>
+ <a name="label" val="JMP FLAG"/>
+ <a name="labelloc" val="south"/>
+ </comp>
+ <comp lib="0" loc="(800,1580)" name="Pin">
<a name="facing" val="north"/>
<a name="output" val="true"/>
- <a name="label" val="POP"/>
+ <a name="label" val="PUSH"/>
<a name="labelloc" val="south"/>
</comp>
- <comp lib="1" loc="(330,650)" name="AND Gate">
+ <comp lib="1" loc="(330,1370)" name="AND Gate">
<a name="inputs" val="8"/>
- <a name="label" val="LUI"/>
- <a name="negate7" val="true"/>
+ <a name="label" val="CMP"/>
</comp>
- <comp lib="0" loc="(130,60)" name="Constant">
- <a name="width" val="8"/>
- <a name="value" val="0x0"/>
+ <comp lib="0" loc="(280,120)" name="Constant"/>
+ <comp lib="2" loc="(290,1490)" name="Multiplexer">
+ <a name="width" val="2"/>
+ <a name="enable" val="false"/>
</comp>
- <comp lib="0" loc="(280,1380)" name="Constant"/>
- <comp lib="0" loc="(380,1830)" name="Constant">
- <a name="width" val="8"/>
- <a name="value" val="0xf0"/>
+ <comp lib="1" loc="(520,150)" name="OR Gate">
+ <a name="facing" val="south"/>
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(220,1460)" name="Splitter">
+ <comp lib="0" loc="(440,1600)" name="Splitter">
<a name="facing" val="north"/>
+ <a name="fanout" val="3"/>
+ <a name="incoming" val="3"/>
<a name="appear" val="center"/>
</comp>
- <comp lib="0" loc="(900,820)" name="Constant">
- <a name="facing" val="south"/>
- <a name="width" val="2"/>
- <a name="value" val="0x0"/>
- </comp>
- <comp lib="2" loc="(930,690)" name="Multiplexer">
+ <comp lib="1" loc="(440,330)" name="OR Gate">
<a name="facing" val="south"/>
- <a name="width" val="2"/>
- <a name="enable" val="false"/>
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(280,510)" name="Constant"/>
- <comp lib="2" loc="(320,1620)" name="Multiplexer">
- <a name="selloc" val="tr"/>
- <a name="width" val="8"/>
- <a name="enable" val="false"/>
+ <comp lib="0" loc="(180,1540)" name="Splitter">
+ <a name="facing" val="north"/>
+ <a name="appear" val="center"/>
</comp>
- <comp lib="0" loc="(280,240)" name="Constant"/>
- <comp lib="0" loc="(1250,1370)" name="Pin">
+ <comp lib="0" loc="(1110,1370)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="label" val="Compare Enable"/>
<a name="labelloc" val="east"/>
</comp>
- <comp lib="2" loc="(890,600)" name="Multiplexer">
+ <comp lib="0" loc="(280,570)" name="Constant"/>
+ <comp lib="0" loc="(260,1480)" name="Constant">
+ <a name="width" val="2"/>
+ <a name="value" val="0x0"/>
+ </comp>
+ <comp lib="0" loc="(900,550)" name="Constant">
<a name="facing" val="south"/>
<a name="width" val="2"/>
+ <a name="value" val="0x0"/>
+ </comp>
+ <comp lib="2" loc="(290,1530)" name="Multiplexer">
+ <a name="width" val="2"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="0" loc="(860,1000)" name="Constant">
+ <comp lib="2" loc="(910,1560)" name="Multiplexer">
<a name="facing" val="south"/>
+ <a name="selloc" val="tr"/>
<a name="width" val="2"/>
- <a name="value" val="0x0"/>
+ <a name="enable" val="false"/>
+ </comp>
+ <comp lib="0" loc="(280,580)" name="Constant"/>
+ <comp lib="1" loc="(260,1750)" name="AND Gate">
+ <a name="facing" val="west"/>
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
+ </comp>
+ <comp lib="1" loc="(600,960)" name="OR Gate">
+ <a name="facing" val="south"/>
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
</comp>
<comp lib="1" loc="(330,740)" name="AND Gate">
<a name="inputs" val="8"/>
@@ -2813,313 +2871,305 @@
<a name="negate5" val="true"/>
<a name="negate6" val="true"/>
</comp>
- <comp lib="0" loc="(160,50)" name="Splitter">
- <a name="facing" val="south"/>
- <a name="fanout" val="8"/>
- <a name="incoming" val="8"/>
- </comp>
- <comp lib="0" loc="(720,60)" name="Constant">
+ <comp lib="0" loc="(280,360)" name="Constant"/>
+ <comp lib="0" loc="(760,60)" name="Constant">
<a name="facing" val="south"/>
<a name="value" val="0x0"/>
</comp>
- <comp lib="1" loc="(520,1320)" name="OR Gate">
+ <comp lib="1" loc="(520,510)" name="OR Gate">
<a name="facing" val="south"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(260,1440)" name="Constant">
- <a name="width" val="2"/>
- <a name="value" val="0x0"/>
- </comp>
- <comp lib="0" loc="(900,1000)" name="Constant">
- <a name="facing" val="south"/>
- <a name="width" val="2"/>
- <a name="value" val="0x0"/>
+ <comp lib="0" loc="(80,80)" name="Pin">
+ <a name="tristate" val="false"/>
+ <a name="label" val="CLK"/>
</comp>
- <comp lib="1" loc="(330,830)" name="AND Gate">
+ <comp lib="1" loc="(330,1190)" name="AND Gate">
<a name="inputs" val="8"/>
- <a name="label" val="PUSH"/>
+ <a name="label" val="SB"/>
<a name="negate2" val="true"/>
- <a name="negate3" val="true"/>
- <a name="negate5" val="true"/>
<a name="negate6" val="true"/>
</comp>
- <comp lib="0" loc="(940,1000)" name="Constant">
+ <comp lib="0" loc="(850,60)" name="Constant">
<a name="facing" val="south"/>
<a name="width" val="2"/>
- <a name="value" val="0x3"/>
- </comp>
- <comp lib="1" loc="(520,1140)" name="OR Gate">
- <a name="facing" val="south"/>
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
+ <a name="value" val="0x0"/>
</comp>
- <comp lib="0" loc="(280,120)" name="Constant"/>
- <comp lib="1" loc="(640,1050)" name="OR Gate">
- <a name="facing" val="south"/>
+ <comp lib="0" loc="(280,660)" name="Constant"/>
+ <comp lib="1" loc="(670,1820)" name="AND Gate">
+ <a name="facing" val="north"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(280,580)" name="Constant"/>
- <comp lib="0" loc="(280,270)" name="Constant"/>
- <comp lib="2" loc="(290,1450)" name="Multiplexer">
- <a name="width" val="2"/>
- <a name="enable" val="false"/>
- </comp>
- <comp lib="0" loc="(860,550)" name="Constant">
+ <comp lib="0" loc="(280,400)" name="Constant"/>
+ <comp lib="0" loc="(280,310)" name="Constant"/>
+ <comp lib="0" loc="(280,1380)" name="Constant"/>
+ <comp lib="0" loc="(860,640)" name="Constant">
<a name="facing" val="south"/>
<a name="width" val="2"/>
<a name="value" val="0x0"/>
</comp>
- <comp lib="0" loc="(280,1210)" name="Constant"/>
- <comp lib="1" loc="(1200,1560)" name="AND Gate">
- <a name="size" val="30"/>
- <a name="inputs" val="4"/>
- <a name="negate0" val="true"/>
- <a name="negate1" val="true"/>
- </comp>
- <comp lib="0" loc="(280,480)" name="Constant"/>
- <comp lib="0" loc="(280,490)" name="Constant"/>
- <comp lib="0" loc="(280,280)" name="Constant"/>
- <comp lib="1" loc="(640,600)" name="OR Gate">
+ <comp lib="0" loc="(280,270)" name="Constant"/>
+ <comp lib="1" loc="(820,1860)" name="AND Gate">
<a name="facing" val="south"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
+ <a name="negate0" val="true"/>
</comp>
- <comp lib="0" loc="(760,60)" name="Constant">
- <a name="facing" val="south"/>
- <a name="value" val="0x0"/>
+ <comp lib="1" loc="(330,650)" name="AND Gate">
+ <a name="inputs" val="8"/>
+ <a name="label" val="LUI"/>
+ <a name="negate7" val="true"/>
</comp>
- <comp lib="0" loc="(80,50)" name="Pin">
- <a name="width" val="8"/>
- <a name="tristate" val="false"/>
- <a name="label" val="DATA"/>
- <a name="labelloc" val="north"/>
+ <comp lib="3" loc="(420,1820)" name="Comparator">
+ <a name="mode" val="unsigned"/>
</comp>
- <comp lib="0" loc="(640,60)" name="Constant">
+ <comp lib="0" loc="(930,60)" name="Constant">
<a name="facing" val="south"/>
+ <a name="width" val="2"/>
<a name="value" val="0x0"/>
</comp>
- <comp lib="0" loc="(280,1350)" name="Constant"/>
- <comp lib="0" loc="(330,1680)" name="Pin">
+ <comp lib="0" loc="(530,1880)" name="Pin">
<a name="facing" val="north"/>
<a name="output" val="true"/>
- <a name="width" val="8"/>
- <a name="label" val="MEM POINTER"/>
+ <a name="label" val="Address MUX"/>
<a name="labelloc" val="south"/>
</comp>
- <comp lib="1" loc="(330,470)" name="AND Gate">
+ <comp lib="4" loc="(260,1670)" name="Register"/>
+ <comp lib="0" loc="(280,330)" name="Constant"/>
+ <comp lib="2" loc="(890,690)" name="Multiplexer">
+ <a name="facing" val="south"/>
+ <a name="width" val="2"/>
+ <a name="enable" val="false"/>
+ </comp>
+ <comp lib="1" loc="(640,600)" name="OR Gate">
+ <a name="facing" val="south"/>
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
+ </comp>
+ <comp lib="1" loc="(330,830)" name="AND Gate">
<a name="inputs" val="8"/>
- <a name="label" val="CIN"/>
- <a name="negate0" val="true"/>
+ <a name="label" val="PUSH"/>
<a name="negate2" val="true"/>
<a name="negate3" val="true"/>
+ <a name="negate5" val="true"/>
+ <a name="negate6" val="true"/>
</comp>
- <comp lib="0" loc="(80,80)" name="Pin">
- <a name="tristate" val="false"/>
- <a name="label" val="CLK"/>
+ <comp lib="0" loc="(280,90)" name="Constant"/>
+ <comp lib="0" loc="(400,60)" name="Constant">
+ <a name="facing" val="south"/>
+ <a name="value" val="0x0"/>
</comp>
- <comp lib="0" loc="(530,1830)" name="Pin">
+ <comp lib="0" loc="(620,1610)" name="Pin">
<a name="facing" val="north"/>
<a name="output" val="true"/>
- <a name="label" val="Address MUX"/>
+ <a name="width" val="2"/>
+ <a name="label" val="GPR MUX"/>
<a name="labelloc" val="south"/>
</comp>
- <comp lib="0" loc="(860,820)" name="Constant">
+ <comp lib="1" loc="(440,420)" name="OR Gate">
<a name="facing" val="south"/>
- <a name="width" val="2"/>
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
</comp>
- <comp lib="1" loc="(600,960)" name="OR Gate">
+ <comp lib="0" loc="(280,280)" name="Constant"/>
+ <comp lib="0" loc="(280,1390)" name="Constant"/>
+ <comp lib="1" loc="(520,1410)" name="OR Gate">
<a name="facing" val="south"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(940,910)" name="Constant">
- <a name="facing" val="south"/>
- <a name="width" val="2"/>
+ <comp lib="0" loc="(130,60)" name="Constant">
+ <a name="width" val="8"/>
+ <a name="value" val="0x0"/>
</comp>
- <comp lib="1" loc="(480,420)" name="OR Gate">
+ <comp lib="1" loc="(520,1320)" name="OR Gate">
<a name="facing" val="south"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="1" loc="(560,510)" name="OR Gate">
+ <comp lib="0" loc="(160,1670)" name="Constant">
+ <a name="width" val="8"/>
+ </comp>
+ <comp lib="1" loc="(560,330)" name="OR Gate">
<a name="facing" val="south"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="1" loc="(1090,1510)" name="AND Gate">
- <a name="facing" val="west"/>
- <a name="label" val="ptrinc"/>
+ <comp lib="1" loc="(330,1100)" name="AND Gate">
+ <a name="inputs" val="8"/>
+ <a name="label" val="LB"/>
+ <a name="negate3" val="true"/>
+ <a name="negate6" val="true"/>
</comp>
- <comp lib="2" loc="(930,870)" name="Multiplexer">
- <a name="facing" val="south"/>
- <a name="width" val="2"/>
- <a name="enable" val="false"/>
+ <comp lib="0" loc="(830,1890)" name="Pin">
+ <a name="facing" val="west"/>
+ <a name="output" val="true"/>
+ <a name="label" val="External Address Select"/>
+ <a name="labelloc" val="east"/>
</comp>
- <comp lib="1" loc="(640,1140)" name="OR Gate">
+ <comp lib="1" loc="(680,1140)" name="OR Gate">
<a name="facing" val="south"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="1" loc="(560,150)" name="OR Gate">
+ <comp lib="1" loc="(330,1010)" name="AND Gate">
+ <a name="inputs" val="8"/>
+ <a name="label" val="PCR"/>
+ <a name="negate2" val="true"/>
+ <a name="negate3" val="true"/>
+ <a name="negate6" val="true"/>
+ </comp>
+ <comp lib="2" loc="(230,1670)" name="Multiplexer">
+ <a name="width" val="8"/>
+ <a name="enable" val="false"/>
+ </comp>
+ <comp lib="0" loc="(840,1610)" name="Pin">
+ <a name="facing" val="north"/>
+ <a name="output" val="true"/>
+ <a name="width" val="2"/>
+ <a name="label" val="A (R)"/>
+ <a name="labelloc" val="south"/>
+ </comp>
+ <comp lib="0" loc="(280,1210)" name="Constant"/>
+ <comp lib="0" loc="(280,240)" name="Constant"/>
+ <comp lib="1" loc="(480,510)" name="OR Gate">
<a name="facing" val="south"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(280,640)" name="Constant"/>
+ <comp lib="1" loc="(330,200)" name="AND Gate">
+ <a name="inputs" val="8"/>
+ <a name="label" val="SCO"/>
+ <a name="negate0" val="true"/>
+ <a name="negate1" val="true"/>
+ <a name="negate2" val="true"/>
+ <a name="negate3" val="true"/>
+ </comp>
<comp lib="1" loc="(480,330)" name="OR Gate">
<a name="facing" val="south"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="1" loc="(520,1230)" name="OR Gate">
+ <comp lib="0" loc="(680,60)" name="Constant">
<a name="facing" val="south"/>
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
+ <a name="value" val="0x0"/>
</comp>
- <comp lib="1" loc="(440,1870)" name="AND Gate">
+ <comp lib="1" loc="(520,420)" name="OR Gate">
<a name="facing" val="south"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(90,1640)" name="Pin">
- <a name="width" val="8"/>
- <a name="tristate" val="false"/>
- <a name="label" val="ALU OUTPUT"/>
- <a name="labelloc" val="south"/>
- </comp>
- <comp lib="0" loc="(260,1480)" name="Constant">
- <a name="width" val="2"/>
+ <comp lib="0" loc="(640,60)" name="Constant">
+ <a name="facing" val="south"/>
<a name="value" val="0x0"/>
</comp>
- <comp lib="1" loc="(920,1610)" name="OR Gate">
+ <comp lib="0" loc="(940,820)" name="Constant">
<a name="facing" val="south"/>
<a name="width" val="2"/>
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
+ <a name="value" val="0x0"/>
</comp>
- <comp lib="0" loc="(860,910)" name="Constant">
+ <comp lib="0" loc="(860,550)" name="Constant">
<a name="facing" val="south"/>
<a name="width" val="2"/>
<a name="value" val="0x0"/>
</comp>
- <comp lib="1" loc="(600,600)" name="OR Gate">
- <a name="facing" val="south"/>
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
- </comp>
- <comp lib="0" loc="(280,630)" name="Constant"/>
- <comp lib="1" loc="(360,330)" name="OR Gate">
- <a name="facing" val="south"/>
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
- </comp>
- <comp lib="0" loc="(280,1110)" name="Constant"/>
- <comp lib="0" loc="(240,1630)" name="Splitter">
+ <comp lib="0" loc="(570,1690)" name="Pin">
<a name="facing" val="north"/>
- <a name="incoming" val="8"/>
- <a name="bit1" val="0"/>
- <a name="bit2" val="0"/>
- <a name="bit3" val="0"/>
- <a name="bit4" val="1"/>
- <a name="bit5" val="1"/>
- <a name="bit6" val="1"/>
- <a name="bit7" val="1"/>
+ <a name="output" val="true"/>
+ <a name="width" val="8"/>
+ <a name="label" val="IMM VALUE"/>
+ <a name="labelloc" val="south"/>
</comp>
- <comp lib="0" loc="(250,1600)" name="Splitter">
+ <comp lib="0" loc="(280,210)" name="Constant"/>
+ <comp lib="0" loc="(280,410)" name="Constant"/>
+ <comp lib="0" loc="(440,1690)" name="Pin">
<a name="facing" val="north"/>
- <a name="incoming" val="8"/>
- <a name="bit1" val="0"/>
- <a name="bit2" val="0"/>
- <a name="bit3" val="0"/>
- <a name="bit4" val="1"/>
- <a name="bit5" val="1"/>
- <a name="bit6" val="1"/>
- <a name="bit7" val="1"/>
+ <a name="width" val="8"/>
+ <a name="tristate" val="false"/>
+ <a name="label" val="PC ADDRESS"/>
+ <a name="labelloc" val="south"/>
</comp>
- <comp lib="0" loc="(280,1300)" name="Constant"/>
- <comp lib="1" loc="(720,780)" name="OR Gate">
+ <comp lib="1" loc="(920,1610)" name="OR Gate">
<a name="facing" val="south"/>
+ <a name="width" val="2"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="2" loc="(850,1050)" name="Multiplexer">
- <a name="facing" val="south"/>
- <a name="width" val="2"/>
- <a name="enable" val="false"/>
+ <comp lib="4" loc="(1190,1480)" name="Register">
+ <a name="width" val="4"/>
+ <a name="trigger" val="falling"/>
</comp>
- <comp lib="0" loc="(280,550)" name="Constant"/>
- <comp lib="1" loc="(440,330)" name="OR Gate">
+ <comp lib="1" loc="(440,1140)" name="OR Gate">
<a name="facing" val="south"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="1" loc="(1040,1590)" name="OR Gate">
+ <comp lib="0" loc="(280,130)" name="Constant"/>
+ <comp lib="0" loc="(280,510)" name="Constant"/>
+ <comp lib="0" loc="(280,1350)" name="Constant"/>
+ <comp lib="1" loc="(640,1050)" name="OR Gate">
<a name="facing" val="south"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(280,660)" name="Constant"/>
- <comp lib="0" loc="(600,60)" name="Constant">
+ <comp lib="1" loc="(600,600)" name="OR Gate">
<a name="facing" val="south"/>
- <a name="value" val="0x0"/>
- </comp>
- <comp lib="1" loc="(280,370)" name="OR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(280,360)" name="Constant"/>
- <comp lib="0" loc="(280,1360)" name="Constant"/>
- <comp lib="2" loc="(290,1530)" name="Multiplexer">
+ <comp lib="1" loc="(330,920)" name="AND Gate">
+ <a name="inputs" val="8"/>
+ <a name="label" val="POP"/>
+ <a name="negate2" val="true"/>
+ <a name="negate3" val="true"/>
+ <a name="negate4" val="true"/>
+ <a name="negate6" val="true"/>
+ </comp>
+ <comp lib="0" loc="(920,1610)" name="Pin">
+ <a name="facing" val="north"/>
+ <a name="output" val="true"/>
+ <a name="width" val="2"/>
+ <a name="label" val="C (W)"/>
+ <a name="labelloc" val="south"/>
+ </comp>
+ <comp lib="2" loc="(850,600)" name="Multiplexer">
+ <a name="facing" val="south"/>
<a name="width" val="2"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="4" loc="(1200,1740)" name="Register">
- <a name="width" val="1"/>
- <a name="trigger" val="falling"/>
+ <comp lib="1" loc="(330,470)" name="AND Gate">
+ <a name="inputs" val="8"/>
+ <a name="label" val="CIN"/>
+ <a name="negate0" val="true"/>
+ <a name="negate2" val="true"/>
+ <a name="negate3" val="true"/>
</comp>
- <comp lib="3" loc="(420,1820)" name="Comparator">
- <a name="mode" val="unsigned"/>
+ <comp lib="1" loc="(560,510)" name="OR Gate">
+ <a name="facing" val="south"/>
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(440,60)" name="Constant">
+ <comp lib="0" loc="(220,1610)" name="Constant">
<a name="facing" val="south"/>
+ <a name="width" val="4"/>
<a name="value" val="0x0"/>
- </comp>
- <comp lib="0" loc="(800,1580)" name="Pin">
- <a name="facing" val="north"/>
- <a name="output" val="true"/>
- <a name="label" val="PUSH"/>
- <a name="labelloc" val="south"/>
- </comp>
- <comp lib="0" loc="(440,1610)" name="Pin">
- <a name="facing" val="north"/>
- <a name="output" val="true"/>
- <a name="width" val="3"/>
- <a name="label" val="ALU OP"/>
- <a name="labelloc" val="south"/>
- </comp>
- <comp lib="0" loc="(280,400)" name="Constant"/>
- <comp lib="1" loc="(440,1140)" name="OR Gate">
+ </comp>
+ <comp lib="1" loc="(600,690)" name="OR Gate">
<a name="facing" val="south"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(850,60)" name="Constant">
+ <comp lib="0" loc="(280,150)" name="Constant"/>
+ <comp lib="0" loc="(900,910)" name="Constant">
<a name="facing" val="south"/>
<a name="width" val="2"/>
<a name="value" val="0x0"/>
</comp>
- <comp lib="0" loc="(260,1520)" name="Constant">
- <a name="width" val="2"/>
- <a name="value" val="0x0"/>
- </comp>
- <comp lib="0" loc="(940,550)" name="Constant">
+ <comp lib="2" loc="(930,600)" name="Multiplexer">
<a name="facing" val="south"/>
<a name="width" val="2"/>
- </comp>
- <comp lib="2" loc="(290,1490)" name="Multiplexer">
- <a name="width" val="2"/>
<a name="enable" val="false"/>
</comp>
<comp lib="1" loc="(520,330)" name="OR Gate">
@@ -3127,58 +3177,45 @@
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="1" loc="(330,1100)" name="AND Gate">
- <a name="inputs" val="8"/>
- <a name="label" val="LB"/>
- <a name="negate3" val="true"/>
- <a name="negate6" val="true"/>
+ <comp lib="0" loc="(380,1830)" name="Constant">
+ <a name="width" val="8"/>
+ <a name="value" val="0xf0"/>
</comp>
- <comp lib="0" loc="(280,1120)" name="Constant"/>
- <comp lib="0" loc="(200,1500)" name="Splitter">
- <a name="facing" val="north"/>
- <a name="appear" val="center"/>
+ <comp lib="2" loc="(520,1670)" name="Multiplexer">
+ <a name="selloc" val="tr"/>
+ <a name="width" val="8"/>
+ <a name="enable" val="false"/>
</comp>
- <comp lib="0" loc="(280,140)" name="Constant"/>
- <comp lib="0" loc="(840,1610)" name="Pin">
- <a name="facing" val="north"/>
- <a name="output" val="true"/>
+ <comp lib="0" loc="(900,1000)" name="Constant">
+ <a name="facing" val="south"/>
<a name="width" val="2"/>
- <a name="label" val="A (R)"/>
- <a name="labelloc" val="south"/>
+ <a name="value" val="0x0"/>
</comp>
- <comp lib="0" loc="(280,570)" name="Constant"/>
- <comp lib="2" loc="(890,870)" name="Multiplexer">
+ <comp lib="2" loc="(930,690)" name="Multiplexer">
<a name="facing" val="south"/>
<a name="width" val="2"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="1" loc="(440,420)" name="OR Gate">
- <a name="facing" val="south"/>
+ <comp lib="1" loc="(300,1740)" name="OR Gate">
+ <a name="facing" val="west"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="4" loc="(710,1700)" name="Register">
- <a name="width" val="1"/>
- <a name="trigger" val="falling"/>
- </comp>
- <comp lib="2" loc="(850,960)" name="Multiplexer">
- <a name="facing" val="south"/>
+ <comp lib="0" loc="(880,1610)" name="Pin">
+ <a name="facing" val="north"/>
+ <a name="output" val="true"/>
<a name="width" val="2"/>
- <a name="enable" val="false"/>
+ <a name="label" val="B (R)"/>
+ <a name="labelloc" val="south"/>
</comp>
- <comp lib="0" loc="(280,230)" name="Constant"/>
- <comp lib="0" loc="(800,60)" name="Constant">
- <a name="facing" val="south"/>
- <a name="value" val="0x0"/>
+ <comp lib="0" loc="(200,1500)" name="Splitter">
+ <a name="facing" val="north"/>
+ <a name="appear" val="center"/>
</comp>
- <comp lib="0" loc="(240,1580)" name="Constant">
+ <comp lib="0" loc="(280,550)" name="Constant"/>
+ <comp lib="0" loc="(280,490)" name="Constant"/>
+ <comp lib="1" loc="(520,1140)" name="OR Gate">
<a name="facing" val="south"/>
- <a name="width" val="4"/>
- <a name="value" val="0x0"/>
- </comp>
- <comp lib="4" loc="(260,1670)" name="Register"/>
- <comp lib="1" loc="(260,1750)" name="AND Gate">
- <a name="facing" val="west"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
@@ -3187,58 +3224,38 @@
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="2" loc="(520,1670)" name="Multiplexer">
- <a name="selloc" val="tr"/>
- <a name="width" val="8"/>
- <a name="enable" val="false"/>
- </comp>
- <comp lib="0" loc="(1200,1480)" name="Splitter">
- <a name="facing" val="west"/>
- <a name="fanout" val="4"/>
- <a name="incoming" val="4"/>
- </comp>
- <comp lib="1" loc="(360,510)" name="OR Gate">
- <a name="facing" val="south"/>
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
- </comp>
- <comp lib="1" loc="(1170,1740)" name="OR Gate">
+ <comp lib="1" loc="(840,1690)" name="OR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="2" loc="(890,690)" name="Multiplexer">
+ <comp lib="0" loc="(940,910)" name="Constant">
<a name="facing" val="south"/>
<a name="width" val="2"/>
- <a name="enable" val="false"/>
</comp>
- <comp lib="0" loc="(860,640)" name="Constant">
+ <comp lib="0" loc="(560,60)" name="Constant">
<a name="facing" val="south"/>
- <a name="width" val="2"/>
<a name="value" val="0x0"/>
</comp>
- <comp lib="0" loc="(620,1400)" name="Splitter">
- <a name="facing" val="north"/>
- <a name="appear" val="center"/>
- </comp>
- <comp lib="1" loc="(330,920)" name="AND Gate">
- <a name="inputs" val="8"/>
- <a name="label" val="POP"/>
- <a name="negate2" val="true"/>
- <a name="negate3" val="true"/>
- <a name="negate4" val="true"/>
- <a name="negate6" val="true"/>
+ <comp lib="4" loc="(110,50)" name="Register">
+ <a name="trigger" val="falling"/>
</comp>
- <comp lib="2" loc="(930,960)" name="Multiplexer">
+ <comp lib="2" loc="(890,870)" name="Multiplexer">
<a name="facing" val="south"/>
<a name="width" val="2"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="1" loc="(480,510)" name="OR Gate">
+ <comp lib="0" loc="(260,1440)" name="Constant">
+ <a name="width" val="2"/>
+ <a name="value" val="0x0"/>
+ </comp>
+ <comp lib="0" loc="(280,320)" name="Constant"/>
+ <comp lib="1" loc="(360,330)" name="OR Gate">
<a name="facing" val="south"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(400,60)" name="Constant">
+ <comp lib="0" loc="(280,140)" name="Constant"/>
+ <comp lib="0" loc="(800,60)" name="Constant">
<a name="facing" val="south"/>
<a name="value" val="0x0"/>
</comp>
@@ -3753,201 +3770,201 @@
<wire from="(750,260)" to="(760,260)"/>
<wire from="(760,270)" to="(770,270)"/>
<wire from="(1250,270)" to="(1270,270)"/>
- <comp lib="4" loc="(3440,270)" name="Register"/>
- <comp lib="2" loc="(1630,260)" name="Multiplexer">
+ <comp lib="4" loc="(1790,270)" name="Register"/>
+ <comp lib="4" loc="(2230,270)" name="Register"/>
+ <comp lib="1" loc="(150,300)" name="AND Gate">
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
+ </comp>
+ <comp lib="4" loc="(3660,270)" name="Register"/>
+ <comp lib="2" loc="(1410,260)" name="Multiplexer">
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="2" loc="(1960,260)" name="Multiplexer">
+ <comp lib="4" loc="(800,270)" name="Register"/>
+ <comp lib="2" loc="(2840,260)" name="Multiplexer">
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="4" loc="(3660,270)" name="Register"/>
- <comp lib="4" loc="(2560,270)" name="Register"/>
- <comp lib="2" loc="(2950,260)" name="Multiplexer">
+ <comp lib="4" loc="(1460,270)" name="Register"/>
+ <comp lib="4" loc="(360,270)" name="Register"/>
+ <comp lib="0" loc="(150,220)" name="Pin">
+ <a name="output" val="true"/>
+ <a name="width" val="8"/>
+ <a name="tristate" val="false"/>
+ <a name="labelloc" val="east"/>
+ </comp>
+ <comp lib="0" loc="(180,320)" name="Pin">
+ <a name="tristate" val="false"/>
+ </comp>
+ <comp lib="2" loc="(2510,260)" name="Multiplexer">
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="2" loc="(200,260)" name="Multiplexer">
+ <comp lib="4" loc="(3000,270)" name="Register"/>
+ <comp lib="2" loc="(1190,260)" name="Multiplexer">
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
+ <comp lib="4" loc="(3110,270)" name="Register"/>
<comp lib="4" loc="(1570,270)" name="Register"/>
- <comp lib="4" loc="(2230,270)" name="Register"/>
- <comp lib="2" loc="(2290,260)" name="Multiplexer">
+ <comp lib="4" loc="(2010,270)" name="Register"/>
+ <comp lib="4" loc="(3220,270)" name="Register"/>
+ <comp lib="4" loc="(2670,270)" name="Register"/>
+ <comp lib="2" loc="(2400,260)" name="Multiplexer">
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
<comp lib="4" loc="(690,270)" name="Register"/>
- <comp lib="4" loc="(3550,270)" name="Register"/>
<comp lib="2" loc="(1300,260)" name="Multiplexer">
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="2" loc="(2510,260)" name="Multiplexer">
+ <comp lib="4" loc="(2450,270)" name="Register"/>
+ <comp lib="4" loc="(910,270)" name="Register"/>
+ <comp lib="4" loc="(2120,270)" name="Register"/>
+ <comp lib="4" loc="(1680,270)" name="Register"/>
+ <comp lib="2" loc="(1630,260)" name="Multiplexer">
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="2" loc="(3060,260)" name="Multiplexer">
+ <comp lib="2" loc="(200,260)" name="Multiplexer">
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="4" loc="(1130,270)" name="Register"/>
- <comp lib="4" loc="(360,270)" name="Register"/>
- <comp lib="0" loc="(150,270)" name="Pin">
- <a name="width" val="8"/>
- <a name="tristate" val="false"/>
- </comp>
- <comp lib="2" loc="(750,260)" name="Multiplexer">
+ <comp lib="2" loc="(2070,260)" name="Multiplexer">
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="2" loc="(970,260)" name="Multiplexer">
+ <comp lib="2" loc="(310,260)" name="Multiplexer">
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="0" loc="(3670,220)" name="Constant">
- <a name="facing" val="west"/>
+ <comp lib="4" loc="(1350,270)" name="Register"/>
+ <comp lib="2" loc="(1740,260)" name="Multiplexer">
<a name="width" val="8"/>
- <a name="value" val="0x0"/>
+ <a name="enable" val="false"/>
</comp>
- <comp lib="4" loc="(2890,270)" name="Register"/>
- <comp lib="2" loc="(3500,260)" name="Multiplexer">
+ <comp lib="2" loc="(1080,260)" name="Multiplexer">
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="2" loc="(1740,260)" name="Multiplexer">
+ <comp lib="4" loc="(2340,270)" name="Register"/>
+ <comp lib="2" loc="(3610,260)" name="Multiplexer">
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="4" loc="(1460,270)" name="Register"/>
- <comp lib="2" loc="(1520,260)" name="Multiplexer">
+ <comp lib="4" loc="(1020,270)" name="Register"/>
+ <comp lib="2" loc="(2950,260)" name="Multiplexer">
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
+ <comp lib="4" loc="(580,270)" name="Register"/>
<comp lib="2" loc="(860,260)" name="Multiplexer">
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="2" loc="(640,260)" name="Multiplexer">
+ <comp lib="4" loc="(1240,270)" name="Register"/>
+ <comp lib="4" loc="(250,270)" name="Register"/>
+ <comp lib="2" loc="(970,260)" name="Multiplexer">
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="2" loc="(3390,260)" name="Multiplexer">
+ <comp lib="2" loc="(3500,260)" name="Multiplexer">
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="4" loc="(1900,270)" name="Register"/>
- <comp lib="2" loc="(530,260)" name="Multiplexer">
+ <comp lib="4" loc="(1130,270)" name="Register"/>
+ <comp lib="2" loc="(1850,260)" name="Multiplexer">
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="4" loc="(1790,270)" name="Register"/>
- <comp lib="2" loc="(2400,260)" name="Multiplexer">
+ <comp lib="2" loc="(2730,260)" name="Multiplexer">
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="4" loc="(3220,270)" name="Register"/>
- <comp lib="4" loc="(250,270)" name="Register"/>
- <comp lib="4" loc="(3000,270)" name="Register"/>
- <comp lib="4" loc="(1020,270)" name="Register"/>
- <comp lib="2" loc="(1190,260)" name="Multiplexer">
+ <comp lib="4" loc="(3440,270)" name="Register"/>
+ <comp lib="2" loc="(3280,260)" name="Multiplexer">
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="2" loc="(3280,260)" name="Multiplexer">
+ <comp lib="2" loc="(530,260)" name="Multiplexer">
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="4" loc="(470,270)" name="Register"/>
- <comp lib="1" loc="(150,300)" name="AND Gate">
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
- </comp>
- <comp lib="4" loc="(2780,270)" name="Register"/>
- <comp lib="2" loc="(2730,260)" name="Multiplexer">
+ <comp lib="2" loc="(2620,260)" name="Multiplexer">
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="4" loc="(2340,270)" name="Register"/>
- <comp lib="0" loc="(150,220)" name="Pin">
- <a name="output" val="true"/>
- <a name="width" val="8"/>
+ <comp lib="0" loc="(90,360)" name="Pin">
<a name="tristate" val="false"/>
- <a name="labelloc" val="east"/>
</comp>
- <comp lib="2" loc="(1850,260)" name="Multiplexer">
+ <comp lib="2" loc="(420,260)" name="Multiplexer">
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="2" loc="(2070,260)" name="Multiplexer">
+ <comp lib="2" loc="(3390,260)" name="Multiplexer">
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="4" loc="(800,270)" name="Register"/>
- <comp lib="2" loc="(420,260)" name="Multiplexer">
- <a name="width" val="8"/>
- <a name="enable" val="false"/>
+ <comp lib="0" loc="(90,290)" name="Pin">
+ <a name="tristate" val="false"/>
</comp>
- <comp lib="4" loc="(580,270)" name="Register"/>
- <comp lib="4" loc="(2010,270)" name="Register"/>
- <comp lib="4" loc="(2450,270)" name="Register"/>
- <comp lib="2" loc="(1410,260)" name="Multiplexer">
+ <comp lib="2" loc="(640,260)" name="Multiplexer">
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="2" loc="(2840,260)" name="Multiplexer">
+ <comp lib="2" loc="(3170,260)" name="Multiplexer">
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="4" loc="(1350,270)" name="Register"/>
- <comp lib="2" loc="(1080,260)" name="Multiplexer">
+ <comp lib="4" loc="(3330,270)" name="Register"/>
+ <comp lib="4" loc="(2560,270)" name="Register"/>
+ <comp lib="0" loc="(3670,220)" name="Constant">
+ <a name="facing" val="west"/>
<a name="width" val="8"/>
- <a name="enable" val="false"/>
+ <a name="value" val="0x0"/>
</comp>
<comp lib="2" loc="(2180,260)" name="Multiplexer">
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="2" loc="(3170,260)" name="Multiplexer">
+ <comp lib="2" loc="(1960,260)" name="Multiplexer">
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="0" loc="(180,320)" name="Pin">
- <a name="tristate" val="false"/>
- </comp>
- <comp lib="4" loc="(1680,270)" name="Register"/>
- <comp lib="4" loc="(1240,270)" name="Register"/>
- <comp lib="4" loc="(3110,270)" name="Register"/>
- <comp lib="0" loc="(90,360)" name="Pin">
- <a name="tristate" val="false"/>
+ <comp lib="1" loc="(130,340)" name="OR Gate">
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(90,290)" name="Pin">
+ <comp lib="4" loc="(3550,270)" name="Register"/>
+ <comp lib="0" loc="(90,330)" name="Pin">
<a name="tristate" val="false"/>
</comp>
- <comp lib="2" loc="(310,260)" name="Multiplexer">
+ <comp lib="4" loc="(470,270)" name="Register"/>
+ <comp lib="2" loc="(1520,260)" name="Multiplexer">
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="0" loc="(90,330)" name="Pin">
+ <comp lib="0" loc="(150,270)" name="Pin">
+ <a name="width" val="8"/>
<a name="tristate" val="false"/>
</comp>
- <comp lib="1" loc="(130,340)" name="OR Gate">
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
+ <comp lib="2" loc="(3060,260)" name="Multiplexer">
+ <a name="width" val="8"/>
+ <a name="enable" val="false"/>
</comp>
- <comp lib="2" loc="(2620,260)" name="Multiplexer">
+ <comp lib="4" loc="(2890,270)" name="Register"/>
+ <comp lib="4" loc="(1900,270)" name="Register"/>
+ <comp lib="4" loc="(2780,270)" name="Register"/>
+ <comp lib="2" loc="(2290,260)" name="Multiplexer">
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="4" loc="(2120,270)" name="Register"/>
- <comp lib="2" loc="(3610,260)" name="Multiplexer">
+ <comp lib="2" loc="(750,260)" name="Multiplexer">
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
- <comp lib="4" loc="(3330,270)" name="Register"/>
- <comp lib="4" loc="(2670,270)" name="Register"/>
- <comp lib="4" loc="(910,270)" name="Register"/>
</circuit>
<circuit name="PC">
<a name="circuit" val="PC"/>
@@ -3987,19 +4004,24 @@
<wire from="(200,330)" to="(200,350)"/>
<wire from="(140,400)" to="(240,400)"/>
<wire from="(230,320)" to="(230,380)"/>
- <comp lib="0" loc="(140,350)" name="Pin">
+ <comp lib="0" loc="(140,320)" name="Pin">
+ <a name="width" val="8"/>
<a name="tristate" val="false"/>
</comp>
- <comp lib="6" loc="(79,355)" name="Text">
- <a name="text" val="Jump Enable"/>
+ <comp lib="4" loc="(260,310)" name="Register">
+ <a name="trigger" val="falling"/>
</comp>
- <comp lib="0" loc="(270,360)" name="Pin">
+ <comp lib="0" loc="(360,360)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="8"/>
<a name="labelloc" val="east"/>
</comp>
- <comp lib="0" loc="(360,360)" name="Pin">
+ <comp lib="0" loc="(290,330)" name="Constant">
+ <a name="width" val="8"/>
+ </comp>
+ <comp lib="3" loc="(330,320)" name="Adder"/>
+ <comp lib="0" loc="(270,360)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="8"/>
@@ -4008,27 +4030,22 @@
<comp lib="0" loc="(140,400)" name="Pin">
<a name="tristate" val="false"/>
</comp>
- <comp lib="0" loc="(140,320)" name="Pin">
- <a name="width" val="8"/>
- <a name="tristate" val="false"/>
- </comp>
- <comp lib="3" loc="(330,320)" name="Adder"/>
- <comp lib="4" loc="(260,310)" name="Register">
- <a name="trigger" val="falling"/>
- </comp>
<comp lib="0" loc="(140,380)" name="Pin">
<a name="tristate" val="false"/>
</comp>
- <comp lib="1" loc="(200,380)" name="NOT Gate"/>
<comp lib="2" loc="(220,310)" name="Multiplexer">
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
+ <comp lib="6" loc="(79,355)" name="Text">
+ <a name="text" val="Jump Enable"/>
+ </comp>
<comp lib="0" loc="(140,430)" name="Pin">
<a name="tristate" val="false"/>
</comp>
- <comp lib="0" loc="(290,330)" name="Constant">
- <a name="width" val="8"/>
+ <comp lib="1" loc="(200,380)" name="NOT Gate"/>
+ <comp lib="0" loc="(140,350)" name="Pin">
+ <a name="tristate" val="false"/>
</comp>
<comp lib="6" loc="(101,297)" name="Text">
<a name="text" val="Jump Address"/>
@@ -4039,170 +4056,248 @@
<a name="clabel" val=""/>
<a name="clabelup" val="east"/>
<a name="clabelfont" val="SansSerif plain 12"/>
- <wire from="(550,350)" to="(550,360)"/>
- <wire from="(550,470)" to="(550,480)"/>
- <wire from="(580,660)" to="(580,670)"/>
- <wire from="(510,350)" to="(510,360)"/>
- <wire from="(510,470)" to="(510,480)"/>
- <wire from="(430,310)" to="(430,330)"/>
- <wire from="(430,430)" to="(430,450)"/>
- <wire from="(420,570)" to="(530,570)"/>
- <wire from="(420,610)" to="(530,610)"/>
- <wire from="(580,700)" to="(580,740)"/>
- <wire from="(340,310)" to="(430,310)"/>
- <wire from="(340,430)" to="(430,430)"/>
- <wire from="(680,150)" to="(680,260)"/>
- <wire from="(540,650)" to="(560,650)"/>
- <wire from="(540,690)" to="(560,690)"/>
- <wire from="(350,210)" to="(380,210)"/>
- <wire from="(350,330)" to="(380,330)"/>
- <wire from="(350,450)" to="(380,450)"/>
- <wire from="(340,920)" to="(370,920)"/>
- <wire from="(350,690)" to="(380,690)"/>
- <wire from="(430,510)" to="(580,510)"/>
- <wire from="(430,390)" to="(580,390)"/>
- <wire from="(280,740)" to="(280,910)"/>
- <wire from="(430,710)" to="(430,750)"/>
- <wire from="(420,340)" to="(430,340)"/>
- <wire from="(420,460)" to="(430,460)"/>
- <wire from="(420,220)" to="(430,220)"/>
- <wire from="(420,700)" to="(430,700)"/>
- <wire from="(430,710)" to="(440,710)"/>
- <wire from="(310,730)" to="(310,910)"/>
- <wire from="(340,430)" to="(340,670)"/>
- <wire from="(280,740)" to="(550,740)"/>
+ <wire from="(340,730)" to="(400,730)"/>
+ <wire from="(360,560)" to="(360,820)"/>
+ <wire from="(530,770)" to="(530,780)"/>
+ <wire from="(700,60)" to="(750,60)"/>
+ <wire from="(310,390)" to="(500,390)"/>
+ <wire from="(360,420)" to="(360,560)"/>
+ <wire from="(300,140)" to="(300,410)"/>
+ <wire from="(330,370)" to="(380,370)"/>
+ <wire from="(330,770)" to="(380,770)"/>
+ <wire from="(480,410)" to="(660,410)"/>
+ <wire from="(330,10)" to="(380,10)"/>
+ <wire from="(480,80)" to="(480,90)"/>
+ <wire from="(500,380)" to="(500,390)"/>
+ <wire from="(360,420)" to="(670,420)"/>
+ <wire from="(350,30)" to="(350,50)"/>
+ <wire from="(500,100)" to="(500,120)"/>
+ <wire from="(590,750)" to="(590,780)"/>
+ <wire from="(420,700)" to="(520,700)"/>
+ <wire from="(290,800)" to="(290,900)"/>
+ <wire from="(530,730)" to="(530,770)"/>
+ <wire from="(590,710)" to="(590,750)"/>
+ <wire from="(520,750)" to="(540,750)"/>
+ <wire from="(530,400)" to="(550,400)"/>
+ <wire from="(420,690)" to="(580,690)"/>
+ <wire from="(420,650)" to="(580,650)"/>
+ <wire from="(350,490)" to="(380,490)"/>
+ <wire from="(420,90)" to="(440,90)"/>
+ <wire from="(420,10)" to="(440,10)"/>
+ <wire from="(290,230)" to="(290,400)"/>
+ <wire from="(430,30)" to="(430,70)"/>
+ <wire from="(340,60)" to="(490,60)"/>
+ <wire from="(310,210)" to="(310,390)"/>
+ <wire from="(430,70)" to="(440,70)"/>
+ <wire from="(350,170)" to="(350,350)"/>
+ <wire from="(520,80)" to="(530,80)"/>
+ <wire from="(340,470)" to="(480,470)"/>
+ <wire from="(470,510)" to="(480,510)"/>
+ <wire from="(480,360)" to="(490,360)"/>
<wire from="(220,150)" to="(360,150)"/>
- <wire from="(310,730)" to="(440,730)"/>
- <wire from="(700,700)" to="(710,700)"/>
- <wire from="(340,670)" to="(340,920)"/>
- <wire from="(430,750)" to="(680,750)"/>
- <wire from="(480,720)" to="(540,720)"/>
- <wire from="(360,150)" to="(360,280)"/>
- <wire from="(280,260)" to="(460,260)"/>
- <wire from="(280,380)" to="(460,380)"/>
- <wire from="(280,500)" to="(460,500)"/>
- <wire from="(350,690)" to="(350,890)"/>
- <wire from="(470,640)" to="(470,650)"/>
- <wire from="(550,670)" to="(550,740)"/>
- <wire from="(350,160)" to="(350,170)"/>
- <wire from="(650,190)" to="(690,190)"/>
- <wire from="(400,650)" to="(400,670)"/>
- <wire from="(420,620)" to="(530,620)"/>
- <wire from="(420,580)" to="(530,580)"/>
- <wire from="(460,230)" to="(460,260)"/>
- <wire from="(460,350)" to="(460,380)"/>
- <wire from="(460,470)" to="(460,500)"/>
- <wire from="(340,190)" to="(440,190)"/>
- <wire from="(360,760)" to="(360,860)"/>
- <wire from="(470,150)" to="(680,150)"/>
- <wire from="(420,140)" to="(440,140)"/>
- <wire from="(550,740)" to="(580,740)"/>
- <wire from="(310,250)" to="(450,250)"/>
- <wire from="(310,370)" to="(450,370)"/>
- <wire from="(310,490)" to="(450,490)"/>
- <wire from="(430,160)" to="(440,160)"/>
- <wire from="(500,190)" to="(510,190)"/>
- <wire from="(470,720)" to="(480,720)"/>
- <wire from="(280,500)" to="(280,740)"/>
- <wire from="(310,490)" to="(310,730)"/>
- <wire from="(480,330)" to="(480,380)"/>
- <wire from="(480,450)" to="(480,500)"/>
- <wire from="(350,450)" to="(350,690)"/>
- <wire from="(430,160)" to="(430,220)"/>
- <wire from="(500,190)" to="(500,250)"/>
- <wire from="(350,180)" to="(480,180)"/>
+ <wire from="(470,20)" to="(730,20)"/>
+ <wire from="(730,130)" to="(740,130)"/>
+ <wire from="(740,780)" to="(750,780)"/>
+ <wire from="(530,730)" to="(540,730)"/>
+ <wire from="(530,770)" to="(540,770)"/>
+ <wire from="(520,360)" to="(530,360)"/>
+ <wire from="(290,540)" to="(290,800)"/>
+ <wire from="(430,70)" to="(430,140)"/>
+ <wire from="(300,550)" to="(300,810)"/>
+ <wire from="(340,470)" to="(340,730)"/>
+ <wire from="(560,370)" to="(560,380)"/>
+ <wire from="(630,720)" to="(630,730)"/>
+ <wire from="(600,370)" to="(600,380)"/>
+ <wire from="(310,120)" to="(500,120)"/>
+ <wire from="(290,400)" to="(290,540)"/>
+ <wire from="(300,410)" to="(300,550)"/>
+ <wire from="(340,330)" to="(340,470)"/>
+ <wire from="(350,50)" to="(530,50)"/>
+ <wire from="(330,100)" to="(380,100)"/>
+ <wire from="(290,800)" to="(600,800)"/>
+ <wire from="(490,60)" to="(490,80)"/>
+ <wire from="(510,520)" to="(510,540)"/>
+ <wire from="(430,520)" to="(430,550)"/>
+ <wire from="(480,330)" to="(480,360)"/>
+ <wire from="(300,110)" to="(300,140)"/>
+ <wire from="(530,60)" to="(530,80)"/>
+ <wire from="(290,130)" to="(290,230)"/>
+ <wire from="(530,500)" to="(530,540)"/>
+ <wire from="(290,400)" to="(510,400)"/>
+ <wire from="(630,760)" to="(630,800)"/>
+ <wire from="(590,750)" to="(610,750)"/>
+ <wire from="(590,710)" to="(610,710)"/>
+ <wire from="(420,660)" to="(580,660)"/>
+ <wire from="(570,520)" to="(600,520)"/>
+ <wire from="(420,500)" to="(440,500)"/>
+ <wire from="(310,790)" to="(310,900)"/>
+ <wire from="(480,770)" to="(480,810)"/>
+ <wire from="(480,370)" to="(480,410)"/>
+ <wire from="(430,520)" to="(440,520)"/>
+ <wire from="(340,730)" to="(340,910)"/>
+ <wire from="(470,80)" to="(480,80)"/>
+ <wire from="(480,90)" to="(490,90)"/>
+ <wire from="(480,770)" to="(490,770)"/>
+ <wire from="(480,370)" to="(490,370)"/>
+ <wire from="(360,850)" to="(370,850)"/>
+ <wire from="(300,810)" to="(430,810)"/>
+ <wire from="(300,410)" to="(430,410)"/>
<wire from="(220,170)" to="(350,170)"/>
- <wire from="(360,280)" to="(360,400)"/>
- <wire from="(360,400)" to="(360,520)"/>
- <wire from="(550,640)" to="(560,640)"/>
- <wire from="(690,270)" to="(690,280)"/>
- <wire from="(340,670)" to="(400,670)"/>
- <wire from="(710,690)" to="(710,700)"/>
- <wire from="(520,660)" to="(570,660)"/>
- <wire from="(520,700)" to="(570,700)"/>
- <wire from="(220,230)" to="(280,230)"/>
- <wire from="(420,640)" to="(470,640)"/>
- <wire from="(330,230)" to="(380,230)"/>
- <wire from="(330,350)" to="(380,350)"/>
- <wire from="(330,470)" to="(380,470)"/>
- <wire from="(330,710)" to="(380,710)"/>
- <wire from="(350,170)" to="(350,180)"/>
- <wire from="(450,230)" to="(450,250)"/>
- <wire from="(450,350)" to="(450,370)"/>
- <wire from="(450,470)" to="(450,490)"/>
- <wire from="(420,590)" to="(530,590)"/>
- <wire from="(420,630)" to="(530,630)"/>
+ <wire from="(750,760)" to="(760,760)"/>
+ <wire from="(550,120)" to="(560,120)"/>
+ <wire from="(310,530)" to="(310,790)"/>
+ <wire from="(350,490)" to="(350,750)"/>
+ <wire from="(480,810)" to="(730,810)"/>
+ <wire from="(520,700)" to="(520,710)"/>
+ <wire from="(360,820)" to="(740,820)"/>
+ <wire from="(350,750)" to="(350,880)"/>
+ <wire from="(340,60)" to="(340,190)"/>
+ <wire from="(310,530)" to="(500,530)"/>
+ <wire from="(310,390)" to="(310,530)"/>
+ <wire from="(350,350)" to="(350,490)"/>
+ <wire from="(330,510)" to="(380,510)"/>
+ <wire from="(480,550)" to="(660,550)"/>
+ <wire from="(530,780)" to="(590,780)"/>
+ <wire from="(500,520)" to="(500,530)"/>
+ <wire from="(600,730)" to="(600,800)"/>
+ <wire from="(360,560)" to="(670,560)"/>
+ <wire from="(360,820)" to="(360,850)"/>
+ <wire from="(350,50)" to="(350,80)"/>
+ <wire from="(310,120)" to="(310,210)"/>
+ <wire from="(350,80)" to="(350,170)"/>
+ <wire from="(290,130)" to="(510,130)"/>
+ <wire from="(530,540)" to="(550,540)"/>
<wire from="(220,210)" to="(310,210)"/>
- <wire from="(520,360)" to="(550,360)"/>
- <wire from="(520,480)" to="(550,480)"/>
- <wire from="(550,670)" to="(580,670)"/>
- <wire from="(310,210)" to="(310,250)"/>
- <wire from="(470,650)" to="(470,690)"/>
- <wire from="(430,330)" to="(440,330)"/>
- <wire from="(430,450)" to="(440,450)"/>
- <wire from="(470,210)" to="(480,210)"/>
- <wire from="(470,330)" to="(480,330)"/>
- <wire from="(470,450)" to="(480,450)"/>
- <wire from="(470,650)" to="(480,650)"/>
- <wire from="(360,860)" to="(370,860)"/>
- <wire from="(690,190)" to="(690,250)"/>
- <wire from="(340,310)" to="(340,430)"/>
- <wire from="(340,190)" to="(340,310)"/>
+ <wire from="(730,20)" to="(730,130)"/>
+ <wire from="(420,630)" to="(580,630)"/>
+ <wire from="(420,670)" to="(580,670)"/>
+ <wire from="(350,350)" to="(380,350)"/>
+ <wire from="(350,750)" to="(380,750)"/>
+ <wire from="(350,30)" to="(380,30)"/>
+ <wire from="(350,880)" to="(370,880)"/>
+ <wire from="(600,800)" to="(630,800)"/>
+ <wire from="(470,770)" to="(480,770)"/>
+ <wire from="(480,500)" to="(490,500)"/>
+ <wire from="(340,330)" to="(480,330)"/>
+ <wire from="(470,370)" to="(480,370)"/>
+ <wire from="(280,900)" to="(290,900)"/>
+ <wire from="(220,230)" to="(290,230)"/>
+ <wire from="(300,140)" to="(430,140)"/>
+ <wire from="(520,780)" to="(530,780)"/>
+ <wire from="(520,500)" to="(530,500)"/>
+ <wire from="(600,700)" to="(610,700)"/>
+ <wire from="(750,140)" to="(750,150)"/>
+ <wire from="(760,750)" to="(760,760)"/>
+ <wire from="(560,510)" to="(560,520)"/>
+ <wire from="(600,510)" to="(600,520)"/>
+ <wire from="(570,760)" to="(620,760)"/>
+ <wire from="(570,720)" to="(620,720)"/>
+ <wire from="(340,190)" to="(340,330)"/>
+ <wire from="(310,790)" to="(490,790)"/>
<wire from="(220,190)" to="(340,190)"/>
- <wire from="(430,700)" to="(430,710)"/>
- <wire from="(480,710)" to="(480,720)"/>
- <wire from="(440,190)" to="(440,210)"/>
- <wire from="(480,190)" to="(480,210)"/>
- <wire from="(420,600)" to="(530,600)"/>
- <wire from="(540,690)" to="(540,720)"/>
- <wire from="(280,230)" to="(280,260)"/>
- <wire from="(350,180)" to="(350,210)"/>
- <wire from="(360,520)" to="(590,520)"/>
- <wire from="(360,400)" to="(590,400)"/>
- <wire from="(540,650)" to="(540,690)"/>
- <wire from="(350,160)" to="(380,160)"/>
- <wire from="(350,890)" to="(370,890)"/>
- <wire from="(480,380)" to="(500,380)"/>
- <wire from="(480,500)" to="(500,500)"/>
- <wire from="(470,690)" to="(490,690)"/>
- <wire from="(480,670)" to="(480,710)"/>
- <wire from="(430,340)" to="(440,340)"/>
- <wire from="(430,460)" to="(440,460)"/>
- <wire from="(430,220)" to="(440,220)"/>
- <wire from="(500,250)" to="(510,250)"/>
- <wire from="(480,670)" to="(490,670)"/>
- <wire from="(480,710)" to="(490,710)"/>
- <wire from="(360,280)" to="(690,280)"/>
- <wire from="(360,760)" to="(690,760)"/>
- <wire from="(430,340)" to="(430,390)"/>
- <wire from="(430,460)" to="(430,510)"/>
+ <wire from="(360,150)" to="(360,420)"/>
+ <wire from="(400,710)" to="(400,730)"/>
+ <wire from="(510,380)" to="(510,400)"/>
+ <wire from="(430,780)" to="(430,810)"/>
+ <wire from="(430,380)" to="(430,410)"/>
+ <wire from="(510,100)" to="(510,130)"/>
+ <wire from="(480,470)" to="(480,500)"/>
+ <wire from="(520,710)" to="(520,750)"/>
+ <wire from="(290,540)" to="(510,540)"/>
+ <wire from="(530,360)" to="(530,400)"/>
+ <wire from="(420,640)" to="(580,640)"/>
+ <wire from="(420,680)" to="(580,680)"/>
+ <wire from="(340,910)" to="(370,910)"/>
+ <wire from="(350,80)" to="(380,80)"/>
+ <wire from="(420,760)" to="(440,760)"/>
+ <wire from="(570,380)" to="(600,380)"/>
+ <wire from="(420,360)" to="(440,360)"/>
+ <wire from="(600,730)" to="(630,730)"/>
+ <wire from="(480,510)" to="(480,550)"/>
+ <wire from="(430,780)" to="(440,780)"/>
+ <wire from="(430,380)" to="(440,380)"/>
+ <wire from="(480,510)" to="(490,510)"/>
+ <wire from="(220,110)" to="(300,110)"/>
+ <wire from="(550,60)" to="(550,120)"/>
<wire from="(220,130)" to="(230,130)"/>
- <wire from="(360,520)" to="(360,760)"/>
- <wire from="(280,380)" to="(280,500)"/>
- <wire from="(310,370)" to="(310,490)"/>
- <wire from="(280,260)" to="(280,380)"/>
- <wire from="(310,250)" to="(310,370)"/>
- <wire from="(690,720)" to="(700,720)"/>
- <wire from="(350,330)" to="(350,450)"/>
- <wire from="(350,210)" to="(350,330)"/>
- <comp lib="0" loc="(330,350)" name="Constant">
+ <wire from="(750,60)" to="(750,120)"/>
+ <wire from="(300,550)" to="(430,550)"/>
+ <wire from="(550,60)" to="(560,60)"/>
+ <wire from="(520,710)" to="(530,710)"/>
+ <wire from="(360,150)" to="(750,150)"/>
+ <comp lib="0" loc="(600,700)" name="Splitter">
+ <a name="facing" val="west"/>
+ <a name="fanout" val="7"/>
+ <a name="incoming" val="7"/>
+ <a name="appear" val="right"/>
+ </comp>
+ <comp lib="0" loc="(740,800)" name="Splitter">
+ <a name="facing" val="north"/>
+ <a name="fanout" val="8"/>
+ <a name="incoming" val="8"/>
+ <a name="appear" val="right"/>
+ </comp>
+ <comp lib="0" loc="(330,510)" name="Constant">
+ <a name="width" val="8"/>
+ <a name="value" val="0xfd"/>
+ </comp>
+ <comp lib="3" loc="(420,20)" name="Comparator">
+ <a name="mode" val="unsigned"/>
+ </comp>
+ <comp lib="0" loc="(330,370)" name="Constant">
<a name="width" val="8"/>
<a name="value" val="0xfe"/>
</comp>
- <comp lib="0" loc="(310,910)" name="Clock">
- <a name="facing" val="north"/>
+ <comp lib="1" loc="(520,780)" name="AND Gate">
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(370,860)" name="Probe">
+ <comp lib="0" loc="(560,120)" name="Probe">
<a name="facing" val="west"/>
- <a name="label" val="Input"/>
+ <a name="label" val="Real Address"/>
<a name="labelloc" val="east"/>
</comp>
- <comp lib="5" loc="(510,350)" name="Hex Digit Display"/>
- <comp lib="0" loc="(380,140)" name="Constant">
+ <comp lib="3" loc="(420,760)" name="Comparator">
+ <a name="mode" val="unsigned"/>
+ </comp>
+ <comp lib="1" loc="(740,820)" name="Controlled Buffer">
+ <a name="facing" val="south"/>
+ <a name="width" val="8"/>
+ </comp>
+ <comp lib="1" loc="(470,770)" name="AND Gate">
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
+ </comp>
+ <comp lib="0" loc="(230,130)" name="Constant">
+ <a name="facing" val="west"/>
+ </comp>
+ <comp lib="1" loc="(470,370)" name="AND Gate">
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
+ </comp>
+ <comp lib="1" loc="(470,510)" name="AND Gate">
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
+ </comp>
+ <comp lib="3" loc="(420,360)" name="Comparator">
+ <a name="mode" val="unsigned"/>
+ </comp>
+ <comp lib="1" loc="(570,760)" name="AND Gate">
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
+ </comp>
+ <comp lib="3" loc="(420,90)" name="Comparator">
+ <a name="mode" val="unsigned"/>
+ </comp>
+ <comp lib="5" loc="(610,750)" name="Keyboard">
+ <a name="buflen" val="80"/>
+ <a name="trigger" val="falling"/>
+ </comp>
+ <comp lib="0" loc="(330,770)" name="Constant">
<a name="width" val="8"/>
- <a name="value" val="0xf0"/>
+ <a name="value" val="0xfc"/>
</comp>
- <comp lib="0" loc="(500,190)" name="Splitter">
+ <comp lib="0" loc="(550,60)" name="Splitter">
<a name="facing" val="west"/>
<a name="incoming" val="16"/>
<a name="appear" val="center"/>
@@ -4222,84 +4317,22 @@
<a name="bit14" val="1"/>
<a name="bit15" val="1"/>
</comp>
- <comp lib="3" loc="(420,220)" name="Comparator">
- <a name="mode" val="unsigned"/>
- </comp>
- <comp lib="1" loc="(690,270)" name="Controlled Buffer">
- <a name="facing" val="south"/>
- <a name="width" val="8"/>
- </comp>
- <comp lib="1" loc="(470,720)" name="AND Gate">
+ <comp lib="1" loc="(470,80)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
- <comp lib="0" loc="(500,500)" name="Splitter">
- <a name="facing" val="north"/>
- <a name="incoming" val="8"/>
- <a name="appear" val="right"/>
- <a name="bit1" val="0"/>
- <a name="bit2" val="0"/>
- <a name="bit3" val="0"/>
- <a name="bit4" val="1"/>
- <a name="bit5" val="1"/>
- <a name="bit6" val="1"/>
- <a name="bit7" val="1"/>
- </comp>
- <comp lib="5" loc="(550,350)" name="Hex Digit Display"/>
- <comp lib="0" loc="(230,130)" name="Constant">
- <a name="facing" val="west"/>
- </comp>
- <comp lib="0" loc="(330,710)" name="Constant">
- <a name="width" val="8"/>
- <a name="value" val="0xfc"/>
- </comp>
- <comp lib="1" loc="(590,400)" name="Controlled Buffer">
- <a name="facing" val="south"/>
- <a name="width" val="8"/>
- </comp>
- <comp lib="0" loc="(370,890)" name="Probe">
- <a name="facing" val="west"/>
- <a name="label" val="Address"/>
- <a name="labelloc" val="east"/>
- </comp>
- <comp lib="0" loc="(590,380)" name="Pin">
- <a name="facing" val="south"/>
- <a name="width" val="8"/>
- <a name="tristate" val="false"/>
- </comp>
- <comp lib="0" loc="(500,380)" name="Splitter">
- <a name="facing" val="north"/>
- <a name="incoming" val="8"/>
- <a name="appear" val="right"/>
- <a name="bit1" val="0"/>
- <a name="bit2" val="0"/>
- <a name="bit3" val="0"/>
- <a name="bit4" val="1"/>
- <a name="bit5" val="1"/>
- <a name="bit6" val="1"/>
- <a name="bit7" val="1"/>
- </comp>
- <comp lib="3" loc="(420,150)" name="Comparator">
- <a name="mode" val="unsigned"/>
- </comp>
- <comp lib="0" loc="(330,470)" name="Constant">
- <a name="width" val="8"/>
- <a name="value" val="0xfd"/>
- </comp>
- <comp lib="4" loc="(470,210)" name="Register"/>
- <comp lib="3" loc="(420,340)" name="Comparator">
- <a name="mode" val="unsigned"/>
- </comp>
- <comp lib="1" loc="(470,150)" name="OR Gate">
+ <comp lib="1" loc="(570,720)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
+ <a name="negate0" val="true"/>
</comp>
- <comp lib="4" loc="(470,330)" name="Register"/>
- <comp lib="0" loc="(400,650)" name="Splitter">
- <a name="fanout" val="8"/>
- <a name="incoming" val="8"/>
+ <comp lib="5" loc="(610,710)" name="TTY">
+ <a name="cols" val="80"/>
+ <a name="trigger" val="falling"/>
</comp>
- <comp lib="4" loc="(650,190)" name="ROM">
+ <comp lib="4" loc="(520,360)" name="Register"/>
+ <comp lib="5" loc="(600,510)" name="Hex Digit Display"/>
+ <comp lib="4" loc="(700,60)" name="ROM">
<a name="addrWidth" val="16"/>
<a name="contents">addr/data: 16 8
30 3 4b c4 33 7f 9f 3
@@ -4312,87 +4345,112 @@ a7 93 33 7f 9f ab a3 52
f7 83 0 83 2f
</a>
</comp>
- <comp lib="3" loc="(420,700)" name="Comparator">
+ <comp lib="0" loc="(330,10)" name="Constant">
+ <a name="width" val="8"/>
+ <a name="value" val="0xf0"/>
+ </comp>
+ <comp lib="3" loc="(420,500)" name="Comparator">
<a name="mode" val="unsigned"/>
</comp>
- <comp lib="1" loc="(690,720)" name="NOT Gate">
+ <comp lib="0" loc="(370,880)" name="Probe">
+ <a name="facing" val="west"/>
+ <a name="label" val="Address"/>
+ <a name="labelloc" val="east"/>
+ </comp>
+ <comp lib="5" loc="(560,370)" name="Hex Digit Display"/>
+ <comp lib="0" loc="(400,710)" name="Splitter">
+ <a name="fanout" val="8"/>
+ <a name="incoming" val="8"/>
+ </comp>
+ <comp lib="0" loc="(280,900)" name="Pin">
+ <a name="facing" val="north"/>
+ <a name="tristate" val="false"/>
+ </comp>
+ <comp lib="1" loc="(750,140)" name="Controlled Buffer">
<a name="facing" val="south"/>
- <a name="size" val="20"/>
+ <a name="width" val="8"/>
</comp>
- <comp lib="5" loc="(560,690)" name="Keyboard">
- <a name="trigger" val="falling"/>
+ <comp lib="1" loc="(470,20)" name="AND Gate">
+ <a name="size" val="30"/>
+ <a name="inputs" val="2"/>
+ <a name="negate1" val="true"/>
</comp>
- <comp lib="5" loc="(560,650)" name="TTY">
- <a name="cols" val="80"/>
- <a name="trigger" val="falling"/>
+ <comp lib="0" loc="(670,540)" name="Pin">
+ <a name="facing" val="south"/>
+ <a name="width" val="8"/>
+ <a name="tristate" val="false"/>
</comp>
- <comp lib="0" loc="(700,700)" name="Splitter">
+ <comp lib="5" loc="(600,370)" name="Hex Digit Display"/>
+ <comp lib="1" loc="(740,780)" name="NOT Gate">
<a name="facing" val="south"/>
- <a name="fanout" val="7"/>
- <a name="incoming" val="7"/>
+ <a name="size" val="20"/>
</comp>
- <comp lib="0" loc="(550,640)" name="Splitter">
+ <comp lib="0" loc="(370,850)" name="Probe">
<a name="facing" val="west"/>
- <a name="fanout" val="7"/>
- <a name="incoming" val="7"/>
- <a name="appear" val="right"/>
+ <a name="label" val="Input"/>
+ <a name="labelloc" val="east"/>
</comp>
- <comp lib="5" loc="(510,470)" name="Hex Digit Display"/>
- <comp lib="1" loc="(520,660)" name="AND Gate">
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
- <a name="negate0" val="true"/>
+ <comp lib="5" loc="(560,510)" name="Hex Digit Display"/>
+ <comp lib="0" loc="(760,750)" name="Probe">
+ <a name="facing" val="west"/>
+ <a name="radix" val="10unsigned"/>
</comp>
- <comp lib="1" loc="(520,700)" name="AND Gate">
- <a name="size" val="30"/>
- <a name="inputs" val="2"/>
+ <comp lib="0" loc="(370,910)" name="Probe">
+ <a name="facing" val="west"/>
+ <a name="label" val="Output"/>
+ <a name="labelloc" val="east"/>
+ </comp>
+ <comp lib="4" loc="(520,80)" name="Register"/>
+ <comp lib="0" loc="(310,900)" name="Clock">
+ <a name="facing" val="north"/>
</comp>
- <comp lib="1" loc="(590,520)" name="Controlled Buffer">
+ <comp lib="1" loc="(670,560)" name="Controlled Buffer">
<a name="facing" val="south"/>
<a name="width" val="8"/>
</comp>
- <comp lib="4" loc="(470,450)" name="Register"/>
- <comp lib="0" loc="(280,910)" name="Pin">
+ <comp lib="4" loc="(520,500)" name="Register"/>
+ <comp lib="0" loc="(550,540)" name="Splitter">
<a name="facing" val="north"/>
- <a name="tristate" val="false"/>
+ <a name="incoming" val="8"/>
+ <a name="appear" val="right"/>
+ <a name="bit1" val="0"/>
+ <a name="bit2" val="0"/>
+ <a name="bit3" val="0"/>
+ <a name="bit4" val="1"/>
+ <a name="bit5" val="1"/>
+ <a name="bit6" val="1"/>
+ <a name="bit7" val="1"/>
</comp>
- <comp lib="1" loc="(690,760)" name="Controlled Buffer">
+ <comp loc="(220,130)" name="MCU"/>
+ <comp lib="1" loc="(670,420)" name="Controlled Buffer">
<a name="facing" val="south"/>
<a name="width" val="8"/>
</comp>
- <comp lib="0" loc="(690,740)" name="Splitter">
+ <comp lib="0" loc="(550,400)" name="Splitter">
<a name="facing" val="north"/>
- <a name="fanout" val="8"/>
<a name="incoming" val="8"/>
<a name="appear" val="right"/>
+ <a name="bit1" val="0"/>
+ <a name="bit2" val="0"/>
+ <a name="bit3" val="0"/>
+ <a name="bit4" val="1"/>
+ <a name="bit5" val="1"/>
+ <a name="bit6" val="1"/>
+ <a name="bit7" val="1"/>
</comp>
- <comp lib="0" loc="(330,230)" name="Constant">
+ <comp lib="0" loc="(330,100)" name="Constant">
<a name="width" val="8"/>
<a name="value" val="0xff"/>
</comp>
- <comp lib="5" loc="(550,470)" name="Hex Digit Display"/>
- <comp lib="0" loc="(370,920)" name="Probe">
- <a name="facing" val="west"/>
- <a name="label" val="Output"/>
- <a name="labelloc" val="east"/>
- </comp>
- <comp lib="3" loc="(420,460)" name="Comparator">
- <a name="mode" val="unsigned"/>
- </comp>
- <comp lib="0" loc="(510,250)" name="Probe">
- <a name="facing" val="west"/>
- <a name="label" val="Real Address"/>
- <a name="labelloc" val="east"/>
- </comp>
- <comp lib="0" loc="(590,500)" name="Pin">
+ <comp lib="0" loc="(670,400)" name="Pin">
<a name="facing" val="south"/>
<a name="width" val="8"/>
<a name="tristate" val="false"/>
</comp>
- <comp loc="(220,130)" name="MCU"/>
- <comp lib="0" loc="(710,690)" name="Probe">
- <a name="facing" val="west"/>
- <a name="radix" val="10unsigned"/>
+ <comp lib="0" loc="(750,760)" name="Splitter">
+ <a name="facing" val="south"/>
+ <a name="fanout" val="7"/>
+ <a name="incoming" val="7"/>
</comp>
</circuit>
</project>