
DM365 NAND启动模式分析
5星
- 浏览量: 0
- 大小:None
- 文件类型:DOC
简介:
本文章深入解析了DM365设备的NAND启动模式,探讨其工作原理、配置方法及常见问题解决策略,为开发者提供全面的技术支持。
DM365是一款由德州仪器(TI)生产的数字媒体处理器,常用于视频处理及嵌入式系统开发。在该设备上,NAND闪存是一种常用的非易失性存储器类型,主要用于存放固件以及操作系统等关键数据。当DM365从电源开启或复位时,会通过特定的启动模式从NAND中读取并执行必要的代码以完成初始化。
**NAND启动流程**
1. **初始化**: 上电后系统首先对RAM1高2KB区域(0x7800-0x7fff)进行设置,并保留最后32个字节用于存储UBL块号信息。
2. **关闭中断**: 禁用所有中断,确保启动过程中不会受到干扰。
3. **配置DEEPSLEEPZGIO0引脚**: 在NAND启动时此外部引脚需保持高电平状态。
4. **读取NAND ID**: 获取并分析设备的唯一标识符以确定其特性参数如页面大小及块大小等信息。
5. **初始化NAND控制器和寄存器设置**:依据获取的信息配置相关硬件接口。
6. **搜索UBL描述符**: ROM引导加载程序(RBL)从block1的page0开始查找用户引导加载程序(UBL)的描述数据。若未找到,则继续检查后续24个块以避开坏区。
7. **处理UBL描述符信息**:该结构体包含入口点地址、占用NAND页数及起始位置等关键参数,用于指导UBL的复制与执行。
8. **启用ECC校验并纠正错误**: 启动硬件纠错机制,并将UBL数据复制至内部RAM(IRAM)。若检测到4位ECC错误,则使用算法尝试修复。多次失败后切换至下一个块直至找到有效描述符或转向SD卡启动。
9. **执行UBL代码**:在识别的入口点处开始运行UBL程序,从而移交系统控制权给其继续操作。
10. **安全模式选项**: 根据配置的不同,可能存在PLL旁路等低性能但更稳定的启动方式。而在其他情况下,则可以启用快速EMIF、DMA或I-Cache等功能以优化性能。
**NAND UBL描述符格式**
UBL描述符是一种包含重要信息的数据结构体,用于指导如何加载和执行UBL程序。该结构中可能包括以下字段:
- 入口点地址:表示UBL的启动位置。
- 占用页数:指示UBLS大小,并要求连续分配。
- 起始块与起始页:定义了在NAND中的具体位置信息。
- 特定标识符(MAGIC IDs): 用于区分不同的启动模式。
**详细流程**
1. 初始化栈空间、关闭中断及设置DEEPSLEEPZGIO0引脚;
2. 获取并分析NAND设备ID,初始化控制器与寄存器配置;
3. 搜索UBL描述符至多扫描24个块以避开坏区;
4. 根据找到的描述信息将UBL复制到IRAM中并校验其完整性后根据需要进行调整。
5. 将控制权交给UBL执行。
通过以上过程,DM365能够可靠地从NAND启动,并确保系统的稳定运行。这一机制对于基于该处理器开发嵌入式系统具有重要意义。
全部评论 (0)


