diff options
Diffstat (limited to 'design')
| -rw-r--r-- | design/2c.dig | 67 | ||||
| -rw-r--r-- | design/alu.dig | 298 | ||||
| -rw-r--r-- | design/min8b.dig | 143 |
3 files changed, 329 insertions, 179 deletions
diff --git a/design/2c.dig b/design/2c.dig index e553a6d..15349da 100644 --- a/design/2c.dig +++ b/design/2c.dig @@ -15,7 +15,7 @@ <int>8</int> </entry> </elementAttributes> - <pos x="520" y="500"/> + <pos x="500" y="500"/> </visualElement> <visualElement> <elementName>Out</elementName> @@ -29,7 +29,7 @@ <int>8</int> </entry> </elementAttributes> - <pos x="680" y="500"/> + <pos x="800" y="500"/> </visualElement> <visualElement> <elementName>Not</elementName> @@ -66,28 +66,89 @@ </elementAttributes> <pos x="580" y="540"/> </visualElement> + <visualElement> + <elementName>Splitter</elementName> + <elementAttributes> + <entry> + <string>Input Splitting</string> + <string>8</string> + </entry> + <entry> + <string>Output Splitting</string> + <string>7-7</string> + </entry> + </elementAttributes> + <pos x="540" y="580"/> + </visualElement> + <visualElement> + <elementName>Out</elementName> + <elementAttributes> + <entry> + <string>Label</string> + <string>Cout</string> + </entry> + </elementAttributes> + <pos x="800" y="540"/> + </visualElement> + <visualElement> + <elementName>NOr</elementName> + <elementAttributes/> + <pos x="700" y="520"/> + </visualElement> </visualElements> <wires> <wire> + <p1 x="680" y="560"/> + <p2 x="700" y="560"/> + </wire> + <wire> <p1 x="580" y="500"/> <p2 x="600" y="500"/> </wire> <wire> <p1 x="660" y="500"/> - <p2 x="680" y="500"/> + <p2 x="800" y="500"/> + </wire> + <wire> + <p1 x="500" y="500"/> + <p2 x="520" y="500"/> </wire> <wire> <p1 x="520" y="500"/> <p2 x="540" y="500"/> </wire> <wire> + <p1 x="560" y="580"/> + <p2 x="680" y="580"/> + </wire> + <wire> + <p1 x="520" y="580"/> + <p2 x="540" y="580"/> + </wire> + <wire> <p1 x="580" y="520"/> <p2 x="600" y="520"/> </wire> <wire> + <p1 x="660" y="520"/> + <p2 x="700" y="520"/> + </wire> + <wire> + <p1 x="780" y="540"/> + <p2 x="800" y="540"/> + </wire> + <wire> <p1 x="580" y="540"/> <p2 x="600" y="540"/> </wire> + <wire> + <p1 x="520" y="500"/> + <p2 x="520" y="580"/> + </wire> + <wire> + <p1 x="680" y="560"/> + <p2 x="680" y="580"/> + </wire> </wires> <measurementOrdering/> </circuit>
\ No newline at end of file diff --git a/design/alu.dig b/design/alu.dig index b7b3535..3b66936 100644 --- a/design/alu.dig +++ b/design/alu.dig @@ -43,7 +43,7 @@ <int>4</int> </entry> </elementAttributes> - <pos x="240" y="360"/> + <pos x="240" y="280"/> </visualElement> <visualElement> <elementName>Out</elementName> @@ -57,7 +57,7 @@ <int>8</int> </entry> </elementAttributes> - <pos x="580" y="540"/> + <pos x="720" y="660"/> </visualElement> <visualElement> <elementName>Out</elementName> @@ -67,7 +67,7 @@ <string>Cout</string> </entry> </elementAttributes> - <pos x="580" y="620"/> + <pos x="720" y="460"/> </visualElement> <visualElement> <elementName>Out</elementName> @@ -77,7 +77,7 @@ <string>Equal</string> </entry> </elementAttributes> - <pos x="580" y="700"/> + <pos x="560" y="1660"/> </visualElement> <visualElement> <elementName>equal.dig</elementName> @@ -100,7 +100,7 @@ <boolean>true</boolean> </entry> </elementAttributes> - <pos x="440" y="380"/> + <pos x="360" y="300"/> </visualElement> <visualElement> <elementName>add8b.dig</elementName> @@ -118,30 +118,6 @@ <pos x="380" y="960"/> </visualElement> <visualElement> - <elementName>BitSelector</elementName> - <elementAttributes> - <entry> - <string>Selector Bits</string> - <int>3</int> - </entry> - </elementAttributes> - <pos x="520" y="620"/> - </visualElement> - <visualElement> - <elementName>Const</elementName> - <elementAttributes> - <entry> - <string>Value</string> - <long>7</long> - </entry> - <entry> - <string>Bits</string> - <int>3</int> - </entry> - </elementAttributes> - <pos x="520" y="660"/> - </visualElement> - <visualElement> <elementName>Tunnel</elementName> <elementAttributes> <entry> @@ -153,7 +129,7 @@ <string>R_AplusB</string> </entry> </elementAttributes> - <pos x="420" y="380"/> + <pos x="340" y="300"/> </visualElement> <visualElement> <elementName>Tunnel</elementName> @@ -167,7 +143,7 @@ <string>R_AminB</string> </entry> </elementAttributes> - <pos x="420" y="400"/> + <pos x="340" y="320"/> </visualElement> <visualElement> <elementName>Tunnel</elementName> @@ -181,7 +157,7 @@ <string>R_BminA</string> </entry> </elementAttributes> - <pos x="420" y="420"/> + <pos x="340" y="340"/> </visualElement> <visualElement> <elementName>Tunnel</elementName> @@ -195,7 +171,7 @@ <string>R_OnlyA</string> </entry> </elementAttributes> - <pos x="420" y="460"/> + <pos x="340" y="380"/> </visualElement> <visualElement> <elementName>Tunnel</elementName> @@ -209,7 +185,7 @@ <string>R_OnlyB</string> </entry> </elementAttributes> - <pos x="420" y="480"/> + <pos x="340" y="400"/> </visualElement> <visualElement> <elementName>Tunnel</elementName> @@ -223,7 +199,7 @@ <string>R_MinA</string> </entry> </elementAttributes> - <pos x="420" y="500"/> + <pos x="340" y="420"/> </visualElement> <visualElement> <elementName>Tunnel</elementName> @@ -237,7 +213,7 @@ <string>R_MinB</string> </entry> </elementAttributes> - <pos x="420" y="520"/> + <pos x="340" y="440"/> </visualElement> <visualElement> <elementName>Tunnel</elementName> @@ -251,7 +227,7 @@ <string>R_ShiftLeftA</string> </entry> </elementAttributes> - <pos x="420" y="540"/> + <pos x="340" y="460"/> </visualElement> <visualElement> <elementName>Tunnel</elementName> @@ -265,7 +241,7 @@ <string>R_ShiftRightA</string> </entry> </elementAttributes> - <pos x="420" y="560"/> + <pos x="340" y="480"/> </visualElement> <visualElement> <elementName>Tunnel</elementName> @@ -279,7 +255,7 @@ <string>R_RotateLeftA</string> </entry> </elementAttributes> - <pos x="420" y="580"/> + <pos x="340" y="500"/> </visualElement> <visualElement> <elementName>Tunnel</elementName> @@ -293,7 +269,7 @@ <string>R_RotateRight_A</string> </entry> </elementAttributes> - <pos x="420" y="600"/> + <pos x="340" y="520"/> </visualElement> <visualElement> <elementName>Tunnel</elementName> @@ -427,7 +403,7 @@ <int>8</int> </entry> </elementAttributes> - <pos x="280" y="660"/> + <pos x="200" y="580"/> </visualElement> <visualElement> <elementName>Const</elementName> @@ -441,7 +417,7 @@ <int>8</int> </entry> </elementAttributes> - <pos x="280" y="680"/> + <pos x="200" y="600"/> </visualElement> <visualElement> <elementName>sl8b.dig</elementName> @@ -493,6 +469,64 @@ </elementAttributes> <pos x="360" y="1000"/> </visualElement> + <visualElement> + <elementName>Multiplexer</elementName> + <elementAttributes> + <entry> + <string>Selector Bits</string> + <int>4</int> + </entry> + <entry> + <string>flipSelPos</string> + <boolean>true</boolean> + </entry> + </elementAttributes> + <pos x="660" y="300"/> + </visualElement> + <visualElement> + <elementName>Tunnel</elementName> + <elementAttributes> + <entry> + <string>NetName</string> + <string>C_AplusB</string> + </entry> + </elementAttributes> + <pos x="460" y="780"/> + </visualElement> + <visualElement> + <elementName>Tunnel</elementName> + <elementAttributes> + <entry> + <string>NetName</string> + <string>C_AminB</string> + </entry> + </elementAttributes> + <pos x="460" y="880"/> + </visualElement> + <visualElement> + <elementName>Tunnel</elementName> + <elementAttributes> + <entry> + <string>NetName</string> + <string>C_BminA</string> + </entry> + </elementAttributes> + <pos x="460" y="980"/> + </visualElement> + <visualElement> + <elementName>Splitter</elementName> + <elementAttributes> + <entry> + <string>Input Splitting</string> + <string>8</string> + </entry> + <entry> + <string>Output Splitting</string> + <string>7,1</string> + </entry> + </elementAttributes> + <pos x="420" y="460"/> + </visualElement> </visualElements> <wires> <wire> @@ -508,12 +542,8 @@ <p2 x="380" y="1280"/> </wire> <wire> - <p1 x="300" y="640"/> - <p2 x="440" y="640"/> - </wire> - <wire> - <p1 x="420" y="580"/> - <p2 x="440" y="580"/> + <p1 x="340" y="320"/> + <p2 x="360" y="320"/> </wire> <wire> <p1 x="340" y="1540"/> @@ -524,24 +554,44 @@ <p2 x="380" y="900"/> </wire> <wire> - <p1 x="420" y="520"/> - <p2 x="440" y="520"/> + <p1 x="200" y="580"/> + <p2 x="220" y="580"/> + </wire> + <wire> + <p1 x="220" y="580"/> + <p2 x="360" y="580"/> </wire> <wire> <p1 x="320" y="1480"/> <p2 x="380" y="1480"/> </wire> <wire> + <p1 x="340" y="520"/> + <p2 x="360" y="520"/> + </wire> + <wire> <p1 x="240" y="780"/> <p2 x="320" y="780"/> </wire> <wire> + <p1 x="440" y="780"/> + <p2 x="460" y="780"/> + </wire> + <wire> <p1 x="320" y="780"/> <p2 x="380" y="780"/> </wire> <wire> - <p1 x="420" y="460"/> - <p2 x="440" y="460"/> + <p1 x="340" y="460"/> + <p2 x="360" y="460"/> + </wire> + <wire> + <p1 x="400" y="460"/> + <p2 x="420" y="460"/> + </wire> + <wire> + <p1 x="700" y="460"/> + <p2 x="720" y="460"/> </wire> <wire> <p1 x="320" y="1680"/> @@ -556,38 +606,46 @@ <p2 x="460" y="1360"/> </wire> <wire> - <p1 x="420" y="400"/> - <p2 x="440" y="400"/> + <p1 x="340" y="400"/> + <p2 x="360" y="400"/> </wire> <wire> <p1 x="340" y="980"/> <p2 x="380" y="980"/> </wire> <wire> - <p1 x="520" y="660"/> - <p2 x="540" y="660"/> + <p1 x="440" y="980"/> + <p2 x="460" y="980"/> </wire> <wire> - <p1 x="280" y="660"/> - <p2 x="300" y="660"/> + <p1 x="340" y="340"/> + <p2 x="360" y="340"/> </wire> <wire> - <p1 x="300" y="660"/> - <p2 x="440" y="660"/> + <p1 x="420" y="660"/> + <p2 x="720" y="660"/> </wire> <wire> <p1 x="340" y="1240"/> <p2 x="380" y="1240"/> </wire> <wire> - <p1 x="420" y="600"/> - <p2 x="440" y="600"/> - </wire> - <wire> <p1 x="440" y="1560"/> <p2 x="460" y="1560"/> </wire> <wire> + <p1 x="200" y="600"/> + <p2 x="360" y="600"/> + </wire> + <wire> + <p1 x="240" y="280"/> + <p2 x="380" y="280"/> + </wire> + <wire> + <p1 x="380" y="280"/> + <p2 x="680" y="280"/> + </wire> + <wire> <p1 x="340" y="860"/> <p2 x="380" y="860"/> </wire> @@ -604,16 +662,8 @@ <p2 x="380" y="1180"/> </wire> <wire> - <p1 x="480" y="540"/> - <p2 x="500" y="540"/> - </wire> - <wire> - <p1 x="420" y="540"/> - <p2 x="440" y="540"/> - </wire> - <wire> - <p1 x="500" y="540"/> - <p2 x="580" y="540"/> + <p1 x="220" y="540"/> + <p2 x="360" y="540"/> </wire> <wire> <p1 x="440" y="1120"/> @@ -624,10 +674,6 @@ <p2 x="380" y="1120"/> </wire> <wire> - <p1 x="420" y="480"/> - <p2 x="440" y="480"/> - </wire> - <wire> <p1 x="340" y="1440"/> <p2 x="380" y="1440"/> </wire> @@ -636,44 +682,32 @@ <p2 x="380" y="800"/> </wire> <wire> - <p1 x="240" y="740"/> - <p2 x="340" y="740"/> + <p1 x="340" y="480"/> + <p2 x="360" y="480"/> </wire> <wire> - <p1 x="420" y="420"/> - <p2 x="440" y="420"/> + <p1 x="240" y="740"/> + <p2 x="340" y="740"/> </wire> <wire> <p1 x="320" y="1380"/> <p2 x="380" y="1380"/> </wire> <wire> - <p1 x="340" y="1640"/> - <p2 x="380" y="1640"/> + <p1 x="340" y="420"/> + <p2 x="360" y="420"/> </wire> <wire> - <p1 x="280" y="680"/> - <p2 x="440" y="680"/> + <p1 x="340" y="1640"/> + <p2 x="380" y="1640"/> </wire> <wire> <p1 x="360" y="1000"/> <p2 x="380" y="1000"/> </wire> <wire> - <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="500" y="620"/> - <p2 x="520" y="620"/> - </wire> - <wire> - <p1 x="300" y="620"/> - <p2 x="440" y="620"/> + <p1 x="220" y="360"/> + <p2 x="360" y="360"/> </wire> <wire> <p1 x="440" y="1260"/> @@ -684,22 +718,34 @@ <p2 x="380" y="1580"/> </wire> <wire> - <p1 x="420" y="560"/> - <p2 x="440" y="560"/> + <p1 x="340" y="300"/> + <p2 x="360" y="300"/> + </wire> + <wire> + <p1 x="220" y="560"/> + <p2 x="360" y="560"/> </wire> <wire> <p1 x="320" y="880"/> <p2 x="380" y="880"/> </wire> <wire> - <p1 x="420" y="500"/> - <p2 x="440" y="500"/> + <p1 x="440" y="880"/> + <p2 x="460" y="880"/> + </wire> + <wire> + <p1 x="340" y="500"/> + <p2 x="360" y="500"/> </wire> <wire> <p1 x="440" y="1460"/> <p2 x="460" y="1460"/> </wire> <wire> + <p1 x="340" y="440"/> + <p2 x="360" y="440"/> + </wire> + <wire> <p1 x="340" y="760"/> <p2 x="380" y="760"/> </wire> @@ -712,26 +758,18 @@ <p2 x="460" y="1080"/> </wire> <wire> - <p1 x="300" y="440"/> - <p2 x="440" y="440"/> + <p1 x="440" y="1660"/> + <p2 x="560" y="1660"/> </wire> <wire> - <p1 x="420" y="380"/> - <p2 x="440" y="380"/> + <p1 x="340" y="380"/> + <p2 x="360" y="380"/> </wire> <wire> <p1 x="340" y="1340"/> <p2 x="380" y="1340"/> </wire> <wire> - <p1 x="540" y="700"/> - <p2 x="580" y="700"/> - </wire> - <wire> - <p1 x="440" y="1660"/> - <p2 x="540" y="1660"/> - </wire> - <wire> <p1 x="320" y="780"/> <p2 x="320" y="880"/> </wire> @@ -808,32 +846,28 @@ <p2 x="340" y="1540"/> </wire> <wire> - <p1 x="500" y="540"/> - <p2 x="500" y="620"/> - </wire> - <wire> - <p1 x="540" y="700"/> - <p2 x="540" y="1660"/> + <p1 x="420" y="460"/> + <p2 x="420" y="660"/> </wire> <wire> - <p1 x="540" y="640"/> - <p2 x="540" y="660"/> + <p1 x="680" y="280"/> + <p2 x="680" y="300"/> </wire> <wire> - <p1 x="300" y="440"/> - <p2 x="300" y="620"/> + <p1 x="220" y="360"/> + <p2 x="220" y="540"/> </wire> <wire> - <p1 x="300" y="620"/> - <p2 x="300" y="640"/> + <p1 x="220" y="540"/> + <p2 x="220" y="560"/> </wire> <wire> - <p1 x="300" y="640"/> - <p2 x="300" y="660"/> + <p1 x="220" y="560"/> + <p2 x="220" y="580"/> </wire> <wire> - <p1 x="460" y="360"/> - <p2 x="460" y="380"/> + <p1 x="380" y="280"/> + <p2 x="380" y="300"/> </wire> </wires> <measurementOrdering/> diff --git a/design/min8b.dig b/design/min8b.dig index c729da5..e4b5f08 100644 --- a/design/min8b.dig +++ b/design/min8b.dig @@ -15,7 +15,7 @@ <int>8</int> </entry> </elementAttributes> - <pos x="500" y="300"/> + <pos x="300" y="320"/> </visualElement> <visualElement> <elementName>In</elementName> @@ -29,21 +29,7 @@ <int>8</int> </entry> </elementAttributes> - <pos x="500" y="340"/> - </visualElement> - <visualElement> - <elementName>Out</elementName> - <elementAttributes> - <entry> - <string>Label</string> - <string>X</string> - </entry> - <entry> - <string>Bits</string> - <int>8</int> - </entry> - </elementAttributes> - <pos x="700" y="320"/> + <pos x="300" y="360"/> </visualElement> <visualElement> <elementName>In</elementName> @@ -53,7 +39,7 @@ <string>Cin</string> </entry> </elementAttributes> - <pos x="500" y="400"/> + <pos x="300" y="420"/> </visualElement> <visualElement> <elementName>Out</elementName> @@ -63,67 +49,136 @@ <string>Cout</string> </entry> </elementAttributes> - <pos x="700" y="360"/> + <pos x="580" y="440"/> </visualElement> <visualElement> <elementName>2c.dig</elementName> <elementAttributes/> - <pos x="520" y="340"/> + <pos x="320" y="360"/> </visualElement> <visualElement> <elementName>add8b.dig</elementName> <elementAttributes/> - <pos x="600" y="320"/> + <pos x="480" y="340"/> + </visualElement> + <visualElement> + <elementName>add1b.dig</elementName> + <elementAttributes/> + <pos x="480" y="440"/> + </visualElement> + <visualElement> + <elementName>Splitter</elementName> + <elementAttributes> + <entry> + <string>splitterSpreading</string> + <int>5</int> + </entry> + <entry> + <string>Input Splitting</string> + <string>8</string> + </entry> + <entry> + <string>Output Splitting</string> + <string>0-7,7-7</string> + </entry> + </elementAttributes> + <pos x="440" y="340"/> + </visualElement> + <visualElement> + <elementName>Out</elementName> + <elementAttributes> + <entry> + <string>Label</string> + <string>X</string> + </entry> + <entry> + <string>Bits</string> + <int>8</int> + </entry> + </elementAttributes> + <pos x="580" y="340"/> </visualElement> </visualElements> <wires> <wire> - <p1 x="520" y="320"/> - <p2 x="600" y="320"/> + <p1 x="300" y="320"/> + <p2 x="420" y="320"/> + </wire> + <wire> + <p1 x="440" y="480"/> + <p2 x="480" y="480"/> + </wire> + <wire> + <p1 x="460" y="340"/> + <p2 x="480" y="340"/> + </wire> + <wire> + <p1 x="420" y="340"/> + <p2 x="440" y="340"/> + </wire> + <wire> + <p1 x="540" y="340"/> + <p2 x="580" y="340"/> + </wire> + <wire> + <p1 x="300" y="420"/> + <p2 x="420" y="420"/> + </wire> + <wire> + <p1 x="440" y="420"/> + <p2 x="560" y="420"/> + </wire> + <wire> + <p1 x="300" y="360"/> + <p2 x="320" y="360"/> + </wire> + <wire> + <p1 x="380" y="360"/> + <p2 x="480" y="360"/> </wire> <wire> - <p1 x="660" y="320"/> - <p2 x="700" y="320"/> + <p1 x="540" y="360"/> + <p2 x="560" y="360"/> </wire> <wire> - <p1 x="500" y="400"/> - <p2 x="520" y="400"/> + <p1 x="460" y="440"/> + <p2 x="480" y="440"/> </wire> <wire> - <p1 x="500" y="340"/> - <p2 x="520" y="340"/> + <p1 x="540" y="440"/> + <p2 x="580" y="440"/> </wire> <wire> - <p1 x="580" y="340"/> - <p2 x="600" y="340"/> + <p1 x="400" y="460"/> + <p2 x="480" y="460"/> </wire> <wire> - <p1 x="660" y="340"/> - <p2 x="680" y="340"/> + <p1 x="420" y="380"/> + <p2 x="480" y="380"/> </wire> <wire> - <p1 x="520" y="360"/> - <p2 x="600" y="360"/> + <p1 x="380" y="380"/> + <p2 x="400" y="380"/> </wire> <wire> - <p1 x="680" y="360"/> - <p2 x="700" y="360"/> + <p1 x="400" y="380"/> + <p2 x="400" y="460"/> </wire> <wire> - <p1 x="500" y="300"/> - <p2 x="520" y="300"/> + <p1 x="560" y="360"/> + <p2 x="560" y="420"/> </wire> <wire> - <p1 x="520" y="300"/> - <p2 x="520" y="320"/> + <p1 x="420" y="380"/> + <p2 x="420" y="420"/> </wire> <wire> - <p1 x="520" y="360"/> - <p2 x="520" y="400"/> + <p1 x="420" y="320"/> + <p2 x="420" y="340"/> </wire> <wire> - <p1 x="680" y="340"/> - <p2 x="680" y="360"/> + <p1 x="440" y="420"/> + <p2 x="440" y="480"/> </wire> </wires> <measurementOrdering/> |