This commit is contained in:
moonleay 2024-12-09 00:14:14 +01:00
commit 6780dd387d
Signed by: moonleay
GPG key ID: 82667543CCD715FB
10 changed files with 12910 additions and 0 deletions

230
2_to_1_multiplexer.dig Normal file
View file

@ -0,0 +1,230 @@
<?xml version="1.0" encoding="utf-8"?>
<circuit>
<version>2</version>
<attributes/>
<visualElements>
<visualElement>
<elementName>Out</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>O</string>
</entry>
</elementAttributes>
<pos x="1060" y="520"/>
</visualElement>
<visualElement>
<elementName>In</elementName>
<elementAttributes>
<entry>
<string>rotation</string>
<rotation rotation="3"/>
</entry>
<entry>
<string>Label</string>
<string>I_A</string>
</entry>
</elementAttributes>
<pos x="700" y="340"/>
</visualElement>
<visualElement>
<elementName>In</elementName>
<elementAttributes>
<entry>
<string>rotation</string>
<rotation rotation="3"/>
</entry>
<entry>
<string>Label</string>
<string>I_CTRL</string>
</entry>
</elementAttributes>
<pos x="640" y="340"/>
</visualElement>
<visualElement>
<elementName>Ground</elementName>
<elementAttributes/>
<pos x="700" y="760"/>
</visualElement>
<visualElement>
<elementName>FGPFET</elementName>
<elementAttributes/>
<pos x="540" y="440"/>
</visualElement>
<visualElement>
<elementName>NFET</elementName>
<elementAttributes/>
<pos x="540" y="520"/>
</visualElement>
<visualElement>
<elementName>In</elementName>
<elementAttributes>
<entry>
<string>rotation</string>
<rotation rotation="3"/>
</entry>
<entry>
<string>Label</string>
<string>I_B</string>
</entry>
</elementAttributes>
<pos x="820" y="340"/>
</visualElement>
<visualElement>
<elementName>FGPFET</elementName>
<elementAttributes/>
<pos x="800" y="440"/>
</visualElement>
<visualElement>
<elementName>not_gate.dig</elementName>
<elementAttributes/>
<pos x="700" y="380"/>
</visualElement>
<visualElement>
<elementName>NFET</elementName>
<elementAttributes/>
<pos x="800" y="560"/>
</visualElement>
<visualElement>
<elementName>nor_gate.dig</elementName>
<elementAttributes/>
<pos x="860" y="500"/>
</visualElement>
<visualElement>
<elementName>not_gate.dig</elementName>
<elementAttributes/>
<pos x="940" y="520"/>
</visualElement>
</visualElements>
<wires>
<wire>
<p1 x="520" y="560"/>
<p2 x="540" y="560"/>
</wire>
<wire>
<p1 x="560" y="660"/>
<p2 x="700" y="660"/>
</wire>
<wire>
<p1 x="700" y="660"/>
<p2 x="820" y="660"/>
</wire>
<wire>
<p1 x="820" y="500"/>
<p2 x="860" y="500"/>
</wire>
<wire>
<p1 x="560" y="500"/>
<p2 x="760" y="500"/>
</wire>
<wire>
<p1 x="660" y="360"/>
<p2 x="700" y="360"/>
</wire>
<wire>
<p1 x="920" y="520"/>
<p2 x="940" y="520"/>
</wire>
<wire>
<p1 x="1000" y="520"/>
<p2 x="1060" y="520"/>
</wire>
<wire>
<p1 x="560" y="440"/>
<p2 x="660" y="440"/>
</wire>
<wire>
<p1 x="780" y="600"/>
<p2 x="800" y="600"/>
</wire>
<wire>
<p1 x="760" y="540"/>
<p2 x="860" y="540"/>
</wire>
<wire>
<p1 x="520" y="380"/>
<p2 x="540" y="380"/>
</wire>
<wire>
<p1 x="760" y="380"/>
<p2 x="780" y="380"/>
</wire>
<wire>
<p1 x="540" y="380"/>
<p2 x="640" y="380"/>
</wire>
<wire>
<p1 x="780" y="380"/>
<p2 x="800" y="380"/>
</wire>
<wire>
<p1 x="640" y="380"/>
<p2 x="700" y="380"/>
</wire>
<wire>
<p1 x="640" y="340"/>
<p2 x="640" y="380"/>
</wire>
<wire>
<p1 x="800" y="380"/>
<p2 x="800" y="440"/>
</wire>
<wire>
<p1 x="560" y="480"/>
<p2 x="560" y="500"/>
</wire>
<wire>
<p1 x="560" y="560"/>
<p2 x="560" y="660"/>
</wire>
<wire>
<p1 x="560" y="500"/>
<p2 x="560" y="520"/>
</wire>
<wire>
<p1 x="660" y="360"/>
<p2 x="660" y="440"/>
</wire>
<wire>
<p1 x="820" y="340"/>
<p2 x="820" y="440"/>
</wire>
<wire>
<p1 x="820" y="600"/>
<p2 x="820" y="660"/>
</wire>
<wire>
<p1 x="820" y="480"/>
<p2 x="820" y="500"/>
</wire>
<wire>
<p1 x="820" y="500"/>
<p2 x="820" y="560"/>
</wire>
<wire>
<p1 x="520" y="380"/>
<p2 x="520" y="560"/>
</wire>
<wire>
<p1 x="760" y="500"/>
<p2 x="760" y="540"/>
</wire>
<wire>
<p1 x="780" y="380"/>
<p2 x="780" y="600"/>
</wire>
<wire>
<p1 x="700" y="660"/>
<p2 x="700" y="760"/>
</wire>
<wire>
<p1 x="700" y="340"/>
<p2 x="700" y="360"/>
</wire>
<wire>
<p1 x="540" y="380"/>
<p2 x="540" y="440"/>
</wire>
</wires>
<measurementOrdering/>
</circuit>

