安路科技PCIe技术文档综合分析报告

生成时间: 2026年04月09日
分析文档: 17份安路科技PCIe技术文档
文档类型: FPGA PCIe硬核用户手册、参考设计、IP配置指南

📋 概览

分析目标

本报告对安路科技PH1A系列、PH1A100系列、PH1P系列和PH2A系列FPGA的PCIe技术文档进行系统化分析,梳理技术架构、接口定义、配置方法和应用场景,为用户提供完整的技术知识图谱。

资料来源

分析文档包含以下三类:

  1. 用户手册(4份): PH1A/PH1A100/PH1P/PH2A系列PCIe控制器用户手册
  2. IP配置指南(3份): PH1A/PH1P/PH2A系列PCIe定制向导IP用户手册
  3. 参考设计(10份): Native接口转换、DMA设计、RC-EP连接、SERDES共享等

核心发现

🏗️ 技术架构概览

整体架构

安路科技PCIe控制器硬核采用分层架构,包含:

模块分解

| 模块名称 | 功能描述 | 关键特性 | |———-|———-|———-| | PCIe Controller硬核 | PCIe协议核心处理引擎 | 支持EP/RC模式,Gen1-Gen4 | | Native接口 | 安路自定义数据接口 | XALI0/1, TRGT1, BYPASS, ELBI, DBI | | AXI Stream转换桥 | Native接口到AXI Stream转换 | RQ/RC/CQ/CC四组接口 | | DMA引擎 | 数据搬运加速 | Block DMA / Scatter-Gather DMA | | 配置管理 | PCIe配置空间管理 | DBI接口,自恢复功能 |

数据流向

PCIe链路 ↔ PCIe硬核 ↔ Native接口 ↔ AXI Stream桥 ↔ 用户逻辑
                ↓
            配置空间(DBI)
                ↓
            中断控制(INT/MSI/MSI-X)

📊 技术规格

协议与标准

| 协议/标准 | 版本 | 支持的功能 | 备注 | |———–|——|———–|——| | PCIe Base Specification | Rev 5.0 | Gen1-Gen4线速率 | 不同系列支持等级不同 | | PCI Local Bus | Rev 3.0 | Legacy PCI兼容 | Legacy Endpoint模式 | | AMBA AXI4 | AXI4-MM/AXI4-Stream | 用户逻辑接口 | 用于DMA和桥接应用 | | AMBA AXI4-Lite | AXI4-Lite | 寄存器访问 | 低速控制接口 |

性能参数

| 参数项 | 参数值 | 单位 | 说明 | |——–|——–|——|——| | Gen1线速率 | 2.5 | GT/s | PH1A/PH1A100/PH1P/PH2A | | Gen2线速率 | 5.0 | GT/s | PH1A/PH1A100/PH1P/PH2A | | Gen3线速率 | 8.0 | GT/s | PH1A/PH2A | | Gen4线速率 | 16.0 | GT/s | 仅PH2A | | 链路宽度 | 1/2/4/8 | Lanes | PH1A100:1-2, PH1A/PH1P:1-4, PH2A:1-8 | | Max Payload Size | 128-2048 | Bytes | 可配置 | | Max Read Request Size | 128-4096 | Bytes | 可配置 |

资源需求

| 资源类型 | PH1A100需求 | PH1A需求 | PH2A需求 | |———-|————|———-|———-| | SERDES DUAL | 1个 | 1-2个 | 1-2个 | | LUT6 | 3000-7500 | 3000-7500 | 6000-28000 | | REG | 4000-45000 | 4000-45000 | 10000-25000 | | ERAM | 11-52 | 11-52 | 140-157 | | PLL | 1 | 1 | 1-2 |

🔌 接口定义

接口分类

Native接口

安路科技自定义的高性能接口,直接连接PCIe硬核,包括:

AXI接口

标准AMBA AXI4接口,便于移植:

定制IP接口

详细接口定义

PCIe硬核Native接口

