aurora通信xilinx fpga aurora 64B/66B ip核学习记录

发布时间:2026/8/25 22:25:41

aurora通信xilinx fpga aurora 64B/66B ip核学习记录
概述最近学习aurora通信主要介绍了xilinx fpga aurora 64B/66B ip核的使用方法和介绍让我们能够快速的搭建好aurora通信的工程。Aurora 64B/66B介绍Aurora 64B/66B是由赛灵思Xilinx现属AMD开发的一种高性能链路层协议专为在FPGA上实现超高带宽的串行通信而设计。它通过高效的64B/66B编码、简单的用户接口和灵活的拓扑结构为芯片间、板卡间乃至设备间的高速数据传输提供了一套可靠且低开销的解决方案。连接可以是全双工full-duplex的或单工simplex的。Aurora 64B66B IP核支持高级微控制器总线结构Advanced Microcontroller Bus ArchitectureAMBA协议的AXI4-Stream用户接口。一个Aurora 64B/66B核实例可以在GTX、GTH或GTY收发器上使用多达16个有效的连续通路lane以任何支持的线速率运行提供低成本、通用的数据通道吞吐量从500 Mb/s到超过400 Gb/s。-----------------------------------------------图 2-1 Aurora 通信框图-------------------------------------Aurora 64B/66B核心自动初始化一个channel当他们连接到Aurora 64B/66B channel partner。初始化后应用程序可以通过channel以数据帧(frame)或数据流(stream)的形式传递数据。Aurora 64B/66B帧可以是任意大小的并且可以在任何时候被高优先级请求中断。有效数据字节之间的间隙自动填充 idle以保持锁定和防止过度的电磁干扰。在Aurora 64B/66B中流控制(Flow control )是可选的可以用于限制链路伙伴传输数据速率或通过channel发送简短的、高优先级的消息。流(stream)在Aurora 64B/66B中通过一个单个无休止的帧来实现。每当数据没有被传输时就会传输idle以保持链路有效。过多的误bit、断开连接或设备故障将导致IP核复位并尝试初始化一个新的channel。Aurora 64B/66B可以在接收多通路(lane)的通道(channel)时最多支持两个符号偏斜。Aurora 64B/66B协议采用64B/66B编码。64B/66B编码相对8B/10B编码提供了理论上的性能提升因为它的传输开销非常低(3%)而8B/10B编码的传输开销为25%。2.2 aurora 64B/66B IP核配置---------------------------------------图 2-2 Aurora 64B66B IP 核配置1图----------------------------------如上图所示第1部分配置如下aGT_Type: GT口的类型bLine_RateGbps: 链路数据传输速率GbpscColumn_Used: 从下拉列表中选择适当的 GT 列dLanes 选择要在核心中使用的通道数,有效范围取决于所选的目标设备eStarting GT Quad从下拉列表中选择起始通道的起始 GT Quad。 内核配置有连续数量的通道并选择了通道选择选项fStarting GT Lane: 从下拉列表中选择内核的起始通道。 使用起始 Quad、通道和起始通道生成具有连续通道数的核心;gStarting GT Lane: 从下拉列表中选择内核的起始通道。 使用起始 Quad、通道和起始通道生成具有连续通道数的核心;hGT Refclk Selection: 从下拉列表中选择 UltraScale 器件收发器的参考时钟源iGT Refclk: 参考时钟源的频率mhzjINIT clk: 在文本框中输入有效的 INIT 时钟频率kGenerate Aurora without GT:此选项仅适用于 UltraScale 和 UltraScale 设备。 如果选择此选项则生成的 Aurora 内核不带 GT示例设计中提供了 GT。第2部分配置如下aDataflow Mode:选择 Aurora 64B/66B 内核支持的通道方向选项。单工 Aurora 64B/66B 内核具有一个单向串行端口可连接到互补的单工 Aurora 64B/66B 内核。 可用的选项是 RX-only Simplex、TX-only Simplex 和 Duplex。默认值DuplexbInterface: 选择用于内核的数据路径接口类型。 选择成帧以使用允许封装任何长度的数据帧的 AXI4-Stream 接口。 选择 Streaming 以使用简单的 AXI4-Stream 接口通过 Aurora 64B/66B 通道流式传输数据。默认值FramingcFlow ControlFlow Control 选择所需的选项以将流量控制添加到核心。 用户流控制 (UFC) 允许应用程序通过 Aurora 8B/10B 通道发送简短的高优先级消息。本机流量控制 (NFC) 允许全双工接收器调节发送给它们的数据的速率。 立即模式允许在数据帧中插入空闲代码而完成模式仅在完整数据帧之间插入空闲代码可用选项如下• None• UFC• Immediate NFC• Completion NFC• UFC Immediate NFC• UFC Completion NFC默认值无dUSER K选择将 USER K 接口添加到核心。USER-K 块是特殊的单块代码直接传递给用户应用程序。这些块用于实现应用程序特定的控制功能。默认无eLittle Endian Support选择此选项将所有接口更改为小端格式默认情况下核心使用大端格式 ----------------------------------------图 2-3 Aurora 64B66B IP 核配置2图---------------------------------上图中CRC表示选择在数据流中插入 CRC32 的选项上图所示第1部分配置如下aDRP模式选择所需的接口以使用 DRP 控制或监控收发器接口。可用选项包括1、Native 2、 AXI4_Lite 默认值AXI4_LitebVivado Lab Tools选择以将 Vivado 实验室工具添加到 Aurora 64B/66B 核心此选项提供一个调试接口用于显示核心状态信号cAdditional Transceiver Control and Status Ports选择以在核心顶层中包含收发器控制和状态端口。第2部配置保持默认即可。------------------------------------图 2-4 Aurora 64B66B IP 核配置3图-------------------------------------如上图所示选择将收发器通用 PLL 及其逻辑包含在 IP 核中或示例设计中。可选项• 在核心中包含共享逻辑Include Shared Logic in core。• 在示例设计中包含共享逻辑Include Shared Logic in example design。在示例设计中包含共享逻辑Include Shared Logic in example design选择此项可将gt口的参考时钟作为逻辑的内部时钟使用。Single Ended GTREF CLK如果选择GT 参考时钟将成为单端时钟输入。Aurora 64B66B IP核 端口信号可查看Xilinx官方pg074的文档里面有详细介绍。2.3 aurora 64B/66B IP核流数据传输2.3.1 aurora 64B/66B IP核TX流数据传输上图显示了典型的流数据传输开始时两个就绪信号都没有置位这表示用户逻辑和内核都没有准备好传输数据。在下一个时钟周期中ip核通过置位 mgt0_axi_tx_tready来指示它已准备好传输数据。一个周期后用户逻辑置位 mgt0_axi_tx_tvalid信号并将数据放在mgt0_axi_tx_tdata总线上表明它已准备好传输数据。因为现在两个信号都被置位所以上图所示的 Databeat0从用户逻辑传输到内核。Databeat 1 在下一个时钟周期上传输。在IP核置低其 ready 信号 mgt0_axi_tx_tready并且在下一个时钟周期之前不会传输任何数据此时 mgt0_axi_tx_tready信号再次被置位。然后用户在下一个时钟周期上置低 mgt0_axi_tx_tvalid并且在两个信号都被置位之前不会传输任何数据。2.3.2 aurora 64B/66B IP核RX流数据传输上图显示了典型的流数据接收当mgt0_axi_rx_tvalid置位时Databeat0、Databeat1等从内核传输到用户逻辑。2.4 aurora 64B/66B IP 配置示例及上板验证本次示例配置如下a线速率为16.375 Gbpsb发送的数据为递增数从1开始递增cLanes的数量为4 条数据使用流(stream)模式传输Ip核配置截图如下2.4.1 aurora硬件连接示意图通过线缆将两个mgt口连接硬件连接为Mgt0的发送端连接到mgt1的接收端Mgt1的发送端连接到mgt0的接收端。2.4.2 Aurora常用计算公式2.4.2.1 用户时钟计算方式user_clkUser_clk line rate * (64/66)*lanes / data width 。User_clk : 用户时钟line rate :线速率laneslane的数量data width数据的位宽示例本次使用线速率为16.375Gbpslane的数量为4数据位宽为256计算用户时钟为User_clkMhz 16375 * (64/66) *4/256 ≈ 248.1060606 Mhz。2.4.2.2 线速率与GT参考时钟的关系详细描述可参考ug576的文档。如过选择cpll线速率与GT参考时钟的关系如下图所示如过选择qpll线速率与GT参考时钟的关系如下图所示2.4.3 上板验证结果本此验证数据为递增数验证线速率为16.375Gbpsaurora初始化状态后查看mgt0和mgt1状态指示信号都正常。硬件连接为Mgt0的发送端连接到mgt1的接收端Mgt1的发送端连接到mgt0的接收端 从图中我们能够发现接收数据都是递增数并且数据验证模块的err一直拉低说明数据传输正常。2.5 aurora 通信注意事项(1)在aurora的通信中最重要的是二个复位信号一个是reset_pb另一个是pma_init详细的复位顺序可参考xilinx pg074文档的第66页下图是双工的复位顺序。(2)另一个是发送数据时需注意s_axi_tx_treadyAurora 64B/66B核心只有在 s_axi_tx_tready 和 s_axi_tx_tvalid 都被置位时才采样数据。(3)最后需注意5个状态指示信号分别是hard_err、soft_err、channel_up、lane_up、gt_pll_lock。ahard_err检测到严重错误在核心重置之前保持断言。bsoft_err表示在输入的串行数据流中检测到软错误在单个 user_clk 周期内置位。cchannel_up当 Aurora 64B/66B 通道初始化完成且通道准备好发送/接收数据时会触发此断言。dlane_up在每条通道成功初始化后断言每个位表示一条通道。Aurora 64B/66B 核心只有在所有 lane_up 信号被断言后才能接收数据。egt_pll_lock当 tx_out_clk 稳定时断言。模块资源占用情况上图显示了aurora模块在xcku115_flva1517_2_i fpga上所占用资源情况。

