1177 lines
44 KiB
XML
1177 lines
44 KiB
XML
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
<project source="3.8.0" version="1.0">
|
|
This file is intended to be loaded by Logisim-evolution v3.8.0(https://github.com/logisim-evolution/).
|
|
|
|
<lib desc="#Wiring" name="0">
|
|
<tool name="Splitter">
|
|
<a name="appear" val="center"/>
|
|
<a name="fanout" val="8"/>
|
|
<a name="incoming" val="3"/>
|
|
</tool>
|
|
<tool name="Pin">
|
|
<a name="appearance" val="classic"/>
|
|
<a name="facing" val="west"/>
|
|
<a name="output" val="true"/>
|
|
</tool>
|
|
<tool name="Pull Resistor">
|
|
<a name="pull" val="1"/>
|
|
</tool>
|
|
<tool name="Transistor">
|
|
<a name="type" val="n"/>
|
|
<a name="width" val="8"/>
|
|
</tool>
|
|
</lib>
|
|
<lib desc="#Gates" name="1">
|
|
<tool name="AND Gate">
|
|
<a name="width" val="8"/>
|
|
</tool>
|
|
<tool name="OR Gate">
|
|
<a name="width" val="8"/>
|
|
</tool>
|
|
<tool name="NAND Gate">
|
|
<a name="width" val="8"/>
|
|
</tool>
|
|
<tool name="NOR Gate">
|
|
<a name="width" val="8"/>
|
|
</tool>
|
|
</lib>
|
|
<lib desc="#Plexers" name="2">
|
|
<tool name="Multiplexer">
|
|
<a name="select" val="3"/>
|
|
<a name="width" val="8"/>
|
|
</tool>
|
|
<tool name="Decoder">
|
|
<a name="select" val="3"/>
|
|
</tool>
|
|
</lib>
|
|
<lib desc="#Arithmetic" name="3"/>
|
|
<lib desc="#Memory" name="4"/>
|
|
<lib desc="#I/O" name="5"/>
|
|
<lib desc="#TTL" name="6"/>
|
|
<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"/>
|
|
<main name="CPU8"/>
|
|
<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">
|
|
<a name="inputs" val="8"/>
|
|
</tool>
|
|
<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="CPU8">
|
|
<a name="appearance" val="logisim_evolution"/>
|
|
<a name="circuit" val="CPU8"/>
|
|
<a name="circuitnamedboxfixedsize" val="true"/>
|
|
<a name="simulationFrequency" val="1.0"/>
|
|
<comp lib="0" loc="(1100,200)" name="Pull Resistor">
|
|
<a name="pull" val="1"/>
|
|
</comp>
|
|
<comp lib="0" loc="(1230,490)" name="Probe">
|
|
<a name="appearance" val="NewPins"/>
|
|
<a name="facing" val="south"/>
|
|
<a name="labelloc" val="north"/>
|
|
<a name="radix" val="10unsigned"/>
|
|
</comp>
|
|
<comp lib="0" loc="(1230,600)" name="Probe">
|
|
<a name="appearance" val="NewPins"/>
|
|
<a name="facing" val="south"/>
|
|
<a name="labelloc" val="north"/>
|
|
<a name="radix" val="10unsigned"/>
|
|
</comp>
|
|
<comp lib="0" loc="(1230,710)" name="Probe">
|
|
<a name="appearance" val="NewPins"/>
|
|
<a name="facing" val="south"/>
|
|
<a name="labelloc" val="north"/>
|
|
<a name="radix" val="10unsigned"/>
|
|
</comp>
|
|
<comp lib="0" loc="(1360,400)" name="Transistor">
|
|
<a name="type" val="n"/>
|
|
<a name="width" val="8"/>
|
|
</comp>
|
|
<comp lib="0" loc="(1360,510)" name="Transistor">
|
|
<a name="type" val="n"/>
|
|
<a name="width" val="8"/>
|
|
</comp>
|
|
<comp lib="0" loc="(1360,620)" name="Transistor">
|
|
<a name="type" val="n"/>
|
|
<a name="width" val="8"/>
|
|
</comp>
|
|
<comp lib="0" loc="(1360,730)" name="Transistor">
|
|
<a name="type" val="n"/>
|
|
<a name="width" val="8"/>
|
|
</comp>
|
|
<comp lib="0" loc="(1360,840)" name="Transistor">
|
|
<a name="type" val="n"/>
|
|
<a name="width" val="8"/>
|
|
</comp>
|
|
<comp lib="0" loc="(1360,950)" name="Transistor">
|
|
<a name="type" val="n"/>
|
|
<a name="width" val="8"/>
|
|
</comp>
|
|
<comp lib="0" loc="(150,230)" name="Constant"/>
|
|
<comp lib="0" loc="(1730,570)" name="Transistor">
|
|
<a name="type" val="n"/>
|
|
<a name="width" val="8"/>
|
|
</comp>
|
|
<comp lib="0" loc="(540,1010)" name="Pin">
|
|
<a name="appearance" val="classic"/>
|
|
<a name="label" val="ValueOut"/>
|
|
<a name="output" val="true"/>
|
|
<a name="width" val="8"/>
|
|
</comp>
|
|
<comp lib="0" loc="(540,950)" name="Pin">
|
|
<a name="appearance" val="classic"/>
|
|
<a name="label" val="ValueIn"/>
|
|
<a name="width" val="8"/>
|
|
</comp>
|
|
<comp lib="0" loc="(550,930)" name="Probe">
|
|
<a name="appearance" val="NewPins"/>
|
|
<a name="facing" val="south"/>
|
|
<a name="radix" val="10signed"/>
|
|
</comp>
|
|
<comp lib="0" loc="(550,990)" name="Probe">
|
|
<a name="appearance" val="NewPins"/>
|
|
<a name="facing" val="south"/>
|
|
<a name="radix" val="10signed"/>
|
|
</comp>
|
|
<comp lib="0" loc="(610,1000)" name="Pull Resistor">
|
|
<a name="pull" val="1"/>
|
|
</comp>
|
|
<comp lib="0" loc="(620,1010)" name="Transistor">
|
|
<a name="facing" val="west"/>
|
|
<a name="type" val="n"/>
|
|
<a name="width" val="8"/>
|
|
</comp>
|
|
<comp lib="0" loc="(620,190)" name="Probe">
|
|
<a name="appearance" val="NewPins"/>
|
|
<a name="facing" val="south"/>
|
|
<a name="label" val="AddressBus"/>
|
|
<a name="labelloc" val="north"/>
|
|
</comp>
|
|
<comp lib="0" loc="(630,300)" name="Splitter">
|
|
<a name="appear" val="center"/>
|
|
<a name="fanout" val="8"/>
|
|
<a name="incoming" val="8"/>
|
|
</comp>
|
|
<comp lib="0" loc="(670,270)" name="Splitter">
|
|
<a name="appear" val="center"/>
|
|
<a name="facing" val="west"/>
|
|
<a name="fanout" val="3"/>
|
|
<a name="incoming" val="3"/>
|
|
</comp>
|
|
<comp lib="0" loc="(670,300)" name="Splitter">
|
|
<a name="appear" val="center"/>
|
|
<a name="facing" val="west"/>
|
|
<a name="fanout" val="3"/>
|
|
<a name="incoming" val="3"/>
|
|
</comp>
|
|
<comp lib="0" loc="(670,330)" name="Splitter">
|
|
<a name="appear" val="center"/>
|
|
<a name="facing" val="west"/>
|
|
</comp>
|
|
<comp lib="0" loc="(790,950)" name="Transistor">
|
|
<a name="type" val="n"/>
|
|
<a name="width" val="8"/>
|
|
</comp>
|
|
<comp lib="0" loc="(890,210)" name="Transistor">
|
|
<a name="selloc" val="bl"/>
|
|
<a name="type" val="n"/>
|
|
<a name="width" val="8"/>
|
|
</comp>
|
|
<comp lib="0" loc="(90,570)" name="Pin">
|
|
<a name="appearance" val="classic"/>
|
|
<a name="label" val="Clock"/>
|
|
</comp>
|
|
<comp lib="0" loc="(90,610)" name="Pin">
|
|
<a name="appearance" val="classic"/>
|
|
<a name="label" val="Reset"/>
|
|
</comp>
|
|
<comp lib="0" loc="(900,260)" name="Probe">
|
|
<a name="appearance" val="NewPins"/>
|
|
<a name="facing" val="south"/>
|
|
<a name="label" val="SRC"/>
|
|
<a name="labelloc" val="north"/>
|
|
<a name="radix" val="10unsigned"/>
|
|
</comp>
|
|
<comp lib="0" loc="(920,190)" name="Probe">
|
|
<a name="appearance" val="NewPins"/>
|
|
<a name="facing" val="south"/>
|
|
<a name="label" val="DataBus"/>
|
|
<a name="labelloc" val="north"/>
|
|
<a name="radix" val="10unsigned"/>
|
|
</comp>
|
|
<comp lib="0" loc="(960,260)" name="Probe">
|
|
<a name="appearance" val="NewPins"/>
|
|
<a name="facing" val="south"/>
|
|
<a name="label" val="DEST"/>
|
|
<a name="labelloc" val="north"/>
|
|
<a name="radix" val="10unsigned"/>
|
|
</comp>
|
|
<comp lib="1" loc="(1090,420)" name="OR Gate">
|
|
<a name="size" val="30"/>
|
|
</comp>
|
|
<comp lib="1" loc="(1090,750)" name="OR Gate">
|
|
<a name="size" val="30"/>
|
|
</comp>
|
|
<comp lib="1" loc="(1340,360)" name="OR Gate">
|
|
<a name="facing" val="south"/>
|
|
<a name="size" val="30"/>
|
|
</comp>
|
|
<comp lib="1" loc="(160,250)" name="NOT Gate"/>
|
|
<comp lib="1" loc="(860,530)" name="AND Gate">
|
|
<a name="facing" val="west"/>
|
|
<a name="size" val="30"/>
|
|
</comp>
|
|
<comp lib="2" loc="(1400,300)" name="Decoder">
|
|
<a name="facing" val="south"/>
|
|
<a name="select" val="3"/>
|
|
</comp>
|
|
<comp lib="2" loc="(660,840)" name="Decoder">
|
|
<a name="facing" val="south"/>
|
|
<a name="select" val="3"/>
|
|
<a name="selloc" val="tr"/>
|
|
</comp>
|
|
<comp lib="2" loc="(710,840)" name="Decoder">
|
|
<a name="facing" val="south"/>
|
|
<a name="select" val="3"/>
|
|
</comp>
|
|
<comp lib="2" loc="(810,360)" name="Decoder">
|
|
<a name="enable" val="false"/>
|
|
<a name="select" val="2"/>
|
|
<a name="selloc" val="tr"/>
|
|
</comp>
|
|
<comp lib="2" loc="(990,330)" name="Decoder">
|
|
<a name="facing" val="south"/>
|
|
<a name="select" val="3"/>
|
|
</comp>
|
|
<comp lib="4" loc="(1120,370)" name="Register">
|
|
<a name="appearance" val="logisim_evolution"/>
|
|
<a name="label" val="ConstantLoading"/>
|
|
<a name="labelloc" val="east"/>
|
|
<a name="showInTab" val="true"/>
|
|
</comp>
|
|
<comp lib="4" loc="(1120,480)" name="Register">
|
|
<a name="appearance" val="logisim_evolution"/>
|
|
<a name="label" val="OperandA"/>
|
|
<a name="labelloc" val="east"/>
|
|
<a name="showInTab" val="true"/>
|
|
</comp>
|
|
<comp lib="4" loc="(1120,590)" name="Register">
|
|
<a name="appearance" val="logisim_evolution"/>
|
|
<a name="label" val="OperandB"/>
|
|
<a name="labelloc" val="east"/>
|
|
<a name="showInTab" val="true"/>
|
|
</comp>
|
|
<comp lib="4" loc="(1120,700)" name="Register">
|
|
<a name="appearance" val="logisim_evolution"/>
|
|
<a name="label" val="Result"/>
|
|
<a name="labelloc" val="east"/>
|
|
<a name="showInTab" val="true"/>
|
|
</comp>
|
|
<comp lib="4" loc="(1120,810)" name="Register">
|
|
<a name="appearance" val="logisim_evolution"/>
|
|
<a name="label" val="GeneralPurposeA"/>
|
|
<a name="labelloc" val="east"/>
|
|
<a name="showInTab" val="true"/>
|
|
</comp>
|
|
<comp lib="4" loc="(1120,920)" name="Register">
|
|
<a name="appearance" val="logisim_evolution"/>
|
|
<a name="label" val="GeneralPurposeB"/>
|
|
<a name="labelloc" val="east"/>
|
|
<a name="showInTab" val="true"/>
|
|
</comp>
|
|
<comp lib="4" loc="(160,180)" name="Counter">
|
|
<a name="appearance" val="logisim_evolution"/>
|
|
<a name="label" val="ProgramCounter"/>
|
|
</comp>
|
|
<comp lib="4" loc="(380,280)" name="ROM">
|
|
<a name="appearance" val="logisim_evolution"/>
|
|
<a name="contents">addr/data: 8 8
|
|
30 86 31 86 32 86 33 86
|
|
34 86 35 86 36 86 37 86
|
|
38 86 39 86 0 c4
|
|
</a>
|
|
<a name="label" val="Program"/>
|
|
<a name="labelvisible" val="true"/>
|
|
</comp>
|
|
<comp lib="8" loc="(1030,285)" name="Text">
|
|
<a name="text" val="Save Selector"/>
|
|
</comp>
|
|
<comp lib="8" loc="(1440,270)" name="Text">
|
|
<a name="text" val="Load Selector"/>
|
|
</comp>
|
|
<comp lib="8" loc="(175,800)" name="Text">
|
|
<a name="text" val="1: Or"/>
|
|
</comp>
|
|
<comp lib="8" loc="(180,785)" name="Text">
|
|
<a name="text" val="0: And"/>
|
|
</comp>
|
|
<comp lib="8" loc="(180,835)" name="Text">
|
|
<a name="text" val="3: Nor"/>
|
|
</comp>
|
|
<comp lib="8" loc="(180,850)" name="Text">
|
|
<a name="text" val="4: Add"/>
|
|
</comp>
|
|
<comp lib="8" loc="(185,820)" name="Text">
|
|
<a name="text" val="2: Nand"/>
|
|
</comp>
|
|
<comp lib="8" loc="(190,645)" name="Text">
|
|
<a name="text" val="Op Types:"/>
|
|
</comp>
|
|
<comp lib="8" loc="(190,765)" name="Text">
|
|
<a name="text" val="ALU Ops:"/>
|
|
</comp>
|
|
<comp lib="8" loc="(200,865)" name="Text">
|
|
<a name="text" val="5: Subtract"/>
|
|
</comp>
|
|
<comp lib="8" loc="(295,715)" name="Text">
|
|
<a name="text" val="3: Cond [Reg0] - (0:2 Comparison Op)"/>
|
|
</comp>
|
|
<comp lib="8" loc="(310,795)" name="Text">
|
|
<a name="text" val="1: = 0"/>
|
|
</comp>
|
|
<comp lib="8" loc="(310,810)" name="Text">
|
|
<a name="text" val="2: < 0"/>
|
|
</comp>
|
|
<comp lib="8" loc="(310,855)" name="Text">
|
|
<a name="text" val="5: != 0"/>
|
|
</comp>
|
|
<comp lib="8" loc="(310,870)" name="Text">
|
|
<a name="text" val="6: > 0"/>
|
|
</comp>
|
|
<comp lib="8" loc="(315,680)" name="Text">
|
|
<a name="text" val="1: ALU [Reg1, Reg2]->[Reg3] - (0:2 ALU Op)"/>
|
|
</comp>
|
|
<comp lib="8" loc="(315,825)" name="Text">
|
|
<a name="text" val="3: <= 0"/>
|
|
</comp>
|
|
<comp lib="8" loc="(315,885)" name="Text">
|
|
<a name="text" val="7: >= 0"/>
|
|
</comp>
|
|
<comp lib="8" loc="(320,665)" name="Text">
|
|
<a name="text" val="0: Load [Constant]->[Reg0] - (0:5 Constant)"/>
|
|
</comp>
|
|
<comp lib="8" loc="(320,780)" name="Text">
|
|
<a name="text" val="0: Never"/>
|
|
</comp>
|
|
<comp lib="8" loc="(325,760)" name="Text">
|
|
<a name="text" val="Cond Ops:"/>
|
|
</comp>
|
|
<comp lib="8" loc="(325,840)" name="Text">
|
|
<a name="text" val="4: Always"/>
|
|
</comp>
|
|
<comp lib="8" loc="(330,700)" name="Text">
|
|
<a name="text" val="2: Copy [RegA]->[RegB] - (3:5 Source, 0:2 Dest)"/>
|
|
</comp>
|
|
<comp lib="8" loc="(620,810)" name="Text">
|
|
<a name="text" val="6: Output"/>
|
|
</comp>
|
|
<comp lib="8" loc="(730,200)" name="Text">
|
|
<a name="text" val="Constant"/>
|
|
</comp>
|
|
<comp lib="8" loc="(730,325)" name="Text">
|
|
<a name="text" val="Op Type"/>
|
|
</comp>
|
|
<comp lib="8" loc="(745,805)" name="Text">
|
|
<a name="text" val="6: Input"/>
|
|
</comp>
|
|
<comp lib="8" loc="(765,295)" name="Text">
|
|
<a name="text" val="Argument 1 (SRC)"/>
|
|
</comp>
|
|
<comp lib="8" loc="(765,520)" name="Text">
|
|
<a name="text" val="Jump to Reg0"/>
|
|
</comp>
|
|
<comp lib="8" loc="(775,265)" name="Text">
|
|
<a name="text" val="Argument 0 (DEST)"/>
|
|
</comp>
|
|
<comp lib="8" loc="(930,255)" name="Text">
|
|
<a name="text" val="->"/>
|
|
</comp>
|
|
<comp loc="(1680,570)" name="ALU8"/>
|
|
<comp loc="(1680,790)" name="Cond8"/>
|
|
<wire from="(1000,350)" to="(1000,530)"/>
|
|
<wire from="(1000,530)" to="(1120,530)"/>
|
|
<wire from="(1010,350)" to="(1010,640)"/>
|
|
<wire from="(1010,640)" to="(1120,640)"/>
|
|
<wire from="(1020,350)" to="(1020,740)"/>
|
|
<wire from="(1020,740)" to="(1060,740)"/>
|
|
<wire from="(1030,350)" to="(1030,860)"/>
|
|
<wire from="(1030,860)" to="(1120,860)"/>
|
|
<wire from="(1040,350)" to="(1040,970)"/>
|
|
<wire from="(1040,970)" to="(1120,970)"/>
|
|
<wire from="(1090,320)" to="(1090,390)"/>
|
|
<wire from="(1090,320)" to="(1330,320)"/>
|
|
<wire from="(1090,420)" to="(1120,420)"/>
|
|
<wire from="(1090,750)" to="(1120,750)"/>
|
|
<wire from="(110,200)" to="(110,610)"/>
|
|
<wire from="(110,200)" to="(160,200)"/>
|
|
<wire from="(110,610)" to="(910,610)"/>
|
|
<wire from="(1100,1040)" to="(1360,1040)"/>
|
|
<wire from="(1100,200)" to="(1100,210)"/>
|
|
<wire from="(1100,210)" to="(1100,400)"/>
|
|
<wire from="(1100,400)" to="(1100,510)"/>
|
|
<wire from="(1100,400)" to="(1120,400)"/>
|
|
<wire from="(1100,510)" to="(1100,620)"/>
|
|
<wire from="(1100,510)" to="(1120,510)"/>
|
|
<wire from="(1100,620)" to="(1100,730)"/>
|
|
<wire from="(1100,620)" to="(1120,620)"/>
|
|
<wire from="(1100,730)" to="(1100,840)"/>
|
|
<wire from="(1100,730)" to="(1120,730)"/>
|
|
<wire from="(1100,840)" to="(1100,950)"/>
|
|
<wire from="(1100,840)" to="(1120,840)"/>
|
|
<wire from="(1100,950)" to="(1100,1040)"/>
|
|
<wire from="(1100,950)" to="(1120,950)"/>
|
|
<wire from="(1150,1010)" to="(1150,1020)"/>
|
|
<wire from="(1150,460)" to="(1150,470)"/>
|
|
<wire from="(1150,570)" to="(1150,580)"/>
|
|
<wire from="(1150,680)" to="(1150,690)"/>
|
|
<wire from="(1150,790)" to="(1150,800)"/>
|
|
<wire from="(1150,900)" to="(1150,910)"/>
|
|
<wire from="(1180,390)" to="(1180,400)"/>
|
|
<wire from="(1180,390)" to="(1320,390)"/>
|
|
<wire from="(1180,500)" to="(1180,510)"/>
|
|
<wire from="(1180,500)" to="(1230,500)"/>
|
|
<wire from="(1180,610)" to="(1180,620)"/>
|
|
<wire from="(1180,610)" to="(1230,610)"/>
|
|
<wire from="(1180,720)" to="(1180,730)"/>
|
|
<wire from="(1180,720)" to="(1230,720)"/>
|
|
<wire from="(1180,830)" to="(1180,840)"/>
|
|
<wire from="(1180,830)" to="(1320,830)"/>
|
|
<wire from="(1180,940)" to="(1180,950)"/>
|
|
<wire from="(1180,940)" to="(1320,940)"/>
|
|
<wire from="(120,210)" to="(120,250)"/>
|
|
<wire from="(120,210)" to="(160,210)"/>
|
|
<wire from="(120,250)" to="(120,530)"/>
|
|
<wire from="(120,250)" to="(130,250)"/>
|
|
<wire from="(120,530)" to="(860,530)"/>
|
|
<wire from="(1230,490)" to="(1230,500)"/>
|
|
<wire from="(1230,500)" to="(1320,500)"/>
|
|
<wire from="(1230,600)" to="(1230,610)"/>
|
|
<wire from="(1230,610)" to="(1320,610)"/>
|
|
<wire from="(1230,710)" to="(1230,720)"/>
|
|
<wire from="(1230,720)" to="(1320,720)"/>
|
|
<wire from="(130,1040)" to="(810,1040)"/>
|
|
<wire from="(130,290)" to="(130,1040)"/>
|
|
<wire from="(130,290)" to="(160,290)"/>
|
|
<wire from="(1320,390)" to="(1320,400)"/>
|
|
<wire from="(1320,500)" to="(1320,510)"/>
|
|
<wire from="(1320,510)" to="(1320,570)"/>
|
|
<wire from="(1320,570)" to="(1460,570)"/>
|
|
<wire from="(1320,590)" to="(1320,610)"/>
|
|
<wire from="(1320,590)" to="(1460,590)"/>
|
|
<wire from="(1320,610)" to="(1320,620)"/>
|
|
<wire from="(1320,720)" to="(1320,730)"/>
|
|
<wire from="(1320,730)" to="(1320,790)"/>
|
|
<wire from="(1320,790)" to="(1460,790)"/>
|
|
<wire from="(1320,830)" to="(1320,840)"/>
|
|
<wire from="(1320,940)" to="(1320,950)"/>
|
|
<wire from="(1330,320)" to="(1330,330)"/>
|
|
<wire from="(1340,360)" to="(1340,380)"/>
|
|
<wire from="(1340,490)" to="(1410,490)"/>
|
|
<wire from="(1340,600)" to="(1420,600)"/>
|
|
<wire from="(1340,710)" to="(1430,710)"/>
|
|
<wire from="(1340,820)" to="(1440,820)"/>
|
|
<wire from="(1340,930)" to="(1450,930)"/>
|
|
<wire from="(1350,320)" to="(1350,330)"/>
|
|
<wire from="(1350,320)" to="(1370,320)"/>
|
|
<wire from="(1360,1040)" to="(1740,1040)"/>
|
|
<wire from="(1360,400)" to="(1360,510)"/>
|
|
<wire from="(1360,510)" to="(1360,620)"/>
|
|
<wire from="(1360,620)" to="(1360,730)"/>
|
|
<wire from="(1360,730)" to="(1360,840)"/>
|
|
<wire from="(1360,840)" to="(1360,950)"/>
|
|
<wire from="(1360,950)" to="(1360,1040)"/>
|
|
<wire from="(1370,320)" to="(1370,330)"/>
|
|
<wire from="(1370,330)" to="(1400,330)"/>
|
|
<wire from="(1380,270)" to="(1380,610)"/>
|
|
<wire from="(1380,610)" to="(1380,810)"/>
|
|
<wire from="(1380,610)" to="(1460,610)"/>
|
|
<wire from="(1380,810)" to="(1460,810)"/>
|
|
<wire from="(140,260)" to="(140,570)"/>
|
|
<wire from="(140,260)" to="(160,260)"/>
|
|
<wire from="(140,570)" to="(920,570)"/>
|
|
<wire from="(1400,320)" to="(1400,330)"/>
|
|
<wire from="(1410,320)" to="(1410,490)"/>
|
|
<wire from="(1420,320)" to="(1420,600)"/>
|
|
<wire from="(1430,320)" to="(1430,710)"/>
|
|
<wire from="(1440,320)" to="(1440,820)"/>
|
|
<wire from="(1450,320)" to="(1450,930)"/>
|
|
<wire from="(150,230)" to="(160,230)"/>
|
|
<wire from="(1680,570)" to="(1690,570)"/>
|
|
<wire from="(1680,790)" to="(1690,790)"/>
|
|
<wire from="(1690,790)" to="(1690,1030)"/>
|
|
<wire from="(1710,370)" to="(1710,550)"/>
|
|
<wire from="(1730,570)" to="(1740,570)"/>
|
|
<wire from="(1740,570)" to="(1740,1040)"/>
|
|
<wire from="(350,290)" to="(380,290)"/>
|
|
<wire from="(540,1010)" to="(550,1010)"/>
|
|
<wire from="(540,950)" to="(550,950)"/>
|
|
<wire from="(550,1010)" to="(610,1010)"/>
|
|
<wire from="(550,930)" to="(550,950)"/>
|
|
<wire from="(550,950)" to="(750,950)"/>
|
|
<wire from="(550,990)" to="(550,1010)"/>
|
|
<wire from="(610,1000)" to="(610,1010)"/>
|
|
<wire from="(610,1010)" to="(620,1010)"/>
|
|
<wire from="(620,190)" to="(620,210)"/>
|
|
<wire from="(620,210)" to="(620,300)"/>
|
|
<wire from="(620,210)" to="(850,210)"/>
|
|
<wire from="(620,300)" to="(620,340)"/>
|
|
<wire from="(620,300)" to="(630,300)"/>
|
|
<wire from="(640,860)" to="(640,990)"/>
|
|
<wire from="(660,1010)" to="(810,1010)"/>
|
|
<wire from="(660,780)" to="(660,830)"/>
|
|
<wire from="(660,780)" to="(710,780)"/>
|
|
<wire from="(660,840)" to="(680,840)"/>
|
|
<wire from="(670,270)" to="(680,270)"/>
|
|
<wire from="(670,300)" to="(690,300)"/>
|
|
<wire from="(670,330)" to="(810,330)"/>
|
|
<wire from="(680,270)" to="(680,840)"/>
|
|
<wire from="(680,270)" to="(960,270)"/>
|
|
<wire from="(690,300)" to="(690,840)"/>
|
|
<wire from="(690,300)" to="(900,300)"/>
|
|
<wire from="(690,840)" to="(710,840)"/>
|
|
<wire from="(710,780)" to="(710,830)"/>
|
|
<wire from="(710,780)" to="(840,780)"/>
|
|
<wire from="(770,860)" to="(770,930)"/>
|
|
<wire from="(790,950)" to="(810,950)"/>
|
|
<wire from="(810,1010)" to="(810,1040)"/>
|
|
<wire from="(810,1040)" to="(1100,1040)"/>
|
|
<wire from="(810,330)" to="(810,360)"/>
|
|
<wire from="(810,950)" to="(810,1010)"/>
|
|
<wire from="(830,360)" to="(870,360)"/>
|
|
<wire from="(830,370)" to="(970,370)"/>
|
|
<wire from="(830,380)" to="(840,380)"/>
|
|
<wire from="(830,390)" to="(900,390)"/>
|
|
<wire from="(840,380)" to="(840,780)"/>
|
|
<wire from="(840,380)" to="(950,380)"/>
|
|
<wire from="(870,230)" to="(870,360)"/>
|
|
<wire from="(870,360)" to="(980,360)"/>
|
|
<wire from="(890,210)" to="(920,210)"/>
|
|
<wire from="(890,520)" to="(900,520)"/>
|
|
<wire from="(890,540)" to="(900,540)"/>
|
|
<wire from="(90,570)" to="(140,570)"/>
|
|
<wire from="(90,610)" to="(110,610)"/>
|
|
<wire from="(900,1030)" to="(1690,1030)"/>
|
|
<wire from="(900,260)" to="(900,300)"/>
|
|
<wire from="(900,300)" to="(1400,300)"/>
|
|
<wire from="(900,390)" to="(1090,390)"/>
|
|
<wire from="(900,390)" to="(900,520)"/>
|
|
<wire from="(900,540)" to="(900,1030)"/>
|
|
<wire from="(910,1020)" to="(1150,1020)"/>
|
|
<wire from="(910,470)" to="(1150,470)"/>
|
|
<wire from="(910,470)" to="(910,580)"/>
|
|
<wire from="(910,580)" to="(1150,580)"/>
|
|
<wire from="(910,580)" to="(910,610)"/>
|
|
<wire from="(910,610)" to="(910,690)"/>
|
|
<wire from="(910,690)" to="(1150,690)"/>
|
|
<wire from="(910,690)" to="(910,800)"/>
|
|
<wire from="(910,800)" to="(1150,800)"/>
|
|
<wire from="(910,800)" to="(910,910)"/>
|
|
<wire from="(910,910)" to="(1150,910)"/>
|
|
<wire from="(910,910)" to="(910,1020)"/>
|
|
<wire from="(920,190)" to="(920,210)"/>
|
|
<wire from="(920,210)" to="(1100,210)"/>
|
|
<wire from="(920,440)" to="(1120,440)"/>
|
|
<wire from="(920,440)" to="(920,550)"/>
|
|
<wire from="(920,550)" to="(1120,550)"/>
|
|
<wire from="(920,550)" to="(920,570)"/>
|
|
<wire from="(920,570)" to="(920,660)"/>
|
|
<wire from="(920,660)" to="(1120,660)"/>
|
|
<wire from="(920,660)" to="(920,770)"/>
|
|
<wire from="(920,770)" to="(1120,770)"/>
|
|
<wire from="(920,770)" to="(920,880)"/>
|
|
<wire from="(920,880)" to="(1120,880)"/>
|
|
<wire from="(920,880)" to="(920,990)"/>
|
|
<wire from="(920,990)" to="(1120,990)"/>
|
|
<wire from="(950,290)" to="(1400,290)"/>
|
|
<wire from="(950,290)" to="(950,320)"/>
|
|
<wire from="(950,320)" to="(950,380)"/>
|
|
<wire from="(950,320)" to="(990,320)"/>
|
|
<wire from="(960,260)" to="(960,270)"/>
|
|
<wire from="(960,270)" to="(1380,270)"/>
|
|
<wire from="(960,270)" to="(960,330)"/>
|
|
<wire from="(960,330)" to="(990,330)"/>
|
|
<wire from="(970,370)" to="(1710,370)"/>
|
|
<wire from="(970,370)" to="(970,760)"/>
|
|
<wire from="(970,760)" to="(1060,760)"/>
|
|
<wire from="(980,360)" to="(980,430)"/>
|
|
<wire from="(980,430)" to="(1060,430)"/>
|
|
<wire from="(990,350)" to="(990,410)"/>
|
|
<wire from="(990,410)" to="(1060,410)"/>
|
|
</circuit>
|
|
<circuit name="ALU8">
|
|
<a name="appearance" val="logisim_evolution"/>
|
|
<a name="circuit" val="ALU8"/>
|
|
<a name="circuitnamedboxfixedsize" val="true"/>
|
|
<a name="simulationFrequency" val="1.0"/>
|
|
<comp lib="0" loc="(270,100)" name="Pin">
|
|
<a name="appearance" val="classic"/>
|
|
<a name="facing" val="south"/>
|
|
<a name="label" val="Operand1"/>
|
|
<a name="width" val="8"/>
|
|
</comp>
|
|
<comp lib="0" loc="(360,100)" name="Pin">
|
|
<a name="appearance" val="classic"/>
|
|
<a name="facing" val="south"/>
|
|
<a name="label" val="Operand2"/>
|
|
<a name="width" val="8"/>
|
|
</comp>
|
|
<comp lib="0" loc="(470,750)" name="Pin">
|
|
<a name="appearance" val="classic"/>
|
|
<a name="label" val="OpCode"/>
|
|
<a name="width" val="3"/>
|
|
</comp>
|
|
<comp lib="0" loc="(550,800)" name="Pin">
|
|
<a name="appearance" val="classic"/>
|
|
<a name="facing" val="north"/>
|
|
<a name="label" val="ValueOut"/>
|
|
<a name="output" val="true"/>
|
|
<a name="width" val="8"/>
|
|
</comp>
|
|
<comp lib="1" loc="(480,150)" name="AND Gate">
|
|
<a name="width" val="8"/>
|
|
</comp>
|
|
<comp lib="1" loc="(480,230)" name="OR Gate">
|
|
<a name="width" val="8"/>
|
|
</comp>
|
|
<comp lib="1" loc="(490,310)" name="NAND Gate">
|
|
<a name="width" val="8"/>
|
|
</comp>
|
|
<comp lib="1" loc="(490,390)" name="NOR Gate">
|
|
<a name="width" val="8"/>
|
|
</comp>
|
|
<comp lib="2" loc="(550,770)" name="Multiplexer">
|
|
<a name="facing" val="south"/>
|
|
<a name="select" val="3"/>
|
|
<a name="width" val="8"/>
|
|
</comp>
|
|
<comp lib="3" loc="(470,470)" name="Adder"/>
|
|
<comp lib="3" loc="(470,540)" name="Subtractor"/>
|
|
<comp lib="8" loc="(395,670)" name="Text">
|
|
<a name="text" val="1: Or"/>
|
|
</comp>
|
|
<comp lib="8" loc="(395,700)" name="Text">
|
|
<a name="text" val="3: Nor"/>
|
|
</comp>
|
|
<comp lib="8" loc="(400,650)" name="Text">
|
|
<a name="text" val="0: And"/>
|
|
</comp>
|
|
<comp lib="8" loc="(400,715)" name="Text">
|
|
<a name="text" val="4: Add"/>
|
|
</comp>
|
|
<comp lib="8" loc="(405,685)" name="Text">
|
|
<a name="text" val="2: Nand"/>
|
|
</comp>
|
|
<comp lib="8" loc="(420,730)" name="Text">
|
|
<a name="text" val="5: Subtract"/>
|
|
</comp>
|
|
<wire from="(270,100)" to="(270,170)"/>
|
|
<wire from="(270,170)" to="(270,250)"/>
|
|
<wire from="(270,170)" to="(430,170)"/>
|
|
<wire from="(270,250)" to="(270,330)"/>
|
|
<wire from="(270,250)" to="(430,250)"/>
|
|
<wire from="(270,330)" to="(270,410)"/>
|
|
<wire from="(270,330)" to="(430,330)"/>
|
|
<wire from="(270,410)" to="(270,480)"/>
|
|
<wire from="(270,410)" to="(430,410)"/>
|
|
<wire from="(270,480)" to="(270,550)"/>
|
|
<wire from="(270,480)" to="(430,480)"/>
|
|
<wire from="(270,550)" to="(430,550)"/>
|
|
<wire from="(360,100)" to="(360,130)"/>
|
|
<wire from="(360,130)" to="(360,210)"/>
|
|
<wire from="(360,130)" to="(430,130)"/>
|
|
<wire from="(360,210)" to="(360,290)"/>
|
|
<wire from="(360,210)" to="(430,210)"/>
|
|
<wire from="(360,290)" to="(360,370)"/>
|
|
<wire from="(360,290)" to="(430,290)"/>
|
|
<wire from="(360,370)" to="(360,460)"/>
|
|
<wire from="(360,370)" to="(430,370)"/>
|
|
<wire from="(360,460)" to="(360,530)"/>
|
|
<wire from="(360,460)" to="(430,460)"/>
|
|
<wire from="(360,530)" to="(430,530)"/>
|
|
<wire from="(470,470)" to="(550,470)"/>
|
|
<wire from="(470,540)" to="(560,540)"/>
|
|
<wire from="(470,750)" to="(510,750)"/>
|
|
<wire from="(480,150)" to="(510,150)"/>
|
|
<wire from="(480,230)" to="(520,230)"/>
|
|
<wire from="(490,310)" to="(530,310)"/>
|
|
<wire from="(490,390)" to="(540,390)"/>
|
|
<wire from="(510,150)" to="(510,730)"/>
|
|
<wire from="(520,230)" to="(520,730)"/>
|
|
<wire from="(530,310)" to="(530,730)"/>
|
|
<wire from="(540,390)" to="(540,730)"/>
|
|
<wire from="(550,470)" to="(550,730)"/>
|
|
<wire from="(550,770)" to="(550,800)"/>
|
|
<wire from="(560,540)" to="(560,730)"/>
|
|
</circuit>
|
|
<circuit name="HalfAdder">
|
|
<a name="appearance" val="logisim_evolution"/>
|
|
<a name="circuit" val="HalfAdder"/>
|
|
<a name="circuitnamedboxfixedsize" val="true"/>
|
|
<a name="simulationFrequency" val="1.0"/>
|
|
<comp lib="0" loc="(190,180)" name="Pin">
|
|
<a name="appearance" val="classic"/>
|
|
<a name="label" val="Addend1"/>
|
|
</comp>
|
|
<comp lib="0" loc="(190,220)" name="Pin">
|
|
<a name="appearance" val="classic"/>
|
|
<a name="label" val="Addend2"/>
|
|
</comp>
|
|
<comp lib="0" loc="(500,220)" name="Pin">
|
|
<a name="appearance" val="classic"/>
|
|
<a name="facing" val="west"/>
|
|
<a name="label" val="ValueOut"/>
|
|
<a name="output" val="true"/>
|
|
</comp>
|
|
<comp lib="0" loc="(500,260)" name="Pin">
|
|
<a name="appearance" val="classic"/>
|
|
<a name="facing" val="west"/>
|
|
<a name="label" val="CarryOut"/>
|
|
<a name="output" val="true"/>
|
|
</comp>
|
|
<comp lib="1" loc="(350,200)" name="OR Gate"/>
|
|
<comp lib="1" loc="(350,260)" name="AND Gate"/>
|
|
<comp lib="1" loc="(410,240)" name="NOT Gate"/>
|
|
<comp lib="1" loc="(480,220)" name="AND Gate"/>
|
|
<wire from="(190,180)" to="(270,180)"/>
|
|
<wire from="(190,220)" to="(230,220)"/>
|
|
<wire from="(230,220)" to="(230,280)"/>
|
|
<wire from="(230,220)" to="(300,220)"/>
|
|
<wire from="(230,280)" to="(300,280)"/>
|
|
<wire from="(270,180)" to="(270,240)"/>
|
|
<wire from="(270,180)" to="(300,180)"/>
|
|
<wire from="(270,240)" to="(300,240)"/>
|
|
<wire from="(350,200)" to="(430,200)"/>
|
|
<wire from="(350,260)" to="(370,260)"/>
|
|
<wire from="(370,240)" to="(370,260)"/>
|
|
<wire from="(370,240)" to="(380,240)"/>
|
|
<wire from="(370,260)" to="(500,260)"/>
|
|
<wire from="(410,240)" to="(430,240)"/>
|
|
<wire from="(480,220)" to="(500,220)"/>
|
|
</circuit>
|
|
<circuit name="FullAdder">
|
|
<a name="appearance" val="logisim_evolution"/>
|
|
<a name="circuit" val="FullAdder"/>
|
|
<a name="circuitnamedboxfixedsize" val="true"/>
|
|
<a name="simulationFrequency" val="1.0"/>
|
|
<comp lib="0" loc="(200,130)" name="Pin">
|
|
<a name="appearance" val="classic"/>
|
|
<a name="label" val="Addend1"/>
|
|
</comp>
|
|
<comp lib="0" loc="(200,150)" name="Pin">
|
|
<a name="appearance" val="classic"/>
|
|
<a name="label" val="Addend2"/>
|
|
</comp>
|
|
<comp lib="0" loc="(200,200)" name="Pin">
|
|
<a name="appearance" val="classic"/>
|
|
<a name="label" val="CarryIn"/>
|
|
</comp>
|
|
<comp lib="0" loc="(810,130)" name="Pin">
|
|
<a name="appearance" val="classic"/>
|
|
<a name="facing" val="west"/>
|
|
<a name="label" val="ValueOut"/>
|
|
<a name="output" val="true"/>
|
|
</comp>
|
|
<comp lib="0" loc="(810,170)" name="Pin">
|
|
<a name="appearance" val="classic"/>
|
|
<a name="facing" val="west"/>
|
|
<a name="label" val="CarryOut"/>
|
|
<a name="output" val="true"/>
|
|
</comp>
|
|
<comp lib="1" loc="(790,170)" name="OR Gate"/>
|
|
<comp loc="(450,130)" name="HalfAdder"/>
|
|
<comp loc="(720,130)" name="HalfAdder"/>
|
|
<wire from="(200,130)" to="(230,130)"/>
|
|
<wire from="(200,150)" to="(230,150)"/>
|
|
<wire from="(200,200)" to="(480,200)"/>
|
|
<wire from="(450,130)" to="(500,130)"/>
|
|
<wire from="(450,150)" to="(460,150)"/>
|
|
<wire from="(460,150)" to="(460,190)"/>
|
|
<wire from="(460,190)" to="(740,190)"/>
|
|
<wire from="(480,150)" to="(480,200)"/>
|
|
<wire from="(480,150)" to="(500,150)"/>
|
|
<wire from="(720,130)" to="(810,130)"/>
|
|
<wire from="(720,150)" to="(740,150)"/>
|
|
<wire from="(790,170)" to="(810,170)"/>
|
|
</circuit>
|
|
<circuit name="Adder8">
|
|
<a name="appearance" val="logisim_evolution"/>
|
|
<a name="circuit" val="Adder8"/>
|
|
<a name="circuitnamedboxfixedsize" val="true"/>
|
|
<a name="simulationFrequency" val="1.0"/>
|
|
<comp lib="0" loc="(190,130)" name="Pin">
|
|
<a name="appearance" val="classic"/>
|
|
<a name="label" val="CarryIn"/>
|
|
</comp>
|
|
<comp lib="0" loc="(190,30)" name="Pin">
|
|
<a name="appearance" val="classic"/>
|
|
<a name="label" val="Addend1"/>
|
|
<a name="width" val="8"/>
|
|
</comp>
|
|
<comp lib="0" loc="(190,60)" name="Pin">
|
|
<a name="appearance" val="classic"/>
|
|
<a name="label" val="Addend2"/>
|
|
<a name="width" val="8"/>
|
|
</comp>
|
|
<comp lib="0" loc="(210,60)" name="Splitter">
|
|
<a name="facing" val="south"/>
|
|
<a name="fanout" val="8"/>
|
|
<a name="incoming" val="8"/>
|
|
</comp>
|
|
<comp lib="0" loc="(300,30)" name="Splitter">
|
|
<a name="facing" val="south"/>
|
|
<a name="fanout" val="8"/>
|
|
<a name="incoming" val="8"/>
|
|
</comp>
|
|
<comp lib="0" loc="(710,890)" name="Splitter">
|
|
<a name="facing" val="north"/>
|
|
<a name="fanout" val="8"/>
|
|
<a name="incoming" val="8"/>
|
|
</comp>
|
|
<comp lib="0" loc="(730,890)" name="Pin">
|
|
<a name="appearance" val="classic"/>
|
|
<a name="facing" val="west"/>
|
|
<a name="label" val="ValueOut"/>
|
|
<a name="output" val="true"/>
|
|
<a name="width" val="8"/>
|
|
</comp>
|
|
<comp lib="0" loc="(730,920)" name="Pin">
|
|
<a name="appearance" val="classic"/>
|
|
<a name="facing" val="west"/>
|
|
<a name="label" val="CarryOut"/>
|
|
<a name="output" val="true"/>
|
|
</comp>
|
|
<comp loc="(610,190)" name="FullAdder"/>
|
|
<comp loc="(610,290)" name="FullAdder"/>
|
|
<comp loc="(610,390)" name="FullAdder"/>
|
|
<comp loc="(610,490)" name="FullAdder"/>
|
|
<comp loc="(610,590)" name="FullAdder"/>
|
|
<comp loc="(610,690)" name="FullAdder"/>
|
|
<comp loc="(610,790)" name="FullAdder"/>
|
|
<comp loc="(610,90)" name="FullAdder"/>
|
|
<wire from="(190,130)" to="(390,130)"/>
|
|
<wire from="(190,30)" to="(300,30)"/>
|
|
<wire from="(190,60)" to="(210,60)"/>
|
|
<wire from="(220,80)" to="(220,810)"/>
|
|
<wire from="(220,810)" to="(390,810)"/>
|
|
<wire from="(230,710)" to="(390,710)"/>
|
|
<wire from="(230,80)" to="(230,710)"/>
|
|
<wire from="(240,610)" to="(390,610)"/>
|
|
<wire from="(240,80)" to="(240,610)"/>
|
|
<wire from="(250,510)" to="(390,510)"/>
|
|
<wire from="(250,80)" to="(250,510)"/>
|
|
<wire from="(260,410)" to="(390,410)"/>
|
|
<wire from="(260,80)" to="(260,410)"/>
|
|
<wire from="(270,310)" to="(390,310)"/>
|
|
<wire from="(270,80)" to="(270,310)"/>
|
|
<wire from="(280,210)" to="(390,210)"/>
|
|
<wire from="(280,80)" to="(280,210)"/>
|
|
<wire from="(290,110)" to="(390,110)"/>
|
|
<wire from="(290,80)" to="(290,110)"/>
|
|
<wire from="(310,50)" to="(310,790)"/>
|
|
<wire from="(310,790)" to="(390,790)"/>
|
|
<wire from="(320,50)" to="(320,690)"/>
|
|
<wire from="(320,690)" to="(390,690)"/>
|
|
<wire from="(330,50)" to="(330,590)"/>
|
|
<wire from="(330,590)" to="(390,590)"/>
|
|
<wire from="(340,490)" to="(390,490)"/>
|
|
<wire from="(340,50)" to="(340,490)"/>
|
|
<wire from="(350,390)" to="(390,390)"/>
|
|
<wire from="(350,50)" to="(350,390)"/>
|
|
<wire from="(360,290)" to="(390,290)"/>
|
|
<wire from="(360,50)" to="(360,290)"/>
|
|
<wire from="(370,190)" to="(390,190)"/>
|
|
<wire from="(370,50)" to="(370,190)"/>
|
|
<wire from="(380,170)" to="(380,230)"/>
|
|
<wire from="(380,170)" to="(620,170)"/>
|
|
<wire from="(380,230)" to="(390,230)"/>
|
|
<wire from="(380,270)" to="(380,330)"/>
|
|
<wire from="(380,270)" to="(620,270)"/>
|
|
<wire from="(380,330)" to="(390,330)"/>
|
|
<wire from="(380,370)" to="(380,430)"/>
|
|
<wire from="(380,370)" to="(620,370)"/>
|
|
<wire from="(380,430)" to="(390,430)"/>
|
|
<wire from="(380,470)" to="(380,530)"/>
|
|
<wire from="(380,470)" to="(620,470)"/>
|
|
<wire from="(380,50)" to="(380,90)"/>
|
|
<wire from="(380,530)" to="(390,530)"/>
|
|
<wire from="(380,570)" to="(380,630)"/>
|
|
<wire from="(380,570)" to="(620,570)"/>
|
|
<wire from="(380,630)" to="(390,630)"/>
|
|
<wire from="(380,670)" to="(380,730)"/>
|
|
<wire from="(380,670)" to="(620,670)"/>
|
|
<wire from="(380,730)" to="(390,730)"/>
|
|
<wire from="(380,770)" to="(380,830)"/>
|
|
<wire from="(380,770)" to="(620,770)"/>
|
|
<wire from="(380,830)" to="(390,830)"/>
|
|
<wire from="(380,90)" to="(390,90)"/>
|
|
<wire from="(610,110)" to="(620,110)"/>
|
|
<wire from="(610,190)" to="(690,190)"/>
|
|
<wire from="(610,210)" to="(620,210)"/>
|
|
<wire from="(610,290)" to="(680,290)"/>
|
|
<wire from="(610,310)" to="(620,310)"/>
|
|
<wire from="(610,390)" to="(670,390)"/>
|
|
<wire from="(610,410)" to="(620,410)"/>
|
|
<wire from="(610,490)" to="(660,490)"/>
|
|
<wire from="(610,510)" to="(620,510)"/>
|
|
<wire from="(610,590)" to="(650,590)"/>
|
|
<wire from="(610,610)" to="(620,610)"/>
|
|
<wire from="(610,690)" to="(640,690)"/>
|
|
<wire from="(610,710)" to="(620,710)"/>
|
|
<wire from="(610,790)" to="(630,790)"/>
|
|
<wire from="(610,810)" to="(620,810)"/>
|
|
<wire from="(610,90)" to="(700,90)"/>
|
|
<wire from="(620,110)" to="(620,170)"/>
|
|
<wire from="(620,210)" to="(620,270)"/>
|
|
<wire from="(620,310)" to="(620,370)"/>
|
|
<wire from="(620,410)" to="(620,470)"/>
|
|
<wire from="(620,510)" to="(620,570)"/>
|
|
<wire from="(620,610)" to="(620,670)"/>
|
|
<wire from="(620,710)" to="(620,770)"/>
|
|
<wire from="(620,810)" to="(620,920)"/>
|
|
<wire from="(620,920)" to="(730,920)"/>
|
|
<wire from="(630,790)" to="(630,870)"/>
|
|
<wire from="(640,690)" to="(640,870)"/>
|
|
<wire from="(650,590)" to="(650,870)"/>
|
|
<wire from="(660,490)" to="(660,870)"/>
|
|
<wire from="(670,390)" to="(670,870)"/>
|
|
<wire from="(680,290)" to="(680,870)"/>
|
|
<wire from="(690,190)" to="(690,870)"/>
|
|
<wire from="(700,90)" to="(700,870)"/>
|
|
<wire from="(710,890)" to="(730,890)"/>
|
|
</circuit>
|
|
<circuit name="Cond8">
|
|
<a name="appearance" val="logisim_evolution"/>
|
|
<a name="circuit" val="Cond8"/>
|
|
<a name="circuitnamedboxfixedsize" val="true"/>
|
|
<a name="simulationFrequency" val="1.0"/>
|
|
<comp lib="0" loc="(280,230)" name="Pin">
|
|
<a name="appearance" val="classic"/>
|
|
<a name="label" val="ValueIn"/>
|
|
<a name="width" val="8"/>
|
|
</comp>
|
|
<comp lib="0" loc="(280,400)" name="Pin">
|
|
<a name="appearance" val="classic"/>
|
|
<a name="label" val="OpCode"/>
|
|
<a name="width" val="3"/>
|
|
</comp>
|
|
<comp lib="0" loc="(300,230)" name="Splitter">
|
|
<a name="fanout" val="8"/>
|
|
<a name="incoming" val="8"/>
|
|
</comp>
|
|
<comp lib="0" loc="(520,320)" name="Constant">
|
|
<a name="facing" val="south"/>
|
|
<a name="value" val="0x0"/>
|
|
</comp>
|
|
<comp lib="0" loc="(560,320)" name="Constant">
|
|
<a name="facing" val="south"/>
|
|
</comp>
|
|
<comp lib="0" loc="(560,440)" name="Pin">
|
|
<a name="appearance" val="classic"/>
|
|
<a name="facing" val="north"/>
|
|
<a name="label" val="ValueOut"/>
|
|
<a name="output" val="true"/>
|
|
</comp>
|
|
<comp lib="1" loc="(500,280)" name="OR Gate">
|
|
<a name="facing" val="south"/>
|
|
<a name="size" val="30"/>
|
|
</comp>
|
|
<comp lib="1" loc="(570,370)" name="NOT Gate">
|
|
<a name="facing" val="south"/>
|
|
</comp>
|
|
<comp lib="1" loc="(580,330)" name="NOT Gate">
|
|
<a name="facing" val="south"/>
|
|
</comp>
|
|
<comp lib="1" loc="(590,370)" name="NOT Gate">
|
|
<a name="facing" val="south"/>
|
|
</comp>
|
|
<comp lib="2" loc="(560,420)" name="Multiplexer">
|
|
<a name="facing" val="south"/>
|
|
<a name="select" val="3"/>
|
|
</comp>
|
|
<comp lib="8" loc="(205,290)" name="Text">
|
|
<a name="text" val="1: = 0"/>
|
|
</comp>
|
|
<comp lib="8" loc="(205,305)" name="Text">
|
|
<a name="text" val="2: < 0"/>
|
|
</comp>
|
|
<comp lib="8" loc="(205,365)" name="Text">
|
|
<a name="text" val="6: > 0"/>
|
|
</comp>
|
|
<comp lib="8" loc="(210,320)" name="Text">
|
|
<a name="text" val="3: <= 0"/>
|
|
</comp>
|
|
<comp lib="8" loc="(210,350)" name="Text">
|
|
<a name="text" val="5: != 0"/>
|
|
</comp>
|
|
<comp lib="8" loc="(210,380)" name="Text">
|
|
<a name="text" val="7: >= 0"/>
|
|
</comp>
|
|
<comp lib="8" loc="(220,275)" name="Text">
|
|
<a name="text" val="0: Never"/>
|
|
</comp>
|
|
<comp lib="8" loc="(225,335)" name="Text">
|
|
<a name="text" val="4: Always"/>
|
|
</comp>
|
|
<comp loc="(510,100)" name="Zero8"/>
|
|
<wire from="(280,230)" to="(290,230)"/>
|
|
<wire from="(280,400)" to="(520,400)"/>
|
|
<wire from="(290,100)" to="(290,230)"/>
|
|
<wire from="(290,230)" to="(300,230)"/>
|
|
<wire from="(320,220)" to="(490,220)"/>
|
|
<wire from="(490,220)" to="(490,250)"/>
|
|
<wire from="(490,220)" to="(540,220)"/>
|
|
<wire from="(500,280)" to="(500,290)"/>
|
|
<wire from="(500,290)" to="(550,290)"/>
|
|
<wire from="(510,100)" to="(530,100)"/>
|
|
<wire from="(510,230)" to="(510,250)"/>
|
|
<wire from="(510,230)" to="(530,230)"/>
|
|
<wire from="(520,320)" to="(520,380)"/>
|
|
<wire from="(530,100)" to="(530,230)"/>
|
|
<wire from="(530,100)" to="(570,100)"/>
|
|
<wire from="(530,230)" to="(530,380)"/>
|
|
<wire from="(540,220)" to="(540,380)"/>
|
|
<wire from="(540,220)" to="(590,220)"/>
|
|
<wire from="(550,290)" to="(550,380)"/>
|
|
<wire from="(550,290)" to="(580,290)"/>
|
|
<wire from="(560,320)" to="(560,380)"/>
|
|
<wire from="(560,420)" to="(560,440)"/>
|
|
<wire from="(570,100)" to="(570,340)"/>
|
|
<wire from="(570,370)" to="(570,380)"/>
|
|
<wire from="(580,290)" to="(580,300)"/>
|
|
<wire from="(580,330)" to="(580,380)"/>
|
|
<wire from="(590,220)" to="(590,340)"/>
|
|
<wire from="(590,370)" to="(590,380)"/>
|
|
</circuit>
|
|
<circuit name="Zero8">
|
|
<a name="appearance" val="logisim_evolution"/>
|
|
<a name="circuit" val="Zero8"/>
|
|
<a name="circuitnamedboxfixedsize" val="true"/>
|
|
<a name="simulationFrequency" val="1.0"/>
|
|
<comp lib="0" loc="(280,210)" name="Pin">
|
|
<a name="appearance" val="classic"/>
|
|
<a name="label" val="ValueIn"/>
|
|
<a name="width" val="8"/>
|
|
</comp>
|
|
<comp lib="0" loc="(310,210)" name="Splitter">
|
|
<a name="facing" val="south"/>
|
|
<a name="fanout" val="8"/>
|
|
<a name="incoming" val="8"/>
|
|
</comp>
|
|
<comp lib="0" loc="(480,280)" name="Pin">
|
|
<a name="appearance" val="classic"/>
|
|
<a name="facing" val="west"/>
|
|
<a name="label" val="ValueOut"/>
|
|
<a name="output" val="true"/>
|
|
</comp>
|
|
<comp lib="1" loc="(460,280)" name="AND Gate">
|
|
<a name="inputs" val="8"/>
|
|
<a name="negate0" val="true"/>
|
|
<a name="negate1" val="true"/>
|
|
<a name="negate2" val="true"/>
|
|
<a name="negate3" val="true"/>
|
|
<a name="negate4" val="true"/>
|
|
<a name="negate5" val="true"/>
|
|
<a name="negate6" val="true"/>
|
|
<a name="negate7" val="true"/>
|
|
</comp>
|
|
<wire from="(280,210)" to="(310,210)"/>
|
|
<wire from="(320,230)" to="(320,320)"/>
|
|
<wire from="(320,320)" to="(400,320)"/>
|
|
<wire from="(330,230)" to="(330,310)"/>
|
|
<wire from="(330,310)" to="(400,310)"/>
|
|
<wire from="(340,230)" to="(340,300)"/>
|
|
<wire from="(340,300)" to="(400,300)"/>
|
|
<wire from="(350,230)" to="(350,290)"/>
|
|
<wire from="(350,290)" to="(400,290)"/>
|
|
<wire from="(360,230)" to="(360,270)"/>
|
|
<wire from="(360,270)" to="(400,270)"/>
|
|
<wire from="(370,230)" to="(370,260)"/>
|
|
<wire from="(370,260)" to="(400,260)"/>
|
|
<wire from="(380,230)" to="(380,250)"/>
|
|
<wire from="(380,250)" to="(400,250)"/>
|
|
<wire from="(390,230)" to="(390,240)"/>
|
|
<wire from="(390,240)" to="(400,240)"/>
|
|
<wire from="(460,280)" to="(480,280)"/>
|
|
</circuit>
|
|
<circuit name="SoC8_TTY">
|
|
<a name="appearance" val="logisim_evolution"/>
|
|
<a name="circuit" val="SoC8_TTY"/>
|
|
<a name="circuitnamedboxfixedsize" val="true"/>
|
|
<a name="simulationFrequency" val="1.0"/>
|
|
<comp lib="0" loc="(550,330)" name="Clock">
|
|
<a name="facing" val="south"/>
|
|
</comp>
|
|
<comp lib="0" loc="(790,410)" name="Splitter">
|
|
<a name="appear" val="center"/>
|
|
<a name="fanout" val="8"/>
|
|
<a name="incoming" val="8"/>
|
|
</comp>
|
|
<comp lib="0" loc="(840,410)" name="Splitter">
|
|
<a name="appear" val="center"/>
|
|
<a name="facing" val="west"/>
|
|
<a name="fanout" val="8"/>
|
|
<a name="incoming" val="7"/>
|
|
</comp>
|
|
<comp lib="0" loc="(870,440)" name="Constant">
|
|
<a name="facing" val="north"/>
|
|
</comp>
|
|
<comp lib="5" loc="(530,430)" name="Button">
|
|
<a name="label" val="Reset"/>
|
|
</comp>
|
|
<comp lib="5" loc="(860,420)" name="TTY"/>
|
|
<comp loc="(780,410)" name="CPU8"/>
|
|
<wire from="(530,430)" to="(550,430)"/>
|
|
<wire from="(550,330)" to="(550,350)"/>
|
|
<wire from="(550,350)" to="(550,410)"/>
|
|
<wire from="(550,350)" to="(850,350)"/>
|
|
<wire from="(550,410)" to="(560,410)"/>
|
|
<wire from="(550,430)" to="(550,500)"/>
|
|
<wire from="(550,430)" to="(560,430)"/>
|
|
<wire from="(550,500)" to="(880,500)"/>
|
|
<wire from="(780,410)" to="(790,410)"/>
|
|
<wire from="(810,370)" to="(820,370)"/>
|
|
<wire from="(810,380)" to="(820,380)"/>
|
|
<wire from="(810,390)" to="(820,390)"/>
|
|
<wire from="(810,400)" to="(820,400)"/>
|
|
<wire from="(810,410)" to="(820,410)"/>
|
|
<wire from="(810,420)" to="(820,420)"/>
|
|
<wire from="(810,430)" to="(820,430)"/>
|
|
<wire from="(840,410)" to="(860,410)"/>
|
|
<wire from="(850,350)" to="(850,420)"/>
|
|
<wire from="(850,420)" to="(860,420)"/>
|
|
<wire from="(870,430)" to="(870,440)"/>
|
|
<wire from="(880,430)" to="(880,500)"/>
|
|
</circuit>
|
|
</project>
|