【总线】AXI4第二课时:深入AXI4总线的基础事务

        

        大家好,欢迎来到今天的总线学习时间!如果你对电子设计、特别是FPGA和SoC设计感兴趣,那你绝对不能错过我们今天的主角——AXI4总线。作为ARM公司AMBA总线家族中的佼佼者,AXI4以其高性能和高度可扩展性,成为了现代电子系统中不可或缺的通信桥梁。

        上一课时我们了解到AXI4有五大独立通道,对他们有了初步的认识,这一课时我们再深入的了解下AXI的基础事务,进一步加深认识。

        这里会有一系列的课程,和大家分享AMBA总线家族,欢迎大家一起学习,收藏点赞。

 系列文章

【总线】AMBA总线架构的发展历程-CSDN博客

【总线】设计fpga系统时,为什么要使用总线?-CSDN博客

【总线】AXI总线:FPGA设计中的通信骨干-CSDN博客

【总线】AMBA总线家族的明星成员:AXI协议简介-CSDN博客

【总线】AXI4第一课时:揭秘AXI4总线的五大独立通道-CSDN博客

【总线】AXI4第二课时:深入AXI4总线的基础事务-CSDN博客

【总线】AXI4第三课时:握手机制-CSDN博客 


  •     回顾5个通道,每一个AXI传输通道都是单方向的
  1. 读地址 read address
  2. 读数据 read data
  3. 写地址 write address
  4. 写数据 write data
  5. 写回复 write response
  •        每个事务都有地址和控制信息在地址通道( address channel)中,用来描述被传输数据的性质。
  •         读事务的结构图如下。

  •         写事务的结构图如下

 

  •          这 5 条独立的通道都包含一个信息信号和一个双路的 VALD、 READY 握手机制

  •         信息源通过 VALID 信号来指示通道中的数据和控制信息什么时候有效。目地源用READY 信号来表示何时能够接收数据。 读数据和写数据通道都包括一个LAST 信号,用来指明一个事物传输的最后一个数据。

  •          读和写事务都有他们自己的地址通道,这地址通道携带着传输事务所必须的地址和信息。
  1. 独立的读写地址通道:每个读写事务都拥有自己的地址通道。这意味着读事务和写事务分别通过它们自己的地址通道进行通信。

  2. 地址和控制信息:每个地址通道都携带了执行事务所需的全部地址和控制信息。这包括事务的目标地址、事务的类型、大小等。

  3. 支持的机制

    • 可变长度突发:突发(Burst)是指连续的数据传输。在AXI协议中,突发的长度可以变化,从1到16个数据传输(transfers)。
    • 突发传输大小:每个突发传输的大小可以是8到1024位(bits),这提供了灵活的数据传输粒度。
    • 包装(Wrapping)、增量(Incrementing)和非增量(Non-incrementing)突发
      • 包装突发:在达到某个边界时,地址会“包装”回到较低的地址继续传输。
      • 增量突发:地址随着每个传输而递增。
      • 非增量突发:地址在突发传输中保持不变。
    • 原子操作:原子操作确保在执行期间不会被其他事务中断,使用独占(Exclusive)或锁定(Locked)访问来实现。
    • 系统级缓存和缓冲控制:AXI协议支持缓存和缓冲机制,以提高系统的性能和效率。这允许对数据进行缓存、合并写操作等。

总结来说,这部分强调了AXI协议在处理读写事务时,通过地址通道提供了一系列的高级特性,以支持复杂的系统设计和优化数据传输效率。

  •         读数据通道传送着从设备到主机的读数据和读响应信息。读响应信息指明读事务的完成状态。

  •         写数据通路传送着主机向设备的写数据。每八个数据都会有一个 byte lane ,用来指明数据总线上面的哪些 byte 有效。

  • 写响应通道提供了设备响应写事务的一种方式。
  1. 写响应通道的作用:在AXI协议中,写响应通道是用于从机(Slave)向主机(Master)发送写事务响应的通信路径。这意味着,当主机向从机发起写事务请求后,从机通过写响应通道告知主机该事务是否成功完成。

  2. 完成信号的使用:所有写事务都使用完成信号(Completion Signal)来指示事务的结束。完成信号是写事务中一个重要的部分,它确保了主机知道何时写操作已经完成。

  3. 完成信号的触发时机:完成信号是针对每个突发(Burst)触发一次,而不是针对突发内的每个单独数据传输。这里的“突发”是指一系列连续的写操作,它们共享相同的地址和控制信息。

    • 例如,如果一个突发包含4个数据传输,那么完成信号将在最后一个数据传输完成后触发一次,而不是在每个数据传输后分别触发。
  4. 事务完成的确认:完成信号的存在确保了主机可以准确地知道何时写事务已经完全处理完毕,从而可以继续执行后续的操作或者发起新的事务。

