From 15337f762451deabdabec873e7aa8a2a483ec75c Mon Sep 17 00:00:00 2001 From: Jan Tuomi Date: Fri, 14 Apr 2023 11:43:43 +0300 Subject: Set up MMIO with keyboard, terminal emulator --- digital/atk16_mem.dig | 780 ++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 629 insertions(+), 151 deletions(-) (limited to 'digital/atk16_mem.dig') diff --git a/digital/atk16_mem.dig b/digital/atk16_mem.dig index 540e64d..0c217b9 100644 --- a/digital/atk16_mem.dig +++ b/digital/atk16_mem.dig @@ -10,122 +10,194 @@ Width - 5 + 7 - RAMAsync + EEPROM AddrBits 15 + + isProgramMemory + true + Label - MEM_RAM + MEM_ROM Bits 16 + + Data + 4014,2a00,6026,13*8000,18,18,18,1a,8000,0,e000,e001,4855,f000 +,3140,1b48,3148,1b48,4017,2000,2000,4216,2240,3040,1b49,2340,1b49 +,2140,e000,61ff + - + - Tunnel + Ground rotation - + + + + + + VDD + - NetName - MEM_IE + rotation + - + - EEPROM + VDD - AddrBits - 15 + rotation + + + + + + In + - isProgramMemory - true + Description + Address Label - MEM_ROM + ADDR Bits 16 + + + + + Splitter + - Data - 4014,2a00,6015,13*8000,4*16,8010,0,4855,e000,400a,9e00,1fe0,3178 -,1b48,6001,f000,3148,1b48,3150,1b48,1011,860a,3158,1b48,4200,4401 -,650,1280,14c0,1009,8408,61fa,1b49,2540,1b49,2340,1b49,2f40,51c0 -,10c0,1b49,2740,1b49,2540,1b49,2340,1b49,2f40,51c0 + Input Splitting + 16 + + + Output Splitting + 13,1,1,1 - + + + + atk16_mem_mux.dig + + Splitter Input Splitting - 16 + 13,1,1 + + + Output Splitting + 15 + + + + + + Splitter + + + Input Splitting + 1,1 Output Splitting - 15,1 + 2 - + Demultiplexer + + Selector Bits + 2 + Bits 15 - + - Ground + Probe - rotation - + Label + ROM_OUT - + - In + Driver - Description - Address + Bits + 16 - Label - ADDR + flipSelPos + true + + + + + Demultiplexer + - Bits - 16 + Selector Bits + 2 + + + flipSelPos + true - + + + + Tunnel + + + NetName + RAM_IE + + + In @@ -147,83 +219,159 @@ true - + - Driver + Tunnel - rotation - + NetName + CLK + + + + + + RAMDualPort + + + AddrBits + 15 + + + Label + MEM_RAM Bits 16 - + + + + VDD + + + rotation + + + + Tunnel rotation - + NetName - MEM_OE + CLK + + + + + + Tunnel + + + rotation + + + + NetName + RAM_IE + + + + + + Tunnel + + + rotation + + + + NetName + DBUS + + + + + + Probe + + + Label + RAM_OUT + + + + + + Driver + + + Bits + 16 - + In Description - Memory input enable + Clock Label - MEM_IE + CLK - + - In + Out Description - Memory output enable + Memory-mapped I/O word input enable Label - MEM_OE + MMIO_IE - + - Tunnel + Out - NetName - MEM_OE + Description + Memory-mapped I/O word output enable + + + Label + MMIO_OE - + Tunnel NetName - MEM_IE + MMIO_S - + Testcase @@ -231,243 +379,573 @@ Testdata - ADDR MEM_IE MEM_OE DBUS DBUS_out + CLK ADDR MEM_IE MEM_OE DBUS DBUS_out # read ROM program(0xFF) -0x0 0 1 Z 0xFF +C 0x0 0 1 Z 0xFF # read RAM memory MEM_RAM(0x0)=0x55; -0 0 0 Z X -0x8000 0 1 Z 0x55 +C 0 0 0 Z X +C 0x8000 0 1 Z 0x55 # write to RAM -0x8000 1 0 0xAA 0xAA -0x8000 0 1 Z 0xAA +C 0x8000 1 0 0xAA 0xAA +C 0x8000 0 1 Z 0xAA - + - Driver + In - Bits - 16 + Description + Memory input enable + + + Label + MEM_IE - + - VDD + In - rotation - + Description + Memory output enable + + + Label + MEM_OE - + - VDD + And rotation - + - + + + + Tunnel + + + NetName + RAM_OE + + + + + + Tunnel + + + NetName + MEM_OE + + + + + + Tunnel + + + NetName + MEM_OE + + + + + + Tunnel + + + NetName + DBUS + + + - DriverInvSel + And rotation - + + + + + + Tunnel + - Bits - 16 + NetName + ROM_OE + + + + + + Tunnel + + + NetName + MEM_OE + + + + + + Tunnel + + + NetName + DBUS + + + + + + Tunnel + + + NetName + DBUS + + + + + + Decoder + + + Selector Bits + 2 flipSelPos true - + - Probe + Tunnel - Label - ROM_OUT + NetName + ROM_OE - + - Probe + Tunnel + + + NetName + RAM_OE + + + + + + Tunnel + + + NetName + MMIO_OE + + + + + + Tunnel + + + NetName + MMIO_IE + + + + + + And + + + + + Tunnel + + + rotation + + + + NetName + MEM_OE + + + + + + Tunnel + + + rotation + + + + NetName + MMIO_OE + + + + + + And + + + + + Tunnel + + + rotation + + + + NetName + MEM_IE + + + + + + Tunnel + + + rotation + + + + NetName + MMIO_IE + + + + + + Out + + Description + Memory-mapped I/O word selector + Label - RAM_OUT + MMIO_S + + + Bits + 13 - + + + + Tunnel + + + rotation + + + + NetName + MMIO_S + + + + + + Tunnel + + + NetName + MEM_IE + + + - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + + + + + - + - - + + - - + + - - + + - - + + + + + + - - + + + + + + + + + + + + + + - - + + - - + + + + + + + + + + + + + + + + + + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + - - + + - - + + -- cgit v1.3