<AMBA总线篇> AXI总线协议介绍

目录

01 AXI协议简介

AXI协议特性

AXI协议传输特性

02 AXI协议架构

AXI协议架构

write transaction(写传输)

read tramsaction(读传输)

Interface and interconnect

典型的AXI系统拓扑

03 文章总结


大家好,这里是程序员杰克。一名平平无奇的嵌入式软件工程师。

对于学习Xilinx FPGA(ZYNQ)而言,官方提供的很多IP核都有使用AXI总线,用于ARM核和FPGA的高速数据交互。因此学习AXI总线是必不可少的。而AXI协议是AMBA总线架构的一部分内容。基于此,本系列推文开始总结与分享AMBA总线架构的AXI部分内容。


下面正式进入本章推送的内容。

01 AXI协议简介

AXI(Advanced eXtensible Interface)协议是ARM 公司推出的总线架构AMBA(Advanced Microcontroller Bus Architecture)的一部分内容。其支持high-performance、high-frequency的系统设计,用于Manager和Subordinate组件间的通讯。

AXI协议特性

  • 适用于high-bandwidth和low-latency的设计.

  • 无需复杂的brideges便可实现high-frequency操作.
  • 适用于高延迟的初始化访问接口的memory controllers
  • 向后兼容AHB和APB接口

AXI协议传输特性

  • 单独的地址/控制和数据通道

  • 支持字节不对齐的数据传输(通过Byte strobes[字节选通])

  • 支持brust[突发]传输(仅发送起始地址)

  • 独立的write和read data通道,可提供低花销的DMA接口

  • 支持无序事务执行


02 AXI协议架构

AXI协议架构

AXI协议基于事务的方式定义了5个独立的通道,通道名称以及信号开头缩写如下:

  • 写请求通道Write request(信号开头缩写:AW)

  • 写数据通道Write data(信号开头缩写:W)

  • 写响应通道Write response(信号开头缩写:B)

  • 读响应通道Read request(信号开头缩写:AR)

  • 读数据通道Read data(信号开头缩写:R)

数据在Manager和Subordinate间传输通过以下方式:

  • Manager通过write data通道传输数据给Subordinate(write transaction)
  • Manager通过read data通道从Subordinate读取数据(read transaction)

write transaction(写传输)

写传输事务使用write request、write data、write response通道,写操作如下:

  • Master主机对write request通道写入地址和控制
  • Master主机向write data通道写入数据
  • Slave从机向write response通道写入响应信息.

图片


read tramsaction(读传输)

读传输事务使用read request、read data通道,读操作如下:

  • Master主机对read request通道写入地址和控制.
  • Slave从机向read data通道写入数据,返回给Master.

图片


Interface and interconnect

典型的互连系统由多个Manager和Subordinate组成,通过某种形式内部互连在一起。典型互连图如下图所示:

图片

AXI协议提供了单独的接口定义在以下三种互连之间,其支持实现多种不同的互连,三种互连如下:

  • Manager和interconnect之间
  • Subordinate和interconnect之间
  • Manager和Subordinate之间

典型的AXI系统拓扑

大多数的系统使用如下拓扑结构:

  • 共享request通道和data通道
  • 共享request通道和多个data通道
  • 多层拓扑,有多个request通道和多个data通道

在大多数系统中,request通道的带宽需求明显小于data通道的带宽需求。通过使用“共享request通道和多个data通道”的方式以支持并行数据传输,这样可以在系统性能和互连复杂度之间实现良好的平衡。


03 文章总结

本篇推送主要是对AXI总线的协议、协议架构、内部互连和接口模式、典型的拓扑结构进行了介绍。主要是对AXI总线的协议架构、互连模式有个大体的了解,以便后续对接口信号、具体的互连拓扑打下基础。

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

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

相关文章

Python 接口测试之Excel表格数据操作方法封装

引言 我们在做接口测试,经常会用到excel去管理测试数据,对Excel的操作比较频繁,那么使用python如何操作Excel文件的读与写呢?由于之前讲的都是大的框框,没有讲这么小的模块使用,现在就化整为0的讲解。 读…

基于OpenCV+LPR模型端对端智能车牌识别——深度学习和目标检测算法应用(含Python+Andriod全部工程源码)+CCPD数据集

目录 前言总体设计系统整体结构图系统流程图 运行环境Python 环境OpenCV环境Android环境1. 开发软件和开发包2. JDK设置3. NDK设置 模块实现1. 数据预处理2. 模型训练1)训练级联分类器2)训练无分割车牌字符识别模型 3. APP构建1)导入OpenCV库…

数据结构-第一期——数组(Python)

目录 00、前言: 01、一维数组 一维数组的定义和初始化 一维变长数组 一维正向遍历 一维反向遍历 一维数组的区间操作 竞赛小技巧:不用从a[0]开始,从a[1]开始 蓝桥杯真题练习1 读入一维数组 例题一 例题二​ 例题三 实战训…

在iPhone 15发布之前,iPhone在智能手机出货量上占据主导地位,这对安卓来说是个坏消息

可以说这是一记重拳,但似乎没有一个有价值的竞争者能与苹果今年迄今为止的智能手机出货量相媲美。 事实上,根据Omdia智能手机型号市场跟踪机构收集的数据,苹果的iPhone占据了前四名。位居榜首的是iPhone 14 Pro Max,2023年上半年…

