
4/29/2020
Loongson 3A3000 / 3B3000 Processor User Manual
44
50
0x2C0 Axi3_bandwidth_w
Axi3_bandwidth_r
0x2C8 Axi3_latency_w
Axi3_latency_r
0x2D0 Axi4_bandwidth_w
Axi4_bandwidth_r
0x2D8 Axi4_latency_w
Axi4_latency_r
0x2E0 Cmdq0_bandwidth_w
Cmdq0_bandwidth_r
0x2E8 Cmdq0_latency_w
Cmdq0_latency_r
0x2F0 Cmdq1_bandwidth_w
Cmdq1_bandwidth_r
0x2F8 Cmdq1_latency_w
Cmdq1_latency_r
0x300 Cmdq2_bandwidth_w
Cmdq2_bandwidth_r
0x308 Cmdq2_latency_w
Cmdq2_latency_r
0x310 Cmdq3_bandwidth_w
Cmdq3_bandwidth_r
0x318 Cmdq3_latency_w
Cmdq3_latency_r
0x320
tRESYNC_length tRESYNC_shift tRESYNC_max tRESYNC_min Pre_predict
tXS
tREF_low
0x328
tRESYNC_delay
0x330
Stat_en
Rdbuffer_max
Retry
Wr_pkg_num
Rwq_rb
Stb_en
Addr_new
tRDQidle
0x338
Rd_fifo_depth
Retry_cnt
0x340
tREFretention
Ref_num
tREF_IDLE
Ref_sch_en
0x348
0x350
Lpbk_data_en
0x358
Lpbk_ecc_mask_en
Lpbk_ecc_en
Lpbk_data_mask_en
0x360
Int_ecc_cnt_fatal Int_ecc_cnt_errorEcc_cnt_cs_3
Ecc_cnt_cs_2
Ecc_cnt_cs_1
Ecc_cnt_cs_0
0x368
0x370
Prior_age3
Prior_age2
Prior_age1
Prior_age_0
0x378
Row_hit_place
0x380
Zq_cnt_1
Zq_cnt_0
0x388
Zq_cnt_3
Zq_cnt_2
Page 55
Godson 3A3000 / 3B3000 Processor User Manual • Volume 1
9.5 Software Programming Guide
9.5.1
Initial operation
The initialization operation is started when the software writes 1 to the register Init_start (0x018). Set Init_start
Before the signal, all other registers must be set to the correct values.
The DRAM initialization process of software and hardware cooperation is as follows:
(1) The software writes correct configuration values to all registers, but Init_start (0x018) is in the process
Must be kept at 0;
(2) The software sets Init_start (0x018) to 1, which will lead to the start of hardware initialization;
(3) The initialization operation starts inside the PHY, and the DLL will try to perform the lock operation. If the lock is successful, you can
Dll_init_done (0x000) reads the corresponding status, and can read and write from Dll_value_ck (0x000)
The number of front lock delay lines; if the lock is not successful, the initialization will not continue (at this time, you can set
Dll_bypass (0x018) makes initialization continue to execute);
(4) After the DLL is locked (or bypass set), the controller will send the DRAM to the DRAM according to the initialization requirements of the corresponding DRAM
Issue the corresponding initialization sequence, such as the corresponding MRS command, ZQCL command, etc .;
(5) Software can judge whether the memory initialization operation is completed by sampling the Dram_init (0x160) register.
9.5.2
Control of reset pin