1 Star 0 Fork 0

cccccc9/SingleCycle-CPU

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
MiscComponents.circ 25.21 KB
一键复制 编辑 原始数据 按行查看 历史
Mia T 提交于 2020-01-08 11:10 . Re-Uploading Main Files
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708
<?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="fanout" val="3"/>
<a name="incoming" val="3"/>
<a name="appear" val="center"/>
</tool>
</lib>
<lib desc="#Gates" name="1">
<tool name="XOR Gate">
<a name="width" val="5"/>
<a name="inputs" val="3"/>
</tool>
</lib>
<lib desc="#Plexers" name="2">
<tool name="Multiplexer">
<a name="select" val="3"/>
<a name="width" val="32"/>
</tool>
<tool name="Demultiplexer">
<a name="select" val="3"/>
<a name="width" val="2"/>
</tool>
</lib>
<lib desc="#Memory" name="3">
<tool name="Register">
<a name="width" val="32"/>
</tool>
</lib>
<lib desc="#Base" name="4">
<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="GetSign"/>
<options>
<a name="gateUndefined" val="ignore"/>
<a name="simlimit" val="1000"/>
<a name="simrand" val="32"/>
</options>
<mappings>
<tool lib="4" map="Button2" name="Menu Tool"/>
<tool lib="4" map="Button3" name="Menu Tool"/>
<tool lib="4" map="Ctrl Button1" name="Menu Tool"/>
</mappings>
<toolbar>
<tool lib="4" name="Poke Tool"/>
<tool lib="4" name="Edit Tool"/>
<tool lib="4" 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="width" val="5"/>
<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">
<a name="size" val="30"/>
<a name="inputs" val="3"/>
</tool>
<tool lib="1" name="OR Gate">
<a name="size" val="30"/>
<a name="inputs" val="3"/>
</tool>
</toolbar>
<circuit name="GetSign">
<a name="circuit" val="GetSign"/>
<a name="clabel" val=""/>
<a name="clabelup" val="east"/>
<a name="clabelfont" val="SansSerif plain 12"/>
<wire from="(170,340)" to="(190,340)"/>
<wire from="(150,260)" to="(190,260)"/>
<wire from="(150,90)" to="(190,90)"/>
<wire from="(150,60)" to="(190,60)"/>
<wire from="(150,290)" to="(190,290)"/>
<wire from="(150,150)" to="(190,150)"/>
<wire from="(150,200)" to="(190,200)"/>
<wire from="(150,340)" to="(170,340)"/>
<wire from="(150,310)" to="(190,310)"/>
<wire from="(150,40)" to="(190,40)"/>
<wire from="(170,340)" to="(170,360)"/>
<wire from="(150,270)" to="(190,270)"/>
<wire from="(150,80)" to="(190,80)"/>
<wire from="(150,300)" to="(190,300)"/>
<wire from="(150,50)" to="(190,50)"/>
<wire from="(150,120)" to="(190,120)"/>
<wire from="(150,230)" to="(190,230)"/>
<wire from="(150,160)" to="(190,160)"/>
<wire from="(150,190)" to="(190,190)"/>
<wire from="(210,190)" to="(230,190)"/>
<wire from="(150,240)" to="(190,240)"/>
<wire from="(150,110)" to="(190,110)"/>
<wire from="(150,330)" to="(190,330)"/>
<wire from="(150,220)" to="(190,220)"/>
<wire from="(150,130)" to="(190,130)"/>
<wire from="(150,140)" to="(190,140)"/>
<wire from="(150,210)" to="(190,210)"/>
<wire from="(150,170)" to="(190,170)"/>
<wire from="(150,180)" to="(190,180)"/>
<wire from="(150,70)" to="(190,70)"/>
<wire from="(150,280)" to="(190,280)"/>
<wire from="(150,320)" to="(190,320)"/>
<wire from="(150,30)" to="(190,30)"/>
<wire from="(150,250)" to="(190,250)"/>
<wire from="(150,100)" to="(190,100)"/>
<wire from="(110,190)" to="(130,190)"/>
<comp lib="0" loc="(230,190)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="32"/>
<a name="labelloc" val="east"/>
</comp>
<comp lib="0" loc="(170,360)" name="Pin">
<a name="facing" val="north"/>
<a name="output" val="true"/>
<a name="label" val="Sign"/>
<a name="labelloc" val="east"/>
</comp>
<comp lib="0" loc="(210,190)" name="Splitter">
<a name="facing" val="west"/>
<a name="fanout" val="32"/>
<a name="incoming" val="32"/>
<a name="appear" val="legacy"/>
</comp>
<comp lib="0" loc="(130,190)" name="Splitter">
<a name="fanout" val="32"/>
<a name="incoming" val="32"/>
<a name="appear" val="legacy"/>
</comp>
<comp lib="0" loc="(110,190)" name="Pin">
<a name="width" val="32"/>
<a name="tristate" val="false"/>
</comp>
</circuit>
<circuit name="Zero">
<a name="circuit" val="Zero"/>
<a name="clabel" val=""/>
<a name="clabelup" val="east"/>
<a name="clabelfont" val="SansSerif plain 12"/>
<wire from="(240,160)" to="(260,160)"/>
<wire from="(220,190)" to="(220,230)"/>
<wire from="(200,310)" to="(240,310)"/>
<wire from="(200,140)" to="(220,140)"/>
<wire from="(220,140)" to="(220,170)"/>
<wire from="(320,180)" to="(340,180)"/>
<wire from="(240,60)" to="(240,160)"/>
<wire from="(200,230)" to="(220,230)"/>
<wire from="(240,200)" to="(240,310)"/>
<wire from="(240,200)" to="(260,200)"/>
<wire from="(220,170)" to="(260,170)"/>
<wire from="(200,60)" to="(240,60)"/>
<wire from="(220,190)" to="(260,190)"/>
<wire from="(110,190)" to="(130,190)"/>
<comp lib="1" loc="(200,310)" name="OR Gate">
<a name="inputs" val="7"/>
</comp>
<comp lib="1" loc="(200,230)" name="OR Gate">
<a name="inputs" val="9"/>
</comp>
<comp lib="0" loc="(130,190)" name="Splitter">
<a name="fanout" val="32"/>
<a name="incoming" val="32"/>
<a name="appear" val="legacy"/>
</comp>
<comp lib="1" loc="(200,140)" name="OR Gate">
<a name="inputs" val="9"/>
</comp>
<comp lib="1" loc="(320,180)" name="NOR Gate"/>
<comp lib="0" loc="(110,190)" name="Pin">
<a name="width" val="32"/>
<a name="tristate" val="false"/>
</comp>
<comp lib="0" loc="(340,180)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="labelloc" val="east"/>
</comp>
<comp lib="1" loc="(200,60)" name="OR Gate">
<a name="inputs" val="7"/>
</comp>
</circuit>
<circuit name="Overflow">
<a name="circuit" val="Overflow"/>
<a name="clabel" val=""/>
<a name="clabelup" val="east"/>
<a name="clabelfont" val="SansSerif plain 12"/>
<wire from="(240,120)" to="(260,120)"/>
<wire from="(290,120)" to="(290,200)"/>
<wire from="(70,140)" to="(130,140)"/>
<wire from="(100,200)" to="(290,200)"/>
<wire from="(50,90)" to="(70,90)"/>
<wire from="(110,70)" to="(130,70)"/>
<wire from="(170,80)" to="(190,80)"/>
<wire from="(310,130)" to="(310,220)"/>
<wire from="(290,120)" to="(330,120)"/>
<wire from="(90,170)" to="(130,170)"/>
<wire from="(220,140)" to="(240,140)"/>
<wire from="(110,120)" to="(170,120)"/>
<wire from="(290,110)" to="(330,110)"/>
<wire from="(170,130)" to="(190,130)"/>
<wire from="(70,90)" to="(190,90)"/>
<wire from="(110,240)" to="(110,260)"/>
<wire from="(310,130)" to="(330,130)"/>
<wire from="(240,120)" to="(240,140)"/>
<wire from="(90,100)" to="(90,150)"/>
<wire from="(110,220)" to="(130,220)"/>
<wire from="(90,150)" to="(90,170)"/>
<wire from="(110,50)" to="(110,70)"/>
<wire from="(150,70)" to="(170,70)"/>
<wire from="(170,70)" to="(170,80)"/>
<wire from="(170,150)" to="(170,170)"/>
<wire from="(150,220)" to="(310,220)"/>
<wire from="(150,140)" to="(190,140)"/>
<wire from="(50,150)" to="(90,150)"/>
<wire from="(90,100)" to="(190,100)"/>
<wire from="(170,150)" to="(190,150)"/>
<wire from="(240,100)" to="(260,100)"/>
<wire from="(70,90)" to="(70,140)"/>
<wire from="(150,170)" to="(170,170)"/>
<wire from="(100,200)" to="(100,220)"/>
<wire from="(110,70)" to="(110,120)"/>
<wire from="(240,90)" to="(240,100)"/>
<wire from="(170,120)" to="(170,130)"/>
<wire from="(360,120)" to="(380,120)"/>
<wire from="(220,90)" to="(240,90)"/>
<comp lib="1" loc="(150,70)" name="NOT Gate">
<a name="size" val="20"/>
</comp>
<comp lib="0" loc="(110,240)" name="Splitter">
<a name="facing" val="north"/>
<a name="appear" val="legacy"/>
</comp>
<comp lib="1" loc="(150,220)" name="NOT Gate">
<a name="size" val="20"/>
</comp>
<comp lib="1" loc="(150,170)" name="NOT Gate">
<a name="size" val="20"/>
</comp>
<comp lib="0" loc="(110,260)" name="Pin">
<a name="facing" val="north"/>
<a name="width" val="2"/>
<a name="tristate" val="false"/>
<a name="label" val="Operation"/>
<a name="labelloc" val="south"/>
</comp>
<comp lib="0" loc="(110,50)" name="Pin">
<a name="facing" val="south"/>
<a name="tristate" val="false"/>
<a name="label" val="Result"/>
<a name="labelloc" val="north"/>
</comp>
<comp lib="1" loc="(220,140)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="3"/>
</comp>
<comp lib="1" loc="(220,90)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="3"/>
</comp>
<comp lib="0" loc="(50,150)" name="Pin">
<a name="tristate" val="false"/>
<a name="label" val="B"/>
</comp>
<comp lib="0" loc="(380,120)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="label" val="Overflow"/>
<a name="labelloc" val="north"/>
</comp>
<comp lib="1" loc="(150,140)" name="NOT Gate">
<a name="size" val="20"/>
</comp>
<comp lib="0" loc="(50,90)" name="Pin">
<a name="tristate" val="false"/>
<a name="label" val="A"/>
</comp>
<comp lib="1" loc="(360,120)" name="AND Gate">
<a name="size" val="30"/>
<a name="inputs" val="3"/>
</comp>
<comp lib="1" loc="(290,110)" name="OR Gate">
<a name="size" val="30"/>
<a name="inputs" val="3"/>
</comp>
</circuit>
<circuit name="Registers4">
<a name="circuit" val="Registers4"/>
<a name="clabel" val=""/>
<a name="clabelup" val="east"/>
<a name="clabelfont" val="SansSerif plain 12"/>
<wire from="(140,230)" to="(290,230)"/>
<wire from="(400,200)" to="(410,200)"/>
<wire from="(330,250)" to="(330,260)"/>
<wire from="(390,110)" to="(390,210)"/>
<wire from="(340,50)" to="(400,50)"/>
<wire from="(370,80)" to="(370,230)"/>
<wire from="(390,60)" to="(410,60)"/>
<wire from="(290,110)" to="(290,170)"/>
<wire from="(290,50)" to="(290,110)"/>
<wire from="(290,230)" to="(310,230)"/>
<wire from="(270,140)" to="(320,140)"/>
<wire from="(450,220)" to="(490,220)"/>
<wire from="(140,80)" to="(170,80)"/>
<wire from="(390,60)" to="(390,110)"/>
<wire from="(320,250)" to="(320,260)"/>
<wire from="(330,190)" to="(330,200)"/>
<wire from="(290,170)" to="(290,230)"/>
<wire from="(370,80)" to="(410,80)"/>
<wire from="(240,110)" to="(250,110)"/>
<wire from="(330,260)" to="(350,260)"/>
<wire from="(320,190)" to="(320,200)"/>
<wire from="(330,70)" to="(330,80)"/>
<wire from="(140,160)" to="(220,160)"/>
<wire from="(270,90)" to="(270,140)"/>
<wire from="(470,110)" to="(470,290)"/>
<wire from="(290,50)" to="(310,50)"/>
<wire from="(330,130)" to="(330,140)"/>
<wire from="(350,200)" to="(350,260)"/>
<wire from="(390,210)" to="(410,210)"/>
<wire from="(240,90)" to="(270,90)"/>
<wire from="(350,260)" to="(350,310)"/>
<wire from="(240,80)" to="(320,80)"/>
<wire from="(430,90)" to="(430,110)"/>
<wire from="(240,100)" to="(260,100)"/>
<wire from="(190,100)" to="(190,310)"/>
<wire from="(160,280)" to="(430,280)"/>
<wire from="(380,220)" to="(410,220)"/>
<wire from="(430,240)" to="(430,280)"/>
<wire from="(370,230)" to="(410,230)"/>
<wire from="(340,170)" to="(380,170)"/>
<wire from="(160,120)" to="(160,280)"/>
<wire from="(350,140)" to="(350,200)"/>
<wire from="(320,70)" to="(320,80)"/>
<wire from="(430,110)" to="(470,110)"/>
<wire from="(320,130)" to="(320,140)"/>
<wire from="(400,50)" to="(400,200)"/>
<wire from="(170,80)" to="(170,290)"/>
<wire from="(450,70)" to="(490,70)"/>
<wire from="(330,80)" to="(350,80)"/>
<wire from="(380,170)" to="(380,220)"/>
<wire from="(190,100)" to="(200,100)"/>
<wire from="(220,120)" to="(220,160)"/>
<wire from="(260,200)" to="(320,200)"/>
<wire from="(260,100)" to="(260,200)"/>
<wire from="(340,230)" to="(370,230)"/>
<wire from="(350,80)" to="(350,140)"/>
<wire from="(380,70)" to="(410,70)"/>
<wire from="(400,50)" to="(410,50)"/>
<wire from="(140,120)" to="(160,120)"/>
<wire from="(330,200)" to="(350,200)"/>
<wire from="(290,170)" to="(310,170)"/>
<wire from="(380,70)" to="(380,170)"/>
<wire from="(290,110)" to="(310,110)"/>
<wire from="(250,110)" to="(250,260)"/>
<wire from="(330,140)" to="(350,140)"/>
<wire from="(170,290)" to="(470,290)"/>
<wire from="(250,260)" to="(320,260)"/>
<wire from="(340,110)" to="(390,110)"/>
<comp lib="0" loc="(350,310)" name="Pin">
<a name="facing" val="north"/>
<a name="tristate" val="false"/>
<a name="label" val="Clear"/>
<a name="labelloc" val="south"/>
</comp>
<comp lib="3" loc="(340,230)" name="Register">
<a name="width" val="32"/>
</comp>
<comp lib="0" loc="(490,70)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="32"/>
<a name="label" val="ReadData1"/>
<a name="labelloc" val="east"/>
</comp>
<comp lib="0" loc="(490,220)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="32"/>
<a name="label" val="ReadData2"/>
<a name="labelloc" val="east"/>
</comp>
<comp lib="0" loc="(140,80)" name="Pin">
<a name="width" val="2"/>
<a name="tristate" val="false"/>
<a name="label" val="ReadRegister1"/>
</comp>
<comp lib="0" loc="(190,310)" name="Pin">
<a name="facing" val="north"/>
<a name="tristate" val="false"/>
<a name="label" val="Write"/>
<a name="labelloc" val="south"/>
</comp>
<comp lib="3" loc="(340,170)" name="Register">
<a name="width" val="32"/>
</comp>
<comp lib="3" loc="(340,110)" name="Register">
<a name="width" val="32"/>
</comp>
<comp lib="0" loc="(140,230)" name="Pin">
<a name="width" val="32"/>
<a name="tristate" val="false"/>
<a name="label" val="WriteData"/>
</comp>
<comp lib="2" loc="(200,100)" name="Demultiplexer">
<a name="select" val="2"/>
<a name="enable" val="false"/>
</comp>
<comp lib="0" loc="(140,120)" name="Pin">
<a name="width" val="2"/>
<a name="tristate" val="false"/>
<a name="label" val="ReadRegister2"/>
</comp>
<comp lib="2" loc="(450,220)" name="Multiplexer">
<a name="select" val="2"/>
<a name="width" val="32"/>
<a name="enable" val="false"/>
</comp>
<comp lib="0" loc="(140,160)" name="Pin">
<a name="width" val="2"/>
<a name="tristate" val="false"/>
<a name="label" val="WriteRegister"/>
</comp>
<comp lib="2" loc="(450,70)" name="Multiplexer">
<a name="select" val="2"/>
<a name="width" val="32"/>
<a name="enable" val="false"/>
</comp>
<comp lib="3" loc="(340,50)" name="Register">
<a name="width" val="32"/>
</comp>
</circuit>
<circuit name="Registers4Z">
<a name="circuit" val="Registers4Z"/>
<a name="clabel" val=""/>
<a name="clabelup" val="east"/>
<a name="clabelfont" val="SansSerif plain 12"/>
<wire from="(140,230)" to="(290,230)"/>
<wire from="(400,200)" to="(410,200)"/>
<wire from="(390,110)" to="(390,210)"/>
<wire from="(340,50)" to="(400,50)"/>
<wire from="(370,80)" to="(370,230)"/>
<wire from="(390,60)" to="(410,60)"/>
<wire from="(290,110)" to="(290,170)"/>
<wire from="(290,50)" to="(290,110)"/>
<wire from="(270,140)" to="(320,140)"/>
<wire from="(450,220)" to="(490,220)"/>
<wire from="(140,80)" to="(170,80)"/>
<wire from="(330,190)" to="(330,200)"/>
<wire from="(390,60)" to="(390,110)"/>
<wire from="(290,170)" to="(290,230)"/>
<wire from="(370,80)" to="(410,80)"/>
<wire from="(320,190)" to="(320,200)"/>
<wire from="(340,230)" to="(340,250)"/>
<wire from="(330,70)" to="(330,80)"/>
<wire from="(140,160)" to="(220,160)"/>
<wire from="(270,90)" to="(270,140)"/>
<wire from="(470,110)" to="(470,290)"/>
<wire from="(330,250)" to="(340,250)"/>
<wire from="(290,50)" to="(310,50)"/>
<wire from="(330,130)" to="(330,140)"/>
<wire from="(390,210)" to="(410,210)"/>
<wire from="(240,90)" to="(270,90)"/>
<wire from="(240,80)" to="(320,80)"/>
<wire from="(430,90)" to="(430,110)"/>
<wire from="(240,100)" to="(260,100)"/>
<wire from="(190,100)" to="(190,310)"/>
<wire from="(160,280)" to="(430,280)"/>
<wire from="(380,220)" to="(410,220)"/>
<wire from="(430,240)" to="(430,280)"/>
<wire from="(370,230)" to="(410,230)"/>
<wire from="(340,170)" to="(380,170)"/>
<wire from="(160,120)" to="(160,280)"/>
<wire from="(350,140)" to="(350,200)"/>
<wire from="(320,70)" to="(320,80)"/>
<wire from="(430,110)" to="(470,110)"/>
<wire from="(320,130)" to="(320,140)"/>
<wire from="(400,50)" to="(400,200)"/>
<wire from="(170,80)" to="(170,290)"/>
<wire from="(450,70)" to="(490,70)"/>
<wire from="(330,80)" to="(350,80)"/>
<wire from="(190,100)" to="(200,100)"/>
<wire from="(380,170)" to="(380,220)"/>
<wire from="(220,120)" to="(220,160)"/>
<wire from="(260,200)" to="(320,200)"/>
<wire from="(340,230)" to="(370,230)"/>
<wire from="(260,100)" to="(260,200)"/>
<wire from="(350,80)" to="(350,140)"/>
<wire from="(350,200)" to="(350,310)"/>
<wire from="(380,70)" to="(410,70)"/>
<wire from="(400,50)" to="(410,50)"/>
<wire from="(140,120)" to="(160,120)"/>
<wire from="(330,200)" to="(350,200)"/>
<wire from="(290,170)" to="(310,170)"/>
<wire from="(380,70)" to="(380,170)"/>
<wire from="(290,110)" to="(310,110)"/>
<wire from="(330,140)" to="(350,140)"/>
<wire from="(170,290)" to="(470,290)"/>
<wire from="(340,110)" to="(390,110)"/>
<comp lib="0" loc="(140,120)" name="Pin">
<a name="width" val="2"/>
<a name="tristate" val="false"/>
<a name="label" val="ReadRegister2"/>
</comp>
<comp lib="0" loc="(140,230)" name="Pin">
<a name="width" val="32"/>
<a name="tristate" val="false"/>
<a name="label" val="WriteData"/>
</comp>
<comp lib="3" loc="(340,170)" name="Register">
<a name="width" val="32"/>
</comp>
<comp lib="0" loc="(330,250)" name="Constant">
<a name="width" val="32"/>
<a name="value" val="0x0"/>
</comp>
<comp lib="2" loc="(450,70)" name="Multiplexer">
<a name="select" val="2"/>
<a name="width" val="32"/>
<a name="enable" val="false"/>
</comp>
<comp lib="0" loc="(490,70)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="32"/>
<a name="label" val="ReadData1"/>
<a name="labelloc" val="east"/>
</comp>
<comp lib="3" loc="(340,110)" name="Register">
<a name="width" val="32"/>
</comp>
<comp lib="0" loc="(350,310)" name="Pin">
<a name="facing" val="north"/>
<a name="tristate" val="false"/>
<a name="label" val="Clear"/>
<a name="labelloc" val="south"/>
</comp>
<comp lib="2" loc="(200,100)" name="Demultiplexer">
<a name="select" val="2"/>
<a name="enable" val="false"/>
</comp>
<comp lib="0" loc="(190,310)" name="Pin">
<a name="facing" val="north"/>
<a name="tristate" val="false"/>
<a name="label" val="Write"/>
<a name="labelloc" val="south"/>
</comp>
<comp lib="0" loc="(490,220)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="32"/>
<a name="label" val="ReadData2"/>
<a name="labelloc" val="east"/>
</comp>
<comp lib="0" loc="(140,80)" name="Pin">
<a name="width" val="2"/>
<a name="tristate" val="false"/>
<a name="label" val="ReadRegister1"/>
</comp>
<comp lib="3" loc="(340,50)" name="Register">
<a name="width" val="32"/>
</comp>
<comp lib="2" loc="(450,220)" name="Multiplexer">
<a name="select" val="2"/>
<a name="width" val="32"/>
<a name="enable" val="false"/>
</comp>
<comp lib="0" loc="(140,160)" name="Pin">
<a name="width" val="2"/>
<a name="tristate" val="false"/>
<a name="label" val="WriteRegister"/>
</comp>
</circuit>
<circuit name="WordAddress">
<a name="circuit" val="WordAddress"/>
<a name="clabel" val=""/>
<a name="clabelup" val="east"/>
<a name="clabelfont" val="SansSerif plain 12"/>
<wire from="(250,40)" to="(270,40)"/>
<wire from="(170,30)" to="(210,30)"/>
<wire from="(170,40)" to="(190,40)"/>
<wire from="(190,90)" to="(210,90)"/>
<wire from="(190,40)" to="(190,50)"/>
<wire from="(190,50)" to="(210,50)"/>
<comp lib="0" loc="(270,40)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="label" val="Unaligned"/>
<a name="labelloc" val="east"/>
</comp>
<comp lib="0" loc="(210,90)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="8"/>
<a name="label" val="WordAddress"/>
<a name="labelloc" val="east"/>
</comp>
<comp lib="0" loc="(190,90)" name="Splitter">
<a name="facing" val="west"/>
<a name="fanout" val="8"/>
<a name="incoming" val="8"/>
<a name="appear" val="legacy"/>
</comp>
<comp lib="1" loc="(250,40)" name="NOR Gate">
<a name="size" val="30"/>
<a name="inputs" val="3"/>
</comp>
<comp lib="0" loc="(150,190)" name="Pin">
<a name="width" val="32"/>
<a name="tristate" val="false"/>
<a name="label" val="ByteAddress"/>
</comp>
<comp lib="0" loc="(150,190)" name="Splitter">
<a name="fanout" val="32"/>
<a name="incoming" val="32"/>
<a name="appear" val="legacy"/>
</comp>
</circuit>
<circuit name="MemoryData">
<a name="circuit" val="MemoryData"/>
<a name="clabel" val=""/>
<a name="clabelup" val="east"/>
<a name="clabelfont" val="SansSerif plain 12"/>
<wire from="(140,230)" to="(210,230)"/>
<wire from="(200,170)" to="(220,170)"/>
<wire from="(170,250)" to="(190,250)"/>
<wire from="(190,70)" to="(190,170)"/>
<wire from="(80,250)" to="(100,250)"/>
<wire from="(200,90)" to="(200,170)"/>
<wire from="(230,80)" to="(230,90)"/>
<wire from="(160,170)" to="(190,170)"/>
<wire from="(210,250)" to="(230,250)"/>
<wire from="(160,70)" to="(180,70)"/>
<wire from="(140,230)" to="(140,250)"/>
<wire from="(210,90)" to="(210,230)"/>
<wire from="(230,180)" to="(230,250)"/>
<wire from="(170,250)" to="(170,270)"/>
<wire from="(180,70)" to="(180,90)"/>
<wire from="(210,90)" to="(230,90)"/>
<wire from="(120,250)" to="(140,250)"/>
<wire from="(240,170)" to="(260,170)"/>
<wire from="(190,70)" to="(220,70)"/>
<wire from="(240,70)" to="(260,70)"/>
<wire from="(180,90)" to="(200,90)"/>
<wire from="(80,250)" to="(80,270)"/>
<comp lib="0" loc="(80,270)" name="Pin">
<a name="facing" val="north"/>
<a name="tristate" val="false"/>
<a name="label" val="Write"/>
<a name="labelloc" val="south"/>
</comp>
<comp lib="0" loc="(260,70)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="32"/>
<a name="label" val="ReadData"/>
<a name="labelloc" val="east"/>
</comp>
<comp lib="0" loc="(160,70)" name="Pin">
<a name="width" val="32"/>
<a name="label" val="WriteData"/>
</comp>
<comp lib="1" loc="(240,170)" name="Controlled Buffer">
<a name="width" val="32"/>
</comp>
<comp lib="0" loc="(160,170)" name="Pin">
<a name="width" val="32"/>
<a name="label" val="FromMemory"/>
</comp>
<comp lib="1" loc="(120,250)" name="NOT Gate">
<a name="size" val="20"/>
</comp>
<comp lib="1" loc="(210,250)" name="NOT Gate">
<a name="size" val="20"/>
</comp>
<comp lib="0" loc="(260,170)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="32"/>
<a name="label" val="ToMemory"/>
<a name="labelloc" val="east"/>
</comp>
<comp lib="1" loc="(240,70)" name="Controlled Buffer">
<a name="width" val="32"/>
</comp>
<comp lib="0" loc="(170,270)" name="Pin">
<a name="facing" val="north"/>
<a name="tristate" val="false"/>
<a name="label" val="Read"/>
<a name="labelloc" val="south"/>
</comp>
</circuit>
</project>
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/dongfenga/SingleCycle-CPU.git
git@gitee.com:dongfenga/SingleCycle-CPU.git
dongfenga
SingleCycle-CPU
SingleCycle-CPU
master

搜索帮助

0d507c66 1850385 C8b1a773 1850385