Aurora的工程化问题解决方案

这篇具有很好参考价值的文章主要介绍了Aurora的工程化问题解决方案。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Aurora的工程化问题解决方案

前言

​针对Aurora在实际工程的例化应用问题上,本人经过以往经验进行可行性方案分享,其中有关Aurora的例化过程及不进行详细介绍,可自行查询其他博客学习,望补充指正,谢谢。

(补充:该文里的aurora默认为全双工模式)

简介

​本文主要阐述Aurora协议在多通道例化上的应用问题,以及针对实际硬件的GTH通信质量较差(ibert眼图测试),如何继续利用Aurora的均衡模式补救,已达到正常通信的标准。

案例

场景一

主板卡与多个子板卡的Aurora通信,主板卡内需对Aurora进行多通道例化,其中主板卡与单个子板卡是单通道Aurora通信。


问题描述

设置好单通道Aurora的IP后,生成IP examp design工程,对顶层的端口进行修改后,进行多次例化后综合,place design 报错,如下:
Aurora的工程化问题解决方案

aurora IP 设置

Aurora的工程化问题解决方案

aurora 顶层端口修改

Aurora的工程化问题解决方案

aurora例化

Aurora的工程化问题解决方案

place design 报错

分析解决

根据报错的文件位置找到如下模块:
Aurora的工程化问题解决方案

place design error中指出驱动gt_common必须是相同的时钟或是邻近的时钟。

Aurora的工程化问题解决方案

