Files
2025-12-31 19:35:06 +08:00

458 lines
18 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="Pin">
<a name="output" val="true"/>
</tool>
<tool name="Pull Resistor">
<a name="pull" val="1"/>
</tool>
</lib>
<lib desc="#Gates" name="1">
<tool name="Buffer">
<a name="out" val="0Z"/>
</tool>
<tool name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</tool>
<tool name="NAND Gate">
<a name="facing" val="north"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</tool>
<tool name="NOR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</tool>
</lib>
<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 plain 12"/>
<a name="halign" val="center"/>
<a name="valign" val="base"/>
</tool>
</lib>
<main name="74LS416"/>
<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 plain 12"/>
<a name="halign" val="center"/>
<a name="valign" val="base"/>
</tool>
<sep/>
<tool lib="0" name="Pin">
<a name="facing" val="north"/>
<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">
<a name="facing" val="west"/>
<a name="size" val="20"/>
</tool>
<tool lib="1" name="AND Gate"/>
<tool lib="1" name="OR Gate"/>
</toolbar>
<circuit name="74LS416">
<a name="circuit" val="74LS416"/>
<a name="clabel" val=""/>
<a name="clabelup" val="east"/>
<a name="clabelfont" val="SansSerif plain 12"/>
<appear>
<rect fill="#ffff00" height="110" stroke="#000000" stroke-width="2" width="70" x="50" y="50"/>
<text font-family="SansSerif" font-size="10" font-weight="bold" text-anchor="start" x="54" y="64">Gate</text>
<text font-family="SansSerif" font-size="10" font-weight="bold" text-anchor="start" x="54" y="74">Clock</text>
<text font-family="SansSerif" font-size="10" font-weight="bold" text-anchor="start" x="54" y="94">D0</text>
<text font-family="SansSerif" font-size="10" font-weight="bold" text-anchor="start" x="54" y="104">D1</text>
<text font-family="SansSerif" font-size="10" font-weight="bold" text-anchor="start" x="54" y="114">D2</text>
<text font-family="SansSerif" font-size="10" font-weight="bold" text-anchor="start" x="54" y="124">D3</text>
<text font-family="SansSerif" font-size="10" font-weight="bold" text-anchor="start" x="52" y="144">/PE</text>
<text font-family="SansSerif" font-size="10" font-weight="bold" text-anchor="start" x="52" y="154">/MR</text>
<text font-family="SansSerif" font-size="10" font-weight="bold" text-anchor="start" x="99" y="94">Q0</text>
<text font-family="SansSerif" font-size="10" font-weight="bold" text-anchor="start" x="99" y="104">Q1</text>
<text font-family="SansSerif" font-size="10" font-weight="bold" text-anchor="start" x="99" y="114">Q2</text>
<text font-family="SansSerif" font-size="10" font-weight="bold" text-anchor="start" x="99" y="124">Q3</text>
<text font-family="SansSerif" font-size="10" font-weight="bold" text-anchor="start" x="107" y="144">R</text>
<text font-family="SansSerif" font-size="10" font-weight="bold" text-anchor="start" x="94" y="154">Bus</text>
<text font-family="SansSerif" font-size="14" font-weight="bold" text-anchor="start" x="49" y="46">74LS416</text>
<circ-port height="8" pin="90,110" width="8" x="46" y="66"/>
<circ-port height="8" pin="90,330" width="8" x="46" y="146"/>
<circ-port height="8" pin="90,360" width="8" x="46" y="56"/>
<circ-port height="8" pin="90,390" width="8" x="46" y="136"/>
<circ-port height="10" pin="760,150" width="10" x="115" y="135"/>
<circ-port height="10" pin="760,190" width="10" x="115" y="145"/>
<circ-port height="10" pin="280,70" width="10" x="115" y="85"/>
<circ-port height="10" pin="400,70" width="10" x="115" y="95"/>
<circ-port height="10" pin="520,70" width="10" x="115" y="105"/>
<circ-port height="10" pin="660,70" width="10" x="115" y="115"/>
<circ-port height="8" pin="230,450" width="8" x="46" y="86"/>
<circ-port height="8" pin="350,450" width="8" x="46" y="96"/>
<circ-port height="8" pin="470,450" width="8" x="46" y="106"/>
<circ-port height="8" pin="610,450" width="8" x="46" y="116"/>
<circ-anchor facing="east" height="6" width="6" x="77" y="77"/>
</appear>
<wire from="(280,110)" to="(340,110)"/>
<wire from="(670,190)" to="(670,200)"/>
<wire from="(400,110)" to="(460,110)"/>
<wire from="(620,260)" to="(620,270)"/>
<wire from="(600,320)" to="(600,330)"/>
<wire from="(230,270)" to="(230,280)"/>
<wire from="(100,380)" to="(100,390)"/>
<wire from="(640,260)" to="(640,390)"/>
<wire from="(470,270)" to="(470,280)"/>
<wire from="(350,270)" to="(350,280)"/>
<wire from="(100,420)" to="(100,440)"/>
<wire from="(540,90)" to="(650,90)"/>
<wire from="(280,110)" to="(280,200)"/>
<wire from="(650,130)" to="(650,170)"/>
<wire from="(650,90)" to="(650,130)"/>
<wire from="(270,210)" to="(680,210)"/>
<wire from="(570,80)" to="(590,80)"/>
<wire from="(640,110)" to="(660,110)"/>
<wire from="(610,160)" to="(610,270)"/>
<wire from="(360,390)" to="(380,390)"/>
<wire from="(480,390)" to="(500,390)"/>
<wire from="(390,190)" to="(540,190)"/>
<wire from="(90,360)" to="(110,360)"/>
<wire from="(240,390)" to="(260,390)"/>
<wire from="(470,270)" to="(480,270)"/>
<wire from="(350,270)" to="(360,270)"/>
<wire from="(230,270)" to="(240,270)"/>
<wire from="(100,420)" to="(110,420)"/>
<wire from="(100,380)" to="(110,380)"/>
<wire from="(290,80)" to="(550,80)"/>
<wire from="(540,140)" to="(540,190)"/>
<wire from="(710,190)" to="(720,190)"/>
<wire from="(750,190)" to="(760,190)"/>
<wire from="(540,140)" to="(550,140)"/>
<wire from="(90,110)" to="(220,110)"/>
<wire from="(480,320)" to="(480,390)"/>
<wire from="(280,200)" to="(530,200)"/>
<wire from="(360,320)" to="(360,390)"/>
<wire from="(240,320)" to="(240,390)"/>
<wire from="(150,400)" to="(150,410)"/>
<wire from="(190,120)" to="(190,130)"/>
<wire from="(220,330)" to="(340,330)"/>
<wire from="(100,390)" to="(100,400)"/>
<wire from="(610,320)" to="(610,450)"/>
<wire from="(430,120)" to="(430,130)"/>
<wire from="(340,330)" to="(460,330)"/>
<wire from="(100,440)" to="(660,440)"/>
<wire from="(510,180)" to="(680,180)"/>
<wire from="(260,390)" to="(360,390)"/>
<wire from="(380,390)" to="(480,390)"/>
<wire from="(510,130)" to="(550,130)"/>
<wire from="(660,70)" to="(660,110)"/>
<wire from="(150,400)" to="(160,400)"/>
<wire from="(630,160)" to="(630,220)"/>
<wire from="(590,80)" to="(590,130)"/>
<wire from="(670,200)" to="(680,200)"/>
<wire from="(640,130)" to="(650,130)"/>
<wire from="(720,140)" to="(720,150)"/>
<wire from="(610,270)" to="(610,280)"/>
<wire from="(500,260)" to="(500,390)"/>
<wire from="(260,260)" to="(260,390)"/>
<wire from="(380,260)" to="(380,390)"/>
<wire from="(150,370)" to="(150,380)"/>
<wire from="(190,130)" to="(190,140)"/>
<wire from="(240,260)" to="(240,270)"/>
<wire from="(220,320)" to="(220,330)"/>
<wire from="(430,130)" to="(430,140)"/>
<wire from="(480,260)" to="(480,270)"/>
<wire from="(460,320)" to="(460,330)"/>
<wire from="(360,260)" to="(360,270)"/>
<wire from="(340,320)" to="(340,330)"/>
<wire from="(720,150)" to="(760,150)"/>
<wire from="(200,390)" to="(240,390)"/>
<wire from="(420,90)" to="(510,90)"/>
<wire from="(300,90)" to="(390,90)"/>
<wire from="(180,90)" to="(270,90)"/>
<wire from="(620,390)" to="(640,390)"/>
<wire from="(290,140)" to="(310,140)"/>
<wire from="(470,160)" to="(470,270)"/>
<wire from="(380,110)" to="(400,110)"/>
<wire from="(650,170)" to="(680,170)"/>
<wire from="(350,160)" to="(350,270)"/>
<wire from="(500,110)" to="(520,110)"/>
<wire from="(270,90)" to="(270,130)"/>
<wire from="(230,160)" to="(230,270)"/>
<wire from="(390,90)" to="(390,130)"/>
<wire from="(260,110)" to="(280,110)"/>
<wire from="(510,90)" to="(510,130)"/>
<wire from="(720,190)" to="(720,440)"/>
<wire from="(300,120)" to="(310,120)"/>
<wire from="(460,330)" to="(600,330)"/>
<wire from="(510,130)" to="(510,180)"/>
<wire from="(100,400)" to="(110,400)"/>
<wire from="(90,390)" to="(100,390)"/>
<wire from="(390,130)" to="(390,190)"/>
<wire from="(540,120)" to="(550,120)"/>
<wire from="(590,130)" to="(600,130)"/>
<wire from="(610,270)" to="(620,270)"/>
<wire from="(90,330)" to="(220,330)"/>
<wire from="(230,320)" to="(230,450)"/>
<wire from="(470,320)" to="(470,450)"/>
<wire from="(350,320)" to="(350,450)"/>
<wire from="(620,320)" to="(620,390)"/>
<wire from="(500,390)" to="(620,390)"/>
<wire from="(530,110)" to="(530,200)"/>
<wire from="(680,440)" to="(720,440)"/>
<wire from="(270,130)" to="(270,210)"/>
<wire from="(540,90)" to="(540,120)"/>
<wire from="(300,90)" to="(300,120)"/>
<wire from="(180,90)" to="(180,130)"/>
<wire from="(280,70)" to="(280,110)"/>
<wire from="(420,90)" to="(420,130)"/>
<wire from="(400,70)" to="(400,110)"/>
<wire from="(520,70)" to="(520,110)"/>
<wire from="(420,130)" to="(430,130)"/>
<wire from="(500,130)" to="(510,130)"/>
<wire from="(260,130)" to="(270,130)"/>
<wire from="(530,110)" to="(600,110)"/>
<wire from="(380,130)" to="(390,130)"/>
<wire from="(180,130)" to="(190,130)"/>
<wire from="(150,380)" to="(160,380)"/>
<wire from="(140,370)" to="(150,370)"/>
<wire from="(140,410)" to="(150,410)"/>
<wire from="(540,190)" to="(670,190)"/>
<wire from="(290,80)" to="(290,140)"/>
<wire from="(370,160)" to="(370,220)"/>
<wire from="(490,160)" to="(490,220)"/>
<wire from="(720,190)" to="(730,190)"/>
<wire from="(580,130)" to="(590,130)"/>
<wire from="(250,160)" to="(250,220)"/>
<comp lib="0" loc="(470,450)" name="Pin">
<a name="facing" val="north"/>
<a name="tristate" val="false"/>
<a name="label" val="D2"/>
<a name="labelloc" val="south"/>
</comp>
<comp lib="1" loc="(250,220)" name="NAND Gate">
<a name="facing" val="north"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
<comp lib="1" loc="(490,220)" name="NAND Gate">
<a name="facing" val="north"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
<comp lib="1" loc="(750,190)" name="Buffer">
<a name="out" val="0Z"/>
</comp>
<comp lib="1" loc="(230,280)" name="NAND Gate">
<a name="facing" val="north"/>
<a name="size" val="30"/>
<a name="inputs" val="3"/>
</comp>
<comp lib="1" loc="(550,80)" name="NOT Gate">
<a name="facing" val="west"/>
<a name="size" val="20"/>
</comp>
<comp lib="1" loc="(630,140)" name="NOT Gate">
<a name="facing" val="north"/>
<a name="size" val="20"/>
</comp>
<comp lib="1" loc="(470,140)" name="NOT Gate">
<a name="facing" val="north"/>
<a name="size" val="20"/>
</comp>
<comp lib="4" loc="(500,110)" name="D Flip-Flop"/>
<comp lib="1" loc="(710,190)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="4"/>
</comp>
<comp lib="1" loc="(340,130)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
<comp lib="0" loc="(660,70)" name="Pin">
<a name="facing" val="south"/>
<a name="output" val="true"/>
<a name="label" val="Q3"/>
<a name="labelloc" val="north"/>
</comp>
<comp lib="0" loc="(720,140)" name="Pull Resistor">
<a name="pull" val="1"/>
</comp>
<comp lib="1" loc="(140,410)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
<comp lib="1" loc="(660,440)" name="NOT Gate">
<a name="facing" val="west"/>
<a name="size" val="20"/>
</comp>
<comp lib="4" loc="(380,110)" name="D Flip-Flop"/>
<comp lib="0" loc="(350,450)" name="Pin">
<a name="facing" val="north"/>
<a name="tristate" val="false"/>
<a name="label" val="D1"/>
<a name="labelloc" val="south"/>
</comp>
<comp lib="0" loc="(90,110)" name="Pin">
<a name="tristate" val="false"/>
<a name="label" val="Clock"/>
</comp>
<comp lib="0" loc="(760,190)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="label" val="Bus"/>
<a name="labelloc" val="east"/>
</comp>
<comp lib="0" loc="(90,360)" name="Pin">
<a name="tristate" val="false"/>
<a name="label" val="Gate"/>
</comp>
<comp lib="0" loc="(610,450)" name="Pin">
<a name="facing" val="north"/>
<a name="tristate" val="false"/>
<a name="label" val="D3"/>
<a name="labelloc" val="south"/>
</comp>
<comp lib="1" loc="(490,140)" name="NOT Gate">
<a name="facing" val="north"/>
<a name="size" val="20"/>
</comp>
<comp lib="4" loc="(640,110)" name="D Flip-Flop"/>
<comp lib="0" loc="(90,330)" name="Pin">
<a name="tristate" val="false"/>
<a name="label" val="/MR"/>
</comp>
<comp lib="1" loc="(580,130)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="3"/>
</comp>
<comp lib="1" loc="(350,280)" name="NAND Gate">
<a name="facing" val="north"/>
<a name="size" val="30"/>
<a name="inputs" val="3"/>
</comp>
<comp lib="0" loc="(90,390)" name="Pin">
<a name="tristate" val="false"/>
<a name="label" val="/PE"/>
</comp>
<comp lib="1" loc="(630,220)" name="NAND Gate">
<a name="facing" val="north"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
<comp lib="4" loc="(260,110)" name="D Flip-Flop"/>
<comp lib="0" loc="(760,150)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="label" val="R"/>
<a name="labelloc" val="east"/>
</comp>
<comp lib="1" loc="(220,130)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
<comp lib="1" loc="(370,140)" name="NOT Gate">
<a name="facing" val="north"/>
<a name="size" val="20"/>
</comp>
<comp lib="0" loc="(400,70)" name="Pin">
<a name="facing" val="south"/>
<a name="output" val="true"/>
<a name="label" val="Q1"/>
<a name="labelloc" val="north"/>
</comp>
<comp lib="6" loc="(92,45)" name="Text">
<a name="text" val="74LS416"/>
<a name="font" val="SansSerif bold 24"/>
</comp>
<comp lib="1" loc="(140,370)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
<comp lib="1" loc="(610,280)" name="NAND Gate">
<a name="facing" val="north"/>
<a name="size" val="30"/>
<a name="inputs" val="3"/>
</comp>
<comp lib="0" loc="(280,70)" name="Pin">
<a name="facing" val="south"/>
<a name="output" val="true"/>
<a name="label" val="Q0"/>
<a name="labelloc" val="north"/>
</comp>
<comp lib="1" loc="(470,280)" name="NAND Gate">
<a name="facing" val="north"/>
<a name="size" val="30"/>
<a name="inputs" val="3"/>
</comp>
<comp lib="0" loc="(230,450)" name="Pin">
<a name="facing" val="north"/>
<a name="tristate" val="false"/>
<a name="label" val="D0"/>
<a name="labelloc" val="south"/>
</comp>
<comp lib="1" loc="(460,130)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
<comp lib="1" loc="(250,140)" name="NOT Gate">
<a name="facing" val="north"/>
<a name="size" val="20"/>
</comp>
<comp lib="1" loc="(230,140)" name="NOT Gate">
<a name="facing" val="north"/>
<a name="size" val="20"/>
</comp>
<comp lib="1" loc="(200,390)" name="NOR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
<comp lib="1" loc="(610,140)" name="NOT Gate">
<a name="facing" val="north"/>
<a name="size" val="20"/>
</comp>
<comp lib="1" loc="(370,220)" name="NAND Gate">
<a name="facing" val="north"/>
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
<comp lib="0" loc="(520,70)" name="Pin">
<a name="facing" val="south"/>
<a name="output" val="true"/>
<a name="label" val="Q2"/>
<a name="labelloc" val="north"/>
</comp>
<comp lib="1" loc="(350,140)" name="NOT Gate">
<a name="facing" val="north"/>
<a name="size" val="20"/>
</comp>
</circuit>
</project>