AXI 总线协议学习笔记(1)

news2024/12/23 7:51:12


引言

此文针对 XILINX的用户指南 UG761进行学习简单对AXI作说明。从下篇文章开始,通过阅读ARM官网的AXI协议标准进行系统学习。可以持续关注~
 


AXI是什么?

AXI是ARM AMBA的一部分,ARM AMBA是1996年首次引入的一系列微控制器总线。

AXI的第一个版本首次包含在2003年发布的AMBA 3.0中。AMBA 4.0,发布于2010年,包括AXI的第二个版本AXI4。

有三种类型的 AXI4接口:

  • AXI4——针对高性能存储器映射的需求;
  • AXI4-Lite——针对简单、低数据吞吐量的存储器映射通信(例如写入和读取控制、状态寄存器);
  • AXI4-Stream——针对高速数据流;

AXI4的优势(对于XILINX FPGA)?

•灵活性——为应用程序提供正确的协议:
        AXI4用于内存映射接口,只需一个地址相位,即可实现多达256个数据传输周期的突发。
        AXI4-Lite是一个轻量级的单事务内存映射接口。它的逻辑占地面积很小,是一个简单的界面,无论在设计还是使用上都可以使用。
        AXI4流完全消除了对地址阶段的要求,并允许无限的数据突发大小。AXI4流接口和传输没有地址阶段,因此不被认为是内存映射的。


•可用性——通过转向行业标准,还可以访问全球ARM合作伙伴社区。
        许多IP提供商支持AXI协议。
        第三方AXI工具供应商的强大集合可提供各种验证、系统开发和性能表征工具。当您开始开发基于AXI的高性能系统时,这些工具的可用性至关重要。

AXI如何工作?

AXI4和AXI4-Lite接口都由5种通道组成:

  1. 读地址通道
  2. 写地址通道
  3. 读数据通道
  4. 写数据通道
  5. 写响应通道

数据可以在主侧/从侧设备之间同时双向流通(全双工),数据传输尺寸可以变化。AXI4的限制是突发传输的数据个数最大为256,AXI4-Lite仅允许一次传输事务传输一个数据。

读通道架构

写通道架构

 AXI4为读和写分别提供了独立的数据和地址通道连接。这就允许了同时的双向数据传输。

AXI-Stream接口可以突发传输无限长度的数据,但是其不支持数据的重排顺序。

AXI互联的顶层结构

 

参考说明

【1】AXI Reference Guide

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

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

相关文章

ORA-29740:evicted by member %d, group incarnation %d

这个错误是在 rac 底下出现的,应该算是个比较严重的错误,就是 某个节点 被 踢(evict)出去了,导致这个节点重启系统。 这个错误的原因多种多样,而且需要找的日志文件也是很多的,基本上&#xff…

Serverless-云原生服务-概念