简单的说多次例化,导致gt_common模块被多次例化,gt_refclk(gt参考时钟)是由IBUFDS_GTE3转换来,这里对应了多个qpll1_refclk端口,这里在实际资源布线中不需要多次定义使用qpll_refclk,因此将gt_commmn模块单独放到顶层,不用和aurora一起例化多次。这里涉及到aurora64b66b用到的gt参考时钟内部采用qpll(详见https://zhuanlan.zhihu.com/p/494758359)锁相, 其中相邻的quad可以共用同一个gt_refclk,这多次例化的aurora channel 分布在相邻的两个quad,可以共用一个gt_refclk时钟资源。

顶层代码修改后如下:
Aurora的工程化问题解决方案Aurora的工程化问题解决方案
Aurora的工程化问题解决方案

该警告可以不用管,不会影响aurora的通信,若需要可以修改所指文件,将下图约束注释重新综合即可。

Aurora的工程化问题解决方案

场景二

板卡之间的ibert测试(5Gbps下)眼图结果如下:
Aurora的工程化问题解决方案

ibert眼图测试

通过调整advanced settings里的红色红框的参数,主要是调整spread spectrum clocking(扩频时钟),具体需要同硬件工程师交流,因为导致眼图信号差的原因有很多,该方案主要是硬件上没有什么优化空间的情况下采用。
Aurora的工程化问题解决方案
ibert IP核

通过设置后眼图正常,如下

Aurora的工程化问题解决方案

设置后ibert眼图测试
问题描述

问题是aurora64b66b里的advanced不支持调整扩频时钟,即便降低线速率也无法稳定通信,因此无法使用aurora64b66b,如何继续使用aurora协议。

分析解决

方法如下:

  1. aurora64b66b替换为aurora8b10b;
  2. aurora8b10b的设置里让gt子模块放到IP的外边,可供设置,此处打钩如下;
  3. 找到aurora8b10b_0_gt的IP,修改里面的advanced设置,其中扩频时钟就可以设置了,只需将ibert眼图测试成功的参数配置进去后更新生成IP即可。
    Aurora的工程化问题解决方案Aurora的工程化问题解决方案
    transceiver IP

本人通过实践验证该方法可以在速率降到2.5Gbps下的aurora8b10b解决,但是由于改动了相关的参数,由于原本信道的通信质量较差,两板卡间的aurora链路可能不能自适应建立,channel_up信号不能保持置1,解决方法是需在两板卡上电后分别对aurora模块中的GT_RESET进行长约1ms以上的高电平复位(本人使用1s复位)。
Aurora的工程化问题解决方案文章来源地址https://www.toymoban.com/news/detail-470260.html

aurora8b10b通信测试,channel_up一直为1,链路正常

到了这里,关于Aurora的工程化问题解决方案的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 前端工程化相关

    知道软件包名,拿到源码或者路径的方法 在浏览器输入以下内容,就可以找到你想要的。。。 unpkg.com/输入包名 ESM特性清单: 自动采取严格模式,忽略“use strict” 每个ESM模块都是单独的私有作用域; ESM是通过CORS去请求外部JS模块的 ESM的script标签会延迟执行脚本,就要有

    2024年01月17日
    浏览(57)
  • 什么是前端工程化?

    前端工程化是一种思想,而不是某种技术。主要目的是为了提高效率和降低成本,也就是说在开发的过程中可以提高开发效率,减少不必要的重复性工作等。 tip 现实生活举例 建房子谁不会呢?请几个工人一上来就开始弄,在建筑的过程中缺了材料就叫个工人去买,发现工期

    2024年02月15日
    浏览(55)
  • 前端工程化-NPM

    NPM代表npmjs.org这个网站,这个站点存储了很多Node.js的第三方功能包。 NPM的全称是Node Package Manager,它是一个Node.js包管理和分发工具,已经成为非官方的发布Node模块(包)的标准。它可以让JavaScript开发者能够更加轻松地共享代码和共用代码片段,并且通过NPM管理需要分享的代

    2024年02月09日
    浏览(51)
  • 前端工程化

    手把手带你走进Babel的编译世界 - 掘金 (juejin.cn) 我们所写的代码转换为机器能识别的一种 树形结构, 本身是由一堆节点(Node)组成,每个节点都表示源代码中的一种结构。 不同结构用类型(Type)来区分,常见的节点类型有Identifier(标识符),Expression(表达式),VariableDeclarat

    2023年04月11日
    浏览(48)
  • 前端工程化-VUE

    高效的开发离不开基础工程的搭建。本章主要介绍如何使用Vue进行实际SPA项目的开发,这里使用的是目前热门的JavaScript应用程序模块打包工具Webpack,进行模块化开发、代码编译和打包。 Vue脚手架指的是Vue-cli,它是一个专门为单页面应用快速搭建繁杂程序的脚手架,它可以轻

    2024年02月08日
    浏览(52)
  • vue项目工程化入门

    mac电脑 使用Vue-cli来完成 通过命令先进入到图形化界面,然后再进行vue工程的创建 图形化界面如下: 到此,vue项目创建结束 我们通过VS Code打开之前创建的vue文件夹,打开之后,呈现如下图所示页面: vue项目的标准目录结构以及目录对应的解释如下图所示: 其中我们平时开发

    2024年02月08日
    浏览(44)
  • 前端工程化知识系列(9)

    👍 点赞,你的认可是我创作的动力! ⭐️ 收藏,你的青睐是我努力的方向! ✏️ 评论,你的意见是我进步的财富! 持续性能监控和自动化性能优化在前端开发中非常重要。以下是一些相关工具和实践: 性能监控工具 :工具如Google Lighthouse、WebPageTest、PageSpeed Insights等可以

    2024年02月07日
    浏览(44)
  • Ajax及前端工程化

    Ajax:异步的js与xml。 作用: 1、通过ajax给服务器发送数据,并获得其响应的数据。 2、可以在不更新整个网页的情况下,与服务器交换数据并更新部分网页的技术。  1、准备数据地址  2、创建XMLHttpRequest对象,用于和服务器交换数据  3、向服务器发送请求  4、获取服务器响

    2024年02月12日
    浏览(46)
  • 前端工程化与webpack

    能够说出什么是前端工程化 能够说出webpack的作用 能够掌握webpack的基本使用 了解常用plugin的基本使用 了解常用loader的基本使用 能够说出Source Map的作用 前端工程化 webpack的基本使用 webpack中的插件 webpack中的loader 打包发布 Source Map 1.1小白眼中的前端开发vs实际的前端开发 实际

    2024年02月13日
    浏览(56)
  • 前端工程化之 webpack <一>

    编写的代码 ==》经过打包工具(glup、rollup、webpack、vite)本身也是js代码,读取文件操作的, 依赖于 node 环境 = = 》 普通的html 、css 、javascript = = 》 打包到静态服务器 = = 》 跑在用户的浏览器 用于对路径和文件进行处理 在 Mac OS、Linux 和 window 上的路径上是不一样的,部署的

    2024年01月24日
    浏览(53)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包