vivado Aurora 8B/10B IP核(1)

Aurora 8B/10B IP 支持 Kintex® -7, Virtex ® -7 FPGA GTP 和 GTH 收发器,Artix ® -7 FPGA GTP 收发器, Zynq® -7000 GTP and GTP 收发器。Aurora 8B/10B IP core 可以工作于单工或者全双工模式。IP CODE的使用也非常简单,支持 AMBA®总线的 AXI4-Stream 协议。
Aurora 8B/10B IP core 具备很多优点,当一条通道联通的时候,它会自动初始化这条通路,并
且以帧或者数据流的方式,发送一些测试数据。而且在正常通信的过程中,可以发送任意大小的帧,以及数据可以再任何时候中断。传输过程中有效数据字节之间的间隙会自动填充空闲,以保持锁定并防止过多的电磁干扰。流量控制可用于降低传入数据的速率或通过通道发送简短的高优先级消。Stream 流传输是单一的,无限的帧。 在没有数据的情下,传送空闲以保持链接活着。 Aurora 8B/10B 内核使用 8B/10B 编码规则检测单位和大多数多位错误。 过多的位错误,断开连接或设备故障导致内核复位并尝试重新初始化新通道。
Aurora 8B/10B IP 的用途:
1)、芯片到芯片的链路:
替换高速串行连接的芯片之间的并联连接可以显着减少 PCB 上所需的迹线和层数。 核心提供
了使用 GTP,GTX 和 GTH 收发器所需的逻辑,FPGA 资源成本最低。
2)、板对板和背板连接:
IP CORE 使用标准的 8B / 10B 编码,使其与现有的电缆和背板硬件标准兼容。 Aurora 8B / 10B
内核可以在线速率和通道宽度上进行缩放,以便在新的高性能系统中使用便宜的传统硬件。
3) 、单向连接(单向):
Aurora 协议提供了替代方法执行单向通道初始化,使 GTP,GTX 和 GTH 收发器在没有反向通道
的情况下使用,并降低由于未使用的全双工资源而造成的成本。
Lane Logic(通道逻辑):
每个 GTP,GTX 或 GTH 收发器(以下称为收发器)由通道逻辑模块的实例驱动,其初始化每个
单独的收发器并处理控制字符的编码和解码以及错误检测。
Global Logic(全局逻辑):
全局逻辑模块执行通道初始化的绑定和验证阶段。 在运行期间,模块会生成 Aurora 协议所需
的随机空闲字符,并监视所有通道逻辑模块的错误。
RX User Interface(RX 接收端口):
AXI4-Stream RX 接收端口将数据从通道移动到应用程序,并执行流量控制功能。
TX User Interface(TX 发送端口):AXI4-Stream TX 发送端口将数据从应用程序移动到通道,并执行流量控制 TX 功能。 标准时钟补偿模块嵌入在内核中。 该模块控制时钟补偿(CC)字符的周期性传输。
Latency(延迟):
通过 Aurora 8B/10B 内核的延迟是由通过协议引擎(PE)和收发器的流水线延迟引起的。 随
着 AXI4-Stream 接口宽度的增加,PE 流水线延迟增加。 收发器延迟取决于所选收发器的特性和属性。本节概述了 Aurora 8B/10B 核 心 AXI4-Stream 用 户 端 口 对 于 2-byte-per-lane 和
4-byte-per-lane 设计的 user_clk 周期的预期延迟。 为了说明延迟,Aurora 8B/10B 模块被分为收
发器逻辑和协议引擎(PE)逻辑,其在 FPGA 可编程逻辑中实现。
注意:这些数字不包括由于 Aurora 8B / 10B 通道的每一侧之间的串行连接长度而引起的延迟。
下图说明了默认配置的数据路径的延迟。延迟可以根据设计中使用的收发器和 IP 配置而有所不同。
从s_axi_tx_tvalid到m_axi_rx_tvalid的两字节成帧设计的最小延迟在默认核心配置的功能
仿真中大约为 37 个 user_clk 周期如下图所示
从s_axi_tx_tvalid到m_axi_rx_tvalid的默认四字节帧设计的最小延迟在功能仿真中大约为
41 个 user_clk 周期。 流水线延迟被设计为保持时钟速度。如果没有依赖关系,请检查延迟是否可以通过其他可选功能添加。
Throughput(吞吐量):
Aurora 8B/10B 核心吞吐量取决于收发器的数量和线速度。 单通道设计到 16 通道设计的吞吐
量分别为 0.4Gb/s 到 84.48Gb/s。 通过 Aurora 8B/10B 协议编码和 0.5Gb/s 至 6.6 Gb/s 线路速率范围的 20%开销来计算吞吐量。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/4213.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

字符串函数及其模拟实现

目录 strlen函数介绍模拟实现 strcpy函数介绍模拟实现 strcat函数介绍模拟实现 strcmp函数介绍模拟实现 strncpy函数介绍模拟实现 strncat函数介绍模拟实现 strncmp函数介绍模拟实现 strtokstrstr函数介绍模拟实现 strerrorperror strlen 函数介绍 函数介绍: 字符串…

Leetcode 17. 电话号码的字母组合

给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 示例 1: 输入:digits “23” 输出:[“a…

清华大学 【战略管理的逻辑】全6讲笔记

讨论从20世纪初的企业管理背景入手,讲述了随着经济和技术的进步,企业管理理念和实践所经历的主要变化。 1.战略管理的重要性及其时代演变 在过去的几十年里,企业管理的理念和方法经历了从重视生产效率到注重市场营销,再到强调战略…

React真的好难用

我发现React就像个宗教一样,网络上总有一群信徒。信徒:React天下第一,谁也不能说他不好。 网络上大佬对React的评价一般有几类: React跟Vue比就是手动档和自动档的区别,高手都开手动档。—— 就一个破打工的&#xf…

Qt——代码崩溃 free() invalid pointer

最近在开发中&#xff0c;使用多个QSharedPointer创建智能指针指向c11 写的单例时&#xff0c;出现了程序崩溃&#xff0c;如标题的错误提示&#xff0c;故此记录&#xff1a; 错误代码&#xff1a; QSharedPointer <Singleton>m_test(Singleton.getInstance()); QShare…

cJSON的使用

文章目录 一、CJSON初识二、CJSON解析器基础三、CJSON解析数据JSON解析基础CJSON解析数组数据CJSON解析嵌套数据 五、创建JSON数据 一、CJSON初识 JSON (JavaScript Object Notation)是一种轻量级的数据交换格式&#xff0c;常用于在网络之间传输数据。它是一种文本格式&#…

笔记:.NET的框架梳理及相关概念了解(“.NET Core“ “.NET“ “.NET Framework“)

一、.NET设计 架构&#xff1a;C/C程序是直接将源码编译成机器码&#xff08;CPU可以识别和运行的指令&#xff09;&#xff0c;对于不同CPU&#xff0c;其指令集不同&#xff0c;机器码也就不同&#xff0c;故&#xff1a;C/C程序编译时&#xff0c;需选择具体的CPU架构&…

【系统架构师】-选择题(五)

1、某公司拟开发一个轿车巡航定速系统&#xff0c;系统需要持续测量车辆当前的实时速度&#xff0c;并根据设定的期望速度自动控制轿车的油门和刹车。针对上述需求&#xff0c;采用( 过程控制)架构风格最为合适。 某企业内部现有的主要业务功能已封装成为Web服务。为了拓展业务…

河南新办灌溉排涝乙级资质预算分析

河南新办灌溉排涝乙级资质的预算分析是一个涉及多方面因素的综合考量。以下是对该预算的详细分析&#xff1a; 首先&#xff0c;人员费用是预算中的重要组成部分。这包括聘请符合资质要求的技术人员、工程师和其他相关人员的薪酬、社保等费用。这些费用会根据所需人员的数量、资…

JavaScript云LIS系统源码 前端框架JQuery+EasyUI+后端框架MVC+SQLSuga大型医院云LIS检验系统源码 可直接上项目

JavaScript云LIS系统源码 前端框架JQueryEasyUI后端框架MVCSQLSuga大型医院云LIS检验系统源码 可直接上项目 云LIS系统概述&#xff1a; 云LIS是为区域医疗提供临床实验室信息服务的计算机应用程序&#xff0c;可协助区域内所有临床实验室相互协调并完成日常检验工作&#xff…

【SHADER】Shader实例学习1:UI noise halo

Shader实例学习1&#xff1a;UI noise halo 简介源码注释关键步骤总结 简介 又换方向做图形相关的工作了&#xff0c;门槛确实有一点&#xff0c;数学、图形什么的都要学&#xff0c;算轨迹用到力学什么的也是基本操作。大力出奇迹&#xff0c;跟着shadertoy里的众多大神学起来…

zynq dcache一致性问题

使能dcahce后&#xff0c;写内存不正常。 http://static.stmcu.com.cn/upload/pdf_html/93bd41d6e1e3dfc64cecbea29ccdef41.html FPGA - ZYNQ Cache一致性问题 FPGA - ZYNQ Cache一致性问题-CSDN博客

Unity类银河恶魔城学习记录15-5,6 p157 Audio time limiter p158 Area sound

Alex教程每一P的教程原代码加上我自己的理解初步理解写的注释&#xff0c;可供学习Alex教程的人参考 此代码仅为较上一P有所改变的代码 【Unity教程】从0编程制作类银河恶魔城游戏_哔哩哔哩_bilibili​​ AreaSound.cs using System.Collections; using System.Collections.G…

视频输入c++ 调用 libtorch推理

1、支持GPU情况 libtorch 支持GPU情况比较奇怪&#xff0c;目前2.3 版本需要在链接器里面加上以下命令&#xff0c;否则不会支持gpu -INCLUDE:?ignore_this_library_placeholderYAHXZ 2 探测是否支持 加一个函数看你是否支持torch&#xff0c;不然不清楚&#xff0c;看到…

Hive函数详解

Hive 是一个建立在 Hadoop 上的数据仓库基础架构&#xff0c;它提供了类似于 SQL 的查询语言&#xff0c;称为 HiveQL&#xff0c;用于对存储在 Hadoop 分布式文件系统中的数据进行查询和分析。 1.函数简介 Hive会将常用的逻辑封装成函数给用户进行使用&#xff0c;类似于Jav…

Web前端开发 小实训(一) 成绩分类统计

用于学生web前端开发课程实训练习&#xff0c;掌握基本语法和数据类型 实训目的 使用分支语句&#xff0c;完成分数统计与等级对比,通过输入框输入分数&#xff0c;可以根据分数多少划分等级。 参考思路&#xff1a; 分析题目&#xff1a;根据输入分数进行等级划分。 操作过…

springboot如何使用RedisTemplate

第一步&#xff1a;创建一个spring boot项目 第二步&#xff1a;pom导入redis相关依赖 <!--reids依赖--> <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId> </depen…

Go语言中的goroutine调度是如何实现的?

文章目录 一、M:N调度模型二、GMP模型三、调度过程四、调度优化五、示例代码 在Go语言中&#xff0c;goroutine是一种轻量级的线程&#xff0c;它使得并发编程变得更加简单和高效。而goroutine的调度则是Go运行时&#xff08;runtime&#xff09;系统负责的一个核心任务&#x…

std::remove_if

template <class ForwardIterator, class UnaryPredicate>ForwardIterator remove_if (ForwardIterator first, ForwardIterator last,UnaryPredicate pred);std::remove_if函数删除容器中满足pred的元素&#xff0c;返回最后一个没被移除的元素后面一个迭代器&#xff0…

阿米巴经营之深入解读

目录 什么是阿米巴&#xff1f; 一、阿米巴经营的来历 二、阿米巴经营的三大好处和运作方式 三、阿米巴经营常见的两大问题与解决方案 稻盛和夫被誉为日本的经营之神。上个世纪&#xff0c;他创办经营的京瓷公司、KDDI公司等&#xff0c;先后成为了世界500强企业。2010年&…