View file

@ -0,0 +1,229 @@
<?xml version="1.0" encoding="utf-8"?>
<circuit>
<version>2</version>
<attributes/>
<visualElements>
<visualElement>
<elementName>In</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>I_A</string>
</entry>
</elementAttributes>
<pos x="520" y="720"/>
</visualElement>
<visualElement>
<elementName>In</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>I_B</string>
</entry>
</elementAttributes>
<pos x="620" y="720"/>
</visualElement>
<visualElement>
<elementName>In</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>I_CTRL</string>
</entry>
</elementAttributes>
<pos x="400" y="900"/>
</visualElement>
<visualElement>
<elementName>Out</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>O</string>
</entry>
</elementAttributes>
<pos x="860" y="900"/>
</visualElement>
<visualElement>
<elementName>FGPFET</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>PMOS / PD</string>
</entry>
</elementAttributes>
<pos x="500" y="760"/>
</visualElement>
<visualElement>
<elementName>NFET</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>NMOS / PU</string>
</entry>
</elementAttributes>
<pos x="500" y="820"/>
</visualElement>
<visualElement>
<elementName>FGPFET</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>PMOS / PD</string>
</entry>
</elementAttributes>
<pos x="600" y="1020"/>
</visualElement>
<visualElement>
<elementName>NFET</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>NMOS / PU</string>
</entry>
</elementAttributes>
<pos x="600" y="960"/>
</visualElement>
<visualElement>
<elementName>Ground</elementName>
<elementAttributes/>
<pos x="560" y="1140"/>
</visualElement>
<visualElement>
<elementName>FGPFET</elementName>
<elementAttributes/>
<pos x="760" y="840"/>
</visualElement>
<visualElement>
<elementName>FGNFET</elementName>
<elementAttributes/>
<pos x="760" y="920"/>
</visualElement>
</visualElements>
<wires>
<wire>
<p1 x="740" y="960"/>
<p2 x="760" y="960"/>
</wire>
<wire>
<p1 x="520" y="800"/>
<p2 x="780" y="800"/>
</wire>
<wire>
<p1 x="780" y="900"/>
<p2 x="860" y="900"/>
</wire>
<wire>
<p1 x="400" y="900"/>
<p2 x="420" y="900"/>
</wire>
<wire>
<p1 x="580" y="900"/>
<p2 x="740" y="900"/>
</wire>
<wire>
<p1 x="420" y="900"/>
<p2 x="580" y="900"/>
</wire>
<wire>
<p1 x="740" y="840"/>
<p2 x="760" y="840"/>
</wire>
<wire>
<p1 x="620" y="1000"/>
<p2 x="780" y="1000"/>
</wire>
<wire>
<p1 x="580" y="1000"/>
<p2 x="600" y="1000"/>
</wire>
<wire>
<p1 x="420" y="760"/>
<p2 x="480" y="760"/>
</wire>
<wire>
<p1 x="480" y="760"/>
<p2 x="500" y="760"/>
</wire>
<wire>
<p1 x="520" y="1100"/>
<p2 x="560" y="1100"/>
</wire>
<wire>
<p1 x="560" y="1100"/>
<p2 x="620" y="1100"/>
</wire>
<wire>
<p1 x="480" y="860"/>
<p2 x="500" y="860"/>
</wire>
<wire>
<p1 x="480" y="760"/>
<p2 x="480" y="860"/>
</wire>
<wire>
<p1 x="560" y="1100"/>
<p2 x="560" y="1140"/>
</wire>
<wire>
<p1 x="420" y="760"/>
<p2 x="420" y="900"/>
</wire>
<wire>
<p1 x="740" y="840"/>
<p2 x="740" y="900"/>
</wire>
<wire>
<p1 x="740" y="900"/>
<p2 x="740" y="960"/>
</wire>
<wire>
<p1 x="580" y="900"/>
<p2 x="580" y="1000"/>
</wire>
<wire>
<p1 x="600" y="1000"/>
<p2 x="600" y="1020"/>
</wire>
<wire>
<p1 x="520" y="800"/>
<p2 x="520" y="820"/>
</wire>
<wire>
<p1 x="520" y="860"/>
<p2 x="520" y="1100"/>
</wire>
<wire>
<p1 x="520" y="720"/>
<p2 x="520" y="760"/>
</wire>
<wire>
<p1 x="620" y="1000"/>
<p2 x="620" y="1020"/>
</wire>
<wire>
<p1 x="620" y="1060"/>
<p2 x="620" y="1100"/>
</wire>
<wire>
<p1 x="620" y="720"/>
<p2 x="620" y="960"/>
</wire>
<wire>
<p1 x="780" y="880"/>
<p2 x="780" y="900"/>
</wire>
<wire>
<p1 x="780" y="960"/>
<p2 x="780" y="1000"/>
</wire>
<wire>
<p1 x="780" y="800"/>
<p2 x="780" y="840"/>
</wire>
<wire>
<p1 x="780" y="900"/>
<p2 x="780" y="920"/>
</wire>
</wires>
<measurementOrdering/>
</circuit>

