diff options
| author | Jan Tuomi <jans.tuomi@gmail.com> | 2023-04-09 18:26:25 +0300 |
|---|---|---|
| committer | Jan Tuomi <jans.tuomi@gmail.com> | 2023-04-09 18:28:28 +0300 |
| commit | 5b6637fb92c54b8f367ec8751f53f6f238d8dbed (patch) | |
| tree | 11f1e11690504606db9879b7d282f5955f1ea225 /digital/atk16_jump_unit.dig | |
| parent | 5ab9865fa6ed343ae0cffefb81b20af2e533e36f (diff) | |
Remake ALU
Diffstat (limited to 'digital/atk16_jump_unit.dig')
| -rw-r--r-- | digital/atk16_jump_unit.dig | 216 |
1 files changed, 216 insertions, 0 deletions
diff --git a/digital/atk16_jump_unit.dig b/digital/atk16_jump_unit.dig new file mode 100644 index 0000000..1156aae --- /dev/null +++ b/digital/atk16_jump_unit.dig @@ -0,0 +1,216 @@ +<?xml version="1.0" encoding="utf-8"?> +<circuit> + <version>2</version> + <attributes> + <entry> + <string>Description</string> + <string>Uses OPCODE parity to choose between relative addressing mode (even parity) or absolute addressing mode (odd parity).</string> + </entry> + <entry> + <string>romContent</string> + <romList> + <roms/> + </romList> + </entry> + <entry> + <string>Width</string> + <int>5</int> + </entry> + </attributes> + <visualElements> + <visualElement> + <elementName>In</elementName> + <elementAttributes> + <entry> + <string>Description</string> + <string>Jump address</string> + </entry> + <entry> + <string>Label</string> + <string>ADDR</string> + </entry> + <entry> + <string>Bits</string> + <int>16</int> + </entry> + </elementAttributes> + <pos x="180" y="380"/> + </visualElement> + <visualElement> + <elementName>In</elementName> + <elementAttributes> + <entry> + <string>Description</string> + <string>PC value</string> + </entry> + <entry> + <string>Label</string> + <string>PC</string> + </entry> + <entry> + <string>Bits</string> + <int>16</int> + </entry> + </elementAttributes> + <pos x="180" y="300"/> + </visualElement> + <visualElement> + <elementName>In</elementName> + <elementAttributes> + <entry> + <string>Description</string> + <string>OPCODE</string> + </entry> + <entry> + <string>Label</string> + <string>OPCODE</string> + </entry> + <entry> + <string>Bits</string> + <int>4</int> + </entry> + </elementAttributes> + <pos x="180" y="460"/> + </visualElement> + <visualElement> + <elementName>Splitter</elementName> + <elementAttributes> + <entry> + <string>Input Splitting</string> + <string>4</string> + </entry> + <entry> + <string>Output Splitting</string> + <string>1,</string> + </entry> + </elementAttributes> + <pos x="240" y="460"/> + </visualElement> + <visualElement> + <elementName>Text</elementName> + <elementAttributes> + <entry> + <string>Description</string> + <string>OP parity bit</string> + </entry> + </elementAttributes> + <pos x="220" y="480"/> + </visualElement> + <visualElement> + <elementName>Out</elementName> + <elementAttributes> + <entry> + <string>Description</string> + <string>Result PC value</string> + </entry> + <entry> + <string>Label</string> + <string>PC_RES</string> + </entry> + <entry> + <string>Bits</string> + <int>16</int> + </entry> + </elementAttributes> + <pos x="580" y="360"/> + </visualElement> + <visualElement> + <elementName>Add</elementName> + <elementAttributes> + <entry> + <string>Bits</string> + <int>16</int> + </entry> + </elementAttributes> + <pos x="240" y="300"/> + </visualElement> + <visualElement> + <elementName>Multiplexer</elementName> + <elementAttributes> + <entry> + <string>Bits</string> + <int>16</int> + </entry> + </elementAttributes> + <pos x="400" y="340"/> + </visualElement> + <visualElement> + <elementName>Ground</elementName> + <elementAttributes/> + <pos x="220" y="360"/> + </visualElement> + <visualElement> + <elementName>Testcase</elementName> + <elementAttributes> + <entry> + <string>Testdata</string> + <testData> + <dataString>PC ADDR OPCODE PC_RES +10 20 0b0101 20 +10 20 0b0110 30</dataString> + </testData> + </entry> + </elementAttributes> + <pos x="180" y="620"/> + </visualElement> + </visualElements> + <wires> + <wire> + <p1 x="200" y="320"/> + <p2 x="240" y="320"/> + </wire> + <wire> + <p1 x="220" y="340"/> + <p2 x="240" y="340"/> + </wire> + <wire> + <p1 x="380" y="340"/> + <p2 x="400" y="340"/> + </wire> + <wire> + <p1 x="440" y="360"/> + <p2 x="580" y="360"/> + </wire> + <wire> + <p1 x="180" y="460"/> + <p2 x="240" y="460"/> + </wire> + <wire> + <p1 x="260" y="460"/> + <p2 x="420" y="460"/> + </wire> + <wire> + <p1 x="180" y="300"/> + <p2 x="240" y="300"/> + </wire> + <wire> + <p1 x="300" y="300"/> + <p2 x="380" y="300"/> + </wire> + <wire> + <p1 x="180" y="380"/> + <p2 x="200" y="380"/> + </wire> + <wire> + <p1 x="200" y="380"/> + <p2 x="400" y="380"/> + </wire> + <wire> + <p1 x="420" y="380"/> + <p2 x="420" y="460"/> + </wire> + <wire> + <p1 x="200" y="320"/> + <p2 x="200" y="380"/> + </wire> + <wire> + <p1 x="380" y="300"/> + <p2 x="380" y="340"/> + </wire> + <wire> + <p1 x="220" y="340"/> + <p2 x="220" y="360"/> + </wire> + </wires> + <measurementOrdering/> +</circuit>
\ No newline at end of file |
