1. Agilex FPGA 架构概述
Agilex 7 系列是 Intel 基于 10nm SuperFin 工艺打造的高性能 FPGA 平台,其核心设计理念是 异构计算融合——将传统可编程逻辑、高速串行收发器、数字信号处理(DSP)与 AI 推理加速单元、大容量嵌入式存储以及硬核处理器系统(HPS)集成在同一芯片上。理解这一架构是后续进行 HLS 与 RTL 混合设计、接口协同优化的基础。
1.1 芯片整体架构与关键模块
Agilex 7 的 die 布局可划分为以下几个主要功能域,它们通过高带宽的片上互联网络(如 Intel 的 Agilex NoC 或传统 Avalon/AXI 总线)进行数据交换:
1.2 HSSI 收发器
Agilex 7 的 HSSI(High-Speed Serial Interface)收发器支持从 1 Gbps 到 116 Gbps 的数据速率,覆盖 PCIe 5.0、100G/400G 以太网、CPRI 等协议。其物理编码子层(PCS)和物理介质附加子层(PMA)可独立配置,允许 RTL 设计者直接操作串行/解串逻辑,而 HLS 则可通过 Intel 提供的 HSSI IP 核进行高层抽象。
| 特性 | 参数 | 适用场景 |
|---|---|---|
| 最大速率 | 116 Gbps (PAM4) | 超高速背板 / 光互连 |
| 协议支持 | PCIe 5.0 / 100G-KR / CPRI | 数据中心 / 5G 前传 |
| PCS 功能 | 64B/66B 编码、FEC、CRC | 降低误码率 |
| RTL 控制粒度 | PMA 级:EQ、CDR、TX 预加重 | 物理层调优 |
1.3 DSP 模块与 AI Tensor Block
DSP 模块支持 INT8、FP16、FP32 等多种精度,每个模块可独立配置为乘法器、累加器或浮点单元。AI Tensor Block 则进一步集成脉动阵列(Systolic Array),专为矩阵乘法与卷积运算优化,是 HLS 实现深度学习推理加速的关键硬件单元。
1.4 M20K 内存块
M20K 是 Agilex 7 的专用嵌入式存储器,每个块容量 20 Kb,支持双端口操作、字节写使能以及多种宽度配置(如 x1、x2、x4、x8、x16、x20)。多个 M20K 可级联形成更大的 RAM 或 FIFO,是 HLS 设计中缓存行缓冲、查找表、中间结果存储的首选资源。
- 容量: 每个块 20 Kb,芯片总容量可达数十 Mb。
- 端口模式: 简单双端口、真双端口、ROM。
- HLS 映射: 使用
hls::stream或hls::FIFO时,工具自动推断为 M20K 实现。 - RTL 控制: 可手动实例化
altera_mem原语,精确控制读写时序与功耗。
1.5 硬核处理器系统 (HPS)
Agilex 7 的 HPS 集成多核 ARM Cortex-A76(高性能)与 Cortex-A55(高效能)处理器,支持对称多处理(SMP)与非对称多处理(AMP)模式。HPS 通过 AXI 总线与 FPGA 逻辑紧密耦合,提供三种主要接口:
| 接口类型 | 带宽 | 典型用途 |
|---|---|---|
| FPGA-to-HPS 桥 | ~256 Gbps | FPGA 向 HPS 发送数据流 |
| HPS-to-FPGA 桥 | ~256 Gbps | HPS 配置/控制 FPGA 加速器 |
| 轻量级桥 | ~32 Gbps | 低延迟控制/状态寄存器访问 |
hls::axis 并配合 ap_ack 握手协议,而 RTL 侧需显式插入同步器或异步 FIFO。
1.6 小结:架构对混合设计的影响
Agilex 7 的异构架构决定了 HLS 与 RTL 的分工边界:
- HLS 擅长: 数据通路密集、控制逻辑规整的算法(如 DSP 滤波、AI 卷积、图像处理),可快速生成可综合代码。
- RTL 擅长: 物理接口时序(HSSI 的 PMA 调优)、低延迟控制逻辑、自定义协议解析、以及 HPS 的底层驱动。
- 协同关键: 通过 AXI-Stream 或 Avalon-ST 接口进行数据交换,HLS 负责计算内核,RTL 负责接口适配与系统集成。