diff --git a/CPU/CPU.circ b/CPU/CPU.circ index d5644a98f2465966aa703cc12236cfdc19ebc0f3..3eace0bf82dc16963c995b07d47f2f8bd0eaca98 100644 --- a/CPU/CPU.circ +++ b/CPU/CPU.circ @@ -1,16 +1,11 @@ <?xml version="1.0" encoding="UTF-8" standalone="no"?> -<project source="3.0.0" version="1.0"> - This file is intended to be loaded by Logisim-evolution (https://github.com/reds-heig/logisim-evolution). +<project source="3.7.2" version="1.0"> + This file is intended to be loaded by Logisim-evolution v3.7.2(https://github.com/logisim-evolution/). <lib desc="#Wiring" name="0"> <tool name="Splitter"> - <a name="facing" val="north"/> - </tool> - <tool name="Pin"> - <a name="appearance" val="NewPins"/> - </tool> - <tool name="Probe"> - <a name="appearance" val="NewPins"/> + <a name="fanout" val="32"/> + <a name="incoming" val="32"/> </tool> <tool name="Tunnel"> <a name="facing" val="east"/> @@ -21,54 +16,13 @@ <a name="facing" val="north"/> </tool> </lib> - <lib desc="#Plexers" name="2"> - <tool name="Multiplexer"> - <a name="enable" val="false"/> - </tool> - <tool name="Demultiplexer"> - <a name="enable" val="false"/> - </tool> - </lib> + <lib desc="#Plexers" name="2"/> <lib desc="#Arithmetic" name="3"/> - <lib desc="#Memory" name="4"> - <tool name="D Flip-Flop"> - <a name="appearance" val="logisim_evolution"/> - </tool> - <tool name="T Flip-Flop"> - <a name="appearance" val="logisim_evolution"/> - </tool> - <tool name="J-K Flip-Flop"> - <a name="appearance" val="logisim_evolution"/> - </tool> - <tool name="S-R Flip-Flop"> - <a name="appearance" val="logisim_evolution"/> - </tool> - <tool name="Counter"> - <a name="appearance" val="logisim_evolution"/> - </tool> - <tool name="Shift Register"> - <a name="appearance" val="logisim_evolution"/> - </tool> - <tool name="Random"> - <a name="appearance" val="logisim_evolution"/> - </tool> - <tool name="RAM"> - <a name="appearance" val="logisim_evolution"/> - </tool> - <tool name="ROM"> - <a name="contents">addr/data: 8 8 -0 -</a> - <a name="appearance" val="logisim_evolution"/> - </tool> - </lib> + <lib desc="#Memory" name="4"/> <lib desc="#I/O" name="5"/> <lib desc="#Base" name="6"> <tool name="Text Tool"> - <a name="text" val=""/> <a name="font" val="SansSerif plain 12"/> - <a name="halign" val="center"/> - <a name="valign" val="base"/> </tool> </lib> <main name="TOP"/> @@ -76,7 +30,6 @@ <a name="gateUndefined" val="ignore"/> <a name="simlimit" val="1000"/> <a name="simrand" val="0"/> - <a name="tickmain" val="half_period"/> </options> <mappings> <tool lib="6" map="Button2" name="Menu Tool"/> @@ -87,256 +40,31 @@ <tool lib="6" name="Poke Tool"/> <tool lib="6" name="Edit Tool"/> <tool lib="6" name="Text Tool"> - <a name="text" val=""/> <a name="font" val="SansSerif plain 12"/> - <a name="halign" val="center"/> - <a name="valign" val="base"/> </tool> <sep/> - <tool lib="0" name="Pin"> - <a name="appearance" val="NewPins"/> - </tool> + <tool lib="0" name="Pin"/> <tool lib="0" name="Pin"> <a name="facing" val="west"/> <a name="output" val="true"/> - <a name="appearance" val="NewPins"/> </tool> <tool lib="1" name="NOT Gate"/> <tool lib="1" name="AND Gate"/> <tool lib="1" name="OR Gate"/> </toolbar> <circuit name="CPU"> - <a name="circuit" val="CPU"/> - <a name="clabel" val=""/> - <a name="clabelup" val="east"/> - <a name="clabelfont" val="SansSerif bold 16"/> <a name="appearance" val="logisim_evolution"/> + <a name="circuit" val="CPU"/> <a name="circuitnamedboxfixedsize" val="true"/> - <a name="circuitvhdlpath" val=""/> - <wire from="(1500,300)" to="(1500,320)"/> - <wire from="(530,350)" to="(530,490)"/> - <wire from="(1880,760)" to="(1880,780)"/> - <wire from="(970,1280)" to="(1030,1280)"/> - <wire from="(1480,930)" to="(1520,930)"/> - <wire from="(310,630)" to="(310,640)"/> - <wire from="(500,400)" to="(670,400)"/> - <wire from="(730,520)" to="(730,610)"/> - <wire from="(830,430)" to="(830,460)"/> - <wire from="(1060,1290)" to="(1120,1290)"/> - <wire from="(800,1290)" to="(840,1290)"/> - <wire from="(1270,630)" to="(1270,640)"/> - <wire from="(270,670)" to="(270,700)"/> - <wire from="(1130,650)" to="(1130,660)"/> - <wire from="(1400,920)" to="(1450,920)"/> - <wire from="(810,1000)" to="(830,1000)"/> - <wire from="(810,920)" to="(830,920)"/> - <wire from="(1520,880)" to="(1520,930)"/> - <wire from="(410,680)" to="(430,680)"/> - <wire from="(1740,260)" to="(1750,260)"/> - <wire from="(1130,570)" to="(1130,630)"/> - <wire from="(870,1100)" to="(1030,1100)"/> - <wire from="(2220,300)" to="(2220,320)"/> - <wire from="(1700,690)" to="(1720,690)"/> - <wire from="(1750,260)" to="(1770,260)"/> - <wire from="(1820,720)" to="(1850,720)"/> - <wire from="(1490,160)" to="(1510,160)"/> - <wire from="(1490,240)" to="(1510,240)"/> - <wire from="(1030,1140)" to="(1050,1140)"/> - <wire from="(980,1190)" to="(1030,1190)"/> - <wire from="(1490,180)" to="(1490,200)"/> - <wire from="(1490,260)" to="(1490,280)"/> - <wire from="(870,1480)" to="(920,1480)"/> - <wire from="(240,450)" to="(240,460)"/> - <wire from="(990,630)" to="(1050,630)"/> - <wire from="(2220,300)" to="(2240,300)"/> - <wire from="(1030,1160)" to="(1030,1190)"/> - <wire from="(270,430)" to="(270,510)"/> - <wire from="(790,1170)" to="(830,1170)"/> - <wire from="(450,330)" to="(560,330)"/> - <wire from="(2210,300)" to="(2220,300)"/> - <wire from="(600,630)" to="(770,630)"/> - <wire from="(790,1190)" to="(810,1190)"/> - <wire from="(670,340)" to="(700,340)"/> - <wire from="(740,650)" to="(770,650)"/> - <wire from="(740,730)" to="(770,730)"/> - <wire from="(440,1160)" to="(460,1160)"/> - <wire from="(710,370)" to="(800,370)"/> - <wire from="(860,370)" to="(890,370)"/> - <wire from="(870,940)" to="(900,940)"/> - <wire from="(370,190)" to="(510,190)"/> - <wire from="(260,430)" to="(270,430)"/> - <wire from="(810,1200)" to="(940,1200)"/> - <wire from="(1740,300)" to="(1760,300)"/> - <wire from="(1400,670)" to="(1430,670)"/> - <wire from="(1490,850)" to="(1510,850)"/> - <wire from="(1090,690)" to="(1110,690)"/> - <wire from="(670,360)" to="(680,360)"/> - <wire from="(1460,310)" to="(1460,350)"/> - <wire from="(1760,590)" to="(1800,590)"/> - <wire from="(1030,470)" to="(1030,610)"/> - <wire from="(580,600)" to="(580,610)"/> - <wire from="(1420,320)" to="(1420,350)"/> - <wire from="(530,490)" to="(890,490)"/> - <wire from="(480,420)" to="(480,440)"/> - <wire from="(1210,540)" to="(1210,610)"/> - <wire from="(800,1310)" to="(840,1310)"/> - <wire from="(870,1300)" to="(910,1300)"/> - <wire from="(800,1280)" to="(970,1280)"/> - <wire from="(1400,940)" to="(1450,940)"/> - <wire from="(690,390)" to="(690,410)"/> - <wire from="(1480,180)" to="(1490,180)"/> - <wire from="(1480,260)" to="(1490,260)"/> - <wire from="(810,1020)" to="(830,1020)"/> - <wire from="(810,940)" to="(830,940)"/> - <wire from="(960,1300)" to="(960,1340)"/> - <wire from="(250,700)" to="(270,700)"/> - <wire from="(1460,350)" to="(1720,350)"/> - <wire from="(1760,300)" to="(1770,300)"/> - <wire from="(1200,660)" to="(1200,720)"/> - <wire from="(210,420)" to="(230,420)"/> - <wire from="(890,370)" to="(920,370)"/> - <wire from="(1720,350)" to="(2000,350)"/> - <wire from="(1540,860)" to="(1570,860)"/> - <wire from="(1700,630)" to="(1720,630)"/> - <wire from="(1750,280)" to="(1770,280)"/> - <wire from="(200,550)" to="(340,550)"/> - <wire from="(1820,740)" to="(1850,740)"/> - <wire from="(1490,180)" to="(1510,180)"/> - <wire from="(1430,1000)" to="(1450,1000)"/> - <wire from="(1490,260)" to="(1510,260)"/> - <wire from="(1030,1160)" to="(1050,1160)"/> - <wire from="(2020,300)" to="(2050,300)"/> - <wire from="(560,620)" to="(570,620)"/> - <wire from="(910,1300)" to="(960,1300)"/> - <wire from="(230,610)" to="(290,610)"/> - <wire from="(1470,1060)" to="(1570,1060)"/> - <wire from="(360,520)" to="(730,520)"/> - <wire from="(1050,480)" to="(1150,480)"/> - <wire from="(2220,320)" to="(2240,320)"/> - <wire from="(1750,220)" to="(1750,240)"/> - <wire from="(910,1300)" to="(910,1330)"/> - <wire from="(1130,630)" to="(1190,630)"/> - <wire from="(1140,720)" to="(1200,720)"/> - <wire from="(2000,350)" to="(2190,350)"/> - <wire from="(670,340)" to="(670,360)"/> - <wire from="(810,1390)" to="(830,1390)"/> - <wire from="(810,1470)" to="(830,1470)"/> - <wire from="(970,1280)" to="(970,1320)"/> - <wire from="(440,1180)" to="(460,1180)"/> - <wire from="(450,390)" to="(470,390)"/> - <wire from="(960,1300)" to="(1030,1300)"/> - <wire from="(2000,310)" to="(2000,350)"/> - <wire from="(1030,1100)" to="(1030,1140)"/> - <wire from="(230,650)" to="(300,650)"/> - <wire from="(1480,300)" to="(1500,300)"/> - <wire from="(1490,870)" to="(1510,870)"/> - <wire from="(1090,710)" to="(1110,710)"/> - <wire from="(670,380)" to="(680,380)"/> - <wire from="(1760,610)" to="(1800,610)"/> - <wire from="(2190,310)" to="(2190,350)"/> - <wire from="(1420,350)" to="(1460,350)"/> - <wire from="(340,540)" to="(340,550)"/> - <wire from="(740,1270)" to="(780,1270)"/> - <wire from="(1060,1330)" to="(1120,1330)"/> - <wire from="(1150,470)" to="(1150,480)"/> - <wire from="(1700,610)" to="(1760,610)"/> - <wire from="(1050,630)" to="(1130,630)"/> - <wire from="(1500,300)" to="(1510,300)"/> - <wire from="(530,350)" to="(560,350)"/> - <wire from="(1740,220)" to="(1750,220)"/> - <wire from="(1760,320)" to="(1770,320)"/> - <wire from="(150,540)" to="(170,540)"/> - <wire from="(210,440)" to="(230,440)"/> - <wire from="(370,170)" to="(520,170)"/> - <wire from="(870,1010)" to="(900,1010)"/> - <wire from="(1910,700)" to="(1930,700)"/> - <wire from="(2220,260)" to="(2220,280)"/> - <wire from="(1700,650)" to="(1720,650)"/> - <wire from="(1750,220)" to="(1770,220)"/> - <wire from="(1400,350)" to="(1420,350)"/> - <wire from="(1490,200)" to="(1510,200)"/> - <wire from="(1490,280)" to="(1510,280)"/> - <wire from="(790,390)" to="(800,390)"/> - <wire from="(1080,1150)" to="(1100,1150)"/> - <wire from="(1160,350)" to="(1180,350)"/> - <wire from="(560,640)" to="(570,640)"/> - <wire from="(270,510)" to="(330,510)"/> - <wire from="(1490,140)" to="(1490,160)"/> - <wire from="(1490,220)" to="(1490,240)"/> - <wire from="(1030,610)" to="(1210,610)"/> - <wire from="(1050,480)" to="(1050,630)"/> - <wire from="(1740,700)" to="(1850,700)"/> - <wire from="(230,720)" to="(230,730)"/> - <wire from="(440,690)" to="(440,700)"/> - <wire from="(2220,260)" to="(2240,260)"/> - <wire from="(800,1300)" to="(840,1300)"/> - <wire from="(1130,650)" to="(1190,650)"/> - <wire from="(2210,260)" to="(2220,260)"/> - <wire from="(990,610)" to="(1030,610)"/> - <wire from="(330,660)" to="(430,660)"/> - <wire from="(810,1090)" to="(830,1090)"/> - <wire from="(810,1410)" to="(830,1410)"/> - <wire from="(810,1490)" to="(830,1490)"/> - <wire from="(810,850)" to="(830,850)"/> - <wire from="(560,600)" to="(580,600)"/> - <wire from="(1100,670)" to="(1110,670)"/> - <wire from="(740,690)" to="(770,690)"/> - <wire from="(440,1120)" to="(460,1120)"/> - <wire from="(450,410)" to="(470,410)"/> - <wire from="(1460,1020)" to="(1530,1020)"/> - <wire from="(110,710)" to="(130,710)"/> - <wire from="(890,370)" to="(890,490)"/> - <wire from="(1090,730)" to="(1110,730)"/> - <wire from="(1270,630)" to="(1480,630)"/> - <wire from="(810,1190)" to="(810,1200)"/> - <wire from="(870,1400)" to="(930,1400)"/> - <wire from="(1760,300)" to="(1760,320)"/> - <wire from="(1220,640)" to="(1270,640)"/> - <wire from="(1210,610)" to="(1480,610)"/> - <wire from="(1480,140)" to="(1490,140)"/> - <wire from="(1480,220)" to="(1490,220)"/> - <wire from="(1500,320)" to="(1510,320)"/> - <wire from="(270,670)" to="(300,670)"/> - <wire from="(150,560)" to="(170,560)"/> - <wire from="(870,870)" to="(900,870)"/> - <wire from="(1450,650)" to="(1480,650)"/> - <wire from="(210,710)" to="(220,710)"/> - <wire from="(1700,670)" to="(1720,670)"/> - <wire from="(1750,240)" to="(1770,240)"/> - <wire from="(1490,140)" to="(1510,140)"/> - <wire from="(1490,220)" to="(1510,220)"/> - <wire from="(790,410)" to="(800,410)"/> - <wire from="(440,210)" to="(510,210)"/> - <wire from="(860,1180)" to="(940,1180)"/> - <wire from="(970,1320)" to="(1020,1320)"/> - <wire from="(2220,280)" to="(2240,280)"/> - <wire from="(460,670)" to="(770,670)"/> - <wire from="(1750,260)" to="(1750,280)"/> - <wire from="(1760,590)" to="(1760,610)"/> - <wire from="(730,610)" to="(770,610)"/> - <wire from="(670,380)" to="(670,400)"/> - <wire from="(810,1110)" to="(830,1110)"/> - <wire from="(810,1190)" to="(830,1190)"/> - <wire from="(810,870)" to="(830,870)"/> - <wire from="(940,360)" to="(960,360)"/> - <wire from="(310,530)" to="(330,530)"/> - <wire from="(740,710)" to="(770,710)"/> - <wire from="(440,1140)" to="(460,1140)"/> - <wire from="(1720,310)" to="(1720,350)"/> - <wire from="(600,340)" to="(670,340)"/> - <wire from="(1470,1040)" to="(1500,1040)"/> - <wire from="(960,1340)" to="(1030,1340)"/> - <wire from="(1390,320)" to="(1420,320)"/> - <wire from="(150,690)" to="(220,690)"/> <comp lib="0" loc="(1030,470)" name="Probe"> - <a name="facing" val="south"/> <a name="appearance" val="NewPins"/> + <a name="facing" val="south"/> </comp> <comp lib="0" loc="(1090,690)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="6"/> <a name="label" val="OFFSET"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="6"/> </comp> <comp lib="0" loc="(1090,710)" name="Tunnel"> <a name="facing" val="east"/> @@ -350,17 +78,17 @@ </comp> <comp lib="0" loc="(110,710)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="16"/> <a name="label" val="INSTRUCTION"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="16"/> </comp> <comp lib="0" loc="(1100,1150)" name="Tunnel"> <a name="label" val="EN_COND_JUMP"/> <a name="labelfont" val="SansSerif bold 8"/> </comp> <comp lib="0" loc="(1100,670)" name="Constant"> - <a name="width" val="2"/> <a name="value" val="0x0"/> + <a name="width" val="2"/> </comp> <comp lib="0" loc="(1120,1290)" name="Tunnel"> <a name="label" val="EN_BR"/> @@ -372,14 +100,11 @@ </comp> <comp lib="0" loc="(1130,570)" name="Tunnel"> <a name="facing" val="south"/> - <a name="width" val="8"/> <a name="label" val="CPU_REG_BANK_OUT_B"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(1130,660)" name="Splitter"> - <a name="facing" val="west"/> - <a name="incoming" val="8"/> - <a name="spacing" val="2"/> <a name="bit1" val="0"/> <a name="bit2" val="1"/> <a name="bit3" val="1"/> @@ -387,25 +112,33 @@ <a name="bit5" val="1"/> <a name="bit6" val="1"/> <a name="bit7" val="1"/> + <a name="facing" val="west"/> + <a name="incoming" val="8"/> + <a name="spacing" val="2"/> </comp> <comp lib="0" loc="(1150,470)" name="Probe"> - <a name="facing" val="south"/> <a name="appearance" val="NewPins"/> + <a name="facing" val="south"/> </comp> <comp lib="0" loc="(1160,350)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="7"/> <a name="label" val="PC"/> + <a name="width" val="7"/> </comp> <comp lib="0" loc="(1210,540)" name="Tunnel"> <a name="facing" val="south"/> - <a name="width" val="8"/> <a name="label" val="CPU_REG_BANK_OUT_A"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(130,710)" name="Splitter"> - <a name="incoming" val="16"/> <a name="bit1" val="0"/> + <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"/> <a name="bit2" val="0"/> <a name="bit3" val="0"/> <a name="bit4" val="0"/> @@ -414,24 +147,19 @@ <a name="bit7" val="0"/> <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"/> + <a name="incoming" val="16"/> </comp> <comp lib="0" loc="(1390,320)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="16"/> <a name="label" val="INSTRUCTION"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="16"/> </comp> <comp lib="0" loc="(1400,670)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="4"/> <a name="label" val="OP_CODE"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(1400,920)" name="Tunnel"> <a name="facing" val="east"/> @@ -445,20 +173,17 @@ </comp> <comp lib="0" loc="(1430,1000)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="RES_ALU"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(1430,670)" name="Splitter"> - <a name="incoming" val="4"/> <a name="bit1" val="0"/> <a name="bit2" val="0"/> <a name="bit3" val="1"/> + <a name="incoming" val="4"/> </comp> <comp lib="0" loc="(1450,1000)" name="Splitter"> - <a name="facing" val="south"/> - <a name="fanout" val="1"/> - <a name="incoming" val="8"/> <a name="bit1" val="0"/> <a name="bit2" val="0"/> <a name="bit3" val="0"/> @@ -466,12 +191,18 @@ <a name="bit5" val="none"/> <a name="bit6" val="none"/> <a name="bit7" val="none"/> + <a name="facing" val="south"/> + <a name="fanout" val="1"/> + <a name="incoming" val="8"/> </comp> <comp lib="0" loc="(1460,310)" name="Splitter"> - <a name="fanout" val="5"/> - <a name="incoming" val="16"/> - <a name="spacing" val="4"/> <a name="bit1" val="0"/> + <a name="bit10" val="3"/> + <a name="bit11" val="3"/> + <a name="bit12" val="4"/> + <a name="bit13" val="4"/> + <a name="bit14" val="4"/> + <a name="bit15" val="4"/> <a name="bit2" val="0"/> <a name="bit3" val="1"/> <a name="bit4" val="1"/> @@ -480,18 +211,15 @@ <a name="bit7" val="2"/> <a name="bit8" val="2"/> <a name="bit9" val="3"/> - <a name="bit10" val="3"/> - <a name="bit11" val="3"/> - <a name="bit12" val="4"/> - <a name="bit13" val="4"/> - <a name="bit14" val="4"/> - <a name="bit15" val="4"/> + <a name="fanout" val="5"/> + <a name="incoming" val="16"/> + <a name="spacing" val="4"/> </comp> <comp lib="0" loc="(1470,1040)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="CPU_REG_BANK_OUT_B"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(1470,1060)" name="Tunnel"> <a name="facing" val="east"/> @@ -503,9 +231,9 @@ </comp> <comp lib="0" loc="(1490,870)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="INSTR_TO_JUMP"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(150,540)" name="Tunnel"> <a name="facing" val="east"/> @@ -518,80 +246,83 @@ <a name="labelfont" val="SansSerif bold 8"/> </comp> <comp lib="0" loc="(1500,1040)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> + <a name="label" val="RAM_DATA_WR"/> <a name="output" val="true"/> <a name="width" val="8"/> - <a name="label" val="RAM_DATA_WR"/> - <a name="appearance" val="NewPins"/> </comp> <comp lib="0" loc="(1510,140)" name="Tunnel"> - <a name="width" val="3"/> <a name="label" val="RESERVED"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="3"/> </comp> <comp lib="0" loc="(1510,160)" name="Probe"> - <a name="facing" val="west"/> <a name="appearance" val="NewPins"/> + <a name="facing" val="west"/> </comp> <comp lib="0" loc="(1510,180)" name="Tunnel"> - <a name="width" val="3"/> <a name="label" val="SOURCE_1"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="3"/> </comp> <comp lib="0" loc="(1510,200)" name="Probe"> - <a name="facing" val="west"/> <a name="appearance" val="NewPins"/> + <a name="facing" val="west"/> </comp> <comp lib="0" loc="(1510,220)" name="Tunnel"> - <a name="width" val="3"/> <a name="label" val="SOURCE_0"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="3"/> </comp> <comp lib="0" loc="(1510,240)" name="Probe"> - <a name="facing" val="west"/> <a name="appearance" val="NewPins"/> + <a name="facing" val="west"/> </comp> <comp lib="0" loc="(1510,260)" name="Tunnel"> - <a name="width" val="3"/> <a name="label" val="RESULT"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="3"/> </comp> <comp lib="0" loc="(1510,280)" name="Probe"> - <a name="facing" val="west"/> <a name="appearance" val="NewPins"/> + <a name="facing" val="west"/> </comp> <comp lib="0" loc="(1510,300)" name="Tunnel"> - <a name="width" val="4"/> <a name="label" val="OP_CODE"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(1510,320)" name="Probe"> - <a name="facing" val="west"/> <a name="appearance" val="NewPins"/> + <a name="facing" val="west"/> </comp> <comp lib="0" loc="(1530,1020)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> + <a name="label" val="RAM_ADDR"/> <a name="output" val="true"/> <a name="width" val="5"/> - <a name="label" val="RAM_ADDR"/> - <a name="appearance" val="NewPins"/> </comp> <comp lib="0" loc="(1570,1060)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> - <a name="output" val="true"/> <a name="label" val="RAM_EN_WR"/> - <a name="appearance" val="NewPins"/> + <a name="output" val="true"/> </comp> <comp lib="0" loc="(1570,860)" name="Tunnel"> - <a name="width" val="8"/> <a name="label" val="INC_PC"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(1720,310)" name="Splitter"> - <a name="fanout" val="3"/> - <a name="incoming" val="16"/> - <a name="spacing" val="4"/> <a name="bit1" val="0"/> + <a name="bit10" val="1"/> + <a name="bit11" val="1"/> + <a name="bit12" val="2"/> + <a name="bit13" val="2"/> + <a name="bit14" val="2"/> + <a name="bit15" val="2"/> <a name="bit2" val="0"/> <a name="bit3" val="0"/> <a name="bit4" val="0"/> @@ -600,59 +331,56 @@ <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="2"/> - <a name="bit13" val="2"/> - <a name="bit14" val="2"/> - <a name="bit15" val="2"/> + <a name="fanout" val="3"/> + <a name="incoming" val="16"/> + <a name="spacing" val="4"/> </comp> <comp lib="0" loc="(1740,700)" name="Splitter"> - <a name="facing" val="west"/> - <a name="fanout" val="4"/> - <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"/> + <a name="facing" val="west"/> + <a name="fanout" val="4"/> + <a name="incoming" val="4"/> + <a name="spacing" val="2"/> </comp> <comp lib="0" loc="(1770,220)" name="Tunnel"> - <a name="width" val="8"/> <a name="label" val="INSTR_TO_JUMP"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(1770,240)" name="Probe"> - <a name="facing" val="west"/> <a name="appearance" val="NewPins"/> + <a name="facing" val="west"/> </comp> <comp lib="0" loc="(1770,260)" name="Tunnel"> - <a name="width" val="4"/> <a name="label" val="FLAGS_CONDITION"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(1770,280)" name="Probe"> - <a name="facing" val="west"/> <a name="appearance" val="NewPins"/> + <a name="facing" val="west"/> </comp> <comp lib="0" loc="(1770,300)" name="Tunnel"> - <a name="width" val="4"/> <a name="label" val="OP_CODE"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(1770,320)" name="Probe"> - <a name="facing" val="west"/> <a name="appearance" val="NewPins"/> + <a name="facing" val="west"/> </comp> <comp lib="0" loc="(1800,590)" name="Probe"> - <a name="facing" val="west"/> <a name="appearance" val="NewPins"/> + <a name="facing" val="west"/> </comp> <comp lib="0" loc="(1800,610)" name="Tunnel"> - <a name="width" val="8"/> <a name="label" val="RES_ALU"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(1820,720)" name="Tunnel"> <a name="facing" val="east"/> @@ -670,16 +398,19 @@ <a name="labelfont" val="SansSerif bold 8"/> </comp> <comp lib="0" loc="(1930,700)" name="Tunnel"> - <a name="width" val="4"/> <a name="label" val="LAST_FLAGS"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(2000,310)" name="Splitter"> - <a name="fanout" val="1"/> - <a name="incoming" val="16"/> - <a name="spacing" val="4"/> <a name="bit0" val="none"/> <a name="bit1" val="none"/> + <a name="bit10" val="0"/> + <a name="bit11" val="0"/> + <a name="bit12" val="none"/> + <a name="bit13" val="none"/> + <a name="bit14" val="none"/> + <a name="bit15" val="none"/> <a name="bit2" val="none"/> <a name="bit3" val="none"/> <a name="bit4" val="none"/> @@ -688,40 +419,41 @@ <a name="bit7" val="none"/> <a name="bit8" val="none"/> <a name="bit9" val="0"/> - <a name="bit10" val="0"/> - <a name="bit11" val="0"/> - <a name="bit12" val="none"/> - <a name="bit13" val="none"/> - <a name="bit14" val="none"/> - <a name="bit15" val="none"/> + <a name="fanout" val="1"/> + <a name="incoming" val="16"/> + <a name="spacing" val="4"/> </comp> <comp lib="0" loc="(2050,300)" name="Tunnel"> - <a name="width" val="3"/> <a name="label" val="ADDR_RL"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="3"/> </comp> <comp lib="0" loc="(210,420)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="3"/> <a name="label" val="SOURCE_0"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="3"/> </comp> <comp lib="0" loc="(210,440)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="3"/> <a name="label" val="ADDR_RL"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="3"/> </comp> <comp lib="0" loc="(210,710)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="PC_1"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(2190,310)" name="Splitter"> - <a name="incoming" val="16"/> - <a name="spacing" val="4"/> <a name="bit1" val="0"/> + <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"/> <a name="bit2" val="0"/> <a name="bit3" val="0"/> <a name="bit4" val="0"/> @@ -730,42 +462,38 @@ <a name="bit7" val="1"/> <a name="bit8" val="1"/> <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"/> + <a name="incoming" val="16"/> + <a name="spacing" val="4"/> </comp> <comp lib="0" loc="(2240,260)" name="Tunnel"> - <a name="width" val="6"/> <a name="label" val="OFFSET"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="6"/> </comp> <comp lib="0" loc="(2240,280)" name="Probe"> - <a name="facing" val="west"/> <a name="appearance" val="NewPins"/> + <a name="facing" val="west"/> </comp> <comp lib="0" loc="(2240,300)" name="Tunnel"> - <a name="width" val="3"/> <a name="label" val="ADD_POINTER"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="3"/> </comp> <comp lib="0" loc="(2240,320)" name="Probe"> - <a name="facing" val="west"/> <a name="appearance" val="NewPins"/> + <a name="facing" val="west"/> </comp> <comp lib="0" loc="(230,610)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="4"/> <a name="label" val="OP_CODE"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(230,650)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="RES_ALU"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(230,730)" name="Tunnel"> <a name="facing" val="north"/> @@ -778,52 +506,52 @@ <a name="labelfont" val="SansSerif bold 8"/> </comp> <comp lib="0" loc="(290,610)" name="Splitter"> - <a name="facing" val="south"/> - <a name="incoming" val="4"/> <a name="bit0" val="1"/> <a name="bit2" val="1"/> <a name="bit3" val="0"/> + <a name="facing" val="south"/> + <a name="incoming" val="4"/> </comp> <comp lib="0" loc="(310,530)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="3"/> <a name="label" val="ADD_POINTER"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="3"/> </comp> <comp lib="0" loc="(370,170)" name="Pin"> - <a name="label" val="CLK"/> <a name="appearance" val="NewPins"/> + <a name="label" val="CLK"/> </comp> <comp lib="0" loc="(370,190)" name="Pin"> - <a name="label" val="RESET"/> <a name="appearance" val="NewPins"/> + <a name="label" val="RESET"/> </comp> <comp lib="0" loc="(410,680)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="RAM_OUT"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(440,1120)" name="Constant"> - <a name="width" val="4"/> <a name="value" val="0xb"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(440,1140)" name="Constant"> - <a name="width" val="4"/> <a name="value" val="0xa"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(440,1160)" name="Constant"> - <a name="width" val="4"/> <a name="value" val="0xc"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(440,1180)" name="Constant"> - <a name="width" val="4"/> <a name="value" val="0xd"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(440,210)" name="Pin"> - <a name="width" val="8"/> - <a name="label" val="WB_RAM"/> <a name="appearance" val="NewPins"/> + <a name="label" val="WB_RAM"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(440,700)" name="Tunnel"> <a name="facing" val="north"/> @@ -832,41 +560,41 @@ </comp> <comp lib="0" loc="(450,330)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="INC_PC"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(450,390)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="CPU_REG_BANK_OUT_A"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(450,410)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="INSTR_TO_JUMP"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(460,1120)" name="Tunnel"> - <a name="width" val="4"/> <a name="label" val="INSTR_INCOND_JUMP"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(460,1140)" name="Tunnel"> - <a name="width" val="4"/> <a name="label" val="INSTR_COND_JUMP"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(460,1160)" name="Tunnel"> - <a name="width" val="4"/> <a name="label" val="INSTR_LOAD"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(460,1180)" name="Tunnel"> - <a name="width" val="4"/> <a name="label" val="INSTR_STORE"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(480,440)" name="Tunnel"> <a name="facing" val="north"/> @@ -878,9 +606,9 @@ <a name="labelfont" val="SansSerif bold 8"/> </comp> <comp lib="0" loc="(510,210)" name="Tunnel"> - <a name="width" val="8"/> <a name="label" val="RAM_OUT"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(520,170)" name="Tunnel"> <a name="label" val="CLK"/> @@ -893,15 +621,15 @@ </comp> <comp lib="0" loc="(560,620)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="3"/> <a name="label" val="SOURCE_1"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="3"/> </comp> <comp lib="0" loc="(560,640)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="3"/> <a name="label" val="RESULT"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="3"/> </comp> <comp lib="0" loc="(690,410)" name="Tunnel"> <a name="facing" val="north"/> @@ -909,21 +637,21 @@ <a name="labelfont" val="SansSerif bold 8"/> </comp> <comp lib="0" loc="(700,340)" name="Tunnel"> - <a name="width" val="8"/> <a name="label" val="PC_1"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(740,1270)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="4"/> <a name="label" val="OP_CODE"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(740,650)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="3"/> <a name="label" val="RESULT"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="3"/> </comp> <comp lib="0" loc="(740,690)" name="Tunnel"> <a name="facing" val="east"/> @@ -941,21 +669,21 @@ <a name="labelfont" val="SansSerif bold 8"/> </comp> <comp lib="0" loc="(780,1270)" name="Splitter"> + <a name="appear" val="right"/> <a name="fanout" val="4"/> <a name="incoming" val="4"/> - <a name="appear" val="right"/> </comp> <comp lib="0" loc="(790,1170)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="4"/> <a name="label" val="LAST_FLAGS"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(790,1190)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="4"/> <a name="label" val="FLAGS_CONDITION"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(790,390)" name="Constant"/> <comp lib="0" loc="(790,410)" name="Tunnel"> @@ -965,71 +693,71 @@ </comp> <comp lib="0" loc="(810,1000)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="4"/> <a name="label" val="OP_CODE"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(810,1020)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="4"/> <a name="label" val="INSTR_INCOND_JUMP"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(810,1090)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="4"/> <a name="label" val="OP_CODE"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(810,1110)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="4"/> <a name="label" val="INSTR_COND_JUMP"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(810,1390)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="4"/> <a name="label" val="OP_CODE"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(810,1410)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="4"/> <a name="label" val="INSTR_LOAD"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(810,1470)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="4"/> <a name="label" val="OP_CODE"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(810,1490)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="4"/> <a name="label" val="INSTR_STORE"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(810,850)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="4"/> <a name="label" val="OP_CODE"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(810,870)" name="Constant"> - <a name="width" val="4"/> <a name="value" val="0x8"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(810,920)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="4"/> <a name="label" val="OP_CODE"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(810,940)" name="Constant"> - <a name="width" val="4"/> <a name="value" val="0x9"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(830,460)" name="Tunnel"> <a name="facing" val="north"/> @@ -1058,8 +786,6 @@ <a name="labelfont" val="SansSerif bold 8"/> </comp> <comp lib="0" loc="(920,370)" name="Splitter"> - <a name="fanout" val="1"/> - <a name="incoming" val="8"/> <a name="bit1" val="0"/> <a name="bit2" val="0"/> <a name="bit3" val="0"/> @@ -1067,21 +793,23 @@ <a name="bit5" val="0"/> <a name="bit6" val="0"/> <a name="bit7" val="none"/> + <a name="fanout" val="1"/> + <a name="incoming" val="8"/> </comp> <comp lib="0" loc="(930,1400)" name="Tunnel"> <a name="label" val="EN_LOAD"/> <a name="labelfont" val="SansSerif bold 8"/> </comp> <comp lib="0" loc="(960,360)" name="Tunnel"> - <a name="width" val="7"/> <a name="label" val="PC"/> + <a name="width" val="7"/> </comp> <comp lib="1" loc="(1060,1290)" name="AND Gate"> <a name="size" val="30"/> </comp> <comp lib="1" loc="(1060,1330)" name="AND Gate"> - <a name="size" val="30"/> <a name="negate0" val="true"/> + <a name="size" val="30"/> </comp> <comp lib="1" loc="(1080,1150)" name="AND Gate"> <a name="size" val="30"/> @@ -1096,133 +824,146 @@ <a name="size" val="30"/> </comp> <comp lib="1" loc="(860,1180)" name="AND Gate"> - <a name="width" val="4"/> <a name="size" val="30"/> + <a name="width" val="4"/> </comp> <comp lib="1" loc="(870,1300)" name="AND Gate"> - <a name="size" val="30"/> <a name="inputs" val="3"/> + <a name="size" val="30"/> </comp> <comp lib="2" loc="(1220,640)" name="Multiplexer"> + <a name="enable" val="true"/> <a name="width" val="8"/> </comp> <comp lib="2" loc="(1540,860)" name="Multiplexer"> + <a name="enable" val="true"/> <a name="width" val="8"/> </comp> <comp lib="2" loc="(250,700)" name="Multiplexer"> + <a name="enable" val="true"/> <a name="width" val="8"/> </comp> <comp lib="2" loc="(260,430)" name="Multiplexer"> + <a name="enable" val="true"/> <a name="width" val="3"/> </comp> <comp lib="2" loc="(330,660)" name="Multiplexer"> + <a name="enable" val="true"/> <a name="selloc" val="tr"/> <a name="width" val="8"/> </comp> <comp lib="2" loc="(360,520)" name="Multiplexer"> + <a name="enable" val="true"/> <a name="width" val="3"/> </comp> <comp lib="2" loc="(460,670)" name="Multiplexer"> + <a name="enable" val="true"/> <a name="width" val="8"/> </comp> <comp lib="2" loc="(500,400)" name="Multiplexer"> + <a name="enable" val="true"/> <a name="width" val="8"/> </comp> <comp lib="2" loc="(600,630)" name="Multiplexer"> + <a name="enable" val="true"/> <a name="selloc" val="tr"/> <a name="width" val="3"/> </comp> <comp lib="2" loc="(710,370)" name="Multiplexer"> + <a name="enable" val="true"/> <a name="width" val="8"/> </comp> <comp lib="3" loc="(600,340)" name="Adder"/> <comp lib="3" loc="(870,1010)" name="Comparator"> - <a name="width" val="4"/> <a name="mode" val="unsigned"/> + <a name="width" val="4"/> </comp> <comp lib="3" loc="(870,1100)" name="Comparator"> - <a name="width" val="4"/> <a name="mode" val="unsigned"/> + <a name="width" val="4"/> </comp> <comp lib="3" loc="(870,1400)" name="Comparator"> - <a name="width" val="4"/> <a name="mode" val="unsigned"/> + <a name="width" val="4"/> </comp> <comp lib="3" loc="(870,1480)" name="Comparator"> - <a name="width" val="4"/> <a name="mode" val="unsigned"/> + <a name="width" val="4"/> </comp> <comp lib="3" loc="(870,860)" name="Comparator"> - <a name="width" val="4"/> <a name="mode" val="unsigned"/> + <a name="width" val="4"/> </comp> <comp lib="3" loc="(870,930)" name="Comparator"> - <a name="width" val="4"/> <a name="mode" val="unsigned"/> + <a name="width" val="4"/> </comp> <comp lib="3" loc="(980,1190)" name="Comparator"> - <a name="width" val="4"/> <a name="mode" val="unsigned"/> + <a name="width" val="4"/> </comp> <comp lib="4" loc="(1850,670)" name="Register"> + <a name="appearance" val="logisim_evolution"/> <a name="width" val="4"/> </comp> - <comp lib="4" loc="(800,340)" name="Register"/> + <comp lib="4" loc="(800,340)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> <comp lib="6" loc="(1481,115)" name="Text"> - <a name="text" val="ALU"/> <a name="font" val="SansSerif plain 12"/> + <a name="text" val="ALU"/> </comp> <comp lib="6" loc="(1508,824)" name="Text"> - <a name="text" val="JUMP OF INSTR WHEN JUMPING, JUMP OF 1 ELSEWISE"/> <a name="font" val="SansSerif plain 12"/> + <a name="text" val="JUMP OF INSTR WHEN JUMPING, JUMP OF 1 ELSEWISE"/> </comp> <comp lib="6" loc="(1778,193)" name="Text"> - <a name="text" val="JUMPING"/> <a name="font" val="SansSerif plain 12"/> + <a name="text" val="JUMPING"/> </comp> <comp lib="6" loc="(2236,237)" name="Text"> - <a name="text" val="LD_ST"/> <a name="font" val="SansSerif plain 12"/> + <a name="text" val="LD_ST"/> </comp> <comp lib="6" loc="(414,438)" name="Text"> - <a name="text" val="Jump to val if BL"/> <a name="font" val="SansSerif plain 12"/> + <a name="text" val="Jump to val if BL"/> </comp> <comp lib="6" loc="(808,1373)" name="Text"> - <a name="text" val="LOAD INSTRUCTION"/> <a name="font" val="SansSerif plain 12"/> + <a name="text" val="LOAD INSTRUCTION"/> </comp> <comp lib="6" loc="(809,1455)" name="Text"> - <a name="text" val="STORE INSTRUCTION"/> <a name="font" val="SansSerif plain 12"/> + <a name="text" val="STORE INSTRUCTION"/> </comp> <comp lib="6" loc="(811,1156)" name="Text"> - <a name="text" val="MASK TO GET THE ONLY BITS YOU WANT"/> <a name="font" val="SansSerif plain 12"/> + <a name="text" val="MASK TO GET THE ONLY BITS YOU WANT"/> </comp> <comp lib="6" loc="(837,1069)" name="Text"> - <a name="text" val="CONDITIONNAL JUMPING WHEN 10 "/> <a name="font" val="SansSerif plain 12"/> + <a name="text" val="CONDITIONNAL JUMPING WHEN 10 "/> </comp> <comp lib="6" loc="(847,1251)" name="Text"> - <a name="text" val="BL - BRANCH AND LINK + BR BRANCH REGISTER "/> <a name="font" val="SansSerif plain 12"/> + <a name="text" val="BL - BRANCH AND LINK + BR BRANCH REGISTER "/> </comp> <comp lib="6" loc="(852,905)" name="Text"> - <a name="text" val="ALU + AFFECTATION CONSTANTE"/> <a name="font" val="SansSerif plain 12"/> + <a name="text" val="ALU + AFFECTATION CONSTANTE"/> </comp> <comp lib="6" loc="(857,981)" name="Text"> - <a name="text" val="INCONDITIONNAL JUMPING"/> <a name="font" val="SansSerif plain 12"/> + <a name="text" val="INCONDITIONNAL JUMPING"/> </comp> <comp lib="6" loc="(860,828)" name="Text"> - <a name="text" val="AVOID VALID FLAGS AFTER ANYTHING THAT IS NOT ALU CALCULATIONS "/> <a name="font" val="SansSerif plain 12"/> + <a name="text" val="AVOID VALID FLAGS AFTER ANYTHING THAT IS NOT ALU CALCULATIONS "/> </comp> <comp lib="6" loc="(863,810)" name="Text"> - <a name="text" val="ALU INSTRUCTION ONLY, LOWER THAN 8"/> <a name="font" val="SansSerif plain 12"/> + <a name="text" val="ALU INSTRUCTION ONLY, LOWER THAN 8"/> </comp> <comp loc="(1400,350)" name="CPU_INSTRUCTION_MEMORY"> <a name="label" val="CIM_1"/> @@ -1233,196 +974,259 @@ <comp loc="(990,610)" name="CPU_REG_BANK"> <a name="label" val="CRB"/> </comp> - </circuit> - <circuit name="CPU_INSTRUCTION_MEMORY"> - <a name="circuit" val="CPU_INSTRUCTION_MEMORY"/> - <a name="clabel" val=""/> - <a name="clabelup" val="east"/> - <a name="clabelfont" val="SansSerif bold 16"/> - <a name="appearance" val="custom"/> - <a name="circuitnamedboxfixedsize" val="true"/> - <a name="circuitvhdlpath" val=""/> - <wire from="(990,790)" to="(1090,790)"/> - <wire from="(440,310)" to="(550,310)"/> - <wire from="(440,190)" to="(550,190)"/> - <wire from="(440,230)" to="(550,230)"/> - <wire from="(440,270)" to="(550,270)"/> - <wire from="(440,350)" to="(550,350)"/> - <wire from="(440,390)" to="(550,390)"/> - <wire from="(440,430)" to="(550,430)"/> - <wire from="(440,470)" to="(550,470)"/> - <wire from="(440,710)" to="(550,710)"/> - <wire from="(440,590)" to="(550,590)"/> - <wire from="(440,630)" to="(550,630)"/> - <wire from="(440,670)" to="(550,670)"/> - <wire from="(440,750)" to="(550,750)"/> - <wire from="(440,790)" to="(550,790)"/> - <wire from="(440,830)" to="(550,830)"/> - <wire from="(440,870)" to="(550,870)"/> - <wire from="(880,730)" to="(920,730)"/> - <wire from="(570,530)" to="(860,530)"/> - <wire from="(1040,800)" to="(1090,800)"/> - <wire from="(570,530)" to="(570,570)"/> - <wire from="(770,320)" to="(840,320)"/> - <wire from="(770,200)" to="(840,200)"/> - <wire from="(770,240)" to="(840,240)"/> - <wire from="(770,280)" to="(840,280)"/> - <wire from="(770,360)" to="(840,360)"/> - <wire from="(770,400)" to="(840,400)"/> - <wire from="(770,440)" to="(840,440)"/> - <wire from="(770,480)" to="(840,480)"/> - <wire from="(770,600)" to="(840,600)"/> - <wire from="(360,560)" to="(370,560)"/> - <wire from="(770,640)" to="(840,640)"/> - <wire from="(770,680)" to="(840,680)"/> - <wire from="(770,720)" to="(840,720)"/> - <wire from="(770,760)" to="(840,760)"/> - <wire from="(770,800)" to="(840,800)"/> - <wire from="(770,840)" to="(840,840)"/> - <wire from="(770,880)" to="(840,880)"/> - <wire from="(1180,700)" to="(1180,790)"/> - <wire from="(590,730)" to="(630,730)"/> - <wire from="(730,330)" to="(840,330)"/> - <wire from="(730,250)" to="(840,250)"/> - <wire from="(730,210)" to="(840,210)"/> - <wire from="(730,290)" to="(840,290)"/> - <wire from="(730,370)" to="(840,370)"/> - <wire from="(730,410)" to="(840,410)"/> - <wire from="(730,450)" to="(840,450)"/> - <wire from="(730,490)" to="(840,490)"/> - <wire from="(730,570)" to="(840,570)"/> - <wire from="(730,610)" to="(840,610)"/> - <wire from="(730,650)" to="(840,650)"/> - <wire from="(730,690)" to="(840,690)"/> - <wire from="(730,730)" to="(840,730)"/> - <wire from="(730,770)" to="(840,770)"/> - <wire from="(730,810)" to="(840,810)"/> - <wire from="(730,850)" to="(840,850)"/> - <wire from="(860,510)" to="(860,530)"/> - <wire from="(1100,870)" to="(1110,870)"/> - <wire from="(480,760)" to="(550,760)"/> - <wire from="(480,880)" to="(550,880)"/> - <wire from="(480,840)" to="(550,840)"/> - <wire from="(480,800)" to="(550,800)"/> - <wire from="(480,720)" to="(550,720)"/> - <wire from="(480,680)" to="(550,680)"/> - <wire from="(480,640)" to="(550,640)"/> - <wire from="(480,600)" to="(550,600)"/> - <wire from="(480,480)" to="(550,480)"/> - <wire from="(480,440)" to="(550,440)"/> - <wire from="(480,400)" to="(550,400)"/> - <wire from="(480,360)" to="(550,360)"/> - <wire from="(480,200)" to="(550,200)"/> - <wire from="(480,240)" to="(550,240)"/> - <wire from="(480,280)" to="(550,280)"/> - <wire from="(480,320)" to="(550,320)"/> - <wire from="(360,540)" to="(360,560)"/> - <wire from="(990,770)" to="(1090,770)"/> - <wire from="(440,370)" to="(550,370)"/> - <wire from="(440,210)" to="(550,210)"/> - <wire from="(440,290)" to="(550,290)"/> - <wire from="(440,250)" to="(550,250)"/> - <wire from="(440,410)" to="(550,410)"/> - <wire from="(440,490)" to="(550,490)"/> - <wire from="(440,570)" to="(550,570)"/> - <wire from="(440,450)" to="(550,450)"/> - <wire from="(440,330)" to="(550,330)"/> - <wire from="(440,650)" to="(550,650)"/> - <wire from="(440,610)" to="(550,610)"/> - <wire from="(440,690)" to="(550,690)"/> - <wire from="(440,770)" to="(550,770)"/> - <wire from="(440,850)" to="(550,850)"/> - <wire from="(440,810)" to="(550,810)"/> - <wire from="(880,350)" to="(920,350)"/> - <wire from="(440,730)" to="(550,730)"/> - <wire from="(570,510)" to="(570,530)"/> - <wire from="(1040,780)" to="(1090,780)"/> - <wire from="(1130,790)" to="(1180,790)"/> - <wire from="(360,530)" to="(570,530)"/> - <wire from="(1110,810)" to="(1110,870)"/> - <wire from="(770,340)" to="(840,340)"/> - <wire from="(770,220)" to="(840,220)"/> - <wire from="(770,260)" to="(840,260)"/> - <wire from="(770,300)" to="(840,300)"/> - <wire from="(770,380)" to="(840,380)"/> - <wire from="(770,420)" to="(840,420)"/> - <wire from="(770,460)" to="(840,460)"/> - <wire from="(770,500)" to="(840,500)"/> - <wire from="(770,580)" to="(840,580)"/> - <wire from="(770,620)" to="(840,620)"/> - <wire from="(770,660)" to="(840,660)"/> - <wire from="(770,700)" to="(840,700)"/> - <wire from="(770,740)" to="(840,740)"/> - <wire from="(770,780)" to="(840,780)"/> - <wire from="(770,820)" to="(840,820)"/> - <wire from="(770,860)" to="(840,860)"/> - <wire from="(590,350)" to="(630,350)"/> - <wire from="(730,310)" to="(840,310)"/> - <wire from="(730,190)" to="(840,190)"/> - <wire from="(730,230)" to="(840,230)"/> - <wire from="(730,270)" to="(840,270)"/> - <wire from="(730,350)" to="(840,350)"/> - <wire from="(730,390)" to="(840,390)"/> - <wire from="(730,430)" to="(840,430)"/> - <wire from="(730,470)" to="(840,470)"/> - <wire from="(730,590)" to="(840,590)"/> - <wire from="(730,630)" to="(840,630)"/> - <wire from="(730,670)" to="(840,670)"/> - <wire from="(730,710)" to="(840,710)"/> - <wire from="(730,750)" to="(840,750)"/> - <wire from="(730,790)" to="(840,790)"/> - <wire from="(730,830)" to="(840,830)"/> - <wire from="(730,870)" to="(840,870)"/> - <wire from="(860,530)" to="(860,570)"/> - <wire from="(320,540)" to="(340,540)"/> - <wire from="(1180,790)" to="(1210,790)"/> - <wire from="(480,780)" to="(550,780)"/> - <wire from="(480,340)" to="(550,340)"/> - <wire from="(480,260)" to="(550,260)"/> - <wire from="(480,300)" to="(550,300)"/> - <wire from="(480,220)" to="(550,220)"/> - <wire from="(1160,700)" to="(1180,700)"/> - <wire from="(480,860)" to="(550,860)"/> - <wire from="(480,820)" to="(550,820)"/> - <wire from="(480,740)" to="(550,740)"/> - <wire from="(480,700)" to="(550,700)"/> - <wire from="(480,660)" to="(550,660)"/> - <wire from="(480,620)" to="(550,620)"/> - <wire from="(480,580)" to="(550,580)"/> - <wire from="(480,500)" to="(550,500)"/> - <wire from="(480,460)" to="(550,460)"/> - <wire from="(480,420)" to="(550,420)"/> - <wire from="(480,380)" to="(550,380)"/> - <comp lib="0" loc="(1040,780)" name="Tunnel"> - <a name="facing" val="east"/> - <a name="width" val="16"/> - <a name="label" val="mux1"/> - </comp> - <comp lib="0" loc="(1040,800)" name="Tunnel"> - <a name="facing" val="east"/> - <a name="width" val="16"/> - <a name="label" val="mux3"/> - </comp> - <comp lib="0" loc="(1100,870)" name="Tunnel"> - <a name="facing" val="east"/> - <a name="width" val="2"/> - <a name="label" val="sel"/> - </comp> - <comp lib="0" loc="(1160,700)" name="Probe"> - <a name="radix" val="16"/> - </comp> - <comp lib="0" loc="(1210,790)" name="Pin"> - <a name="facing" val="west"/> - <a name="output" val="true"/> - <a name="width" val="16"/> - <a name="label" val="INSTRUCTION"/> + <wire from="(1030,1100)" to="(1030,1140)"/> + <wire from="(1030,1140)" to="(1050,1140)"/> + <wire from="(1030,1160)" to="(1030,1190)"/> + <wire from="(1030,1160)" to="(1050,1160)"/> + <wire from="(1030,470)" to="(1030,610)"/> + <wire from="(1030,610)" to="(1210,610)"/> + <wire from="(1050,480)" to="(1050,630)"/> + <wire from="(1050,480)" to="(1150,480)"/> + <wire from="(1050,630)" to="(1130,630)"/> + <wire from="(1060,1290)" to="(1120,1290)"/> + <wire from="(1060,1330)" to="(1120,1330)"/> + <wire from="(1080,1150)" to="(1100,1150)"/> + <wire from="(1090,690)" to="(1110,690)"/> + <wire from="(1090,710)" to="(1110,710)"/> + <wire from="(1090,730)" to="(1110,730)"/> + <wire from="(110,710)" to="(130,710)"/> + <wire from="(1100,670)" to="(1110,670)"/> + <wire from="(1130,570)" to="(1130,630)"/> + <wire from="(1130,630)" to="(1190,630)"/> + <wire from="(1130,650)" to="(1130,660)"/> + <wire from="(1130,650)" to="(1190,650)"/> + <wire from="(1140,720)" to="(1200,720)"/> + <wire from="(1150,470)" to="(1150,480)"/> + <wire from="(1160,350)" to="(1180,350)"/> + <wire from="(1200,660)" to="(1200,720)"/> + <wire from="(1210,540)" to="(1210,610)"/> + <wire from="(1210,610)" to="(1480,610)"/> + <wire from="(1220,640)" to="(1270,640)"/> + <wire from="(1270,630)" to="(1270,640)"/> + <wire from="(1270,630)" to="(1480,630)"/> + <wire from="(1390,320)" to="(1420,320)"/> + <wire from="(1400,350)" to="(1420,350)"/> + <wire from="(1400,670)" to="(1430,670)"/> + <wire from="(1400,920)" to="(1450,920)"/> + <wire from="(1400,940)" to="(1450,940)"/> + <wire from="(1420,320)" to="(1420,350)"/> + <wire from="(1420,350)" to="(1460,350)"/> + <wire from="(1430,1000)" to="(1450,1000)"/> + <wire from="(1450,650)" to="(1480,650)"/> + <wire from="(1460,1020)" to="(1530,1020)"/> + <wire from="(1460,310)" to="(1460,350)"/> + <wire from="(1460,350)" to="(1720,350)"/> + <wire from="(1470,1040)" to="(1500,1040)"/> + <wire from="(1470,1060)" to="(1570,1060)"/> + <wire from="(1480,140)" to="(1490,140)"/> + <wire from="(1480,180)" to="(1490,180)"/> + <wire from="(1480,220)" to="(1490,220)"/> + <wire from="(1480,260)" to="(1490,260)"/> + <wire from="(1480,300)" to="(1500,300)"/> + <wire from="(1480,930)" to="(1520,930)"/> + <wire from="(1490,140)" to="(1490,160)"/> + <wire from="(1490,140)" to="(1510,140)"/> + <wire from="(1490,160)" to="(1510,160)"/> + <wire from="(1490,180)" to="(1490,200)"/> + <wire from="(1490,180)" to="(1510,180)"/> + <wire from="(1490,200)" to="(1510,200)"/> + <wire from="(1490,220)" to="(1490,240)"/> + <wire from="(1490,220)" to="(1510,220)"/> + <wire from="(1490,240)" to="(1510,240)"/> + <wire from="(1490,260)" to="(1490,280)"/> + <wire from="(1490,260)" to="(1510,260)"/> + <wire from="(1490,280)" to="(1510,280)"/> + <wire from="(1490,850)" to="(1510,850)"/> + <wire from="(1490,870)" to="(1510,870)"/> + <wire from="(150,540)" to="(170,540)"/> + <wire from="(150,560)" to="(170,560)"/> + <wire from="(150,690)" to="(220,690)"/> + <wire from="(1500,300)" to="(1500,320)"/> + <wire from="(1500,300)" to="(1510,300)"/> + <wire from="(1500,320)" to="(1510,320)"/> + <wire from="(1520,880)" to="(1520,930)"/> + <wire from="(1540,860)" to="(1570,860)"/> + <wire from="(1700,610)" to="(1760,610)"/> + <wire from="(1700,630)" to="(1720,630)"/> + <wire from="(1700,650)" to="(1720,650)"/> + <wire from="(1700,670)" to="(1720,670)"/> + <wire from="(1700,690)" to="(1720,690)"/> + <wire from="(1720,310)" to="(1720,350)"/> + <wire from="(1720,350)" to="(2000,350)"/> + <wire from="(1740,220)" to="(1750,220)"/> + <wire from="(1740,260)" to="(1750,260)"/> + <wire from="(1740,300)" to="(1760,300)"/> + <wire from="(1740,700)" to="(1850,700)"/> + <wire from="(1750,220)" to="(1750,240)"/> + <wire from="(1750,220)" to="(1770,220)"/> + <wire from="(1750,240)" to="(1770,240)"/> + <wire from="(1750,260)" to="(1750,280)"/> + <wire from="(1750,260)" to="(1770,260)"/> + <wire from="(1750,280)" to="(1770,280)"/> + <wire from="(1760,300)" to="(1760,320)"/> + <wire from="(1760,300)" to="(1770,300)"/> + <wire from="(1760,320)" to="(1770,320)"/> + <wire from="(1760,590)" to="(1760,610)"/> + <wire from="(1760,590)" to="(1800,590)"/> + <wire from="(1760,610)" to="(1800,610)"/> + <wire from="(1820,720)" to="(1850,720)"/> + <wire from="(1820,740)" to="(1850,740)"/> + <wire from="(1880,760)" to="(1880,780)"/> + <wire from="(1910,700)" to="(1930,700)"/> + <wire from="(200,550)" to="(340,550)"/> + <wire from="(2000,310)" to="(2000,350)"/> + <wire from="(2000,350)" to="(2190,350)"/> + <wire from="(2020,300)" to="(2050,300)"/> + <wire from="(210,420)" to="(230,420)"/> + <wire from="(210,440)" to="(230,440)"/> + <wire from="(210,710)" to="(220,710)"/> + <wire from="(2190,310)" to="(2190,350)"/> + <wire from="(2210,260)" to="(2220,260)"/> + <wire from="(2210,300)" to="(2220,300)"/> + <wire from="(2220,260)" to="(2220,280)"/> + <wire from="(2220,260)" to="(2240,260)"/> + <wire from="(2220,280)" to="(2240,280)"/> + <wire from="(2220,300)" to="(2220,320)"/> + <wire from="(2220,300)" to="(2240,300)"/> + <wire from="(2220,320)" to="(2240,320)"/> + <wire from="(230,610)" to="(290,610)"/> + <wire from="(230,650)" to="(300,650)"/> + <wire from="(230,720)" to="(230,730)"/> + <wire from="(240,450)" to="(240,460)"/> + <wire from="(250,700)" to="(270,700)"/> + <wire from="(260,430)" to="(270,430)"/> + <wire from="(270,430)" to="(270,510)"/> + <wire from="(270,510)" to="(330,510)"/> + <wire from="(270,670)" to="(270,700)"/> + <wire from="(270,670)" to="(300,670)"/> + <wire from="(310,530)" to="(330,530)"/> + <wire from="(310,630)" to="(310,640)"/> + <wire from="(330,660)" to="(430,660)"/> + <wire from="(340,540)" to="(340,550)"/> + <wire from="(360,520)" to="(730,520)"/> + <wire from="(370,170)" to="(520,170)"/> + <wire from="(370,190)" to="(510,190)"/> + <wire from="(410,680)" to="(430,680)"/> + <wire from="(440,1120)" to="(460,1120)"/> + <wire from="(440,1140)" to="(460,1140)"/> + <wire from="(440,1160)" to="(460,1160)"/> + <wire from="(440,1180)" to="(460,1180)"/> + <wire from="(440,210)" to="(510,210)"/> + <wire from="(440,690)" to="(440,700)"/> + <wire from="(450,330)" to="(560,330)"/> + <wire from="(450,390)" to="(470,390)"/> + <wire from="(450,410)" to="(470,410)"/> + <wire from="(460,670)" to="(770,670)"/> + <wire from="(480,420)" to="(480,440)"/> + <wire from="(500,400)" to="(670,400)"/> + <wire from="(530,350)" to="(530,490)"/> + <wire from="(530,350)" to="(560,350)"/> + <wire from="(530,490)" to="(890,490)"/> + <wire from="(560,600)" to="(580,600)"/> + <wire from="(560,620)" to="(570,620)"/> + <wire from="(560,640)" to="(570,640)"/> + <wire from="(580,600)" to="(580,610)"/> + <wire from="(600,340)" to="(670,340)"/> + <wire from="(600,630)" to="(770,630)"/> + <wire from="(670,340)" to="(670,360)"/> + <wire from="(670,340)" to="(700,340)"/> + <wire from="(670,360)" to="(680,360)"/> + <wire from="(670,380)" to="(670,400)"/> + <wire from="(670,380)" to="(680,380)"/> + <wire from="(690,390)" to="(690,410)"/> + <wire from="(710,370)" to="(800,370)"/> + <wire from="(730,520)" to="(730,610)"/> + <wire from="(730,610)" to="(770,610)"/> + <wire from="(740,1270)" to="(780,1270)"/> + <wire from="(740,650)" to="(770,650)"/> + <wire from="(740,690)" to="(770,690)"/> + <wire from="(740,710)" to="(770,710)"/> + <wire from="(740,730)" to="(770,730)"/> + <wire from="(790,1170)" to="(830,1170)"/> + <wire from="(790,1190)" to="(810,1190)"/> + <wire from="(790,390)" to="(800,390)"/> + <wire from="(790,410)" to="(800,410)"/> + <wire from="(800,1280)" to="(970,1280)"/> + <wire from="(800,1290)" to="(840,1290)"/> + <wire from="(800,1300)" to="(840,1300)"/> + <wire from="(800,1310)" to="(840,1310)"/> + <wire from="(810,1000)" to="(830,1000)"/> + <wire from="(810,1020)" to="(830,1020)"/> + <wire from="(810,1090)" to="(830,1090)"/> + <wire from="(810,1110)" to="(830,1110)"/> + <wire from="(810,1190)" to="(810,1200)"/> + <wire from="(810,1190)" to="(830,1190)"/> + <wire from="(810,1200)" to="(940,1200)"/> + <wire from="(810,1390)" to="(830,1390)"/> + <wire from="(810,1410)" to="(830,1410)"/> + <wire from="(810,1470)" to="(830,1470)"/> + <wire from="(810,1490)" to="(830,1490)"/> + <wire from="(810,850)" to="(830,850)"/> + <wire from="(810,870)" to="(830,870)"/> + <wire from="(810,920)" to="(830,920)"/> + <wire from="(810,940)" to="(830,940)"/> + <wire from="(830,430)" to="(830,460)"/> + <wire from="(860,1180)" to="(940,1180)"/> + <wire from="(860,370)" to="(890,370)"/> + <wire from="(870,1010)" to="(900,1010)"/> + <wire from="(870,1100)" to="(1030,1100)"/> + <wire from="(870,1300)" to="(910,1300)"/> + <wire from="(870,1400)" to="(930,1400)"/> + <wire from="(870,1480)" to="(920,1480)"/> + <wire from="(870,870)" to="(900,870)"/> + <wire from="(870,940)" to="(900,940)"/> + <wire from="(890,370)" to="(890,490)"/> + <wire from="(890,370)" to="(920,370)"/> + <wire from="(910,1300)" to="(910,1330)"/> + <wire from="(910,1300)" to="(960,1300)"/> + <wire from="(940,360)" to="(960,360)"/> + <wire from="(960,1300)" to="(1030,1300)"/> + <wire from="(960,1300)" to="(960,1340)"/> + <wire from="(960,1340)" to="(1030,1340)"/> + <wire from="(970,1280)" to="(1030,1280)"/> + <wire from="(970,1280)" to="(970,1320)"/> + <wire from="(970,1320)" to="(1020,1320)"/> + <wire from="(980,1190)" to="(1030,1190)"/> + <wire from="(990,610)" to="(1030,610)"/> + <wire from="(990,630)" to="(1050,630)"/> + </circuit> + <circuit name="CPU_INSTRUCTION_MEMORY"> + <a name="appearance" val="custom"/> + <a name="circuit" val="CPU_INSTRUCTION_MEMORY"/> + <a name="circuitnamedboxfixedsize" val="true"/> + <a name="simulationFrequency" val="1.0"/> + <comp lib="0" loc="(1040,780)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="mux1"/> + <a name="width" val="16"/> + </comp> + <comp lib="0" loc="(1040,800)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="mux3"/> + <a name="width" val="16"/> + </comp> + <comp lib="0" loc="(1100,870)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="sel"/> + <a name="width" val="2"/> + </comp> + <comp lib="0" loc="(1160,700)" name="Probe"> + <a name="appearance" val="classic"/> + <a name="radix" val="16"/> + </comp> + <comp lib="0" loc="(1210,790)" name="Pin"> + <a name="appearance" val="classic"/> + <a name="facing" val="west"/> + <a name="label" val="INSTRUCTION"/> + <a name="output" val="true"/> + <a name="width" val="16"/> </comp> <comp lib="0" loc="(320,540)" name="Pin"> - <a name="width" val="7"/> + <a name="appearance" val="classic"/> <a name="label" val="ADDR_INSTR"/> + <a name="width" val="7"/> </comp> <comp lib="0" loc="(340,540)" name="Splitter"> - <a name="incoming" val="7"/> <a name="appear" val="center"/> <a name="bit1" val="0"/> <a name="bit2" val="0"/> @@ -1430,191 +1234,346 @@ <a name="bit4" val="0"/> <a name="bit5" val="1"/> <a name="bit6" val="1"/> + <a name="incoming" val="7"/> </comp> <comp lib="0" loc="(370,560)" name="Tunnel"> - <a name="width" val="2"/> <a name="label" val="sel"/> + <a name="width" val="2"/> </comp> <comp lib="0" loc="(440,190)" name="Constant"> - <a name="width" val="16"/> <a name="value" val="0x8010"/> + <a name="width" val="16"/> </comp> <comp lib="0" loc="(440,210)" name="Constant"> - <a name="width" val="16"/> <a name="value" val="0x8477"/> + <a name="width" val="16"/> </comp> <comp lib="0" loc="(440,230)" name="Constant"> - <a name="width" val="16"/> <a name="value" val="0xa802"/> + <a name="width" val="16"/> </comp> <comp lib="0" loc="(440,250)" name="Constant"> + <a name="value" val="0x8461"/> <a name="width" val="16"/> - <a name="value" val="0x1650"/> </comp> <comp lib="0" loc="(440,270)" name="Constant"> + <a name="value" val="0xa802"/> <a name="width" val="16"/> - <a name="value" val="0xee18"/> </comp> <comp lib="0" loc="(440,290)" name="Constant"> + <a name="value" val="0x8473"/> <a name="width" val="16"/> - <a name="value" val="0x1650"/> </comp> <comp lib="0" loc="(440,310)" name="Constant"> + <a name="value" val="0xa802"/> <a name="width" val="16"/> - <a name="value" val="0xee15"/> </comp> <comp lib="0" loc="(440,330)" name="Constant"> + <a name="value" val="0x8464"/> <a name="width" val="16"/> - <a name="value" val="0x1650"/> </comp> <comp lib="0" loc="(440,350)" name="Constant"> + <a name="value" val="0xa802"/> <a name="width" val="16"/> - <a name="value" val="0xee18"/> </comp> <comp lib="0" loc="(440,370)" name="Constant"> + <a name="value" val="0xbfee"/> <a name="width" val="16"/> - <a name="value" val="0x8864"/> </comp> <comp lib="0" loc="(440,390)" name="Constant"> + <a name="value" val="0x8a64"/> <a name="width" val="16"/> - <a name="value" val="0xfe00"/> </comp> <comp lib="0" loc="(440,410)" name="Constant"> + <a name="value" val="0x889c"/> <a name="width" val="16"/> - <a name="value" val="0x8a9c"/> </comp> <comp lib="0" loc="(440,430)" name="Constant"> + <a name="value" val="0xfe00"/> <a name="width" val="16"/> - <a name="value" val="0x8832"/> </comp> <comp lib="0" loc="(440,450)" name="Constant"> + <a name="value" val="0x8ace"/> <a name="width" val="16"/> - <a name="value" val="0xfe00"/> </comp> <comp lib="0" loc="(440,470)" name="Constant"> + <a name="value" val="0x88ce"/> <a name="width" val="16"/> - <a name="value" val="0x8a32"/> </comp> - <comp lib="0" loc="(480,200)" name="Constant"> + <comp lib="0" loc="(440,490)" name="Constant"> + <a name="value" val="0xfe00"/> <a name="width" val="16"/> + </comp> + <comp lib="0" loc="(480,200)" name="Constant"> <a name="value" val="0xc200"/> + <a name="width" val="16"/> </comp> <comp lib="0" loc="(480,220)" name="Constant"> - <a name="width" val="16"/> <a name="value" val="0x1650"/> + <a name="width" val="16"/> </comp> <comp lib="0" loc="(480,240)" name="Constant"> + <a name="value" val="0xee13"/> <a name="width" val="16"/> - <a name="value" val="0xee12"/> </comp> <comp lib="0" loc="(480,260)" name="Constant"> + <a name="value" val="0x1650"/> <a name="width" val="16"/> - <a name="value" val="0xa802"/> </comp> <comp lib="0" loc="(480,280)" name="Constant"> + <a name="value" val="0xee19"/> <a name="width" val="16"/> - <a name="value" val="0x8464"/> </comp> <comp lib="0" loc="(480,300)" name="Constant"> + <a name="value" val="0x1650"/> <a name="width" val="16"/> - <a name="value" val="0xa802"/> </comp> <comp lib="0" loc="(480,320)" name="Constant"> + <a name="value" val="0xee16"/> <a name="width" val="16"/> - <a name="value" val="0x8464"/> </comp> <comp lib="0" loc="(480,340)" name="Constant"> + <a name="value" val="0x1650"/> <a name="width" val="16"/> - <a name="value" val="0xa802"/> </comp> <comp lib="0" loc="(480,360)" name="Constant"> + <a name="value" val="0xee19"/> <a name="width" val="16"/> - <a name="value" val="0xbfef"/> </comp> <comp lib="0" loc="(480,380)" name="Constant"> + <a name="value" val="0x8864"/> <a name="width" val="16"/> - <a name="value" val="0x8a64"/> </comp> <comp lib="0" loc="(480,400)" name="Constant"> + <a name="value" val="0xfe00"/> <a name="width" val="16"/> - <a name="value" val="0x889c"/> </comp> <comp lib="0" loc="(480,420)" name="Constant"> + <a name="value" val="0x8a9c"/> <a name="width" val="16"/> - <a name="value" val="0xfe00"/> </comp> <comp lib="0" loc="(480,440)" name="Constant"> + <a name="value" val="0x8832"/> <a name="width" val="16"/> - <a name="value" val="0x8ace"/> </comp> <comp lib="0" loc="(480,460)" name="Constant"> + <a name="value" val="0xfe00"/> <a name="width" val="16"/> - <a name="value" val="0x88ce"/> </comp> <comp lib="0" loc="(480,480)" name="Constant"> + <a name="value" val="0x8a32"/> <a name="width" val="16"/> - <a name="value" val="0xfe00"/> </comp> <comp lib="0" loc="(630,350)" name="Tunnel"> - <a name="width" val="16"/> <a name="label" val="mux0"/> + <a name="width" val="16"/> </comp> <comp lib="0" loc="(630,730)" name="Tunnel"> - <a name="width" val="16"/> <a name="label" val="mux1"/> + <a name="width" val="16"/> </comp> <comp lib="0" loc="(920,350)" name="Tunnel"> - <a name="width" val="16"/> <a name="label" val="mux2"/> + <a name="width" val="16"/> </comp> <comp lib="0" loc="(920,730)" name="Tunnel"> - <a name="width" val="16"/> <a name="label" val="mux3"/> + <a name="width" val="16"/> </comp> <comp lib="0" loc="(990,770)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="16"/> <a name="label" val="mux0"/> + <a name="width" val="16"/> </comp> <comp lib="0" loc="(990,790)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="16"/> <a name="label" val="mux2"/> + <a name="width" val="16"/> </comp> <comp lib="2" loc="(1130,790)" name="Multiplexer"> + <a name="enable" val="true"/> <a name="select" val="2"/> <a name="width" val="16"/> </comp> <comp lib="2" loc="(590,350)" name="Multiplexer"> + <a name="enable" val="true"/> <a name="select" val="5"/> <a name="width" val="16"/> </comp> <comp lib="2" loc="(590,730)" name="Multiplexer"> - <a name="selloc" val="tr"/> + <a name="enable" val="true"/> <a name="select" val="5"/> + <a name="selloc" val="tr"/> <a name="width" val="16"/> </comp> <comp lib="2" loc="(880,350)" name="Multiplexer"> + <a name="enable" val="true"/> <a name="select" val="5"/> <a name="width" val="16"/> </comp> <comp lib="2" loc="(880,730)" name="Multiplexer"> - <a name="selloc" val="tr"/> + <a name="enable" val="true"/> <a name="select" val="5"/> + <a name="selloc" val="tr"/> <a name="width" val="16"/> </comp> + <wire from="(1040,780)" to="(1090,780)"/> + <wire from="(1040,800)" to="(1090,800)"/> + <wire from="(1100,870)" to="(1110,870)"/> + <wire from="(1110,810)" to="(1110,870)"/> + <wire from="(1130,790)" to="(1180,790)"/> + <wire from="(1160,700)" to="(1180,700)"/> + <wire from="(1180,700)" to="(1180,790)"/> + <wire from="(1180,790)" to="(1210,790)"/> + <wire from="(320,540)" to="(340,540)"/> + <wire from="(360,530)" to="(570,530)"/> + <wire from="(360,540)" to="(360,560)"/> + <wire from="(360,560)" to="(370,560)"/> + <wire from="(440,190)" to="(550,190)"/> + <wire from="(440,210)" to="(550,210)"/> + <wire from="(440,230)" to="(550,230)"/> + <wire from="(440,250)" to="(550,250)"/> + <wire from="(440,270)" to="(550,270)"/> + <wire from="(440,290)" to="(550,290)"/> + <wire from="(440,310)" to="(550,310)"/> + <wire from="(440,330)" to="(550,330)"/> + <wire from="(440,350)" to="(550,350)"/> + <wire from="(440,370)" to="(550,370)"/> + <wire from="(440,390)" to="(550,390)"/> + <wire from="(440,410)" to="(550,410)"/> + <wire from="(440,430)" to="(550,430)"/> + <wire from="(440,450)" to="(550,450)"/> + <wire from="(440,470)" to="(550,470)"/> + <wire from="(440,490)" to="(550,490)"/> + <wire from="(440,570)" to="(550,570)"/> + <wire from="(440,590)" to="(550,590)"/> + <wire from="(440,610)" to="(550,610)"/> + <wire from="(440,630)" to="(550,630)"/> + <wire from="(440,650)" to="(550,650)"/> + <wire from="(440,670)" to="(550,670)"/> + <wire from="(440,690)" to="(550,690)"/> + <wire from="(440,710)" to="(550,710)"/> + <wire from="(440,730)" to="(550,730)"/> + <wire from="(440,750)" to="(550,750)"/> + <wire from="(440,770)" to="(550,770)"/> + <wire from="(440,790)" to="(550,790)"/> + <wire from="(440,810)" to="(550,810)"/> + <wire from="(440,830)" to="(550,830)"/> + <wire from="(440,850)" to="(550,850)"/> + <wire from="(440,870)" to="(550,870)"/> + <wire from="(480,200)" to="(550,200)"/> + <wire from="(480,220)" to="(550,220)"/> + <wire from="(480,240)" to="(550,240)"/> + <wire from="(480,260)" to="(550,260)"/> + <wire from="(480,280)" to="(550,280)"/> + <wire from="(480,300)" to="(550,300)"/> + <wire from="(480,320)" to="(550,320)"/> + <wire from="(480,340)" to="(550,340)"/> + <wire from="(480,360)" to="(550,360)"/> + <wire from="(480,380)" to="(550,380)"/> + <wire from="(480,400)" to="(550,400)"/> + <wire from="(480,420)" to="(550,420)"/> + <wire from="(480,440)" to="(550,440)"/> + <wire from="(480,460)" to="(550,460)"/> + <wire from="(480,480)" to="(550,480)"/> + <wire from="(480,500)" to="(550,500)"/> + <wire from="(480,580)" to="(550,580)"/> + <wire from="(480,600)" to="(550,600)"/> + <wire from="(480,620)" to="(550,620)"/> + <wire from="(480,640)" to="(550,640)"/> + <wire from="(480,660)" to="(550,660)"/> + <wire from="(480,680)" to="(550,680)"/> + <wire from="(480,700)" to="(550,700)"/> + <wire from="(480,720)" to="(550,720)"/> + <wire from="(480,740)" to="(550,740)"/> + <wire from="(480,760)" to="(550,760)"/> + <wire from="(480,780)" to="(550,780)"/> + <wire from="(480,800)" to="(550,800)"/> + <wire from="(480,820)" to="(550,820)"/> + <wire from="(480,840)" to="(550,840)"/> + <wire from="(480,860)" to="(550,860)"/> + <wire from="(480,880)" to="(550,880)"/> + <wire from="(570,510)" to="(570,530)"/> + <wire from="(570,530)" to="(570,570)"/> + <wire from="(570,530)" to="(860,530)"/> + <wire from="(590,350)" to="(630,350)"/> + <wire from="(590,730)" to="(630,730)"/> + <wire from="(730,190)" to="(840,190)"/> + <wire from="(730,210)" to="(840,210)"/> + <wire from="(730,230)" to="(840,230)"/> + <wire from="(730,250)" to="(840,250)"/> + <wire from="(730,270)" to="(840,270)"/> + <wire from="(730,290)" to="(840,290)"/> + <wire from="(730,310)" to="(840,310)"/> + <wire from="(730,330)" to="(840,330)"/> + <wire from="(730,350)" to="(840,350)"/> + <wire from="(730,370)" to="(840,370)"/> + <wire from="(730,390)" to="(840,390)"/> + <wire from="(730,410)" to="(840,410)"/> + <wire from="(730,430)" to="(840,430)"/> + <wire from="(730,450)" to="(840,450)"/> + <wire from="(730,470)" to="(840,470)"/> + <wire from="(730,490)" to="(840,490)"/> + <wire from="(730,570)" to="(840,570)"/> + <wire from="(730,590)" to="(840,590)"/> + <wire from="(730,610)" to="(840,610)"/> + <wire from="(730,630)" to="(840,630)"/> + <wire from="(730,650)" to="(840,650)"/> + <wire from="(730,670)" to="(840,670)"/> + <wire from="(730,690)" to="(840,690)"/> + <wire from="(730,710)" to="(840,710)"/> + <wire from="(730,730)" to="(840,730)"/> + <wire from="(730,750)" to="(840,750)"/> + <wire from="(730,770)" to="(840,770)"/> + <wire from="(730,790)" to="(840,790)"/> + <wire from="(730,810)" to="(840,810)"/> + <wire from="(730,830)" to="(840,830)"/> + <wire from="(730,850)" to="(840,850)"/> + <wire from="(730,870)" to="(840,870)"/> + <wire from="(770,200)" to="(840,200)"/> + <wire from="(770,220)" to="(840,220)"/> + <wire from="(770,240)" to="(840,240)"/> + <wire from="(770,260)" to="(840,260)"/> + <wire from="(770,280)" to="(840,280)"/> + <wire from="(770,300)" to="(840,300)"/> + <wire from="(770,320)" to="(840,320)"/> + <wire from="(770,340)" to="(840,340)"/> + <wire from="(770,360)" to="(840,360)"/> + <wire from="(770,380)" to="(840,380)"/> + <wire from="(770,400)" to="(840,400)"/> + <wire from="(770,420)" to="(840,420)"/> + <wire from="(770,440)" to="(840,440)"/> + <wire from="(770,460)" to="(840,460)"/> + <wire from="(770,480)" to="(840,480)"/> + <wire from="(770,500)" to="(840,500)"/> + <wire from="(770,580)" to="(840,580)"/> + <wire from="(770,600)" to="(840,600)"/> + <wire from="(770,620)" to="(840,620)"/> + <wire from="(770,640)" to="(840,640)"/> + <wire from="(770,660)" to="(840,660)"/> + <wire from="(770,680)" to="(840,680)"/> + <wire from="(770,700)" to="(840,700)"/> + <wire from="(770,720)" to="(840,720)"/> + <wire from="(770,740)" to="(840,740)"/> + <wire from="(770,760)" to="(840,760)"/> + <wire from="(770,780)" to="(840,780)"/> + <wire from="(770,800)" to="(840,800)"/> + <wire from="(770,820)" to="(840,820)"/> + <wire from="(770,840)" to="(840,840)"/> + <wire from="(770,860)" to="(840,860)"/> + <wire from="(770,880)" to="(840,880)"/> + <wire from="(860,510)" to="(860,530)"/> + <wire from="(860,530)" to="(860,570)"/> + <wire from="(880,350)" to="(920,350)"/> + <wire from="(880,730)" to="(920,730)"/> + <wire from="(990,770)" to="(1090,770)"/> + <wire from="(990,790)" to="(1090,790)"/> </circuit> <circuit name="CPU_REG_BANK"> - <a name="circuit" val="CPU_REG_BANK"/> - <a name="clabel" val=""/> - <a name="clabelup" val="east"/> - <a name="clabelfont" val="SansSerif bold 16"/> <a name="appearance" val="custom"/> + <a name="circuit" val="CPU_REG_BANK"/> <a name="circuitnamedboxfixedsize" val="true"/> - <a name="circuitvhdlpath" val=""/> <appear> - <circ-port height="10" pin="1270,670" width="10" x="265" y="75"/> - <circ-port height="8" pin="150,130" width="8" x="46" y="96"/> <rect fill="none" height="160" stroke="#000000" stroke-width="2" width="200" x="60" y="50"/> <rect height="20" stroke="none" width="200" x="60" y="190"/> <rect height="3" stroke="none" width="10" x="50" y="139"/> @@ -1624,214 +1583,104 @@ <rect height="4" stroke="none" width="10" x="260" y="78"/> <rect height="4" stroke="none" width="10" x="50" y="118"/> <rect height="4" stroke="none" width="10" x="50" y="58"/> - <rect height="4" stroke="none" width="10" x="50" y="78"/> - <rect height="4" stroke="none" width="10" x="50" y="98"/> - <text dominant-baseline="alphabetic" fill="#404040" font-family="Dialog" font-size="12" text-anchor="end" x="255" y="64">OUT_A</text> - <text dominant-baseline="alphabetic" fill="#404040" font-family="Dialog" font-size="12" text-anchor="end" x="255" y="84">OUT_B</text> - <text dominant-baseline="alphabetic" fill="#404040" font-family="Dialog" font-size="12" text-anchor="start" x="65" y="104">ADD_WR</text> - <text dominant-baseline="alphabetic" fill="#404040" font-family="Dialog" font-size="12" text-anchor="start" x="65" y="124">DATA_WR</text> - <text dominant-baseline="alphabetic" fill="#404040" font-family="Dialog" font-size="12" text-anchor="start" x="65" y="144">EN_WR</text> - <text dominant-baseline="alphabetic" fill="#404040" font-family="Dialog" font-size="12" text-anchor="start" x="65" y="164">CLK</text> - <text dominant-baseline="alphabetic" fill="#404040" font-family="Dialog" font-size="12" text-anchor="start" x="65" y="184">RESET</text> - <text dominant-baseline="alphabetic" fill="#404040" font-family="Dialog" font-size="12" text-anchor="start" x="65" y="64">ADD_A</text> - <text dominant-baseline="alphabetic" fill="#404040" font-family="Dialog" font-size="12" text-anchor="start" x="65" y="84">ADD_B</text> - <text dominant-baseline="alphabetic" fill="#ffffff" font-family="Dialog" font-size="14" font-weight="bold" text-anchor="middle" x="160" y="204">CPU_REG_BANK</text> - <circ-port height="8" pin="200,150" width="8" x="46" y="116"/> - <circ-port height="8" pin="130,230" width="8" x="46" y="176"/> - <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="150,90" width="8" x="46" y="76"/> - <circ-port height="8" pin="130,210" width="8" x="46" y="156"/> - <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"/> - <visible-register height="10" path="/Register(690,440)" stroke-width="0" width="13" x="147" y="98"/> - <visible-register height="10" path="/Register(690,50)" stroke-width="0" width="13" x="147" y="68"/> - <visible-register height="10" path="/Register(690,570)" stroke-width="0" width="13" x="147" y="108"/> - <visible-register height="10" path="/Register(690,700)" stroke-width="0" width="13" x="147" y="118"/> - <visible-register height="10" path="/Register(690,830)" stroke-width="0" width="13" x="147" y="128"/> - <visible-register height="10" path="/Register(690,960)" stroke-width="0" width="13" x="147" y="138"/> - <circ-anchor facing="east" height="6" width="6" x="267" y="57"/> - </appear> - <wire from="(720,400)" to="(720,410)"/> - <wire from="(720,920)" to="(720,930)"/> - <wire from="(670,150)" to="(720,150)"/> - <wire from="(670,670)" to="(720,670)"/> - <wire from="(1240,470)" to="(1240,560)"/> - <wire from="(1250,570)" to="(1250,600)"/> - <wire from="(130,170)" to="(230,170)"/> - <wire from="(130,210)" to="(230,210)"/> - <wire from="(1230,550)" to="(1230,600)"/> - <wire from="(540,580)" to="(540,880)"/> - <wire from="(670,340)" to="(690,340)"/> - <wire from="(670,380)" to="(690,380)"/> - <wire from="(670,860)" to="(690,860)"/> - <wire from="(670,900)" to="(690,900)"/> - <wire from="(1040,560)" to="(1240,560)"/> - <wire from="(1050,570)" to="(1250,570)"/> - <wire from="(520,540)" to="(550,540)"/> - <wire from="(530,590)" to="(530,1010)"/> - <wire from="(1220,540)" to="(1220,600)"/> - <wire from="(490,610)" to="(500,610)"/> - <wire from="(150,130)" to="(230,130)"/> - <wire from="(150,90)" to="(230,90)"/> - <wire from="(1020,540)" to="(1020,600)"/> - <wire from="(1150,450)" to="(1180,450)"/> - <wire from="(560,560)" to="(560,620)"/> - <wire from="(560,620)" to="(690,620)"/> - <wire from="(1020,540)" to="(1220,540)"/> - <wire from="(1030,550)" to="(1230,550)"/> - <wire from="(1190,470)" to="(1190,510)"/> - <wire from="(1240,560)" to="(1240,600)"/> - <wire from="(1040,560)" to="(1040,860)"/> - <wire from="(550,360)" to="(690,360)"/> - <wire from="(550,570)" to="(550,750)"/> - <wire from="(520,520)" to="(530,520)"/> - <wire from="(720,1050)" to="(720,1060)"/> - <wire from="(720,530)" to="(720,540)"/> - <wire from="(1200,520)" to="(1200,600)"/> - <wire from="(1230,470)" to="(1230,550)"/> - <wire from="(670,280)" to="(720,280)"/> - <wire from="(670,800)" to="(720,800)"/> - <wire from="(1190,510)" to="(1190,600)"/> - <wire from="(1180,470)" to="(1180,500)"/> - <wire from="(1210,530)" to="(1210,600)"/> - <wire from="(1220,670)" to="(1270,670)"/> - <wire from="(750,990)" to="(1050,990)"/> - <wire from="(200,150)" to="(230,150)"/> - <wire from="(540,230)" to="(690,230)"/> - <wire from="(1040,210)" to="(1040,510)"/> - <wire from="(750,730)" to="(1030,730)"/> - <wire from="(540,230)" to="(540,530)"/> - <wire from="(670,1030)" to="(690,1030)"/> - <wire from="(670,470)" to="(690,470)"/> - <wire from="(670,510)" to="(690,510)"/> - <wire from="(670,990)" to="(690,990)"/> - <wire from="(530,1010)" to="(690,1010)"/> - <wire from="(1050,80)" to="(1050,500)"/> - <wire from="(1020,470)" to="(1020,530)"/> - <wire from="(1150,620)" to="(1180,620)"/> - <wire from="(560,490)" to="(560,550)"/> - <wire from="(1180,500)" to="(1180,600)"/> - <wire from="(1030,340)" to="(1030,520)"/> - <wire from="(720,140)" to="(720,150)"/> - <wire from="(720,660)" to="(720,670)"/> - <wire from="(670,410)" to="(720,410)"/> - <wire from="(670,930)" to="(720,930)"/> - <wire from="(1220,400)" to="(1220,430)"/> - <wire from="(1220,640)" to="(1220,670)"/> - <wire from="(500,600)" to="(500,610)"/> - <wire from="(520,550)" to="(560,550)"/> - <wire from="(1220,470)" to="(1220,540)"/> - <wire from="(750,210)" to="(1040,210)"/> - <wire from="(1220,400)" to="(1270,400)"/> - <wire from="(130,230)" to="(230,230)"/> - <wire from="(750,80)" to="(1050,80)"/> - <wire from="(540,880)" to="(690,880)"/> - <wire from="(750,340)" to="(1030,340)"/> - <wire from="(520,530)" to="(540,530)"/> - <wire from="(670,120)" to="(690,120)"/> - <wire from="(670,600)" to="(690,600)"/> - <wire from="(670,640)" to="(690,640)"/> - <wire from="(670,80)" to="(690,80)"/> - <wire from="(530,100)" to="(690,100)"/> - <wire from="(1210,470)" to="(1210,530)"/> - <wire from="(150,70)" to="(230,70)"/> - <wire from="(1050,570)" to="(1050,990)"/> - <wire from="(750,470)" to="(1020,470)"/> - <wire from="(1030,550)" to="(1030,730)"/> - <wire from="(720,270)" to="(720,280)"/> - <wire from="(720,790)" to="(720,800)"/> - <wire from="(670,1060)" to="(720,1060)"/> - <wire from="(670,540)" to="(720,540)"/> - <wire from="(1020,530)" to="(1210,530)"/> - <wire from="(520,560)" to="(560,560)"/> - <wire from="(750,860)" to="(1040,860)"/> - <wire from="(1030,520)" to="(1200,520)"/> - <wire from="(1200,470)" to="(1200,520)"/> - <wire from="(520,580)" to="(540,580)"/> - <wire from="(670,210)" to="(690,210)"/> - <wire from="(670,250)" to="(690,250)"/> - <wire from="(670,730)" to="(690,730)"/> - <wire from="(670,770)" to="(690,770)"/> - <wire from="(520,570)" to="(550,570)"/> - <wire from="(460,560)" to="(480,560)"/> - <wire from="(530,100)" to="(530,520)"/> - <wire from="(1050,500)" to="(1180,500)"/> - <wire from="(560,490)" to="(690,490)"/> - <wire from="(1250,470)" to="(1250,570)"/> - <wire from="(750,600)" to="(1020,600)"/> - <wire from="(1040,510)" to="(1190,510)"/> - <wire from="(550,360)" to="(550,540)"/> - <wire from="(550,750)" to="(690,750)"/> - <wire from="(520,590)" to="(530,590)"/> + <rect height="4" stroke="none" width="10" x="50" y="78"/> + <rect height="4" stroke="none" width="10" x="50" y="98"/> + <text dominant-baseline="alphabetic" fill="#404040" font-family="Dialog" font-size="12" text-anchor="end" x="255" y="64">OUT_A</text> + <text dominant-baseline="alphabetic" fill="#404040" font-family="Dialog" font-size="12" text-anchor="end" x="255" y="84">OUT_B</text> + <text dominant-baseline="alphabetic" fill="#404040" font-family="Dialog" font-size="12" text-anchor="start" x="65" y="104">ADD_WR</text> + <text dominant-baseline="alphabetic" fill="#404040" font-family="Dialog" font-size="12" text-anchor="start" x="65" y="124">DATA_WR</text> + <text dominant-baseline="alphabetic" fill="#404040" font-family="Dialog" font-size="12" text-anchor="start" x="65" y="144">EN_WR</text> + <text dominant-baseline="alphabetic" fill="#404040" font-family="Dialog" font-size="12" text-anchor="start" x="65" y="164">CLK</text> + <text dominant-baseline="alphabetic" fill="#404040" font-family="Dialog" font-size="12" text-anchor="start" x="65" y="184">RESET</text> + <text dominant-baseline="alphabetic" fill="#404040" font-family="Dialog" font-size="12" text-anchor="start" x="65" y="64">ADD_A</text> + <text dominant-baseline="alphabetic" fill="#404040" font-family="Dialog" font-size="12" text-anchor="start" x="65" y="84">ADD_B</text> + <text dominant-baseline="alphabetic" fill="#ffffff" font-family="Dialog" font-size="14" font-weight="bold" text-anchor="middle" x="160" y="204">CPU_REG_BANK</text> + <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"/> + <visible-register height="10" path="/Register(690,440)" stroke-width="0" width="13" x="147" y="98"/> + <visible-register height="10" path="/Register(690,50)" stroke-width="0" width="13" x="147" y="68"/> + <visible-register height="10" path="/Register(690,570)" stroke-width="0" width="13" x="147" y="108"/> + <visible-register height="10" path="/Register(690,700)" stroke-width="0" width="13" x="147" y="118"/> + <visible-register height="10" path="/Register(690,830)" stroke-width="0" width="13" x="147" y="128"/> + <visible-register height="10" path="/Register(690,960)" stroke-width="0" width="13" x="147" y="138"/> + <circ-anchor facing="east" height="6" width="6" x="267" y="57"/> + <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,170" width="8" x="46" y="136"/> + <circ-port height="8" pin="130,210" width="8" x="46" y="156"/> + <circ-port height="8" pin="130,230" width="8" x="46" y="176"/> + <circ-port height="8" pin="150,130" width="8" x="46" y="96"/> + <circ-port height="8" pin="150,70" width="8" x="46" y="56"/> + <circ-port height="8" pin="150,90" width="8" x="46" y="76"/> + <circ-port height="8" pin="200,150" width="8" x="46" y="116"/> + </appear> <comp lib="0" loc="(1150,450)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="3"/> <a name="label" val="ADD_A"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="3"/> </comp> <comp lib="0" loc="(1150,620)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="3"/> <a name="label" val="ADD_B"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="3"/> </comp> <comp lib="0" loc="(1270,400)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> + <a name="label" val="OUT_A"/> <a name="output" val="true"/> <a name="width" val="8"/> - <a name="label" val="OUT_A"/> - <a name="appearance" val="NewPins"/> </comp> <comp lib="0" loc="(1270,670)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> + <a name="label" val="OUT_B"/> <a name="output" val="true"/> <a name="width" val="8"/> - <a name="label" val="OUT_B"/> - <a name="appearance" val="NewPins"/> </comp> <comp lib="0" loc="(130,170)" name="Pin"> - <a name="label" val="EN_WR"/> <a name="appearance" val="NewPins"/> + <a name="label" val="EN_WR"/> </comp> <comp lib="0" loc="(130,210)" name="Pin"> - <a name="label" val="CLK"/> <a name="appearance" val="NewPins"/> + <a name="label" val="CLK"/> </comp> <comp lib="0" loc="(130,230)" name="Pin"> - <a name="label" val="RESET"/> <a name="appearance" val="NewPins"/> + <a name="label" val="RESET"/> </comp> <comp lib="0" loc="(150,130)" name="Pin"> - <a name="width" val="3"/> - <a name="label" val="ADD_WR"/> <a name="appearance" val="NewPins"/> + <a name="label" val="ADD_WR"/> + <a name="width" val="3"/> </comp> <comp lib="0" loc="(150,70)" name="Pin"> - <a name="width" val="3"/> - <a name="label" val="ADD_A"/> <a name="appearance" val="NewPins"/> + <a name="label" val="ADD_A"/> + <a name="width" val="3"/> </comp> <comp lib="0" loc="(150,90)" name="Pin"> - <a name="width" val="3"/> - <a name="label" val="ADD_B"/> <a name="appearance" val="NewPins"/> + <a name="label" val="ADD_B"/> + <a name="width" val="3"/> </comp> <comp lib="0" loc="(200,150)" name="Pin"> - <a name="width" val="8"/> - <a name="label" val="DATA_WR"/> <a name="appearance" val="NewPins"/> + <a name="label" val="DATA_WR"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(230,130)" name="Tunnel"> - <a name="width" val="3"/> <a name="label" val="ADD_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="3"/> </comp> <comp lib="0" loc="(230,150)" name="Tunnel"> - <a name="width" val="8"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(230,170)" name="Tunnel"> <a name="label" val="EN_WR"/> @@ -1846,14 +1695,14 @@ <a name="labelfont" val="SansSerif bold 8"/> </comp> <comp lib="0" loc="(230,70)" name="Tunnel"> - <a name="width" val="3"/> <a name="label" val="ADD_A"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="3"/> </comp> <comp lib="0" loc="(230,90)" name="Tunnel"> - <a name="width" val="3"/> <a name="label" val="ADD_B"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="3"/> </comp> <comp lib="0" loc="(460,560)" name="Tunnel"> <a name="facing" val="east"/> @@ -1862,9 +1711,9 @@ </comp> <comp lib="0" loc="(490,610)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="3"/> <a name="label" val="ADD_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="3"/> </comp> <comp lib="0" loc="(670,1030)" name="Tunnel"> <a name="facing" val="east"/> @@ -1888,9 +1737,9 @@ </comp> <comp lib="0" loc="(670,210)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(670,250)" name="Tunnel"> <a name="facing" val="east"/> @@ -1904,9 +1753,9 @@ </comp> <comp lib="0" loc="(670,340)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(670,380)" name="Tunnel"> <a name="facing" val="east"/> @@ -1920,9 +1769,9 @@ </comp> <comp lib="0" loc="(670,470)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(670,510)" name="Tunnel"> <a name="facing" val="east"/> @@ -1936,9 +1785,9 @@ </comp> <comp lib="0" loc="(670,600)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(670,640)" name="Tunnel"> <a name="facing" val="east"/> @@ -1952,9 +1801,9 @@ </comp> <comp lib="0" loc="(670,730)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(670,770)" name="Tunnel"> <a name="facing" val="east"/> @@ -1963,9 +1812,9 @@ </comp> <comp lib="0" loc="(670,80)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(670,800)" name="Tunnel"> <a name="facing" val="east"/> @@ -1974,9 +1823,9 @@ </comp> <comp lib="0" loc="(670,860)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(670,900)" name="Tunnel"> <a name="facing" val="east"/> @@ -1990,113 +1839,187 @@ </comp> <comp lib="0" loc="(670,990)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="2" loc="(1220,430)" name="Multiplexer"> <a name="facing" val="north"/> <a name="select" val="3"/> <a name="width" val="8"/> - <a name="enable" val="false"/> </comp> <comp lib="2" loc="(1220,640)" name="Multiplexer"> <a name="facing" val="south"/> <a name="select" val="3"/> <a name="width" val="8"/> - <a name="enable" val="false"/> </comp> <comp lib="2" loc="(480,560)" name="Demultiplexer"> <a name="select" val="3"/> - <a name="enable" val="false"/> - </comp> - <comp lib="4" loc="(690,180)" name="Register"/> - <comp lib="4" loc="(690,310)" name="Register"/> - <comp lib="4" loc="(690,440)" name="Register"/> - <comp lib="4" loc="(690,50)" name="Register"/> - <comp lib="4" loc="(690,570)" name="Register"/> - <comp lib="4" loc="(690,700)" name="Register"/> - <comp lib="4" loc="(690,830)" name="Register"/> - <comp lib="4" loc="(690,960)" name="Register"/> + </comp> + <comp lib="4" loc="(690,180)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> + <comp lib="4" loc="(690,310)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> + <comp lib="4" loc="(690,440)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> + <comp lib="4" loc="(690,50)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> + <comp lib="4" loc="(690,570)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> + <comp lib="4" loc="(690,700)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> + <comp lib="4" loc="(690,830)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> + <comp lib="4" loc="(690,960)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> <comp lib="6" loc="(1291,630)" name="Text"> - <a name="text" val="READ B"/> <a name="font" val="SansSerif plain 12"/> + <a name="text" val="READ B"/> </comp> <comp lib="6" loc="(1292,456)" name="Text"> - <a name="text" val="READ A"/> <a name="font" val="SansSerif plain 12"/> + <a name="text" val="READ A"/> </comp> - </circuit> - <circuit name="ALU_ADD_SOUS"> - <a name="circuit" val="ALU_ADD_SOUS"/> - <a name="clabel" val=""/> - <a name="clabelup" val="east"/> - <a name="clabelfont" val="SansSerif bold 16"/> - <a name="appearance" val="logisim_evolution"/> - <a name="circuitnamedboxfixedsize" val="true"/> - <a name="circuitvhdlpath" val=""/> - <wire from="(550,280)" to="(550,420)"/> - <wire from="(680,430)" to="(730,430)"/> - <wire from="(690,480)" to="(740,480)"/> - <wire from="(520,340)" to="(570,340)"/> - <wire from="(550,280)" to="(600,280)"/> - <wire from="(680,310)" to="(870,310)"/> - <wire from="(570,340)" to="(570,410)"/> - <wire from="(680,490)" to="(740,490)"/> - <wire from="(680,310)" to="(680,400)"/> - <wire from="(380,330)" to="(380,350)"/> - <wire from="(690,420)" to="(730,420)"/> - <wire from="(700,410)" to="(740,410)"/> - <wire from="(640,360)" to="(870,360)"/> - <wire from="(770,420)" to="(810,420)"/> - <wire from="(770,480)" to="(810,480)"/> - <wire from="(590,420)" to="(690,420)"/> - <wire from="(380,330)" to="(490,330)"/> - <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="(380,350)" to="(420,350)"/> - <wire from="(500,230)" to="(500,320)"/> - <wire from="(600,280)" to="(600,300)"/> - <wire from="(600,320)" to="(600,340)"/> - <wire from="(450,350)" to="(490,350)"/> - <wire from="(810,440)" to="(830,440)"/> - <wire from="(810,460)" to="(830,460)"/> - <wire from="(600,300)" to="(620,300)"/> - <wire from="(600,320)" to="(620,320)"/> - <wire from="(660,310)" to="(680,310)"/> - <wire from="(350,350)" to="(380,350)"/> - <wire from="(700,470)" to="(730,470)"/> - <wire from="(570,340)" to="(600,340)"/> - <wire from="(350,230)" to="(500,230)"/> - <wire from="(500,230)" to="(640,230)"/> - <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)"/> - <wire from="(730,430)" to="(740,430)"/> - <wire from="(730,470)" to="(740,470)"/> + <wire from="(1020,470)" to="(1020,530)"/> + <wire from="(1020,530)" to="(1210,530)"/> + <wire from="(1020,540)" to="(1020,600)"/> + <wire from="(1020,540)" to="(1220,540)"/> + <wire from="(1030,340)" to="(1030,520)"/> + <wire from="(1030,520)" to="(1200,520)"/> + <wire from="(1030,550)" to="(1030,730)"/> + <wire from="(1030,550)" to="(1230,550)"/> + <wire from="(1040,210)" to="(1040,510)"/> + <wire from="(1040,510)" to="(1190,510)"/> + <wire from="(1040,560)" to="(1040,860)"/> + <wire from="(1040,560)" to="(1240,560)"/> + <wire from="(1050,500)" to="(1180,500)"/> + <wire from="(1050,570)" to="(1050,990)"/> + <wire from="(1050,570)" to="(1250,570)"/> + <wire from="(1050,80)" to="(1050,500)"/> + <wire from="(1150,450)" to="(1180,450)"/> + <wire from="(1150,620)" to="(1180,620)"/> + <wire from="(1180,470)" to="(1180,500)"/> + <wire from="(1180,500)" to="(1180,600)"/> + <wire from="(1190,470)" to="(1190,510)"/> + <wire from="(1190,510)" to="(1190,600)"/> + <wire from="(1200,470)" to="(1200,520)"/> + <wire from="(1200,520)" to="(1200,600)"/> + <wire from="(1210,470)" to="(1210,530)"/> + <wire from="(1210,530)" to="(1210,600)"/> + <wire from="(1220,400)" to="(1220,430)"/> + <wire from="(1220,400)" to="(1270,400)"/> + <wire from="(1220,470)" to="(1220,540)"/> + <wire from="(1220,540)" to="(1220,600)"/> + <wire from="(1220,640)" to="(1220,670)"/> + <wire from="(1220,670)" to="(1270,670)"/> + <wire from="(1230,470)" to="(1230,550)"/> + <wire from="(1230,550)" to="(1230,600)"/> + <wire from="(1240,470)" to="(1240,560)"/> + <wire from="(1240,560)" to="(1240,600)"/> + <wire from="(1250,470)" to="(1250,570)"/> + <wire from="(1250,570)" to="(1250,600)"/> + <wire from="(130,170)" to="(230,170)"/> + <wire from="(130,210)" to="(230,210)"/> + <wire from="(130,230)" to="(230,230)"/> + <wire from="(150,130)" to="(230,130)"/> + <wire from="(150,70)" to="(230,70)"/> + <wire from="(150,90)" to="(230,90)"/> + <wire from="(200,150)" to="(230,150)"/> + <wire from="(460,560)" to="(480,560)"/> + <wire from="(490,610)" to="(500,610)"/> + <wire from="(500,600)" to="(500,610)"/> + <wire from="(520,520)" to="(530,520)"/> + <wire from="(520,530)" to="(540,530)"/> + <wire from="(520,540)" to="(550,540)"/> + <wire from="(520,550)" to="(560,550)"/> + <wire from="(520,560)" to="(560,560)"/> + <wire from="(520,570)" to="(550,570)"/> + <wire from="(520,580)" to="(540,580)"/> + <wire from="(520,590)" to="(530,590)"/> + <wire from="(530,100)" to="(530,520)"/> + <wire from="(530,100)" to="(690,100)"/> + <wire from="(530,1010)" to="(690,1010)"/> + <wire from="(530,590)" to="(530,1010)"/> + <wire from="(540,230)" to="(540,530)"/> + <wire from="(540,230)" to="(690,230)"/> + <wire from="(540,580)" to="(540,880)"/> + <wire from="(540,880)" to="(690,880)"/> + <wire from="(550,360)" to="(550,540)"/> + <wire from="(550,360)" to="(690,360)"/> + <wire from="(550,570)" to="(550,750)"/> + <wire from="(550,750)" to="(690,750)"/> + <wire from="(560,490)" to="(560,550)"/> + <wire from="(560,490)" to="(690,490)"/> + <wire from="(560,560)" to="(560,620)"/> + <wire from="(560,620)" to="(690,620)"/> + <wire from="(670,1030)" to="(690,1030)"/> + <wire from="(670,1060)" to="(720,1060)"/> + <wire from="(670,120)" to="(690,120)"/> + <wire from="(670,150)" to="(720,150)"/> + <wire from="(670,210)" to="(690,210)"/> + <wire from="(670,250)" to="(690,250)"/> + <wire from="(670,280)" to="(720,280)"/> + <wire from="(670,340)" to="(690,340)"/> + <wire from="(670,380)" to="(690,380)"/> + <wire from="(670,410)" to="(720,410)"/> + <wire from="(670,470)" to="(690,470)"/> + <wire from="(670,510)" to="(690,510)"/> + <wire from="(670,540)" to="(720,540)"/> + <wire from="(670,600)" to="(690,600)"/> + <wire from="(670,640)" to="(690,640)"/> + <wire from="(670,670)" to="(720,670)"/> + <wire from="(670,730)" to="(690,730)"/> + <wire from="(670,770)" to="(690,770)"/> + <wire from="(670,80)" to="(690,80)"/> + <wire from="(670,800)" to="(720,800)"/> + <wire from="(670,860)" to="(690,860)"/> + <wire from="(670,900)" to="(690,900)"/> + <wire from="(670,930)" to="(720,930)"/> + <wire from="(670,990)" to="(690,990)"/> + <wire from="(720,1050)" to="(720,1060)"/> + <wire from="(720,140)" to="(720,150)"/> + <wire from="(720,270)" to="(720,280)"/> + <wire from="(720,400)" to="(720,410)"/> + <wire from="(720,530)" to="(720,540)"/> + <wire from="(720,660)" to="(720,670)"/> + <wire from="(720,790)" to="(720,800)"/> + <wire from="(720,920)" to="(720,930)"/> + <wire from="(750,210)" to="(1040,210)"/> + <wire from="(750,340)" to="(1030,340)"/> + <wire from="(750,470)" to="(1020,470)"/> + <wire from="(750,600)" to="(1020,600)"/> + <wire from="(750,730)" to="(1030,730)"/> + <wire from="(750,80)" to="(1050,80)"/> + <wire from="(750,860)" to="(1040,860)"/> + <wire from="(750,990)" to="(1050,990)"/> + </circuit> + <circuit name="ALU_ADD_SOUS"> + <a name="appearance" val="logisim_evolution"/> + <a name="circuit" val="ALU_ADD_SOUS"/> + <a name="circuitnamedboxfixedsize" val="true"/> <comp lib="0" loc="(350,230)" name="Pin"> - <a name="label" val="OP_in"/> <a name="appearance" val="NewPins"/> + <a name="label" val="OP_in"/> </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"/> + <a name="label" val="A_in"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(350,350)" name="Pin"> - <a name="width" val="8"/> - <a name="label" val="B_in"/> <a name="appearance" val="NewPins"/> + <a name="label" val="B_in"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(550,420)" name="Splitter"> - <a name="fanout" val="1"/> - <a name="incoming" val="8"/> <a name="appear" val="right"/> <a name="bit0" val="none"/> <a name="bit1" val="none"/> @@ -2106,10 +2029,10 @@ <a name="bit5" val="none"/> <a name="bit6" val="none"/> <a name="bit7" val="0"/> - </comp> - <comp lib="0" loc="(570,410)" name="Splitter"> <a name="fanout" val="1"/> <a name="incoming" val="8"/> + </comp> + <comp lib="0" loc="(570,410)" name="Splitter"> <a name="appear" val="right"/> <a name="bit0" val="none"/> <a name="bit1" val="none"/> @@ -2119,10 +2042,10 @@ <a name="bit5" val="none"/> <a name="bit6" val="none"/> <a name="bit7" val="0"/> - </comp> - <comp lib="0" loc="(680,400)" name="Splitter"> <a name="fanout" val="1"/> <a name="incoming" val="8"/> + </comp> + <comp lib="0" loc="(680,400)" name="Splitter"> <a name="appear" val="right"/> <a name="bit0" val="none"/> <a name="bit1" val="none"/> @@ -2132,107 +2055,115 @@ <a name="bit5" val="none"/> <a name="bit6" val="none"/> <a name="bit7" val="0"/> + <a name="fanout" val="1"/> + <a name="incoming" val="8"/> </comp> <comp lib="0" loc="(870,310)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> + <a name="label" val="R_out"/> <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="(870,360)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> - <a name="output" val="true"/> <a name="label" val="C_out"/> - <a name="appearance" val="NewPins"/> + <a name="output" val="true"/> </comp> <comp lib="0" loc="(870,450)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> - <a name="output" val="true"/> <a name="label" val="V_out"/> - <a name="appearance" val="NewPins"/> + <a name="output" val="true"/> </comp> <comp lib="1" loc="(450,350)" name="NOT Gate"> <a name="width" val="8"/> </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"/> + <a name="size" val="30"/> </comp> <comp lib="1" loc="(770,480)" name="AND Gate"> - <a name="size" val="30"/> <a name="inputs" val="3"/> <a name="negate0" val="true"/> + <a name="size" val="30"/> </comp> <comp lib="1" loc="(860,450)" name="OR Gate"> <a name="size" val="30"/> </comp> <comp lib="2" loc="(520,340)" name="Multiplexer"> + <a name="enable" val="true"/> <a name="selloc" val="tr"/> <a name="width" val="8"/> </comp> <comp lib="3" loc="(660,310)" name="Adder"/> + <wire from="(350,230)" to="(500,230)"/> + <wire from="(350,280)" to="(550,280)"/> + <wire from="(350,350)" to="(380,350)"/> + <wire from="(380,330)" to="(380,350)"/> + <wire from="(380,330)" to="(490,330)"/> + <wire from="(380,350)" to="(420,350)"/> + <wire from="(450,350)" to="(490,350)"/> + <wire from="(500,230)" to="(500,320)"/> + <wire from="(500,230)" to="(640,230)"/> + <wire from="(520,340)" to="(570,340)"/> + <wire from="(550,280)" to="(550,420)"/> + <wire from="(550,280)" to="(600,280)"/> + <wire from="(570,340)" to="(570,410)"/> + <wire from="(570,340)" to="(600,340)"/> + <wire from="(570,430)" to="(680,430)"/> + <wire from="(590,420)" to="(690,420)"/> + <wire from="(600,280)" to="(600,300)"/> + <wire from="(600,300)" to="(620,300)"/> + <wire from="(600,320)" to="(600,340)"/> + <wire from="(600,320)" to="(620,320)"/> + <wire from="(640,230)" to="(640,290)"/> + <wire from="(640,330)" to="(640,360)"/> + <wire from="(640,360)" to="(870,360)"/> + <wire from="(660,310)" to="(680,310)"/> + <wire from="(680,310)" to="(680,400)"/> + <wire from="(680,310)" to="(870,310)"/> + <wire from="(680,430)" to="(680,490)"/> + <wire from="(680,430)" to="(730,430)"/> + <wire from="(680,490)" to="(740,490)"/> + <wire from="(690,420)" to="(690,480)"/> + <wire from="(690,420)" to="(730,420)"/> + <wire from="(690,480)" to="(740,480)"/> + <wire from="(700,410)" to="(700,470)"/> + <wire from="(700,410)" to="(740,410)"/> + <wire from="(700,470)" to="(730,470)"/> + <wire from="(730,420)" to="(740,420)"/> + <wire from="(730,430)" to="(740,430)"/> + <wire from="(730,470)" to="(740,470)"/> + <wire from="(770,420)" to="(810,420)"/> + <wire from="(770,480)" to="(810,480)"/> + <wire from="(810,420)" to="(810,440)"/> + <wire from="(810,440)" to="(830,440)"/> + <wire from="(810,460)" to="(810,480)"/> + <wire from="(810,460)" to="(830,460)"/> + <wire from="(860,450)" to="(870,450)"/> </circuit> <circuit name="ALU_SHIFT"> - <a name="circuit" val="ALU_SHIFT"/> - <a name="clabel" val=""/> - <a name="clabelup" val="east"/> - <a name="clabelfont" val="SansSerif bold 16"/> <a name="appearance" val="logisim_evolution"/> + <a name="circuit" val="ALU_SHIFT"/> <a name="circuitnamedboxfixedsize" val="true"/> - <a name="circuitvhdlpath" val=""/> - <wire from="(180,370)" to="(180,380)"/> - <wire from="(220,340)" to="(220,350)"/> - <wire from="(200,340)" to="(200,350)"/> - <wire from="(210,340)" to="(210,350)"/> - <wire from="(220,240)" to="(220,250)"/> - <wire from="(230,240)" to="(230,250)"/> - <wire from="(230,340)" to="(230,350)"/> - <wire from="(240,240)" to="(240,250)"/> - <wire from="(240,340)" to="(240,350)"/> - <wire from="(250,240)" to="(250,250)"/> - <wire from="(250,340)" to="(250,350)"/> - <wire from="(330,240)" to="(330,380)"/> - <wire from="(260,240)" to="(260,250)"/> - <wire from="(260,340)" to="(260,350)"/> - <wire from="(270,240)" to="(270,250)"/> - <wire from="(270,340)" to="(270,350)"/> - <wire from="(280,240)" to="(280,250)"/> - <wire from="(490,190)" to="(490,210)"/> - <wire from="(380,190)" to="(490,190)"/> - <wire from="(300,320)" to="(300,350)"/> - <wire from="(160,220)" to="(190,220)"/> - <wire from="(380,190)" to="(380,290)"/> - <wire from="(210,300)" to="(370,300)"/> - <wire from="(320,220)" to="(480,220)"/> - <wire from="(160,190)" to="(380,190)"/> - <wire from="(190,220)" to="(190,320)"/> - <wire from="(270,350)" to="(300,350)"/> - <wire from="(180,380)" to="(330,380)"/> - <wire from="(300,270)" to="(320,270)"/> - <wire from="(510,230)" to="(530,230)"/> - <wire from="(330,240)" to="(480,240)"/> - <wire from="(190,220)" to="(200,220)"/> - <wire from="(320,220)" to="(320,270)"/> - <wire from="(400,310)" to="(530,310)"/> - <wire from="(300,320)" to="(370,320)"/> - <wire from="(210,240)" to="(210,300)"/> <comp lib="0" loc="(160,190)" name="Pin"> - <a name="label" val="dir"/> <a name="appearance" val="NewPins"/> + <a name="label" val="dir"/> </comp> <comp lib="0" loc="(160,220)" name="Pin"> - <a name="width" val="8"/> - <a name="label" val="A_in"/> <a name="appearance" val="NewPins"/> + <a name="label" val="A_in"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(180,370)" name="Splitter"> + <a name="appear" val="right"/> <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="(190,320)" name="Splitter"> <a name="facing" val="south"/> @@ -2256,60 +2187,80 @@ <a name="incoming" val="8"/> </comp> <comp lib="0" loc="(530,230)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> + <a name="label" val="R_out"/> <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="(530,310)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> - <a name="output" val="true"/> <a name="label" val="C_out"/> - <a name="appearance" val="NewPins"/> + <a name="output" val="true"/> </comp> <comp lib="2" loc="(400,310)" name="Multiplexer"> + <a name="enable" val="true"/> <a name="selloc" val="tr"/> </comp> <comp lib="2" loc="(510,230)" name="Multiplexer"> + <a name="enable" val="true"/> <a name="selloc" val="tr"/> <a name="width" val="8"/> </comp> <comp lib="6" loc="(286,127)" name="Text"> - <a name="text" val="0 - left"/> <a name="font" val="SansSerif plain 12"/> + <a name="text" val="0 - left"/> </comp> <comp lib="6" loc="(290,146)" name="Text"> - <a name="text" val="1 - right"/> <a name="font" val="SansSerif plain 12"/> + <a name="text" val="1 - right"/> </comp> - </circuit> - <circuit name="ALU_SHIFT_SIGNED"> - <a name="circuit" val="ALU_SHIFT_SIGNED"/> - <a name="clabel" val=""/> - <a name="clabelup" val="east"/> - <a name="clabelfont" val="SansSerif bold 16"/> - <a name="appearance" val="logisim_evolution"/> - <a name="circuitnamedboxfixedsize" val="true"/> - <a name="circuitvhdlpath" val=""/> + <wire from="(160,190)" to="(380,190)"/> + <wire from="(160,220)" to="(190,220)"/> + <wire from="(180,370)" to="(180,380)"/> + <wire from="(180,380)" to="(330,380)"/> + <wire from="(190,220)" to="(190,320)"/> + <wire from="(190,220)" to="(200,220)"/> + <wire from="(200,340)" to="(200,350)"/> + <wire from="(210,240)" to="(210,300)"/> + <wire from="(210,300)" to="(370,300)"/> + <wire from="(210,340)" to="(210,350)"/> <wire from="(220,240)" to="(220,250)"/> + <wire from="(220,340)" to="(220,350)"/> <wire from="(230,240)" to="(230,250)"/> + <wire from="(230,340)" to="(230,350)"/> <wire from="(240,240)" to="(240,250)"/> + <wire from="(240,340)" to="(240,350)"/> <wire from="(250,240)" to="(250,250)"/> - <wire from="(290,250)" to="(340,250)"/> - <wire from="(160,220)" to="(210,220)"/> + <wire from="(250,340)" to="(250,350)"/> <wire from="(260,240)" to="(260,250)"/> + <wire from="(260,340)" to="(260,350)"/> <wire from="(270,240)" to="(270,250)"/> + <wire from="(270,340)" to="(270,350)"/> + <wire from="(270,350)" to="(300,350)"/> <wire from="(280,240)" to="(280,250)"/> - <wire from="(290,240)" to="(290,250)"/> - <wire from="(340,310)" to="(480,310)"/> - <wire from="(210,250)" to="(220,250)"/> - <wire from="(340,250)" to="(340,310)"/> - <wire from="(290,270)" to="(490,270)"/> + <wire from="(300,270)" to="(320,270)"/> + <wire from="(300,320)" to="(300,350)"/> + <wire from="(300,320)" to="(370,320)"/> + <wire from="(320,220)" to="(320,270)"/> + <wire from="(320,220)" to="(480,220)"/> + <wire from="(330,240)" to="(330,380)"/> + <wire from="(330,240)" to="(480,240)"/> + <wire from="(380,190)" to="(380,290)"/> + <wire from="(380,190)" to="(490,190)"/> + <wire from="(400,310)" to="(530,310)"/> + <wire from="(490,190)" to="(490,210)"/> + <wire from="(510,230)" to="(530,230)"/> + </circuit> + <circuit name="ALU_SHIFT_SIGNED"> + <a name="appearance" val="logisim_evolution"/> + <a name="circuit" val="ALU_SHIFT_SIGNED"/> + <a name="circuitnamedboxfixedsize" val="true"/> <comp lib="0" loc="(160,220)" name="Pin"> - <a name="width" val="8"/> - <a name="label" val="A_in"/> <a name="appearance" val="NewPins"/> + <a name="label" val="A_in"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(210,220)" name="Splitter"> <a name="facing" val="south"/> @@ -2322,215 +2273,125 @@ <a name="incoming" val="8"/> </comp> <comp lib="0" loc="(480,310)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> - <a name="output" val="true"/> <a name="label" val="C_out"/> - <a name="appearance" val="NewPins"/> + <a name="output" val="true"/> </comp> <comp lib="0" loc="(490,270)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> + <a name="label" val="R_out"/> <a name="output" val="true"/> <a name="width" val="8"/> - <a name="label" val="R_out"/> - <a name="appearance" val="NewPins"/> </comp> + <wire from="(160,220)" to="(210,220)"/> + <wire from="(210,250)" to="(220,250)"/> + <wire from="(220,240)" to="(220,250)"/> + <wire from="(230,240)" to="(230,250)"/> + <wire from="(240,240)" to="(240,250)"/> + <wire from="(250,240)" to="(250,250)"/> + <wire from="(260,240)" to="(260,250)"/> + <wire from="(270,240)" to="(270,250)"/> + <wire from="(280,240)" to="(280,250)"/> + <wire from="(290,240)" to="(290,250)"/> + <wire from="(290,250)" to="(340,250)"/> + <wire from="(290,270)" to="(490,270)"/> + <wire from="(340,250)" to="(340,310)"/> + <wire from="(340,310)" to="(480,310)"/> </circuit> <circuit name="ALU_AND"> - <a name="circuit" val="ALU_AND"/> - <a name="clabel" val=""/> - <a name="clabelup" val="east"/> - <a name="clabelfont" val="SansSerif bold 16"/> <a name="appearance" val="logisim_evolution"/> + <a name="circuit" val="ALU_AND"/> <a name="circuitnamedboxfixedsize" val="true"/> - <a name="circuitvhdlpath" val=""/> - <wire from="(180,260)" to="(270,260)"/> - <wire from="(180,280)" to="(270,280)"/> - <wire from="(300,270)" to="(350,270)"/> <comp lib="0" loc="(180,260)" name="Pin"> - <a name="width" val="8"/> - <a name="label" val="A_in"/> <a name="appearance" val="NewPins"/> + <a name="label" val="A_in"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(180,280)" name="Pin"> - <a name="width" val="8"/> - <a name="label" val="B_in"/> <a name="appearance" val="NewPins"/> + <a name="label" val="B_in"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(350,270)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> + <a name="label" val="R_out"/> <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="(300,270)" name="AND Gate"> - <a name="width" val="8"/> <a name="size" val="30"/> + <a name="width" val="8"/> </comp> + <wire from="(180,260)" to="(270,260)"/> + <wire from="(180,280)" to="(270,280)"/> + <wire from="(300,270)" to="(350,270)"/> </circuit> <circuit name="ALU_OR"> - <a name="circuit" val="ALU_OR"/> - <a name="clabel" val=""/> - <a name="clabelup" val="east"/> - <a name="clabelfont" val="SansSerif bold 16"/> <a name="appearance" val="logisim_evolution"/> + <a name="circuit" val="ALU_OR"/> <a name="circuitnamedboxfixedsize" val="true"/> - <a name="circuitvhdlpath" val=""/> - <wire from="(180,260)" to="(270,260)"/> - <wire from="(180,280)" to="(270,280)"/> - <wire from="(300,270)" to="(350,270)"/> <comp lib="0" loc="(180,260)" name="Pin"> - <a name="width" val="8"/> - <a name="label" val="A_in"/> <a name="appearance" val="NewPins"/> + <a name="label" val="A_in"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(180,280)" name="Pin"> - <a name="width" val="8"/> - <a name="label" val="B_in"/> <a name="appearance" val="NewPins"/> + <a name="label" val="B_in"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(350,270)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> + <a name="label" val="R_out"/> <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="(300,270)" name="OR Gate"> - <a name="width" val="8"/> <a name="size" val="30"/> + <a name="width" val="8"/> </comp> + <wire from="(180,260)" to="(270,260)"/> + <wire from="(180,280)" to="(270,280)"/> + <wire from="(300,270)" to="(350,270)"/> </circuit> <circuit name="ALU_NOT"> - <a name="circuit" val="ALU_NOT"/> - <a name="clabel" val=""/> - <a name="clabelup" val="east"/> - <a name="clabelfont" val="SansSerif bold 16"/> <a name="appearance" val="logisim_evolution"/> + <a name="circuit" val="ALU_NOT"/> <a name="circuitnamedboxfixedsize" val="true"/> - <a name="circuitvhdlpath" val=""/> - <wire from="(180,260)" to="(270,260)"/> - <wire from="(300,260)" to="(350,260)"/> <comp lib="0" loc="(180,260)" name="Pin"> - <a name="width" val="8"/> - <a name="label" val="A_in"/> <a name="appearance" val="NewPins"/> + <a name="label" val="A_in"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(350,260)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> + <a name="label" val="R_out"/> <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="(300,260)" name="NOT Gate"> <a name="width" val="8"/> </comp> + <wire from="(180,260)" to="(270,260)"/> + <wire from="(300,260)" to="(350,260)"/> </circuit> <circuit name="ALU"> - <a name="circuit" val="ALU"/> - <a name="clabel" val=""/> - <a name="clabelup" val="east"/> - <a name="clabelfont" val="SansSerif bold 16"/> <a name="appearance" val="logisim_evolution"/> + <a name="circuit" val="ALU"/> <a name="circuitnamedboxfixedsize" val="true"/> - <a name="circuitvhdlpath" val=""/> - <wire from="(660,460)" to="(970,460)"/> - <wire from="(830,250)" to="(950,250)"/> - <wire from="(960,500)" to="(960,510)"/> - <wire from="(830,230)" to="(950,230)"/> - <wire from="(940,480)" to="(940,490)"/> - <wire from="(960,520)" to="(960,530)"/> - <wire from="(970,450)" to="(970,460)"/> - <wire from="(970,470)" to="(970,480)"/> - <wire from="(1220,400)" to="(1220,420)"/> - <wire from="(830,230)" to="(830,240)"/> - <wire from="(830,250)" to="(830,260)"/> - <wire from="(630,270)" to="(680,270)"/> - <wire from="(1310,350)" to="(1410,350)"/> - <wire from="(830,260)" to="(830,330)"/> - <wire from="(870,300)" to="(870,650)"/> - <wire from="(170,150)" to="(170,170)"/> - <wire from="(940,490)" to="(980,490)"/> - <wire from="(660,250)" to="(660,460)"/> - <wire from="(50,250)" to="(410,250)"/> - <wire from="(50,350)" to="(410,350)"/> - <wire from="(50,410)" to="(410,410)"/> - <wire from="(50,490)" to="(410,490)"/> - <wire from="(50,570)" to="(410,570)"/> - <wire from="(50,650)" to="(410,650)"/> - <wire from="(630,650)" to="(870,650)"/> - <wire from="(840,270)" to="(950,270)"/> - <wire from="(850,280)" to="(850,490)"/> - <wire from="(960,510)" to="(980,510)"/> - <wire from="(170,170)" to="(170,210)"/> - <wire from="(630,250)" to="(660,250)"/> - <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="(970,170)" to="(970,230)"/> - <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,430)" to="(1260,430)"/> - <wire from="(630,430)" to="(640,430)"/> - <wire from="(840,270)" to="(840,410)"/> - <wire from="(960,510)" to="(960,520)"/> - <wire from="(830,240)" to="(950,240)"/> - <wire from="(830,260)" to="(950,260)"/> - <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)"/> - <wire from="(50,570)" to="(50,650)"/> - <wire from="(850,280)" to="(950,280)"/> - <wire from="(630,570)" to="(860,570)"/> - <wire from="(1030,270)" to="(1260,270)"/> - <wire from="(110,270)" to="(410,270)"/> - <wire from="(860,290)" to="(860,570)"/> - <wire from="(110,510)" to="(410,510)"/> - <wire from="(110,590)" to="(410,590)"/> - <wire from="(1000,170)" to="(1000,450)"/> - <wire from="(990,270)" to="(1030,270)"/> - <wire from="(640,480)" to="(940,480)"/> - <wire from="(1020,490)" to="(1260,490)"/> - <wire from="(1030,340)" to="(1270,340)"/> - <wire from="(960,500)" to="(980,500)"/> - <wire from="(960,520)" to="(980,520)"/> - <wire from="(170,170)" to="(970,170)"/> - <wire from="(50,150)" to="(50,250)"/> - <wire from="(50,250)" to="(50,350)"/> - <wire from="(630,350)" to="(650,350)"/> - <wire from="(170,210)" to="(170,310)"/> - <wire from="(380,230)" to="(410,230)"/> - <wire from="(380,330)" to="(410,330)"/> - <wire from="(630,410)" to="(840,410)"/> - <wire from="(680,270)" to="(680,560)"/> - <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)"/> - <wire from="(640,430)" to="(640,480)"/> - <wire from="(870,300)" to="(950,300)"/> + <a name="simulationFrequency" val="1.0"/> <comp lib="0" loc="(110,150)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="south"/> - <a name="width" val="8"/> <a name="label" val="B_in"/> - <a name="appearance" val="NewPins"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(1220,420)" name="Splitter"> - <a name="fanout" val="1"/> - <a name="incoming" val="8"/> <a name="appear" val="right"/> <a name="bit0" val="none"/> <a name="bit1" val="none"/> @@ -2540,79 +2401,79 @@ <a name="bit5" val="none"/> <a name="bit6" val="none"/> <a name="bit7" val="0"/> + <a name="fanout" val="1"/> + <a name="incoming" val="8"/> </comp> <comp lib="0" loc="(1240,360)" name="Constant"> - <a name="width" val="8"/> <a name="value" val="0x0"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(1260,270)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> + <a name="label" val="R"/> <a name="output" val="true"/> <a name="width" val="8"/> - <a name="label" val="R"/> - <a name="appearance" val="NewPins"/> </comp> <comp lib="0" loc="(1260,430)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> - <a name="output" val="true"/> <a name="label" val="N"/> - <a name="appearance" val="NewPins"/> + <a name="output" val="true"/> </comp> <comp lib="0" loc="(1260,490)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> - <a name="output" val="true"/> <a name="label" val="C"/> - <a name="appearance" val="NewPins"/> + <a name="output" val="true"/> </comp> <comp lib="0" loc="(1260,560)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> - <a name="output" val="true"/> <a name="label" val="V"/> - <a name="appearance" val="NewPins"/> + <a name="output" val="true"/> </comp> <comp lib="0" loc="(1410,350)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> - <a name="output" val="true"/> <a name="label" val="Z"/> - <a name="appearance" val="NewPins"/> + <a name="output" val="true"/> </comp> <comp lib="0" loc="(170,150)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="south"/> - <a name="width" val="3"/> <a name="label" val="OP_in"/> - <a name="appearance" val="NewPins"/> + <a name="width" val="3"/> </comp> <comp lib="0" loc="(370,210)" name="Splitter"> + <a name="bit1" val="none"/> + <a name="bit2" val="none"/> <a name="facing" val="south"/> <a name="fanout" val="1"/> <a name="incoming" val="3"/> - <a name="bit1" val="none"/> - <a name="bit2" val="none"/> </comp> <comp lib="0" loc="(370,310)" name="Splitter"> + <a name="bit1" val="none"/> + <a name="bit2" val="none"/> <a name="facing" val="south"/> <a name="fanout" val="1"/> <a name="incoming" val="3"/> - <a name="bit1" val="none"/> - <a name="bit2" val="none"/> </comp> <comp lib="0" loc="(50,150)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="south"/> - <a name="width" val="8"/> <a name="label" val="A_in"/> - <a name="appearance" val="NewPins"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(960,530)" name="Ground"/> <comp lib="2" loc="(1020,490)" name="Multiplexer"> - <a name="selloc" val="tr"/> <a name="select" val="3"/> - <a name="enable" val="false"/> + <a name="selloc" val="tr"/> </comp> <comp lib="2" loc="(990,270)" name="Multiplexer"> - <a name="selloc" val="tr"/> <a name="select" val="3"/> + <a name="selloc" val="tr"/> <a name="width" val="8"/> - <a name="enable" val="false"/> </comp> <comp lib="3" loc="(1310,350)" name="Comparator"/> <comp loc="(630,230)" name="ALU_ADD_SOUS"> @@ -2633,17 +2494,99 @@ <comp loc="(630,650)" name="ALU_NOT"> <a name="label" val="ALU_NON"/> </comp> + <wire from="(1000,170)" to="(1000,450)"/> + <wire from="(1020,490)" to="(1260,490)"/> + <wire from="(1030,270)" to="(1030,340)"/> + <wire from="(1030,270)" to="(1260,270)"/> + <wire from="(1030,340)" to="(1030,400)"/> + <wire from="(1030,340)" to="(1270,340)"/> + <wire from="(1030,400)" to="(1220,400)"/> + <wire from="(110,150)" to="(110,270)"/> + <wire from="(110,270)" to="(110,510)"/> + <wire from="(110,270)" to="(410,270)"/> + <wire from="(110,510)" to="(110,590)"/> + <wire from="(110,510)" to="(410,510)"/> + <wire from="(110,590)" to="(410,590)"/> + <wire from="(1220,400)" to="(1220,420)"/> + <wire from="(1240,360)" to="(1270,360)"/> + <wire from="(1240,430)" to="(1260,430)"/> + <wire from="(1310,350)" to="(1410,350)"/> + <wire from="(170,150)" to="(170,170)"/> + <wire from="(170,170)" to="(170,210)"/> + <wire from="(170,170)" to="(970,170)"/> + <wire from="(170,210)" to="(170,310)"/> + <wire from="(170,210)" to="(370,210)"/> + <wire from="(170,310)" to="(370,310)"/> + <wire from="(380,230)" to="(410,230)"/> + <wire from="(380,330)" to="(410,330)"/> + <wire from="(50,150)" to="(50,250)"/> + <wire from="(50,250)" to="(410,250)"/> + <wire from="(50,250)" to="(50,350)"/> + <wire from="(50,350)" to="(410,350)"/> + <wire from="(50,350)" to="(50,410)"/> + <wire from="(50,410)" to="(410,410)"/> + <wire from="(50,410)" to="(50,490)"/> + <wire from="(50,490)" to="(410,490)"/> + <wire from="(50,490)" to="(50,570)"/> + <wire from="(50,570)" to="(410,570)"/> + <wire from="(50,570)" to="(50,650)"/> + <wire from="(50,650)" to="(410,650)"/> + <wire from="(630,230)" to="(830,230)"/> + <wire from="(630,250)" to="(660,250)"/> + <wire from="(630,270)" to="(680,270)"/> + <wire from="(630,330)" to="(830,330)"/> + <wire from="(630,350)" to="(650,350)"/> + <wire from="(630,410)" to="(840,410)"/> + <wire from="(630,430)" to="(640,430)"/> + <wire from="(630,490)" to="(850,490)"/> + <wire from="(630,570)" to="(860,570)"/> + <wire from="(630,650)" to="(870,650)"/> + <wire from="(640,430)" to="(640,480)"/> + <wire from="(640,480)" to="(940,480)"/> + <wire from="(650,350)" to="(650,470)"/> + <wire from="(650,470)" to="(970,470)"/> + <wire from="(660,250)" to="(660,460)"/> + <wire from="(660,460)" to="(970,460)"/> + <wire from="(680,270)" to="(680,560)"/> + <wire from="(680,560)" to="(1260,560)"/> + <wire from="(830,230)" to="(830,240)"/> + <wire from="(830,230)" to="(950,230)"/> + <wire from="(830,240)" to="(950,240)"/> + <wire from="(830,250)" to="(830,260)"/> + <wire from="(830,250)" to="(950,250)"/> + <wire from="(830,260)" to="(830,330)"/> + <wire from="(830,260)" to="(950,260)"/> + <wire from="(840,270)" to="(840,410)"/> + <wire from="(840,270)" to="(950,270)"/> + <wire from="(850,280)" to="(850,490)"/> + <wire from="(850,280)" to="(950,280)"/> + <wire from="(860,290)" to="(860,570)"/> + <wire from="(860,290)" to="(950,290)"/> + <wire from="(870,300)" to="(870,650)"/> + <wire from="(870,300)" to="(950,300)"/> + <wire from="(940,480)" to="(940,490)"/> + <wire from="(940,490)" to="(980,490)"/> + <wire from="(960,500)" to="(960,510)"/> + <wire from="(960,500)" to="(980,500)"/> + <wire from="(960,510)" to="(960,520)"/> + <wire from="(960,510)" to="(980,510)"/> + <wire from="(960,520)" to="(960,530)"/> + <wire from="(960,520)" to="(980,520)"/> + <wire from="(970,170)" to="(1000,170)"/> + <wire from="(970,170)" to="(970,230)"/> + <wire from="(970,450)" to="(970,460)"/> + <wire from="(970,450)" to="(980,450)"/> + <wire from="(970,460)" to="(980,460)"/> + <wire from="(970,470)" to="(970,480)"/> + <wire from="(970,470)" to="(980,470)"/> + <wire from="(970,480)" to="(980,480)"/> + <wire from="(990,270)" to="(1030,270)"/> </circuit> <circuit name="CPU_RL"> - <a name="circuit" val="CPU_RL"/> - <a name="clabel" val=""/> - <a name="clabelup" val="east"/> - <a name="clabelfont" val="SansSerif bold 16"/> <a name="appearance" val="custom"/> + <a name="circuit" val="CPU_RL"/> <a name="circuitnamedboxfixedsize" val="true"/> - <a name="circuitvhdlpath" val=""/> <appear> - <circ-port height="10" pin="870,210" width="10" x="185" y="55"/> <rect fill="none" height="79" stroke="#000000" stroke-width="2" width="120" x="60" y="50"/> <rect height="19" stroke="none" width="120" x="60" y="110"/> <rect height="3" stroke="none" width="10" x="50" y="79"/> @@ -2653,194 +2596,103 @@ <text dominant-baseline="alphabetic" fill="#404040" font-family="Dialog" font-size="12" text-anchor="end" x="175" y="64">REG_L</text> <text dominant-baseline="alphabetic" fill="#404040" font-family="Dialog" font-size="12" text-anchor="start" x="65" y="104">RESET</text> <text dominant-baseline="alphabetic" fill="#404040" font-family="Dialog" font-size="12" text-anchor="start" x="65" y="64">PC</text> - <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="730,250" width="8" x="46" y="76"/> <text dominant-baseline="alphabetic" fill="#404040" font-family="Dialog" font-size="12" text-anchor="start" x="65" y="84">CLK</text> <text dominant-baseline="alphabetic" fill="#ffffff" font-family="Dialog" 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"/> <circ-anchor facing="east" height="6" width="6" x="187" y="57"/> + <circ-port height="10" pin="870,210" width="10" x="185" y="55"/> + <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"/> + <circ-port height="8" pin="790,300" width="8" x="46" y="96"/> </appear> - <wire from="(790,270)" to="(790,300)"/> - <wire from="(820,210)" to="(870,210)"/> - <wire from="(610,200)" to="(680,200)"/> - <wire from="(720,210)" to="(760,210)"/> - <wire from="(660,220)" to="(680,220)"/> - <wire from="(730,250)" to="(760,250)"/> - <wire from="(750,230)" to="(760,230)"/> <comp lib="0" loc="(610,200)" name="Pin"> - <a name="width" val="4"/> - <a name="label" val="PC"/> <a name="appearance" val="NewPins"/> + <a name="label" val="PC"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(660,220)" name="Constant"> <a name="width" val="4"/> </comp> <comp lib="0" loc="(730,250)" name="Pin"> - <a name="label" val="CLK"/> <a name="appearance" val="NewPins"/> + <a name="label" val="CLK"/> </comp> <comp lib="0" loc="(750,230)" name="Constant"/> <comp lib="0" loc="(790,300)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="north"/> <a name="label" val="RESET"/> - <a name="appearance" val="NewPins"/> </comp> <comp lib="0" loc="(870,210)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> + <a name="label" val="REG_L"/> <a name="output" val="true"/> <a name="width" val="4"/> - <a name="label" val="REG_L"/> - <a name="appearance" val="NewPins"/> </comp> <comp lib="3" loc="(720,210)" name="Adder"> <a name="width" val="4"/> </comp> <comp lib="4" loc="(760,180)" name="Register"> + <a name="appearance" val="logisim_evolution"/> <a name="width" val="4"/> </comp> + <wire from="(610,200)" to="(680,200)"/> + <wire from="(660,220)" to="(680,220)"/> + <wire from="(720,210)" to="(760,210)"/> + <wire from="(730,250)" to="(760,250)"/> + <wire from="(750,230)" to="(760,230)"/> + <wire from="(790,270)" to="(790,300)"/> + <wire from="(820,210)" to="(870,210)"/> </circuit> <circuit name="CPU_RAM8"> - <a name="circuit" val="CPU_RAM8"/> - <a name="clabel" val=""/> - <a name="clabelup" val="east"/> - <a name="clabelfont" val="SansSerif bold 16"/> <a name="appearance" val="logisim_evolution"/> + <a name="circuit" val="CPU_RAM8"/> <a name="circuitnamedboxfixedsize" val="true"/> - <a name="circuitvhdlpath" val=""/> - <wire from="(720,140)" to="(720,150)"/> - <wire from="(720,400)" to="(720,410)"/> - <wire from="(720,660)" to="(720,670)"/> - <wire from="(720,920)" to="(720,930)"/> - <wire from="(670,150)" to="(720,150)"/> - <wire from="(670,410)" to="(720,410)"/> - <wire from="(670,670)" to="(720,670)"/> - <wire from="(670,930)" to="(720,930)"/> - <wire from="(1020,540)" to="(1120,540)"/> - <wire from="(750,210)" to="(1040,210)"/> - <wire from="(460,560)" to="(560,560)"/> - <wire from="(180,180)" to="(280,180)"/> - <wire from="(180,220)" to="(280,220)"/> - <wire from="(180,240)" to="(280,240)"/> - <wire from="(750,80)" to="(1050,80)"/> - <wire from="(1040,560)" to="(1120,560)"/> - <wire from="(460,570)" to="(550,570)"/> - <wire from="(540,880)" to="(690,880)"/> - <wire from="(1140,580)" to="(1140,630)"/> - <wire from="(750,340)" to="(1030,340)"/> - <wire from="(540,580)" to="(540,880)"/> - <wire from="(670,120)" to="(690,120)"/> - <wire from="(670,340)" to="(690,340)"/> - <wire from="(670,380)" to="(690,380)"/> - <wire from="(670,600)" to="(690,600)"/> - <wire from="(670,640)" to="(690,640)"/> - <wire from="(670,860)" to="(690,860)"/> - <wire from="(670,900)" to="(690,900)"/> - <wire from="(530,100)" to="(690,100)"/> - <wire from="(1030,520)" to="(1120,520)"/> - <wire from="(1050,500)" to="(1120,500)"/> - <wire from="(530,590)" to="(530,1010)"/> - <wire from="(440,600)" to="(440,640)"/> - <wire from="(1020,540)" to="(1020,600)"/> - <wire from="(200,120)" to="(280,120)"/> - <wire from="(1050,570)" to="(1050,990)"/> - <wire from="(560,560)" to="(560,620)"/> - <wire from="(560,620)" to="(690,620)"/> - <wire from="(460,580)" to="(540,580)"/> - <wire from="(750,470)" to="(1020,470)"/> - <wire from="(1030,550)" to="(1030,730)"/> - <wire from="(1040,560)" to="(1040,860)"/> - <wire from="(550,360)" to="(690,360)"/> - <wire from="(550,570)" to="(550,750)"/> - <wire from="(460,590)" to="(530,590)"/> - <wire from="(720,1050)" to="(720,1060)"/> - <wire from="(720,270)" to="(720,280)"/> - <wire from="(720,530)" to="(720,540)"/> - <wire from="(720,790)" to="(720,800)"/> - <wire from="(670,1060)" to="(720,1060)"/> - <wire from="(670,280)" to="(720,280)"/> - <wire from="(670,540)" to="(720,540)"/> - <wire from="(670,800)" to="(720,800)"/> - <wire from="(1020,530)" to="(1120,530)"/> - <wire from="(750,860)" to="(1040,860)"/> - <wire from="(580,80)" to="(690,80)"/> - <wire from="(460,550)" to="(560,550)"/> - <wire from="(750,990)" to="(1050,990)"/> - <wire from="(1040,510)" to="(1120,510)"/> - <wire from="(250,160)" to="(280,160)"/> - <wire from="(460,540)" to="(550,540)"/> - <wire from="(540,230)" to="(690,230)"/> - <wire from="(1040,210)" to="(1040,510)"/> - <wire from="(750,730)" to="(1030,730)"/> - <wire from="(540,230)" to="(540,530)"/> - <wire from="(670,1030)" to="(690,1030)"/> - <wire from="(670,210)" to="(690,210)"/> - <wire from="(670,250)" to="(690,250)"/> - <wire from="(670,470)" to="(690,470)"/> - <wire from="(670,510)" to="(690,510)"/> - <wire from="(670,730)" to="(690,730)"/> - <wire from="(670,770)" to="(690,770)"/> - <wire from="(670,990)" to="(690,990)"/> - <wire from="(530,1010)" to="(690,1010)"/> - <wire from="(1030,550)" to="(1120,550)"/> - <wire from="(1050,570)" to="(1120,570)"/> - <wire from="(400,560)" to="(420,560)"/> - <wire from="(1050,80)" to="(1050,500)"/> - <wire from="(1160,540)" to="(1230,540)"/> - <wire from="(530,100)" to="(530,520)"/> - <wire from="(1020,470)" to="(1020,530)"/> - <wire from="(560,490)" to="(560,550)"/> - <wire from="(560,490)" to="(690,490)"/> - <wire from="(460,530)" to="(540,530)"/> - <wire from="(750,600)" to="(1020,600)"/> - <wire from="(1030,340)" to="(1030,520)"/> - <wire from="(550,360)" to="(550,540)"/> - <wire from="(550,750)" to="(690,750)"/> - <wire from="(460,520)" to="(530,520)"/> <comp lib="0" loc="(1140,630)" name="Tunnel"> <a name="facing" val="north"/> - <a name="width" val="3"/> <a name="label" val="ADD_A"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="3"/> </comp> <comp lib="0" loc="(1230,540)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> + <a name="label" val="DATA_OUT"/> <a name="output" val="true"/> <a name="width" val="8"/> - <a name="label" val="DATA_OUT"/> - <a name="appearance" val="NewPins"/> </comp> <comp lib="0" loc="(180,180)" name="Pin"> - <a name="label" val="EN_WR"/> <a name="appearance" val="NewPins"/> + <a name="label" val="EN_WR"/> </comp> <comp lib="0" loc="(180,220)" name="Pin"> - <a name="label" val="CLK"/> <a name="appearance" val="NewPins"/> + <a name="label" val="CLK"/> </comp> <comp lib="0" loc="(180,240)" name="Pin"> - <a name="label" val="RESET"/> <a name="appearance" val="NewPins"/> + <a name="label" val="RESET"/> </comp> <comp lib="0" loc="(200,120)" name="Pin"> - <a name="width" val="3"/> - <a name="label" val="ADD_A"/> <a name="appearance" val="NewPins"/> + <a name="label" val="ADD_A"/> + <a name="width" val="3"/> </comp> <comp lib="0" loc="(250,160)" name="Pin"> - <a name="width" val="8"/> - <a name="label" val="DATA_WR"/> <a name="appearance" val="NewPins"/> + <a name="label" val="DATA_WR"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(280,120)" name="Tunnel"> - <a name="width" val="3"/> <a name="label" val="ADD_A"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="3"/> </comp> <comp lib="0" loc="(280,160)" name="Tunnel"> - <a name="width" val="8"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(280,180)" name="Tunnel"> <a name="label" val="EN_WR"/> @@ -2861,15 +2713,15 @@ </comp> <comp lib="0" loc="(440,640)" name="Tunnel"> <a name="facing" val="north"/> - <a name="width" val="3"/> <a name="label" val="ADD_A"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="3"/> </comp> <comp lib="0" loc="(580,80)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(670,1030)" name="Tunnel"> <a name="facing" val="east"/> @@ -2893,9 +2745,9 @@ </comp> <comp lib="0" loc="(670,210)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(670,250)" name="Tunnel"> <a name="facing" val="east"/> @@ -2909,9 +2761,9 @@ </comp> <comp lib="0" loc="(670,340)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(670,380)" name="Tunnel"> <a name="facing" val="east"/> @@ -2925,9 +2777,9 @@ </comp> <comp lib="0" loc="(670,470)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(670,510)" name="Tunnel"> <a name="facing" val="east"/> @@ -2941,9 +2793,9 @@ </comp> <comp lib="0" loc="(670,600)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(670,640)" name="Tunnel"> <a name="facing" val="east"/> @@ -2957,9 +2809,9 @@ </comp> <comp lib="0" loc="(670,730)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(670,770)" name="Tunnel"> <a name="facing" val="east"/> @@ -2973,9 +2825,9 @@ </comp> <comp lib="0" loc="(670,860)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(670,900)" name="Tunnel"> <a name="facing" val="east"/> @@ -2989,113 +2841,184 @@ </comp> <comp lib="0" loc="(670,990)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="2" loc="(1160,540)" name="Multiplexer"> <a name="select" val="3"/> <a name="width" val="8"/> - <a name="enable" val="false"/> </comp> <comp lib="2" loc="(420,560)" name="Demultiplexer"> <a name="select" val="3"/> - <a name="enable" val="false"/> - </comp> - <comp lib="4" loc="(690,180)" name="Register"/> - <comp lib="4" loc="(690,310)" name="Register"/> - <comp lib="4" loc="(690,440)" name="Register"/> - <comp lib="4" loc="(690,50)" name="Register"/> - <comp lib="4" loc="(690,570)" name="Register"/> - <comp lib="4" loc="(690,700)" name="Register"/> - <comp lib="4" loc="(690,830)" name="Register"/> - <comp lib="4" loc="(690,960)" name="Register"/> + </comp> + <comp lib="4" loc="(690,180)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> + <comp lib="4" loc="(690,310)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> + <comp lib="4" loc="(690,440)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> + <comp lib="4" loc="(690,50)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> + <comp lib="4" loc="(690,570)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> + <comp lib="4" loc="(690,700)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> + <comp lib="4" loc="(690,830)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> + <comp lib="4" loc="(690,960)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> <comp lib="6" loc="(1144,666)" name="Text"> - <a name="text" val="READ A"/> <a name="font" val="SansSerif plain 12"/> + <a name="text" val="READ A"/> </comp> + <wire from="(1020,470)" to="(1020,530)"/> + <wire from="(1020,530)" to="(1120,530)"/> + <wire from="(1020,540)" to="(1020,600)"/> + <wire from="(1020,540)" to="(1120,540)"/> + <wire from="(1030,340)" to="(1030,520)"/> + <wire from="(1030,520)" to="(1120,520)"/> + <wire from="(1030,550)" to="(1030,730)"/> + <wire from="(1030,550)" to="(1120,550)"/> + <wire from="(1040,210)" to="(1040,510)"/> + <wire from="(1040,510)" to="(1120,510)"/> + <wire from="(1040,560)" to="(1040,860)"/> + <wire from="(1040,560)" to="(1120,560)"/> + <wire from="(1050,500)" to="(1120,500)"/> + <wire from="(1050,570)" to="(1050,990)"/> + <wire from="(1050,570)" to="(1120,570)"/> + <wire from="(1050,80)" to="(1050,500)"/> + <wire from="(1140,580)" to="(1140,630)"/> + <wire from="(1160,540)" to="(1230,540)"/> + <wire from="(180,180)" to="(280,180)"/> + <wire from="(180,220)" to="(280,220)"/> + <wire from="(180,240)" to="(280,240)"/> + <wire from="(200,120)" to="(280,120)"/> + <wire from="(250,160)" to="(280,160)"/> + <wire from="(400,560)" to="(420,560)"/> + <wire from="(440,600)" to="(440,640)"/> + <wire from="(460,520)" to="(530,520)"/> + <wire from="(460,530)" to="(540,530)"/> + <wire from="(460,540)" to="(550,540)"/> + <wire from="(460,550)" to="(560,550)"/> + <wire from="(460,560)" to="(560,560)"/> + <wire from="(460,570)" to="(550,570)"/> + <wire from="(460,580)" to="(540,580)"/> + <wire from="(460,590)" to="(530,590)"/> + <wire from="(530,100)" to="(530,520)"/> + <wire from="(530,100)" to="(690,100)"/> + <wire from="(530,1010)" to="(690,1010)"/> + <wire from="(530,590)" to="(530,1010)"/> + <wire from="(540,230)" to="(540,530)"/> + <wire from="(540,230)" to="(690,230)"/> + <wire from="(540,580)" to="(540,880)"/> + <wire from="(540,880)" to="(690,880)"/> + <wire from="(550,360)" to="(550,540)"/> + <wire from="(550,360)" to="(690,360)"/> + <wire from="(550,570)" to="(550,750)"/> + <wire from="(550,750)" to="(690,750)"/> + <wire from="(560,490)" to="(560,550)"/> + <wire from="(560,490)" to="(690,490)"/> + <wire from="(560,560)" to="(560,620)"/> + <wire from="(560,620)" to="(690,620)"/> + <wire from="(580,80)" to="(690,80)"/> + <wire from="(670,1030)" to="(690,1030)"/> + <wire from="(670,1060)" to="(720,1060)"/> + <wire from="(670,120)" to="(690,120)"/> + <wire from="(670,150)" to="(720,150)"/> + <wire from="(670,210)" to="(690,210)"/> + <wire from="(670,250)" to="(690,250)"/> + <wire from="(670,280)" to="(720,280)"/> + <wire from="(670,340)" to="(690,340)"/> + <wire from="(670,380)" to="(690,380)"/> + <wire from="(670,410)" to="(720,410)"/> + <wire from="(670,470)" to="(690,470)"/> + <wire from="(670,510)" to="(690,510)"/> + <wire from="(670,540)" to="(720,540)"/> + <wire from="(670,600)" to="(690,600)"/> + <wire from="(670,640)" to="(690,640)"/> + <wire from="(670,670)" to="(720,670)"/> + <wire from="(670,730)" to="(690,730)"/> + <wire from="(670,770)" to="(690,770)"/> + <wire from="(670,800)" to="(720,800)"/> + <wire from="(670,860)" to="(690,860)"/> + <wire from="(670,900)" to="(690,900)"/> + <wire from="(670,930)" to="(720,930)"/> + <wire from="(670,990)" to="(690,990)"/> + <wire from="(720,1050)" to="(720,1060)"/> + <wire from="(720,140)" to="(720,150)"/> + <wire from="(720,270)" to="(720,280)"/> + <wire from="(720,400)" to="(720,410)"/> + <wire from="(720,530)" to="(720,540)"/> + <wire from="(720,660)" to="(720,670)"/> + <wire from="(720,790)" to="(720,800)"/> + <wire from="(720,920)" to="(720,930)"/> + <wire from="(750,210)" to="(1040,210)"/> + <wire from="(750,340)" to="(1030,340)"/> + <wire from="(750,470)" to="(1020,470)"/> + <wire from="(750,600)" to="(1020,600)"/> + <wire from="(750,730)" to="(1030,730)"/> + <wire from="(750,80)" to="(1050,80)"/> + <wire from="(750,860)" to="(1040,860)"/> + <wire from="(750,990)" to="(1050,990)"/> </circuit> <circuit name="CPU_RAM16"> - <a name="circuit" val="CPU_RAM16"/> - <a name="clabel" val=""/> - <a name="clabelup" val="east"/> - <a name="clabelfont" val="SansSerif bold 16"/> <a name="appearance" val="logisim_evolution"/> + <a name="circuit" val="CPU_RAM16"/> <a name="circuitnamedboxfixedsize" val="true"/> - <a name="circuitvhdlpath" val=""/> - <wire from="(1130,490)" to="(1130,510)"/> - <wire from="(670,370)" to="(730,370)"/> - <wire from="(830,340)" to="(870,340)"/> - <wire from="(830,360)" to="(870,360)"/> - <wire from="(830,400)" to="(870,400)"/> - <wire from="(830,420)" to="(870,420)"/> - <wire from="(830,480)" to="(870,480)"/> - <wire from="(830,500)" to="(870,500)"/> - <wire from="(830,540)" to="(870,540)"/> - <wire from="(830,560)" to="(870,560)"/> - <wire from="(760,380)" to="(870,380)"/> - <wire from="(760,520)" to="(870,520)"/> - <wire from="(420,250)" to="(520,250)"/> - <wire from="(420,290)" to="(520,290)"/> - <wire from="(420,310)" to="(520,310)"/> - <wire from="(450,150)" to="(490,150)"/> - <wire from="(490,230)" to="(520,230)"/> - <wire from="(510,120)" to="(540,120)"/> - <wire from="(510,140)" to="(540,140)"/> - <wire from="(1090,340)" to="(1100,340)"/> - <wire from="(670,390)" to="(690,390)"/> - <wire from="(710,390)" to="(730,390)"/> - <wire from="(710,510)" to="(730,510)"/> - <wire from="(710,530)" to="(730,530)"/> - <wire from="(1100,340)" to="(1100,460)"/> - <wire from="(1090,480)" to="(1120,480)"/> - <wire from="(1150,470)" to="(1180,470)"/> - <wire from="(1100,460)" to="(1120,460)"/> <comp lib="0" loc="(1130,510)" name="Tunnel"> <a name="facing" val="north"/> <a name="label" val="SEL"/> <a name="labelfont" val="SansSerif bold 8"/> </comp> <comp lib="0" loc="(1180,470)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> + <a name="label" val="DATA_OUT"/> <a name="output" val="true"/> <a name="width" val="8"/> - <a name="label" val="DATA_OUT"/> - <a name="appearance" val="NewPins"/> </comp> <comp lib="0" loc="(420,250)" name="Pin"> - <a name="label" val="EN_WR"/> <a name="appearance" val="NewPins"/> + <a name="label" val="EN_WR"/> </comp> <comp lib="0" loc="(420,290)" name="Pin"> - <a name="label" val="CLK"/> <a name="appearance" val="NewPins"/> + <a name="label" val="CLK"/> </comp> <comp lib="0" loc="(420,310)" name="Pin"> - <a name="label" val="RESET"/> <a name="appearance" val="NewPins"/> + <a name="label" val="RESET"/> </comp> <comp lib="0" loc="(450,150)" name="Pin"> - <a name="width" val="4"/> - <a name="label" val="ADD"/> <a name="appearance" val="NewPins"/> + <a name="label" val="ADD"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(490,150)" name="Splitter"> - <a name="incoming" val="4"/> - <a name="spacing" val="2"/> <a name="bit1" val="0"/> <a name="bit2" val="0"/> <a name="bit3" val="1"/> + <a name="incoming" val="4"/> + <a name="spacing" val="2"/> </comp> <comp lib="0" loc="(490,230)" name="Pin"> - <a name="width" val="8"/> - <a name="label" val="DATA_WR"/> <a name="appearance" val="NewPins"/> + <a name="label" val="DATA_WR"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(520,230)" name="Tunnel"> - <a name="width" val="8"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(520,250)" name="Tunnel"> <a name="label" val="EN_WR"/> @@ -3110,9 +3033,9 @@ <a name="labelfont" val="SansSerif bold 8"/> </comp> <comp lib="0" loc="(540,120)" name="Tunnel"> - <a name="width" val="3"/> <a name="label" val="ADD"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="3"/> </comp> <comp lib="0" loc="(540,140)" name="Tunnel"> <a name="label" val="SEL"/> @@ -3140,15 +3063,15 @@ </comp> <comp lib="0" loc="(830,340)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="3"/> <a name="label" val="ADD"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="3"/> </comp> <comp lib="0" loc="(830,360)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(830,400)" name="Tunnel"> <a name="facing" val="east"/> @@ -3162,15 +3085,15 @@ </comp> <comp lib="0" loc="(830,480)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="3"/> <a name="label" val="ADD"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="3"/> </comp> <comp lib="0" loc="(830,500)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(830,540)" name="Tunnel"> <a name="facing" val="east"/> @@ -3193,7 +3116,6 @@ </comp> <comp lib="2" loc="(1150,470)" name="Multiplexer"> <a name="width" val="8"/> - <a name="enable" val="false"/> </comp> <comp loc="(1090,340)" name="CPU_RAM8"> <a name="label" val="RAM8_1"/> @@ -3201,131 +3123,39 @@ <comp loc="(1090,480)" name="CPU_RAM8"> <a name="label" val="RAM8_2"/> </comp> + <wire from="(1090,340)" to="(1100,340)"/> + <wire from="(1090,480)" to="(1120,480)"/> + <wire from="(1100,340)" to="(1100,460)"/> + <wire from="(1100,460)" to="(1120,460)"/> + <wire from="(1130,490)" to="(1130,510)"/> + <wire from="(1150,470)" to="(1180,470)"/> + <wire from="(420,250)" to="(520,250)"/> + <wire from="(420,290)" to="(520,290)"/> + <wire from="(420,310)" to="(520,310)"/> + <wire from="(450,150)" to="(490,150)"/> + <wire from="(490,230)" to="(520,230)"/> + <wire from="(510,120)" to="(540,120)"/> + <wire from="(510,140)" to="(540,140)"/> + <wire from="(670,370)" to="(730,370)"/> + <wire from="(670,390)" to="(690,390)"/> + <wire from="(710,390)" to="(730,390)"/> + <wire from="(710,510)" to="(730,510)"/> + <wire from="(710,530)" to="(730,530)"/> + <wire from="(760,380)" to="(870,380)"/> + <wire from="(760,520)" to="(870,520)"/> + <wire from="(830,340)" to="(870,340)"/> + <wire from="(830,360)" to="(870,360)"/> + <wire from="(830,400)" to="(870,400)"/> + <wire from="(830,420)" to="(870,420)"/> + <wire from="(830,480)" to="(870,480)"/> + <wire from="(830,500)" to="(870,500)"/> + <wire from="(830,540)" to="(870,540)"/> + <wire from="(830,560)" to="(870,560)"/> </circuit> <circuit name="CPU_RAM24"> - <a name="circuit" val="CPU_RAM24"/> - <a name="clabel" val=""/> - <a name="clabelup" val="east"/> - <a name="clabelfont" val="SansSerif bold 16"/> <a name="appearance" val="logisim_evolution"/> + <a name="circuit" val="CPU_RAM24"/> <a name="circuitnamedboxfixedsize" val="true"/> - <a name="circuitvhdlpath" val=""/> - <wire from="(990,1270)" to="(1040,1270)"/> - <wire from="(990,750)" to="(1040,750)"/> - <wire from="(1070,1460)" to="(1370,1460)"/> - <wire from="(780,1020)" to="(880,1020)"/> - <wire from="(1040,1000)" to="(1040,1010)"/> - <wire from="(1040,1520)" to="(1040,1530)"/> - <wire from="(1350,810)" to="(1350,990)"/> - <wire from="(1670,380)" to="(1670,500)"/> - <wire from="(860,700)" to="(860,1000)"/> - <wire from="(990,1460)" to="(1010,1460)"/> - <wire from="(990,1500)" to="(1010,1500)"/> - <wire from="(990,940)" to="(1010,940)"/> - <wire from="(990,980)" to="(1010,980)"/> - <wire from="(1360,980)" to="(1440,980)"/> - <wire from="(490,230)" to="(520,230)"/> - <wire from="(670,1020)" to="(690,1020)"/> - <wire from="(720,1030)" to="(740,1030)"/> - <wire from="(860,700)" to="(1010,700)"/> - <wire from="(1340,940)" to="(1340,1000)"/> - <wire from="(850,1480)" to="(1010,1480)"/> - <wire from="(1370,1040)" to="(1440,1040)"/> - <wire from="(1660,380)" to="(1670,380)"/> - <wire from="(1370,550)" to="(1370,970)"/> - <wire from="(880,960)" to="(880,1020)"/> - <wire from="(1670,520)" to="(1670,1010)"/> - <wire from="(1670,500)" to="(1690,500)"/> - <wire from="(1070,1200)" to="(1350,1200)"/> - <wire from="(1360,680)" to="(1360,980)"/> - <wire from="(780,1000)" to="(860,1000)"/> - <wire from="(1240,430)" to="(1260,430)"/> - <wire from="(1280,430)" to="(1300,430)"/> - <wire from="(990,1400)" to="(1040,1400)"/> - <wire from="(990,880)" to="(1040,880)"/> - <wire from="(1070,550)" to="(1370,550)"/> - <wire from="(1400,380)" to="(1440,380)"/> - <wire from="(1400,460)" to="(1440,460)"/> - <wire from="(1500,1100)" to="(1500,1190)"/> - <wire from="(1070,680)" to="(1360,680)"/> - <wire from="(780,1030)" to="(880,1030)"/> - <wire from="(1480,1010)" to="(1670,1010)"/> - <wire from="(1040,1130)" to="(1040,1140)"/> - <wire from="(1040,610)" to="(1040,620)"/> - <wire from="(420,310)" to="(520,310)"/> - <wire from="(1350,1020)" to="(1350,1200)"/> - <wire from="(1070,940)" to="(1340,940)"/> - <wire from="(990,1070)" to="(1010,1070)"/> - <wire from="(990,1110)" to="(1010,1110)"/> - <wire from="(990,550)" to="(1010,550)"/> - <wire from="(990,590)" to="(1010,590)"/> - <wire from="(1360,1030)" to="(1440,1030)"/> - <wire from="(510,140)" to="(540,140)"/> - <wire from="(860,1350)" to="(1010,1350)"/> - <wire from="(780,1040)" to="(870,1040)"/> - <wire from="(980,570)" to="(1010,570)"/> - <wire from="(1370,970)" to="(1440,970)"/> - <wire from="(1370,1040)" to="(1370,1460)"/> - <wire from="(780,1060)" to="(850,1060)"/> - <wire from="(1070,810)" to="(1350,810)"/> - <wire from="(1720,510)" to="(1750,510)"/> - <wire from="(780,1050)" to="(860,1050)"/> - <wire from="(1890,640)" to="(1920,640)"/> - <wire from="(990,1010)" to="(1040,1010)"/> - <wire from="(990,1530)" to="(1040,1530)"/> - <wire from="(1330,420)" to="(1440,420)"/> - <wire from="(1340,1000)" to="(1440,1000)"/> - <wire from="(1070,1330)" to="(1360,1330)"/> - <wire from="(1240,410)" to="(1300,410)"/> - <wire from="(1040,1260)" to="(1040,1270)"/> - <wire from="(1040,740)" to="(1040,750)"/> - <wire from="(1350,810)" to="(1400,810)"/> - <wire from="(1070,1070)" to="(1340,1070)"/> - <wire from="(990,1200)" to="(1010,1200)"/> - <wire from="(990,1240)" to="(1010,1240)"/> - <wire from="(990,680)" to="(1010,680)"/> - <wire from="(990,720)" to="(1010,720)"/> - <wire from="(670,1040)" to="(690,1040)"/> - <wire from="(780,1010)" to="(870,1010)"/> - <wire from="(1350,1020)" to="(1440,1020)"/> - <wire from="(880,960)" to="(1010,960)"/> - <wire from="(1670,520)" to="(1690,520)"/> - <wire from="(870,1220)" to="(1010,1220)"/> - <wire from="(870,830)" to="(870,1010)"/> - <wire from="(990,1140)" to="(1040,1140)"/> - <wire from="(990,620)" to="(1040,620)"/> - <wire from="(1340,1010)" to="(1440,1010)"/> - <wire from="(1360,680)" to="(1400,680)"/> - <wire from="(1400,400)" to="(1440,400)"/> - <wire from="(1400,440)" to="(1440,440)"/> - <wire from="(1700,530)" to="(1700,550)"/> - <wire from="(1440,1200)" to="(1480,1200)"/> - <wire from="(1460,1100)" to="(1500,1100)"/> - <wire from="(670,1110)" to="(710,1110)"/> - <wire from="(760,1070)" to="(760,1100)"/> - <wire from="(1040,1390)" to="(1040,1400)"/> - <wire from="(1040,870)" to="(1040,880)"/> - <wire from="(420,250)" to="(520,250)"/> - <wire from="(420,290)" to="(520,290)"/> - <wire from="(420,330)" to="(520,330)"/> - <wire from="(860,1050)" to="(860,1350)"/> - <wire from="(990,1330)" to="(1010,1330)"/> - <wire from="(990,1370)" to="(1010,1370)"/> - <wire from="(990,810)" to="(1010,810)"/> - <wire from="(990,850)" to="(1010,850)"/> - <wire from="(1460,1050)" to="(1460,1100)"/> - <wire from="(460,150)" to="(490,150)"/> - <wire from="(510,120)" to="(540,120)"/> - <wire from="(1340,1010)" to="(1340,1070)"/> - <wire from="(730,1100)" to="(760,1100)"/> - <wire from="(850,1060)" to="(850,1480)"/> - <wire from="(880,1030)" to="(880,1090)"/> - <wire from="(1350,990)" to="(1440,990)"/> - <wire from="(880,1090)" to="(1010,1090)"/> - <wire from="(1360,1030)" to="(1360,1330)"/> - <wire from="(870,1040)" to="(870,1220)"/> - <wire from="(870,830)" to="(1010,830)"/> - <wire from="(1890,620)" to="(1920,620)"/> <comp lib="0" loc="(1240,410)" name="Tunnel"> <a name="facing" val="east"/> <a name="label" val="EN_WR"/> @@ -3338,15 +3168,15 @@ </comp> <comp lib="0" loc="(1400,380)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="4"/> <a name="label" val="ADD"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(1400,400)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(1400,440)" name="Tunnel"> <a name="facing" val="east"/> @@ -3359,27 +3189,27 @@ <a name="labelfont" val="SansSerif bold 8"/> </comp> <comp lib="0" loc="(1400,680)" name="Tunnel"> - <a name="width" val="8"/> <a name="label" val="WHEEL_RIGHT"/> <a name="labelfont" val="SansSerif bold 10"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(1400,810)" name="Tunnel"> - <a name="width" val="8"/> <a name="label" val="WHEEL_LEFT"/> <a name="labelfont" val="SansSerif bold 10"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(1440,1200)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="4"/> <a name="label" val="ADD"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(1480,1200)" name="Splitter"> - <a name="fanout" val="1"/> - <a name="incoming" val="4"/> <a name="bit1" val="0"/> <a name="bit2" val="0"/> <a name="bit3" val="none"/> + <a name="fanout" val="1"/> + <a name="incoming" val="4"/> </comp> <comp lib="0" loc="(1700,550)" name="Tunnel"> <a name="facing" val="north"/> @@ -3387,77 +3217,77 @@ <a name="labelfont" val="SansSerif bold 8"/> </comp> <comp lib="0" loc="(1750,510)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> + <a name="label" val="DATA_OUT"/> <a name="output" val="true"/> <a name="width" val="8"/> - <a name="label" val="DATA_OUT"/> - <a name="appearance" val="NewPins"/> </comp> <comp lib="0" loc="(1890,620)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="WHEEL_RIGHT"/> <a name="labelfont" val="SansSerif bold 10"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(1890,640)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="WHEEL_LEFT"/> <a name="labelfont" val="SansSerif bold 10"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(1920,620)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> + <a name="label" val="WHEEL_RIGHT_PWM"/> <a name="output" val="true"/> <a name="width" val="8"/> - <a name="label" val="WHEEL_RIGHT_PWM"/> - <a name="appearance" val="NewPins"/> </comp> <comp lib="0" loc="(1920,640)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> + <a name="label" val="WHEEL_LEFT_PWM"/> <a name="output" val="true"/> <a name="width" val="8"/> - <a name="label" val="WHEEL_LEFT_PWM"/> - <a name="appearance" val="NewPins"/> </comp> <comp lib="0" loc="(420,250)" name="Pin"> - <a name="label" val="EN_WR"/> <a name="appearance" val="NewPins"/> + <a name="label" val="EN_WR"/> </comp> <comp lib="0" loc="(420,290)" name="Pin"> - <a name="label" val="CLK"/> <a name="appearance" val="NewPins"/> + <a name="label" val="CLK"/> </comp> <comp lib="0" loc="(420,310)" name="Pin"> - <a name="label" val="RESET"/> <a name="appearance" val="NewPins"/> + <a name="label" val="RESET"/> </comp> <comp lib="0" loc="(420,330)" name="Pin"> - <a name="width" val="8"/> - <a name="label" val="UART_BLUETOOTH"/> <a name="appearance" val="NewPins"/> + <a name="label" val="UART_BLUETOOTH"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(460,150)" name="Pin"> - <a name="width" val="5"/> - <a name="label" val="ADDR"/> <a name="appearance" val="NewPins"/> + <a name="label" val="ADDR"/> + <a name="width" val="5"/> </comp> <comp lib="0" loc="(490,150)" name="Splitter"> - <a name="incoming" val="5"/> - <a name="spacing" val="2"/> <a name="bit1" val="0"/> <a name="bit2" val="0"/> <a name="bit3" val="0"/> <a name="bit4" val="1"/> + <a name="incoming" val="5"/> + <a name="spacing" val="2"/> </comp> <comp lib="0" loc="(490,230)" name="Pin"> - <a name="width" val="8"/> - <a name="label" val="DATA_WR"/> <a name="appearance" val="NewPins"/> + <a name="label" val="DATA_WR"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(520,230)" name="Tunnel"> - <a name="width" val="8"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(520,250)" name="Tunnel"> <a name="label" val="EN_WR"/> @@ -3472,14 +3302,14 @@ <a name="labelfont" val="SansSerif bold 8"/> </comp> <comp lib="0" loc="(520,330)" name="Tunnel"> - <a name="width" val="8"/> <a name="label" val="UART_BLUETOOTH"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(540,120)" name="Tunnel"> - <a name="width" val="4"/> <a name="label" val="ADD"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(540,140)" name="Tunnel"> <a name="label" val="SEL"/> @@ -3497,16 +3327,16 @@ </comp> <comp lib="0" loc="(670,1110)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="4"/> <a name="label" val="ADD"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="4"/> </comp> <comp lib="0" loc="(710,1110)" name="Splitter"> - <a name="fanout" val="1"/> - <a name="incoming" val="4"/> <a name="bit1" val="0"/> <a name="bit2" val="0"/> <a name="bit3" val="none"/> + <a name="fanout" val="1"/> + <a name="incoming" val="4"/> </comp> <comp lib="0" loc="(980,570)" name="Constant"/> <comp lib="0" loc="(990,1010)" name="Tunnel"> @@ -3516,9 +3346,9 @@ </comp> <comp lib="0" loc="(990,1070)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(990,1110)" name="Tunnel"> <a name="facing" val="east"/> @@ -3532,9 +3362,9 @@ </comp> <comp lib="0" loc="(990,1200)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(990,1240)" name="Tunnel"> <a name="facing" val="east"/> @@ -3548,9 +3378,9 @@ </comp> <comp lib="0" loc="(990,1330)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(990,1370)" name="Tunnel"> <a name="facing" val="east"/> @@ -3564,9 +3394,9 @@ </comp> <comp lib="0" loc="(990,1460)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(990,1500)" name="Tunnel"> <a name="facing" val="east"/> @@ -3580,9 +3410,9 @@ </comp> <comp lib="0" loc="(990,550)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="UART_BLUETOOTH"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(990,590)" name="Tunnel"> <a name="facing" val="east"/> @@ -3596,9 +3426,9 @@ </comp> <comp lib="0" loc="(990,680)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(990,720)" name="Tunnel"> <a name="facing" val="east"/> @@ -3612,9 +3442,9 @@ </comp> <comp lib="0" loc="(990,810)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(990,850)" name="Tunnel"> <a name="facing" val="east"/> @@ -3628,9 +3458,9 @@ </comp> <comp lib="0" loc="(990,940)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(990,980)" name="Tunnel"> <a name="facing" val="east"/> @@ -3649,133 +3479,217 @@ <comp lib="2" loc="(1480,1010)" name="Multiplexer"> <a name="select" val="3"/> <a name="width" val="8"/> - <a name="enable" val="false"/> </comp> <comp lib="2" loc="(1720,510)" name="Multiplexer"> <a name="width" val="8"/> - <a name="enable" val="false"/> </comp> <comp lib="2" loc="(740,1030)" name="Demultiplexer"> <a name="select" val="3"/> - <a name="enable" val="false"/> - </comp> - <comp lib="4" loc="(1010,1040)" name="Register"/> - <comp lib="4" loc="(1010,1170)" name="Register"/> - <comp lib="4" loc="(1010,1300)" name="Register"/> - <comp lib="4" loc="(1010,1430)" name="Register"/> - <comp lib="4" loc="(1010,520)" name="Register"/> - <comp lib="4" loc="(1010,650)" name="Register"/> - <comp lib="4" loc="(1010,780)" name="Register"/> - <comp lib="4" loc="(1010,910)" name="Register"/> + </comp> + <comp lib="4" loc="(1010,1040)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> + <comp lib="4" loc="(1010,1170)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> + <comp lib="4" loc="(1010,1300)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> + <comp lib="4" loc="(1010,1430)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> + <comp lib="4" loc="(1010,520)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> + <comp lib="4" loc="(1010,650)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> + <comp lib="4" loc="(1010,780)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> + <comp lib="4" loc="(1010,910)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> <comp lib="6" loc="(1177,802)" name="Text"> - <a name="text" val="WHEEL_LEFT"/> <a name="font" val="SansSerif plain 12"/> + <a name="text" val="WHEEL_LEFT"/> </comp> <comp lib="6" loc="(1180,671)" name="Text"> - <a name="text" val="WHEEL_RIGHT"/> <a name="font" val="SansSerif plain 12"/> + <a name="text" val="WHEEL_RIGHT"/> </comp> <comp lib="6" loc="(1191,543)" name="Text"> - <a name="text" val="UART BLUETOOTH"/> <a name="font" val="SansSerif plain 12"/> + <a name="text" val="UART BLUETOOTH"/> </comp> <comp loc="(1660,380)" name="CPU_RAM16"> <a name="label" val="RAM16_PROCESSOR"/> </comp> + <wire from="(1040,1000)" to="(1040,1010)"/> + <wire from="(1040,1130)" to="(1040,1140)"/> + <wire from="(1040,1260)" to="(1040,1270)"/> + <wire from="(1040,1390)" to="(1040,1400)"/> + <wire from="(1040,1520)" to="(1040,1530)"/> + <wire from="(1040,610)" to="(1040,620)"/> + <wire from="(1040,740)" to="(1040,750)"/> + <wire from="(1040,870)" to="(1040,880)"/> + <wire from="(1070,1070)" to="(1340,1070)"/> + <wire from="(1070,1200)" to="(1350,1200)"/> + <wire from="(1070,1330)" to="(1360,1330)"/> + <wire from="(1070,1460)" to="(1370,1460)"/> + <wire from="(1070,550)" to="(1370,550)"/> + <wire from="(1070,680)" to="(1360,680)"/> + <wire from="(1070,810)" to="(1350,810)"/> + <wire from="(1070,940)" to="(1340,940)"/> + <wire from="(1240,410)" to="(1300,410)"/> + <wire from="(1240,430)" to="(1260,430)"/> + <wire from="(1280,430)" to="(1300,430)"/> + <wire from="(1330,420)" to="(1440,420)"/> + <wire from="(1340,1000)" to="(1440,1000)"/> + <wire from="(1340,1010)" to="(1340,1070)"/> + <wire from="(1340,1010)" to="(1440,1010)"/> + <wire from="(1340,940)" to="(1340,1000)"/> + <wire from="(1350,1020)" to="(1350,1200)"/> + <wire from="(1350,1020)" to="(1440,1020)"/> + <wire from="(1350,810)" to="(1350,990)"/> + <wire from="(1350,810)" to="(1400,810)"/> + <wire from="(1350,990)" to="(1440,990)"/> + <wire from="(1360,1030)" to="(1360,1330)"/> + <wire from="(1360,1030)" to="(1440,1030)"/> + <wire from="(1360,680)" to="(1360,980)"/> + <wire from="(1360,680)" to="(1400,680)"/> + <wire from="(1360,980)" to="(1440,980)"/> + <wire from="(1370,1040)" to="(1370,1460)"/> + <wire from="(1370,1040)" to="(1440,1040)"/> + <wire from="(1370,550)" to="(1370,970)"/> + <wire from="(1370,970)" to="(1440,970)"/> + <wire from="(1400,380)" to="(1440,380)"/> + <wire from="(1400,400)" to="(1440,400)"/> + <wire from="(1400,440)" to="(1440,440)"/> + <wire from="(1400,460)" to="(1440,460)"/> + <wire from="(1440,1200)" to="(1480,1200)"/> + <wire from="(1460,1050)" to="(1460,1100)"/> + <wire from="(1460,1100)" to="(1500,1100)"/> + <wire from="(1480,1010)" to="(1670,1010)"/> + <wire from="(1500,1100)" to="(1500,1190)"/> + <wire from="(1660,380)" to="(1670,380)"/> + <wire from="(1670,380)" to="(1670,500)"/> + <wire from="(1670,500)" to="(1690,500)"/> + <wire from="(1670,520)" to="(1670,1010)"/> + <wire from="(1670,520)" to="(1690,520)"/> + <wire from="(1700,530)" to="(1700,550)"/> + <wire from="(1720,510)" to="(1750,510)"/> + <wire from="(1890,620)" to="(1920,620)"/> + <wire from="(1890,640)" to="(1920,640)"/> + <wire from="(420,250)" to="(520,250)"/> + <wire from="(420,290)" to="(520,290)"/> + <wire from="(420,310)" to="(520,310)"/> + <wire from="(420,330)" to="(520,330)"/> + <wire from="(460,150)" to="(490,150)"/> + <wire from="(490,230)" to="(520,230)"/> + <wire from="(510,120)" to="(540,120)"/> + <wire from="(510,140)" to="(540,140)"/> + <wire from="(670,1020)" to="(690,1020)"/> + <wire from="(670,1040)" to="(690,1040)"/> + <wire from="(670,1110)" to="(710,1110)"/> + <wire from="(720,1030)" to="(740,1030)"/> + <wire from="(730,1100)" to="(760,1100)"/> + <wire from="(760,1070)" to="(760,1100)"/> + <wire from="(780,1000)" to="(860,1000)"/> + <wire from="(780,1010)" to="(870,1010)"/> + <wire from="(780,1020)" to="(880,1020)"/> + <wire from="(780,1030)" to="(880,1030)"/> + <wire from="(780,1040)" to="(870,1040)"/> + <wire from="(780,1050)" to="(860,1050)"/> + <wire from="(780,1060)" to="(850,1060)"/> + <wire from="(850,1060)" to="(850,1480)"/> + <wire from="(850,1480)" to="(1010,1480)"/> + <wire from="(860,1050)" to="(860,1350)"/> + <wire from="(860,1350)" to="(1010,1350)"/> + <wire from="(860,700)" to="(1010,700)"/> + <wire from="(860,700)" to="(860,1000)"/> + <wire from="(870,1040)" to="(870,1220)"/> + <wire from="(870,1220)" to="(1010,1220)"/> + <wire from="(870,830)" to="(1010,830)"/> + <wire from="(870,830)" to="(870,1010)"/> + <wire from="(880,1030)" to="(880,1090)"/> + <wire from="(880,1090)" to="(1010,1090)"/> + <wire from="(880,960)" to="(1010,960)"/> + <wire from="(880,960)" to="(880,1020)"/> + <wire from="(980,570)" to="(1010,570)"/> + <wire from="(990,1010)" to="(1040,1010)"/> + <wire from="(990,1070)" to="(1010,1070)"/> + <wire from="(990,1110)" to="(1010,1110)"/> + <wire from="(990,1140)" to="(1040,1140)"/> + <wire from="(990,1200)" to="(1010,1200)"/> + <wire from="(990,1240)" to="(1010,1240)"/> + <wire from="(990,1270)" to="(1040,1270)"/> + <wire from="(990,1330)" to="(1010,1330)"/> + <wire from="(990,1370)" to="(1010,1370)"/> + <wire from="(990,1400)" to="(1040,1400)"/> + <wire from="(990,1460)" to="(1010,1460)"/> + <wire from="(990,1500)" to="(1010,1500)"/> + <wire from="(990,1530)" to="(1040,1530)"/> + <wire from="(990,550)" to="(1010,550)"/> + <wire from="(990,590)" to="(1010,590)"/> + <wire from="(990,620)" to="(1040,620)"/> + <wire from="(990,680)" to="(1010,680)"/> + <wire from="(990,720)" to="(1010,720)"/> + <wire from="(990,750)" to="(1040,750)"/> + <wire from="(990,810)" to="(1010,810)"/> + <wire from="(990,850)" to="(1010,850)"/> + <wire from="(990,880)" to="(1040,880)"/> + <wire from="(990,940)" to="(1010,940)"/> + <wire from="(990,980)" to="(1010,980)"/> </circuit> <circuit name="TOP"> - <a name="circuit" val="TOP"/> - <a name="clabel" val=""/> - <a name="clabelup" val="east"/> - <a name="clabelfont" val="SansSerif bold 16"/> <a name="appearance" val="logisim_evolution"/> + <a name="circuit" val="TOP"/> <a name="circuitnamedboxfixedsize" val="true"/> - <a name="circuitvhdlpath" val=""/> - <wire from="(1040,340)" to="(1090,340)"/> - <wire from="(1040,360)" to="(1090,360)"/> - <wire from="(1040,380)" to="(1090,380)"/> - <wire from="(660,340)" to="(710,340)"/> - <wire from="(590,360)" to="(820,360)"/> - <wire from="(710,340)" to="(820,340)"/> - <wire from="(340,340)" to="(370,340)"/> - <wire from="(340,360)" to="(370,360)"/> - <wire from="(340,380)" to="(370,380)"/> - <wire from="(340,500)" to="(370,500)"/> - <wire from="(340,520)" to="(370,520)"/> - <wire from="(340,540)" to="(370,540)"/> - <wire from="(800,660)" to="(830,660)"/> - <wire from="(800,680)" to="(830,680)"/> - <wire from="(800,760)" to="(830,760)"/> - <wire from="(800,780)" to="(830,780)"/> - <wire from="(800,440)" to="(800,500)"/> - <wire from="(590,340)" to="(660,340)"/> - <wire from="(590,500)" to="(660,500)"/> - <wire from="(590,520)" to="(660,520)"/> - <wire from="(1480,350)" to="(1500,350)"/> - <wire from="(1480,370)" to="(1500,370)"/> - <wire from="(1480,390)" to="(1500,390)"/> - <wire from="(1480,410)" to="(1500,410)"/> - <wire from="(1480,430)" to="(1500,430)"/> - <wire from="(1480,450)" to="(1500,450)"/> - <wire from="(1480,470)" to="(1500,470)"/> - <wire from="(1480,490)" to="(1500,490)"/> - <wire from="(720,500)" to="(800,500)"/> - <wire from="(660,210)" to="(660,340)"/> - <wire from="(760,380)" to="(820,380)"/> - <wire from="(1440,540)" to="(1500,540)"/> - <wire from="(270,110)" to="(310,110)"/> - <wire from="(270,130)" to="(310,130)"/> - <wire from="(270,150)" to="(310,150)"/> - <wire from="(1050,660)" to="(1100,660)"/> - <wire from="(1050,680)" to="(1100,680)"/> - <wire from="(1050,760)" to="(1100,760)"/> - <wire from="(1050,780)" to="(1100,780)"/> - <wire from="(590,380)" to="(760,380)"/> - <wire from="(800,440)" to="(820,440)"/> - <wire from="(800,500)" to="(1460,500)"/> - <wire from="(710,230)" to="(710,340)"/> - <wire from="(630,540)" to="(660,540)"/> - <wire from="(790,400)" to="(820,400)"/> - <wire from="(790,420)" to="(820,420)"/> - <wire from="(760,260)" to="(760,380)"/> + <a name="simulationFrequency" val="1.0"/> <comp lib="0" loc="(1090,340)" name="Tunnel"> - <a name="width" val="8"/> <a name="label" val="RAM_OUT"/> <a name="labelfont" val="SansSerif bold 10"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(1090,360)" name="Tunnel"> - <a name="width" val="8"/> <a name="label" val="WHEEL_RIGHT"/> <a name="labelfont" val="SansSerif bold 10"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(1090,380)" name="Tunnel"> - <a name="width" val="8"/> <a name="label" val="WHEEL_LEFT"/> <a name="labelfont" val="SansSerif bold 10"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(1100,660)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> - <a name="output" val="true"/> <a name="label" val="WHEEL_RIGHT_PWM"/> - <a name="appearance" val="NewPins"/> + <a name="output" val="true"/> </comp> <comp lib="0" loc="(1100,680)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> - <a name="output" val="true"/> <a name="label" val="DIR_WHEEL_RIGHT"/> - <a name="appearance" val="NewPins"/> + <a name="output" val="true"/> </comp> <comp lib="0" loc="(1100,760)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> - <a name="output" val="true"/> <a name="label" val="WHEEL_LEFT_PWM"/> - <a name="appearance" val="NewPins"/> + <a name="output" val="true"/> </comp> <comp lib="0" loc="(1100,780)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> - <a name="output" val="true"/> <a name="label" val="DIR_WHEEL_LEFT"/> - <a name="appearance" val="NewPins"/> + <a name="output" val="true"/> + </comp> + <comp lib="0" loc="(1440,540)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="RX"/> + <a name="labelfont" val="SansSerif bold 10"/> </comp> <comp lib="0" loc="(1460,500)" name="Splitter"> <a name="fanout" val="8"/> @@ -3783,64 +3697,70 @@ <a name="spacing" val="2"/> </comp> <comp lib="0" loc="(1500,350)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> - <a name="output" val="true"/> <a name="label" val="LED_0"/> - <a name="appearance" val="NewPins"/> + <a name="output" val="true"/> </comp> <comp lib="0" loc="(1500,370)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> - <a name="output" val="true"/> <a name="label" val="LED_1"/> - <a name="appearance" val="NewPins"/> + <a name="output" val="true"/> </comp> <comp lib="0" loc="(1500,390)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> - <a name="output" val="true"/> <a name="label" val="LED_2"/> - <a name="appearance" val="NewPins"/> + <a name="output" val="true"/> </comp> <comp lib="0" loc="(1500,410)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> - <a name="output" val="true"/> <a name="label" val="LED_3"/> - <a name="appearance" val="NewPins"/> + <a name="output" val="true"/> </comp> <comp lib="0" loc="(1500,430)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> - <a name="output" val="true"/> <a name="label" val="LED_4"/> - <a name="appearance" val="NewPins"/> + <a name="output" val="true"/> </comp> <comp lib="0" loc="(1500,450)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> - <a name="output" val="true"/> <a name="label" val="LED_5"/> - <a name="appearance" val="NewPins"/> + <a name="output" val="true"/> </comp> <comp lib="0" loc="(1500,470)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> - <a name="output" val="true"/> <a name="label" val="LED_6"/> - <a name="appearance" val="NewPins"/> + <a name="output" val="true"/> </comp> <comp lib="0" loc="(1500,490)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> - <a name="output" val="true"/> <a name="label" val="LED_7"/> + <a name="output" val="true"/> + </comp> + <comp lib="0" loc="(1500,540)" name="Pin"> <a name="appearance" val="NewPins"/> + <a name="facing" val="west"/> + <a name="label" val="UART_RX_PC"/> + <a name="output" val="true"/> </comp> <comp lib="0" loc="(270,110)" name="Pin"> - <a name="label" val="CLK"/> <a name="appearance" val="NewPins"/> + <a name="label" val="CLK"/> </comp> <comp lib="0" loc="(270,130)" name="Pin"> - <a name="label" val="RESET"/> <a name="appearance" val="NewPins"/> + <a name="label" val="RESET"/> </comp> <comp lib="0" loc="(270,150)" name="Pin"> - <a name="label" val="RX"/> <a name="appearance" val="NewPins"/> + <a name="label" val="RX"/> </comp> <comp lib="0" loc="(310,110)" name="Tunnel"> <a name="label" val="CLK"/> @@ -3866,9 +3786,9 @@ </comp> <comp lib="0" loc="(340,380)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="RAM_OUT"/> <a name="labelfont" val="SansSerif bold 10"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(340,500)" name="Tunnel"> <a name="facing" val="east"/> @@ -3891,16 +3811,16 @@ <a name="labelfont" val="SansSerif bold 10"/> </comp> <comp lib="0" loc="(660,210)" name="Probe"> - <a name="facing" val="south"/> <a name="appearance" val="NewPins"/> + <a name="facing" val="south"/> </comp> <comp lib="0" loc="(710,230)" name="Probe"> - <a name="facing" val="south"/> <a name="appearance" val="NewPins"/> + <a name="facing" val="south"/> </comp> <comp lib="0" loc="(760,260)" name="Probe"> - <a name="facing" val="south"/> <a name="appearance" val="NewPins"/> + <a name="facing" val="south"/> </comp> <comp lib="0" loc="(790,400)" name="Tunnel"> <a name="facing" val="east"/> @@ -3914,9 +3834,9 @@ </comp> <comp lib="0" loc="(800,660)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="WHEEL_RIGHT"/> <a name="labelfont" val="SansSerif bold 10"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(800,680)" name="Tunnel"> <a name="facing" val="east"/> @@ -3925,31 +3845,33 @@ </comp> <comp lib="0" loc="(800,760)" name="Tunnel"> <a name="facing" val="east"/> - <a name="width" val="8"/> <a name="label" val="WHEEL_LEFT"/> <a name="labelfont" val="SansSerif bold 10"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(800,780)" name="Tunnel"> <a name="facing" val="east"/> <a name="label" val="CLK"/> <a name="labelfont" val="SansSerif bold 10"/> </comp> - <comp lib="4" loc="(660,470)" name="Register"/> + <comp lib="4" loc="(660,470)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> <comp lib="6" loc="(916,275)" name="Text"> - <a name="text" val="BAS - 0x42"/> <a name="font" val="SansSerif plain 12"/> + <a name="text" val="BAS - 0x42"/> </comp> <comp lib="6" loc="(920,258)" name="Text"> - <a name="text" val="HAUT - 0x41"/> <a name="font" val="SansSerif plain 12"/> + <a name="text" val="HAUT - 0x41"/> </comp> <comp lib="6" loc="(926,294)" name="Text"> - <a name="text" val="DROITE - 0x43"/> <a name="font" val="SansSerif plain 12"/> + <a name="text" val="DROITE - 0x43"/> </comp> <comp lib="6" loc="(928,312)" name="Text"> - <a name="text" val="GAUCHE - 0x44"/> <a name="font" val="SansSerif plain 12"/> + <a name="text" val="GAUCHE - 0x44"/> </comp> <comp loc="(1040,340)" name="CPU_RAM24"> <a name="label" val="CPU_RAM"/> @@ -3963,301 +3885,306 @@ <comp loc="(590,340)" name="CPU"> <a name="label" val="CPU_1"/> </comp> - <comp lib="0" loc="(1500,540)" name="Pin"> - <a name="facing" val="west"/> - <a name="output" val="true"/> - <a name="label" val="UART_RX_PC"/> - <a name="appearance" val="NewPins"/> - </comp> - <comp lib="0" loc="(1440,540)" name="Tunnel"> - <a name="facing" val="east"/> - <a name="label" val="RX"/> - <a name="labelfont" val="SansSerif bold 10"/> - </comp> - <comp loc="(590,500)" name="PERI_UART_RCV_16_BITS_9600"> - <a name="label" val="peri_uart"/> - </comp> + <comp loc="(590,500)" name="PERI_UART_RCVE_9600"/> + <wire from="(1040,340)" to="(1090,340)"/> + <wire from="(1040,360)" to="(1090,360)"/> + <wire from="(1040,380)" to="(1090,380)"/> + <wire from="(1050,660)" to="(1100,660)"/> + <wire from="(1050,680)" to="(1100,680)"/> + <wire from="(1050,760)" to="(1100,760)"/> + <wire from="(1050,780)" to="(1100,780)"/> + <wire from="(1440,540)" to="(1500,540)"/> + <wire from="(1480,350)" to="(1500,350)"/> + <wire from="(1480,370)" to="(1500,370)"/> + <wire from="(1480,390)" to="(1500,390)"/> + <wire from="(1480,410)" to="(1500,410)"/> + <wire from="(1480,430)" to="(1500,430)"/> + <wire from="(1480,450)" to="(1500,450)"/> + <wire from="(1480,470)" to="(1500,470)"/> + <wire from="(1480,490)" to="(1500,490)"/> + <wire from="(270,110)" to="(310,110)"/> + <wire from="(270,130)" to="(310,130)"/> + <wire from="(270,150)" to="(310,150)"/> + <wire from="(340,340)" to="(370,340)"/> + <wire from="(340,360)" to="(370,360)"/> + <wire from="(340,380)" to="(370,380)"/> + <wire from="(340,500)" to="(370,500)"/> + <wire from="(340,520)" to="(370,520)"/> + <wire from="(340,540)" to="(370,540)"/> + <wire from="(590,340)" to="(660,340)"/> + <wire from="(590,360)" to="(820,360)"/> + <wire from="(590,380)" to="(760,380)"/> + <wire from="(590,500)" to="(660,500)"/> + <wire from="(590,520)" to="(660,520)"/> + <wire from="(630,540)" to="(660,540)"/> + <wire from="(660,210)" to="(660,340)"/> + <wire from="(660,340)" to="(710,340)"/> + <wire from="(710,230)" to="(710,340)"/> + <wire from="(710,340)" to="(820,340)"/> + <wire from="(720,500)" to="(800,500)"/> + <wire from="(760,260)" to="(760,380)"/> + <wire from="(760,380)" to="(820,380)"/> + <wire from="(790,400)" to="(820,400)"/> + <wire from="(790,420)" to="(820,420)"/> + <wire from="(800,440)" to="(800,500)"/> + <wire from="(800,440)" to="(820,440)"/> + <wire from="(800,500)" to="(1460,500)"/> + <wire from="(800,660)" to="(830,660)"/> + <wire from="(800,680)" to="(830,680)"/> + <wire from="(800,760)" to="(830,760)"/> + <wire from="(800,780)" to="(830,780)"/> </circuit> <circuit name="PERI_UART_RCV_16_BITS_9600"> - <a name="circuit" val="PERI_UART_RCV_16_BITS_9600"/> - <a name="clabel" val=""/> - <a name="clabelup" val="east"/> - <a name="clabelfont" val="SansSerif bold 16"/> <a name="appearance" val="logisim_evolution"/> + <a name="circuit" val="PERI_UART_RCV_16_BITS_9600"/> <a name="circuitnamedboxfixedsize" val="true"/> - <a name="circuitvhdlpath" val=""/> - <wire from="(1090,880)" to="(1090,960)"/> - <wire from="(520,920)" to="(520,930)"/> - <wire from="(510,220)" to="(570,220)"/> - <wire from="(420,270)" to="(420,720)"/> - <wire from="(420,160)" to="(1060,160)"/> - <wire from="(1200,400)" to="(1200,420)"/> - <wire from="(1260,380)" to="(1260,400)"/> - <wire from="(440,780)" to="(560,780)"/> - <wire from="(520,930)" to="(560,930)"/> - <wire from="(1020,740)" to="(1020,770)"/> - <wire from="(760,970)" to="(800,970)"/> - <wire from="(780,790)" to="(820,790)"/> - <wire from="(790,740)" to="(790,830)"/> - <wire from="(790,830)" to="(790,850)"/> - <wire from="(800,880)" to="(800,900)"/> - <wire from="(510,190)" to="(510,220)"/> - <wire from="(1140,970)" to="(1580,970)"/> - <wire from="(1190,430)" to="(1240,430)"/> - <wire from="(1180,460)" to="(1190,460)"/> - <wire from="(1180,420)" to="(1190,420)"/> - <wire from="(1080,880)" to="(1090,880)"/> - <wire from="(760,910)" to="(780,910)"/> - <wire from="(580,240)" to="(610,240)"/> - <wire from="(1010,870)" to="(1040,870)"/> - <wire from="(1210,470)" to="(1240,470)"/> - <wire from="(180,190)" to="(510,190)"/> - <wire from="(620,200)" to="(700,200)"/> - <wire from="(810,810)" to="(820,810)"/> - <wire from="(1120,680)" to="(1270,680)"/> - <wire from="(1090,960)" to="(1110,960)"/> - <wire from="(180,130)" to="(440,130)"/> - <wire from="(670,280)" to="(670,780)"/> - <wire from="(840,980)" to="(1110,980)"/> - <wire from="(790,150)" to="(790,740)"/> - <wire from="(780,790)" to="(780,800)"/> - <wire from="(1180,520)" to="(1220,520)"/> - <wire from="(1200,420)" to="(1240,420)"/> - <wire from="(1200,460)" to="(1240,460)"/> - <wire from="(1210,380)" to="(1210,410)"/> - <wire from="(440,130)" to="(1060,130)"/> - <wire from="(770,140)" to="(1060,140)"/> - <wire from="(420,720)" to="(1270,720)"/> - <wire from="(1020,770)" to="(1050,770)"/> - <wire from="(1120,840)" to="(1570,840)"/> - <wire from="(1260,380)" to="(1610,380)"/> - <wire from="(510,920)" to="(520,920)"/> - <wire from="(1120,680)" to="(1120,790)"/> - <wire from="(620,200)" to="(620,210)"/> - <wire from="(1200,460)" to="(1200,480)"/> - <wire from="(1210,470)" to="(1210,500)"/> - <wire from="(780,880)" to="(780,910)"/> - <wire from="(510,190)" to="(1060,190)"/> - <wire from="(700,200)" to="(700,230)"/> - <wire from="(790,740)" to="(1020,740)"/> - <wire from="(1190,450)" to="(1190,460)"/> - <wire from="(1190,450)" to="(1240,450)"/> - <wire from="(700,230)" to="(720,230)"/> - <wire from="(1030,890)" to="(1040,890)"/> - <wire from="(790,830)" to="(820,830)"/> - <wire from="(1180,500)" to="(1210,500)"/> - <wire from="(1210,410)" to="(1240,410)"/> - <wire from="(1180,380)" to="(1210,380)"/> - <wire from="(1220,480)" to="(1220,520)"/> - <wire from="(1100,790)" to="(1120,790)"/> - <wire from="(540,240)" to="(550,240)"/> - <wire from="(550,890)" to="(560,890)"/> - <wire from="(790,150)" to="(1060,150)"/> - <wire from="(600,220)" to="(610,220)"/> - <wire from="(560,910)" to="(560,920)"/> - <wire from="(440,130)" to="(440,780)"/> - <wire from="(1180,440)" to="(1240,440)"/> - <wire from="(1010,810)" to="(1050,810)"/> - <wire from="(790,900)" to="(790,920)"/> - <wire from="(1190,420)" to="(1190,430)"/> - <wire from="(560,780)" to="(670,780)"/> - <wire from="(670,780)" to="(820,780)"/> - <wire from="(420,270)" to="(640,270)"/> - <wire from="(420,840)" to="(420,940)"/> - <wire from="(1120,790)" to="(1120,840)"/> - <wire from="(540,920)" to="(560,920)"/> - <wire from="(420,160)" to="(420,270)"/> - <wire from="(560,780)" to="(560,880)"/> - <wire from="(150,160)" to="(420,160)"/> - <wire from="(420,940)" to="(560,940)"/> - <wire from="(420,840)" to="(820,840)"/> - <wire from="(1330,680)" to="(1670,680)"/> - <wire from="(790,900)" to="(800,900)"/> - <wire from="(770,800)" to="(780,800)"/> - <wire from="(420,720)" to="(420,840)"/> - <wire from="(1180,400)" to="(1200,400)"/> - <wire from="(1180,480)" to="(1200,480)"/> - <wire from="(1220,480)" to="(1240,480)"/> - <comp lib="4" loc="(650,220)" name="D Flip-Flop"> - <a name="appearance" val="logisim_evolution"/> + <a name="simulationFrequency" val="1.0"/> + <comp lib="0" loc="(1030,890)" name="Constant"> + <a name="value" val="0x0"/> + <a name="width" val="5"/> </comp> - <comp lib="0" loc="(540,240)" name="Tunnel"> - <a name="facing" val="east"/> - <a name="label" val="done_sig"/> + <comp lib="0" loc="(1260,400)" name="Splitter"> + <a name="bit0" val="7"/> + <a name="bit1" val="6"/> + <a name="bit2" val="5"/> + <a name="bit3" val="4"/> + <a name="bit4" val="3"/> + <a name="bit5" val="2"/> + <a name="bit6" val="1"/> + <a name="bit7" val="0"/> + <a name="facing" val="west"/> + <a name="fanout" val="8"/> + <a name="incoming" val="8"/> </comp> - <comp lib="1" loc="(580,240)" name="NOT Gate"/> <comp lib="0" loc="(150,160)" name="Pin"> + <a name="appearance" val="classic"/> <a name="label" val="CLK"/> </comp> - <comp lib="0" loc="(180,190)" name="Pin"> - <a name="label" val="RX"/> + <comp lib="0" loc="(1570,840)" name="Tunnel"> + <a name="label" val="done_sig"/> </comp> - <comp lib="0" loc="(180,130)" name="Pin"> - <a name="label" val="RESET"/> + <comp lib="0" loc="(1580,970)" name="Tunnel"> + <a name="label" val="half"/> </comp> - <comp lib="0" loc="(770,140)" name="Ground"/> - <comp lib="0" loc="(720,230)" name="Tunnel"> - <a name="label" val="state"/> + <comp lib="0" loc="(1610,380)" name="Pin"> + <a name="appearance" val="classic"/> + <a name="facing" val="west"/> + <a name="label" val="DATA"/> + <a name="output" val="true"/> + <a name="width" val="8"/> </comp> - <comp lib="1" loc="(600,220)" name="NOT Gate"/> - <comp lib="2" loc="(640,230)" name="Multiplexer"> - <a name="selloc" val="tr"/> + <comp lib="0" loc="(1670,680)" name="Pin"> + <a name="appearance" val="classic"/> + <a name="facing" val="west"/> + <a name="label" val="DONE"/> + <a name="output" val="true"/> </comp> - <comp lib="0" loc="(790,920)" name="Tunnel"> - <a name="facing" val="north"/> - <a name="label" val="half"/> + <comp lib="0" loc="(180,130)" name="Pin"> + <a name="appearance" val="classic"/> + <a name="label" val="RESET"/> </comp> - <comp lib="4" loc="(820,760)" name="Counter"> - <a name="width" val="5"/> - <a name="max" val="0x11"/> - <a name="appearance" val="logisim_evolution"/> + <comp lib="0" loc="(180,190)" name="Pin"> + <a name="appearance" val="classic"/> + <a name="label" val="RX"/> </comp> - <comp lib="0" loc="(560,970)" name="Constant"> + <comp lib="0" loc="(390,1060)" name="Constant"> + <a name="value" val="0x28aa"/> <a name="width" val="16"/> - <a name="value" val="0x0"/> </comp> - <comp lib="3" loc="(840,980)" name="Comparator"> - <a name="width" val="16"/> + <comp lib="0" loc="(510,920)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="state"/> </comp> - <comp lib="0" loc="(1570,840)" name="Tunnel"> + <comp lib="0" loc="(540,240)" name="Tunnel"> + <a name="facing" val="east"/> <a name="label" val="done_sig"/> </comp> + <comp lib="0" loc="(540,920)" name="Power"/> <comp lib="0" loc="(550,890)" name="Tunnel"> <a name="facing" val="east"/> <a name="label" val="half"/> </comp> - <comp lib="0" loc="(510,920)" name="Tunnel"> - <a name="facing" val="east"/> - <a name="label" val="state"/> - </comp> - <comp lib="0" loc="(540,920)" name="Power"/> - <comp lib="0" loc="(390,1060)" name="Constant"> - <a name="width" val="16"/> - <a name="value" val="0x28aa"/> - </comp> - <comp lib="1" loc="(1100,790)" name="AND Gate"/> - <comp lib="0" loc="(1030,890)" name="Constant"> - <a name="width" val="5"/> + <comp lib="0" loc="(560,970)" name="Constant"> <a name="value" val="0x0"/> + <a name="width" val="16"/> </comp> - <comp lib="3" loc="(1080,880)" name="Comparator"> - <a name="width" val="5"/> + <comp lib="0" loc="(720,230)" name="Tunnel"> + <a name="label" val="state"/> </comp> - <comp lib="0" loc="(820,870)" name="Constant"> - <a name="width" val="5"/> - <a name="value" val="0x0"/> + <comp lib="0" loc="(770,140)" name="Ground"/> + <comp lib="0" loc="(770,800)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="done_sig"/> </comp> - <comp lib="1" loc="(790,850)" name="OR Gate"> + <comp lib="0" loc="(790,920)" name="Tunnel"> <a name="facing" val="north"/> - <a name="size" val="30"/> + <a name="label" val="half"/> </comp> <comp lib="0" loc="(800,990)" name="Constant"> - <a name="width" val="16"/> <a name="value" val="0x1455"/> + <a name="width" val="16"/> </comp> + <comp lib="0" loc="(810,810)" name="Power"/> + <comp lib="0" loc="(820,870)" name="Constant"> + <a name="value" val="0x0"/> + <a name="width" val="5"/> + </comp> + <comp lib="1" loc="(1100,790)" name="AND Gate"/> <comp lib="1" loc="(1140,970)" name="AND Gate"> <a name="size" val="30"/> </comp> - <comp lib="0" loc="(1580,970)" name="Tunnel"> - <a name="label" val="half"/> + <comp lib="1" loc="(580,240)" name="NOT Gate"/> + <comp lib="1" loc="(600,220)" name="NOT Gate"/> + <comp lib="1" loc="(790,850)" name="OR Gate"> + <a name="facing" val="north"/> + <a name="size" val="30"/> </comp> - <comp lib="0" loc="(770,800)" name="Tunnel"> - <a name="facing" val="east"/> - <a name="label" val="done_sig"/> + <comp lib="2" loc="(640,230)" name="Multiplexer"> + <a name="enable" val="true"/> + <a name="selloc" val="tr"/> </comp> - <comp lib="0" loc="(810,810)" name="Power"/> - <comp lib="4" loc="(560,860)" name="Counter"> + <comp lib="3" loc="(1080,880)" name="Comparator"> + <a name="width" val="5"/> + </comp> + <comp lib="3" loc="(840,980)" name="Comparator"> <a name="width" val="16"/> - <a name="max" val="0x28aa"/> - <a name="appearance" val="logisim_evolution"/> </comp> - <comp lib="0" loc="(1670,680)" name="Pin"> - <a name="facing" val="west"/> - <a name="output" val="true"/> - <a name="label" val="DONE"/> + <comp lib="4" loc="(1060,110)" name="Shift Register"> + <a name="appearance" val="logisim_evolution"/> + <a name="length" val="17"/> </comp> <comp lib="4" loc="(1280,670)" name="D Flip-Flop"> <a name="appearance" val="logisim_evolution"/> </comp> - <comp lib="4" loc="(1060,110)" name="Shift Register"> - <a name="length" val="17"/> + <comp lib="4" loc="(560,860)" name="Counter"> <a name="appearance" val="logisim_evolution"/> + <a name="max" val="0x28aa"/> + <a name="width" val="16"/> </comp> - <comp lib="0" loc="(1260,400)" name="Splitter"> - <a name="facing" val="west"/> - <a name="fanout" val="8"/> - <a name="incoming" val="8"/> - <a name="bit0" val="7"/> - <a name="bit1" val="6"/> - <a name="bit2" val="5"/> - <a name="bit3" val="4"/> - <a name="bit4" val="3"/> - <a name="bit5" val="2"/> - <a name="bit6" val="1"/> - <a name="bit7" val="0"/> + <comp lib="4" loc="(650,220)" name="D Flip-Flop"> + <a name="appearance" val="logisim_evolution"/> </comp> - <comp lib="0" loc="(1610,380)" name="Pin"> - <a name="facing" val="west"/> - <a name="output" val="true"/> - <a name="width" val="8"/> - <a name="label" val="DATA"/> + <comp lib="4" loc="(820,760)" name="Counter"> + <a name="appearance" val="logisim_evolution"/> + <a name="max" val="0x11"/> + <a name="width" val="5"/> </comp> - </circuit> - <circuit name="PERI_SIGNED_PWM"> - <a name="circuit" val="PERI_SIGNED_PWM"/> - <a name="clabel" val=""/> - <a name="clabelup" val="east"/> - <a name="clabelfont" val="SansSerif bold 16"/> - <a name="appearance" val="logisim_evolution"/> - <a name="circuitnamedboxfixedsize" val="true"/> - <a name="circuitvhdlpath" val=""/> - <wire from="(730,270)" to="(780,270)"/> - <wire from="(940,310)" to="(940,380)"/> - <wire from="(710,290)" to="(710,380)"/> - <wire from="(710,380)" to="(940,380)"/> - <wire from="(880,270)" to="(980,270)"/> - <wire from="(550,320)" to="(550,350)"/> - <wire from="(940,290)" to="(980,290)"/> - <wire from="(940,310)" to="(980,310)"/> - <wire from="(790,230)" to="(790,250)"/> - <wire from="(810,230)" to="(810,250)"/> - <wire from="(470,260)" to="(700,260)"/> - <wire from="(430,260)" to="(470,260)"/> - <wire from="(490,370)" to="(530,370)"/> - <wire from="(470,260)" to="(470,360)"/> - <wire from="(490,380)" to="(710,380)"/> - <wire from="(600,340)" to="(620,340)"/> - <wire from="(660,330)" to="(680,330)"/> - <wire from="(680,280)" to="(700,280)"/> - <wire from="(590,320)" to="(620,320)"/> - <wire from="(1200,270)" to="(1230,270)"/> - <wire from="(1200,290)" to="(1230,290)"/> - <wire from="(880,210)" to="(880,270)"/> - <wire from="(810,210)" to="(880,210)"/> - <wire from="(680,280)" to="(680,330)"/> - <wire from="(800,230)" to="(810,230)"/> - <wire from="(520,360)" to="(530,360)"/> - <wire from="(550,320)" to="(560,320)"/> + <wire from="(1010,810)" to="(1050,810)"/> + <wire from="(1010,870)" to="(1040,870)"/> + <wire from="(1020,740)" to="(1020,770)"/> + <wire from="(1020,770)" to="(1050,770)"/> + <wire from="(1030,890)" to="(1040,890)"/> + <wire from="(1080,880)" to="(1090,880)"/> + <wire from="(1090,880)" to="(1090,960)"/> + <wire from="(1090,960)" to="(1110,960)"/> + <wire from="(1100,790)" to="(1120,790)"/> + <wire from="(1120,680)" to="(1120,790)"/> + <wire from="(1120,680)" to="(1270,680)"/> + <wire from="(1120,790)" to="(1120,840)"/> + <wire from="(1120,840)" to="(1570,840)"/> + <wire from="(1140,970)" to="(1580,970)"/> + <wire from="(1180,380)" to="(1210,380)"/> + <wire from="(1180,400)" to="(1200,400)"/> + <wire from="(1180,420)" to="(1190,420)"/> + <wire from="(1180,440)" to="(1240,440)"/> + <wire from="(1180,460)" to="(1190,460)"/> + <wire from="(1180,480)" to="(1200,480)"/> + <wire from="(1180,500)" to="(1210,500)"/> + <wire from="(1180,520)" to="(1220,520)"/> + <wire from="(1190,420)" to="(1190,430)"/> + <wire from="(1190,430)" to="(1240,430)"/> + <wire from="(1190,450)" to="(1190,460)"/> + <wire from="(1190,450)" to="(1240,450)"/> + <wire from="(1200,400)" to="(1200,420)"/> + <wire from="(1200,420)" to="(1240,420)"/> + <wire from="(1200,460)" to="(1200,480)"/> + <wire from="(1200,460)" to="(1240,460)"/> + <wire from="(1210,380)" to="(1210,410)"/> + <wire from="(1210,410)" to="(1240,410)"/> + <wire from="(1210,470)" to="(1210,500)"/> + <wire from="(1210,470)" to="(1240,470)"/> + <wire from="(1220,480)" to="(1220,520)"/> + <wire from="(1220,480)" to="(1240,480)"/> + <wire from="(1260,380)" to="(1260,400)"/> + <wire from="(1260,380)" to="(1610,380)"/> + <wire from="(1330,680)" to="(1670,680)"/> + <wire from="(150,160)" to="(420,160)"/> + <wire from="(180,130)" to="(440,130)"/> + <wire from="(180,190)" to="(510,190)"/> + <wire from="(420,160)" to="(1060,160)"/> + <wire from="(420,160)" to="(420,270)"/> + <wire from="(420,270)" to="(420,720)"/> + <wire from="(420,270)" to="(640,270)"/> + <wire from="(420,720)" to="(1270,720)"/> + <wire from="(420,720)" to="(420,840)"/> + <wire from="(420,840)" to="(420,940)"/> + <wire from="(420,840)" to="(820,840)"/> + <wire from="(420,940)" to="(560,940)"/> + <wire from="(440,130)" to="(1060,130)"/> + <wire from="(440,130)" to="(440,780)"/> + <wire from="(440,780)" to="(560,780)"/> + <wire from="(510,190)" to="(1060,190)"/> + <wire from="(510,190)" to="(510,220)"/> + <wire from="(510,220)" to="(570,220)"/> + <wire from="(510,920)" to="(520,920)"/> + <wire from="(520,920)" to="(520,930)"/> + <wire from="(520,930)" to="(560,930)"/> + <wire from="(540,240)" to="(550,240)"/> + <wire from="(540,920)" to="(560,920)"/> + <wire from="(550,890)" to="(560,890)"/> + <wire from="(560,780)" to="(560,880)"/> + <wire from="(560,780)" to="(670,780)"/> + <wire from="(560,910)" to="(560,920)"/> + <wire from="(580,240)" to="(610,240)"/> + <wire from="(600,220)" to="(610,220)"/> + <wire from="(620,200)" to="(620,210)"/> + <wire from="(620,200)" to="(700,200)"/> + <wire from="(670,280)" to="(670,780)"/> + <wire from="(670,780)" to="(820,780)"/> + <wire from="(700,200)" to="(700,230)"/> + <wire from="(700,230)" to="(720,230)"/> + <wire from="(760,910)" to="(780,910)"/> + <wire from="(760,970)" to="(800,970)"/> + <wire from="(770,140)" to="(1060,140)"/> + <wire from="(770,800)" to="(780,800)"/> + <wire from="(780,790)" to="(780,800)"/> + <wire from="(780,790)" to="(820,790)"/> + <wire from="(780,880)" to="(780,910)"/> + <wire from="(790,150)" to="(1060,150)"/> + <wire from="(790,150)" to="(790,740)"/> + <wire from="(790,740)" to="(1020,740)"/> + <wire from="(790,740)" to="(790,830)"/> + <wire from="(790,830)" to="(790,850)"/> + <wire from="(790,830)" to="(820,830)"/> + <wire from="(790,900)" to="(790,920)"/> + <wire from="(790,900)" to="(800,900)"/> + <wire from="(800,880)" to="(800,900)"/> + <wire from="(810,810)" to="(820,810)"/> + <wire from="(840,980)" to="(1110,980)"/> + </circuit> + <circuit name="PERI_SIGNED_PWM"> + <a name="appearance" val="logisim_evolution"/> + <a name="circuit" val="PERI_SIGNED_PWM"/> + <a name="circuitnamedboxfixedsize" val="true"/> <comp lib="0" loc="(1230,270)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> - <a name="output" val="true"/> <a name="label" val="PWM_OUT"/> - <a name="appearance" val="NewPins"/> + <a name="output" val="true"/> </comp> <comp lib="0" loc="(1230,290)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> - <a name="output" val="true"/> <a name="label" val="DIR_OUT"/> - <a name="appearance" val="NewPins"/> + <a name="output" val="true"/> </comp> <comp lib="0" loc="(430,260)" name="Pin"> - <a name="width" val="8"/> + <a name="appearance" val="NewPins"/> <a name="label" val="SPEED_IN"/> <a name="radix" val="10signed"/> - <a name="appearance" val="NewPins"/> + <a name="width" val="8"/> </comp> <comp lib="0" loc="(470,360)" name="Splitter"> - <a name="incoming" val="8"/> <a name="appear" val="right"/> <a name="bit1" val="0"/> <a name="bit2" val="0"/> @@ -4266,13 +4193,12 @@ <a name="bit5" val="0"/> <a name="bit6" val="0"/> <a name="bit7" val="1"/> + <a name="incoming" val="8"/> </comp> <comp lib="0" loc="(520,360)" name="Constant"> <a name="value" val="0x0"/> </comp> <comp lib="0" loc="(550,350)" name="Splitter"> - <a name="facing" val="west"/> - <a name="incoming" val="8"/> <a name="bit0" val="1"/> <a name="bit2" val="1"/> <a name="bit3" val="1"/> @@ -4280,14 +4206,13 @@ <a name="bit5" val="1"/> <a name="bit6" val="1"/> <a name="bit7" val="0"/> + <a name="facing" val="west"/> + <a name="incoming" val="8"/> </comp> <comp lib="0" loc="(600,340)" name="Constant"> <a name="width" val="8"/> </comp> <comp lib="0" loc="(780,270)" name="Splitter"> - <a name="facing" val="north"/> - <a name="fanout" val="1"/> - <a name="incoming" val="8"/> <a name="appear" val="right"/> <a name="bit1" val="0"/> <a name="bit2" val="0"/> @@ -4296,10 +4221,11 @@ <a name="bit5" val="0"/> <a name="bit6" val="0"/> <a name="bit7" val="none"/> + <a name="facing" val="north"/> + <a name="fanout" val="1"/> + <a name="incoming" val="8"/> </comp> <comp lib="0" loc="(810,210)" name="Splitter"> - <a name="facing" val="south"/> - <a name="incoming" val="8"/> <a name="appear" val="right"/> <a name="bit2" val="1"/> <a name="bit3" val="1"/> @@ -4307,70 +4233,78 @@ <a name="bit5" val="1"/> <a name="bit6" val="1"/> <a name="bit7" val="1"/> + <a name="facing" val="south"/> + <a name="incoming" val="8"/> </comp> <comp lib="0" loc="(810,250)" name="Constant"> <a name="facing" val="north"/> <a name="value" val="0x0"/> </comp> <comp lib="0" loc="(940,290)" name="Pin"> - <a name="label" val="CLK"/> <a name="appearance" val="NewPins"/> + <a name="label" val="CLK"/> </comp> <comp lib="1" loc="(590,320)" name="NOT Gate"> <a name="width" val="8"/> </comp> <comp lib="2" loc="(730,270)" name="Multiplexer"> <a name="width" val="8"/> - <a name="enable" val="false"/> </comp> <comp lib="3" loc="(660,330)" name="Adder"/> <comp loc="(1200,270)" name="PERI_PWM"> <a name="label" val="PERI"/> </comp> + <wire from="(1200,270)" to="(1230,270)"/> + <wire from="(1200,290)" to="(1230,290)"/> + <wire from="(430,260)" to="(470,260)"/> + <wire from="(470,260)" to="(470,360)"/> + <wire from="(470,260)" to="(700,260)"/> + <wire from="(490,370)" to="(530,370)"/> + <wire from="(490,380)" to="(710,380)"/> + <wire from="(520,360)" to="(530,360)"/> + <wire from="(550,320)" to="(550,350)"/> + <wire from="(550,320)" to="(560,320)"/> + <wire from="(590,320)" to="(620,320)"/> + <wire from="(600,340)" to="(620,340)"/> + <wire from="(660,330)" to="(680,330)"/> + <wire from="(680,280)" to="(680,330)"/> + <wire from="(680,280)" to="(700,280)"/> + <wire from="(710,290)" to="(710,380)"/> + <wire from="(710,380)" to="(940,380)"/> + <wire from="(730,270)" to="(780,270)"/> + <wire from="(790,230)" to="(790,250)"/> + <wire from="(800,230)" to="(810,230)"/> + <wire from="(810,210)" to="(880,210)"/> + <wire from="(810,230)" to="(810,250)"/> + <wire from="(880,210)" to="(880,270)"/> + <wire from="(880,270)" to="(980,270)"/> + <wire from="(940,290)" to="(980,290)"/> + <wire from="(940,310)" to="(940,380)"/> + <wire from="(940,310)" to="(980,310)"/> </circuit> <circuit name="PERI_PWM"> - <a name="circuit" val="PERI_PWM"/> - <a name="clabel" val=""/> - <a name="clabelup" val="east"/> - <a name="clabelfont" val="SansSerif bold 16"/> <a name="appearance" val="logisim_evolution"/> + <a name="circuit" val="PERI_PWM"/> <a name="circuitnamedboxfixedsize" val="true"/> - <a name="circuitvhdlpath" val=""/> - <wire from="(610,390)" to="(760,390)"/> - <wire from="(610,440)" to="(1110,440)"/> - <wire from="(630,330)" to="(650,330)"/> - <wire from="(630,350)" to="(650,350)"/> - <wire from="(780,340)" to="(830,340)"/> - <wire from="(720,350)" to="(750,350)"/> - <wire from="(850,350)" to="(1010,350)"/> - <wire from="(980,370)" to="(1010,370)"/> - <wire from="(690,340)" to="(750,340)"/> - <wire from="(830,280)" to="(830,340)"/> - <wire from="(630,280)" to="(830,280)"/> - <wire from="(1050,370)" to="(1110,370)"/> - <wire from="(760,360)" to="(760,390)"/> - <wire from="(770,360)" to="(770,410)"/> - <wire from="(630,280)" to="(630,330)"/> - <wire from="(760,410)" to="(770,410)"/> <comp lib="0" loc="(1110,370)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> - <a name="output" val="true"/> <a name="label" val="SIG"/> - <a name="appearance" val="NewPins"/> + <a name="output" val="true"/> </comp> <comp lib="0" loc="(1110,440)" name="Pin"> + <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> - <a name="output" val="true"/> <a name="label" val="DIR"/> - <a name="appearance" val="NewPins"/> + <a name="output" val="true"/> </comp> <comp lib="0" loc="(610,390)" name="Pin"> - <a name="label" val="CLK"/> <a name="appearance" val="NewPins"/> + <a name="label" val="CLK"/> </comp> <comp lib="0" loc="(610,440)" name="Pin"> - <a name="label" val="DIR_IN"/> <a name="appearance" val="NewPins"/> + <a name="label" val="DIR_IN"/> </comp> <comp lib="0" loc="(630,350)" name="Constant"> <a name="width" val="10"/> @@ -4380,8 +4314,6 @@ <a name="value" val="0x0"/> </comp> <comp lib="0" loc="(830,340)" name="Splitter"> - <a name="fanout" val="1"/> - <a name="incoming" val="10"/> <a name="appear" val="right"/> <a name="bit0" val="none"/> <a name="bit1" val="none"/> @@ -4393,246 +4325,267 @@ <a name="bit7" val="0"/> <a name="bit8" val="0"/> <a name="bit9" val="0"/> + <a name="fanout" val="1"/> + <a name="incoming" val="10"/> </comp> <comp lib="0" loc="(980,370)" name="Pin"> - <a name="width" val="8"/> + <a name="appearance" val="NewPins"/> <a name="label" val="speed"/> <a name="radix" val="10unsigned"/> - <a name="appearance" val="NewPins"/> - </comp> - <comp lib="3" loc="(1050,360)" name="Comparator"> - <a name="mode" val="unsigned"/> - </comp> - <comp lib="3" loc="(690,340)" name="Adder"> - <a name="width" val="10"/> - </comp> - <comp lib="4" loc="(780,340)" name="Register"> - <a name="width" val="10"/> - <a name="appearance" val="classic"/> - </comp> - </circuit> - <circuit name="PERI_UART_RCVE_9600"> - <a name="circuit" val="PERI_UART_RCVE_9600"/> - <a name="clabel" val=""/> - <a name="clabelup" val="east"/> - <a name="clabelfont" val="SansSerif bold 16"/> - <a name="appearance" val="logisim_evolution"/> - <a name="circuitnamedboxfixedsize" val="true"/> - <a name="circuitvhdlpath" val=""/> - <wire from="(1060,530)" to="(1060,610)"/> - <wire from="(590,190)" to="(590,200)"/> - <wire from="(480,210)" to="(540,210)"/> - <wire from="(910,250)" to="(910,260)"/> - <wire from="(410,120)" to="(780,120)"/> - <wire from="(900,270)" to="(960,270)"/> - <wire from="(490,570)" to="(490,580)"/> - <wire from="(410,430)" to="(530,430)"/> - <wire from="(930,210)" to="(930,240)"/> - <wire from="(990,390)" to="(990,420)"/> - <wire from="(760,390)" to="(760,480)"/> - <wire from="(760,390)" to="(990,390)"/> - <wire from="(730,620)" to="(770,620)"/> - <wire from="(750,440)" to="(790,440)"/> - <wire from="(740,130)" to="(780,130)"/> - <wire from="(670,190)" to="(670,220)"/> - <wire from="(900,350)" to="(940,350)"/> - <wire from="(750,530)" to="(750,560)"/> - <wire from="(920,250)" to="(960,250)"/> - <wire from="(920,290)" to="(960,290)"/> - <wire from="(1110,620)" to="(1550,620)"/> - <wire from="(480,180)" to="(480,210)"/> - <wire from="(390,370)" to="(1130,370)"/> - <wire from="(490,580)" to="(530,580)"/> - <wire from="(760,480)" to="(760,500)"/> - <wire from="(770,530)" to="(770,550)"/> - <wire from="(900,230)" to="(920,230)"/> - <wire from="(900,310)" to="(920,310)"/> - <wire from="(940,310)" to="(960,310)"/> - <wire from="(670,220)" to="(690,220)"/> - <wire from="(1050,530)" to="(1060,530)"/> - <wire from="(730,560)" to="(750,560)"/> - <wire from="(390,260)" to="(390,370)"/> - <wire from="(760,480)" to="(790,480)"/> - <wire from="(550,230)" to="(580,230)"/> - <wire from="(980,520)" to="(1010,520)"/> - <wire from="(510,230)" to="(520,230)"/> - <wire from="(150,180)" to="(480,180)"/> - <wire from="(1000,540)" to="(1010,540)"/> - <wire from="(590,190)" to="(670,190)"/> - <wire from="(780,460)" to="(790,460)"/> - <wire from="(390,150)" to="(780,150)"/> - <wire from="(1060,610)" to="(1080,610)"/> - <wire from="(1070,440)" to="(1090,440)"/> - <wire from="(810,630)" to="(1080,630)"/> - <wire from="(570,210)" to="(580,210)"/> - <wire from="(1190,330)" to="(1530,330)"/> - <wire from="(150,120)" to="(410,120)"/> - <wire from="(520,540)" to="(530,540)"/> - <wire from="(750,440)" to="(750,450)"/> - <wire from="(530,560)" to="(530,570)"/> - <wire from="(910,280)" to="(960,280)"/> - <wire from="(910,260)" to="(960,260)"/> - <wire from="(910,280)" to="(910,290)"/> - <wire from="(1090,330)" to="(1130,330)"/> - <wire from="(930,300)" to="(930,330)"/> - <wire from="(480,180)" to="(780,180)"/> - <wire from="(980,230)" to="(1530,230)"/> - <wire from="(980,460)" to="(1020,460)"/> - <wire from="(920,290)" to="(920,310)"/> - <wire from="(920,230)" to="(920,250)"/> - <wire from="(530,430)" to="(640,430)"/> - <wire from="(760,550)" to="(760,570)"/> - <wire from="(390,260)" to="(610,260)"/> - <wire from="(390,490)" to="(390,590)"/> - <wire from="(1090,440)" to="(1090,490)"/> - <wire from="(640,430)" to="(790,430)"/> - <wire from="(510,570)" to="(530,570)"/> - <wire from="(940,310)" to="(940,350)"/> - <wire from="(760,140)" to="(780,140)"/> - <wire from="(640,270)" to="(640,430)"/> - <wire from="(390,150)" to="(390,260)"/> - <wire from="(930,240)" to="(960,240)"/> - <wire from="(530,430)" to="(530,530)"/> - <wire from="(930,300)" to="(960,300)"/> - <wire from="(990,420)" to="(1020,420)"/> - <wire from="(1090,490)" to="(1540,490)"/> - <wire from="(900,210)" to="(930,210)"/> - <wire from="(900,330)" to="(930,330)"/> - <wire from="(120,150)" to="(390,150)"/> - <wire from="(410,120)" to="(410,430)"/> - <wire from="(760,140)" to="(760,390)"/> - <wire from="(480,570)" to="(490,570)"/> - <wire from="(390,590)" to="(530,590)"/> - <wire from="(390,490)" to="(790,490)"/> - <wire from="(900,250)" to="(910,250)"/> - <wire from="(900,290)" to="(910,290)"/> - <wire from="(760,550)" to="(770,550)"/> - <wire from="(740,450)" to="(750,450)"/> - <wire from="(1090,330)" to="(1090,440)"/> - <wire from="(390,370)" to="(390,490)"/> - <comp lib="0" loc="(740,450)" name="Tunnel"> - <a name="facing" val="east"/> - <a name="label" val="done_sig"/> - </comp> - <comp lib="4" loc="(790,410)" name="Counter"> - <a name="width" val="4"/> - <a name="max" val="0x9"/> - <a name="appearance" val="logisim_evolution"/> - </comp> - <comp lib="1" loc="(760,500)" name="OR Gate"> - <a name="facing" val="north"/> - <a name="size" val="30"/> - </comp> - <comp lib="3" loc="(810,630)" name="Comparator"> - <a name="width" val="16"/> - </comp> - <comp lib="0" loc="(980,230)" name="Splitter"> - <a name="facing" val="west"/> - <a name="fanout" val="8"/> - <a name="incoming" val="8"/> - <a name="bit0" val="7"/> - <a name="bit1" val="6"/> - <a name="bit2" val="5"/> - <a name="bit3" val="4"/> - <a name="bit4" val="3"/> - <a name="bit5" val="2"/> - <a name="bit6" val="1"/> - <a name="bit7" val="0"/> - </comp> - <comp lib="1" loc="(550,230)" name="NOT Gate"/> - <comp lib="4" loc="(1140,320)" name="D Flip-Flop"> - <a name="appearance" val="logisim_evolution"/> + <a name="width" val="8"/> </comp> - <comp lib="0" loc="(1540,490)" name="Tunnel"> - <a name="label" val="done_sig"/> + <comp lib="3" loc="(1050,360)" name="Comparator"> + <a name="mode" val="unsigned"/> </comp> - <comp lib="0" loc="(770,640)" name="Constant"> - <a name="width" val="16"/> - <a name="value" val="0x1455"/> + <comp lib="3" loc="(690,340)" name="Adder"> + <a name="width" val="10"/> </comp> - <comp lib="4" loc="(780,100)" name="Shift Register"> - <a name="length" val="9"/> - <a name="appearance" val="logisim_evolution"/> + <comp lib="4" loc="(780,340)" name="Register"> + <a name="appearance" val="classic"/> + <a name="width" val="10"/> </comp> + <wire from="(1050,370)" to="(1110,370)"/> + <wire from="(610,390)" to="(760,390)"/> + <wire from="(610,440)" to="(1110,440)"/> + <wire from="(630,280)" to="(630,330)"/> + <wire from="(630,280)" to="(830,280)"/> + <wire from="(630,330)" to="(650,330)"/> + <wire from="(630,350)" to="(650,350)"/> + <wire from="(690,340)" to="(750,340)"/> + <wire from="(720,350)" to="(750,350)"/> + <wire from="(760,360)" to="(760,390)"/> + <wire from="(760,410)" to="(770,410)"/> + <wire from="(770,360)" to="(770,410)"/> + <wire from="(780,340)" to="(830,340)"/> + <wire from="(830,280)" to="(830,340)"/> + <wire from="(850,350)" to="(1010,350)"/> + <wire from="(980,370)" to="(1010,370)"/> + </circuit> + <circuit name="PERI_UART_RCVE_9600"> + <a name="appearance" val="logisim_evolution"/> + <a name="circuit" val="PERI_UART_RCVE_9600"/> + <a name="circuitnamedboxfixedsize" val="true"/> + <a name="simulationFrequency" val="1.0"/> <comp lib="0" loc="(1000,540)" name="Constant"> - <a name="width" val="4"/> <a name="value" val="0x0"/> + <a name="width" val="4"/> </comp> - <comp lib="0" loc="(520,540)" name="Tunnel"> - <a name="facing" val="east"/> - <a name="label" val="half"/> + <comp lib="0" loc="(120,150)" name="Pin"> + <a name="appearance" val="classic"/> + <a name="label" val="CLK"/> + </comp> + <comp lib="0" loc="(150,120)" name="Pin"> + <a name="appearance" val="classic"/> + <a name="label" val="RESET"/> + </comp> + <comp lib="0" loc="(150,180)" name="Pin"> + <a name="appearance" val="classic"/> + <a name="label" val="RX"/> </comp> <comp lib="0" loc="(1530,230)" name="Pin"> + <a name="appearance" val="classic"/> <a name="facing" val="west"/> + <a name="label" val="DATA"/> <a name="output" val="true"/> <a name="width" val="8"/> - <a name="label" val="DATA"/> </comp> - <comp lib="1" loc="(1070,440)" name="AND Gate"/> + <comp lib="0" loc="(1530,330)" name="Pin"> + <a name="appearance" val="classic"/> + <a name="facing" val="west"/> + <a name="label" val="DONE"/> + <a name="output" val="true"/> + </comp> + <comp lib="0" loc="(1540,490)" name="Tunnel"> + <a name="label" val="done_sig"/> + </comp> + <comp lib="0" loc="(1550,620)" name="Tunnel"> + <a name="label" val="half"/> + </comp> <comp lib="0" loc="(360,710)" name="Constant"> - <a name="width" val="16"/> <a name="value" val="0x28aa"/> + <a name="width" val="16"/> </comp> <comp lib="0" loc="(480,570)" name="Tunnel"> <a name="facing" val="east"/> <a name="label" val="state"/> </comp> - <comp lib="0" loc="(150,120)" name="Pin"> - <a name="label" val="RESET"/> + <comp lib="0" loc="(510,230)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="done_sig"/> </comp> - <comp lib="0" loc="(150,180)" name="Pin"> - <a name="label" val="RX"/> + <comp lib="0" loc="(510,570)" name="Power"/> + <comp lib="0" loc="(520,540)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="half"/> </comp> <comp lib="0" loc="(530,620)" name="Constant"> - <a name="width" val="16"/> <a name="value" val="0x0"/> + <a name="width" val="16"/> </comp> <comp lib="0" loc="(690,220)" name="Tunnel"> <a name="label" val="state"/> </comp> - <comp lib="3" loc="(1050,530)" name="Comparator"> - <a name="width" val="4"/> + <comp lib="0" loc="(740,130)" name="Ground"/> + <comp lib="0" loc="(740,450)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="done_sig"/> + </comp> + <comp lib="0" loc="(760,570)" name="Tunnel"> + <a name="facing" val="north"/> + <a name="label" val="half"/> + </comp> + <comp lib="0" loc="(770,640)" name="Constant"> + <a name="value" val="0x1455"/> + <a name="width" val="16"/> </comp> + <comp lib="0" loc="(780,460)" name="Power"/> <comp lib="0" loc="(790,520)" name="Constant"> - <a name="width" val="4"/> <a name="value" val="0x0"/> + <a name="width" val="4"/> </comp> - <comp lib="0" loc="(120,150)" name="Pin"> - <a name="label" val="CLK"/> + <comp lib="0" loc="(980,230)" name="Splitter"> + <a name="bit0" val="7"/> + <a name="bit1" val="6"/> + <a name="bit2" val="5"/> + <a name="bit3" val="4"/> + <a name="bit4" val="3"/> + <a name="bit5" val="2"/> + <a name="bit6" val="1"/> + <a name="bit7" val="0"/> + <a name="facing" val="west"/> + <a name="fanout" val="8"/> + <a name="incoming" val="8"/> + </comp> + <comp lib="1" loc="(1070,440)" name="AND Gate"/> + <comp lib="1" loc="(1110,620)" name="AND Gate"> + <a name="size" val="30"/> + </comp> + <comp lib="1" loc="(550,230)" name="NOT Gate"/> + <comp lib="1" loc="(570,210)" name="NOT Gate"/> + <comp lib="1" loc="(760,500)" name="OR Gate"> + <a name="facing" val="north"/> + <a name="size" val="30"/> </comp> - <comp lib="0" loc="(780,460)" name="Power"/> <comp lib="2" loc="(610,220)" name="Multiplexer"> + <a name="enable" val="true"/> <a name="selloc" val="tr"/> </comp> - <comp lib="4" loc="(620,210)" name="D Flip-Flop"> - <a name="appearance" val="logisim_evolution"/> + <comp lib="3" loc="(1050,530)" name="Comparator"> + <a name="width" val="4"/> </comp> - <comp lib="4" loc="(530,510)" name="Counter"> + <comp lib="3" loc="(810,630)" name="Comparator"> <a name="width" val="16"/> - <a name="max" val="0x28aa"/> - <a name="appearance" val="logisim_evolution"/> </comp> - <comp lib="0" loc="(1550,620)" name="Tunnel"> - <a name="label" val="half"/> + <comp lib="4" loc="(1140,320)" name="D Flip-Flop"> + <a name="appearance" val="logisim_evolution"/> </comp> - <comp lib="0" loc="(510,570)" name="Power"/> - <comp lib="0" loc="(740,130)" name="Ground"/> - <comp lib="1" loc="(1110,620)" name="AND Gate"> - <a name="size" val="30"/> + <comp lib="4" loc="(530,510)" name="Counter"> + <a name="appearance" val="logisim_evolution"/> + <a name="max" val="0x28aa"/> + <a name="width" val="16"/> </comp> - <comp lib="0" loc="(1530,330)" name="Pin"> - <a name="facing" val="west"/> - <a name="output" val="true"/> - <a name="label" val="DONE"/> + <comp lib="4" loc="(620,210)" name="D Flip-Flop"> + <a name="appearance" val="logisim_evolution"/> </comp> - <comp lib="1" loc="(570,210)" name="NOT Gate"/> - <comp lib="0" loc="(760,570)" name="Tunnel"> - <a name="facing" val="north"/> - <a name="label" val="half"/> + <comp lib="4" loc="(780,100)" name="Shift Register"> + <a name="appearance" val="logisim_evolution"/> + <a name="length" val="9"/> </comp> - <comp lib="0" loc="(510,230)" name="Tunnel"> - <a name="facing" val="east"/> - <a name="label" val="done_sig"/> + <comp lib="4" loc="(790,410)" name="Counter"> + <a name="appearance" val="logisim_evolution"/> + <a name="max" val="0x9"/> + <a name="width" val="4"/> </comp> + <wire from="(1000,540)" to="(1010,540)"/> + <wire from="(1050,530)" to="(1060,530)"/> + <wire from="(1060,530)" to="(1060,610)"/> + <wire from="(1060,610)" to="(1080,610)"/> + <wire from="(1070,440)" to="(1090,440)"/> + <wire from="(1090,330)" to="(1090,440)"/> + <wire from="(1090,330)" to="(1130,330)"/> + <wire from="(1090,440)" to="(1090,490)"/> + <wire from="(1090,490)" to="(1540,490)"/> + <wire from="(1110,620)" to="(1550,620)"/> + <wire from="(1190,330)" to="(1530,330)"/> + <wire from="(120,150)" to="(390,150)"/> + <wire from="(150,120)" to="(410,120)"/> + <wire from="(150,180)" to="(480,180)"/> + <wire from="(390,150)" to="(390,260)"/> + <wire from="(390,150)" to="(780,150)"/> + <wire from="(390,260)" to="(390,370)"/> + <wire from="(390,260)" to="(610,260)"/> + <wire from="(390,370)" to="(1130,370)"/> + <wire from="(390,370)" to="(390,490)"/> + <wire from="(390,490)" to="(390,590)"/> + <wire from="(390,490)" to="(790,490)"/> + <wire from="(390,590)" to="(530,590)"/> + <wire from="(410,120)" to="(410,430)"/> + <wire from="(410,120)" to="(780,120)"/> + <wire from="(410,430)" to="(530,430)"/> + <wire from="(480,180)" to="(480,210)"/> + <wire from="(480,180)" to="(780,180)"/> + <wire from="(480,210)" to="(540,210)"/> + <wire from="(480,570)" to="(490,570)"/> + <wire from="(490,570)" to="(490,580)"/> + <wire from="(490,580)" to="(530,580)"/> + <wire from="(510,230)" to="(520,230)"/> + <wire from="(510,570)" to="(530,570)"/> + <wire from="(520,540)" to="(530,540)"/> + <wire from="(530,430)" to="(530,530)"/> + <wire from="(530,430)" to="(640,430)"/> + <wire from="(530,560)" to="(530,570)"/> + <wire from="(550,230)" to="(580,230)"/> + <wire from="(570,210)" to="(580,210)"/> + <wire from="(590,190)" to="(590,200)"/> + <wire from="(590,190)" to="(670,190)"/> + <wire from="(640,270)" to="(640,430)"/> + <wire from="(640,430)" to="(790,430)"/> + <wire from="(670,190)" to="(670,220)"/> + <wire from="(670,220)" to="(690,220)"/> + <wire from="(730,560)" to="(750,560)"/> + <wire from="(730,620)" to="(770,620)"/> + <wire from="(740,130)" to="(780,130)"/> + <wire from="(740,450)" to="(750,450)"/> + <wire from="(750,440)" to="(750,450)"/> + <wire from="(750,440)" to="(790,440)"/> + <wire from="(750,530)" to="(750,560)"/> + <wire from="(760,140)" to="(760,390)"/> + <wire from="(760,140)" to="(780,140)"/> + <wire from="(760,390)" to="(760,480)"/> + <wire from="(760,390)" to="(990,390)"/> + <wire from="(760,480)" to="(760,500)"/> + <wire from="(760,480)" to="(790,480)"/> + <wire from="(760,550)" to="(760,570)"/> + <wire from="(760,550)" to="(770,550)"/> + <wire from="(770,530)" to="(770,550)"/> + <wire from="(780,460)" to="(790,460)"/> + <wire from="(810,630)" to="(1080,630)"/> + <wire from="(900,210)" to="(930,210)"/> + <wire from="(900,230)" to="(920,230)"/> + <wire from="(900,250)" to="(910,250)"/> + <wire from="(900,270)" to="(960,270)"/> + <wire from="(900,290)" to="(910,290)"/> + <wire from="(900,310)" to="(920,310)"/> + <wire from="(900,330)" to="(930,330)"/> + <wire from="(900,350)" to="(940,350)"/> + <wire from="(910,250)" to="(910,260)"/> + <wire from="(910,260)" to="(960,260)"/> + <wire from="(910,280)" to="(910,290)"/> + <wire from="(910,280)" to="(960,280)"/> + <wire from="(920,230)" to="(920,250)"/> + <wire from="(920,250)" to="(960,250)"/> + <wire from="(920,290)" to="(920,310)"/> + <wire from="(920,290)" to="(960,290)"/> + <wire from="(930,210)" to="(930,240)"/> + <wire from="(930,240)" to="(960,240)"/> + <wire from="(930,300)" to="(930,330)"/> + <wire from="(930,300)" to="(960,300)"/> + <wire from="(940,310)" to="(940,350)"/> + <wire from="(940,310)" to="(960,310)"/> + <wire from="(980,230)" to="(1530,230)"/> + <wire from="(980,460)" to="(1020,460)"/> + <wire from="(980,520)" to="(1010,520)"/> + <wire from="(990,390)" to="(990,420)"/> + <wire from="(990,420)" to="(1020,420)"/> </circuit> </project>