428
ALU.dig Normal file
View file

@ -0,0 +1,428 @@
<?xml version="1.0" encoding="utf-8"?>
<circuit>
<version>2</version>
<attributes/>
<visualElements>
<visualElement>
<elementName>In</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>I_A</string>
</entry>
<entry>
<string>Bits</string>
<int>32</int>
</entry>
</elementAttributes>
<pos x="-240" y="100"/>
</visualElement>
<visualElement>
<elementName>In</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>I_B</string>
</entry>
<entry>
<string>Bits</string>
<int>32</int>
</entry>
</elementAttributes>
<pos x="-240" y="480"/>
</visualElement>
<visualElement>
<elementName>Out</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>O</string>
</entry>
<entry>
<string>Bits</string>
<int>32</int>
</entry>
</elementAttributes>
<pos x="240" y="420"/>
</visualElement>
<visualElement>
<elementName>Multiplexer</elementName>
<elementAttributes>
<entry>
<string>Selector Bits</string>
<int>4</int>
</entry>
<entry>
<string>Bits</string>
<int>32</int>
</entry>
</elementAttributes>
<pos x="180" y="260"/>
</visualElement>
<visualElement>
<elementName>Sub</elementName>
<elementAttributes>
<entry>
<string>Bits</string>
<int>32</int>
</entry>
</elementAttributes>
<pos x="-40" y="400"/>
</visualElement>
<visualElement>
<elementName>In</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>I_SEL</string>
</entry>
<entry>
<string>Bits</string>
<int>4</int>
</entry>
</elementAttributes>
<pos x="-240" y="600"/>
</visualElement>
<visualElement>
<elementName>Or</elementName>
<elementAttributes>
<entry>
<string>Bits</string>
<int>32</int>
</entry>
</elementAttributes>
<pos x="-40" y="240"/>
</visualElement>
<visualElement>
<elementName>And</elementName>
<elementAttributes>
<entry>
<string>Bits</string>
<int>32</int>
</entry>
</elementAttributes>
<pos x="-40" y="160"/>
</visualElement>
<visualElement>
<elementName>Const</elementName>
<elementAttributes>
<entry>
<string>Value</string>
<long>0</long>
</entry>
<entry>
<string>Bits</string>
<int>32</int>
</entry>
</elementAttributes>
<pos x="60" y="440"/>
</visualElement>
<visualElement>
<elementName>Ground</elementName>
<elementAttributes>
<entry>
<string>rotation</string>
<rotation rotation="1"/>
</entry>
</elementAttributes>
<pos x="40" y="340"/>
</visualElement>
<visualElement>
<elementName>Ground</elementName>
<elementAttributes>
<entry>
<string>rotation</string>
<rotation reference="../../../../visualElement[10]/elementAttributes/entry/rotation"/>
</entry>
</elementAttributes>
<pos x="40" y="420"/>
</visualElement>
<visualElement>
<elementName>Add</elementName>
<elementAttributes>
<entry>
<string>Bits</string>
<int>32</int>
</entry>
</elementAttributes>
<pos x="-40" y="320"/>
</visualElement>
<visualElement>
<elementName>Const</elementName>
<elementAttributes>
<entry>
<string>Value</string>
<long>0</long>
</entry>
</elementAttributes>
<pos x="-160" y="360"/>
</visualElement>
</visualElements>
<wires>
<wire>
<p1 x="-240" y="480"/>
<p2 x="-220" y="480"/>
</wire>
<wire>
<p1 x="140" y="480"/>
<p2 x="180" y="480"/>
</wire>
<wire>
<p1 x="-220" y="320"/>
<p2 x="-60" y="320"/>
</wire>
<wire>
<p1 x="80" y="320"/>
<p2 x="180" y="320"/>
</wire>
<wire>
<p1 x="20" y="320"/>
<p2 x="40" y="320"/>
</wire>
<wire>
<p1 x="-60" y="320"/>
<p2 x="-40" y="320"/>
</wire>
<wire>
<p1 x="-220" y="160"/>
<p2 x="-40" y="160"/>
</wire>
<wire>
<p1 x="-240" y="100"/>
<p2 x="-220" y="100"/>
</wire>
<wire>
<p1 x="20" y="260"/>
<p2 x="140" y="260"/>
</wire>
<wire>
<p1 x="160" y="260"/>
<p2 x="180" y="260"/>
</wire>
<wire>
<p1 x="-220" y="420"/>
<p2 x="-40" y="420"/>
</wire>
<wire>
<p1 x="140" y="420"/>
<p2 x="180" y="420"/>
</wire>
<wire>
<p1 x="220" y="420"/>
<p2 x="240" y="420"/>
</wire>
<wire>
<p1 x="20" y="420"/>
<p2 x="40" y="420"/>
</wire>
<wire>
<p1 x="-220" y="360"/>
<p2 x="-200" y="360"/>
</wire>
<wire>
<p1 x="140" y="360"/>
<p2 x="180" y="360"/>
</wire>
<wire>
<p1 x="-160" y="360"/>
<p2 x="-80" y="360"/>
</wire>
<wire>
<p1 x="-80" y="360"/>
<p2 x="-40" y="360"/>
</wire>
<wire>
<p1 x="-200" y="200"/>
<p2 x="-40" y="200"/>
</wire>
<wire>
<p1 x="140" y="520"/>
<p2 x="180" y="520"/>
</wire>
<wire>
<p1 x="140" y="460"/>
<p2 x="180" y="460"/>
</wire>
<wire>
<p1 x="40" y="300"/>
<p2 x="180" y="300"/>
</wire>
<wire>
<p1 x="20" y="400"/>
<p2 x="80" y="400"/>
</wire>
<wire>
<p1 x="-60" y="400"/>
<p2 x="-40" y="400"/>
</wire>
<wire>
<p1 x="140" y="400"/>
<p2 x="180" y="400"/>
</wire>
<wire>
<p1 x="-220" y="240"/>
<p2 x="-40" y="240"/>
</wire>
<wire>
<p1 x="140" y="560"/>
<p2 x="180" y="560"/>
</wire>
<wire>
<p1 x="-220" y="340"/>
<p2 x="-40" y="340"/>
</wire>
<wire>
<p1 x="140" y="340"/>
<p2 x="180" y="340"/>
</wire>
<wire>
<p1 x="20" y="340"/>
<p2 x="40" y="340"/>
</wire>
<wire>
<p1 x="20" y="180"/>
<p2 x="160" y="180"/>
</wire>
<wire>
<p1 x="140" y="500"/>
<p2 x="180" y="500"/>
</wire>
<wire>
<p1 x="140" y="280"/>
<p2 x="180" y="280"/>
</wire>
<wire>
<p1 x="-200" y="280"/>
<p2 x="-40" y="280"/>
</wire>
<wire>
<p1 x="-240" y="600"/>
<p2 x="200" y="600"/>
</wire>
<wire>
<p1 x="60" y="440"/>
<p2 x="140" y="440"/>
</wire>
<wire>
<p1 x="-80" y="440"/>
<p2 x="-40" y="440"/>
</wire>
<wire>
<p1 x="140" y="440"/>
<p2 x="180" y="440"/>
</wire>
<wire>
<p1 x="140" y="380"/>
<p2 x="180" y="380"/>
</wire>
<wire>
<p1 x="140" y="540"/>
<p2 x="180" y="540"/>
</wire>
<wire>
<p1 x="80" y="320"/>
<p2 x="80" y="400"/>
</wire>
<wire>
<p1 x="160" y="180"/>
<p2 x="160" y="260"/>
</wire>
<wire>
<p1 x="-200" y="200"/>
<p2 x="-200" y="280"/>
</wire>
<wire>
<p1 x="-200" y="280"/>
<p2 x="-200" y="360"/>
</wire>
<wire>
<p1 x="200" y="580"/>
<p2 x="200" y="600"/>
</wire>
<wire>
<p1 x="40" y="300"/>
<p2 x="40" y="320"/>
</wire>
<wire>
<p1 x="-220" y="340"/>
<p2 x="-220" y="360"/>
</wire>
<wire>
<p1 x="-220" y="100"/>
<p2 x="-220" y="160"/>
</wire>
<wire>
<p1 x="-220" y="160"/>
<p2 x="-220" y="240"/>
</wire>
<wire>
<p1 x="-220" y="240"/>
<p2 x="-220" y="320"/>
</wire>
<wire>
<p1 x="-220" y="360"/>
<p2 x="-220" y="420"/>
</wire>
<wire>
<p1 x="-220" y="420"/>
<p2 x="-220" y="480"/>
</wire>
<wire>
<p1 x="-60" y="320"/>
<p2 x="-60" y="400"/>
</wire>
<wire>
<p1 x="140" y="260"/>
<p2 x="140" y="280"/>
</wire>
<wire>
<p1 x="140" y="340"/>
<p2 x="140" y="360"/>
</wire>
<wire>
<p1 x="140" y="400"/>
<p2 x="140" y="420"/>
</wire>
<wire>
<p1 x="140" y="540"/>
<p2 x="140" y="560"/>
</wire>
<wire>
<p1 x="140" y="420"/>
<p2 x="140" y="440"/>
</wire>
<wire>
<p1 x="140" y="440"/>
<p2 x="140" y="460"/>
</wire>
<wire>
<p1 x="140" y="460"/>
<p2 x="140" y="480"/>
</wire>
<wire>
<p1 x="140" y="480"/>
<p2 x="140" y="500"/>
</wire>
<wire>
<p1 x="140" y="360"/>
<p2 x="140" y="380"/>
</wire>
<wire>
<p1 x="140" y="500"/>
<p2 x="140" y="520"/>
</wire>
<wire>
<p1 x="140" y="380"/>
<p2 x="140" y="400"/>
</wire>
<wire>
<p1 x="140" y="520"/>
<p2 x="140" y="540"/>
</wire>
<wire>
<p1 x="-80" y="360"/>
<p2 x="-80" y="440"/>
</wire>
</wires>
<measurementOrdering/>
</circuit>

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,182 @@
<?xml version="1.0" encoding="utf-8"?>
<circuit>
<version>2</version>
<attributes/>
<visualElements>
<visualElement>
<elementName>Out</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>O</string>
</entry>
</elementAttributes>
<pos x="860" y="380"/>
</visualElement>
<visualElement>
<elementName>In</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>I_A</string>
</entry>
</elementAttributes>
<pos x="260" y="220"/>
</visualElement>
<visualElement>
<elementName>In</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>I_B</string>
</entry>
</elementAttributes>
<pos x="260" y="580"/>
</visualElement>
<visualElement>
<elementName>PFET</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>PMOS / PD</string>
</entry>
</elementAttributes>
<pos x="700" y="280"/>
</visualElement>
<visualElement>
<elementName>FGNFET</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>NMOS / PU</string>
</entry>
</elementAttributes>
<pos x="480" y="460"/>
</visualElement>
<visualElement>
<elementName>Const</elementName>
<elementAttributes/>
<pos x="540" y="160"/>
</visualElement>
<visualElement>
<elementName>FGNFET</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>NMOS / PU</string>
</entry>
</elementAttributes>
<pos x="480" y="540"/>
</visualElement>
<visualElement>
<elementName>Ground</elementName>
<elementAttributes/>
<pos x="500" y="660"/>
</visualElement>
<visualElement>
<elementName>PFET</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>PMOS / PD</string>
</entry>
</elementAttributes>
<pos x="440" y="280"/>
</visualElement>
</visualElements>
<wires>
<wire>
<p1 x="260" y="580"/>
<p2 x="320" y="580"/>
</wire>
<wire>
<p1 x="320" y="580"/>
<p2 x="480" y="580"/>
</wire>
<wire>
<p1 x="280" y="500"/>
<p2 x="480" y="500"/>
</wire>
<wire>
<p1 x="600" y="280"/>
<p2 x="700" y="280"/>
</wire>
<wire>
<p1 x="320" y="280"/>
<p2 x="440" y="280"/>
</wire>
<wire>
<p1 x="460" y="200"/>
<p2 x="540" y="200"/>
</wire>
<wire>
<p1 x="540" y="200"/>
<p2 x="720" y="200"/>
</wire>
<wire>
<p1 x="260" y="220"/>
<p2 x="280" y="220"/>
</wire>
<wire>
<p1 x="280" y="220"/>
<p2 x="600" y="220"/>
</wire>
<wire>
<p1 x="460" y="380"/>
<p2 x="500" y="380"/>
</wire>
<wire>
<p1 x="500" y="380"/>
<p2 x="720" y="380"/>
</wire>
<wire>
<p1 x="720" y="380"/>
<p2 x="860" y="380"/>
</wire>
<wire>
<p1 x="320" y="280"/>
<p2 x="320" y="580"/>
</wire>
<wire>
<p1 x="720" y="200"/>
<p2 x="720" y="280"/>
</wire>
<wire>
<p1 x="720" y="320"/>
<p2 x="720" y="380"/>
</wire>
<wire>
<p1 x="500" y="580"/>
<p2 x="500" y="660"/>
</wire>
<wire>
<p1 x="500" y="500"/>
<p2 x="500" y="540"/>
</wire>
<wire>
<p1 x="500" y="380"/>
<p2 x="500" y="460"/>
</wire>
<wire>
<p1 x="280" y="220"/>
<p2 x="280" y="500"/>
</wire>
<wire>
<p1 x="600" y="220"/>
<p2 x="600" y="280"/>
</wire>
<wire>
<p1 x="540" y="160"/>
<p2 x="540" y="200"/>
</wire>
<wire>
<p1 x="460" y="200"/>
<p2 x="460" y="280"/>
</wire>
<wire>
<p1 x="460" y="320"/>
<p2 x="460" y="380"/>
</wire>
</wires>
<measurementOrdering/>
</circuit>

