博客
关于我
ARM体系结构(三)——iROM——九鼎创展 x210V3s
阅读量:57 次
发布时间:2019-02-25

本文共 651 字,大约阅读时间需要 2 分钟。

一、iROM完成的工作

1、关闭看门狗

2、初始化调整缓存

3、初始化栈内存地址

4、初始化堆内存地址

5、初始化块设备拷贝函数

6、设置PLL并且设备系统时钟

7、拷贝BL1阶段的代码到SRAM中

8、检查被拷贝程序的校验和

9、检查是否安全模式

10、跳转到BL1的起始代码处

注意:iROM中已经有固化的代码,其实不需要再做一遍,但引导程序为了能够通用会把iROM中做的事情再做一遍。

二、BL1中需要完成的工作

1、以引导操作系统为目的

1.电源锁定

2.初始化DRAM

3.设置内存映射表

4.重新设置堆、栈的内存地址

5.拷贝BL2到DRAM中

6.跳转到BL2中运行

2、以控制硬件设置为目的

1.电源锁定

2.开始执行控制硬件的业务逻辑代码

注意:BL1中的代码前16个字节为校验和

三、电源锁定

地址: 0xE010_E81C

值:b[0] = 1 b[8] = 1 b[9] =1

ldr r0, =0xe010e81c unsigned int* p = 0xe010e81c;

ldr r1, [r0] unsigned int val = *p;

orr r1, r1, #0x300 val = val | 0x300;

orr r1, r1, #0x1 val = val | 0x1;

str r1, [r0] *p = val;

注意:汇编语言中 . 代表当前位置,b . 就是死循环

四、计算校验和

根据官方提供mkv210_image.c,重写一份添加校验和工具。

转载地址:http://ecq.baihongyu.com/

你可能感兴趣的文章
Netty线程模型理解
查看>>
netty解决tcp粘包和拆包问题
查看>>
Netty速成:基础+入门+中级+高级+源码架构+行业应用
查看>>
Netty遇到TCP发送缓冲区满了 写半包操作该如何处理
查看>>
netty(1):NIO 基础之三大组件和ByteBuffer
查看>>
Netty:ChannelPipeline和ChannelHandler为什么会鬼混在一起?
查看>>
Netty:原理架构解析
查看>>
Network Dissection:Quantifying Interpretability of Deep Visual Representations(深层视觉表征的量化解释)
查看>>
Network Sniffer and Connection Analyzer
查看>>
Network 灰鸽宝典【目录】
查看>>
Networkx写入Shape文件
查看>>
NetworkX系列教程(11)-graph和其他数据格式转换
查看>>
Networkx读取军械调查-ITN综合传输网络?/读取GML文件
查看>>
network小学习
查看>>
Netwox网络工具使用详解
查看>>
Net与Flex入门
查看>>
net包之IPConn
查看>>
net发布的dll方法和类显示注释信息(字段说明信息)[图解]
查看>>
Net操作配置文件(Web.config|App.config)通用类
查看>>
NeurIPS(神经信息处理系统大会)-ChatGPT4o作答
查看>>