千锋教育-做有情怀、有良心、有品质的职业教育机构

当前位置:首页  >  关于学院  >  技术干货  >  物联网技术干货  >  正文

描述一下你用过的uboot的启动过程

来源:千锋教育
发布时间:2022-09-28 17:22:59
分享

  我用的处理器是三星的S5P6818,基于ARMv8架构,使用cortex-a53的内核。

  启动流程如下: 启动方式为内部rom启动,然后加载第一阶段启动代码到内部iRAM中执行,第一阶段代码运行后将uboot镜像搬移到内存上执行,uboot的启动过程中大致完成了如下操作:

uboot的启动过程

  第一阶段阶段:

  1、禁用看门狗、初始化系统时钟

  2、设置异常向量表(用到中断的情况下设置)

  3、动态内存控制器初始化配置

  4、初始化调试指示灯(可选)

  5、初始化UART,用于开发调试(可选)

  6、从NAND、NOR或SD卡中复制代码到DRAM

  7、跳转并进入uboot第二阶段

  第二阶段阶段:

  1、汇编阶段核心初始化

  2、初始化GPIO

  3、初始化MMC等存储设备

  4、MMU初始化 5、各类通信设备相关驱动初始化

  6、环境变量和参数的加载及初始化

  7、倒计时监听串口(进入命令模式或启动内核)

  8、启动内核(拷贝内核镜像并跳转到内核入口)

声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。

相关推荐

  • c语言编程是什么意思 C语言编程是指使用C语言进行软件开发和编码的过程。C语言是一种通用的、高级的编程语言,由DennisRitchie在20世纪70年代早期开发。它在软件开发领域广泛应用,包括系统级编程、嵌入式系统开发、
  • 为什么不直接使用IP协议而要额外增加一个UDP/TCP协议呢? 但每台计算机中需要有多个通信通道,并将多个通信通道分配给不同的进程使用(关于进程,可以参考Linux进程基础)。一个端口就代表了这样的一个通信通道。UDP协议实现了端口,从而让数据包可以在送到IP地址的基础上,进一步可以送到某个端口。
  • 在驱动调试过程中遇到过oops没?你是怎么处理的? oops含义: Oops 这个单词含义为“惊讶”,当内核出错时(比如访问非法地址)打印出来的信息被称为 Oops 信息。1、出错信息描述,说明发生哪类错误,例如: “Unable to handle kernel NULL pointer dereference at virtual address 00000000”
  • 描述一下你用过的uboot的启动过程 启动流程如下: 启动方式为内部rom启动,然后加载第一阶段启动代码到内部iRAM中执行,第一阶段代码运行后将uboot镜像搬移到内存上执行,uboot的启动过程中大致完成了如下操作:
  • 找以下中断服务程序中的问题 中断是嵌入式系统中重要的组成部分,这导致了很多编译开发商提供一种扩展—让标准C支持中断。具代表事实是,产生了一个新的关键字 __interrupt。
  • 说明物联网的层次结构 感知层由各种传感器以及传感器网关构成,包括二氧化碳浓度传感器、温度传感器、湿度传感器、二维码标签、RFID标签和读写器、摄像头、GPS等感知终端。感知层的作用相当于人的眼耳鼻喉和皮肤等神经末梢,它是物联网识别物体、采集信息的来源,其主要功能是识别物体,采集信息。