总结来说,这部分强调了写响应通道在AXI协议中用于指示写事务完成的重要性,以及完成信号是按突发而不是按单个数据传输来触发的机制。这有助于提高系统的效率,因为它减少了需要发送的信号数量,并且允许主机更有效地管理数据传输和事务处理。

  •         主机和设备的接口和互联图如下。

在AMBA AXI协议中接口定义如何支持多种不同的互连(interconnect)实现方式,以及系统设计中常见的几种互连方法。以下逐点解释:

  1. 接口定义的灵活性:AXI协议的接口定义允许实现多种不同的互连架构。这意味着设计者可以根据系统的需求和约束,选择或设计合适的互连方案。

  2. 互连的等效设备:在AXI协议中,互连在功能上等同于一个具有对称的主(master)和从(slave)端口的设备。这样,实际的主设备和从设备可以连接到这个互连设备上,就像它们直接连接到另一个AXI设备一样。

  3. 常见的互连方法

    • 共享地址和数据总线:所有设备共享相同的地址和数据总线。这是一种简单的互连方式,但可能在高负载下成为性能瓶颈。
    • 共享地址总线和多个数据总线:系统中有一条共享的地址总线,但是有多条数据总线。这样可以在保持地址总线简单性的同时,提高数据传输的带宽。
    • 多层互连,具有多个地址和数据总线:这是一种更复杂的互连方式,可能包含多个层次的地址和数据总线,以支持大规模或高性能的系统设计。
  4. 地址和数据通道带宽的需求差异:在大多数系统中,地址通道的带宽需求远小于数据通道。这是因为地址信息通常比数据量小得多,而且通常不需要那么高的传输速率。

  5. 系统性能与互连复杂性的平衡:通过使用共享地址总线和多个数据总线的方案,系统可以在保持较低互连复杂性的同时,实现较高的系统性能。这种方法允许并行数据传输,提高了整体的数据传输效率。

总结来说,这部分内容强调了AXI协议提供的灵活性,允许设计者根据系统的具体需求选择最合适的互连策略,并通过合理的互连设计实现高性能和适中的系统复杂性。

  • 寄存器切片的使用

  1. 单向传输:每个AXI通道仅支持一个方向的信息传输,没有规定各个通道之间必须有固定的关系。

  2. 灵活性:由于通道之间没有固定的顺序要求,可以在任何通道中插入寄存器切片,而不会影响其他通道的操作。

  3. 寄存器切片的作用:寄存器切片可以被看作是一种缓冲机制,它在数据传输路径中增加了一个或多个寄存器阶段。这样做的目的是为了在设计中引入可配置的延迟,以适应不同操作频率的组件。

  4. 延迟与频率的权衡:插入寄存器切片会增加数据传输的延迟(因为数据需要通过额外的寄存器阶段),但这样做可以提高系统的最高操作频率。这是因为额外的寄存器可以用于时钟域交叉(Clock Domain Crossing, CDC),减少亚稳态的风险,并允许不同频率的组件协同工作。

  5. 互连中的寄存器切片使用:在互连(interconnect)的几乎任何位置都可以使用寄存器切片。这为设计者提供了灵活性,可以根据系统的需求在不同的位置插入寄存器切片。

  6. 性能优化:在处理器和高性能内存之间可能使用直接、快速的连接,以最小化延迟。而在通往性能要求不高的外围设备的较长路径上,可以使用简单的寄存器切片来隔离,这样可以降低对高速时钟的需求,同时减少功耗。

总结来说,寄存器切片是一种设计工具,用于在系统设计中平衡延迟和操作频率,以及适应不同性能要求的组件。通过在AXI通道中适当地使用寄存器切片,设计者可以实现更高效的系统性能和更低的功耗。

  •          传输地址信息和数据都是在 VALID 和 READY 同时为高时有效。

  •         突发式读的时序图如下

        当地址出现在地址总线后, 传输的数据将出现在读数据通道上。 设备保持 VALID为低直到读数据有效。为了表明一次突发式读写的完成,设备用 RLAST 信号来表示最后一个被传输的数据。

  •  重叠突发式读时序图如下

设备会在第一次突发式读完成后处理第二次突发式读数据。也就意味着,主机一开始传送了两个地址给设备。 设备在完全处理完第一个地址的数据之后才开始处理第二个地址的数据。
 

  • 突发式写时序图如下