相关新闻

升级 OpenAI Agents SDK 0.22:用回归测试守住工具输出和运行状态

升级 OpenAI Agents SDK 0.22:用回归测试守住工具输出和运行状态

2026/8/25 22:25:41

OpenAI Agents SDK 0.22 适合正在把模型接到检索、工单、数据库或内部服务的开发者。它这次的重点不是增加一个新工具,而是收紧工具输出、终态失败和运行状态的处理边界。升级时,先把这三类失败路径写成回归测试,再替换依赖版本:p…

软件本地化:多语言适配指南与评估标准

软件本地化:多语言适配指南与评估标准

2026/8/25 22:25:41

在全球数字化浪潮推动下,中国软件企业出海已从"选择题"变为"必答题"。无论是SaaS平台、移动应用还是桌面工具,想要真正进入海外市场,仅靠功能过硬远远不够——软件本地化才是决定产品能否被海外用户接受的核心环节。根据…

03 · 人脸识别管线优化:灰图之谜、ROI 转色与 IoU 追踪(7.6 → 29 fps)

03 · 人脸识别管线优化:灰图之谜、ROI 转色与 IoU 追踪(7.6 → 29 fps)

2026/8/25 22:25:41

本系列第 3 篇 | 2026-05 ~ 07 | 标签:GStreamer、OpenCV、NPU 推理、性能优化 算法对齐 ST 官方参考工程:BlazeFace 128128 检测 FaceNet512 160160 特征 余弦距离匹配人脸库。跑通不难,难的是在双核 A35 上把它做快: 识别循环从 7.6 fps 到 29 fps(顶满相机帧率),CPU 从吃满…

