aboutsummaryrefslogtreecommitdiff
path: root/design
diff options
context:
space:
mode:
authorlonkaars <loek@pipeframe.xyz>2022-11-27 14:46:14 +0100
committerlonkaars <loek@pipeframe.xyz>2022-11-27 14:46:14 +0100
commitd2cbbf49cf8e866af996672ff1b34bb428091261 (patch)
tree377797fd414461ef797be20fc97ee8596235e5a6 /design
parentc8e5df8075b7539082b8afb0f161bae2fc99c8d7 (diff)
ALU implemented but broken
Diffstat (limited to 'design')
-rw-r--r--design/alu.dig376
1 files changed, 86 insertions, 290 deletions
diff --git a/design/alu.dig b/design/alu.dig
index f2f354c..b7b3535 100644
--- a/design/alu.dig
+++ b/design/alu.dig
@@ -57,7 +57,7 @@
<int>8</int>
</entry>
</elementAttributes>
- <pos x="760" y="540"/>
+ <pos x="580" y="540"/>
</visualElement>
<visualElement>
<elementName>Out</elementName>
@@ -67,7 +67,7 @@
<string>Cout</string>
</entry>
</elementAttributes>
- <pos x="760" y="620"/>
+ <pos x="580" y="620"/>
</visualElement>
<visualElement>
<elementName>Out</elementName>
@@ -77,7 +77,7 @@
<string>Equal</string>
</entry>
</elementAttributes>
- <pos x="760" y="700"/>
+ <pos x="580" y="700"/>
</visualElement>
<visualElement>
<elementName>equal.dig</elementName>
@@ -85,20 +85,6 @@
<pos x="380" y="1640"/>
</visualElement>
<visualElement>
- <elementName>Decoder</elementName>
- <elementAttributes>
- <entry>
- <string>Selector Bits</string>
- <int>4</int>
- </entry>
- <entry>
- <string>flipSelPos</string>
- <boolean>true</boolean>
- </entry>
- </elementAttributes>
- <pos x="260" y="380"/>
- </visualElement>
- <visualElement>
<elementName>Multiplexer</elementName>
<elementAttributes>
<entry>
@@ -114,7 +100,7 @@
<boolean>true</boolean>
</entry>
</elementAttributes>
- <pos x="600" y="380"/>
+ <pos x="440" y="380"/>
</visualElement>
<visualElement>
<elementName>add8b.dig</elementName>
@@ -139,7 +125,7 @@
<int>3</int>
</entry>
</elementAttributes>
- <pos x="700" y="620"/>
+ <pos x="520" y="620"/>
</visualElement>
<visualElement>
<elementName>Const</elementName>
@@ -153,137 +139,7 @@
<int>3</int>
</entry>
</elementAttributes>
- <pos x="700" y="660"/>
- </visualElement>
- <visualElement>
- <elementName>Tunnel</elementName>
- <elementAttributes>
- <entry>
- <string>NetName</string>
- <string>E_AplusB</string>
- </entry>
- </elementAttributes>
- <pos x="320" y="380"/>
- </visualElement>
- <visualElement>
- <elementName>Tunnel</elementName>
- <elementAttributes>
- <entry>
- <string>NetName</string>
- <string>E_AminB</string>
- </entry>
- </elementAttributes>
- <pos x="320" y="400"/>
- </visualElement>
- <visualElement>
- <elementName>Tunnel</elementName>
- <elementAttributes>
- <entry>
- <string>NetName</string>
- <string>E_BminA</string>
- </entry>
- </elementAttributes>
- <pos x="320" y="420"/>
- </visualElement>
- <visualElement>
- <elementName>Tunnel</elementName>
- <elementAttributes>
- <entry>
- <string>NetName</string>
- <string>E_OnlyA</string>
- </entry>
- </elementAttributes>
- <pos x="320" y="460"/>
- </visualElement>
- <visualElement>
- <elementName>Tunnel</elementName>
- <elementAttributes>
- <entry>
- <string>NetName</string>
- <string>E_OnlyB</string>
- </entry>
- </elementAttributes>
- <pos x="320" y="480"/>
- </visualElement>
- <visualElement>
- <elementName>Tunnel</elementName>
- <elementAttributes>
- <entry>
- <string>NetName</string>
- <string>E_MinA</string>
- </entry>
- </elementAttributes>
- <pos x="320" y="500"/>
- </visualElement>
- <visualElement>
- <elementName>Tunnel</elementName>
- <elementAttributes>
- <entry>
- <string>NetName</string>
- <string>E_MinB</string>
- </entry>
- </elementAttributes>
- <pos x="320" y="520"/>
- </visualElement>
- <visualElement>
- <elementName>Tunnel</elementName>
- <elementAttributes>
- <entry>
- <string>NetName</string>
- <string>E_ShiftLeftA</string>
- </entry>
- </elementAttributes>
- <pos x="320" y="540"/>
- </visualElement>
- <visualElement>
- <elementName>Tunnel</elementName>
- <elementAttributes>
- <entry>
- <string>NetName</string>
- <string>E_ShiftRightA</string>
- </entry>
- </elementAttributes>
- <pos x="320" y="560"/>
- </visualElement>
- <visualElement>
- <elementName>Tunnel</elementName>
- <elementAttributes>
- <entry>
- <string>NetName</string>
- <string>E_RotateLeftA</string>
- </entry>
- </elementAttributes>
- <pos x="320" y="580"/>
- </visualElement>
- <visualElement>
- <elementName>Tunnel</elementName>
- <elementAttributes>
- <entry>
- <string>NetName</string>
- <string>E_RotateRight_A</string>
- </entry>
- </elementAttributes>
- <pos x="320" y="600"/>
- </visualElement>
- <visualElement>
- <elementName>Tunnel</elementName>
- <elementAttributes>
- <entry>
- <string>NetName</string>
- <string>E_AllZeros</string>
- </entry>
- </elementAttributes>
- <pos x="320" y="660"/>
- </visualElement>
- <visualElement>
- <elementName>Tunnel</elementName>
- <elementAttributes>
- <entry>
- <string>NetName</string>
- <string>E_AllOnes</string>
- </entry>
- </elementAttributes>
- <pos x="320" y="680"/>
+ <pos x="520" y="660"/>
</visualElement>
<visualElement>
<elementName>Tunnel</elementName>
@@ -297,7 +153,7 @@
<string>R_AplusB</string>
</entry>
</elementAttributes>
- <pos x="580" y="380"/>
+ <pos x="420" y="380"/>
</visualElement>
<visualElement>
<elementName>Tunnel</elementName>
@@ -311,7 +167,7 @@
<string>R_AminB</string>
</entry>
</elementAttributes>
- <pos x="580" y="400"/>
+ <pos x="420" y="400"/>
</visualElement>
<visualElement>
<elementName>Tunnel</elementName>
@@ -325,7 +181,7 @@
<string>R_BminA</string>
</entry>
</elementAttributes>
- <pos x="580" y="420"/>
+ <pos x="420" y="420"/>
</visualElement>
<visualElement>
<elementName>Tunnel</elementName>
@@ -339,7 +195,7 @@
<string>R_OnlyA</string>
</entry>
</elementAttributes>
- <pos x="580" y="460"/>
+ <pos x="420" y="460"/>
</visualElement>
<visualElement>
<elementName>Tunnel</elementName>
@@ -353,7 +209,7 @@
<string>R_OnlyB</string>
</entry>
</elementAttributes>
- <pos x="580" y="480"/>
+ <pos x="420" y="480"/>
</visualElement>
<visualElement>
<elementName>Tunnel</elementName>
@@ -367,7 +223,7 @@
<string>R_MinA</string>
</entry>
</elementAttributes>
- <pos x="580" y="500"/>
+ <pos x="420" y="500"/>
</visualElement>
<visualElement>
<elementName>Tunnel</elementName>
@@ -381,7 +237,7 @@
<string>R_MinB</string>
</entry>
</elementAttributes>
- <pos x="580" y="520"/>
+ <pos x="420" y="520"/>
</visualElement>
<visualElement>
<elementName>Tunnel</elementName>
@@ -395,7 +251,7 @@
<string>R_ShiftLeftA</string>
</entry>
</elementAttributes>
- <pos x="580" y="540"/>
+ <pos x="420" y="540"/>
</visualElement>
<visualElement>
<elementName>Tunnel</elementName>
@@ -409,7 +265,7 @@
<string>R_ShiftRightA</string>
</entry>
</elementAttributes>
- <pos x="580" y="560"/>
+ <pos x="420" y="560"/>
</visualElement>
<visualElement>
<elementName>Tunnel</elementName>
@@ -423,7 +279,7 @@
<string>R_RotateLeftA</string>
</entry>
</elementAttributes>
- <pos x="580" y="580"/>
+ <pos x="420" y="580"/>
</visualElement>
<visualElement>
<elementName>Tunnel</elementName>
@@ -437,7 +293,7 @@
<string>R_RotateRight_A</string>
</entry>
</elementAttributes>
- <pos x="580" y="600"/>
+ <pos x="420" y="600"/>
</visualElement>
<visualElement>
<elementName>Tunnel</elementName>
@@ -571,7 +427,7 @@
<int>8</int>
</entry>
</elementAttributes>
- <pos x="440" y="660"/>
+ <pos x="280" y="660"/>
</visualElement>
<visualElement>
<elementName>Const</elementName>
@@ -585,7 +441,7 @@
<int>8</int>
</entry>
</elementAttributes>
- <pos x="440" y="680"/>
+ <pos x="280" y="680"/>
</visualElement>
<visualElement>
<elementName>sl8b.dig</elementName>
@@ -652,16 +508,12 @@
<p2 x="380" y="1280"/>
</wire>
<wire>
- <p1 x="460" y="640"/>
- <p2 x="600" y="640"/>
- </wire>
- <wire>
- <p1 x="300" y="580"/>
- <p2 x="320" y="580"/>
+ <p1 x="300" y="640"/>
+ <p2 x="440" y="640"/>
</wire>
<wire>
- <p1 x="580" y="580"/>
- <p2 x="600" y="580"/>
+ <p1 x="420" y="580"/>
+ <p2 x="440" y="580"/>
</wire>
<wire>
<p1 x="340" y="1540"/>
@@ -672,12 +524,8 @@
<p2 x="380" y="900"/>
</wire>
<wire>
- <p1 x="300" y="520"/>
- <p2 x="320" y="520"/>
- </wire>
- <wire>
- <p1 x="580" y="520"/>
- <p2 x="600" y="520"/>
+ <p1 x="420" y="520"/>
+ <p2 x="440" y="520"/>
</wire>
<wire>
<p1 x="320" y="1480"/>
@@ -692,12 +540,8 @@
<p2 x="380" y="780"/>
</wire>
<wire>
- <p1 x="300" y="460"/>
- <p2 x="320" y="460"/>
- </wire>
- <wire>
- <p1 x="580" y="460"/>
- <p2 x="600" y="460"/>
+ <p1 x="420" y="460"/>
+ <p2 x="440" y="460"/>
</wire>
<wire>
<p1 x="320" y="1680"/>
@@ -712,44 +556,32 @@
<p2 x="460" y="1360"/>
</wire>
<wire>
- <p1 x="300" y="400"/>
- <p2 x="320" y="400"/>
- </wire>
- <wire>
- <p1 x="580" y="400"/>
- <p2 x="600" y="400"/>
+ <p1 x="420" y="400"/>
+ <p2 x="440" y="400"/>
</wire>
<wire>
<p1 x="340" y="980"/>
<p2 x="380" y="980"/>
</wire>
<wire>
- <p1 x="700" y="660"/>
- <p2 x="720" y="660"/>
+ <p1 x="520" y="660"/>
+ <p2 x="540" y="660"/>
</wire>
<wire>
- <p1 x="300" y="660"/>
- <p2 x="320" y="660"/>
+ <p1 x="280" y="660"/>
+ <p2 x="300" y="660"/>
</wire>
<wire>
- <p1 x="440" y="660"/>
- <p2 x="460" y="660"/>
- </wire>
- <wire>
- <p1 x="460" y="660"/>
- <p2 x="600" y="660"/>
+ <p1 x="300" y="660"/>
+ <p2 x="440" y="660"/>
</wire>
<wire>
<p1 x="340" y="1240"/>
<p2 x="380" y="1240"/>
</wire>
<wire>
- <p1 x="300" y="600"/>
- <p2 x="320" y="600"/>
- </wire>
- <wire>
- <p1 x="580" y="600"/>
- <p2 x="600" y="600"/>
+ <p1 x="420" y="600"/>
+ <p2 x="440" y="600"/>
</wire>
<wire>
<p1 x="440" y="1560"/>
@@ -772,20 +604,16 @@
<p2 x="380" y="1180"/>
</wire>
<wire>
- <p1 x="640" y="540"/>
- <p2 x="680" y="540"/>
+ <p1 x="480" y="540"/>
+ <p2 x="500" y="540"/>
</wire>
<wire>
- <p1 x="300" y="540"/>
- <p2 x="320" y="540"/>
+ <p1 x="420" y="540"/>
+ <p2 x="440" y="540"/>
</wire>
<wire>
- <p1 x="580" y="540"/>
- <p2 x="600" y="540"/>
- </wire>
- <wire>
- <p1 x="680" y="540"/>
- <p2 x="760" y="540"/>
+ <p1 x="500" y="540"/>
+ <p2 x="580" y="540"/>
</wire>
<wire>
<p1 x="440" y="1120"/>
@@ -796,12 +624,8 @@
<p2 x="380" y="1120"/>
</wire>
<wire>
- <p1 x="300" y="480"/>
- <p2 x="320" y="480"/>
- </wire>
- <wire>
- <p1 x="580" y="480"/>
- <p2 x="600" y="480"/>
+ <p1 x="420" y="480"/>
+ <p2 x="440" y="480"/>
</wire>
<wire>
<p1 x="340" y="1440"/>
@@ -816,12 +640,8 @@
<p2 x="340" y="740"/>
</wire>
<wire>
- <p1 x="300" y="420"/>
- <p2 x="320" y="420"/>
- </wire>
- <wire>
- <p1 x="580" y="420"/>
- <p2 x="600" y="420"/>
+ <p1 x="420" y="420"/>
+ <p2 x="440" y="420"/>
</wire>
<wire>
<p1 x="320" y="1380"/>
@@ -832,36 +652,28 @@
<p2 x="380" y="1640"/>
</wire>
<wire>
- <p1 x="240" y="360"/>
- <p2 x="280" y="360"/>
- </wire>
- <wire>
- <p1 x="280" y="360"/>
- <p2 x="620" y="360"/>
- </wire>
- <wire>
- <p1 x="300" y="680"/>
- <p2 x="320" y="680"/>
- </wire>
- <wire>
- <p1 x="440" y="680"/>
- <p2 x="600" y="680"/>
+ <p1 x="280" y="680"/>
+ <p2 x="440" y="680"/>
</wire>
<wire>
<p1 x="360" y="1000"/>
<p2 x="380" y="1000"/>
</wire>
<wire>
- <p1 x="740" y="620"/>
- <p2 x="760" y="620"/>
+ <p1 x="240" y="360"/>
+ <p2 x="460" y="360"/>
+ </wire>
+ <wire>
+ <p1 x="560" y="620"/>
+ <p2 x="580" y="620"/>
</wire>
<wire>
- <p1 x="680" y="620"/>
- <p2 x="700" y="620"/>
+ <p1 x="500" y="620"/>
+ <p2 x="520" y="620"/>
</wire>
<wire>
- <p1 x="460" y="620"/>
- <p2 x="600" y="620"/>
+ <p1 x="300" y="620"/>
+ <p2 x="440" y="620"/>
</wire>
<wire>
<p1 x="440" y="1260"/>
@@ -872,24 +684,16 @@
<p2 x="380" y="1580"/>
</wire>
<wire>
- <p1 x="300" y="560"/>
- <p2 x="320" y="560"/>
- </wire>
- <wire>
- <p1 x="580" y="560"/>
- <p2 x="600" y="560"/>
+ <p1 x="420" y="560"/>
+ <p2 x="440" y="560"/>
</wire>
<wire>
<p1 x="320" y="880"/>
<p2 x="380" y="880"/>
</wire>
<wire>
- <p1 x="300" y="500"/>
- <p2 x="320" y="500"/>
- </wire>
- <wire>
- <p1 x="580" y="500"/>
- <p2 x="600" y="500"/>
+ <p1 x="420" y="500"/>
+ <p2 x="440" y="500"/>
</wire>
<wire>
<p1 x="440" y="1460"/>
@@ -908,36 +712,24 @@
<p2 x="460" y="1080"/>
</wire>
<wire>
- <p1 x="460" y="440"/>
- <p2 x="600" y="440"/>
+ <p1 x="300" y="440"/>
+ <p2 x="440" y="440"/>
</wire>
<wire>
- <p1 x="300" y="380"/>
- <p2 x="320" y="380"/>
- </wire>
- <wire>
- <p1 x="580" y="380"/>
- <p2 x="600" y="380"/>
+ <p1 x="420" y="380"/>
+ <p2 x="440" y="380"/>
</wire>
<wire>
<p1 x="340" y="1340"/>
<p2 x="380" y="1340"/>
</wire>
<wire>
- <p1 x="720" y="700"/>
- <p2 x="760" y="700"/>
+ <p1 x="540" y="700"/>
+ <p2 x="580" y="700"/>
</wire>
<wire>
<p1 x="440" y="1660"/>
- <p2 x="720" y="1660"/>
- </wire>
- <wire>
- <p1 x="720" y="640"/>
- <p2 x="720" y="660"/>
- </wire>
- <wire>
- <p1 x="720" y="700"/>
- <p2 x="720" y="1660"/>
+ <p2 x="540" y="1660"/>
</wire>
<wire>
<p1 x="320" y="780"/>
@@ -1016,28 +808,32 @@
<p2 x="340" y="1540"/>
</wire>
<wire>
- <p1 x="280" y="360"/>
- <p2 x="280" y="380"/>
+ <p1 x="500" y="540"/>
+ <p2 x="500" y="620"/>
+ </wire>
+ <wire>
+ <p1 x="540" y="700"/>
+ <p2 x="540" y="1660"/>
</wire>
<wire>
- <p1 x="680" y="540"/>
- <p2 x="680" y="620"/>
+ <p1 x="540" y="640"/>
+ <p2 x="540" y="660"/>
</wire>
<wire>
- <p1 x="620" y="360"/>
- <p2 x="620" y="380"/>
+ <p1 x="300" y="440"/>
+ <p2 x="300" y="620"/>
</wire>
<wire>
- <p1 x="460" y="440"/>
- <p2 x="460" y="620"/>
+ <p1 x="300" y="620"/>
+ <p2 x="300" y="640"/>
</wire>
<wire>
- <p1 x="460" y="620"/>
- <p2 x="460" y="640"/>
+ <p1 x="300" y="640"/>
+ <p2 x="300" y="660"/>
</wire>
<wire>
- <p1 x="460" y="640"/>
- <p2 x="460" y="660"/>
+ <p1 x="460" y="360"/>
+ <p2 x="460" y="380"/>
</wire>
</wires>
<measurementOrdering/>