RK3399芯片上电后加载启动程序的详细流程

芯片上电解复位之后执行的第一段程序,在芯片中称之为Bootrom loader。这部分程序在芯片制造过程中固化到其内部的ROM空间,具备只读属性,在实际使用过程中无法修改这部分内容,这部分程序的知识产权也仅归属于芯片公司所有。其实,你也可以将Bootrom loader称之为固件。
image-20211224231308003对于ARM架构的处理器而言,芯片上电解复位后的PC通常是指向0x000000000xffff0000地址,也就是说,它会去该地址处取第一条指令、译码、执行。CPU能支持的启动模式通过硬件拨码的方式告知CPU,CPU上电解复位后内部逻辑会识别bootmode。依据识别出的bootmode决定去何处取第一条指令。假设解析bootmode后发现并不是从bootrom启动,而是从其他存储外设启动,例如norflashnandflashqspiflash等,这些外设就会变为CPU的一级启动设备,而CPU内部逻辑也会将这些启动外设的地址空间进行remap处理。

RK3399内部包含4个ARM cortex-A53以及2个cortex-A72,典型的cluster结构,cortex-A53作为小核而cortex-A72作为大核。当系统上电解复位之后,cortex-A53的core0作为第一个启动的核心,执行0xffff0000处的Bootrom loader程序。

其完整的启动流程如下图所示:

+--------+----------------+----------+-------------+---------+
| Boot   | Terminology #1 | Actual   | Rockchip    | Image   |
| stage  |                | program  |  Image      | Location|
| number |                | name     |   Name      | (sector)|
+--------+----------------+----------+-------------+---------+
| 1      |  Primary       | ROM code | BootRom     |         |
|        |  Program       |          |             |         |
|        |  Loader        |          |             |         |
|        |                |          |             |         |
| 2      |  Secondary     | U-Boot   |idbloader.img| 0x40    | pre-loader
|        |  Program       | TPL/SPL  |             |         |
|        |  Loader (SPL)  |          |             |         |
|        |                |          |             |         |
| 3      |  -             | U-Boot   | u-boot.itb  | 0x4000  | including u-boot and atf
|        |                |          | uboot.img   |         | only used with miniloader
|        |                |          |             |         |
|        |                | ATF/TEE  | trust.img   | 0x6000  | only used with miniloader
|        |                |          |             |         |
| 4      |  -             | kernel   | boot.img    | 0x8000  |
|        |                |          |             |         |
| 5      |  -             | rootfs   | rootfs.img  | 0x40000 |
+--------+----------------+----------+-------------+---------+

RK3399的二级启动设备支持SPI NOR FLASHSPI NAND FLASHeMMCSD以及USB load,可以将二级启动程序放置于上述静态存储设备中,RK3399通过读取ID BLOCK信息决定当前启动程序是否有效。
image-20211225173147785
RK3399提供了镜像文件更新的软件工具AndroidTool.exe,该工具可以更新二级启动程序及之后的所有镜像。
image-20211225173524512
对于如何进入到固件更新模式,这取决于板卡的设计方式,例如我们手中的这块板子,它进入固件更新方式如下:

使用 Type-C 线连接开发板和主机,按住 recover 键然不要松开然后按 reset 键系统复位,大约两秒后,松开 recover 键。系统将提示发现 loader 设备。

  • 3
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: rk3399芯片代理提供的ddr用户测试工具_v1.38是一款专为rk3399芯片设计的用户测试工具。该工具主要用于测试和评估rk3399芯片的ddr内存性能。 v1.38版本的工具具有以下特点和功能: 1. 全面支持rk3399芯片:v1.38版本的工具专为rk3399芯片开发,可以充分发挥rk3399芯片的性能特点,为用户提供准确和可靠的测试数据。 2. DDR性能测试:该工具可以进行ddr内存的性能测试,包括读写速度、延迟、带宽等方面的测试。通过测试结果,用户可以了解rk3399芯片在不同工作状态下ddr内存的性能表现,并根据需要进行优化和调整。 3. 用户友好的界面:v1.38版本的工具采用直观清晰的用户界面,操作简单方便。用户可以通过工具提供的设置选项,自定义测试参数和测试模式,以满足不同测试需求。 4. 测试结果分析:工具还提供了详细的测试结果分析功能,用户可以查看测试结果的统计数据和图表,以了解ddr内存性能的分布和趋势。这有助于用户更好地理解rk3399芯片的性能特点,为产品开发和优化提供指导。 总之,rk3399芯片代理提供的ddr用户测试工具_v1.38是一款功能强大、操作简便的工具,适用于对rk3399芯片的ddr内存性能测试和优化。通过该工具,用户可以充分发挥rk3399芯片的性能,提升产品的竞争力。 ### 回答2: rk3399芯片代理提供的DDR用户测试工具_v1.38是一款用于测试rk3399芯片的DDR(双数据率)性能的工具。 DDR是一种内存技术,可以在同一个时钟周期内读写两次数据,提高内存的数据传输效率。rk3399芯片是一款高性能的SoC(系统级芯片),适用于各种移动设备和嵌入式系统。 DDR用户测试工具_v1.38通过对rk3399芯片的DDR进行测试,可以评估其读写速度、稳定性和可靠性等性能指标。测试工具提供了一系列测试项和功能,例如读写延迟测试、读写带宽测试、读写稳定性测试等。 使用DDR用户测试工具_v1.38可以帮助开发人员和硬件工程师更好地了解rk3399芯片的DDR性能,并进行优化和调试。测试结果可以用于性能评估、系统调优和问题排查等工作。 在使用DDR用户测试工具_v1.38时,用户可以根据自己的需求选择不同的测试项和参数,进行测试和分析。测试工具提供了直观的界面和详细的测试报告,方便用户进行结果的查看和分析。 总之,rk3399芯片代理提供的DDR用户测试工具_v1.38是一款专为评估rk3399芯片的DDR性能而设计的工具,可以帮助开发人员和硬件工程师对rk3399芯片进行性能优化和问题排查。 ### 回答3: rk3399芯片代理提供的DDR用户测试工具_v1.38是一款用于测试rk3399芯片的DDR存储器性能的工具。该工具的主要功能包括: 1. 内存测试:可以对rk3399芯片中的DDR存储器进行全面的测试,包括读取、写入和随机访问等操作,以评估其读写速度和稳定性。 2. 参数设置:用户可以根据需要自定义各种测试参数,如测试模式、数据长度、地址范围等,以满足不同测试需求。 3. 测试报告生成:工具能够生成详细的测试报告,包括测试结果、错误记录和性能指标等,方便用户对DDR存储器的性能进行分析和评估。 4. 兼容性测试:该工具能够与不同版本的rk3399芯片兼容,可以在不同硬件平台上进行测试,确保测试结果的准确性和可靠性。 5. 调试功能:工具还提供了一些调试功能,如调试输出和调试接口,方便用户进行故障排除和性能优化。 综上所述,rk3399芯片代理提供的DDR用户测试工具_v1.38是一款功能强大、易于使用的工具,能够全面测试rk3399芯片的DDR存储器性能,为用户提供准确的测试结果和充分的性能评估。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Linux与SoC

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值