View file

@ -0,0 +1,179 @@
<?xml version="1.0" encoding="utf-8"?>
<circuit>
<version>2</version>
<attributes/>
<visualElements>
<visualElement>
<elementName>Out</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>O</string>
</entry>
</elementAttributes>
<pos x="1060" y="420"/>
</visualElement>
<visualElement>
<elementName>In</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>I_A</string>
</entry>
</elementAttributes>
<pos x="400" y="340"/>
</visualElement>
<visualElement>
<elementName>In</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>I_B</string>
</entry>
</elementAttributes>
<pos x="400" y="560"/>
</visualElement>
<visualElement>
<elementName>NFET</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>NMOS / PU</string>
</entry>
</elementAttributes>
<pos x="520" y="520"/>
</visualElement>
<visualElement>
<elementName>PFET</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>PMOS / PD</string>
</entry>
</elementAttributes>
<pos x="680" y="320"/>
</visualElement>
<visualElement>
<elementName>NFET</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>NMOS / PU</string>
</entry>
</elementAttributes>
<pos x="800" y="520"/>
</visualElement>
<visualElement>
<elementName>Ground</elementName>
<elementAttributes/>
<pos x="820" y="620"/>
</visualElement>
<visualElement>
<elementName>Ground</elementName>
<elementAttributes/>
<pos x="540" y="620"/>
</visualElement>
<visualElement>
<elementName>PFET</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>PMOS / PD</string>
</entry>
</elementAttributes>
<pos x="680" y="200"/>
</visualElement>
<visualElement>
<elementName>Const</elementName>
<elementAttributes/>
<pos x="700" y="140"/>
</visualElement>
</visualElements>
<wires>
<wire>
<p1 x="400" y="560"/>
<p2 x="480" y="560"/>
</wire>
<wire>
<p1 x="760" y="560"/>
<p2 x="800" y="560"/>
</wire>
<wire>
<p1 x="480" y="560"/>
<p2 x="520" y="560"/>
</wire>
<wire>
<p1 x="480" y="320"/>
<p2 x="680" y="320"/>
</wire>
<wire>
<p1 x="400" y="340"/>
<p2 x="440" y="340"/>
</wire>
<wire>
<p1 x="440" y="500"/>
<p2 x="760" y="500"/>
</wire>
<wire>
<p1 x="540" y="420"/>
<p2 x="700" y="420"/>
</wire>
<wire>
<p1 x="700" y="420"/>
<p2 x="820" y="420"/>
</wire>
<wire>
<p1 x="820" y="420"/>
<p2 x="1060" y="420"/>
</wire>
<wire>
<p1 x="440" y="200"/>
<p2 x="680" y="200"/>
</wire>
<wire>
<p1 x="480" y="320"/>
<p2 x="480" y="560"/>
</wire>
<wire>
<p1 x="820" y="560"/>
<p2 x="820" y="620"/>
</wire>
<wire>
<p1 x="820" y="420"/>
<p2 x="820" y="520"/>
</wire>
<wire>
<p1 x="440" y="200"/>
<p2 x="440" y="340"/>
</wire>
<wire>
<p1 x="440" y="340"/>
<p2 x="440" y="500"/>
</wire>
<wire>
<p1 x="760" y="500"/>
<p2 x="760" y="560"/>
</wire>
<wire>
<p1 x="540" y="560"/>
<p2 x="540" y="620"/>
</wire>
<wire>
<p1 x="540" y="420"/>
<p2 x="540" y="520"/>
</wire>
<wire>
<p1 x="700" y="360"/>
<p2 x="700" y="420"/>
</wire>
<wire>
<p1 x="700" y="240"/>
<p2 x="700" y="320"/>
</wire>
<wire>
<p1 x="700" y="140"/>
<p2 x="700" y="200"/>
</wire>
</wires>
<measurementOrdering/>
</circuit>