这一过程的开始时,主机发送地址和控制信息到写地址通道中,然后主机发送每一个写数据到写数据通道中。当主机发送最后一个数据时, WLAST 信号就变为高。当设备接收完所有数据之后他将一个写响应发送回主机来表明写事务完成。

  • AXI 协议支持乱序传输。他给每一个通过接口的事务一个 IDtag。协议要求相同 ID tag 的事务必须有序完成,而不同 ID tag 可以乱序完成。

在AXI协议中,"无序传输"(out-of-order transactions)是一个重要的特性,它允许系统在处理多个事务时提高效率和吞吐量。这段描述提到的“复杂从机(Complex slaves)可以无序返回读取数据”可以理解如下:

  1. 复杂从机的能力:在AXI协议中,从机(Slave)可以是简单的或者复杂的。复杂从机拥有更高级的功能,比如内部缓冲(buffering)或者其他能够改善性能的特性。

  2. 无序返回数据:复杂从机在处理多个读取事务时,可能会根据其内部逻辑或优化,选择在不同顺序返回数据项。这意味着,即使某些数据项属于较早发起的读取事务,它们也可能在属于较晚事务的数据项之后被返回。

  3. 内部缓冲的影响:复杂从机可能拥有内部缓冲区,能够暂存一定量的数据。如果一个较晚发起的读取请求所需的数据已经存在于缓冲区中,那么复杂从机可以更快地提供这些数据,即使这意味着跳过了一些较早但尚未处理的请求。

  4. 对系统性能的影响:这种无序返回数据的能力可以减少等待时间和提高系统的整体性能。例如,如果系统能够快速响应对已经缓存数据的请求,那么它就可以更有效地利用资源,减少主设备(Master)的空闲时间。

  5. 事务ID的作用:尽管从机可以无序返回数据,但是每个事务都会分配一个唯一的ID,以确保每个事务的完整性和可追踪性。这样,即使数据返回是无序的,主设备也能够识别和处理每个事务的正确数据。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

数据结构之“算法的时间复杂度和空间复杂度”

🌹个人主页🌹:喜欢草莓熊的bear 🌹专栏🌹:数据结构 目录 前言 一、算法效率 1.1算法的复杂度概念 1.2复杂度的重要性 二、时间复杂度 2.1时间复杂度的概念 2.2大O的渐进表示法 2.3常见的时间复杂度…

Spring Boot -- 图书管理系统(登录、展示+翻页、添加/修改图书)

文章目录 一、应用分层二、数据库的设计三、登录功能四、展示列表(使用虚构的数据)五、翻页 展示功能六、添加图书七、修改图书 一、应用分层 为什么我们需要应用分层:当代码量很多时,将其全部放在一起查找起来就会很麻烦&#…

【SQL每日一练】HackerRan-Basic Join-Challenges练习

文章目录 题目题析题解1.sqlserver 题目 编写一个查询来打印 hacker _ id、 name 和每个学生创建的挑战的总数。按照挑战的总数按降序对结果进行排序。如果不止一个学生创建了相同数量的挑战,那么按 hacker _ id 对结果进行排序。如果不止一个学生创建了相同数量的…

Node.js单点登录SSO详解:Session、JWT、CORS让登录更简单

文章目录 一、SSO介绍1、使用SSO的好处 二、中间件介绍1、Express安装导入使用 2、cors安装导入配置 3、express-session安装导入配置使用 4、jsonwebtoken安装导入使用 5、jwt和session对比 三、SSO实现方案1、安装依赖2、结构3、实现原理 三、示例代码1、nodejs端 server/ind…

求最小生成树的新算法

不管 prim 算法还是 kruskal 算法都基于 “当前可见最短边” 作贪心策略,但这并不适合分布式并行操作,比方说所有节点一起构建最小生成树,这些算法都显得同步开销过大,甚至导出错误的结果。 最近研究并构建最大流多路径传输协议的…

【配置】Notion自动化备份到github方案

步骤 打开notion网页,获取到需要的值 token_v2 找到请求getSpaces的 Cookie 值 token_v2 space_id 找到请求getSpaces的响应结果space,如下图: file_token 找个页面点击导出,之后拿到这个配置项 注意:配置项会过期&#xff0c…

内容安全复习 9 - 身份认证系统攻击与防御

