Skip to content
Snippets Groups Projects
Commit b5582975 authored by jonas.stirnema's avatar jonas.stirnema
Browse files

FInished Function Branching

parent a1e2a9a8
No related branches found
No related tags found
No related merge requests found
......@@ -109,41 +109,48 @@
<wire from="(1460,180)" to="(1460,200)"/>
<wire from="(1460,140)" to="(1460,160)"/>
<wire from="(380,450)" to="(440,450)"/>
<wire from="(680,1240)" to="(730,1240)"/>
<wire from="(620,1220)" to="(670,1220)"/>
<wire from="(1310,620)" to="(1420,620)"/>
<wire from="(190,540)" to="(250,540)"/>
<wire from="(1190,840)" to="(1230,840)"/>
<wire from="(700,1210)" to="(760,1210)"/>
<wire from="(380,300)" to="(380,320)"/>
<wire from="(380,260)" to="(380,280)"/>
<wire from="(620,1220)" to="(620,1250)"/>
<wire from="(440,530)" to="(480,530)"/>
<wire from="(1110,830)" to="(1160,830)"/>
<wire from="(1230,790)" to="(1230,840)"/>
<wire from="(680,1200)" to="(680,1240)"/>
<wire from="(740,1020)" to="(740,1060)"/>
<wire from="(520,790)" to="(540,790)"/>
<wire from="(520,1110)" to="(540,1110)"/>
<wire from="(520,1030)" to="(540,1030)"/>
<wire from="(450,550)" to="(480,550)"/>
<wire from="(450,630)" to="(480,630)"/>
<wire from="(740,1250)" to="(760,1250)"/>
<wire from="(700,1250)" to="(720,1250)"/>
<wire from="(320,590)" to="(480,590)"/>
<wire from="(290,590)" to="(320,590)"/>
<wire from="(740,480)" to="(770,480)"/>
<wire from="(330,440)" to="(350,440)"/>
<wire from="(60,1330)" to="(80,1330)"/>
<wire from="(160,310)" to="(180,310)"/>
<wire from="(670,1260)" to="(740,1260)"/>
<wire from="(670,1220)" to="(740,1220)"/>
<wire from="(1710,230)" to="(1710,270)"/>
<wire from="(1100,240)" to="(1130,240)"/>
<wire from="(150,90)" to="(230,90)"/>
<wire from="(640,270)" to="(710,270)"/>
<wire from="(380,300)" to="(390,300)"/>
<wire from="(110,620)" to="(180,620)"/>
<wire from="(190,580)" to="(260,580)"/>
<wire from="(1430,230)" to="(1430,270)"/>
<wire from="(690,1210)" to="(700,1210)"/>
<wire from="(1190,220)" to="(1210,220)"/>
<wire from="(310,260)" to="(380,260)"/>
<wire from="(1210,220)" to="(1210,240)"/>
<wire from="(770,1210)" to="(830,1210)"/>
<wire from="(770,1250)" to="(830,1250)"/>
<wire from="(1130,270)" to="(1170,270)"/>
<wire from="(270,560)" to="(270,570)"/>
<wire from="(680,1200)" to="(740,1200)"/>
<wire from="(240,270)" to="(240,410)"/>
<wire from="(510,1210)" to="(550,1210)"/>
<wire from="(210,320)" to="(380,320)"/>
......@@ -156,7 +163,6 @@
<wire from="(790,1070)" to="(810,1070)"/>
<wire from="(870,270)" to="(890,270)"/>
<wire from="(240,270)" to="(270,270)"/>
<wire from="(510,1200)" to="(660,1200)"/>
<wire from="(1210,220)" to="(1220,220)"/>
<wire from="(520,840)" to="(540,840)"/>
<wire from="(520,920)" to="(540,920)"/>
......@@ -165,7 +171,6 @@
<wire from="(580,930)" to="(610,930)"/>
<wire from="(1020,570)" to="(1050,570)"/>
<wire from="(180,60)" to="(200,60)"/>
<wire from="(1190,180)" to="(1220,180)"/>
<wire from="(500,310)" to="(510,310)"/>
<wire from="(1390,660)" to="(1420,660)"/>
<wire from="(1460,180)" to="(1480,180)"/>
......@@ -175,25 +180,27 @@
<wire from="(1200,80)" to="(1220,80)"/>
<wire from="(1200,120)" to="(1220,120)"/>
<wire from="(1200,760)" to="(1220,760)"/>
<wire from="(1200,200)" to="(1220,200)"/>
<wire from="(1270,550)" to="(1290,550)"/>
<wire from="(1270,590)" to="(1290,590)"/>
<wire from="(690,1110)" to="(740,1110)"/>
<wire from="(1200,100)" to="(1200,120)"/>
<wire from="(1200,60)" to="(1200,80)"/>
<wire from="(1200,140)" to="(1200,160)"/>
<wire from="(290,590)" to="(480,590)"/>
<wire from="(1200,180)" to="(1200,200)"/>
<wire from="(190,650)" to="(190,660)"/>
<wire from="(700,550)" to="(760,550)"/>
<wire from="(500,1090)" to="(540,1090)"/>
<wire from="(160,250)" to="(270,250)"/>
<wire from="(510,1220)" to="(550,1220)"/>
<wire from="(700,530)" to="(740,530)"/>
<wire from="(50,470)" to="(50,490)"/>
<wire from="(740,1080)" to="(740,1110)"/>
<wire from="(440,450)" to="(440,530)"/>
<wire from="(200,60)" to="(200,90)"/>
<wire from="(1110,850)" to="(1160,850)"/>
<wire from="(190,110)" to="(220,110)"/>
<wire from="(420,290)" to="(510,290)"/>
<wire from="(320,490)" to="(320,590)"/>
<wire from="(980,590)" to="(1000,590)"/>
<wire from="(520,770)" to="(540,770)"/>
<wire from="(520,1010)" to="(540,1010)"/>
......@@ -212,43 +219,49 @@
<wire from="(600,290)" to="(600,410)"/>
<wire from="(1250,770)" to="(1280,770)"/>
<wire from="(380,280)" to="(390,280)"/>
<wire from="(50,490)" to="(320,490)"/>
<wire from="(520,1120)" to="(650,1120)"/>
<wire from="(50,470)" to="(60,470)"/>
<wire from="(760,500)" to="(760,550)"/>
<wire from="(740,480)" to="(740,530)"/>
<wire from="(1170,230)" to="(1170,270)"/>
<wire from="(1450,220)" to="(1470,220)"/>
<wire from="(1330,420)" to="(1330,530)"/>
<wire from="(760,500)" to="(770,500)"/>
<wire from="(740,530)" to="(880,530)"/>
<wire from="(1470,220)" to="(1470,240)"/>
<wire from="(1450,680)" to="(1450,700)"/>
<wire from="(520,1110)" to="(520,1120)"/>
<wire from="(880,460)" to="(880,530)"/>
<wire from="(1330,530)" to="(1370,530)"/>
<wire from="(1130,240)" to="(1130,270)"/>
<wire from="(360,470)" to="(360,480)"/>
<wire from="(510,1230)" to="(550,1230)"/>
<wire from="(580,1220)" to="(620,1220)"/>
<wire from="(620,1220)" to="(660,1220)"/>
<wire from="(400,310)" to="(400,330)"/>
<wire from="(760,550)" to="(1050,550)"/>
<wire from="(190,340)" to="(190,360)"/>
<wire from="(1270,530)" to="(1330,530)"/>
<wire from="(880,530)" to="(1050,530)"/>
<wire from="(240,410)" to="(600,410)"/>
<wire from="(510,1200)" to="(680,1200)"/>
<wire from="(1470,220)" to="(1480,220)"/>
<wire from="(200,90)" to="(230,90)"/>
<wire from="(230,600)" to="(260,600)"/>
<wire from="(700,1210)" to="(700,1250)"/>
<wire from="(670,1220)" to="(670,1260)"/>
<wire from="(1190,140)" to="(1200,140)"/>
<wire from="(1190,100)" to="(1200,100)"/>
<wire from="(1190,60)" to="(1200,60)"/>
<wire from="(1210,240)" to="(1220,240)"/>
<wire from="(520,860)" to="(540,860)"/>
<wire from="(520,940)" to="(540,940)"/>
<wire from="(1190,180)" to="(1200,180)"/>
<wire from="(740,1080)" to="(760,1080)"/>
<wire from="(580,790)" to="(610,790)"/>
<wire from="(1170,270)" to="(1430,270)"/>
<wire from="(210,630)" to="(230,630)"/>
<wire from="(500,330)" to="(510,330)"/>
<wire from="(170,640)" to="(180,640)"/>
<wire from="(1330,420)" to="(1360,420)"/>
<wire from="(1390,640)" to="(1420,640)"/>
<wire from="(1730,220)" to="(1760,220)"/>
<wire from="(570,1100)" to="(650,1100)"/>
......@@ -260,17 +273,12 @@
<wire from="(1200,140)" to="(1220,140)"/>
<wire from="(1200,100)" to="(1220,100)"/>
<wire from="(1200,780)" to="(1220,780)"/>
<wire from="(1270,530)" to="(1290,530)"/>
<wire from="(1200,180)" to="(1220,180)"/>
<wire from="(1270,570)" to="(1290,570)"/>
<wire from="(1270,610)" to="(1290,610)"/>
<comp loc="(1270,530)" name="ALU">
<a name="label" val="ALU1"/>
</comp>
<comp lib="0" loc="(1290,530)" name="Tunnel">
<a name="width" val="8"/>
<a name="label" val="RES_ALU"/>
<a name="labelfont" val="SansSerif bold 8"/>
</comp>
<comp lib="0" loc="(770,500)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
......@@ -559,6 +567,10 @@
<a name="incoming" val="4"/>
<a name="appear" val="right"/>
<a name="spacing" val="2"/>
<a name="bit0" val="3"/>
<a name="bit1" val="2"/>
<a name="bit2" val="1"/>
<a name="bit3" val="0"/>
</comp>
<comp lib="0" loc="(1390,640)" name="Tunnel">
<a name="facing" val="east"/>
......@@ -760,20 +772,6 @@
<a name="size" val="30"/>
<a name="inputs" val="3"/>
</comp>
<comp lib="1" loc="(690,1210)" name="AND Gate">
<a name="size" val="30"/>
</comp>
<comp lib="0" loc="(760,1210)" name="Tunnel">
<a name="label" val="EN_BL"/>
<a name="labelfont" val="SansSerif bold 8"/>
</comp>
<comp lib="0" loc="(760,1250)" name="Tunnel">
<a name="label" val="EN_BR"/>
<a name="labelfont" val="SansSerif bold 8"/>
</comp>
<comp lib="1" loc="(740,1250)" name="NOT Gate">
<a name="size" val="20"/>
</comp>
<comp lib="0" loc="(1710,230)" name="Splitter">
<a name="fanout" val="1"/>
<a name="incoming" val="16"/>
......@@ -831,10 +829,6 @@
<a name="label" val="CPU_REG_BANK_OUT_A"/>
<a name="labelfont" val="SansSerif bold 8"/>
</comp>
<comp lib="6" loc="(125,297)" name="Text">
<a name="text" val="Jump to val if BL"/>
<a name="font" val="SansSerif plain 12"/>
</comp>
<comp lib="0" loc="(620,1250)" name="Tunnel">
<a name="facing" val="north"/>
<a name="label" val="EN_BL_RL"/>
......@@ -914,14 +908,14 @@
<a name="bit5" val="0"/>
<a name="bit6" val="0"/>
<a name="bit7" val="0"/>
<a name="bit8" val="1"/>
<a name="bit9" val="1"/>
<a name="bit10" val="1"/>
<a name="bit11" val="1"/>
<a name="bit12" val="1"/>
<a name="bit13" val="1"/>
<a name="bit14" val="1"/>
<a name="bit15" val="1"/>
<a name="bit8" val="none"/>
<a name="bit9" val="none"/>
<a name="bit10" val="none"/>
<a name="bit11" val="none"/>
<a name="bit12" val="none"/>
<a name="bit13" val="none"/>
<a name="bit14" val="none"/>
<a name="bit15" val="none"/>
</comp>
<comp lib="0" loc="(170,640)" name="Tunnel">
<a name="facing" val="east"/>
......@@ -938,6 +932,50 @@
<a name="label" val="EN_BL"/>
<a name="labelfont" val="SansSerif bold 8"/>
</comp>
<comp lib="0" loc="(1220,200)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="3"/>
<a name="label" val="RES"/>
<a name="radix" val="10unsigned"/>
<a name="appearance" val="NewPins"/>
</comp>
<comp lib="0" loc="(60,470)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="8"/>
<a name="label" val="DATA_WR_DEBUG"/>
<a name="radix" val="10unsigned"/>
<a name="appearance" val="NewPins"/>
</comp>
<comp lib="0" loc="(1370,530)" name="Tunnel">
<a name="width" val="8"/>
<a name="label" val="RES_ALU"/>
<a name="labelfont" val="SansSerif bold 8"/>
</comp>
<comp lib="0" loc="(1360,420)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="8"/>
<a name="label" val="RES_ALU_DEBUG"/>
<a name="radix" val="10unsigned"/>
<a name="appearance" val="NewPins"/>
</comp>
<comp lib="0" loc="(830,1210)" name="Tunnel">
<a name="label" val="EN_BR"/>
<a name="labelfont" val="SansSerif bold 8"/>
</comp>
<comp lib="1" loc="(770,1210)" name="AND Gate">
<a name="size" val="30"/>
</comp>
<comp lib="1" loc="(770,1250)" name="AND Gate">
<a name="size" val="30"/>
<a name="negate0" val="true"/>
</comp>
<comp lib="0" loc="(830,1250)" name="Tunnel">
<a name="label" val="EN_BL"/>
<a name="labelfont" val="SansSerif bold 8"/>
</comp>
</circuit>
<circuit name="CPU_INSTRUCTION_MEMORY">
<a name="circuit" val="CPU_INSTRUCTION_MEMORY"/>
......@@ -948,16 +986,23 @@
<a name="circuitnamedboxfixedsize" val="true"/>
<a name="circuitvhdlpath" val=""/>
<wire from="(490,170)" to="(550,170)"/>
<wire from="(550,170)" to="(550,200)"/>
<wire from="(350,250)" to="(530,250)"/>
<wire from="(350,270)" to="(530,270)"/>
<wire from="(350,210)" to="(530,210)"/>
<wire from="(350,230)" to="(530,230)"/>
<wire from="(350,270)" to="(530,270)"/>
<wire from="(350,290)" to="(530,290)"/>
<wire from="(350,340)" to="(530,340)"/>
<wire from="(350,320)" to="(530,320)"/>
<wire from="(570,280)" to="(660,280)"/>
<wire from="(550,170)" to="(550,200)"/>
<wire from="(490,200)" to="(530,200)"/>
<wire from="(490,220)" to="(530,220)"/>
<wire from="(490,240)" to="(530,240)"/>
<wire from="(490,260)" to="(530,260)"/>
<wire from="(490,280)" to="(530,280)"/>
<wire from="(490,330)" to="(530,330)"/>
<wire from="(490,350)" to="(530,350)"/>
<wire from="(490,300)" to="(530,300)"/>
<comp lib="2" loc="(570,280)" name="Multiplexer">
<a name="selloc" val="tr"/>
<a name="select" val="4"/>
......@@ -966,7 +1011,7 @@
</comp>
<comp lib="0" loc="(490,200)" name="Constant">
<a name="width" val="16"/>
<a name="value" val="0x8000"/>
<a name="value" val="0x8602"/>
</comp>
<comp lib="0" loc="(660,280)" name="Pin">
<a name="facing" val="west"/>
......@@ -983,31 +1028,59 @@
</comp>
<comp lib="0" loc="(490,220)" name="Constant">
<a name="width" val="16"/>
<a name="value" val="0x8401"/>
<a name="value" val="0x8a04"/>
</comp>
<comp lib="0" loc="(490,240)" name="Constant">
<a name="width" val="16"/>
<a name="value" val="0x280"/>
<a name="value" val="0x50d8"/>
</comp>
<comp lib="0" loc="(490,260)" name="Constant">
<a name="width" val="16"/>
<a name="value" val="0xa4fb"/>
<a name="value" val="0xee0c"/>
</comp>
<comp lib="0" loc="(350,250)" name="Constant">
<a name="width" val="16"/>
<a name="value" val="0x498"/>
<a name="value" val="0x5320"/>
</comp>
<comp lib="0" loc="(350,270)" name="Constant">
<a name="width" val="16"/>
<a name="value" val="0xbffc"/>
<a name="value" val="0x5368"/>
</comp>
<comp lib="0" loc="(350,230)" name="Constant">
<a name="width" val="16"/>
<a name="value" val="0x640"/>
<a name="value" val="0x8c01"/>
</comp>
<comp lib="0" loc="(350,210)" name="Constant">
<a name="width" val="16"/>
<a name="value" val="0x8200"/>
<a name="value" val="0x8803"/>
</comp>
<comp lib="0" loc="(350,290)" name="Constant">
<a name="width" val="16"/>
<a name="value" val="0x53b0"/>
</comp>
<comp lib="0" loc="(490,280)" name="Constant">
<a name="width" val="16"/>
<a name="value" val="0xee0c"/>
</comp>
<comp lib="0" loc="(350,340)" name="Constant">
<a name="width" val="16"/>
<a name="value" val="0x5048"/>
</comp>
<comp lib="0" loc="(490,350)" name="Constant">
<a name="width" val="16"/>
<a name="value" val="0xfe00"/>
</comp>
<comp lib="0" loc="(350,320)" name="Constant">
<a name="width" val="16"/>
<a name="value" val="0x1440"/>
</comp>
<comp lib="0" loc="(490,330)" name="Constant">
<a name="width" val="16"/>
<a name="value" val="0xa402"/>
</comp>
<comp lib="0" loc="(490,300)" name="Constant">
<a name="width" val="16"/>
<a name="value" val="0xee0c"/>
</comp>
</circuit>
<circuit name="CPU_REG_BANK">
......@@ -1034,21 +1107,21 @@
<rect height="3" stroke="none" width="10" x="50" y="179"/>
<text dominant-baseline="alphabetic" fill="#404040" font-family="Courier 10 Pitch" font-size="12" text-anchor="start" x="65" y="184">RESET</text>
<rect height="4" stroke="none" width="10" x="260" y="58"/>
<circ-port height="8" pin="130,230" width="8" x="46" y="176"/>
<text dominant-baseline="alphabetic" fill="#404040" font-family="Courier 10 Pitch" font-size="12" text-anchor="end" x="255" y="64">OUT_A</text>
<rect height="4" stroke="none" width="10" x="260" y="78"/>
<text dominant-baseline="alphabetic" fill="#404040" font-family="Courier 10 Pitch" font-size="12" text-anchor="end" x="255" y="84">OUT_B</text>
<rect height="20" stroke="none" width="200" x="60" y="190"/>
<rect fill="none" height="160" stroke="#000000" stroke-width="2" width="200" x="60" y="50"/>
<text dominant-baseline="alphabetic" fill="#ffffff" font-family="Courier 10 Pitch" font-size="14" font-weight="bold" text-anchor="middle" x="160" y="204">CPU_REG_BANK</text>
<circ-port height="10" pin="1270,670" width="10" x="265" y="75"/>
<circ-port height="8" pin="130,210" width="8" x="46" y="156"/>
<circ-port height="10" pin="1270,400" width="10" x="265" y="55"/>
<circ-port height="8" pin="130,170" width="8" x="46" y="136"/>
<circ-port height="8" pin="150,70" width="8" x="46" y="56"/>
<circ-port height="8" pin="200,150" width="8" x="46" y="116"/>
<circ-port height="8" pin="150,90" width="8" x="46" y="76"/>
<circ-port height="8" pin="150,130" width="8" x="46" y="96"/>
<circ-port height="8" pin="150,90" width="8" x="46" y="76"/>
<circ-port height="8" pin="150,70" width="8" x="46" y="56"/>
<circ-port height="10" pin="1270,400" width="10" x="265" y="55"/>
<circ-port height="10" pin="1270,670" width="10" x="265" y="75"/>
<circ-port height="8" pin="130,230" width="8" x="46" y="176"/>
<visible-register height="10" path="/Register(690,50)" stroke-width="0" width="13" x="147" y="68"/>
<visible-register height="10" path="/Register(690,180)" stroke-width="0" width="13" x="147" y="78"/>
<visible-register height="10" path="/Register(690,310)" stroke-width="0" width="13" x="147" y="88"/>
......@@ -1441,85 +1514,58 @@
<a name="appearance" val="logisim_evolution"/>
<a name="circuitnamedboxfixedsize" val="true"/>
<a name="circuitvhdlpath" val=""/>
<wire from="(380,300)" to="(380,370)"/>
<wire from="(490,450)" to="(550,450)"/>
<wire from="(490,270)" to="(680,270)"/>
<wire from="(360,240)" to="(360,380)"/>
<wire from="(500,440)" to="(550,440)"/>
<wire from="(490,390)" to="(540,390)"/>
<wire from="(360,240)" to="(410,240)"/>
<wire from="(330,300)" to="(380,300)"/>
<wire from="(580,380)" to="(620,380)"/>
<wire from="(190,290)" to="(300,290)"/>
<wire from="(580,440)" to="(620,440)"/>
<wire from="(410,240)" to="(410,260)"/>
<wire from="(410,280)" to="(410,300)"/>
<wire from="(190,290)" to="(190,310)"/>
<wire from="(380,390)" to="(490,390)"/>
<wire from="(450,290)" to="(450,320)"/>
<wire from="(400,380)" to="(500,380)"/>
<wire from="(190,310)" to="(230,310)"/>
<wire from="(260,310)" to="(300,310)"/>
<wire from="(450,320)" to="(680,320)"/>
<wire from="(620,380)" to="(620,400)"/>
<wire from="(620,420)" to="(620,440)"/>
<wire from="(490,270)" to="(490,360)"/>
<wire from="(310,190)" to="(310,280)"/>
<wire from="(510,370)" to="(550,370)"/>
<wire from="(500,380)" to="(540,380)"/>
<wire from="(160,310)" to="(190,310)"/>
<wire from="(620,400)" to="(640,400)"/>
<wire from="(620,420)" to="(640,420)"/>
<wire from="(510,430)" to="(540,430)"/>
<wire from="(380,300)" to="(410,300)"/>
<wire from="(160,190)" to="(310,190)"/>
<wire from="(410,260)" to="(430,260)"/>
<wire from="(410,280)" to="(430,280)"/>
<wire from="(470,270)" to="(490,270)"/>
<wire from="(310,190)" to="(450,190)"/>
<wire from="(160,240)" to="(360,240)"/>
<wire from="(450,190)" to="(450,250)"/>
<wire from="(490,390)" to="(490,450)"/>
<wire from="(500,380)" to="(500,440)"/>
<wire from="(510,370)" to="(510,430)"/>
<wire from="(670,410)" to="(680,410)"/>
<wire from="(540,390)" to="(550,390)"/>
<wire from="(540,380)" to="(550,380)"/>
<wire from="(540,430)" to="(550,430)"/>
<comp lib="0" loc="(160,240)" name="Pin">
<a name="width" val="8"/>
<a name="label" val="A_in"/>
<a name="appearance" val="NewPins"/>
</comp>
<comp lib="0" loc="(680,270)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="8"/>
<a name="label" val="R_out"/>
<a name="appearance" val="NewPins"/>
</comp>
<comp lib="0" loc="(160,190)" name="Pin">
<a name="label" val="OP_in"/>
<a name="appearance" val="NewPins"/>
</comp>
<comp lib="0" loc="(680,320)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="label" val="C_out"/>
<a name="appearance" val="NewPins"/>
</comp>
<comp lib="0" loc="(160,310)" name="Pin">
<a name="width" val="8"/>
<a name="label" val="B_in"/>
<a name="appearance" val="NewPins"/>
</comp>
<comp lib="0" loc="(680,410)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="label" val="V_out"/>
<a name="appearance" val="NewPins"/>
<wire from="(520,340)" to="(570,340)"/>
<wire from="(570,340)" to="(570,410)"/>
<wire from="(680,490)" to="(740,490)"/>
<wire from="(680,310)" to="(680,400)"/>
<wire from="(700,410)" to="(740,410)"/>
<wire from="(690,420)" to="(730,420)"/>
<wire from="(770,420)" to="(810,420)"/>
<wire from="(770,480)" to="(810,480)"/>
<wire from="(380,330)" to="(490,330)"/>
<wire from="(600,280)" to="(600,300)"/>
<wire from="(600,320)" to="(600,340)"/>
<wire from="(500,230)" to="(500,320)"/>
<wire from="(380,350)" to="(420,350)"/>
<wire from="(810,440)" to="(830,440)"/>
<wire from="(810,460)" to="(830,460)"/>
<wire from="(660,310)" to="(680,310)"/>
<wire from="(350,350)" to="(380,350)"/>
<wire from="(350,230)" to="(500,230)"/>
<wire from="(500,230)" to="(640,230)"/>
<wire from="(730,430)" to="(740,430)"/>
<wire from="(730,470)" to="(740,470)"/>
<wire from="(550,280)" to="(550,420)"/>
<wire from="(690,480)" to="(740,480)"/>
<wire from="(680,430)" to="(730,430)"/>
<wire from="(550,280)" to="(600,280)"/>
<wire from="(680,310)" to="(870,310)"/>
<wire from="(380,330)" to="(380,350)"/>
<wire from="(640,360)" to="(870,360)"/>
<wire from="(590,420)" to="(690,420)"/>
<wire from="(640,330)" to="(640,360)"/>
<wire from="(810,420)" to="(810,440)"/>
<wire from="(810,460)" to="(810,480)"/>
<wire from="(570,430)" to="(680,430)"/>
<wire from="(450,350)" to="(490,350)"/>
<wire from="(600,300)" to="(620,300)"/>
<wire from="(600,320)" to="(620,320)"/>
<wire from="(700,470)" to="(730,470)"/>
<wire from="(570,340)" to="(600,340)"/>
<wire from="(640,230)" to="(640,290)"/>
<wire from="(680,430)" to="(680,490)"/>
<wire from="(690,420)" to="(690,480)"/>
<wire from="(700,410)" to="(700,470)"/>
<wire from="(860,450)" to="(870,450)"/>
<wire from="(350,280)" to="(550,280)"/>
<wire from="(730,420)" to="(740,420)"/>
<comp lib="3" loc="(660,310)" name="Adder"/>
<comp lib="1" loc="(770,480)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="3"/>
<a name="negate0" val="true"/>
</comp>
<comp lib="0" loc="(380,370)" name="Splitter">
<comp lib="0" loc="(680,400)" name="Splitter">
<a name="fanout" val="1"/>
<a name="incoming" val="8"/>
<a name="appear" val="right"/>
......@@ -1532,21 +1578,7 @@
<a name="bit6" val="none"/>
<a name="bit7" val="0"/>
</comp>
<comp lib="1" loc="(580,380)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="3"/>
<a name="negate1" val="true"/>
<a name="negate2" val="true"/>
</comp>
<comp lib="1" loc="(580,440)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="3"/>
<a name="negate0" val="true"/>
</comp>
<comp lib="1" loc="(670,410)" name="OR Gate">
<a name="size" val="30"/>
</comp>
<comp lib="0" loc="(360,380)" name="Splitter">
<comp lib="0" loc="(550,420)" name="Splitter">
<a name="fanout" val="1"/>
<a name="incoming" val="8"/>
<a name="appear" val="right"/>
......@@ -1559,7 +1591,43 @@
<a name="bit6" val="none"/>
<a name="bit7" val="0"/>
</comp>
<comp lib="0" loc="(490,360)" name="Splitter">
<comp lib="0" loc="(870,310)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="8"/>
<a name="label" val="R_out"/>
<a name="appearance" val="NewPins"/>
</comp>
<comp lib="1" loc="(770,420)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="3"/>
<a name="negate1" val="true"/>
<a name="negate2" val="true"/>
</comp>
<comp lib="0" loc="(350,230)" name="Pin">
<a name="label" val="OP_in"/>
<a name="appearance" val="NewPins"/>
</comp>
<comp lib="0" loc="(870,450)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="label" val="V_out"/>
<a name="appearance" val="NewPins"/>
</comp>
<comp lib="1" loc="(860,450)" name="OR Gate">
<a name="size" val="30"/>
</comp>
<comp lib="0" loc="(350,280)" name="Pin">
<a name="width" val="8"/>
<a name="label" val="A_in"/>
<a name="appearance" val="NewPins"/>
</comp>
<comp lib="2" loc="(520,340)" name="Multiplexer">
<a name="selloc" val="tr"/>
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
<comp lib="0" loc="(570,410)" name="Splitter">
<a name="fanout" val="1"/>
<a name="incoming" val="8"/>
<a name="appear" val="right"/>
......@@ -1572,13 +1640,18 @@
<a name="bit6" val="none"/>
<a name="bit7" val="0"/>
</comp>
<comp lib="2" loc="(330,300)" name="Multiplexer">
<a name="selloc" val="tr"/>
<comp lib="0" loc="(870,360)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="label" val="C_out"/>
<a name="appearance" val="NewPins"/>
</comp>
<comp lib="0" loc="(350,350)" name="Pin">
<a name="width" val="8"/>
<a name="enable" val="false"/>
<a name="label" val="B_in"/>
<a name="appearance" val="NewPins"/>
</comp>
<comp lib="3" loc="(470,270)" name="Adder"/>
<comp lib="1" loc="(260,310)" name="NOT Gate">
<comp lib="1" loc="(450,350)" name="NOT Gate">
<a name="width" val="8"/>
</comp>
</circuit>
......@@ -1854,10 +1927,10 @@
<wire from="(970,470)" to="(970,480)"/>
<wire from="(830,230)" to="(830,240)"/>
<wire from="(830,250)" to="(830,260)"/>
<wire from="(1220,400)" to="(1220,420)"/>
<wire from="(630,270)" to="(680,270)"/>
<wire from="(1310,350)" to="(1410,350)"/>
<wire from="(830,260)" to="(830,330)"/>
<wire from="(1030,330)" to="(1220,330)"/>
<wire from="(1160,420)" to="(1260,420)"/>
<wire from="(870,300)" to="(870,650)"/>
<wire from="(170,150)" to="(170,170)"/>
<wire from="(940,490)" to="(980,490)"/>
......@@ -1877,24 +1950,25 @@
<wire from="(860,290)" to="(950,290)"/>
<wire from="(970,170)" to="(1000,170)"/>
<wire from="(630,490)" to="(850,490)"/>
<wire from="(1240,360)" to="(1270,360)"/>
<wire from="(630,230)" to="(830,230)"/>
<wire from="(630,330)" to="(830,330)"/>
<wire from="(1090,430)" to="(1120,430)"/>
<wire from="(970,170)" to="(970,230)"/>
<wire from="(1030,270)" to="(1030,330)"/>
<wire from="(680,560)" to="(1260,560)"/>
<wire from="(970,450)" to="(980,450)"/>
<wire from="(970,470)" to="(980,470)"/>
<wire from="(170,210)" to="(370,210)"/>
<wire from="(170,310)" to="(370,310)"/>
<wire from="(50,350)" to="(50,410)"/>
<wire from="(1240,350)" to="(1260,350)"/>
<wire from="(1240,430)" to="(1260,430)"/>
<wire from="(630,430)" to="(640,430)"/>
<wire from="(840,270)" to="(840,410)"/>
<wire from="(830,260)" to="(950,260)"/>
<wire from="(830,240)" to="(950,240)"/>
<wire from="(960,510)" to="(960,520)"/>
<wire from="(1030,270)" to="(1030,340)"/>
<wire from="(650,470)" to="(970,470)"/>
<wire from="(1030,400)" to="(1220,400)"/>
<wire from="(50,410)" to="(50,490)"/>
<wire from="(50,490)" to="(50,570)"/>
<wire from="(110,510)" to="(110,590)"/>
......@@ -1908,10 +1982,9 @@
<wire from="(110,590)" to="(410,590)"/>
<wire from="(1000,170)" to="(1000,450)"/>
<wire from="(990,270)" to="(1030,270)"/>
<wire from="(1220,330)" to="(1220,340)"/>
<wire from="(640,480)" to="(940,480)"/>
<wire from="(1020,490)" to="(1260,490)"/>
<wire from="(1030,330)" to="(1030,410)"/>
<wire from="(1030,340)" to="(1270,340)"/>
<wire from="(960,520)" to="(980,520)"/>
<wire from="(960,500)" to="(980,500)"/>
<wire from="(170,170)" to="(970,170)"/>
......@@ -1923,9 +1996,9 @@
<wire from="(630,410)" to="(840,410)"/>
<wire from="(380,230)" to="(410,230)"/>
<wire from="(680,270)" to="(680,560)"/>
<wire from="(1030,410)" to="(1120,410)"/>
<wire from="(110,270)" to="(110,510)"/>
<wire from="(650,350)" to="(650,470)"/>
<wire from="(1030,340)" to="(1030,400)"/>
<wire from="(970,460)" to="(980,460)"/>
<wire from="(970,480)" to="(980,480)"/>
<wire from="(110,150)" to="(110,270)"/>
......@@ -1943,24 +2016,12 @@
<a name="label" val="A_in"/>
<a name="appearance" val="NewPins"/>
</comp>
<comp lib="0" loc="(1260,420)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="label" val="Z"/>
<a name="appearance" val="NewPins"/>
</comp>
<comp lib="0" loc="(1260,490)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="label" val="C"/>
<a name="appearance" val="NewPins"/>
</comp>
<comp lib="0" loc="(1260,350)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="label" val="N"/>
<a name="appearance" val="NewPins"/>
</comp>
<comp lib="0" loc="(110,150)" name="Pin">
<a name="facing" val="south"/>
<a name="width" val="8"/>
......@@ -1982,10 +2043,6 @@
</comp>
<comp loc="(630,330)" name="ALU_SHIFT"/>
<comp loc="(630,570)" name="ALU_OR"/>
<comp lib="0" loc="(1090,430)" name="Constant">
<a name="width" val="8"/>
<a name="value" val="0x0"/>
</comp>
<comp lib="0" loc="(370,310)" name="Splitter">
<a name="facing" val="south"/>
<a name="fanout" val="1"/>
......@@ -1994,7 +2051,6 @@
<a name="bit2" val="none"/>
</comp>
<comp lib="0" loc="(960,530)" name="Ground"/>
<comp lib="3" loc="(1160,420)" name="Comparator"/>
<comp lib="2" loc="(1020,490)" name="Multiplexer">
<a name="selloc" val="tr"/>
<a name="select" val="3"/>
......@@ -2007,7 +2063,23 @@
<a name="bit1" val="none"/>
<a name="bit2" val="none"/>
</comp>
<comp lib="0" loc="(1220,340)" name="Splitter">
<comp loc="(630,410)" name="ALU_SHIFT_SIGNED"/>
<comp lib="2" loc="(990,270)" name="Multiplexer">
<a name="selloc" val="tr"/>
<a name="select" val="3"/>
<a name="width" val="8"/>
<a name="enable" val="false"/>
</comp>
<comp loc="(630,490)" name="ALU_AND"/>
<comp loc="(630,650)" name="ALU_NOT"/>
<comp loc="(630,230)" name="ALU_ADD_SOUS"/>
<comp lib="0" loc="(1260,430)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="label" val="N"/>
<a name="appearance" val="NewPins"/>
</comp>
<comp lib="0" loc="(1220,420)" name="Splitter">
<a name="fanout" val="1"/>
<a name="incoming" val="8"/>
<a name="appear" val="right"/>
......@@ -2020,16 +2092,17 @@
<a name="bit6" val="none"/>
<a name="bit7" val="0"/>
</comp>
<comp loc="(630,410)" name="ALU_SHIFT_SIGNED"/>
<comp lib="2" loc="(990,270)" name="Multiplexer">
<a name="selloc" val="tr"/>
<a name="select" val="3"/>
<comp lib="3" loc="(1310,350)" name="Comparator"/>
<comp lib="0" loc="(1410,350)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="label" val="Z"/>
<a name="appearance" val="NewPins"/>
</comp>
<comp lib="0" loc="(1240,360)" name="Constant">
<a name="width" val="8"/>
<a name="enable" val="false"/>
<a name="value" val="0x0"/>
</comp>
<comp loc="(630,490)" name="ALU_AND"/>
<comp loc="(630,650)" name="ALU_NOT"/>
<comp loc="(630,230)" name="ALU_ADD_SOUS"/>
</circuit>
<circuit name="CPU_RL">
<a name="circuit" val="CPU_RL"/>
......@@ -2049,10 +2122,10 @@
<rect height="4" stroke="none" width="10" x="180" y="58"/>
<text dominant-baseline="alphabetic" fill="#404040" font-family="Courier 10 Pitch" font-size="12" text-anchor="end" x="175" y="64">REG_L</text>
<circ-port height="10" pin="870,210" width="10" x="185" y="55"/>
<circ-port height="8" pin="730,250" width="8" x="46" y="76"/>
<rect height="19" stroke="none" width="120" x="60" y="110"/>
<circ-port height="8" pin="610,200" width="8" x="46" y="56"/>
<circ-port height="8" pin="790,300" width="8" x="46" y="96"/>
<circ-port height="8" pin="610,200" width="8" x="46" y="56"/>
<circ-port height="8" pin="730,250" width="8" x="46" y="76"/>
<rect fill="none" height="79" stroke="#000000" stroke-width="2" width="120" x="60" y="50"/>
<text dominant-baseline="alphabetic" fill="#ffffff" font-family="Courier 10 Pitch" font-size="14" font-weight="bold" text-anchor="middle" x="121" y="123">CPU_RL</text>
<visible-register height="10" path="/Register(760,180)" stroke-width="0" width="6" x="160" y="70"/>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment