1
Fork 0
mirror of https://github.com/Steffo99/fermi-ser-2016-aialu.git synced 2024-11-25 06:44:19 +00:00
ser-2016-aialu/aiAlu.circ

987 lines
37 KiB
Text
Raw Normal View History

2016-02-17 09:02:45 +00:00
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project source="2.7.1" version="1.0">
This file is intended to be loaded by Logisim (http://www.cburch.com/logisim/).
<lib desc="#Wiring" name="0"/>
<lib desc="#Gates" name="1"/>
2016-02-17 09:25:22 +00:00
<lib desc="#I/O" name="2"/>
<lib desc="#Base" name="3">
2016-02-17 09:02:45 +00:00
<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>
2016-02-17 09:24:37 +00:00
<main name="aiALU"/>
2016-02-17 09:02:45 +00:00
<options>
<a name="gateUndefined" val="ignore"/>
<a name="simlimit" val="1000"/>
<a name="simrand" val="0"/>
</options>
<mappings>
2016-02-17 09:25:22 +00:00
<tool lib="3" map="Button2" name="Menu Tool"/>
<tool lib="3" map="Button3" name="Menu Tool"/>
<tool lib="3" map="Ctrl Button1" name="Menu Tool"/>
2016-02-17 09:02:45 +00:00
</mappings>
<toolbar>
2016-02-17 09:25:22 +00:00
<tool lib="3" name="Poke Tool"/>
<tool lib="3" name="Edit Tool"/>
<tool lib="3" name="Text Tool">
2016-02-17 09:02:45 +00:00
<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="tristate" val="false"/>
</tool>
<tool lib="0" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="labelloc" val="east"/>
</tool>
<tool lib="1" name="NOT Gate"/>
<tool lib="1" name="AND Gate"/>
<tool lib="1" name="OR Gate"/>
</toolbar>
2016-02-17 09:24:37 +00:00
<circuit name="aiALU">
<a name="circuit" val="aiALU"/>
<a name="clabel" val=""/>
<a name="clabelup" val="east"/>
<a name="clabelfont" val="SansSerif plain 12"/>
</circuit>
<circuit name="aiArith">
<a name="circuit" val="aiArith"/>
<a name="clabel" val=""/>
<a name="clabelup" val="east"/>
<a name="clabelfont" val="SansSerif plain 12"/>
<wire from="(690,130)" to="(740,130)"/>
<wire from="(630,470)" to="(680,470)"/>
<wire from="(450,170)" to="(500,170)"/>
2016-02-25 15:14:46 +00:00
<wire from="(230,150)" to="(230,160)"/>
<wire from="(500,180)" to="(500,190)"/>
2016-02-25 15:14:46 +00:00
<wire from="(160,70)" to="(160,150)"/>
<wire from="(450,240)" to="(450,580)"/>
<wire from="(670,110)" to="(670,390)"/>
<wire from="(430,120)" to="(430,330)"/>
<wire from="(640,80)" to="(740,80)"/>
<wire from="(120,100)" to="(150,100)"/>
<wire from="(570,400)" to="(590,400)"/>
<wire from="(570,480)" to="(590,480)"/>
<wire from="(570,560)" to="(590,560)"/>
<wire from="(570,640)" to="(590,640)"/>
<wire from="(570,240)" to="(590,240)"/>
<wire from="(570,320)" to="(590,320)"/>
<wire from="(570,80)" to="(590,80)"/>
<wire from="(570,160)" to="(590,160)"/>
<wire from="(760,60)" to="(790,60)"/>
<wire from="(150,100)" to="(170,100)"/>
<wire from="(390,160)" to="(390,650)"/>
<wire from="(520,80)" to="(530,80)"/>
<wire from="(520,160)" to="(530,160)"/>
<wire from="(520,240)" to="(530,240)"/>
<wire from="(150,70)" to="(160,70)"/>
2016-02-25 15:14:46 +00:00
<wire from="(160,150)" to="(230,150)"/>
<wire from="(520,560)" to="(530,560)"/>
2016-02-25 15:14:46 +00:00
<wire from="(290,80)" to="(360,80)"/>
<wire from="(580,220)" to="(590,220)"/>
<wire from="(580,380)" to="(590,380)"/>
<wire from="(580,140)" to="(590,140)"/>
<wire from="(520,640)" to="(530,640)"/>
<wire from="(580,60)" to="(590,60)"/>
<wire from="(580,300)" to="(590,300)"/>
<wire from="(520,320)" to="(530,320)"/>
<wire from="(520,400)" to="(530,400)"/>
<wire from="(520,480)" to="(530,480)"/>
<wire from="(580,620)" to="(590,620)"/>
<wire from="(580,460)" to="(590,460)"/>
<wire from="(580,540)" to="(590,540)"/>
<wire from="(630,150)" to="(640,150)"/>
<wire from="(120,240)" to="(180,240)"/>
<wire from="(460,230)" to="(460,500)"/>
<wire from="(450,580)" to="(500,580)"/>
<wire from="(440,110)" to="(440,250)"/>
<wire from="(170,100)" to="(220,100)"/>
<wire from="(380,90)" to="(500,90)"/>
<wire from="(630,550)" to="(690,550)"/>
<wire from="(680,120)" to="(740,120)"/>
<wire from="(640,80)" to="(640,150)"/>
<wire from="(680,120)" to="(680,470)"/>
<wire from="(460,100)" to="(460,180)"/>
<wire from="(400,570)" to="(500,570)"/>
<wire from="(630,70)" to="(740,70)"/>
<wire from="(150,40)" to="(150,70)"/>
<wire from="(380,250)" to="(380,660)"/>
<wire from="(790,40)" to="(790,60)"/>
<wire from="(220,90)" to="(250,90)"/>
<wire from="(400,150)" to="(400,570)"/>
<wire from="(120,70)" to="(150,70)"/>
<wire from="(470,420)" to="(500,420)"/>
<wire from="(630,230)" to="(650,230)"/>
<wire from="(670,110)" to="(740,110)"/>
<wire from="(490,260)" to="(500,260)"/>
<wire from="(630,630)" to="(700,630)"/>
<wire from="(420,410)" to="(500,410)"/>
2016-02-25 15:14:46 +00:00
<wire from="(290,170)" to="(360,170)"/>
<wire from="(380,100)" to="(450,100)"/>
<wire from="(450,100)" to="(450,170)"/>
<wire from="(380,110)" to="(440,110)"/>
<wire from="(440,250)" to="(500,250)"/>
<wire from="(650,90)" to="(650,230)"/>
<wire from="(380,120)" to="(430,120)"/>
<wire from="(380,660)" to="(500,660)"/>
<wire from="(470,220)" to="(470,420)"/>
<wire from="(170,100)" to="(170,180)"/>
<wire from="(410,140)" to="(410,490)"/>
<wire from="(580,200)" to="(580,220)"/>
<wire from="(580,280)" to="(580,300)"/>
<wire from="(580,120)" to="(580,140)"/>
<wire from="(580,360)" to="(580,380)"/>
<wire from="(580,440)" to="(580,460)"/>
<wire from="(580,40)" to="(580,60)"/>
<wire from="(380,130)" to="(420,130)"/>
<wire from="(580,520)" to="(580,540)"/>
<wire from="(580,600)" to="(580,620)"/>
<wire from="(220,180)" to="(250,180)"/>
<wire from="(120,40)" to="(150,40)"/>
<wire from="(160,70)" to="(250,70)"/>
<wire from="(380,140)" to="(410,140)"/>
<wire from="(380,150)" to="(400,150)"/>
<wire from="(630,310)" to="(660,310)"/>
<wire from="(170,180)" to="(190,180)"/>
<wire from="(690,130)" to="(690,550)"/>
<wire from="(230,160)" to="(250,160)"/>
<wire from="(380,160)" to="(390,160)"/>
<wire from="(380,180)" to="(460,180)"/>
<wire from="(660,100)" to="(740,100)"/>
<wire from="(780,40)" to="(790,40)"/>
<wire from="(480,210)" to="(480,340)"/>
<wire from="(220,90)" to="(220,100)"/>
<wire from="(380,190)" to="(500,190)"/>
<wire from="(630,390)" to="(670,390)"/>
<wire from="(700,140)" to="(740,140)"/>
<wire from="(390,650)" to="(500,650)"/>
<wire from="(380,200)" to="(490,200)"/>
<wire from="(660,100)" to="(660,310)"/>
<wire from="(380,210)" to="(480,210)"/>
<wire from="(150,100)" to="(150,130)"/>
<wire from="(420,130)" to="(420,410)"/>
<wire from="(460,500)" to="(500,500)"/>
<wire from="(460,100)" to="(500,100)"/>
<wire from="(410,490)" to="(500,490)"/>
<wire from="(700,140)" to="(700,630)"/>
<wire from="(380,220)" to="(470,220)"/>
<wire from="(120,130)" to="(150,130)"/>
<wire from="(480,340)" to="(500,340)"/>
<wire from="(220,240)" to="(240,240)"/>
<wire from="(650,90)" to="(740,90)"/>
<wire from="(380,230)" to="(460,230)"/>
<wire from="(490,200)" to="(490,260)"/>
<wire from="(430,330)" to="(500,330)"/>
<wire from="(790,60)" to="(800,60)"/>
<wire from="(570,520)" to="(580,520)"/>
<wire from="(570,440)" to="(580,440)"/>
<wire from="(570,600)" to="(580,600)"/>
<wire from="(570,360)" to="(580,360)"/>
<wire from="(570,200)" to="(580,200)"/>
<wire from="(570,120)" to="(580,120)"/>
<wire from="(570,40)" to="(580,40)"/>
<wire from="(570,280)" to="(580,280)"/>
<wire from="(380,240)" to="(450,240)"/>
<comp lib="0" loc="(570,120)" name="Tunnel">
<a name="facing" val="east"/>
<a name="width" val="2"/>
<a name="label" val="Select"/>
</comp>
<comp lib="0" loc="(520,640)" name="Splitter">
<a name="facing" val="west"/>
</comp>
<comp lib="0" loc="(360,80)" name="Splitter">
<a name="fanout" val="8"/>
<a name="incoming" val="8"/>
<a name="appear" val="right"/>
</comp>
<comp lib="0" loc="(570,640)" name="Bit Extender">
<a name="in_width" val="2"/>
<a name="out_width" val="4"/>
</comp>
<comp lib="0" loc="(570,160)" name="Bit Extender">
<a name="in_width" val="2"/>
<a name="out_width" val="4"/>
</comp>
<comp lib="0" loc="(570,40)" name="Tunnel">
<a name="facing" val="east"/>
<a name="width" val="2"/>
<a name="label" val="Select"/>
</comp>
<comp lib="0" loc="(570,520)" name="Tunnel">
<a name="facing" val="east"/>
<a name="width" val="2"/>
<a name="label" val="Select"/>
</comp>
<comp lib="0" loc="(360,170)" name="Splitter">
<a name="fanout" val="8"/>
<a name="incoming" val="8"/>
<a name="appear" val="right"/>
</comp>
<comp lib="0" loc="(260,190)" name="Ground"/>
<comp lib="0" loc="(220,240)" name="Bit Extender">
<a name="in_width" val="1"/>
<a name="out_width" val="2"/>
</comp>
<comp lib="0" loc="(570,360)" name="Tunnel">
<a name="facing" val="east"/>
<a name="width" val="2"/>
<a name="label" val="Select"/>
</comp>
<comp lib="0" loc="(570,200)" name="Tunnel">
<a name="facing" val="east"/>
<a name="width" val="2"/>
<a name="label" val="Select"/>
</comp>
<comp lib="0" loc="(570,480)" name="Bit Extender">
<a name="in_width" val="2"/>
<a name="out_width" val="4"/>
</comp>
<comp lib="0" loc="(120,100)" name="Pin">
<a name="width" val="8"/>
<a name="tristate" val="false"/>
<a name="label" val="B"/>
</comp>
<comp lib="0" loc="(570,560)" name="Bit Extender">
<a name="in_width" val="2"/>
<a name="out_width" val="4"/>
</comp>
<comp lib="0" loc="(570,320)" name="Bit Extender">
<a name="in_width" val="2"/>
<a name="out_width" val="4"/>
</comp>
<comp lib="0" loc="(520,80)" name="Splitter">
<a name="facing" val="west"/>
</comp>
<comp loc="(270,170)" name="aiSum"/>
<comp loc="(220,180)" name="twoComplement"/>
<comp loc="(630,630)" name="MUX 4 inputs"/>
<comp lib="0" loc="(240,240)" name="Tunnel">
<a name="width" val="2"/>
<a name="label" val="Select"/>
</comp>
<comp loc="(630,70)" name="MUX 4 inputs"/>
<comp lib="0" loc="(520,160)" name="Splitter">
<a name="facing" val="west"/>
</comp>
<comp lib="0" loc="(800,60)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="8"/>
<a name="labelloc" val="east"/>
</comp>
<comp lib="0" loc="(520,560)" name="Splitter">
<a name="facing" val="west"/>
</comp>
<comp lib="0" loc="(120,240)" name="Pin">
<a name="tristate" val="false"/>
<a name="label" val="Select"/>
</comp>
<comp loc="(630,390)" name="MUX 4 inputs"/>
<comp loc="(630,470)" name="MUX 4 inputs"/>
<comp lib="0" loc="(760,60)" name="Splitter">
<a name="facing" val="west"/>
<a name="fanout" val="8"/>
<a name="incoming" val="8"/>
</comp>
<comp lib="0" loc="(570,240)" name="Bit Extender">
<a name="in_width" val="2"/>
<a name="out_width" val="4"/>
</comp>
<comp loc="(630,310)" name="MUX 4 inputs"/>
<comp lib="0" loc="(570,280)" name="Tunnel">
<a name="facing" val="east"/>
<a name="width" val="2"/>
<a name="label" val="Select"/>
</comp>
<comp loc="(630,150)" name="MUX 4 inputs"/>
2016-02-25 15:14:46 +00:00
<comp lib="3" loc="(269,55)" name="Text">
<a name="text" val="A + B"/>
</comp>
<comp lib="0" loc="(120,130)" name="Probe">
<a name="radix" val="10signed"/>
</comp>
2016-02-25 15:14:46 +00:00
<comp loc="(270,80)" name="aiSum"/>
<comp lib="3" loc="(269,144)" name="Text">
<a name="text" val="A - B"/>
</comp>
<comp lib="0" loc="(570,440)" name="Tunnel">
<a name="facing" val="east"/>
<a name="width" val="2"/>
<a name="label" val="Select"/>
</comp>
<comp lib="0" loc="(570,80)" name="Bit Extender">
<a name="in_width" val="2"/>
<a name="out_width" val="4"/>
</comp>
<comp lib="0" loc="(520,400)" name="Splitter">
<a name="facing" val="west"/>
</comp>
<comp lib="0" loc="(520,480)" name="Splitter">
<a name="facing" val="west"/>
</comp>
<comp lib="0" loc="(570,400)" name="Bit Extender">
<a name="in_width" val="2"/>
<a name="out_width" val="4"/>
2016-02-25 15:14:46 +00:00
</comp>
<comp lib="0" loc="(260,100)" name="Ground"/>
<comp lib="0" loc="(520,320)" name="Splitter">
<a name="facing" val="west"/>
</comp>
<comp loc="(630,230)" name="MUX 4 inputs"/>
<comp lib="0" loc="(120,40)" name="Probe">
<a name="radix" val="10signed"/>
</comp>
<comp loc="(630,550)" name="MUX 4 inputs"/>
<comp lib="0" loc="(120,70)" name="Pin">
2016-02-25 15:14:46 +00:00
<a name="width" val="8"/>
<a name="tristate" val="false"/>
<a name="label" val="A"/>
</comp>
<comp lib="0" loc="(570,600)" name="Tunnel">
<a name="facing" val="east"/>
<a name="width" val="2"/>
<a name="label" val="Select"/>
</comp>
<comp lib="0" loc="(520,240)" name="Splitter">
<a name="facing" val="west"/>
</comp>
<comp lib="0" loc="(780,40)" name="Probe">
<a name="radix" val="10signed"/>
2016-02-25 15:14:46 +00:00
</comp>
2016-02-17 09:24:37 +00:00
</circuit>
<circuit name="aiLogic">
<a name="circuit" val="aiLogic"/>
2016-02-17 09:02:45 +00:00
<a name="clabel" val=""/>
<a name="clabelup" val="east"/>
<a name="clabelfont" val="SansSerif plain 12"/>
</circuit>
2016-02-17 09:32:54 +00:00
<circuit name="MUX 4 inputs">
<a name="circuit" val="MUX 4 inputs"/>
<a name="clabel" val=""/>
<a name="clabelup" val="east"/>
<a name="clabelfont" val="SansSerif plain 12"/>
2016-02-17 09:40:31 +00:00
<appear>
<path d="M65,54 Q70,67 74,57" fill="none" stroke="#808080" stroke-width="2"/>
<polygon fill="none" points="50,50 90,60 90,80 50,90" stroke="#000000" stroke-width="2"/>
<circ-port height="8" pin="50,30" width="8" x="46" y="56"/>
<circ-port height="8" pin="50,70" width="8" x="46" y="76"/>
<circ-port height="10" pin="430,130" width="10" x="85" y="65"/>
<circ-anchor facing="east" height="6" width="6" x="87" y="67"/>
</appear>
2016-02-17 09:32:54 +00:00
<wire from="(70,200)" to="(260,200)"/>
<wire from="(70,80)" to="(260,80)"/>
<wire from="(50,30)" to="(170,30)"/>
<wire from="(210,50)" to="(210,60)"/>
<wire from="(290,70)" to="(340,70)"/>
<wire from="(290,190)" to="(340,190)"/>
<wire from="(180,150)" to="(230,150)"/>
<wire from="(180,190)" to="(230,190)"/>
<wire from="(210,60)" to="(260,60)"/>
<wire from="(80,160)" to="(260,160)"/>
<wire from="(210,140)" to="(260,140)"/>
<wire from="(330,110)" to="(330,120)"/>
<wire from="(330,140)" to="(330,150)"/>
<wire from="(180,50)" to="(180,70)"/>
<wire from="(90,120)" to="(260,120)"/>
<wire from="(70,110)" to="(70,200)"/>
<wire from="(290,110)" to="(330,110)"/>
<wire from="(290,150)" to="(330,150)"/>
<wire from="(90,90)" to="(90,120)"/>
<wire from="(400,130)" to="(430,130)"/>
<wire from="(330,120)" to="(350,120)"/>
<wire from="(330,140)" to="(350,140)"/>
<wire from="(180,70)" to="(180,110)"/>
<wire from="(180,110)" to="(180,150)"/>
<wire from="(180,150)" to="(180,190)"/>
<wire from="(210,60)" to="(210,100)"/>
<wire from="(210,100)" to="(210,140)"/>
<wire from="(210,140)" to="(210,180)"/>
<wire from="(340,70)" to="(340,110)"/>
<wire from="(340,150)" to="(340,190)"/>
<wire from="(70,90)" to="(90,90)"/>
<wire from="(190,50)" to="(210,50)"/>
<wire from="(210,100)" to="(230,100)"/>
<wire from="(210,180)" to="(230,180)"/>
<wire from="(180,70)" to="(260,70)"/>
<wire from="(180,110)" to="(260,110)"/>
<wire from="(340,110)" to="(350,110)"/>
<wire from="(340,150)" to="(350,150)"/>
<wire from="(250,150)" to="(260,150)"/>
<wire from="(250,190)" to="(260,190)"/>
<wire from="(250,100)" to="(260,100)"/>
<wire from="(250,180)" to="(260,180)"/>
<wire from="(70,100)" to="(80,100)"/>
<wire from="(80,100)" to="(80,160)"/>
<comp lib="0" loc="(430,130)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="label" val="Output"/>
<a name="labelloc" val="east"/>
</comp>
<comp lib="1" loc="(290,110)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="3"/>
</comp>
<comp lib="1" loc="(400,130)" name="OR Gate">
<a name="inputs" val="4"/>
</comp>
<comp lib="1" loc="(250,190)" name="NOT Gate">
<a name="size" val="20"/>
2016-02-17 09:32:54 +00:00
</comp>
<comp lib="1" loc="(290,150)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="3"/>
2016-02-17 09:32:54 +00:00
</comp>
<comp lib="1" loc="(290,70)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="3"/>
</comp>
<comp lib="0" loc="(50,70)" name="Pin">
<a name="width" val="4"/>
<a name="tristate" val="false"/>
<a name="label" val="Data"/>
<a name="labelloc" val="north"/>
</comp>
<comp lib="1" loc="(250,180)" name="NOT Gate">
<a name="size" val="20"/>
2016-02-17 09:32:54 +00:00
</comp>
<comp lib="1" loc="(250,150)" name="NOT Gate">
<a name="size" val="20"/>
2016-02-17 09:32:54 +00:00
</comp>
<comp lib="0" loc="(170,30)" name="Splitter">
<a name="facing" val="south"/>
</comp>
<comp lib="1" loc="(250,100)" name="NOT Gate">
<a name="size" val="20"/>
</comp>
<comp lib="1" loc="(290,190)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="3"/>
2016-02-17 09:32:54 +00:00
</comp>
<comp lib="0" loc="(50,30)" name="Pin">
<a name="width" val="2"/>
<a name="tristate" val="false"/>
<a name="label" val="Select"/>
<a name="labelloc" val="north"/>
</comp>
2016-02-17 09:32:54 +00:00
<comp lib="0" loc="(50,70)" name="Splitter">
<a name="fanout" val="4"/>
<a name="incoming" val="4"/>
<a name="appear" val="right"/>
<a name="bit0" val="3"/>
<a name="bit1" val="2"/>
<a name="bit2" val="1"/>
<a name="bit3" val="0"/>
</comp>
</circuit>
2016-02-17 09:37:44 +00:00
<circuit name="fullAdder">
<a name="circuit" val="fullAdder"/>
<a name="clabel" val=""/>
<a name="clabelup" val="east"/>
<a name="clabelfont" val="SansSerif plain 12"/>
2016-02-17 09:40:31 +00:00
<appear>
<path d="M61,56 Q65,66 69,56" fill="none" stroke="#808080" stroke-width="2"/>
<rect fill="none" height="30" stroke="#000000" stroke-width="2" width="30" x="50" y="55"/>
<polygon fill="#c9c9c9" points="62,62 62,68 56,68 56,74 62,74 62,80 68,80 68,74 74,74 74,68 68,68 68,62" stroke="none"/>
<circ-port height="8" pin="70,60" width="8" x="46" y="56"/>
<circ-port height="8" pin="70,100" width="8" x="46" y="66"/>
<circ-port height="8" pin="70,140" width="8" x="46" y="76"/>
<circ-port height="10" pin="430,80" width="10" x="75" y="55"/>
<circ-port height="10" pin="430,270" width="10" x="75" y="75"/>
<circ-anchor facing="east" height="6" width="6" x="77" y="57"/>
</appear>
2016-02-17 09:37:44 +00:00
<wire from="(80,60)" to="(80,190)"/>
<wire from="(90,100)" to="(90,230)"/>
<wire from="(80,190)" to="(140,190)"/>
<wire from="(190,210)" to="(240,210)"/>
<wire from="(190,330)" to="(240,330)"/>
<wire from="(90,230)" to="(140,230)"/>
<wire from="(130,140)" to="(130,350)"/>
<wire from="(220,60)" to="(220,80)"/>
<wire from="(100,100)" to="(100,250)"/>
<wire from="(320,270)" to="(430,270)"/>
<wire from="(110,140)" to="(110,290)"/>
<wire from="(100,250)" to="(140,250)"/>
<wire from="(70,140)" to="(110,140)"/>
<wire from="(80,60)" to="(120,60)"/>
<wire from="(190,80)" to="(220,80)"/>
<wire from="(210,100)" to="(240,100)"/>
<wire from="(240,250)" to="(270,250)"/>
<wire from="(240,290)" to="(270,290)"/>
<wire from="(100,100)" to="(130,100)"/>
<wire from="(110,290)" to="(140,290)"/>
<wire from="(210,100)" to="(210,140)"/>
<wire from="(240,210)" to="(240,250)"/>
<wire from="(240,290)" to="(240,330)"/>
<wire from="(70,100)" to="(90,100)"/>
<wire from="(120,310)" to="(140,310)"/>
<wire from="(110,140)" to="(130,140)"/>
<wire from="(220,60)" to="(240,60)"/>
<wire from="(130,140)" to="(210,140)"/>
<wire from="(190,270)" to="(270,270)"/>
<wire from="(130,350)" to="(140,350)"/>
<wire from="(120,60)" to="(130,60)"/>
<wire from="(70,60)" to="(80,60)"/>
<wire from="(90,100)" to="(100,100)"/>
<wire from="(300,80)" to="(430,80)"/>
<wire from="(120,60)" to="(120,310)"/>
<comp lib="1" loc="(190,270)" name="AND Gate">
<a name="inputs" val="2"/>
</comp>
<comp lib="1" loc="(190,210)" name="AND Gate">
<a name="inputs" val="2"/>
2016-02-17 09:37:44 +00:00
</comp>
<comp lib="0" loc="(430,80)" name="Pin">
2016-02-17 09:37:44 +00:00
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="label" val="Output"/>
2016-02-17 09:37:44 +00:00
<a name="labelloc" val="east"/>
</comp>
<comp lib="1" loc="(190,80)" name="XOR Gate">
<a name="inputs" val="2"/>
</comp>
<comp lib="1" loc="(300,80)" name="XOR Gate">
<a name="inputs" val="2"/>
</comp>
<comp lib="0" loc="(430,270)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="label" val="Carry Out"/>
<a name="labelloc" val="east"/>
</comp>
<comp lib="0" loc="(70,100)" name="Pin">
<a name="tristate" val="false"/>
<a name="label" val="B"/>
</comp>
<comp lib="1" loc="(190,330)" name="AND Gate">
2016-02-17 09:37:44 +00:00
<a name="inputs" val="2"/>
</comp>
<comp lib="1" loc="(320,270)" name="OR Gate">
<a name="inputs" val="3"/>
</comp>
<comp lib="0" loc="(70,140)" name="Pin">
<a name="tristate" val="false"/>
<a name="label" val="Carry In"/>
</comp>
<comp lib="0" loc="(70,60)" name="Pin">
<a name="tristate" val="false"/>
<a name="label" val="A"/>
</comp>
2016-02-17 09:37:44 +00:00
</circuit>
2016-02-17 09:49:26 +00:00
<circuit name="aiSum">
<a name="circuit" val="aiSum"/>
<a name="clabel" val=""/>
<a name="clabelup" val="east"/>
<a name="clabelfont" val="SansSerif plain 12"/>
<appear>
<path d="M66,50 Q70,60 74,50" fill="none" stroke="#808080" stroke-width="2"/>
<rect fill="none" height="40" stroke="#000000" stroke-width="2" width="40" x="50" y="50"/>
<polygon fill="#c9c9c9" points="67,61 67,67 61,67 61,73 67,73 67,79 73,79 73,73 79,73 79,67 73,67 73,61" stroke="none"/>
<text font-family="SansSerif" font-size="12" text-anchor="middle" x="70" y="74">8</text>
2016-02-25 15:09:23 +00:00
<circ-port height="8" pin="140,40" width="8" x="56" y="86"/>
<circ-port height="8" pin="140,70" width="8" x="46" y="56"/>
<circ-port height="8" pin="140,100" width="8" x="46" y="76"/>
<circ-port height="10" pin="670,70" width="10" x="85" y="65"/>
<circ-port height="10" pin="670,100" width="10" x="75" y="85"/>
<circ-anchor facing="east" height="6" width="6" x="67" y="67"/>
</appear>
2016-02-17 09:49:26 +00:00
<wire from="(260,90)" to="(510,90)"/>
<wire from="(480,200)" to="(480,210)"/>
<wire from="(590,120)" to="(630,120)"/>
<wire from="(660,100)" to="(660,380)"/>
2016-02-17 09:49:26 +00:00
<wire from="(260,90)" to="(260,170)"/>
<wire from="(210,360)" to="(510,360)"/>
2016-02-17 09:49:26 +00:00
<wire from="(140,70)" to="(180,70)"/>
<wire from="(620,150)" to="(620,360)"/>
2016-02-17 09:49:26 +00:00
<wire from="(250,90)" to="(250,120)"/>
<wire from="(440,230)" to="(440,330)"/>
<wire from="(540,160)" to="(570,160)"/>
2016-02-17 09:49:26 +00:00
<wire from="(490,200)" to="(510,200)"/>
<wire from="(230,240)" to="(510,240)"/>
<wire from="(500,220)" to="(510,220)"/>
<wire from="(250,130)" to="(250,180)"/>
<wire from="(500,140)" to="(510,140)"/>
<wire from="(500,180)" to="(510,180)"/>
<wire from="(500,260)" to="(510,260)"/>
<wire from="(500,300)" to="(510,300)"/>
<wire from="(500,340)" to="(510,340)"/>
<wire from="(500,380)" to="(510,380)"/>
<wire from="(540,360)" to="(620,360)"/>
2016-02-17 09:49:26 +00:00
<wire from="(200,190)" to="(270,190)"/>
<wire from="(140,40)" to="(270,40)"/>
<wire from="(660,100)" to="(670,100)"/>
2016-02-17 09:49:26 +00:00
<wire from="(540,100)" to="(550,100)"/>
<wire from="(540,140)" to="(550,140)"/>
<wire from="(540,180)" to="(550,180)"/>
<wire from="(540,220)" to="(550,220)"/>
<wire from="(540,260)" to="(550,260)"/>
<wire from="(540,300)" to="(550,300)"/>
<wire from="(540,340)" to="(550,340)"/>
<wire from="(250,120)" to="(510,120)"/>
<wire from="(450,290)" to="(510,290)"/>
<wire from="(580,110)" to="(630,110)"/>
2016-02-17 09:49:26 +00:00
<wire from="(500,110)" to="(550,110)"/>
<wire from="(500,150)" to="(550,150)"/>
<wire from="(500,190)" to="(550,190)"/>
<wire from="(500,230)" to="(550,230)"/>
<wire from="(500,270)" to="(550,270)"/>
<wire from="(500,310)" to="(550,310)"/>
<wire from="(500,350)" to="(550,350)"/>
<wire from="(200,90)" to="(250,90)"/>
<wire from="(540,200)" to="(580,200)"/>
<wire from="(210,150)" to="(210,360)"/>
2016-02-17 09:49:26 +00:00
<wire from="(220,150)" to="(460,150)"/>
<wire from="(560,90)" to="(560,120)"/>
2016-02-17 09:49:26 +00:00
<wire from="(500,110)" to="(500,140)"/>
<wire from="(500,150)" to="(500,180)"/>
<wire from="(500,190)" to="(500,220)"/>
<wire from="(500,230)" to="(500,260)"/>
<wire from="(500,270)" to="(500,300)"/>
<wire from="(500,310)" to="(500,340)"/>
<wire from="(500,350)" to="(500,380)"/>
<wire from="(200,140)" to="(430,140)"/>
<wire from="(200,100)" to="(240,100)"/>
<wire from="(470,250)" to="(510,250)"/>
<wire from="(540,80)" to="(630,80)"/>
<wire from="(430,140)" to="(430,320)"/>
<wire from="(570,100)" to="(570,160)"/>
<wire from="(270,40)" to="(270,100)"/>
<wire from="(170,100)" to="(170,160)"/>
<wire from="(250,130)" to="(510,130)"/>
<wire from="(620,150)" to="(630,150)"/>
<wire from="(450,220)" to="(450,290)"/>
<wire from="(540,380)" to="(660,380)"/>
<wire from="(200,240)" to="(200,370)"/>
<wire from="(540,240)" to="(590,240)"/>
<wire from="(200,170)" to="(260,170)"/>
<wire from="(200,80)" to="(510,80)"/>
<wire from="(460,280)" to="(510,280)"/>
<wire from="(570,100)" to="(630,100)"/>
<wire from="(200,180)" to="(250,180)"/>
<wire from="(270,170)" to="(270,190)"/>
<wire from="(580,110)" to="(580,200)"/>
<wire from="(270,170)" to="(510,170)"/>
<wire from="(140,100)" to="(170,100)"/>
<wire from="(200,120)" to="(230,120)"/>
<wire from="(610,140)" to="(630,140)"/>
<wire from="(470,210)" to="(470,250)"/>
<wire from="(200,130)" to="(220,130)"/>
<wire from="(590,120)" to="(590,240)"/>
<wire from="(240,160)" to="(510,160)"/>
<wire from="(560,90)" to="(630,90)"/>
<wire from="(230,120)" to="(230,240)"/>
<wire from="(440,330)" to="(510,330)"/>
<wire from="(240,100)" to="(240,160)"/>
<wire from="(550,140)" to="(550,150)"/>
<wire from="(550,180)" to="(550,190)"/>
<wire from="(550,100)" to="(550,110)"/>
<wire from="(550,220)" to="(550,230)"/>
<wire from="(550,260)" to="(550,270)"/>
<wire from="(550,300)" to="(550,310)"/>
<wire from="(550,340)" to="(550,350)"/>
<wire from="(460,150)" to="(460,280)"/>
<wire from="(200,220)" to="(450,220)"/>
<wire from="(200,370)" to="(510,370)"/>
<wire from="(540,280)" to="(600,280)"/>
<wire from="(200,230)" to="(440,230)"/>
<wire from="(270,100)" to="(510,100)"/>
<wire from="(220,130)" to="(220,150)"/>
2016-02-17 09:49:26 +00:00
<wire from="(200,110)" to="(490,110)"/>
<wire from="(490,110)" to="(490,200)"/>
<wire from="(600,130)" to="(600,280)"/>
<wire from="(540,120)" to="(560,120)"/>
2016-02-17 09:49:26 +00:00
<wire from="(480,210)" to="(510,210)"/>
<wire from="(650,70)" to="(670,70)"/>
2016-02-17 09:49:26 +00:00
<wire from="(200,200)" to="(480,200)"/>
<wire from="(600,130)" to="(630,130)"/>
2016-02-17 09:49:26 +00:00
<wire from="(200,210)" to="(470,210)"/>
<wire from="(540,320)" to="(610,320)"/>
2016-02-17 09:49:26 +00:00
<wire from="(170,160)" to="(180,160)"/>
<wire from="(200,150)" to="(210,150)"/>
2016-02-17 09:49:26 +00:00
<wire from="(430,320)" to="(510,320)"/>
<wire from="(610,140)" to="(610,320)"/>
<comp loc="(540,240)" name="fullAdder"/>
<comp loc="(540,280)" name="fullAdder"/>
<comp lib="0" loc="(140,70)" name="Pin">
<a name="width" val="8"/>
<a name="tristate" val="false"/>
<a name="label" val="A"/>
</comp>
<comp loc="(540,120)" name="fullAdder"/>
<comp lib="0" loc="(180,70)" name="Splitter">
<a name="fanout" val="8"/>
<a name="incoming" val="8"/>
<a name="appear" val="right"/>
</comp>
<comp lib="0" loc="(140,100)" name="Pin">
<a name="width" val="8"/>
<a name="tristate" val="false"/>
<a name="label" val="B"/>
</comp>
<comp loc="(540,360)" name="fullAdder"/>
<comp loc="(540,160)" name="fullAdder"/>
<comp lib="0" loc="(650,70)" name="Splitter">
<a name="facing" val="west"/>
<a name="fanout" val="8"/>
<a name="incoming" val="8"/>
</comp>
<comp lib="0" loc="(140,40)" name="Pin">
<a name="tristate" val="false"/>
<a name="label" val="Carry In"/>
</comp>
<comp lib="0" loc="(670,100)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="label" val="Carry Out"/>
<a name="labelloc" val="east"/>
2016-02-17 09:49:26 +00:00
</comp>
<comp lib="0" loc="(670,70)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="8"/>
<a name="label" val="Sum"/>
<a name="labelloc" val="east"/>
</comp>
2016-02-17 09:49:26 +00:00
<comp lib="0" loc="(180,160)" name="Splitter">
<a name="fanout" val="8"/>
<a name="incoming" val="8"/>
<a name="appear" val="right"/>
</comp>
<comp loc="(540,80)" name="fullAdder"/>
<comp loc="(540,200)" name="fullAdder"/>
<comp loc="(540,320)" name="fullAdder"/>
</circuit>
<circuit name="AND">
<a name="circuit" val="AND"/>
<a name="clabel" val=""/>
<a name="clabelup" val="east"/>
<a name="clabelfont" val="SansSerif plain 12"/>
<wire from="(120,60)" to="(180,60)"/>
<wire from="(120,120)" to="(180,120)"/>
<wire from="(250,90)" to="(310,90)"/>
<wire from="(180,110)" to="(180,120)"/>
<wire from="(180,60)" to="(180,70)"/>
<wire from="(180,110)" to="(200,110)"/>
<wire from="(180,70)" to="(200,70)"/>
<comp lib="0" loc="(120,120)" name="Pin">
<a name="width" val="8"/>
<a name="tristate" val="false"/>
</comp>
<comp lib="1" loc="(250,90)" name="AND Gate">
<a name="width" val="8"/>
<a name="inputs" val="2"/>
</comp>
<comp lib="0" loc="(310,90)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="8"/>
<a name="labelloc" val="east"/>
</comp>
<comp lib="0" loc="(120,60)" name="Pin">
<a name="width" val="8"/>
<a name="tristate" val="false"/>
</comp>
</circuit>
<circuit name="OR">
<a name="circuit" val="OR"/>
<a name="clabel" val=""/>
<a name="clabelup" val="east"/>
<a name="clabelfont" val="SansSerif plain 12"/>
<wire from="(300,120)" to="(360,120)"/>
<wire from="(220,100)" to="(250,100)"/>
<wire from="(220,140)" to="(250,140)"/>
<wire from="(220,90)" to="(220,100)"/>
<wire from="(220,140)" to="(220,150)"/>
<wire from="(170,90)" to="(220,90)"/>
<wire from="(170,150)" to="(220,150)"/>
<comp lib="1" loc="(300,120)" name="OR Gate">
<a name="width" val="8"/>
<a name="inputs" val="2"/>
</comp>
<comp lib="0" loc="(170,90)" name="Pin">
<a name="width" val="8"/>
<a name="tristate" val="false"/>
</comp>
<comp lib="0" loc="(170,150)" name="Pin">
<a name="width" val="8"/>
<a name="tristate" val="false"/>
</comp>
<comp lib="0" loc="(360,120)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="8"/>
<a name="labelloc" val="east"/>
</comp>
</circuit>
<circuit name="NOT A">
<a name="circuit" val="NOT A"/>
<a name="clabel" val=""/>
<a name="clabelup" val="east"/>
<a name="clabelfont" val="SansSerif plain 12"/>
<wire from="(210,80)" to="(240,80)"/>
<wire from="(120,80)" to="(180,80)"/>
<comp lib="0" loc="(240,80)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="8"/>
<a name="labelloc" val="east"/>
</comp>
<comp lib="0" loc="(120,80)" name="Pin">
<a name="width" val="8"/>
<a name="tristate" val="false"/>
</comp>
<comp lib="1" loc="(210,80)" name="NOT Gate">
<a name="width" val="8"/>
</comp>
</circuit>
<circuit name="NOT B">
<a name="circuit" val="NOT B"/>
<a name="clabel" val=""/>
<a name="clabelup" val="east"/>
<a name="clabelfont" val="SansSerif plain 12"/>
<wire from="(120,90)" to="(190,90)"/>
<wire from="(220,90)" to="(320,90)"/>
<comp lib="0" loc="(120,90)" name="Pin">
<a name="width" val="8"/>
<a name="tristate" val="false"/>
</comp>
<comp lib="0" loc="(320,90)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="8"/>
<a name="labelloc" val="east"/>
</comp>
<comp lib="1" loc="(220,90)" name="NOT Gate">
<a name="width" val="8"/>
</comp>
</circuit>
<circuit name="XOR">
<a name="circuit" val="XOR"/>
<a name="clabel" val=""/>
<a name="clabelup" val="east"/>
<a name="clabelfont" val="SansSerif plain 12"/>
<wire from="(160,90)" to="(190,90)"/>
<wire from="(160,130)" to="(190,130)"/>
<wire from="(250,110)" to="(310,110)"/>
<wire from="(160,80)" to="(160,90)"/>
<wire from="(160,130)" to="(160,140)"/>
<wire from="(110,80)" to="(160,80)"/>
<wire from="(110,140)" to="(160,140)"/>
<comp lib="0" loc="(110,140)" name="Pin">
<a name="width" val="8"/>
<a name="tristate" val="false"/>
</comp>
<comp lib="1" loc="(250,110)" name="XOR Gate">
<a name="width" val="8"/>
<a name="inputs" val="2"/>
</comp>
<comp lib="0" loc="(110,80)" name="Pin">
<a name="width" val="8"/>
<a name="tristate" val="false"/>
</comp>
<comp lib="0" loc="(310,110)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="8"/>
<a name="labelloc" val="east"/>
</comp>
2016-02-17 09:49:26 +00:00
</circuit>
2016-02-25 15:09:23 +00:00
<circuit name="twoComplement">
<a name="circuit" val="twoComplement"/>
<a name="clabel" val=""/>
<a name="clabelup" val="east"/>
<a name="clabelfont" val="SansSerif plain 12"/>
<appear>
<path d="M61,56 Q65,66 69,56" fill="none" stroke="#808080" stroke-width="2"/>
<rect fill="none" height="30" stroke="#000000" stroke-width="2" width="30" x="50" y="55"/>
<polyline fill="#c9c9c9" points="55,67 75,67 75,73 55,73" stroke="none"/>
<text font-family="SansSerif" font-size="12" text-anchor="middle" x="65" y="74">Inv</text>
<circ-port height="8" pin="140,60" width="8" x="46" y="66"/>
<circ-port height="10" pin="400,70" width="10" x="75" y="65"/>
<circ-anchor facing="east" height="6" width="6" x="77" y="67"/>
</appear>
<wire from="(180,70)" to="(210,70)"/>
<wire from="(180,80)" to="(210,80)"/>
<wire from="(180,90)" to="(210,90)"/>
<wire from="(180,100)" to="(210,100)"/>
<wire from="(180,110)" to="(210,110)"/>
<wire from="(180,120)" to="(210,120)"/>
<wire from="(180,130)" to="(210,130)"/>
<wire from="(180,140)" to="(210,140)"/>
<wire from="(230,100)" to="(260,100)"/>
<wire from="(230,70)" to="(260,70)"/>
<wire from="(230,80)" to="(260,80)"/>
<wire from="(230,130)" to="(260,130)"/>
<wire from="(230,140)" to="(260,140)"/>
<wire from="(230,110)" to="(260,110)"/>
<wire from="(230,120)" to="(260,120)"/>
<wire from="(230,90)" to="(260,90)"/>
<wire from="(290,80)" to="(320,80)"/>
<wire from="(270,160)" to="(290,160)"/>
<wire from="(140,60)" to="(160,60)"/>
<wire from="(330,90)" to="(330,100)"/>
<wire from="(290,80)" to="(290,160)"/>
<wire from="(280,60)" to="(320,60)"/>
<wire from="(360,70)" to="(400,70)"/>
<comp lib="0" loc="(330,100)" name="Ground"/>
<comp lib="1" loc="(230,120)" name="NOT Gate">
2016-02-25 15:09:23 +00:00
<a name="size" val="20"/>
</comp>
<comp lib="0" loc="(160,60)" name="Splitter">
<a name="fanout" val="8"/>
<a name="incoming" val="8"/>
<a name="appear" val="right"/>
</comp>
<comp lib="1" loc="(230,70)" name="NOT Gate">
2016-02-25 15:09:23 +00:00
<a name="size" val="20"/>
</comp>
<comp lib="1" loc="(230,100)" name="NOT Gate">
2016-02-25 15:09:23 +00:00
<a name="size" val="20"/>
</comp>
<comp lib="0" loc="(140,60)" name="Pin">
<a name="width" val="8"/>
<a name="tristate" val="false"/>
<a name="label" val="In"/>
</comp>
<comp lib="1" loc="(230,90)" name="NOT Gate">
<a name="size" val="20"/>
2016-02-25 15:09:23 +00:00
</comp>
<comp lib="1" loc="(230,140)" name="NOT Gate">
2016-02-25 15:09:23 +00:00
<a name="size" val="20"/>
</comp>
<comp lib="1" loc="(230,80)" name="NOT Gate">
2016-02-25 15:09:23 +00:00
<a name="size" val="20"/>
</comp>
<comp lib="0" loc="(400,70)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="8"/>
<a name="label" val="Out"/>
<a name="labelloc" val="east"/>
</comp>
2016-02-25 15:09:23 +00:00
<comp lib="1" loc="(230,110)" name="NOT Gate">
<a name="size" val="20"/>
</comp>
<comp lib="0" loc="(270,160)" name="Constant">
<a name="width" val="8"/>
2016-02-25 15:09:23 +00:00
</comp>
<comp lib="1" loc="(230,130)" name="NOT Gate">
2016-02-25 15:09:23 +00:00
<a name="size" val="20"/>
</comp>
<comp loc="(340,70)" name="aiSum"/>
2016-02-25 15:09:23 +00:00
<comp lib="0" loc="(280,60)" name="Splitter">
<a name="facing" val="west"/>
<a name="fanout" val="8"/>
<a name="incoming" val="8"/>
</comp>
</circuit>
2016-02-17 09:02:45 +00:00
</project>