diff options
| author | Jan Tuomi <jans.tuomi@gmail.com> | 2024-02-21 12:07:07 +0200 |
|---|---|---|
| committer | Jan Tuomi <jans.tuomi@gmail.com> | 2024-02-21 12:07:07 +0200 |
| commit | 927c018f12e73c254cec32c0f60e1c01b9fc0319 (patch) | |
| tree | 21fbb975e3567cb0d9ab3fb34519c50325571d6c /digital_diagrams/atk16_ppu.dig | |
| parent | a0b4a1a6107e4dc905b21858d8ac76c47293cfb4 (diff) | |
Refactor names
Diffstat (limited to 'digital_diagrams/atk16_ppu.dig')
| -rw-r--r-- | digital_diagrams/atk16_ppu.dig | 827 |
1 files changed, 827 insertions, 0 deletions
diff --git a/digital_diagrams/atk16_ppu.dig b/digital_diagrams/atk16_ppu.dig new file mode 100644 index 0000000..e6e7608 --- /dev/null +++ b/digital_diagrams/atk16_ppu.dig @@ -0,0 +1,827 @@ +<?xml version="1.0" encoding="utf-8"?> +<circuit> + <version>2</version> + <attributes> + <entry> + <string>romContent</string> + <romList> + <roms/> + </romList> + </entry> + <entry> + <string>Width</string> + <int>7</int> + </entry> + </attributes> + <visualElements> + <visualElement> + <elementName>RAMDualPort</elementName> + <elementAttributes> + <entry> + <string>AddrBits</string> + <int>7</int> + </entry> + <entry> + <string>Label</string> + <string>SPRITE MEM</string> + </entry> + <entry> + <string>Bits</string> + <int>16</int> + </entry> + </elementAttributes> + <pos x="-220" y="-140"/> + </visualElement> + <visualElement> + <elementName>Text</elementName> + <elementAttributes> + <entry> + <string>Description</string> + <string>8 bits tile pattern index +10 bits Y position +10 bits X position +1 bit H flip +1 bit V flip +1 bit behind background? (priority) +1 bit palette select += total 4 bytes per sprite +x 64 sprites += 128 words</string> + </entry> + </elementAttributes> + <pos x="-500" y="-540"/> + </visualElement> + <visualElement> + <elementName>Text</elementName> + <elementAttributes> + <entry> + <string>Description</string> + <string>2**7 selector addresses for +sprite mem, starting from 0x0800</string> + </entry> + </elementAttributes> + <pos x="-400" y="140"/> + </visualElement> + <visualElement> + <elementName>In</elementName> + <elementAttributes> + <entry> + <string>Label</string> + <string>MMIO_IE</string> + </entry> + </elementAttributes> + <pos x="-380" y="-100"/> + </visualElement> + <visualElement> + <elementName>In</elementName> + <elementAttributes> + <entry> + <string>Label</string> + <string>MMIO_OE</string> + </entry> + </elementAttributes> + <pos x="-380" y="-60"/> + </visualElement> + <visualElement> + <elementName>Tunnel</elementName> + <elementAttributes> + <entry> + <string>rotation</string> + <rotation rotation="2"/> + </entry> + <entry> + <string>NetName</string> + <string>CLK</string> + </entry> + </elementAttributes> + <pos x="-240" y="-80"/> + </visualElement> + <visualElement> + <elementName>In</elementName> + <elementAttributes> + <entry> + <string>Description</string> + <string>MMI/O selector</string> + </entry> + <entry> + <string>Label</string> + <string>MMIO_S</string> + </entry> + <entry> + <string>Bits</string> + <int>13</int> + </entry> + </elementAttributes> + <pos x="-360" y="40"/> + </visualElement> + <visualElement> + <elementName>Tunnel</elementName> + <elementAttributes> + <entry> + <string>rotation</string> + <rotation rotation="2"/> + </entry> + <entry> + <string>NetName</string> + <string>DBUS</string> + </entry> + </elementAttributes> + <pos x="-240" y="-120"/> + </visualElement> + <visualElement> + <elementName>Tunnel</elementName> + <elementAttributes> + <entry> + <string>rotation</string> + <rotation rotation="2"/> + </entry> + <entry> + <string>NetName</string> + <string>SMEMBUS</string> + </entry> + </elementAttributes> + <pos x="-240" y="-140"/> + </visualElement> + <visualElement> + <elementName>Splitter</elementName> + <elementAttributes> + <entry> + <string>Input Splitting</string> + <string>13</string> + </entry> + <entry> + <string>Output Splitting</string> + <string>11,1,1</string> + </entry> + </elementAttributes> + <pos x="-340" y="40"/> + </visualElement> + <visualElement> + <elementName>And</elementName> + <elementAttributes> + <entry> + <string>inverterConfig</string> + <inverterConfig> + <string>In_2</string> + </inverterConfig> + </entry> + </elementAttributes> + <pos x="-280" y="60"/> + </visualElement> + <visualElement> + <elementName>Tunnel</elementName> + <elementAttributes> + <entry> + <string>rotation</string> + <rotation rotation="2"/> + </entry> + <entry> + <string>NetName</string> + <string>SM_QUERY</string> + </entry> + </elementAttributes> + <pos x="-120" y="280"/> + </visualElement> + <visualElement> + <elementName>Ground</elementName> + <elementAttributes> + <entry> + <string>Bits</string> + <int>11</int> + </entry> + </elementAttributes> + <pos x="-100" y="300"/> + </visualElement> + <visualElement> + <elementName>RAMDualPort</elementName> + <elementAttributes> + <entry> + <string>AddrBits</string> + <int>9</int> + </entry> + <entry> + <string>Label</string> + <string>SCAN BUFFER</string> + </entry> + <entry> + <string>Bits</string> + <int>4</int> + </entry> + </elementAttributes> + <pos x="80" y="-180"/> + </visualElement> + <visualElement> + <elementName>Tunnel</elementName> + <elementAttributes> + <entry> + <string>rotation</string> + <rotation rotation="2"/> + </entry> + <entry> + <string>NetName</string> + <string>X</string> + </entry> + </elementAttributes> + <pos x="60" y="-180"/> + </visualElement> + <visualElement> + <elementName>Splitter</elementName> + <elementAttributes> + <entry> + <string>mirror</string> + <boolean>true</boolean> + </entry> + <entry> + <string>Input Splitting</string> + <string>4</string> + </entry> + <entry> + <string>Output Splitting</string> + <string>1*4</string> + </entry> + </elementAttributes> + <pos x="180" y="-140"/> + </visualElement> + <visualElement> + <elementName>atk16_ppu_palette.dig</elementName> + <elementAttributes/> + <pos x="260" y="-200"/> + </visualElement> + <visualElement> + <elementName>Splitter</elementName> + <elementAttributes> + <entry> + <string>Input Splitting</string> + <string>1,1</string> + </entry> + <entry> + <string>Output Splitting</string> + <string>2</string> + </entry> + </elementAttributes> + <pos x="380" y="-200"/> + </visualElement> + <visualElement> + <elementName>Splitter</elementName> + <elementAttributes> + <entry> + <string>Input Splitting</string> + <string>1,1</string> + </entry> + <entry> + <string>Output Splitting</string> + <string>2</string> + </entry> + </elementAttributes> + <pos x="380" y="-160"/> + </visualElement> + <visualElement> + <elementName>Splitter</elementName> + <elementAttributes> + <entry> + <string>Input Splitting</string> + <string>1,1</string> + </entry> + <entry> + <string>Output Splitting</string> + <string>2</string> + </entry> + </elementAttributes> + <pos x="380" y="-120"/> + </visualElement> + <visualElement> + <elementName>Tunnel</elementName> + <elementAttributes> + <entry> + <string>NetName</string> + <string>PR</string> + </entry> + </elementAttributes> + <pos x="420" y="-200"/> + </visualElement> + <visualElement> + <elementName>Tunnel</elementName> + <elementAttributes> + <entry> + <string>NetName</string> + <string>PG</string> + </entry> + </elementAttributes> + <pos x="420" y="-160"/> + </visualElement> + <visualElement> + <elementName>Tunnel</elementName> + <elementAttributes> + <entry> + <string>NetName</string> + <string>PB</string> + </entry> + </elementAttributes> + <pos x="420" y="-120"/> + </visualElement> + <visualElement> + <elementName>Ground</elementName> + <elementAttributes> + <entry> + <string>rotation</string> + <rotation rotation="1"/> + </entry> + <entry> + <string>Bits</string> + <int>4</int> + </entry> + </elementAttributes> + <pos x="-20" y="-160"/> + </visualElement> + <visualElement> + <elementName>Ground</elementName> + <elementAttributes> + <entry> + <string>rotation</string> + <rotation rotation="1"/> + </entry> + </elementAttributes> + <pos x="0" y="-140"/> + </visualElement> + <visualElement> + <elementName>Counter</elementName> + <elementAttributes/> + <pos x="-60" y="-100"/> + </visualElement> + <visualElement> + <elementName>Tunnel</elementName> + <elementAttributes> + <entry> + <string>rotation</string> + <rotation rotation="2"/> + </entry> + <entry> + <string>NetName</string> + <string>PCLK</string> + </entry> + </elementAttributes> + <pos x="-60" y="-80"/> + </visualElement> + <visualElement> + <elementName>VDD</elementName> + <elementAttributes/> + <pos x="-80" y="-120"/> + </visualElement> + <visualElement> + <elementName>Ground</elementName> + <elementAttributes/> + <pos x="-80" y="-40"/> + </visualElement> + <visualElement> + <elementName>Text</elementName> + <elementAttributes> + <entry> + <string>Description</string> + <string>TODO</string> + </entry> + </elementAttributes> + <pos x="-280" y="20"/> + </visualElement> + <visualElement> + <elementName>Tunnel</elementName> + <elementAttributes> + <entry> + <string>rotation</string> + <rotation rotation="2"/> + </entry> + <entry> + <string>NetName</string> + <string>SMEMBUS</string> + </entry> + </elementAttributes> + <pos x="-100" y="60"/> + </visualElement> + <visualElement> + <elementName>Ground</elementName> + <elementAttributes> + <entry> + <string>rotation</string> + <rotation rotation="1"/> + </entry> + <entry> + <string>Bits</string> + <int>7</int> + </entry> + </elementAttributes> + <pos x="-80" y="60"/> + </visualElement> + <visualElement> + <elementName>Text</elementName> + <elementAttributes> + <entry> + <string>Description</string> + <string>TODO: 8x8x4 tile pattern memory</string> + </entry> + </elementAttributes> + <pos x="80" y="-460"/> + </visualElement> + <visualElement> + <elementName>VDD</elementName> + <elementAttributes> + <entry> + <string>rotation</string> + <rotation rotation="1"/> + </entry> + </elementAttributes> + <pos x="60" y="-100"/> + </visualElement> + <visualElement> + <elementName>Probe</elementName> + <elementAttributes> + <entry> + <string>Label</string> + <string>SCAN BUF</string> + </entry> + </elementAttributes> + <pos x="160" y="-40"/> + </visualElement> + <visualElement> + <elementName>Out</elementName> + <elementAttributes> + <entry> + <string>Label</string> + <string>PR</string> + </entry> + <entry> + <string>Bits</string> + <int>2</int> + </entry> + </elementAttributes> + <pos x="600" y="-260"/> + </visualElement> + <visualElement> + <elementName>Out</elementName> + <elementAttributes> + <entry> + <string>Label</string> + <string>PG</string> + </entry> + <entry> + <string>Bits</string> + <int>2</int> + </entry> + </elementAttributes> + <pos x="600" y="-220"/> + </visualElement> + <visualElement> + <elementName>Out</elementName> + <elementAttributes> + <entry> + <string>Label</string> + <string>PB</string> + </entry> + <entry> + <string>Bits</string> + <int>2</int> + </entry> + </elementAttributes> + <pos x="600" y="-180"/> + </visualElement> + <visualElement> + <elementName>Tunnel</elementName> + <elementAttributes> + <entry> + <string>rotation</string> + <rotation rotation="2"/> + </entry> + <entry> + <string>NetName</string> + <string>PB</string> + </entry> + </elementAttributes> + <pos x="580" y="-180"/> + </visualElement> + <visualElement> + <elementName>Tunnel</elementName> + <elementAttributes> + <entry> + <string>rotation</string> + <rotation rotation="2"/> + </entry> + <entry> + <string>NetName</string> + <string>PR</string> + </entry> + </elementAttributes> + <pos x="580" y="-260"/> + </visualElement> + <visualElement> + <elementName>Tunnel</elementName> + <elementAttributes> + <entry> + <string>rotation</string> + <rotation rotation="2"/> + </entry> + <entry> + <string>NetName</string> + <string>PG</string> + </entry> + </elementAttributes> + <pos x="580" y="-220"/> + </visualElement> + <visualElement> + <elementName>In</elementName> + <elementAttributes> + <entry> + <string>Description</string> + <string>Pixel clock</string> + </entry> + <entry> + <string>Label</string> + <string>PCLK</string> + </entry> + </elementAttributes> + <pos x="-440" y="280"/> + </visualElement> + <visualElement> + <elementName>Tunnel</elementName> + <elementAttributes> + <entry> + <string>NetName</string> + <string>PCLK</string> + </entry> + </elementAttributes> + <pos x="-420" y="280"/> + </visualElement> + <visualElement> + <elementName>In</elementName> + <elementAttributes> + <entry> + <string>Description</string> + <string>CPU clock</string> + </entry> + <entry> + <string>Label</string> + <string>CLK</string> + </entry> + </elementAttributes> + <pos x="-440" y="320"/> + </visualElement> + <visualElement> + <elementName>Tunnel</elementName> + <elementAttributes> + <entry> + <string>NetName</string> + <string>CLK</string> + </entry> + </elementAttributes> + <pos x="-420" y="320"/> + </visualElement> + <visualElement> + <elementName>Tunnel</elementName> + <elementAttributes> + <entry> + <string>NetName</string> + <string>DBUS</string> + </entry> + </elementAttributes> + <pos x="-420" y="240"/> + </visualElement> + <visualElement> + <elementName>In</elementName> + <elementAttributes> + <entry> + <string>Description</string> + <string>Data bus</string> + </entry> + <entry> + <string>Label</string> + <string>DBUS</string> + </entry> + <entry> + <string>Bits</string> + <int>16</int> + </entry> + </elementAttributes> + <pos x="-440" y="240"/> + </visualElement> + <visualElement> + <elementName>In</elementName> + <elementAttributes> + <entry> + <string>Description</string> + <string>X pixel</string> + </entry> + <entry> + <string>Label</string> + <string>X</string> + </entry> + <entry> + <string>Bits</string> + <int>9</int> + </entry> + </elementAttributes> + <pos x="-440" y="380"/> + </visualElement> + <visualElement> + <elementName>Tunnel</elementName> + <elementAttributes> + <entry> + <string>NetName</string> + <string>X</string> + </entry> + </elementAttributes> + <pos x="-420" y="380"/> + </visualElement> + <visualElement> + <elementName>In</elementName> + <elementAttributes> + <entry> + <string>Description</string> + <string>Y pixel</string> + </entry> + <entry> + <string>Label</string> + <string>Y</string> + </entry> + <entry> + <string>Bits</string> + <int>8</int> + </entry> + </elementAttributes> + <pos x="-440" y="420"/> + </visualElement> + <visualElement> + <elementName>Tunnel</elementName> + <elementAttributes> + <entry> + <string>NetName</string> + <string>Y</string> + </entry> + </elementAttributes> + <pos x="-420" y="420"/> + </visualElement> + </visualElements> + <wires> + <wire> + <p1 x="-440" y="320"/> + <p2 x="-420" y="320"/> + </wire> + <wire> + <p1 x="580" y="-260"/> + <p2 x="600" y="-260"/> + </wire> + <wire> + <p1 x="-380" y="-100"/> + <p2 x="-220" y="-100"/> + </wire> + <wire> + <p1 x="60" y="-100"/> + <p2 x="80" y="-100"/> + </wire> + <wire> + <p1 x="-80" y="-100"/> + <p2 x="-60" y="-100"/> + </wire> + <wire> + <p1 x="-320" y="100"/> + <p2 x="-300" y="100"/> + </wire> + <wire> + <p1 x="-440" y="420"/> + <p2 x="-420" y="420"/> + </wire> + <wire> + <p1 x="200" y="-200"/> + <p2 x="260" y="-200"/> + </wire> + <wire> + <p1 x="400" y="-200"/> + <p2 x="420" y="-200"/> + </wire> + <wire> + <p1 x="-360" y="40"/> + <p2 x="-340" y="40"/> + </wire> + <wire> + <p1 x="-240" y="-140"/> + <p2 x="-220" y="-140"/> + </wire> + <wire> + <p1 x="140" y="-140"/> + <p2 x="160" y="-140"/> + </wire> + <wire> + <p1 x="200" y="-140"/> + <p2 x="260" y="-140"/> + </wire> + <wire> + <p1 x="0" y="-140"/> + <p2 x="80" y="-140"/> + </wire> + <wire> + <p1 x="160" y="-140"/> + <p2 x="180" y="-140"/> + </wire> + <wire> + <p1 x="-240" y="-80"/> + <p2 x="-220" y="-80"/> + </wire> + <wire> + <p1 x="0" y="-80"/> + <p2 x="20" y="-80"/> + </wire> + <wire> + <p1 x="-440" y="240"/> + <p2 x="-420" y="240"/> + </wire> + <wire> + <p1 x="60" y="-180"/> + <p2 x="80" y="-180"/> + </wire> + <wire> + <p1 x="200" y="-180"/> + <p2 x="260" y="-180"/> + </wire> + <wire> + <p1 x="580" y="-180"/> + <p2 x="600" y="-180"/> + </wire> + <wire> + <p1 x="-240" y="-120"/> + <p2 x="-220" y="-120"/> + </wire> + <wire> + <p1 x="400" y="-120"/> + <p2 x="420" y="-120"/> + </wire> + <wire> + <p1 x="20" y="-120"/> + <p2 x="80" y="-120"/> + </wire> + <wire> + <p1 x="-120" y="280"/> + <p2 x="-100" y="280"/> + </wire> + <wire> + <p1 x="-440" y="280"/> + <p2 x="-420" y="280"/> + </wire> + <wire> + <p1 x="580" y="-220"/> + <p2 x="600" y="-220"/> + </wire> + <wire> + <p1 x="-380" y="-60"/> + <p2 x="-220" y="-60"/> + </wire> + <wire> + <p1 x="-80" y="-60"/> + <p2 x="-60" y="-60"/> + </wire> + <wire> + <p1 x="-320" y="60"/> + <p2 x="-280" y="60"/> + </wire> + <wire> + <p1 x="-100" y="60"/> + <p2 x="-80" y="60"/> + </wire> + <wire> + <p1 x="-440" y="380"/> + <p2 x="-420" y="380"/> + </wire> + <wire> + <p1 x="200" y="-160"/> + <p2 x="260" y="-160"/> + </wire> + <wire> + <p1 x="400" y="-160"/> + <p2 x="420" y="-160"/> + </wire> + <wire> + <p1 x="-20" y="-160"/> + <p2 x="80" y="-160"/> + </wire> + <wire> + <p1 x="160" y="-140"/> + <p2 x="160" y="-40"/> + </wire> + <wire> + <p1 x="-100" y="280"/> + <p2 x="-100" y="300"/> + </wire> + <wire> + <p1 x="20" y="-120"/> + <p2 x="20" y="-80"/> + </wire> + <wire> + <p1 x="-80" y="-120"/> + <p2 x="-80" y="-100"/> + </wire> + <wire> + <p1 x="-80" y="-60"/> + <p2 x="-80" y="-40"/> + </wire> + <wire> + <p1 x="-320" y="80"/> + <p2 x="-320" y="100"/> + </wire> + </wires> + <measurementOrdering/> +</circuit>
\ No newline at end of file |