拯救者工具箱 Lenovo Legion Toolkit 使用教程:性能模式、独显直连与自动化一站配好

拯救者工具箱 Lenovo Legion Toolkit 使用教程:性能模式、独显直连与自动化一站配好

2026/8/25 23:05:42

拯救者工具箱 Lenovo Legion Toolkit 使用教程:性能模式、独显直连与自动化一站配好 【免费下载链接】LenovoLegionToolkit Lightweight Lenovo Vantage and Hotkeys replacement for Lenovo Legion laptops. 项目地址: https://gitcode.com/gh_mirrors/le/Lenovo…

SQL Server数据插入性能优化:从单条到海量的七种方法对比

SQL Server数据插入性能优化:从单条到海量的七种方法对比

2026/8/25 23:05:42

1. 项目概述:为什么我们要关心SQL Server的插入效率?在数据库日常开发和运维中,数据插入(INSERT)是最基础、最高频的操作之一。无论是业务系统记录用户行为、日志系统收集跟踪信息,还是数据仓库进行ETL过程…

2026年挑选食品级PE保鲜袋专业工厂,关键要看这三点

2026年挑选食品级PE保鲜袋专业工厂,关键要看这三点

2026/8/25 23:05:42

2026年挑选食品级PE保鲜袋专业工厂,关键要看这三点随着食品工业与生鲜电商的持续扩容,PE保鲜袋作为直接接触食物的包装材料,其安全性与功能性正受到前所未有的关注。进入2026年,面对市场上参差不齐的供应商,采购方与品…

AI Benchmark深度解析:从跑分原理到实战应用,看懂移动AI性能

AI Benchmark深度解析:从跑分原理到实战应用,看懂移动AI性能

2026/8/25 23:05:42

1. 项目概述:AI Benchmark到底是什么?如果你关注AI硬件,尤其是手机、平板或者PC上的AI性能,那你大概率听说过“AI Benchmark”这个名字。它就像是我们给电脑跑分的“鲁大师”或“3DMark”,只不过它测的不是CPU的浮点运…

