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

275 lines
11 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"/>
<lib desc="#Gates" name="1">
<tool name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</tool>
<tool name="OR 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="74LS109"/>
<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="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="size" val="20"/>
</tool>
<tool lib="1" name="AND Gate"/>
<tool lib="1" name="OR Gate"/>
</toolbar>
<circuit name="74LS109">
<a name="circuit" val="74LS109"/>
<a name="clabel" val=""/>
<a name="clabelup" val="east"/>
<a name="clabelfont" val="SansSerif plain 12"/>
<appear>
<rect fill="#ffff00" height="160" 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">1/PRE</text>
<text font-family="SansSerif" font-size="10" font-weight="bold" text-anchor="start" x="54" y="84">1J</text>
<text font-family="SansSerif" font-size="10" font-weight="bold" text-anchor="start" x="54" y="94">1CLK</text>
<text font-family="SansSerif" font-size="10" font-weight="bold" text-anchor="start" x="54" y="104">1/K</text>
<text font-family="SansSerif" font-size="10" font-weight="bold" text-anchor="start" x="54" y="124">1/CLR</text>
<text font-family="SansSerif" font-size="10" font-weight="bold" text-anchor="start" x="100" y="84">1Q</text>
<text font-family="SansSerif" font-size="10" font-weight="bold" text-anchor="start" x="96" y="104">1/Q</text>
<text font-family="SansSerif" font-size="10" font-weight="bold" text-anchor="start" x="100" y="164">2Q</text>
<text font-family="SansSerif" font-size="10" font-weight="bold" text-anchor="start" x="96" y="184">2/Q</text>
<text font-family="SansSerif" font-size="10" font-weight="bold" text-anchor="start" x="54" y="184">2/K</text>
<text font-family="SansSerif" font-size="10" font-weight="bold" text-anchor="start" x="54" y="164">2J</text>
<text font-family="SansSerif" font-size="10" font-weight="bold" text-anchor="start" x="54" y="204">2/CLR</text>
<text font-family="SansSerif" font-size="10" font-weight="bold" text-anchor="start" x="54" y="144">2/PRE</text>
<text font-family="SansSerif" font-size="10" font-weight="bold" text-anchor="start" x="54" y="174">2CLK</text>
<text font-family="SansSerif" font-size="14" font-weight="bold" text-anchor="start" x="50" y="46">74LS109</text>
<circ-port height="8" pin="100,100" width="8" x="46" y="76"/>
<circ-port height="8" pin="100,130" width="8" x="46" y="86"/>
<circ-port height="8" pin="100,160" width="8" x="46" y="96"/>
<circ-port height="8" pin="100,190" width="8" x="46" y="56"/>
<circ-port height="8" pin="100,210" width="8" x="46" y="116"/>
<circ-port height="8" pin="100,270" width="8" x="46" y="156"/>
<circ-port height="8" pin="100,300" width="8" x="46" y="166"/>
<circ-port height="8" pin="100,330" width="8" x="46" y="176"/>
<circ-port height="8" pin="100,360" width="8" x="46" y="136"/>
<circ-port height="8" pin="100,380" width="8" x="46" y="196"/>
<circ-port height="10" pin="300,110" width="10" x="115" y="75"/>
<circ-port height="10" pin="300,150" width="10" x="115" y="95"/>
<circ-port height="10" pin="300,280" width="10" x="115" y="155"/>
<circ-port height="10" pin="300,320" width="10" x="115" y="175"/>
<circ-anchor facing="east" height="6" width="6" x="77" y="127"/>
</appear>
<wire from="(130,190)" to="(180,190)"/>
<wire from="(210,290)" to="(260,290)"/>
<wire from="(210,310)" to="(260,310)"/>
<wire from="(140,140)" to="(140,160)"/>
<wire from="(140,100)" to="(140,120)"/>
<wire from="(100,270)" to="(140,270)"/>
<wire from="(140,140)" to="(170,140)"/>
<wire from="(140,120)" to="(170,120)"/>
<wire from="(180,360)" to="(210,360)"/>
<wire from="(180,320)" to="(180,360)"/>
<wire from="(250,330)" to="(250,370)"/>
<wire from="(290,110)" to="(300,110)"/>
<wire from="(290,150)" to="(300,150)"/>
<wire from="(130,330)" to="(140,330)"/>
<wire from="(240,200)" to="(250,200)"/>
<wire from="(250,330)" to="(260,330)"/>
<wire from="(250,270)" to="(260,270)"/>
<wire from="(200,380)" to="(210,380)"/>
<wire from="(100,160)" to="(110,160)"/>
<wire from="(100,360)" to="(110,360)"/>
<wire from="(100,380)" to="(110,380)"/>
<wire from="(130,380)" to="(200,380)"/>
<wire from="(100,130)" to="(170,130)"/>
<wire from="(250,270)" to="(250,330)"/>
<wire from="(200,320)" to="(200,380)"/>
<wire from="(130,360)" to="(180,360)"/>
<wire from="(210,120)" to="(260,120)"/>
<wire from="(210,140)" to="(260,140)"/>
<wire from="(140,310)" to="(140,330)"/>
<wire from="(140,270)" to="(140,290)"/>
<wire from="(100,100)" to="(140,100)"/>
<wire from="(180,190)" to="(210,190)"/>
<wire from="(140,310)" to="(170,310)"/>
<wire from="(140,290)" to="(170,290)"/>
<wire from="(180,150)" to="(180,190)"/>
<wire from="(250,160)" to="(250,200)"/>
<wire from="(290,280)" to="(300,280)"/>
<wire from="(290,320)" to="(300,320)"/>
<wire from="(130,160)" to="(140,160)"/>
<wire from="(250,100)" to="(260,100)"/>
<wire from="(250,160)" to="(260,160)"/>
<wire from="(200,210)" to="(210,210)"/>
<wire from="(240,370)" to="(250,370)"/>
<wire from="(100,190)" to="(110,190)"/>
<wire from="(100,210)" to="(110,210)"/>
<wire from="(100,330)" to="(110,330)"/>
<wire from="(130,210)" to="(200,210)"/>
<wire from="(100,300)" to="(170,300)"/>
<wire from="(250,100)" to="(250,160)"/>
<wire from="(200,150)" to="(200,210)"/>
<comp lib="0" loc="(100,100)" name="Pin">
<a name="tristate" val="false"/>
<a name="label" val="1J"/>
</comp>
<comp lib="1" loc="(130,160)" name="NOT Gate">
<a name="size" val="20"/>
</comp>
<comp lib="6" loc="(105,56)" name="Text">
<a name="text" val="74LS109"/>
<a name="font" val="SansSerif bold 24"/>
</comp>
<comp lib="4" loc="(210,120)" name="J-K Flip-Flop">
<a name="label" val="Rise"/>
</comp>
<comp lib="4" loc="(210,290)" name="J-K Flip-Flop">
<a name="label" val="Rise"/>
</comp>
<comp lib="1" loc="(290,280)" name="OR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
<comp lib="0" loc="(100,300)" name="Pin">
<a name="tristate" val="false"/>
<a name="label" val="2CLK"/>
</comp>
<comp lib="0" loc="(300,110)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="label" val="1Q"/>
<a name="labelloc" val="east"/>
</comp>
<comp lib="1" loc="(290,150)" name="OR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
<comp lib="0" loc="(100,270)" name="Pin">
<a name="tristate" val="false"/>
<a name="label" val="2J"/>
</comp>
<comp lib="1" loc="(130,210)" name="NOT Gate">
<a name="size" val="20"/>
</comp>
<comp lib="0" loc="(300,320)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="label" val="2/Q"/>
<a name="labelloc" val="east"/>
</comp>
<comp lib="1" loc="(130,190)" name="NOT Gate">
<a name="size" val="20"/>
</comp>
<comp lib="0" loc="(100,360)" name="Pin">
<a name="tristate" val="false"/>
<a name="label" val="2/PRE"/>
</comp>
<comp lib="0" loc="(100,190)" name="Pin">
<a name="tristate" val="false"/>
<a name="label" val="1/PRE"/>
</comp>
<comp lib="1" loc="(240,200)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
<comp lib="0" loc="(300,150)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="label" val="1/Q"/>
<a name="labelloc" val="east"/>
</comp>
<comp lib="0" loc="(100,130)" name="Pin">
<a name="tristate" val="false"/>
<a name="label" val="1CLK"/>
</comp>
<comp lib="1" loc="(240,370)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
<comp lib="0" loc="(100,160)" name="Pin">
<a name="tristate" val="false"/>
<a name="label" val="1/K"/>
</comp>
<comp lib="1" loc="(290,110)" name="OR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
<comp lib="1" loc="(290,320)" name="OR Gate">
<a name="size" val="30"/>
<a name="inputs" val="2"/>
</comp>
<comp lib="1" loc="(130,360)" name="NOT Gate">
<a name="size" val="20"/>
</comp>
<comp lib="0" loc="(100,330)" name="Pin">
<a name="tristate" val="false"/>
<a name="label" val="2/K"/>
</comp>
<comp lib="0" loc="(100,210)" name="Pin">
<a name="tristate" val="false"/>
<a name="label" val="1/CLR"/>
</comp>
<comp lib="1" loc="(130,330)" name="NOT Gate">
<a name="size" val="20"/>
</comp>
<comp lib="1" loc="(130,380)" name="NOT Gate">
<a name="size" val="20"/>
</comp>
<comp lib="0" loc="(300,280)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="label" val="2Q"/>
<a name="labelloc" val="east"/>
</comp>
<comp lib="0" loc="(100,380)" name="Pin">
<a name="tristate" val="false"/>
<a name="label" val="2/CLR"/>
</comp>
</circuit>
</project>