4-bit-ALU/logisim/autest.circ
2025-01-23 06:58:05 +03:00

300 lines
12 KiB
XML

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project source="3.9.0" version="1.0">
This file is intended to be loaded by Logisim-evolution v3.9.0(https://github.com/logisim-evolution/).
<lib desc="#Wiring" name="0">
<tool name="Splitter">
<a name="facing" val="west"/>
</tool>
<tool name="Pin">
<a name="appearance" val="classic"/>
</tool>
<tool name="Power">
<a name="facing" val="west"/>
</tool>
</lib>
<lib desc="#Gates" name="1"/>
<lib desc="#Plexers" name="2"/>
<lib desc="#Arithmetic" name="3"/>
<lib desc="#Memory" name="4"/>
<lib desc="#I/O" name="5"/>
<lib desc="#TTL" name="6">
<tool name="7432">
<a name="facing" val="south"/>
</tool>
</lib>
<lib desc="#TCL" name="7"/>
<lib desc="#Base" name="8"/>
<lib desc="#BFH-Praktika" name="9"/>
<lib desc="#Input/Output-Extra" name="10"/>
<lib desc="#Soc" name="11"/>
<lib desc="file#arithmeticunit.circ" name="12"/>
<main name="main"/>
<options>
<a name="gateUndefined" val="ignore"/>
<a name="simlimit" val="1000"/>
<a name="simrand" val="0"/>
</options>
<mappings>
<tool lib="8" map="Button2" name="Poke Tool"/>
<tool lib="8" map="Button3" name="Menu Tool"/>
<tool lib="8" map="Ctrl Button1" name="Menu Tool"/>
</mappings>
<toolbar>
<tool lib="8" name="Poke Tool"/>
<tool lib="8" name="Edit Tool"/>
<tool lib="8" name="Wiring Tool"/>
<tool lib="8" name="Text Tool"/>
<sep/>
<tool lib="0" name="Pin"/>
<tool lib="0" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
</tool>
<sep/>
<tool lib="1" name="NOT Gate"/>
<tool lib="1" name="AND Gate"/>
<tool lib="1" name="OR Gate"/>
<tool lib="1" name="XOR Gate"/>
<tool lib="1" name="NAND Gate"/>
<tool lib="1" name="NOR Gate"/>
<sep/>
<tool lib="4" name="D Flip-Flop"/>
<tool lib="4" name="Register"/>
</toolbar>
<circuit name="main">
<a name="appearance" val="logisim_evolution"/>
<a name="circuit" val="main"/>
<a name="circuitnamedboxfixedsize" val="true"/>
<a name="simulationFrequency" val="1.0"/>
<comp lib="0" loc="(100,680)" name="Splitter">
<a name="facing" val="south"/>
</comp>
<comp lib="0" loc="(120,580)" name="Splitter">
<a name="facing" val="north"/>
<a name="fanout" val="4"/>
<a name="incoming" val="4"/>
</comp>
<comp lib="0" loc="(140,610)" name="Pin">
<a name="appearance" val="classic"/>
</comp>
<comp lib="0" loc="(190,560)" name="Splitter">
<a name="facing" val="north"/>
<a name="fanout" val="4"/>
<a name="incoming" val="4"/>
</comp>
<comp lib="0" loc="(220,420)" name="Ground"/>
<comp lib="0" loc="(240,310)" name="Splitter">
<a name="facing" val="west"/>
<a name="fanout" val="9"/>
<a name="incoming" val="9"/>
</comp>
<comp lib="0" loc="(450,500)" name="Ground"/>
<comp lib="0" loc="(470,390)" name="Splitter">
<a name="facing" val="west"/>
<a name="fanout" val="9"/>
<a name="incoming" val="9"/>
</comp>
<comp lib="0" loc="(590,650)" name="Splitter">
<a name="fanout" val="4"/>
<a name="incoming" val="4"/>
</comp>
<comp lib="0" loc="(630,710)" name="Ground"/>
<comp lib="0" loc="(650,600)" name="Splitter">
<a name="facing" val="west"/>
<a name="fanout" val="9"/>
<a name="incoming" val="9"/>
</comp>
<comp lib="0" loc="(900,640)" name="Splitter">
<a name="fanout" val="4"/>
<a name="incoming" val="4"/>
</comp>
<comp lib="0" loc="(940,700)" name="Ground"/>
<comp lib="0" loc="(960,590)" name="Splitter">
<a name="facing" val="west"/>
<a name="fanout" val="9"/>
<a name="incoming" val="9"/>
</comp>
<comp lib="12" loc="(450,660)" name="arithmeticUnit"/>
<comp lib="5" loc="(100,700)" name="DipSwitch">
<a name="number" val="2"/>
</comp>
<comp lib="5" loc="(1000,460)" name="7-Segment Display"/>
<comp lib="5" loc="(1060,460)" name="7-Segment Display"/>
<comp lib="5" loc="(1120,460)" name="7-Segment Display"/>
<comp lib="5" loc="(180,210)" name="DipSwitch">
<a name="facing" val="south"/>
</comp>
<comp lib="5" loc="(280,180)" name="7-Segment Display"/>
<comp lib="5" loc="(340,180)" name="7-Segment Display"/>
<comp lib="5" loc="(400,180)" name="7-Segment Display"/>
<comp lib="5" loc="(460,840)" name="LED">
<a name="facing" val="north"/>
</comp>
<comp lib="5" loc="(490,840)" name="LED">
<a name="facing" val="north"/>
</comp>
<comp lib="5" loc="(510,260)" name="7-Segment Display"/>
<comp lib="5" loc="(570,260)" name="7-Segment Display"/>
<comp lib="5" loc="(630,260)" name="7-Segment Display"/>
<comp lib="5" loc="(690,470)" name="7-Segment Display"/>
<comp lib="5" loc="(750,470)" name="7-Segment Display"/>
<comp lib="5" loc="(810,470)" name="7-Segment Display"/>
<comp lib="8" loc="(108,789)" name="Text">
<a name="text" val="switch 1 sub"/>
</comp>
<comp lib="8" loc="(112,763)" name="Text">
<a name="text" val="switch 2 add"/>
</comp>
<comp lib="8" loc="(119,815)" name="Text">
<a name="text" val="decoded opcode"/>
</comp>
<comp lib="8" loc="(333,149)" name="Text">
<a name="text" val="A"/>
</comp>
<comp lib="8" loc="(560,220)" name="Text">
<a name="text" val="B"/>
</comp>
<comp lib="9" loc="(1000,460)" name="BCD_to_7_Segment_decoder"/>
<comp lib="9" loc="(1010,590)" name="Binary_to_BCD_converter"/>
<comp lib="9" loc="(1060,460)" name="BCD_to_7_Segment_decoder"/>
<comp lib="9" loc="(1120,460)" name="BCD_to_7_Segment_decoder"/>
<comp lib="9" loc="(280,180)" name="BCD_to_7_Segment_decoder"/>
<comp lib="9" loc="(290,310)" name="Binary_to_BCD_converter"/>
<comp lib="9" loc="(340,180)" name="BCD_to_7_Segment_decoder"/>
<comp lib="9" loc="(400,180)" name="BCD_to_7_Segment_decoder"/>
<comp lib="9" loc="(510,260)" name="BCD_to_7_Segment_decoder"/>
<comp lib="9" loc="(520,390)" name="Binary_to_BCD_converter"/>
<comp lib="9" loc="(570,260)" name="BCD_to_7_Segment_decoder"/>
<comp lib="9" loc="(630,260)" name="BCD_to_7_Segment_decoder"/>
<comp lib="9" loc="(690,470)" name="BCD_to_7_Segment_decoder"/>
<comp lib="9" loc="(700,600)" name="Binary_to_BCD_converter"/>
<comp lib="9" loc="(750,470)" name="BCD_to_7_Segment_decoder"/>
<comp lib="9" loc="(810,470)" name="BCD_to_7_Segment_decoder"/>
<wire from="(100,390)" to="(100,470)"/>
<wire from="(100,470)" to="(100,560)"/>
<wire from="(100,470)" to="(360,470)"/>
<wire from="(100,660)" to="(100,680)"/>
<wire from="(100,660)" to="(230,660)"/>
<wire from="(1010,540)" to="(1010,570)"/>
<wire from="(1070,540)" to="(1070,570)"/>
<wire from="(110,210)" to="(110,240)"/>
<wire from="(110,560)" to="(140,560)"/>
<wire from="(1130,540)" to="(1130,570)"/>
<wire from="(120,210)" to="(120,250)"/>
<wire from="(120,580)" to="(140,580)"/>
<wire from="(130,210)" to="(130,410)"/>
<wire from="(130,410)" to="(140,410)"/>
<wire from="(140,210)" to="(140,350)"/>
<wire from="(140,350)" to="(140,400)"/>
<wire from="(140,350)" to="(220,350)"/>
<wire from="(140,400)" to="(150,400)"/>
<wire from="(140,410)" to="(140,450)"/>
<wire from="(140,450)" to="(140,560)"/>
<wire from="(140,450)" to="(350,450)"/>
<wire from="(140,580)" to="(140,590)"/>
<wire from="(140,590)" to="(180,590)"/>
<wire from="(140,610)" to="(150,610)"/>
<wire from="(150,210)" to="(150,340)"/>
<wire from="(150,340)" to="(150,390)"/>
<wire from="(150,340)" to="(220,340)"/>
<wire from="(150,390)" to="(160,390)"/>
<wire from="(150,400)" to="(150,540)"/>
<wire from="(150,610)" to="(150,680)"/>
<wire from="(150,680)" to="(230,680)"/>
<wire from="(160,210)" to="(160,330)"/>
<wire from="(160,330)" to="(160,380)"/>
<wire from="(160,330)" to="(220,330)"/>
<wire from="(160,380)" to="(170,380)"/>
<wire from="(160,390)" to="(160,540)"/>
<wire from="(170,210)" to="(170,320)"/>
<wire from="(170,320)" to="(170,370)"/>
<wire from="(170,320)" to="(220,320)"/>
<wire from="(170,370)" to="(180,370)"/>
<wire from="(170,380)" to="(170,540)"/>
<wire from="(180,370)" to="(180,540)"/>
<wire from="(180,590)" to="(180,720)"/>
<wire from="(180,720)" to="(230,720)"/>
<wire from="(190,560)" to="(190,570)"/>
<wire from="(190,570)" to="(210,570)"/>
<wire from="(210,570)" to="(210,700)"/>
<wire from="(210,700)" to="(230,700)"/>
<wire from="(220,360)" to="(220,370)"/>
<wire from="(220,370)" to="(220,380)"/>
<wire from="(220,380)" to="(220,390)"/>
<wire from="(220,390)" to="(220,400)"/>
<wire from="(220,400)" to="(220,420)"/>
<wire from="(240,310)" to="(260,310)"/>
<wire from="(290,260)" to="(290,290)"/>
<wire from="(350,260)" to="(350,290)"/>
<wire from="(350,400)" to="(350,450)"/>
<wire from="(350,400)" to="(450,400)"/>
<wire from="(360,410)" to="(360,470)"/>
<wire from="(360,410)" to="(450,410)"/>
<wire from="(370,420)" to="(370,490)"/>
<wire from="(370,420)" to="(450,420)"/>
<wire from="(380,430)" to="(380,500)"/>
<wire from="(380,430)" to="(450,430)"/>
<wire from="(410,260)" to="(410,290)"/>
<wire from="(450,440)" to="(450,450)"/>
<wire from="(450,450)" to="(450,460)"/>
<wire from="(450,460)" to="(450,470)"/>
<wire from="(450,470)" to="(450,480)"/>
<wire from="(450,480)" to="(450,500)"/>
<wire from="(450,660)" to="(590,660)"/>
<wire from="(450,680)" to="(590,680)"/>
<wire from="(450,700)" to="(490,700)"/>
<wire from="(450,720)" to="(460,720)"/>
<wire from="(460,720)" to="(460,840)"/>
<wire from="(470,390)" to="(490,390)"/>
<wire from="(490,700)" to="(490,840)"/>
<wire from="(520,340)" to="(520,370)"/>
<wire from="(580,340)" to="(580,370)"/>
<wire from="(590,650)" to="(590,660)"/>
<wire from="(590,680)" to="(590,750)"/>
<wire from="(590,750)" to="(900,750)"/>
<wire from="(610,610)" to="(630,610)"/>
<wire from="(610,620)" to="(630,620)"/>
<wire from="(610,630)" to="(630,630)"/>
<wire from="(610,640)" to="(630,640)"/>
<wire from="(630,650)" to="(630,660)"/>
<wire from="(630,660)" to="(630,670)"/>
<wire from="(630,670)" to="(630,680)"/>
<wire from="(630,680)" to="(630,690)"/>
<wire from="(630,690)" to="(630,710)"/>
<wire from="(640,340)" to="(640,370)"/>
<wire from="(650,600)" to="(670,600)"/>
<wire from="(70,210)" to="(100,210)"/>
<wire from="(70,210)" to="(70,410)"/>
<wire from="(70,410)" to="(80,410)"/>
<wire from="(700,550)" to="(700,580)"/>
<wire from="(760,550)" to="(760,580)"/>
<wire from="(80,240)" to="(110,240)"/>
<wire from="(80,240)" to="(80,400)"/>
<wire from="(80,400)" to="(90,400)"/>
<wire from="(80,410)" to="(80,500)"/>
<wire from="(80,500)" to="(380,500)"/>
<wire from="(80,500)" to="(80,560)"/>
<wire from="(820,550)" to="(820,580)"/>
<wire from="(90,250)" to="(120,250)"/>
<wire from="(90,250)" to="(90,390)"/>
<wire from="(90,390)" to="(100,390)"/>
<wire from="(90,400)" to="(90,490)"/>
<wire from="(90,490)" to="(370,490)"/>
<wire from="(90,490)" to="(90,560)"/>
<wire from="(900,640)" to="(900,750)"/>
<wire from="(920,600)" to="(940,600)"/>
<wire from="(920,610)" to="(940,610)"/>
<wire from="(920,620)" to="(940,620)"/>
<wire from="(920,630)" to="(940,630)"/>
<wire from="(940,640)" to="(940,650)"/>
<wire from="(940,650)" to="(940,660)"/>
<wire from="(940,660)" to="(940,670)"/>
<wire from="(940,670)" to="(940,680)"/>
<wire from="(940,680)" to="(940,690)"/>
<wire from="(940,690)" to="(940,700)"/>
<wire from="(940,690)" to="(950,690)"/>
<wire from="(960,590)" to="(980,590)"/>
</circuit>
</project>