View file

@ -0,0 +1,104 @@
<?xml version="1.0" encoding="utf-8"?>
<circuit>
<version>2</version>
<attributes/>
<visualElements>
<visualElement>
<elementName>Out</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>O</string>
</entry>
</elementAttributes>
<pos x="420" y="220"/>
</visualElement>
<visualElement>
<elementName>FGPFET</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>PMOS / PD</string>
</entry>
</elementAttributes>
<pos x="300" y="160"/>
</visualElement>
<visualElement>
<elementName>In</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>I</string>
</entry>
</elementAttributes>
<pos x="180" y="220"/>
</visualElement>
<visualElement>
<elementName>Const</elementName>
<elementAttributes/>
<pos x="300" y="100"/>
</visualElement>
<visualElement>
<elementName>NFET</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>NMOS / PU</string>
</entry>
</elementAttributes>
<pos x="300" y="240"/>
</visualElement>
<visualElement>
<elementName>Ground</elementName>
<elementAttributes/>
<pos x="320" y="340"/>
</visualElement>
</visualElements>
<wires>
<wire>
<p1 x="200" y="160"/>
<p2 x="300" y="160"/>
</wire>
<wire>
<p1 x="300" y="100"/>
<p2 x="320" y="100"/>
</wire>
<wire>
<p1 x="200" y="280"/>
<p2 x="300" y="280"/>
</wire>
<wire>
<p1 x="180" y="220"/>
<p2 x="200" y="220"/>
</wire>
<wire>
<p1 x="320" y="220"/>
<p2 x="420" y="220"/>
</wire>
<wire>
<p1 x="320" y="100"/>
<p2 x="320" y="160"/>
</wire>
<wire>
<p1 x="320" y="200"/>
<p2 x="320" y="220"/>
</wire>
<wire>
<p1 x="320" y="280"/>
<p2 x="320" y="340"/>
</wire>
<wire>
<p1 x="320" y="220"/>
<p2 x="320" y="240"/>
</wire>
<wire>
<p1 x="200" y="160"/>
<p2 x="200" y="220"/>
</wire>
<wire>
<p1 x="200" y="220"/>
<p2 x="200" y="280"/>
</wire>
</wires>
<measurementOrdering/>
</circuit>

