- 1、本文档共3页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
DDR3简易配置手册
DDR (MX)
DDR (MX)
DDDDRR 简易配置手册((MMXX))
1,
1,
11,,频率
找到相应的config 和h 文件,如: customer\board\configs\m6_ramos_v1.h
找到宏M6_DDR_CLK , 如: #define M6_DDR_CLK (516)
修改括号中的数值即可,为12 的整数倍,范围应在360~768 之间。
2,
2,
22,,容量
找到相应的config 和h 文件,如: customer\board\configs\m6_ramos_v1.h
2.1 For uboot
找到容量相关的宏:
//#define M6_DDR3_1GB
#define M6_DDR3_512M
根据你DDR 的总容量进行设置。目前的代码这两种配置修改比较简单。注意目前的512M
是对应的128Mb x 8bit x 4pcs,1GB 对应256Mb x 8bit x 4pcs。
2.2 For kernel
找到容量相关的宏:
CONFIG_EXTRA_ENV_SETTINGS
并找到相关的所有设置“mem=1024m”
Mx 的代码全部固定了1024m 给内核使用,根据实际容量自行修改。
如果总容量小于等于512MB 时,“vmalloc=256m”可以去掉。
3,
3,
33,,行列地址
在timming.c 中,如:customer\board\m6_ramos_v1\firmware\timming.c 找到:
#if defined(M6_DDR3_1GB)
#define DDR3_4Gbx16
#elif defined(M6_DDR3_512M)
#define DDR3_2Gbx16
如果你使用的都是推荐的配置,如 128Mb x 8bit x 4pcs(512MB) 和 256Mb x 8bit x
4pcs(1GB)。那在之前的头文件中设置好容量就可以了。但在实际情况中有可能遇到特殊的
情况需要修改这部分设置。例如两个256MB 位宽8bit 的DDR,总容量同样也是512MB, 但
行列地址却不是之前对应的那个:
#ifdef DDR3_2Gbx16
//row_size 00 : A0~A15. 01 : A0~A12, 10 : A0~A13, 11 : A0~A14.
#define ddr3_row_size 2
//col size 00 : A0~A7, 01 : A0~A8, 10: A0 ~A9. 11, A0~A9, A11.
#define ddr3_col_size 2
这种情况,我们最好添加一个宏,如:
#if defined(M6_DDR3_1GB)
#define DDR3_4Gbx16
#elif defined(M6_DDR3_512M)
//#define DDR3_2Gbx16
#define DDR3_2Gbx8
并增加相应宏下的行列地址设置,如:
#ifdef DDR3_2Gbx16
//row_size 00 : A0~A15. 01 : A0~A12, 10 : A0~A13, 11 : A0~A14.
#define ddr3_row_size 2
//col size 00 : A0~A7, 01 : A0~A8, 10: A0 ~A9. 11, A0~A9, A11.
#define ddr3_col_size 2
#elif defined DDR3_4Gbx16
//row_size 00 : A0~A15. 01 : A0~A12, 10 : A0~A13, 11 : A0~A14.
#define ddr3_row_size 3
//col size 00 : A0~A7, 01 : A0~A8, 10: A0 ~A9. 11, A0~A9, A11.
#define ddr3_
文档评论(0)