1. Agilex SoC 概述

Agilex SoC 是 Intel 推出的异构计算平台,集成了 FPGA 架构、高性能 ARM Cortex-A53 处理器子系统以及专用安全与管理单元。本章从架构组成、核心安全组件 SDM 以及双镜像启动概念三个维度建立课程基础。

1.1 Agilex SoC 架构简介

Agilex SoC 采用多芯片封装(MCP)或单片式异构结构,主要包含以下三大子系统:

子系统 核心组件 主要职责
FPGA 架构 自适应逻辑模块 (ALM)、DSP 块、M20K 内存、收发器 硬件加速、自定义逻辑、高速 I/O 协议处理
HPS(硬核处理器系统) 四核 ARM Cortex-A53、L2 缓存、DDR 控制器、外设接口 运行操作系统、控制面管理、应用软件执行
SDM(安全设备管理器) 专用安全微控制器、OTP、密钥存储、DMA 引擎 启动控制、安全认证、配置管理、生命周期管理
架构要点: SDM 是 Agilex SoC 的“信任根”与“启动大脑”,独立于 HPS 和 FPGA 逻辑运行,拥有自己的固件和专用硬件资源。
Agilex SoC 顶层架构图 Agilex SoC 顶层架构 FPGA 架构 ALM / DSP / M20K 高速收发器 自定义加速逻辑 HPS(硬核处理器系统) ARM Cortex-A53 ×4 L2 Cache / DDR 控制器 外设接口 (USB/GMAC/SD) SDM 安全微控制器 OTP / 密钥存储 DMA 引擎 SDM 独立于 HPS 和 FPGA 运行,是系统启动与安全的唯一控制点

1.2 SDM(安全设备管理器)角色与功能

SDM 是 Agilex SoC 中最核心的安全与管理单元,其角色可概括为“启动主控 + 安全引擎 + 配置代理”。SDM 拥有独立的固件(SDM Firmware),在芯片上电后最先获得执行权。

核心功能清单

  • 启动控制: 从配置源(QSPI Flash、SD卡、NAND、PCIe)读取配置数据,执行启动流程。
  • 安全认证: 基于硬件信任根,对配置镜像进行签名验证、哈希校验、解密处理。
  • 密钥管理: 管理 OTP 密钥、用户密钥、设备唯一密钥,支持密钥撤销与轮换。
  • 配置管理: 将 FPGA 比特流加载到配置 RAM,初始化 HPS 复位序列。
  • 生命周期管理: 控制芯片从“开放”到“安全锁定”等不同安全状态。
  • 错误处理: 检测启动失败、镜像损坏、认证失败,触发回滚或安全锁定。
开发提示: SDM 固件由 Intel 提供闭源二进制,用户通过 SDM 命令接口(SDM Mailbox)与其交互,不可直接修改固件内部逻辑。

1.3 双镜像启动概念

双镜像启动(Dual Image Boot)是 Agilex SoC 实现安全启动与故障恢复的核心机制。系统在外部非易失存储器中维护两份独立的配置镜像:主镜像(Primary Image)和备份镜像(Backup Image)。

镜像角色 存储位置 启动优先级 典型用途
主镜像 QSPI Flash 起始地址(如 0x000000) 第一优先 正常产品固件,包含 FPGA 比特流 + HPS 软件
备份镜像 QSPI Flash 偏移地址(如 0x02000000) 主镜像失败时启用 安全恢复镜像、最小启动固件、回滚版本

双镜像启动流程遵循以下步骤:

  1. 上电复位: SDM 从默认启动源读取启动头(Boot Header)。
  2. 主镜像尝试: SDM 定位主镜像,执行签名验证与哈希校验。
  3. 条件分支:
    • 若主镜像认证通过 → 加载并执行主镜像。
    • 若主镜像认证失败、损坏或超时 → 自动切换到备份镜像。
  4. 备份镜像加载: SDM 从备份区域读取镜像,重复验证流程。
  5. 最终状态: 任一镜像成功则系统正常启动;双镜像均失败则进入安全错误状态。
双镜像启动流程图 双镜像启动流程 上电复位 / SDM 启动 读取主镜像 验证主镜像(签名+哈希) 通过? 加载主镜像 切换到备份镜像 验证备份镜像 通过? 加载备份镜像 安全错误
安全注意事项: 双镜像启动不能替代安全启动(Secure Boot),而是安全启动流程中的一环。备份镜像必须同样经过签名和加密,否则攻击者可注入未授权固件绕过安全策略。

本章小结

  • Agilex SoC 由 FPGA 架构、HPS 和 SDM 三大子系统构成,SDM 是安全与启动的核心。
  • SDM 负责启动控制、安全认证、密钥管理、配置加载和生命周期管理。
  • 双镜像启动通过主/备镜像机制实现故障恢复,SDM 自动检测镜像有效性并执行切换。