news 2026/1/31 15:22:30

ZYNQ_SROM_SRAM

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
ZYNQ_SROM_SRAM

1.bootrom是固化在zynq芯片内部非易失性存储其中的一段代码;
2.bootrom代码存储在zynq的256k的sram以及128k的rom中,掉电不丢失
3.bootrom用于启动,引导fsbsl代码,找到boot.bin所在的位置,并从中提取fsbl,
将fsbl代码拷贝到zynq中的256k-sram中运行,这个时候DDR还没有被初始化,这个是fsbl的工作
3.BootROM这段代码通常保存在Nor flash中,特点是芯片内执行(XIP ,eXecute In Place),这样应用程序可以直接在Flash闪存内运行,不必再把代码读到系统RAM中。
要完成上述功能,BootROM必须满足如下要求:
包括SD卡或者QSPI等存储设备的驱动程序
支持文件系统操作(至少支持FAT32,因为将SD卡格式化为FAT32后拷贝进BOOT.BIN的)
对于基于zynq的嵌入式Linux系统,BootROM引导启动FSBL,FSBL引导启动U-Boot,U-boot引导启动Linux内核。

注意:BootROM它是一个程序/代码,并且已经固化到ZYNQ芯片内部。专门存放在片内ROM中。ZYNQ内部包含256K RAM(SRAM)以及128K ROM(SROM),所以BootROM代码固化在SROM中,片内的程序一般都固化在NOR FLASH(支持XIP)。且可以直接在NOR FLASH运行。

Zynq使用RSA公钥加密标准进行固件认证,确保启动过程的安全性。核心密钥包括主私钥(PSK)和主公钥(PPK),其中PPK用于生成次公钥(SPK),SPK与次私钥(SSK)成对使用,用于验证分区数据(如bin或elf文件)的正确性。‌ 1 在启动阶段,BootROM中的PPK用于验证BootHeader中的SPK签名,从而认证后续加载的固件分区。

1.bootrom是固化在ROM中的一段代码
2.bootrom负责上电或者复位后的初始引导过程,位于PS端,不可修改
3.bootrom用于初始化基本外设,以及加载后续启动的镜像
4.bootrom的核心功能:
a.初始化外设:上电后,bootrom首先初始化nand,nor,quad-spi,sd卡等
外部存储器,使得ARM核能够访问这些设备
b.bootrom后续依据启动模式引脚MIO[8:2]的配置,从指定的外部存储设中加载第一
阶段的fsbl
c.fsbl加载:bootrom将fsbl从外部存储读取到OCM上或者直接在flash中执行
Zynq的启动过程分为多个阶段:

‌Stage 0(BootROM执行)‌:BootROM运行,初始化基础外设并加载FSBL。‌
1
2
‌Stage 1(FSBL执行)‌:FSBL负责初始化PS端(如DDR内存)、配置PL端(通过BIT文件),并加载第二阶段引导程序(SSBL)或直接运行裸机程序。‌
1
2
‌Stage 2(用户程序执行)‌:系统跳转至SSBL或裸机程序,最终运行用户应用或操作系统。‌
1
‌关键细节‌

‌启动模式选择‌:通过MIO[8:2]引脚设置决定启动源(如SD卡、Flash等),这些引脚在启动后可作为普通GPIO使用。‌
2
‌PL配置依赖‌:BootROM本身不完成PL的配置,仅为其准备环境;PL的配置由FSBL通过PCAP接口实现。‌
1
2
‌安全启动‌:在安全模式下,启动镜像会经过解密和认证后才执行,确保代码完整性。‌
2
BootROM是Zynq启动链的起点,其设计确保了系统能够可靠地加载用户应用

ZYNQ RSA认证!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/1/22 6:35:29

【读代码】claude-mem: claude code记忆升级

摘要 在 AI Engineering 的实践中,Context Window 的限制与 Session 的无状态性一直是构建长程任务 Agent 的核心瓶颈。GitHub 开源项目 claude-mem 为 Anthropic 最新的 Claude Code 工具提供了一套基于 Hook 机制 与 异步压缩 的持久化记忆解决方案。本文将从架构设计、核心…

作者头像 李华
网站建设 2026/1/30 14:17:19

把 Code Pushdown 做到极致:ABAP 7.40, SP08 里 AMDP 的三项关键增强

在 ABAP 开发里谈性能优化,绕不开一个朴素但很有力量的理念:让数据在数据库里完成该做的计算,尽量别把海量数据搬到应用层再加工。SAP 把这件事总结成 code-to-data 范式,也就是大家常说的 Code Pushdown。在 ABAP 7.40 的时代,Open SQL 增强了不少分析能力,ABAP CDS 也开…

作者头像 李华
网站建设 2026/1/27 9:53:31

从PDF到AI训练集:docling图像导出终极教程

从PDF到AI训练集:docling图像导出终极教程 【免费下载链接】docling Get your documents ready for gen AI 项目地址: https://gitcode.com/GitHub_Trending/do/docling 在文档处理的世界里,图像往往承载着最核心的信息价值。无论是学术论文中的图…

作者头像 李华
网站建设 2026/1/26 22:29:54

Wan2.2-T2V-A14B在汽车广告视频生成中的典型用例

Wan2.2-T2V-A14B在汽车广告视频生成中的典型用例 🚗 你有没有想过,一条高端大气的汽车广告,可能根本没拍过?没有导演、没有摄影组、甚至连车都没上路——它只是“被说出来的”。 这听起来像科幻片,但今天&#xff0c…

作者头像 李华
网站建设 2026/1/26 14:23:00

Wan2.2-T2V-A14B生成长江黄河水系变迁历史视频

用AI重现长江黄河的千年演变:一场视觉化的地理史诗 🌍✨ 你有没有想过,一条河是怎么“长大”的? 它从冰川融水里诞生,在万年间蜿蜒穿行,冲刷出平原、塑造出文明。而今天,我们不再只能靠想象——…

作者头像 李华