基于Aurora协议的ArcticPro eFPGA IP评估方案详解

📅 2026/8/27 12:50:52
基于Aurora协议的ArcticPro eFPGA IP评估方案详解
做FPGA高速接口的工程师应该都遇到过类似场景拿到一颗新的eFPGA IP数据手册写得天花乱坠但真正上手后关心的其实是另一套问题——这东西跑Aurora协议到底稳不稳定、能跑到多少线速率、误码率能不能接受、功耗和资源占用是不是在产品预算之内。这篇内容我想聊的正是围绕“Aurora Software for Evaluation of ArcticPro eFPGA IP”这一整套评估方案聊聊怎么从零搭一套又实用又容易复现的验证环境把Aurora协议在ArcticPro eFPGA IP上的真实表现量化出来而不是只看文档里的理想数字。项目核心就三个关键词Aurora、ArcticPro、eFPGA。Aurora是Xilinx定义的一种轻量级高速串行链路协议常用在芯片间点对点通信几乎不引入协议开销ArcticPro是Achronix推出的嵌入式FPGA IP产品线可以直接集成到SoC内部替代传统外置FPGAeFPGA则是这种嵌进芯片里的可编程逻辑阵列的统称。这套评估软件要回答的问题本质上就是“ArcticPro eFPGA这个IP能不能胜任Aurora协议的高速数据传输任务以及能在什么条件下胜任”。这篇文章适合三类读者一类是正在选型eFPGA的架构师需要评估给SoC里塞一块eFPGA到底能处理什么类型的通信任务另一类是做FPGA原型验证的工程师手上有类似的高速串行链路验证需求还有一类是刚接触Aurora协议、想知道怎么快速搭一套可复现验证环境的同学。我会尽量把协议细节、工程实现和踩坑心得放在一起讲让文章既接得住理论也扛得起实践。1. 项目解读Aurora评估软件到底在评估什么1.1 先把三个概念拆清楚Aurora、ArcticPro、eFPGA我接触过不少工程师看到这个项目名第一反应是“Aurora不就是个IP核吗有什么好评估的”。但如果把这句话拆开看会发现它其实同时涉及三个不同层次的东西。Aurora协议是一种链路层协议负责把用户数据封装成适合高速串行传输的格式再交给物理层收发器在Xilinx平台上就是GT系列高速收发器发送出去。它最吸引人的地方是“几乎没有额外开销”Aurora 64B/66B版本用66个bit承载64个bit的有效数据只有约3.1%的编码开销相比10G以太网通常超过10%的协议开销Aurora更接近原始数据的传输效率。而且它支持把多个通道绑定成一条更大的链路带宽扩展非常方便。ArcticPro是Achronix的eFPGA IP产品线直接嵌进ASIC或SoC内部相当于把一块可编程逻辑阵列放进芯片里。它跟传统独立FPGA最大的区别是FPGA逻辑和主系统之间的互联是片内总线而非PCB走线数据交换延迟低、功耗可控但同时也意味着设计固化后想改动就需要重新流片所以选型和评估环节特别重要。eFPGA是嵌入式可编程门阵列的统称。它不是一个具体产品而是一类技术形态。ArcticPro只是其中一种实现但它非常典型有完整的加工艺、逻辑单元、DSP、BRAM和高性能收发器资源用来跑Aurora这类高速协议是完全有代表性的。1.2 为什么偏偏拿Aurora来评估eFPGA选Aurora协议当评估目标不是随便抓一个协议来充数而是因为Aurora的特性恰好能暴露eFPGA的很多关键性能指标。Aurora协议走的是裸串行链路协议栈极简没有复杂的MAC仲裁、没有重传机制。这意味着如果链路出现误码错误会被直接统计出来不会被协议层遮掩。对评估eFPGA来说这是好事你能拿到最真实的物理层错误率数据。相比之下如果用TCP/IP这类带重传的协议去测丢包会被重传掩盖误码率根本测不准。另外Aurora支持多通道绑定这会消耗eFPGA内部大量可编程逻辑来做通道对齐和时延补偿。评估软件里可以配置单通道、四通道、甚至八通道绑定的场景用来观察eFPGA在布线压力增大的情况下时序收敛能力是否仍然稳定。这比单纯跑个串行回环更有工程参考价值。还有一点很实际Aurora 64B/66B的物理层编码方式和10G以太网高度相似都使用同步头加数据块的机制。一套把Aurora跑通的评估环境稍微改造就能用于评估以太网MAC和PCS逻辑的部署能力后续可复用的资产很多。1.3 评估软件最终要交付什么成果一套完整的评估软件交付的绝对不止一个仿真波形。从我的角度看它至少应该包含以下四类成果。第一是一套可回归的验证环境包括eFPGA内部逻辑的仿真testbench、寄存器配置序列、链路初始化握手时序。这一部分保证“无论谁拿着这个环境都能复现测试结果”。很多团队做验证环境只做到“能跑通”就停了这是远远不够的必须让环境具备确定性和可重复性。第二是一套板级测试用例集覆盖不同线速率、不同通道数量、不同均衡参数的组合。Aurora协议在不同速率下表现差异很大10Gbps和16Gbps对电源、时钟抖动、信号完整性的敏感程度完全不是一个量级。测试用例要能自动跑完整个矩阵并生成报告。第三是性能观测与统计模块实时记录链路总吞吐量、有效数据率、误码率、链路初始化时间、平均延迟和最大延迟等指标。只有把这些指标量化才能回答“这个eFPGA到底行不行”的问题。第四是资源与功耗评估报告模板包括LUT、FF、BRAM、DSP的使用率静态功耗、动态功耗和GT收发器功耗的拆分数据。没有这些数据架构师在做SoC设计时根本没法决策是否要给FPGA逻辑预留足够供电和散热空间。2. 评估系统的整体架构与设计思路2.1 软硬件协同软件控制逻辑 eFPGA硬件逻辑我在设计这套评估系统时整体采用“软件控制、硬件执行、上位机观测”的三层架构这也是业内做类似评估时最常用的结构。最底层是eFPGA内部实现的硬件逻辑包含Aurora收发器核、测试数据发生器、接收端错误检测器、统计计数器、寄存器堆和APB/AXI-Lite从接口。Aurora核负责完成64B/66B编码、加扰、训练序列生成、通道绑定测试数据发生器产生PRBS或递增序列接收端错误检测器逐周期比对收到的数据和期望值并将错误数累加到统计寄存器。中间层是SoC内部的主控CPU或硬件状态机通过总线接口访问eFPGA内部的寄存器。协议初始化时序安排、测试启停控制、统计结果的读取都在这一层完成。这一层可以用裸机程序实现也可以用轻量级RTOS管理但要注意一点CPU不能参与高速数据通路只能做慢速配置和观测否则实时性无法保证。最上层是PC端上位机通过UART或USB把SoC上报的统计结果拉上来存入数据库或CSV文件再通过Python脚本做后期绘图分析。上位机的价值在于长时间无人值守测试比如跑24小时误码率测试底层数据定时上报上位机负责监控和告警。2.2 为什么把测试控制器放进eFPGA而不是外部处理器这是我在架构设计时专门纠结过的一个点。最初的想法是把测试逻辑完全放在外部控制器的软件里eFPGA只跑Aurora核数据由软件生成后通过总线写入FIFO再发送。但后来发现这么做有几个问题。第一个问题是时序不精确。软件生成数据涉及到中断、总线仲裁、缓存管理发送间隔抖动很大误码统计的时间基准就不准。尤其当测试码型需要在固定时刻切换比如从PRBS31切换到递增数列软件调度的延迟会让接收端误判错误类型。第二个问题是持续带宽瓶颈。高速串行链路的测试数据速率动辄数Gbps软件产生数据的速率根本跟不上。如果严格模拟线速数据流必须由硬件连续产生数据软件只负责配置参数。第三个问题是移植性。如果外部处理器换掉整套测试环境都要重写。而把测试逻辑做成eFPGA内部的一组硬件模块这套评估软件就可以跟着eFPGA IP走换到不同的SoC平台上只需要改寄存器配置不需要改硬件逻辑。这对IP评估场景尤为重要因为eFPGA IP很可能要被多个客户在不同SoC上使用。2.3 工具链选型Vivado Synopsys 验证环境搭建这套评估环境工具链的选择直接决定效率。我用的是几款主流工具的组合方案分工明确。Aurora 64B/66B IP核由Vivado生成配置因为Aurora是Xilinx定义的协议Vivado里的IP核已经封装好链路训练和通道绑定逻辑参数配置界面非常成熟可以直接生成RTL代码用于仿真和集成。这省去了自己实现协议状态机的成本缺点是比较“黑盒”但作为评估目标是完全够用的。ArcticPro eFPGA的布局布线使用Synopsys的Design Compiler做综合再配合Achronix提供的布局布线工具完成最终的物理实现。eFPGA内部逻辑在SDC约束文件中定义时钟域和时序约束高速GT管脚约束和参考时钟约束要特别小心这直接影响能否收敛到目标线速率。仿真验证我用VCS加上脚本化的回归流程。生成的testbench里会实例化Aurora IP核的验证模型通过AXI4-Stream接口读写数据并用覆盖率统计来保证关键状态机分支都被执行到。上板验证则用逻辑分析仪抓取Aurora核的关键状态信号比如lane_up、channel_up、hard_err和soft_err这些信号是排查链路问题的第一手依据。3. 核心关键模块的落地实现3.1 Aurora 64B/66B IP核配置要点Aurora IP核的配置看起来就是填一张表格但每个参数都直接影响后续的实现难度这里分享几个关键点的选择思路。首先是协议版本选择。Vivado中Aurora有两个主要版本8B/10B和64B/66B。8B/10B版本实现简单、容错好适合低速应用但每64bit数据要额外消耗16bit编码开销带宽利用率不到80%。64B/66B版本编码开销只有不到3.1%但是对物理层信号质量要求更高均衡和去加重配置不够容易出误码。评估eFPGA的高速能力肯定选64B/66B版本否则测不出极限性能。其次是线速率设定。Aurora核的线速率由参考时钟和GT收发器倍频设置共同决定。以10.3125Gbps为例参考时钟一般用156.25MHz再配合GT内部的PLL配置。如果选的参考时钟精度不够或者抖动太大即使配置正确误码率也很难看。务必要把参考时钟约束到专用时钟引脚上不要用普通的全局时钟网络否则抖动会直接送入GT的CDR电路。然后是通道数配置。评估软件的强大之处在于可以灵活切换1/2/4通道绑定模式。通道数越多Aurora核内部需要做对齐和补偿的逻辑就越复杂对eFPGA布线资源的挑战也越大。我建议在评估脚本里把通道数做成可配置参数这样不用改RTL就能在同一颗eFPGA上跑出多种组合下的性能数据。最后一个关键配置是接口模式。Aurora核的用户接口通常选AXI4-Stream这是最标准的做法后续不管对接DMA还是FIFO都很方便。如果选Legacy接口可能在效率上略高一点但移植性差评估阶段不推荐。3.2 eFPGA内部的数据通路设计数据通路设计直接决定评估软件是否真的能模拟真实应用场景。Aurora核的发送端我把测试数据发生器、命令解析器和发送FIFO串接起来形成一条清晰的数据通路。测试数据发生器支持多种序列PRBS31多项式为x^31x^281适合模拟随机数据、递增序列适合做地址同步校验、用户自定义序列可以配置寄存器写入的8字节数据块循环发送。不同的序列暴露不同的问题PRBS31能最大程度模拟真实数据的频谱分布递增序列则方便在接收端快速定位字节对齐问题。接收端数据通路相对复杂一些包括错误检测器、CRC校验器、接收FIFO和统计数据采集逻辑。错误检测器逐周期把接收到的数据和期望值比对一旦发现不匹配就把错误类型和当前数据写入状态寄存器同时错误计数加1。CRC32校验则用于长时间测试时检测是否有偶发错误被漏过。FIFO深度的估算是个容易被低估的问题。发送端FIFO深度必须大于“Aurora核内部的背压延迟加上链路往返延迟”对应的数据量否则在接收端处理不及时的情况下发送端会很快填满FIFO导致反压拉低实际吞吐。以一个4通道10Gbps链路为例链路往返延迟如果按1.5微秒估算需要缓冲的数据量约为6K字节因此至少需要用18Kbit的Block RAM来做FIFO否则高负载下无法维持线速传输。3.3 测试激励与错误注入机制很多人做协议IP评估只测“发数据-收数据-校验一致性”这一条最基础的通路这样根本测不出协议栈的真实鲁棒性。我的经验是必须加入有目的的破坏性测试才能真正检验IP的边界能力。错误注入机制我做了三层。第一层是软错误注入通过寄存器控制可以强制Aurora核产生一次CRC错误或协议帧错误用于验证对端能不能正确检测并上报错误第二层是链路层错误注入直接控制GT收发器的发送端极性取反、信号电平异常模拟链路噪声场景第三层是物理层错误注入通过调整均衡参数和去加重参数人为让链路处于亚健康状态再观察接收端的纠错能力。三层错误注入组合起来才能形成一个完整的“故障-检测-恢复”测试闭环。上行命令通道也同样需要注意。Aurora协议本身支持带内控制消息用户K字符但在eFPGA评估场景里我更推荐单独开辟一条低速控制总线来管理测试流程。原因是控制命令和数据流混在一起一旦数据通路本身有问题控制命令也会受影响排查问题时就分不清是控制面还是数据面的故障。分离设计后控制面始终保持可靠故障域更清晰。3.4 时钟与复位高速链路最容易翻车的地方高速串行链路最经典的翻车点不是逻辑写错而是时钟和复位没处理好。这个部分我单独拿出来强调因为它值得单独讲。Aurora核需要三组时钟GT参考时钟、用户逻辑时钟、AXI4-Stream接口时钟。GT参考时钟是物理层时钟必须干净、低抖动用户逻辑时钟和接口时钟通常可以共用同一频率但相位关系不做硬性要求。实际出现最多的问题是参考时钟树上叠加了太多其他功能导致时钟抖动超限。做评估板设计时建议参考时钟单独走一条专用走线尽可能靠近GT参考时钟引脚。复位的难点在顺序。上电后必须先等GT收发器的PLL锁定再释放Aurora核的复位信号最后等用户逻辑复位释放。如果GT还没完成初始化就释放Aurora核复位链路训练序列的发送时机就会错乱表现为channel_up长时间拉不高。处理复位顺序最可靠的方法是使用一套小型状态机按“等待系统时钟稳定→等待GT PLL锁定→释放Aurora复位→等待channel_up→释放用户逻辑复位”的顺序推进每一步都有超时保护避免死等。复位里的另一个坑是异步复位释放。Aurora核的部分复位信号是异步置位、同步释放的如果在用户逻辑里简单地把所有复位信号打包成一个全局复位网络很容易触发同步释放时序违例。我在设计里专门为Aurora核复位信号加了一级两级同步器确保释放时刻对齐到用户时钟域。4. 软件端评估流程与实测分析4.1 从链路训练到稳定通信的完整流程拿到一块集成ArcticPro eFPGA的评估板我一般按下面的步骤跑完整测试流程顺序基本固定因为每步都依赖上一步的稳定状态。第一步是上电并加载eFPGA配置。这一步要确保eFPGA的配置比特流加载完成后再开始链路初始化否则GT收发器可能处在上电复位状态后续操作全部无效。配置加载完通过读取eFPGA的配置状态寄存器确认加载成功。第二步是初始化Aurora核。软件通过总线接口写入Aurora核的控制寄存器触发核内初始化状态机。初始化过程中Aurora核会发送训练序列、进行通道绑定和通道对齐。核心观察点是channel_up信号它拉高说明链路已经建立起来。整个初始化过程通常在几十微秒到几毫秒之间如果超过1毫秒还没拉高说明有问题需要排查。第三步是发送测试数据。链路建立后先发送一小段递增序列做数据通路自检确认收发路径无误后再切换到PRBS31做长时误码测试。每跑完一个测试周期软件读取错误计数和字节计数计算当前误码率。第四步是动态变更测试条件。通过寄存器调整Aurora核的线速率、通道数、均衡参数重复第二步和第三步遍历测试矩阵。整个过程可以通过脚本自动完成建议统一记录到测试日志方便后续对比分析。第五步是数据汇总。上位机脚本把所有测试点数据汇总成图表形成最终评估报告包括误码率曲线、吞吐量趋势、资源配置和功耗数据。4.2 链路误码率测试不测误码就等于白干误码率测试是整个评估里的核心环节但很多团队在这个环节上做得不够严谨最常见的问题就是测试时间太短。Aurora链路在良好状态下误码率可能低于10的负15次方意味着跑1小时都不一定出一个错如果只测几分钟就下结论“零误码”统计置信度非常低。我建议的测试时长至少是连续24小时跑PRBS31中间每小时记录一次误码数和字节数。如果24小时全程零误码才可以认为链路BER低于10的负16次方量级如果出现零星误码就要分析误码的分布规律——是完全随机分布还是集中在特定时间段这可能反映了电源纹波或温度变化的影响。均衡参数的调整也是误码率测试的关键变量。Aurora链路在高速率下接收端必须靠CTLE和DFE来补偿信道损耗。我一般用多组参数扫描的方式寻找误码率最低的工作点。以下是一组典型的测试结果表线速率通道数均衡参数测试时长误码数估算BER6.6Gbps1默认24h01e-1510.3125Gbps1默认24h01e-1510.3125Gbps4均衡增强24h01e-1516.3Gbps1默认12h3~4.8e-1516.3Gbps1均衡增强24h01e-15从这张表能明显看出来16.3Gbps下均衡参数的调优影响很大。这也是为什么评估软件必须支持运行时调整均衡参数的原因否则单测一个默认配置就得出结论很容易漏掉真正能工作的最优配置。4.3 资源与功耗评估结果怎么读Aurora协议在eFPGA上的资源消耗是很多做SoC选型的人最先关心的数字。这部分我来拆解一下怎么解读综合工具生成的资源报告。以四通道Aurora 64B/66B核为例典型资源消耗大概在LUT 8万到12万之间FF 6万到10万之间BRAM几十块不等。这些数字看着吓人但要注意Aurora核占用的资源大头是数据通路的FIFO和通道对齐逻辑。如果评估目标只是验证“eFPGA能不能放得下一个Aurora核”那核心答案就是看LUT和BRAM的占用比例是否在目标上限以内。功耗部分需要分开看。eFPGA的静态功耗由工艺和逻辑规模决定动态功耗则取决于实际翻转率。Aurora核的GT收发器是功耗大户单通道在10Gbps下功耗通常在100毫瓦到300毫瓦之间四通道加起来就要注意热设计余量。做功耗评估时不能只看平均值要特别关注链路空闲和满负载两个极端工况下的功耗差异。和传统外置FPGA相比eFPGA在同样跑到10Gbps链路时由于省去了片外SerDes和PCB走线的驱动功耗整体功耗通常能低30%左右。这正是集成eFPGA的核心价值之一不是为了性能翻倍而是在同样的功耗预算里装进更多可编程能力。5. 常见问题与排查实录5.1 链路始终无法建立连接这是整个评估过程中出现频率最高的问题。Aurora核的channel_up一直拉不高数据根本发不出去。根据我踩过的坑大概率是下面几种原因导致的排查顺序也有讲究。第一优先检查参考时钟。GT参考时钟的频率必须和Aurora核配置里填的一模一样差一点都不行。比如配置用156.25MHz参考时钟实际板子上却焊了125MHz晶振GT的PLL失锁链路自然起不来。用示波器测参考时钟的输出频率和抖动这是第一步。第二检查GT收发器的复位状态。很多时候问题不是配置错了而是GT的复位信号一直被按死因为复位控制器里“等待PLL锁定”那一步卡住了。要看GT的rxresetdone和txresetdone信号是否拉高没拉高就说明GT还没从复位状态恢复出来。第三检查通道极性。GT收发器的TX和RX极性如果定义反了链路训练序列根本没法被对端正确识别。这个错误很隐蔽因为逻辑上所有信号名看起来都是对的但物理连接上正负极接反了。排查方法是抓取GT对端发来的训练序列看解调出来的数据是否符合Aurora协议定义。第四检查端口约束。GT收发器引脚在布局布线时如果被工具随意分配导致实际使用的引脚和Aurora核期望的引脚不一致也会出现链路建不起来的问题。这种问题通常在时序报告中表现为GT相关路径的约束被错误裁剪。5.2 误码率居高不下的排查方向链路能建立但误码率一直下不去这种情况比完全不通更让人头疼因为问题往往藏在物理层信号质量的细节里。最常见的误码来源是电源噪声。高速串行链路的电源余量本来就小如果为GT收发器供电的电源轨纹波较大误码率会明显上升。排查方法是用示波器AC耦合测量GT电源轨的纹波看是否在规格范围内。如果纹波超标重点检查电源滤波电容的布局和ESR参数。第二个方向是信号完整性问题。PCB走线的阻抗不连续、过孔残桩过长、连接器接触不良都会造成发射端和接收端的信号质量下降。如果误码率只在特定速率下出现而低速时完全正常基本可以断定是高频分量损耗太严重。这时可以通过调整Aurora核的发射端去加重和接收端均衡参数来补偿。第三个方向是参考时钟的相噪。GT参考时钟对相噪要求极高如果参考时钟源用了普通的锁相环而不是低抖动晶振即使频率准确误码率也很难看。对高速评估板来说专用的低抖动时钟芯片不是可选配置而是必需品。第四个方向是地弹效应。在长时间跑高速测试时如果整板功耗波动剧烈地电位的瞬时跳动会让GT收发器的共模电压发生偏移引起突发误码。这种问题通常表现为误码在时间上成簇分布而均匀随机分布的误码很少。5.3 eFPGA加载与Aurora核初始化的竞态问题这个问题在做eFPGA评估时特别典型传统外置FPGA因为没有“配置加载嵌入到主系统启动流程”这一步反而不会触发。eFPGA的配置比特流是在SoC上电后由内部配置控制器加载的如果配置加载还在进行中Aurora核的复位就被释放了可能导致GT收发器在无效配置下启动。我遇到过一次很诡异的故障同一份比特流手动加载后链路运行正常但系统自动启动后链路偶尔起不来。后来定位到原因是自动启动时配置加载完成信号和Aurora核复位释放信号之间存在竞态。解决方法是把配置加载完成信号作为Aurora核复位的使能条件之一配置没有完成时无论软件怎么操作Aurora核都保持复位状态。另外还要注意eFPGA的配置加载时间和Aurora核的寄存器访问冲突。如果配置尚未完成软件通过总线接口写Aurora控制寄存器是无效的但软件不一定能感知到。这里我建议在软件里增加一步读取Aurora核的版本寄存器如果读不到预期的值就说明配置没加载完直接中止后续流程直到能正常读取版本号为止。6. 实操心得与扩展建议6.1 这套评估软件还能怎么复用每次做完一套评估环境就丢掉实在太浪费了。Aurora这套评估软件的架构稍微改造一下就能复用到其他很多场景。最直接的复用是换协议。如果把Aurora核换成10G以太网的MAC/PCS核测试数据通路和错误注入机制基本可以原样保留只需要改配置脚本和寄存器映射。因为Aurora 64B/66B和10G以太网的物理层编码结构天然相似数据发生器和错误检测器都对得上。另一个复用的方向是评估其他eFPGA厂商的IP。只要目标eFPGA的三方工具链支持类似的高速收发器原语寄存器读写接口通过总线封装统一一下整个评估流程就可以平移。这让多厂商eFPGA选型对比变得非常高效同样的测试用例、同样的判定标准跑在同一个测试环境中对比结果的说服力远高于各厂商自己报的数据。还可以把这个环境扩展成半实物仿真平台。把eFPGA里的Aurora核替换成通信基带算法的前端模块用同样的数据注入和统计机制来验证算法在高吞吐场景下的稳定性。本质上看这套评估软件是一个“高速可编程通路的性能显微镜”换镜头就能看不同的对象。6.2 复盘后的几条忠告根据我个人操作经验有几条建议特别想分享出来。第一条不要把仿真验证和上板验证割裂开。很多团队习惯先把仿真跑到覆盖率百分百再上板但实际上板测试能发现仿真完全覆盖不到的问题尤其是模拟信号质量、电源、温漂这类因素。我的习惯是仿真通过第一轮基本功能后就直接上板跑关键路径越早暴露物理层问题后面越从容。第二条测试环境要尽早自动化。手动改配置、手动记录数据、手动对比结果这在初期能跑通但一旦测试矩阵扩展到几组线速率乘几组通道数乘几组均衡参数手工操作基本不可能完成。我在第二版评估软件里就把所有配置项做成了文本脚本板子一启动就自动按顺序执行每天跑完自动生成报告效率提升非常明显。第三条不要相信单次测试的结论务必做多次重复实验并记录环境条件。Aurora链路对温度、电压都很敏感早上跑和中午跑的结果可能就有差异。我在最终评估报告里每一条结论都注明了温度范围和工作电压确保数据的可追溯性。没有环境上下文的测试数据对产品决策几乎没有参考价值。做评估软件这件事表面上是在测一颗IP的性能实际上是在帮整个项目组建立一套可量化的决策依据。Aurora这套协议恰好是个极好的试金石把ArcticPro eFPGA的通信能力、资源效率、功耗水平和可靠性边界都暴露得清清楚楚。希望这套思路也能帮你省下一些摸爬滚打的时间让你在eFPGA选型和验证的路上少踩几个我已经踩过的坑。