GR8RAM/Documentation/Initialization Sequence
Zane Kaminski 3816ecd0a1 ugh
2021-03-19 02:56:20 -04:00

301 lines
9.2 KiB
Plaintext

Init sequence
Init State SDRAM Flash IS Other
--------------------------------------------------------------------------------
$000000-$0FFFBF Wait for Vcc Wait for Vcc 0
$000000 NOP CKE /CS hi, CLK lo
...
$0FFF90 NOP CKE /CS hi, CLK lo InitActv <= ~BODf
....
$0FFFA0 NOP CKE /CS lo, CLK lo
...
$0FFFAF NOP CKE /CS lo, CLK lo
$0FFFB0-$0FFFBF Init: Precharge Send read cmd ($03) 1
$0FFFB0 NOP CKE CLK lo, MOSI 0 (b7)
$0FFFB1 NOP CKE CLK hi
$0FFFB2 NOP CKE CLK lo, MOSI 0 (b6)
$0FFFB3 PC all CLK hi
$0FFFB4 NOP CKE CLK lo, MOSI 0 (b5)
$0FFFB5 NOP CKE CLK hi
$0FFFB6 NOP CKE CLK lo, MOSI 0 (b4)
$0FFFB7 NOP CKE CLK hi
$0FFFB8 NOP CKE CLK lo, MOSI 0 (b3)
$0FFFB9 NOP CKE CLK hi
$0FFFBA NOP CKE CLK lo, MOSI 0 (b2)
$0FFFBB Load mode CLK hi
$0FFFBC NOP CKE CLK lo, MOSI 1 (b1)
$0FFFBD NOP CKE CLK hi
$0FFFBE NOP CKE CLK lo, MOSI 1 (b0)
$0FFFBF NOP CKE CLK hi
$0FFFC0-$0FFFEF Init: mode & ref Send address ($000000) 2
$0FFFC0 NOP CKE CLK lo, MOSI 0 (b23)
$0FFFC1 NOP CKE CLK hi
$0FFFC2 NOP CKE CLK lo, MOSI 0 (b22)
$0FFFC3 AREF CLK hi
$0FFFC4 NOP CKE CLK lo, MOSI Firmware[1] (b21)
$0FFFC5 NOP CKE CLK hi
$0FFFC6 NOP CKE CLK lo, MOSI Firmware[0] (b20)
$0FFFC7 NOP CKE CLK hi
$0FFFC8 NOP CKE CLK lo, MOSI 0 (b19)
$0FFFC9 NOP CKE CLK hi
$0FFFCA NOP CKE CLK lo, MOSI 0 (b18)
$0FFFCB AREF CLK hi
$0FFFCC NOP CKE CLK lo, MOSI 0 (b17)
$0FFFCD NOP CKE CLK hi
$0FFFCE NOP CKE CLK lo, MOSI 0 (b16)
$0FFFCF NOP CKE CLK hi
$0FFFD0 NOP CKE CLK lo, MOSI 0 (b15)
$0FFFD1 NOP CKE CLK hi
$0FFFD2 NOP CKE CLK lo, MOSI 0 (b14)
$0FFFD3 AREF CLK hi
$0FFFD4 NOP CKE CLK lo, MOSI 0 (b13)
$0FFFD5 NOP CKE CLK hi
$0FFFD6 NOP CKE CLK lo, MOSI 0 (b12)
$0FFFD7 NOP CKE CLK hi
$0FFFD8 NOP CKE CLK lo, MOSI 0 (b11)
$0FFFD9 NOP CKE CLK hi
$0FFFDA NOP CKE CLK lo, MOSI 0 (b10)
$0FFFDB AREF CLK hi
$0FFFDC NOP CKE CLK lo, MOSI 0 (b9)
$0FFFDD NOP CKE CLK hi
$0FFFDE NOP CKE CLK lo, MOSI 0 (b8)
$0FFFDF NOP CKE CLK hi
$0FFFE0 NOP CKE CLK lo, MOSI 0 (b7)
$0FFFE1 NOP CKE CLK hi
$0FFFE2 NOP CKE CLK lo, MOSI 0 (b6)
$0FFFE3 AREF CLK hi
$0FFFE4 NOP CKE CLK lo, MOSI 0 (b5)
$0FFFE5 NOP CKE CLK hi
$0FFFE6 NOP CKE CLK lo, MOSI 0 (b4)
$0FFFE7 NOP CKE CLK hi
$0FFFE8 NOP CKE CLK lo, MOSI 0 (b3)
$0FFFE9 NOP CKE CLK hi
$0FFFEA NOP CKE CLK lo, MOSI 0 (b2)
$0FFFEB AREF CLK hi
$0FFFEC NOP CKE CLK lo, MOSI 0 (b1)
$0FFFED NOP CKE CLK hi
$0FFFEE NOP CKE CLK lo, MOSI 0 (b0)
$0FFFEF NOP CKE CLK hi
$0FFFF0-$0FFFFF Init: mode & ref 8 dummy clocks 2
$0FFFF0 NOP CKE CLK lo, MOSIOE 0
$0FFFF1 NOP CKE CLK hi
$0FFFF2 NOP CKE CLK lo
$0FFFF3 AREF CLK hi
$0FFFF4 NOP CKE CLK lo
$0FFFF5 NOP CKE CLK hi
$0FFFF6 NOP CKE CLK lo
$0FFFF7 NOP CKE CLK hi
$0FFFF8 NOP CKE CLK lo
$0FFFF9 NOP CKE CLK hi
$0FFFFA NOP CKE CLK lo
$0FFFFB AREF CLK hi
$0FFFFC NOP CKE CLK lo
$0FFFFD NOP CKE CLK hi
$0FFFFE NOP CKE CLK lo
$0FFFFF NOP CKE CLK hi
$100000-$503FFF Write ROM data Shift in read data 3
$100000 NOP CKE CLK lo
$100001 NOP CKE CLK hi, get b7:6 of $000000
$100002 NOP CKE CLK lo
$100003 AREF CLK hi, get b5:4 of $000000
$100004 NOP CKE CLK lo
$100005 ACT CLK hi, get b3:2 of $000000
$100006 NOP CKE CLK lo
$100007 WR AP CLK hi, get b1:0 of $000000
$100008 NOP CKE CLK lo
$100009 NOP CKE CLK hi, get b7:6 of $000001
$10000A NOP CKE CLK lo
$10000B AREF CLK hi, get b5:4 of $000001
$10000C NOP CKE CLK lo
$10000D ACT CLK hi, get b3:2 of $000001
$10000E NOP CKE CLK lo
$10000F WR AP CLK hi, get b1:0 of $000001
...
$503FF0 NOP CKE CLK lo
$503FF1 NOP CKE CLK hi, get b7:6 of $0807FE
$503FF2 NOP CKE CLK lo
$503FF3 AREF CLK hi, get b5:4 of $0807FE
$503FF4 NOP CKE CLK lo
$503FF5 ACT CLK hi, get b3:2 of $0807FE
$503FF6 NOP CKE CLK lo
$503FF7 WR AP CLK hi, get b1:0 of $0807FE
$503FF8 NOP CKE CLK lo
$503FF9 NOP CKE CLK hi, get b7:6 of $0807FF
$503FFA NOP CKE CLK lo
$503FFB AREF CLK hi, get b5:4 of $0807FF
$503FFC NOP CKE CLK lo
$503FFD ACT CLK hi, get b3:2 of $0807FF
$503FFE NOP CKE CLK lo
$503FFF WR AP CLK hi, get b1:0 of $0807FF
$504000 NOP CKE CLK lo, /CS hi 3
$504001 NOP CKE CLK lo, /CS hi 3
$504002 NOP CKE CLK lo, /CS hi 3 SDRAMActv <= InitActv && ~InitInterrupted
...
$5F5E0F flip 1hz, wrap
Init sequence
Init State SDRAM Flash IS Other
--------------------------------------------------------------------------------
$00000-$0FFBF Nothing Nothing 0
$00000 NOP CKE /CS hi, CLK lo
...
$0FF90 NOP CKE /CS hi, CLK lo InitActv <= ~BODf
....
$0FFA0 NOP CKE /CS lo, CLK lo
...
$0FFAF NOP CKE /CS lo, CLK lo
$0FFB0-$0FFBF Init: Precharge Send read cmd ($03) 1
$0FFB0 NOP CKE CLK lo, MOSI 0 (b7)
$0FFB1 NOP CKE CLK hi
$0FFB2 NOP CKE CLK lo, MOSI 0 (b6)
$0FFB3 PC all CLK hi
$0FFB4 NOP CKE CLK lo, MOSI 0 (b5)
$0FFB5 NOP CKE CLK hi
$0FFB6 NOP CKE CLK lo, MOSI 0 (b4)
$0FFB7 NOP CKE CLK hi
$0FFB8 NOP CKE CLK lo, MOSI 0 (b3)
$0FFB9 NOP CKE CLK hi
$0FFBA NOP CKE CLK lo, MOSI 0 (b2)
$0FFBB Load mode CLK hi
$0FFBC NOP CKE CLK lo, MOSI 1 (b1)
$0FFBD NOP CKE CLK hi
$0FFBE NOP CKE CLK lo, MOSI 1 (b0)
$0FFBF NOP CKE CLK hi
$0FFC0-$0FFEF Init: mode & ref Send address ($000000) 2
$0FFC0 NOP CKE CLK lo, MOSI 0 (b23)
$0FFC1 NOP CKE CLK hi
$0FFC2 NOP CKE CLK lo, MOSI 0 (b22)
$0FFC3 AREF CLK hi
$0FFC4 NOP CKE CLK lo, MOSI Firmware[1] (b21)
$0FFC5 NOP CKE CLK hi
$0FFC6 NOP CKE CLK lo, MOSI Firmware[0] (b20)
$0FFC7 NOP CKE CLK hi
$0FFC8 NOP CKE CLK lo, MOSI 0 (b19)
$0FFC9 NOP CKE CLK hi
$0FFCA NOP CKE CLK lo, MOSI 0 (b18)
$0FFCB AREF CLK hi
$0FFCC NOP CKE CLK lo, MOSI 0 (b17)
$0FFCD NOP CKE CLK hi
$0FFCE NOP CKE CLK lo, MOSI 0 (b16)
$0FFCF NOP CKE CLK hi
$0FFD0 NOP CKE CLK lo, MOSI 0 (b15)
$0FFD1 NOP CKE CLK hi
$0FFD2 NOP CKE CLK lo, MOSI 0 (b14)
$0FFD3 AREF CLK hi
$0FFD4 NOP CKE CLK lo, MOSI 0 (b13)
$0FFD5 NOP CKE CLK hi
$0FFD6 NOP CKE CLK lo, MOSI 0 (b12)
$0FFD7 NOP CKE CLK hi
$0FFD8 NOP CKE CLK lo, MOSI 0 (b11)
$0FFD9 NOP CKE CLK hi
$0FFDA NOP CKE CLK lo, MOSI 0 (b10)
$0FFDB AREF CLK hi
$0FFDC NOP CKE CLK lo, MOSI 0 (b9)
$0FFDD NOP CKE CLK hi
$0FFDE NOP CKE CLK lo, MOSI 0 (b8)
$0FFDF NOP CKE CLK hi
$0FFE0 NOP CKE CLK lo, MOSI 0 (b7)
$0FFE1 NOP CKE CLK hi
$0FFE2 NOP CKE CLK lo, MOSI 0 (b6)
$0FFE3 AREF CLK hi
$0FFE4 NOP CKE CLK lo, MOSI 0 (b5)
$0FFE5 NOP CKE CLK hi
$0FFE6 NOP CKE CLK lo, MOSI 0 (b4)
$0FFE7 NOP CKE CLK hi
$0FFE8 NOP CKE CLK lo, MOSI 0 (b3)
$0FFE9 NOP CKE CLK hi
$0FFEA NOP CKE CLK lo, MOSI 0 (b2)
$0FFEB AREF CLK hi
$0FFEC NOP CKE CLK lo, MOSI 0 (b1)
$0FFED NOP CKE CLK hi
$0FFEE NOP CKE CLK lo, MOSI 0 (b0)
$0FFEF NOP CKE CLK hi
$0FFF0-$0FFFF Init: mode & ref 8 dummy clocks 2
$0FFF0 NOP CKE CLK lo, MOSIOE 0
$0FFF1 NOP CKE CLK hi
$0FFF2 NOP CKE CLK lo
$0FFF3 AREF CLK hi
$0FFF4 NOP CKE CLK lo
$0FFF5 NOP CKE CLK hi
$0FFF6 NOP CKE CLK lo
$0FFF7 NOP CKE CLK hi
$0FFF8 NOP CKE CLK lo
$0FFF9 NOP CKE CLK hi
$0FFFA NOP CKE CLK lo
$0FFFB AREF CLK hi
$0FFFC NOP CKE CLK lo
$0FFFD NOP CKE CLK hi
$0FFFE NOP CKE CLK lo
$0FFFF NOP CKE CLK hi
$10000-$2FFFF Write ROM data Shift in read data 3
$10000 NOP CKE CLK lo
$10001 NOP CKE CLK hi, get b7:6 of $000000
$10002 NOP CKE CLK lo
$10003 AREF CLK hi, get b5:4 of $000000
$10004 NOP CKE CLK lo
$10005 ACT CLK hi, get b3:2 of $000000
$10006 NOP CKE CLK lo
$10007 WR AP CLK hi, get b1:0 of $000000
$10008 NOP CKE CLK lo
$10009 NOP CKE CLK hi, get b7:6 of $000001
$1000A NOP CKE CLK lo
$1000B AREF CLK hi, get b5:4 of $000001
$1000C NOP CKE CLK lo
$1000D ACT CLK hi, get b3:2 of $000001
$1000E NOP CKE CLK lo
$1000F WR AP CLK hi, get b1:0 of $000001
...
$2FFF0 NOP CKE CLK lo
$2FFF1 NOP CKE CLK hi, get b7:6 of $003FFE
$2FFF2 NOP CKE CLK lo
$2FFF3 AREF CLK hi, get b5:4 of $003FFE
$2FFF4 NOP CKE CLK lo
$2FFF5 ACT CLK hi, get b3:2 of $003FFE
$2FFF6 NOP CKE CLK lo
$2FFF7 WR AP CLK hi, get b1:0 of $003FFE
$2FFF8 NOP CKE CLK lo
$2FFF9 NOP CKE CLK hi, get b7:6 of $003FFF
$2FFFA NOP CKE CLK lo
$2FFFB AREF CLK hi, get b5:4 of $003FFF
$2FFFC NOP CKE CLK lo
$2FFFD ACT CLK hi, get b3:2 of $003FFF
$2FFFE NOP CKE CLK lo
$2FFFF WR AP CLK hi, get b1:0 of $003FFF
$30000 NOP CKE CLK lo, /CS hi 3
$30001 NOP CKE CLK lo, /CS hi 3
$30002 NOP CKE CLK lo, /CS hi 3 SDRAMActv <= InitActv && ~InitInterrupted