DM365NAND启动模式解析

DM365NAND启动模式解析

ID:37916821

大小:248.50 KB

页数:5页

时间:2019-06-02

DM365NAND启动模式解析_第1页
DM365NAND启动模式解析_第2页
DM365NAND启动模式解析_第3页
DM365NAND启动模式解析_第4页
DM365NAND启动模式解析_第5页
资源描述:

《DM365NAND启动模式解析》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、DM365 NAND启动模式解析首先,读取NAND的ID,可以从RBL的设备信息表中得到一些重要信息,然后,RBL在block1page0处开始搜索UBL描述符。若没有找到正确的UBL,会继续搜索下面的块,一直到block24结束。这样做是为了跳过坏块,24个块几乎对所有的NAND设备都足够了。当找到UBL标识之后,对应的块号(从1到24)被写到ARM内部RAM(指令RAM)的最后32位(0x7ffc-0x8000),假设通过JTAG通过读取这32位,你能够确定RBL是在哪个块中找到了一个正确的UBL标识。如果搜索完24个块后

2、没有找到正确的UBL标识,RBL会尝试从SD卡启动。找到正确的UBL之后,读取并且处理UBL描述符,这个描述符提供了加载和控制跳转到UBL的必要信息。然后UBL被读取并且处理。RBL首先可能会使能一些更快的EMIF组合和基于UBL描述符中信息的指令cache操作。通过UBL描述符可以知道在拷贝UBL期间是否使用了DMA。一旦用户指定的启动状态被设置,RBL就复制UBL到ARM内部RAM,并且从地址0x00000020处启动。NOTE:真正的拷贝实际上是从ARM内部数据RAM区0x10020-0x1781F的低30KB的空间。将

3、UBL读取到ARMIRAM的时候,NANDRBL使用4位的ECC来检测是否发生读错误。若发生了错误,则通过ECC纠正算法来纠正错误。通过冗余(24blocks)和出错恢复来保证防止读错误。NAND启动流程如下图所示:NANDUBLdescriptor格式如下表:NOTE:ARMIRAM的起始32个字节是ARM系统的中断向量表(IVT)(8个向量,每个4字节),复制的UBL从这32个字节的IVT之后开始启动。在UBLdescriptor中,不同的NAND启动模式可以设置不同的MAGICIDs,下表列出了UBL标识: NAND启动

4、详细流程:1、初始化RAM1的高2K栈空间(0x7800-0x7fff)。不要使用IRAM的最后32个字节(0x7ffc-0x8000),因为它被用来存写入UBL的块号。2、禁止所有中断,IRQ和FIQ。3、外部引脚DEEPSLEEPZ/GIO0在芯片为NAND模式启动复位时必须被置高。4、读NAND的设备ID,获得参数。5、根据NANDflash的参数初始化NAND区域。6、搜索UBL设定块号,通常在CIS/IDIpage(一般为block0,page0)。7、UBL描述符由以下参数组成(所有UBL参数位宽都是32位):  

5、 -入口点地址:加载UBL之后的绝对入口点,必须在0x0020-0x781C之间。   -UBL占用的NAND的页数:必须是相邻的页,可以跨越多个块,总字节数必须小于等于30KB。   -UBL的起始块:可能与UBL描述符在同一个块。   -UBL的起始页:不可能与UBL指示符在同一页,因为加载的都是完整的页。8、使能硬件ECC错误检测,复制UBL从NANDflash到IRAM,如果检测到一个4位ECC的读错误,UBL将通过ECC纠正算法来纠正错误。如果是由其他的错误导致读失败的,指示符会继续在下一个新的块中搜索直到找到UBL

6、描述符,一直搜索到block24。没有的话就从SD卡启动。9、在UBL入口处把控制权移交给UBL。10、NAND的安全启动模式是在PLL旁通模式中完成的,它不使用快速EMIF,DMA或者I-Cache。在其他模式下,使用以上的一种组合。例如,在UBL_MAGIC_PLL_DMA_IC_FAST模式下激活其他四个设置,它因该是最快的NAND启动模式。 以下是启动流图: ARMNANDROMbootloader实例: NAND支持的设备ID:

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。