Oracle自定义排序实战:从DECODE到INSTR的四种高效方案

Oracle自定义排序实战:从DECODE到INSTR的四种高效方案

2026/8/25 23:05:42

1. 项目概述:当标准排序无法满足需求时在数据库开发中,ORDER BY是我们最熟悉的排序指令,无论是升序(ASC)还是降序(DESC),它都能将数据按照某个字段的数值或字母顺序整齐排列。然而&a…

9.1 智能体适配分析(智能体工程)

9.1 智能体适配分析(智能体工程)

2026/8/25 22:55:42

王晓华《智能体工程驱动AI Agent开发》1~8章试读-CSDN博客 在明确“北京豆汁文化体验智能体二次开发”的项目定位与核心目标后,本节将完成项目与现有智能体技术体系的全维度适配分析。 本次分析围绕两大核心维度展开:一是锚定豆汁选题的场景特性与技术…

[光学原理与应用-521]:对光的错误理解与纠偏

[光学原理与应用-521]:对光的错误理解与纠偏

2026/8/24 19:53:32

首先光是一种能量的载体和形态,宏观上观察到的光是由无数个微观的光量子组成的,每个光子在产生的瞬间,其在真空的空间中以确定不变的速度沿着一个初始的方向一直向前,在微观层面,每个光量子的运动轨迹是以波函数所展现…

SIP通话转接原理与REFER方法实战解析

SIP通话转接原理与REFER方法实战解析

2026/8/24 19:56:07

1. 通话转接不是“挂断再拨号”,而是SIP会话的动态重定向你有没有遇到过这样的场景:客服坐席A正在和客户通电话,突然需要把这通对话无缝转给专家坐席B,客户完全感知不到中间的断连——既没听到忙音,也没被要求重新拨号…

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

2026/8/24 21:16:09

1. 为什么选择Kolla-ansible来部署单节点OpenStack?如果你正在寻找一种能把OpenStack从“概念”快速变成“可用的实验环境”的方法,那么Kolla-ansible几乎是当前最主流、最省心的选择。我见过太多人卡在手动编译依赖、配置服务、处理版本冲突的泥潭里&am…

三步把QQ空间历史说说导出到本地:GetQzonehistory 极简指南

三步把QQ空间历史说说导出到本地:GetQzonehistory 极简指南

2026/8/25 0:04:34

三步把QQ空间历史说说导出到本地:GetQzonehistory 极简指南 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory Meta Description:GetQzonehistory 是一个QQ空间历史说…

洛谷 P7912:[CSP-J 2021 T4] 小熊的果篮 ← 双向链表

洛谷 P7912:[CSP-J 2021 T4] 小熊的果篮 ← 双向链表

2026/8/25 0:04:35

【题目来源】 https://www.luogu.com.cn/problem/P7912 【题目描述】 小熊的水果店里摆放着一排 n 个水果。每个水果只可能是苹果或桔子,从左到右依次用正整数 1,2,…,n 编号。连续排在一起的同一种水果称为一个“块”。小熊要把这一排水果挑到若干个果篮里&#x…

Transformers.js 网页端图像抠图实战:零后端 3 行代码返回透明 PNG

Transformers.js 网页端图像抠图实战:零后端 3 行代码返回透明 PNG

2026/8/25 0:04:35

Transformers.js 网页端图像抠图实战:零后端 3 行代码返回透明 PNG 【免费下载链接】transformers.js State-of-the-art Machine Learning for the web. Run 🤗 Transformers directly in your browser, with no need for a server! 项目地址: https:/…

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

2026/8/22 2:02:26

一天写完毕业论文在2026年已不再是天方夜谭。2026年最炸裂、实测能大幅提速的AI论文写作工具,覆盖选题构思、文献整理、内容生成、格式排版等核心场景,真正帮你高效搞定论文难题。 一、全流程王者:一站式搞定论文全链路(一天定稿首…

导师推荐!2026最新AI论文工具测评与实用推荐

导师推荐!2026最新AI论文工具测评与实用推荐

2026/8/22 4:13:47

2026年真正好用的AI论文工具,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。 一、…

告别游戏崩溃:XCOM 2模组管理器的智能革命

告别游戏崩溃:XCOM 2模组管理器的智能革命

2026/8/22 1:32:34

告别游戏崩溃:XCOM 2模组管理器的智能革命 【免费下载链接】xcom2-launcher The Alternative Mod Launcher (AML) is a replacement for the default game launchers from XCOM 2 and XCOM Chimera Squad. 项目地址: https://gitcode.com/gh_mirrors/xc/xcom2-lau…