mpc8306 ddr2 setup:
RCWLR = 0x4423_0086; input sys_clk = 33.333Mhz
so:
csb_clk = 133Mhz, DDR2_clk = 266Mhz
DDR2_tclk = 7.5ns
DDR2 Chip on MPC8306SOM is MT47H64M16HR-3,from micron's datasheet
tRP(min) = 15ns;
tRAS(min) = 40ns;
tRCD(min) = 15ns;
tRFC(min) = 127.5ns;
tWR(min) = 15ns;
tRCD(min) = 15ns;
tRRD(min) = 10ns;
tWTR(min) = 7.5ns;
by MPC8306 RefrenceManual:
DDR2_Timing_cfg_1_reg:
PRETOACT(tRP) = 15ns/7.5ns = 2;
ACTTOPRE(tRAS) = 40ns/7.5ns = 6;
ACTTORW(tRCD) = 15ns/7.5ns = 2;
CASLAT(CL) = 5; CL = 3 clocks;
REFREC(tRFC) = 127.5ns/7.5ns -8 = 9;
WRREC(tWR) = 15ns/7.5ns = 2;
ACTTOACT(tRRD) = 10ns/7.5ns = 2;
WRTORD(tWTR) = 7.5ns/7.5ns = 1;
so, value of DDR2_Timing_cfg_1 should be:
# TIMING_CONFIG_1
# bit 1-3 = 2 - PRETOACT precharge activate interval 3 clock cycles
# bit 4-7 = 6 - ACTTOPRE activate to precharge interval 9 clock cycles
# bit 9-11 = 2 = ACTTORW activate to r/w interval 3 clock cycles
# bit 13 - 15 = 5 - CASLAT CAS latency 3 clock cycles
# bit 16 - 19 = 9 - REFREC refresh recovery time 17 clock cycles
# bit 21 - 23 = 2 - WRREC data to precharge interval 3 clock cycles
# bit 25 - 27 = 2 - ACTTOACT activate to activate interval 2 clock cycles
# bit 29 - 31 = 1 - WRTORD write data to read command interval 2 clock cycles
#reg ${DDR_CONT_GROUP}TIMING_CFG_1 = 0x26259221
actually,the mpc8306som_init.tcl
# TIMING_CONFIG_1
# bit 1-3 = 3 - PRETOACT precharge activate interval 3 clock cycles
# bit 4-7 = 9 - ACTTOPRE activate to precharge interval 9 clock cycles
# bit 9-11 = 3 = ACTTORW activate to r/w interval 3 clock cycles
# bit 13 - 15 = 5 - CASLAT CAS latency 3 clock cycles
# bit 16 - 19 = d - REFREC refresh recovery time 21 clock cycles
# bit 21 - 23 = 3 - WRREC data to precharge interval 3 clock cycles
# bit 25 - 27 = 2 - ACTTOACT activate to activate interval 2 clock cycles
# bit 29 - 31 = 2 - WRTORD write data to read command interval 2 clock cycles
#reg ${DDR_CONT_GROUP}TIMING_CFG_1 = 0x3935d322
why?
the fact is use the value in mpc8306som_init.tcl is OK,use the value by calculate is wrong.
Have any suggestiton?