uboot移植-DDR初始化

Linux最终运行在DDR中

配置:wind10,Ubuntu16.04,MX6ul-ALPHA开发板,ddr_stress_tester工具。
内容:在编译uboot之前初始化DDR。

uboot功能是启动linux

将linux的内核和设备树从EMMC,或者网络中拷贝到DDR中,linux在DDR中运行。每个板子的DDR不同,所以要初始化。
编译Uboot:
u-boot在这里插入图片描述
u-boot.bin转换为u-boot.imx。u-boot.imx就是添加头部信息的u-boot.bin。其中头部数据(IVT_DCD)就是图片中imximage.cfg文件。其中的imximage.cfg.cfgtmp是.cfg文件编译出来的附属文件。
DDR初始化的相关代码就是在头部数据中。

实际操作

1:安装ddr_stress_tester工具,该工具是NXP专门测试其芯片的DDR的。
在安装目录中新建 xxx_512MB.inc文件,该文件可以用Vscode打开。
2:从网上找到IM6ULL_DDR3芯片的测试工具excel格式的配置文件,根据芯片和DDR的参数配置文件(详情见原子Linux驱动开发第二期20.3节的视频讲解)
3:将excel表格中的RealView.inc下属栏界面的相关信息全部复制xxx_512MB.inc文件中。
硬件设置,USB连接电脑,SD卡弹出,启动方式选择USB启动,关闭VMware
4:使用tester工具,先校准DDR。配置工具信息如图
在这里插入图片描述
Download,显示相关信息,校准(calibration)。ALPHA开发板主频800Mhz,测试选择0-400Mhz,测试时间比较长。
5:读取工具窗口的寄存器数值,和imxmage.cfg文件的寄存器数值比较,比较之前可以将工具窗口数值和原先 xxx_512MB.inc文件比较,重点修改校准值寄存器(Calibration 3个)
6:重新编译

超频测试

目的:如果超频测试得到的实际数值比标准主频高出10%到20%。说明硬件设计是没有问题的。超频测试之前需经过DDR校准。

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值