详细教程:Stegsolve的下载,jdk的下载、安装以及环境的配置

最近在学习隐写术,下载stegsolve 以及使用stegsolve倒腾了很久,避免朋友们和我一样倒腾了很久,希望此文可以帮到刚在学习隐写的朋友们(win7下使用stegsolve) 文章目录 一、下载stegsolve链接二、jdk的下载三、jdk的安装四、配置环境变量五、检…

Redis——》Pipeline

推荐链接: 总结——》【Java】 总结——》【Mysql】 总结——》【Redis】 总结——》【Kafka】 总结——》【Spring】 总结——》【SpringBoot】 总结——》【MyBatis、MyBatis-Plus】 总结——》【Linux】 总结——》【MongoD…

60倍!5G+卫星服务仅中国电信有,中国移动的霸主地位或被撼动

近期国内一家手机企业发布了第三代卫星手机,并且由于再次支持5G而获得高度关注,成为近期手机市场的热点,不过笔者查找了相关资料后却发现,可以支持5G卫星通信服务的仅有中国电信,如此中国移动的霸主地位将可能被撼动。…

Java 大厂八股文面试专题-设计模式 工厂方法模式、策略模式、责任链模式

面试专题-设计模式 前言 在平时的开发中,涉及到设计模式的有两块内容,第一个是我们平时使用的框架(比如spring、mybatis等),第二个是我们自己开发业务使用的设计模式。 面试官一般比较关心的是你在开发过程中&#xff…

15-mongodb

一、 MongoDB 简介 1 什么是 MongoDB MongoDB 是一个基于分布式文件存储的数据库。由 C语言编写。在为 WEB 应用提供可扩展的高性能数据存储解决方案。 MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系…

【力扣每日一题】2023.9.1 买钢笔和铅笔的方案数

目录 题目: 示例: 分析: 代码: 题目: 示例: 分析: 题目给我们三个数,一个是我们拥有的钱,一个是钢笔的价格,另一个是铅笔的价格。 问我们一共有几种买笔…

【广州华锐互动】VR全景工厂虚拟导览,虚拟现实技术提升企业数字化信息管理水平

随着工业4.0的到来,VR工厂全景制作成为了越来越多工业企业的选择。传统的工厂管理方式往往存在诸多问题,如信息不对称、安全隐患等。为了解决这些问题,VR工厂全景制作应运而生,它通过结合虚拟现实现实技术和数据采集技术&#xff…

【React学习】—React中的事件绑定(八)

【React学习】—React中的事件绑定&#xff08;八&#xff09; 一、原生JS <body><button id"btn1">按钮1</button><button id"btn2">按钮2</button><button onclick"demo()">按钮3</button><scr…

Java设计模式-状态模式

1.概述 定义&#xff1a; 对有状态的对象&#xff0c;把复杂的“判断逻辑”提取到不同的状态对象中&#xff0c;允许状态对象在其内部状态发生改变时改变其行为。 【例】通过按钮来控制一个电梯的状态&#xff0c;一个电梯有开门状态&#xff0c;关门状态&#xff0c;停止状…

ubuntu tensorrt 安装

官网&#xff0c;非常详细&#xff0c;比大部分博客写的都好&#xff0c;强烈推荐 具体的点进链接

CSS 实现平面圆点绕椭圆动画

前言 &#x1f44f;CSS实现平面圆点绕椭圆动画,速速来Get吧~ &#x1f947;文末分享源代码。记得点赞关注收藏&#xff01; 1.实现效果 2.实现原理 transform-style&#xff1a;CSS 属性 transform-style 设置元素的子元素是位于 3D 空间中还是平面中。如果选择平面&#xf…

Spring补充

一.Spring JDB 配置两个jar包 <!-- spring-jdbc --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>5.2.2.RELEASE</version> </dependency> <!-- 阿里数据…

【前端】Layui动态数据表格拖动排序

目录 一、下载layui-soul-table 二、使用 三、Layui实际使用 1、html代码 2、JS代码 3、PHP后台代码 目的&#xff1a;使用Layui的数据表格&#xff0c;拖动行进行排序。 使用插件&#xff1a;layui-soul-table 和 Layui 1.layui-soul-table文档&#xff1a;https://…

python爬虫-Selenium

一、Selenium简介 Selenium是一个用于Web应用程序测试的工具&#xff0c;Selenium 测试直接运行在浏览器中&#xff0c;就像真正的用户在操作一样。模拟浏览器功能&#xff0c;自动执行网页中的js代码&#xff0c;实现动态加载。 二、环境配置 1、查看本机电脑谷歌浏览器的版…

缺陷或负样本难以收集怎么办?使用生成式模型自动生成训练样本,image-to-image Stable diffusion

文章大纲 样本稀疏与对应的解决方案如何解决工业缺陷检测小样本问题参考1:AIDG(Artificial Intelligent Defect Generator)参考2:灵感来源 : Image-to-Image Diffusion Models参考文献与学习路径参考博文数据集算法缺陷检测库hugging face样本稀疏与对应的解决方案 1.数据层面…

QT创建可移动点类

效果如图所示&#xff1a; 创建新类MovablePoint&#xff0c;继承自QWidget. MovablePoint头文件: #ifndef MOVABLEPOINT_H #define MOVABLEPOINT_H#include <QWidget> #include <QPainter> #include <QPaintEvent> #include <QStyleOption> #includ…