一 环境
linux系统:3.14.52
uboot:2015.04
系统选用DDR芯片型号: IS43/46TR16640A
二 ddr设置方法
2.1 简介
imx6ul只支持16bit总线, 最大速率大400MHz。
外部信号:
系统选用DDR芯片型号: IS43/46TR16640A
特点:
- 128MB
- High speed data transfer rates with system frequency up to 933 MHz
- 8 internal banks for concurrent operation
实际应用:
- 配置为 64M x 16模式
地址表:
2.2 系统应用
2.2.1 uboot配置文件:
imximage.cfg
配置 主要寄存器:
阅读imx6ul 和 MX6ul_DDR3_校验_应用手册
可通过ddr工具ddr_stress_tester_v2.52得到相关几个参数:
1. Write leveling calibration
MMDC_MPWLDECTRL0 ch0 (0x021b080c) = 0x00040000
2. Read DQS Gating calibration
MPDGCTRL0 PHY0 (0x021b083c) = 0x41540148
3. Read calibration
MPRDDLCTL PHY0 (0x021b0848) = 0x40404240
4. Write calibration
MPWRDLCTL PHY0 (0x021b0850) = 0x40405450
5. ddr容量相关寄存器:
MMDC0_MDASP = 0x00000043, 配置为128M
6. 片选,行,列地址配置相关寄存器
MMDC0_MDCTL = 0x82180000,配置为片选0,13位列地址,10位行地址。
7. 时间相关参数:
MMDC0_MDCFG0=0x2c3052F3 的tRFC, tXS
MMDC0_MDOR=0x00301023 的tXPR
2.2.2 ddr大小定义:
mx6ul_14x14_evk.h
#define PHYS_SDRAM_SIZE SZ_128M
2.2.3 内核设备树配置
即DDR内存空间从0x80000000开始,共有128M大小。