• 正文
  • 相关推荐
申请入驻 产业图谱

xilinx zynq multiboot技术介绍

07/24 09:05
1383
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

1, 介绍

FPGA Multiboot(多重启动)是一种允许FPGA在运行时动态切换不同配置映像的技术。这项技术主要应用于Xilinx FPGA(如Virtex、Zynq、Kintex和Artix系列),通过提供灵活的配置管理方案,增强了系统的可靠性和灵活性。

1)主要特点

多配置映像存储:在非易失性存储器(如Flash)中存储多个比特流文件运行时切换:无需完全重新上电即可切换不同配置故障恢复:当主配置出现问题时自动回退到"黄金"配置动态重配置:支持系统运行期间的部分或完全重配置

多映像存储:在配置存储器中存储多个比特流文件,每个文件有特定的起始地址触发机制:通过IPROG命令、外部信号或看门狗超时触发配置切换地址跳转:从当前配置跳转到新配置的起始地址重配置:FPGA从新地址开始加载配置数据

典型应用场景

    1. ⒈ 现场固件升级
    1. ⒉ 硬件功能动态切换
    1. ⒊ 高可靠性系统的故障恢复
    1. ⒋ 不同工作模式的切换
    1. ⒌ A/B测试不同硬件设计

2 基础理论

Multiboot往往在产品中被用于镜像文件的升级和备份,即IAP(In Application programming)应用。举个最简单的例子,在Flash中存入2个BOOT.bin镜像文件,分别为update image和golden image。镜像升级过程只更新update image,而golden image作为备份不被更新。

这样做的目的是当update image出现异常,或update image更新失败导致无法从update image启动时,还可以切换到备份的golden image启动,避免硬件宕机。

当然,2个镜像只是最简单的例子,实际应用中Multiboot可以用于多镜像的场合。

3 Zynq boot过程

ZYNQ启动过程分为三个阶段,称为BootROM、阶段0(FSBL)和阶段1:

    1. BootROM阶段(硬件自动执行)
    1. o 芯片上电后首先执行的不可修改代码
    1. o 存储在芯片内部ROM中
    1. o 完成最基本的硬件初始化阶段0 - First Stage Bootloader (FSBL)
    1. o 用户可定制的第一级引导程序
    1. o 通常由Xilinx SDK生成或用户开发
    1. o 初始化DDR、外设等更复杂的硬件阶段1 - Second Stage Bootloader/用户应用
    1. o 可以是U-Boot、用户应用程序或裸机程序
    1. o 最终加载操作系统或用户应用
赛灵思

赛灵思

赛灵思(英语:Xilinx)是一家位于美国的可编程逻辑器件的生产商。该公司发明了现场可编程逻辑门阵列,并由此成名。赛灵思还是第一个无厂半导体公司(Fabless)。28nm时代,赛灵思提出All Programmable 的概念,从单一的FPGA企业战略转型为All Programmable FPGA、 SoC 和 3D IC 的全球领先提供商。且行业领先的器件与新一代设计环境以及 IP 完美地整合在一起,可满足客户对可编程逻辑乃至可编程系统集成的广泛需求赛灵思于1984年创建于美国加利福尼亚州的硅谷,总部位于硅谷核心的圣何塞,并在科罗拉多州、爱尔兰、新加坡 印度、中国、日本拥有分支机构

赛灵思(英语:Xilinx)是一家位于美国的可编程逻辑器件的生产商。该公司发明了现场可编程逻辑门阵列,并由此成名。赛灵思还是第一个无厂半导体公司(Fabless)。28nm时代,赛灵思提出All Programmable 的概念,从单一的FPGA企业战略转型为All Programmable FPGA、 SoC 和 3D IC 的全球领先提供商。且行业领先的器件与新一代设计环境以及 IP 完美地整合在一起,可满足客户对可编程逻辑乃至可编程系统集成的广泛需求赛灵思于1984年创建于美国加利福尼亚州的硅谷,总部位于硅谷核心的圣何塞,并在科罗拉多州、爱尔兰、新加坡 印度、中国、日本拥有分支机构收起

查看更多

相关推荐

登录即可解锁
  • 海量技术文章
  • 设计资源下载
  • 产业链客户资源
  • 写文章/发需求
立即登录
lee
lee

从数字出发,走进图像世界,聆听音频的美妙旋律。从电路出发,实现美妙的算法,展示代码的美奂。从知识到实现,欢迎大家关注公众号FPGA开源工作室。