View file

@ -0,0 +1,156 @@
<?xml version="1.0" encoding="utf-8"?>
<circuit>
<version>2</version>
<attributes/>
<visualElements>
<visualElement>
<elementName>half_adder.dig</elementName>
<elementAttributes/>
<pos x="520" y="420"/>
</visualElement>
<visualElement>
<elementName>half_adder.dig</elementName>
<elementAttributes/>
<pos x="620" y="500"/>
</visualElement>
<visualElement>
<elementName>nor_gate.dig</elementName>
<elementAttributes/>
<pos x="740" y="380"/>
</visualElement>
<visualElement>
<elementName>not_gate.dig</elementName>
<elementAttributes/>
<pos x="820" y="400"/>
</visualElement>
<visualElement>
<elementName>In</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>I_A</string>
</entry>
</elementAttributes>
<pos x="320" y="400"/>
</visualElement>
<visualElement>
<elementName>In</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>I_B</string>
</entry>
</elementAttributes>
<pos x="320" y="460"/>
</visualElement>
<visualElement>
<elementName>In</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>I_C</string>
</entry>
</elementAttributes>
<pos x="320" y="520"/>
</visualElement>
<visualElement>
<elementName>Out</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>S_i</string>
</entry>
</elementAttributes>
<pos x="920" y="500"/>
</visualElement>
<visualElement>
<elementName>Out</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>C_i</string>
</entry>
</elementAttributes>
<pos x="920" y="400"/>
</visualElement>
</visualElements>
<wires>
<wire>
<p1 x="800" y="400"/>
<p2 x="820" y="400"/>
</wire>
<wire>
<p1 x="320" y="400"/>
<p2 x="460" y="400"/>
</wire>
<wire>
<p1 x="880" y="400"/>
<p2 x="920" y="400"/>
</wire>
<wire>
<p1 x="400" y="420"/>
<p2 x="520" y="420"/>
</wire>
<wire>
<p1 x="580" y="420"/>
<p2 x="600" y="420"/>
</wire>
<wire>
<p1 x="700" y="420"/>
<p2 x="740" y="420"/>
</wire>
<wire>
<p1 x="600" y="500"/>
<p2 x="620" y="500"/>
</wire>
<wire>
<p1 x="680" y="500"/>
<p2 x="920" y="500"/>
</wire>
<wire>
<p1 x="460" y="440"/>
<p2 x="520" y="440"/>
</wire>
<wire>
<p1 x="580" y="440"/>
<p2 x="660" y="440"/>
</wire>
<wire>
<p1 x="680" y="520"/>
<p2 x="700" y="520"/>
</wire>
<wire>
<p1 x="320" y="520"/>
<p2 x="620" y="520"/>
</wire>
<wire>
<p1 x="320" y="460"/>
<p2 x="400" y="460"/>
</wire>
<wire>
<p1 x="660" y="380"/>
<p2 x="740" y="380"/>
</wire>
<wire>
<p1 x="400" y="420"/>
<p2 x="400" y="460"/>
</wire>
<wire>
<p1 x="660" y="380"/>
<p2 x="660" y="440"/>
</wire>
<wire>
<p1 x="600" y="420"/>
<p2 x="600" y="500"/>
</wire>
<wire>
<p1 x="460" y="400"/>
<p2 x="460" y="440"/>
</wire>
<wire>
<p1 x="700" y="420"/>
<p2 x="700" y="520"/>
</wire>
</wires>
<measurementOrdering/>
</circuit>

