ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

FSBL BOOT

2022-02-20 14:01:53  阅读:343  来源: 互联网

标签:OCM 启动 代码 FSBL BOOT 引脚 BOOTROM


 

 ZYNQ复位包含两种复位:

  硬复位:断电重启 或 按下按键。会让硬件读取boot引脚状态然后去配置一些参数

  软复位: PS_SRST_B引脚的复位  不会去读取boot引脚,一些寄存器在软复位之后仍然可以保留之前的状态,比如安全模式等等。

 

 

BOOTROM是片上的ROM,即里面的代码不能做修改,是一个固定的代码

BOOTROM是在APU中运行的第一个软件,boot在CPU0执行,CPU1执行WFE(等待事件这样的指令)

BOOTROM具体功能:配置系统,把FSBL代码或者是用户代码从启动镜像里面(SD卡,QSPI)拷贝到OCM里,代码在OCM里进行运行。可选的是FSBL / 用户代码可以在QSPI 或NOR flash里面进行直接的运行。    

FSBL:第一启动阶段的引导程序。把裸机应用程序加载到DDR里是靠FSBL进行引导的。BOOTROM相当于把FSBL的引导代码加载到OCM里进行运行。

ZYNQ上OCM( ON-CHIP MEMORY)资源有限,存储容量较小,所以需要FSBL里面的程序也比较小

 

PS主启动器件可以保留一个或多个启动镜像。一个启动镜像由BOOTROM文件头 和 FSBL(FIRST STAGE BOOT LOADER)[第一启动引导阶段]。

这个启动器件还保存bitstream文件去配置  PL 和 嵌入式操作系统的程序,但是这些不是通过BOOTROM来进行访问。比特流或者其他裸机应用程序是通过FSBL进行引导。(BOORROM 引导 FSBL,FSBL 引导比特流 加载应用程序 )

flash存储器可以是 QSPI,NAND FLASH,NOR FLASH 或者SD卡。  ZYNQ所要求的非易失性存储器类型 

 

 

 

BBOTROM执行的流程是受 BOOT引脚的设置,BOOTROM的文件头,以及系统的启动的影响

 

 

 对开发这来说,该系统可以在JTAG模式下进行启动(通过JTAG接口下载程序)。JTAG可以访问DAP控制器(DEBUG ACCESS PORT)[ARM的一个调试端口]。TAP控制器【xilinx测试访问接口】

通过JTAG接口可以比较方便的对ARM进行调试,以及调试ZYNQ的FPGA部分

 

 主启动模式下,系统是从FLASH 存储器里面去启动系统。BOOTROM会去配置PS来访问启动器件(SD卡或FLASH),读BOOTROM文件头,进行校验,把FSBL / 用户代码拷贝到OCM。

安全模式:加密,非加密,基于哈希的验证码

 

 

 

 

 

 

 

 

 

 

 BOOTROM头文件包含一打(很多)参数,可以知道BOOTROM的运行流程。

头文件包含一个参数:启动镜像的长度:定义了FSBL或者是用户代码加载到OCM运行的长度。该长度被限制在192KB(OCM存储容量小)。所以FSBL代码不能太大,FSBL代码是软件自动生成的模板,我们可以对其进行简单的修改

 

 

 

 

 

 

 

 

 共7个模式配置引脚可以对硬件做配置选项,即MIO [8:2] 共7个引脚。在硬件复位后采集7个引脚的状态,这7个引脚的状态会影响到BOOTROM的执行。这些引脚通过接20K电阻进行上拉或下拉,通过上下拉的电阻表示逻辑1或逻辑0

 

 

 

MIO4 为0 MIO 为1 表示QFLASH  MIO4 MIO5 为11 表示SD卡    都为0表示JTAG  

这三种情况和拨码开关一一对应

 

 

 

 这些引脚只在复位之后,在裸机程序正式执行之前所表现的含义是BOOT的一个占用的启动引脚,当裸机正式启动之后,功能就变成实际上所定义的功能,所以不冲突

标签:OCM,启动,代码,FSBL,BOOT,引脚,BOOTROM
来源: https://www.cnblogs.com/lht-learning/p/15915367.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有