EMMC协议

转载RK3399 eMMC硬件设计要点_rk3399原理图-CSDN博客

参考:

eMMC 的工作模式 

U-Boot命令之EMMC和SD卡操作命令

RK3399启动模式
RK3399有三种启动模式:

Normal 模式
Loader 模式
MaskRom 模式
Normal 模式
Normal 模式就是正常的启动过程,各个组件依次加载,正常进入系统。
这个模式无法刷固件, 一般板子通电就是这个模式。

Loader 模式
在 Loader 模式下,bootloader 会进入升级状态,等待主机命令,用于固件升级等。
要进入 Loader 模式,必须让 bootloader 在启动时检测到 RECOVERY(恢复)键按下,且 USB 处于连接状态。

PS:
大多数嵌入式处理器都有在处理器内部有固化代码(ROM),这个代码可以把bootloader从处理器指定的地方(一般是flash,SD卡,USB等)加载到内存,然后跳到bootloader开始执行。或者把nor flash的地址映射到处理器的RESET地址直接执行nor flash中的代码

Bootloader多数有两个阶段的启动过程:
Stage1:
基本的硬件初始化
为加载stage2准备RAM空间
拷贝内核映像和文件系统映像到RAM中
设置堆栈指针sp
跳到stage2的入口点
Stage2:
初始化本阶段要使用到的硬件设备
检测系统的内存映射
加载内核映像和文件系统映像
设置内核的启动参数
嵌入式系统中广泛采用的非易失性存储器通常是 Flash,而 Bootloader就位于该存储器的最前端,所以系统上电或复位后执行的第一段程序便是 Bootloader。

MaskRom 模式
MaskRom 模式用于 bootloader 损坏时的系统修复。
一般情况下是不用进入 MaskRom 模式的,只有在 bootloader 校验失败(读取不了 IDR 块,或 bootloader 损坏) 的情况下,BootRom 代码 就会进入 MaskRom 模式。此时 BootRom 代码等待主机通过 USB 接口传送 bootloader 代码,加载并运行之。

如果开发板上电后遇到以下情况之一:

eMMC 内容为空。
eMMC 上的 bootloader 损坏。
将 eMMC 数据/时钟引脚接地,eMMC读取数据失败。(所以硬件设计要预留eMMC clock PIN用于进入MaskROM模式 )
CPU 在 eMMC 中就会找不到有效的 IDB (IDentity Block),转而执行一段小型的 ROM 代码,等待主机通过 USB 上传 bootloader 来初始化 DDR 内存并进入升级状态。这种模式称为 Maskrom 模式 。

RK3399 eMMC硬件设计原理图
eMMC 芯片介绍

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值