View file

@ -0,0 +1,156 @@
<?xml version="1.0" encoding="utf-8"?>
<circuit>
<version>2</version>
<attributes/>
<visualElements>
<visualElement>
<elementName>Out</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>S_i</string>
</entry>
</elementAttributes>
<pos x="1360" y="880"/>
</visualElement>
<visualElement>
<elementName>nand_gate.dig</elementName>
<elementAttributes/>
<pos x="780" y="660"/>
</visualElement>
<visualElement>
<elementName>not_gate.dig</elementName>
<elementAttributes/>
<pos x="880" y="680"/>
</visualElement>
<visualElement>
<elementName>nand_gate.dig</elementName>
<elementAttributes/>
<pos x="1160" y="860"/>
</visualElement>
<visualElement>
<elementName>not_gate.dig</elementName>
<elementAttributes/>
<pos x="1260" y="880"/>
</visualElement>
<visualElement>
<elementName>nor_gate.dig</elementName>
<elementAttributes/>
<pos x="780" y="900"/>
</visualElement>
<visualElement>
<elementName>not_gate.dig</elementName>
<elementAttributes/>
<pos x="880" y="920"/>
</visualElement>
<visualElement>
<elementName>Out</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>Ü_i</string>
</entry>
</elementAttributes>
<pos x="1360" y="680"/>
</visualElement>
<visualElement>
<elementName>In</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>I_B</string>
</entry>
</elementAttributes>
<pos x="600" y="940"/>
</visualElement>
<visualElement>
<elementName>In</elementName>
<elementAttributes>
<entry>
<string>Label</string>
<string>I_A</string>
</entry>
</elementAttributes>
<pos x="600" y="660"/>
</visualElement>
</visualElements>
<wires>
<wire>
<p1 x="1220" y="880"/>
<p2 x="1260" y="880"/>
</wire>
<wire>
<p1 x="1320" y="880"/>
<p2 x="1360" y="880"/>
</wire>
<wire>
<p1 x="960" y="900"/>
<p2 x="1160" y="900"/>
</wire>
<wire>
<p1 x="660" y="900"/>
<p2 x="780" y="900"/>
</wire>
<wire>
<p1 x="600" y="660"/>
<p2 x="660" y="660"/>
</wire>
<wire>
<p1 x="660" y="660"/>
<p2 x="780" y="660"/>
</wire>
<wire>
<p1 x="840" y="920"/>
<p2 x="880" y="920"/>
</wire>
<wire>
<p1 x="940" y="920"/>
<p2 x="960" y="920"/>
</wire>
<wire>
<p1 x="840" y="680"/>
<p2 x="860" y="680"/>
</wire>
<wire>
<p1 x="940" y="680"/>
<p2 x="1360" y="680"/>
</wire>
<wire>
<p1 x="860" y="680"/>
<p2 x="880" y="680"/>
</wire>
<wire>
<p1 x="860" y="860"/>
<p2 x="1160" y="860"/>
</wire>
<wire>
<p1 x="600" y="940"/>
<p2 x="700" y="940"/>
</wire>
<wire>
<p1 x="700" y="940"/>
<p2 x="780" y="940"/>
</wire>
<wire>
<p1 x="700" y="700"/>
<p2 x="780" y="700"/>
</wire>
<wire>
<p1 x="960" y="900"/>
<p2 x="960" y="920"/>
</wire>
<wire>
<p1 x="660" y="660"/>
<p2 x="660" y="900"/>
</wire>
<wire>
<p1 x="700" y="700"/>
<p2 x="700" y="940"/>
</wire>
<wire>
<p1 x="860" y="680"/>
<p2 x="860" y="860"/>
</wire>
</wires>
<measurementOrdering/>
</circuit>