378 lines
13 KiB
XML
378 lines
13 KiB
XML
<?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">
|
|
<tool name="Splitter">
|
|
<a name="facing" val="north"/>
|
|
<a name="fanout" val="8"/>
|
|
<a name="incoming" val="8"/>
|
|
<a name="appear" val="legacy"/>
|
|
</tool>
|
|
<tool name="Pin">
|
|
<a name="facing" val="south"/>
|
|
</tool>
|
|
<tool name="Constant">
|
|
<a name="value" val="0x0"/>
|
|
</tool>
|
|
</lib>
|
|
<lib desc="#Gates" name="1"/>
|
|
<lib desc="#Plexers" name="2"/>
|
|
<lib desc="#Arithmetic" name="3"/>
|
|
<lib desc="#Memory" name="4">
|
|
<tool name="ROM">
|
|
<a name="contents">addr/data: 8 8
|
|
0
|
|
</a>
|
|
</tool>
|
|
</lib>
|
|
<lib desc="#I/O" name="5"/>
|
|
<lib desc="#Base" name="6">
|
|
<tool name="Text Tool">
|
|
<a name="text" val=""/>
|
|
<a name="font" val="SansSerif bold 12"/>
|
|
<a name="halign" val="center"/>
|
|
<a name="valign" val="base"/>
|
|
</tool>
|
|
<tool name="Text">
|
|
<a name="text" val="a"/>
|
|
</tool>
|
|
</lib>
|
|
<lib desc="file#/media/DataEXT4/Documents/Logisim/lab13/Registers.circ" name="7"/>
|
|
<lib desc="file#/media/DataEXT4/Documents/Logisim/lab15/ALU_CalebFontenot.circ" name="8"/>
|
|
<lib desc="file#/media/DataEXT4/Documents/Logisim/lab17/ProgramCounter.circ" name="9"/>
|
|
<main name="memory-ALU-Testing"/>
|
|
<options>
|
|
<a name="gateUndefined" val="ignore"/>
|
|
<a name="simlimit" val="1000"/>
|
|
<a name="simrand" val="0"/>
|
|
</options>
|
|
<mappings>
|
|
<tool lib="6" map="Button2" name="Menu Tool"/>
|
|
<tool lib="6" map="Button3" name="Menu Tool"/>
|
|
<tool lib="6" map="Ctrl Button1" name="Menu Tool"/>
|
|
</mappings>
|
|
<toolbar>
|
|
<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 bold 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>
|
|
<circuit name="memory-ALU-Testing">
|
|
<a name="circuit" val="memory-ALU-Testing"/>
|
|
<a name="clabel" val=""/>
|
|
<a name="clabelup" val="north"/>
|
|
<a name="clabelfont" val="SansSerif plain 12"/>
|
|
<wire from="(650,550)" to="(650,560)"/>
|
|
<wire from="(650,410)" to="(650,420)"/>
|
|
<wire from="(690,550)" to="(690,560)"/>
|
|
<wire from="(690,410)" to="(690,420)"/>
|
|
<wire from="(750,170)" to="(750,180)"/>
|
|
<wire from="(730,530)" to="(850,530)"/>
|
|
<wire from="(610,170)" to="(610,180)"/>
|
|
<wire from="(870,410)" to="(870,420)"/>
|
|
<wire from="(580,460)" to="(630,460)"/>
|
|
<wire from="(260,460)" to="(310,460)"/>
|
|
<wire from="(520,60)" to="(520,70)"/>
|
|
<wire from="(100,60)" to="(100,460)"/>
|
|
<wire from="(580,50)" to="(580,140)"/>
|
|
<wire from="(590,160)" to="(590,250)"/>
|
|
<wire from="(370,380)" to="(370,460)"/>
|
|
<wire from="(240,60)" to="(410,60)"/>
|
|
<wire from="(730,570)" to="(730,600)"/>
|
|
<wire from="(240,40)" to="(240,60)"/>
|
|
<wire from="(320,480)" to="(320,510)"/>
|
|
<wire from="(730,450)" to="(730,470)"/>
|
|
<wire from="(810,40)" to="(810,150)"/>
|
|
<wire from="(590,250)" to="(740,250)"/>
|
|
<wire from="(730,530)" to="(730,570)"/>
|
|
<wire from="(430,110)" to="(460,110)"/>
|
|
<wire from="(610,520)" to="(630,520)"/>
|
|
<wire from="(710,440)" to="(730,440)"/>
|
|
<wire from="(710,500)" to="(730,500)"/>
|
|
<wire from="(730,520)" to="(750,520)"/>
|
|
<wire from="(340,460)" to="(370,460)"/>
|
|
<wire from="(710,490)" to="(740,490)"/>
|
|
<wire from="(370,460)" to="(580,460)"/>
|
|
<wire from="(290,470)" to="(290,510)"/>
|
|
<wire from="(950,90)" to="(980,90)"/>
|
|
<wire from="(950,150)" to="(980,150)"/>
|
|
<wire from="(450,70)" to="(460,70)"/>
|
|
<wire from="(460,80)" to="(470,80)"/>
|
|
<wire from="(450,50)" to="(580,50)"/>
|
|
<wire from="(720,180)" to="(730,180)"/>
|
|
<wire from="(450,60)" to="(520,60)"/>
|
|
<wire from="(730,570)" to="(740,570)"/>
|
|
<wire from="(740,500)" to="(750,500)"/>
|
|
<wire from="(740,470)" to="(740,480)"/>
|
|
<wire from="(740,490)" to="(740,500)"/>
|
|
<wire from="(730,440)" to="(850,440)"/>
|
|
<wire from="(580,140)" to="(580,460)"/>
|
|
<wire from="(170,500)" to="(170,510)"/>
|
|
<wire from="(210,500)" to="(210,510)"/>
|
|
<wire from="(190,500)" to="(190,510)"/>
|
|
<wire from="(460,70)" to="(460,80)"/>
|
|
<wire from="(770,250)" to="(810,250)"/>
|
|
<wire from="(770,150)" to="(810,150)"/>
|
|
<wire from="(900,480)" to="(940,480)"/>
|
|
<wire from="(430,80)" to="(430,110)"/>
|
|
<wire from="(630,150)" to="(740,150)"/>
|
|
<wire from="(730,500)" to="(730,520)"/>
|
|
<wire from="(730,160)" to="(730,180)"/>
|
|
<wire from="(450,40)" to="(810,40)"/>
|
|
<wire from="(730,380)" to="(730,400)"/>
|
|
<wire from="(730,400)" to="(730,440)"/>
|
|
<wire from="(580,140)" to="(600,140)"/>
|
|
<wire from="(400,110)" to="(430,110)"/>
|
|
<wire from="(710,470)" to="(730,470)"/>
|
|
<wire from="(730,450)" to="(750,450)"/>
|
|
<wire from="(710,530)" to="(730,530)"/>
|
|
<wire from="(290,470)" to="(310,470)"/>
|
|
<wire from="(810,150)" to="(810,250)"/>
|
|
<wire from="(710,480)" to="(740,480)"/>
|
|
<wire from="(950,120)" to="(980,120)"/>
|
|
<wire from="(950,180)" to="(980,180)"/>
|
|
<wire from="(100,460)" to="(120,460)"/>
|
|
<wire from="(520,70)" to="(530,70)"/>
|
|
<wire from="(100,60)" to="(240,60)"/>
|
|
<wire from="(730,160)" to="(740,160)"/>
|
|
<wire from="(730,400)" to="(740,400)"/>
|
|
<wire from="(740,470)" to="(750,470)"/>
|
|
<wire from="(590,160)" to="(600,160)"/>
|
|
<wire from="(610,180)" to="(620,180)"/>
|
|
<comp lib="0" loc="(400,110)" name="Pin">
|
|
<a name="output" val="true"/>
|
|
<a name="width" val="2"/>
|
|
<a name="label" val="addrsel"/>
|
|
<a name="labelloc" val="south"/>
|
|
</comp>
|
|
<comp lib="0" loc="(980,180)" name="Tunnel">
|
|
<a name="width" val="8"/>
|
|
<a name="label" val="r3"/>
|
|
</comp>
|
|
<comp lib="0" loc="(950,150)" name="Pin">
|
|
<a name="output" val="true"/>
|
|
<a name="width" val="8"/>
|
|
<a name="tristate" val="false"/>
|
|
<a name="labelloc" val="east"/>
|
|
</comp>
|
|
<comp lib="0" loc="(730,380)" name="Pin">
|
|
<a name="facing" val="south"/>
|
|
<a name="output" val="true"/>
|
|
<a name="width" val="8"/>
|
|
<a name="labelloc" val="east"/>
|
|
</comp>
|
|
<comp lib="2" loc="(630,150)" name="Multiplexer">
|
|
<a name="width" val="8"/>
|
|
<a name="enable" val="false"/>
|
|
</comp>
|
|
<comp lib="6" loc="(184,415)" name="Text">
|
|
<a name="text" val="RAM"/>
|
|
<a name="font" val="SansSerif bold 20"/>
|
|
</comp>
|
|
<comp lib="0" loc="(950,120)" name="Pin">
|
|
<a name="output" val="true"/>
|
|
<a name="width" val="8"/>
|
|
<a name="tristate" val="false"/>
|
|
<a name="labelloc" val="east"/>
|
|
</comp>
|
|
<comp lib="0" loc="(750,180)" name="Clock">
|
|
<a name="facing" val="north"/>
|
|
</comp>
|
|
<comp lib="2" loc="(410,60)" name="Multiplexer">
|
|
<a name="facing" val="west"/>
|
|
<a name="select" val="2"/>
|
|
<a name="width" val="8"/>
|
|
<a name="enable" val="false"/>
|
|
</comp>
|
|
<comp lib="8" loc="(870,440)" name="ALU"/>
|
|
<comp lib="7" loc="(670,490)" name="Registers"/>
|
|
<comp lib="0" loc="(750,500)" name="Tunnel">
|
|
<a name="width" val="8"/>
|
|
<a name="label" val="r2"/>
|
|
</comp>
|
|
<comp lib="0" loc="(980,90)" name="Tunnel">
|
|
<a name="width" val="8"/>
|
|
<a name="label" val="r0"/>
|
|
</comp>
|
|
<comp lib="6" loc="(754,122)" name="Text">
|
|
<a name="text" val="PC"/>
|
|
<a name="font" val="SansSerif bold 20"/>
|
|
</comp>
|
|
<comp lib="0" loc="(650,560)" name="Pin">
|
|
<a name="facing" val="north"/>
|
|
<a name="output" val="true"/>
|
|
<a name="tristate" val="false"/>
|
|
<a name="labelloc" val="east"/>
|
|
</comp>
|
|
<comp lib="4" loc="(770,150)" name="Register"/>
|
|
<comp lib="0" loc="(190,510)" name="Clock">
|
|
<a name="facing" val="north"/>
|
|
</comp>
|
|
<comp lib="0" loc="(750,450)" name="Tunnel">
|
|
<a name="width" val="8"/>
|
|
<a name="label" val="r0"/>
|
|
</comp>
|
|
<comp lib="0" loc="(610,520)" name="Pin">
|
|
<a name="tristate" val="false"/>
|
|
</comp>
|
|
<comp lib="0" loc="(470,80)" name="Tunnel">
|
|
<a name="width" val="8"/>
|
|
<a name="label" val="dbus"/>
|
|
</comp>
|
|
<comp lib="0" loc="(980,150)" name="Tunnel">
|
|
<a name="width" val="8"/>
|
|
<a name="label" val="r2"/>
|
|
</comp>
|
|
<comp lib="0" loc="(740,570)" name="Tunnel">
|
|
<a name="width" val="8"/>
|
|
<a name="label" val="sbus"/>
|
|
</comp>
|
|
<comp lib="0" loc="(720,180)" name="Pin">
|
|
<a name="tristate" val="false"/>
|
|
</comp>
|
|
<comp lib="0" loc="(690,560)" name="Pin">
|
|
<a name="facing" val="north"/>
|
|
<a name="output" val="true"/>
|
|
<a name="tristate" val="false"/>
|
|
<a name="labelloc" val="east"/>
|
|
</comp>
|
|
<comp lib="4" loc="(340,460)" name="Register"/>
|
|
<comp lib="0" loc="(320,510)" name="Clock">
|
|
<a name="facing" val="north"/>
|
|
</comp>
|
|
<comp lib="0" loc="(620,180)" name="Pin">
|
|
<a name="facing" val="west"/>
|
|
<a name="tristate" val="false"/>
|
|
</comp>
|
|
<comp lib="0" loc="(460,110)" name="Pin">
|
|
<a name="facing" val="west"/>
|
|
<a name="width" val="2"/>
|
|
<a name="tristate" val="false"/>
|
|
</comp>
|
|
<comp lib="0" loc="(950,90)" name="Pin">
|
|
<a name="output" val="true"/>
|
|
<a name="width" val="8"/>
|
|
<a name="tristate" val="false"/>
|
|
<a name="labelloc" val="east"/>
|
|
</comp>
|
|
<comp lib="0" loc="(690,410)" name="Pin">
|
|
<a name="facing" val="south"/>
|
|
<a name="width" val="2"/>
|
|
<a name="tristate" val="false"/>
|
|
</comp>
|
|
<comp lib="0" loc="(650,410)" name="Pin">
|
|
<a name="facing" val="south"/>
|
|
<a name="width" val="2"/>
|
|
<a name="tristate" val="false"/>
|
|
</comp>
|
|
<comp lib="0" loc="(240,40)" name="Pin">
|
|
<a name="facing" val="south"/>
|
|
<a name="output" val="true"/>
|
|
<a name="width" val="8"/>
|
|
<a name="tristate" val="false"/>
|
|
<a name="label" val="memory address"/>
|
|
<a name="labelloc" val="north"/>
|
|
</comp>
|
|
<comp lib="9" loc="(760,260)" name="programCounter">
|
|
<a name="facing" val="west"/>
|
|
<a name="labelloc" val="west"/>
|
|
</comp>
|
|
<comp lib="0" loc="(210,510)" name="Pin">
|
|
<a name="facing" val="north"/>
|
|
<a name="tristate" val="false"/>
|
|
</comp>
|
|
<comp lib="0" loc="(290,510)" name="Pin">
|
|
<a name="facing" val="north"/>
|
|
<a name="tristate" val="false"/>
|
|
</comp>
|
|
<comp lib="6" loc="(133,56)" name="Text">
|
|
<a name="text" val="address bus"/>
|
|
</comp>
|
|
<comp lib="6" loc="(323,423)" name="Text">
|
|
<a name="text" val="ImmedR"/>
|
|
<a name="font" val="SansSerif bold 20"/>
|
|
</comp>
|
|
<comp lib="0" loc="(730,600)" name="Pin">
|
|
<a name="facing" val="north"/>
|
|
<a name="output" val="true"/>
|
|
<a name="width" val="8"/>
|
|
<a name="labelloc" val="east"/>
|
|
</comp>
|
|
<comp lib="6" loc="(754,290)" name="Text">
|
|
<a name="text" val="PC Adder"/>
|
|
<a name="font" val="SansSerif bold 18"/>
|
|
</comp>
|
|
<comp lib="0" loc="(740,400)" name="Tunnel">
|
|
<a name="width" val="8"/>
|
|
<a name="label" val="dbus"/>
|
|
</comp>
|
|
<comp lib="0" loc="(370,380)" name="Pin">
|
|
<a name="facing" val="south"/>
|
|
<a name="output" val="true"/>
|
|
<a name="width" val="8"/>
|
|
<a name="labelloc" val="east"/>
|
|
</comp>
|
|
<comp lib="4" loc="(260,460)" name="RAM"/>
|
|
<comp lib="0" loc="(870,410)" name="Pin">
|
|
<a name="facing" val="south"/>
|
|
<a name="width" val="2"/>
|
|
<a name="tristate" val="false"/>
|
|
<a name="label" val="ALU Operation"/>
|
|
<a name="labelloc" val="north"/>
|
|
</comp>
|
|
<comp lib="0" loc="(950,180)" name="Pin">
|
|
<a name="output" val="true"/>
|
|
<a name="width" val="8"/>
|
|
<a name="tristate" val="false"/>
|
|
<a name="labelloc" val="east"/>
|
|
</comp>
|
|
<comp lib="0" loc="(940,480)" name="Pin">
|
|
<a name="facing" val="west"/>
|
|
<a name="output" val="true"/>
|
|
<a name="width" val="8"/>
|
|
<a name="tristate" val="false"/>
|
|
<a name="label" val="result"/>
|
|
<a name="labelloc" val="north"/>
|
|
</comp>
|
|
<comp lib="0" loc="(750,520)" name="Tunnel">
|
|
<a name="width" val="8"/>
|
|
<a name="label" val="r3"/>
|
|
</comp>
|
|
<comp lib="0" loc="(170,510)" name="Pin">
|
|
<a name="facing" val="north"/>
|
|
<a name="tristate" val="false"/>
|
|
</comp>
|
|
<comp lib="0" loc="(530,70)" name="Tunnel">
|
|
<a name="width" val="8"/>
|
|
<a name="label" val="sbus"/>
|
|
</comp>
|
|
<comp lib="0" loc="(980,120)" name="Tunnel">
|
|
<a name="width" val="8"/>
|
|
<a name="label" val="r1"/>
|
|
</comp>
|
|
<comp lib="6" loc="(52,484)" name="Text">
|
|
<a name="text" val="Memory Address"/>
|
|
</comp>
|
|
<comp lib="0" loc="(750,470)" name="Tunnel">
|
|
<a name="width" val="8"/>
|
|
<a name="label" val="r1"/>
|
|
</comp>
|
|
</circuit>
|
|
</project>
|