| 接口名称 | 方向 | 位宽 | 描述 | |———-|——|——|——| | 时钟复位 |||| | refclk_p/n | 输入 | 1 | 100MHz差分参考时钟 | | core_clk | 输出 | 1 | PCIe核心时钟 | | core_rst_n | 输出 | 1 | PCIe核心复位 | | user_clk | 输出 | 1 | 用户侧时钟(PLL输出) | | user_rst_n | 输出 | 1 | 用户侧复位 | | 发送接口 |||| | xali0_txdata | 输出 | 64/128 | Client0发送数据 | | xali0_txcharisk | 输出 | 8/16 | TLP字符指示 | | xali0_txdvalid | 输出 | 1 | 发送数据有效 | | xali0_txdready | 输入 | 1 | 发送数据就绪 | | 接收接口 |||| | trgt1_rxdata | 输入 | 64/128 | TRGT1接收数据 | | trgt1_rxcharisk | 输入 | 8/16 | TLP字符指示 | | trgt1_rxdvalid | 输入 | 1 | 接收数据有效 | | trgt1_rxdready | 输出 | 1 | 接收数据就绪 | | 配置接口 |||| | dbi_addr | 输入 | 19 | DBI地址 | | dbi_wdata | 输入 | 32 | DBI写数据 | | dbi_rdata | 输出 | 32 | DBI读数据 | | dbi_write | 输入 | 1 | DBI写使能 | | dbi_read | 输入 | 1 | DBI读使能 | | 中断接口 |||| | msi_int | 输入 | 32 | MSI中断向量 | | msi_enable | 输出 | 4 | MSI使能 | | intx_int | 输入 | 4 | Legacy INTx中断 |

AXI Stream接口(RQ/RC/CQ/CC)

| 接口名称 | 方向 | 位宽 | 描述 | |———-|——|——|——| | RQ接口(512bit) |||| | s_axis_rq_tdata | 输入 | 512 | 请求数据 | | s_axis_rq_tuser | 输入 | 137 | 边带信息(地址/BE/Tag等) | | s_axis_rq_tkeep | 输入 | 16 | 字节有效 | | s_axis_rq_tlast | 输入 | 1 | 包结束 | | s_axis_rq_tvalid | 输入 | 1 | 数据有效 | | s_axis_rq_tready | 输出 | 1 | 接收就绪 | | RC接口(512bit) |||| | m_axis_rc_tdata | 输出 | 512 | 完成数据 | | m_axis_rc_tuser | 输出 | 161 | 边带信息 | | m_axis_rc_tkeep | 输出 | 16 | 字节有效 | | m_axis_rc_tlast | 输出 | 1 | 包结束 | | m_axis_rc_tvalid | 输出 | 1 | 数据有效 | | m_axis_rc_tready | 输入 | 4 | 接收就绪 | | CQ接口(512bit) |||| | m_axis_cq_tdata | 输出 | 512 | 请求数据 | | m_axis_cq_tuser | 输出 | 183 | 边带信息 | | m_axis_cq_tkeep | 输出 | 16 | 字节有效 | | m_axis_cq_tlast | 输出 | 1 | 包结束 | | m_axis_cq_tvalid | 输出 | 1 | 数据有效 | | m_axis_cq_tready | 输入 | 1 | 接收就绪 | | CC接口(512bit) |||| | s_axis_cc_tdata | 输入 | 512 | 完成数据 | | s_axis_cc_tuser | 输入 | 81 | 边带信息 | | s_axis_cc_tkeep | 输入 | 16 | 字节有效 | | s_axis_cc_tlast | 输入 | 1 | 包结束 | | s_axis_cc_tvalid | 输入 | 1 | 数据有效 | | s_axis_cc_tready | 输出 | 1 | 接收就绪 |

时序特性

📝 知识点梳理

按技术层级分类

物理层(PHY)

数据链路层

事务层

按接口类型分类

Native接口

AXI接口

定制IP接口

按应用模式分类

RC(Root Complex)模式

EP(Endpoint)模式

🔍 深入分析

关键问题1:Native接口 vs AXI Stream接口

分析:安路科技提供了两种接口方案:

  1. Native接口: 直接连接PCIe硬核,性能最优,但需要熟悉安路自定义协议
  2. AXI Stream接口: 通过桥接转换,兼容AMBA生态,便于移植

结论

关键问题2:Block DMA vs Scatter-Gather DMA

分析

  1. Block DMA: 传输物理连续的单个数据块,实现简单
  2. Scatter-Gather DMA: 支持多个不连续块,减少CPU参与,提高效率

