FPGA 光通信开发中,Aurora 64B/66B 是最简便的链路层方案。开发人员无需关注 2bit 同步头、加解扰等底层细节,主要对接 AXI-Stream 用户数据接口即可。
Aurora 是一款可扩展的轻量级高速串行通信协议,支持全双工或单工模式,采用 64B/66B 或 8B/10B 编码。
一、Aurora 64B/66B 架构与接口
借助 Xilinx IP 核,可实现多通道间的光通信,最大支持 16 Lane。

1.1 IP 核内部结构
参考 PG074 文档,IP 核主要由以下模块组成:

- Lane Logic:每个 GT 收发器由一个 Lane 逻辑驱动,负责初始化收发器、处理控制字符编解码及错误检测。
- Global Logic:执行通道绑定与初始化,监控 Not Ready 空闲字符及所有通道逻辑的错误状态。
- RX User Interface:AXI4-Stream 接收接口,将数据从通道传输至应用程序并执行流控。
- TX User Interface:AXI4-Stream 发送接口,将数据从应用程序传输至通道并执行流量控制。
1.1.1 主要接口
不同版本界面略有差异,但核心含义一致:

- 用户数据接口:
USER_DATA_S_AXIS_TX(发送)、USER_DATA_M_AXIS_RX(接收)。 - GT BANK 管脚:
GT_SERIAL_RX、GT_SERIAL_TX、REFCLK。 - 控制接口:
CORE_CONTROL(回环模式等)、CORE_STATUS。 - 重配置端口:
GT_DRP(用于动态切换线速率)。 - 时钟与复位:
INIT_CLK:初始化时钟,来源独立于 GT BANK。USER_CLK/SYNC_CLK:用户时钟,频率为 LineRate × LaneNum × (64/66)/LaneWide,其中 USER_CLK 为收发数据时钟。pma_init和reset_pb:复位信号。
时钟关系如下:






