文章目录 基于生物特征的身份认证系统概述基于生物特征的身份认证 人脸活体检测检测方法未解决问题 基于生物特征的身份认证系统概述 作用:判别用户的身份、保障信息系统安全。 是识别操作者身份的过程,要保证其**物理身份(现实&#xff0…

『 Linux 』 进程间通信概述

文章目录 什么是进程间通信为什么要有进程间通信如何进行进程间通信 什么是进程间通信 进程间通信(IPC)指的是在操作系统重,允许两个或者多个进程之间传递信息或者数据的机制; 进程是操作系统重独立运行的实体,即进程间具有独立性,存在自己的地址空间; 因此进程间默认无法直接访…

mysql8.0找不到my.ini

报错问题解释: MySQL 8.0 在Windows系统中通常不需要 my.ini 文件,因为安装程序会在 %PROGRAMDATA%\MySQL\MySQL Server 8.0\ (通常是 C:\ProgramData\MySQL\MySQL Server 8.0\)创建默认的配置文件。如果你的系统中找不到 my.ini…

oracle 数据库导入dmp文件

荆轲刺秦王 从线上正式环境导出的 dmp 文件,导入到本地 oracle 数据库。 1. 创建用户: CREATE USER hf_chip IDENTIFIED BY hf_chip; 2. 授予 CONNECT 和 RESOURCE 基本权限给新用户。 GRANT CONNECT, RESOURCE TO hf_chip; 3. 创建表空间 CREATE TABLESPACE…

qt界面开发-01我的第一个qt程序

Qt 是一个跨平台的 C开发库。主要用来开发图形用户界面(Graphical User Interface,简 称 GUI)程序。 Qt 虽然经常被当做一个 GUI 库,用来开发图形界面应用程序,但这并不是 Qt 的全部; Qt 除了可以绘制漂亮的…

Mac磁盘满了去哪里删 Mac清理了回收站还是空间不足怎么办

在使用Mac电脑的过程中,我们经常会遇到磁盘空间不足的问题。尤其是当我们清理了回收站之后,发现剩余空间依然不足。如何有效解决Mac磁盘空间不足的问题,以及当清理回收站后空间仍然不足时应怎么办呢?本文将为大家介绍Mac磁盘满了去…

搭建预约咨询小程序,高效便捷新选择

一、预约咨询小程序是什么? 预约咨询小程序是一款适用于各种生活场景包括医疗、保洁、宠物护理、法律等方面的预约咨询类小程序。 二、这款小程序有什么亮点优势? 预约咨询小程序适用场景广泛,无论是心理咨询、法律咨询,还是宠物…

INFINI Labs 助力开源与教育:免费许可证计划全面升级

在数字化浪潮席卷全球的今天,INFINI Labs 深刻认识到开源项目和教育机构在技术创新与人才培养中的核心作用。因此,我们郑重推出全新升级的免费许可证计划,旨在全球范围内为开源社区和教育界提供有力支持,共同推动软件生态的繁荣与…

.NET C# 操作Neo4j图数据库

.NET C# 操作Neo4j图数据库 目录 .NET C# 操作Neo4j图数据库环境Code 环境 VisualStudio2022 .NET 6 Neo4j.Driver 5.21 Code // 连接设置 var uri "bolt://localhost:7687"; var user "neo4j"; var password "password"; // 请替换为你的…

React+TS前台项目实战(十三)-- 全局常用响应式加载动画Loading组件封装

文章目录 前言Loading组件1. 功能分析2. 代码详细注释3. 使用方式4. 不同尺寸loading动画效果展示 总结 前言 高阶组件有几大优点,其中一个就是渲染劫持,如懒加载,是否显示该元素loading,这在项目中我们经常用到。毫无疑问&#…

无人机校企合作

有没有想过,无人机和校企合作能碰撞出怎样的火花?🔥今天就来给大家揭秘一下这个神秘组合! 无人机,作为现代科技的代表,已经渗透到我们生活的方方面面。而校企合作,更是推动科技创新、培养人才的…

武汉工程大学24计算机考研数据,有学硕招收调剂,而专硕不招收调剂!

武汉工程大学是一所以工为主,覆盖工、理、管、经、文、法、艺术、医学、教育学等九大学科门类的多科性教学研究型大学,是湖北省重点建设高校、湖北省国内一流学科建设高校,入选卓越工程师教育培养计划、中西部高校基础能力建设工程、“新工科…

从零开始:使用ChatGPT快速创作引人入胜的博客内容

随着科技的飞速发展,人工智能逐渐渗透到我们生活的各个领域。无论是商业、教育还是娱乐,AI技术都在以惊人的速度改变着我们。特别是在内容创作领域,人工智能正发挥着越来越重要的作用。今天,我将和大家分享如何从零开始&#xff0…

微软Azure AI更新视频翻译和语音翻译 API 功能!企业适用TTS文本转语音

很高兴与大家分享 Azure AI 语音翻译产品套件的两个重大更新! 分别是视频翻译和增强的实时语音翻译 API。 视频翻译(批量) 微软宣布推出视频翻译预览版,这是一项突破性的服务,旨在改变企业本地化视频内容的方式。 随着…