Xilinx ZYNQ FSBL解读:启动流程详解


篇首

最近突发奇想,Xilinx 的集成开发环境已经很好了,很多必要的代码都直接生成了,这给开发者带来了巨大便利的同时,也让人错过了很多代码的精彩,可能有很多人用了很多年了,都还无法清楚的理解其中过程。博主准备以FSBL为例,与大家深入探讨一番,从而加深对ZYNQ的加载过程的理解,以便大家作出更精彩的设计!


Zynq 7000启动流程详解

Zynq 7000的启动流程是一个多阶段协作过程,从硬件上电到操作系统运行,涉及BootROM、FSBL、SSBL(如U-Boot)和最终应用。以下是各阶段的核心逻辑与关键操作:


一、BootROM阶段:硬件初始化的起点
  1. 触发条件

    • Zynq芯片上电或复位后,BootROM(固化在芯片内部的只读代码)自动执行。
  2. 关键操作

    • 硬件初始化
      • 配置PS(处理器系统)基础时钟、MIO引脚、安全模块(如AES和SHA引擎)。
    • 启动模式检测
      • 根据MIO引脚电平(Boot Mode Pins)确定启动设备(QSPI、SD卡、NAND等)。
      • 支持的启动模式通过SLCR.BOOT_MODE寄存器配置。
    • 加载FSBL
      • 从选定的启动设备读取FSBL镜像到OCM(On-Chip Memory,默认地址0x0)。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

极客不孤独

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值