云原生服务是包含硬件、架构,硬件,因云而生,所以称为云原生技术。ServerlessFaasBaas同时具有按量付费和弹性伸缩的特点,该架构包括了函数维度和应用维度的两种形态关键字解析BaaS:Backend as a Service(后…

termux 部署springboot 及mysql

安装应用后,首先在手机上运行 pkg install openssh 再运行 passwd,改变ssh的密码。这时在pc上用数据线连好手机,打开adb调试,将手机的端口8022映射到PC上,因为termux中ssh默认是8022,再运行一下sshd 运行…

CV-Model【8】:ConvNeXt

文章目录前言1. Abstract & Introduction1.1. Abstract1.2. Introduction2. Modernizing a ConvNet: a Roadmap2.1. Training Techniques2.2. Macro Design2.2.1. Stage ratio2.2.2. "patchif" stem2.3. ResNeXt-ify2.4. Inverted Bottleneck2.5. Large Kernel S…

AWK简单总结

目录AWK简单总结常用命令选项变量内置变量自定义变量printf命令格式AWK简单总结 awk是linux/unix下的一个强大编程工具,他支持用户自定义函数和动态正则表达式,灵活性强,运行速度快。 常用命令选项 -F fs:fs指定输入分隔符,fs可…

利用SMB协议实现局域网内设备文件的共享

文章目录参考资料说明步骤1:[windows]开启SMB协议步骤2:[windows]创建新的用户账号步骤3:[windows]共享文件夹属性-共享-共享属性-共享-高级共享步骤4:[windows]查看共享文件的主机在局域网内的IP地址步骤5:[ipad]打开…

华为机试题:HJ35 蛇形矩阵(python)

文章目录知识点详解1、input():获取控制台(任意形式)的输入。输出均为字符串类型。1.1、input()与list(input())的区别、及其相互转换方法2、print() :打印输出。3、算术运算符4、整型int() :将字符串或数字转换为整型…

π122M31 双通道数字隔离器 CAN通信隔离兼容ADuM7241ARZ

π122M31 双通道数字隔离器 CAN通信隔离兼容ADuM7241ARZ电路简单、稳定性更高,具有出色的性能特征和可靠性,整体性能优于光耦和基于其他原理的数字隔离器产品。 产品传输通道间彼此独立,可实现多种传输方向的配置,可实现 5.0kVrms…

excel软件应用:如何妙用Word拆分单元格数据

打仗亲兄弟,上阵父子兵!Word和Excel就是一对好兄弟,虽然各有分工,但有时也能彼此帮忙。Excel中的莫名其妙问题找Word帮忙解决,往往有效。譬如从平台中导出的数据,先使用Word做一次符号处理再粘贴到Excel中处…

Go语言基础入门第五章

string 什么是stringGo中的字符串是一个字节的切片,可以通过将其内容封装在""中来创建字符串,Go中的字符串是 Unicode 兼容的,并且是 UTF-8 编码。 字符串是一些字节的集合。 package mainimport "fmt"func main() {st…

白盒测试用例设计-笔记

白盒测试用例设计方法白盒设计方法静态:桌面检查、代码审查、代码走查、代码扫描工具动态:逻辑覆盖法:语句覆盖、判断覆盖、条件覆盖、判定条件覆盖、条件组合覆盖、路径覆盖基本路径测试法逻辑覆盖法:是通过对程序逻辑结构的遍历…

97. BERT微调、自然语言推理数据集以及代码实现

1. 微调BERT 2. 句子分类 3. 命名实体识别 4. 问题回答 5. 总结 即使下游任务各有不同,使用BERT微调时只需要增加输出层但根据任务的不同,输入的表示,和使用的BERT特征也会不一样 6. 自然语言推理数据集 斯坦福自然语言推断语料库&#xf…

BP神经网络算法实现

目录 一、实验数学原理 二、实验算法和实验步骤 三、结果分析 1. 均方误差变化的影响 2. 迭代次数变化的影响 3. 学习效率变化的影响 四、预测 一、实验数学原理 激活函数: 一般使用S形函数(即sigmoid函数),比如可以使用log-…

【爬虫系列】Python如何实现进度条效果?

一、需求 在爬取数据过程中,发现不看输出日志是不知道当前的爬取进度,而单纯靠控制台输出日志信息也不方便判断。因此,就想办法给爬取过程加个进度条,实时展示当前的爬取进度。 有了这个需求和想法之后,那如何实现呢…

k8s中不同名称空间下的pod无法解析服务名

1、背景 公司的项目需要使用容器化部署,为了更好的维护和管理,我将各个项目按照命名空间进行隔离开,但是却发现存在一些问题 不同的系统间需要项目调用,而且是按照服务名进行调用,但是却导致不同名称空间下pod无法解析…

mac 快应用开发工具 真机调试 usb调试 提示Error:没有找到Android设备

项目场景: 项目场景:mac使用快应用开发工具连接Android手机 问题描述 显示错误没有找到Android设备 原因分析: adb连接的问题 解决方案: 1.确保手机开启开发者模式 2.确保手机与mac的连接线能传输数据,有的线只能…

python+moviepy音视频处理(一):基本操作

目录 视频处理 视频加载和输出 视频转换gif 视频裁剪 视频音量调节 去掉视频声音 视频中的音频提取与替换 获取视频属性 倍数播放视频 截取视频某帧为封面 多视频拼接 音频处理 替换视频文件的音频 多个音频文件拼接 安装:pip install moviepy 中文官…

【自学Docker】Docker stats命令

Docker stats命令 大纲 docker stats命令教程 docker stats 命令可以用于动态显示 Docker容器 的资源消耗情况,包括:CPU、内存、网络I/O。docker stats命令也可以指定已停止的容器,但是不会返回任何信息。 docker stats命令语法 haicoder…

Windows下载安装Nignx

下载 下载地址:http://nginx.org/en/download.html 下载完成以后,得到nginx压缩包; Nginx启动 方式一:可执行文件启动 双击nginx.exe启动 现在,我们打开任务管理器,如果发现nginx进程存在,说明启动完成; 方式二:命令行启动 进入nginx所在…