结论

关键问题3:PH1A/PH1P vs PH2A差异

分析: | 特性 | PH1A/PH1P | PH2A | |——|———-|——| | PCIe版本 | Gen1-Gen3 | Gen1-Gen4 | | 最大宽度 | X4 | X8 | | AXI数据位宽 | 64/128bit | 512bit | | 应用场景 | 中端应用 | 高端应用 | | 价格 | 较低 | 较高 |

结论

🔗 跨文档关联

版本演进关系

PH1A/PH1A100/PH1P → PH2A
  ├─ Native接口 → AXI Stream接口
  ├─ Gen1-Gen3 → Gen1-Gen4
  ├─ X4 → X8
  └─ 64/128bit → 512bit

功能扩展关系

参考设计关系

IP用户手册(IPUG011/028/160)
    ↓
PCIe硬核配置
    ↓
参考设计(APUG032/033/039/050/053/069/089)
    ↓
实际应用

💡 关键洞察

洞察1:接口策略的双轨并行

安路科技采用Native + AXI Stream双轨策略:

洞察2:DMA方案的梯度设计

从简单的Block DMA到复杂的SGDMA:

洞察3:产品线的清晰定位

📝 结论与建议

主要结论

  1. 技术完整: 安路科技PCIe解决方案涵盖硬件、IP、参考设计,技术栈完整
  2. 接口灵活: Native和AXI Stream双接口,满足不同应用需求
  3. 参考设计丰富: 从基础TLP到高级DMA,覆盖各种应用场景
  4. 产品线清晰: PH1A/PH1P中端 + PH2A高端,定位明确

行动建议

设计选型建议

学习路径建议

  1. 入门: 阅读IP用户手册,理解PCIe基础配置
  2. 进阶: 研究Native接口,掌握高性能设计
  3. 实践: 运行参考设计,验证设计方案
  4. 深入: 学习DMA设计,提升系统能力

开发流程建议

  1. 确定FPGA型号和PCIe规格
  2. 选择接口方案(Native或AXI Stream)
  3. 配置PCIe硬核(IP GUI)
  4. 实现用户逻辑或集成DMA
  5. 仿真验证
  6. 上板测试

📚 术语表

核心术语

| 术语 | 英文全称 | 定义 | |——|———-|——| | PCIe | PCI Express | 高速串行计算机扩展总线标准 | | TLP | Transaction Layer Packet | PCIe事务层数据包 | | BAR | Base Address Register | 基地址寄存器 | | DMA | Direct Memory Access | 直接存储器访问 | | EP | Endpoint | 端点设备 | | RC | Root Complex | 根复合体 | | MPS | Max Payload Size | 最大载荷大小 | | MRRS | Max Read Request Size | 最大读请求大小 |

缩略词

| 缩略词 | 全称 | 说明 | |——–|——|——| | LTSSM | Link Training and Status State Machine | 链路训练和状态状态机 | | ELBI | External Local Bus Interface | 外部本地总线接口 | | DBI | Data Bus Interface | 数据总线接口 | | MSI | Message Signaled Interrupt | 消息信号中断 | | SGDMA | Scatter-Gather DMA | 分散-聚集DMA | | AXI | Advanced eXtensible Interface | 高级可扩展接口 |

📎 附录

A. 参考文档

  1. UG713: PH1A100系列PCIe用户手册
  2. UG913: PH1A系列PCIe用户手册
  3. UG1313: PH1P系列PCIe用户手册
  4. UG1112: PH2A系列PCIe用户手册
  5. IPUG011: PH1A系列PCIe定制向导IP
  6. IPUG028: PH1P系列PCIe定制向导IP
  7. IPUG160: PH2A系列PCIe定制向导IP

B. 参考设计

  1. APUG032: Native接口转AXI Stream参考设计
  2. APUG033: Block DMA参考设计
  3. APUG039: RC连接EP参考设计
  4. APUG050: PH1A Native转AXI Stream参考设计
  5. APUG053: PCIe与SERDES共享参考设计
  6. APUG069: SGDMA参考设计
  7. APUG089: PH2A Native转AXI Stream参考设计

C. 工具和资源

报告生成完毕

本报告基于17份安路科技PCIe技术文档分析生成,如有疑问请参考原始资料。