Zynq学习笔记--AXI 总线概述

目录

1. AXI总线概述

1.1 主要特点

1.2 通道功能

1.3 信号概览

2. AXI Interconnect

2.1 信号说明

2.2 内部结构

3. PS-PL AXI Interface

3.1 AXI FPD/LFP/ACP

3.2 Address Editor

3.3 地址空间

3.4 AXI-DDR

4. 通过ILA观察AXI信号

4.1 AXI 读通道


1. AXI总线概述

AXI(Advanced eXtensible Interface)总线是ARM公司在AMBA 3.0协议中提出的一个重要部分,主要面向高性能、高带宽、低延迟的片内总线设计。在AMBA 4.0版本中,AXI被进一步发展为AXI4,包括AXI4、AXI4-Lite、AXI4-Stream等多个版本。

1.1 主要特点

高性能和高频率系统设计:AXI协议支持高带宽和低延时设计,适合于需要高频操作的系统。
读写通道分离:AXI协议定义了五个独立的传输通道,包括读地址通道、读数据通道、写地址通道、写数据通道和写响应通道,从而支持全双工的数据传输。
灵活的互联架构:AXI提供了单一的接口定义,适用于master/interconnect、slave/interconnect和master/slave之间的连接。
支持多种传输类型:包括burst传输、乱序传输和outstanding传输,有助于提高数据处理效率。
易于时序收敛:AXI协议允许在任何通道的任何点插入寄存器级,以实现时序收敛。

1.2 通道功能

读地址通道(Read Address Channel):携带读操作的地址和控制信息。
读数据通道(Read Data Channel):用于从slave到master的数据传输。
写地址通道(Write Address Channel):携带写操作的地址和控制信息。
写数据通道(Write Data Channel):用于从master到slave的数据传输。
写响应通道(Write Response Channel):用于slave对写操作的响应。

1.3 信号概览

2. AXI Interconnect

AXI Interconnect 非常常见。它用于连接多个AXI主设备和从设备的关键组件。它是ARM AMBA规范的一部分,专门设计来处理多个主设备和从设备之间的通信。

AXI Interconnect 一般由Vivado自动生成并连接。理解其作用有助于提到系统设计能力。

2.1 信号说明

2.2 内部结构

当任何连接的主设备或从设备的接口特性与互联内部的交叉开关不同时,适当的基础架构核心会被自动推断和连接到互联中执行必要的转换:

AXI Crossbar(交叉开关):将一个或多个相似的AXI内存映射主设备连接到一个或多个相似的内存映射从设备。

AXI Data Width Converter(数据宽度转换器):将一个AXI内存映射主设备连接到一个具有更宽或更窄数据通道的AXI内存映射从设备。

AXI Clock Converter(时钟转换器):将一个AXI内存映射主设备连接到一个在不同时钟域中操作的AXI内存映射从设备。

AXI Clock Converter(时钟转换器):将一个AXI内存映射主设备连接到一个在不同时钟域中操作的AXI内存映射从设备。

AXI Protocol Converter(协议转换器):将一个AXI4AXI3AXI4-Lite主设备连接到一个不同的AXI内存映射协议的AXI从设备。

AXI Data FIFO(数据FIFO):通过一组FIFO缓冲器将一个AXI内存映射主设备连接到一个AXI内存映射从设备。

AXI Register Slice(寄存器切片):通过一组流水线寄存器将一个AXI内存映射主设备连接到一个AXI内存映射从设备,通常用于打破关键时序路径。

AXI MMU(内存映射单元):AXI互联提供地址范围解码和重映射服务。

3. PS-PL AXI Interface

3.1 AXI FPD/LFP/ACP

3.2 Address Editor

3.3 地址空间

3.4 AXI-DDR

4. 通过ILA观察AXI信号

引入事务分析,可以清晰看到每次突发传输的起止范围

4.1 AXI 读通道

4.2 AXI 写通道

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

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

相关文章

Linux高级IO——多路转接之poll

本章代码Gitee地址&#xff1a;PollServer 文章目录 1. poll2. poll_server 1. poll poll的作用和select一模一样&#xff0c;只负责等待 poll在select的基础之上解决了select的两个硬伤&#xff1a; select等待的fd有上限select输入输出参数较多 #include <poll.h> …

【软件设计师知识点】八、数据库技术基础

文章目录 数据库基本术语关系型数据库基本术语数据库模型三级模式二级映射数据的独立性数据模型常用数据模型E-R 图(概念设计)数据库操作完整性规则关系代数运算集合运算符关系运算符数据库语言 SQL数据定义语言(DDL)

uniapp开发小程序手写板、签名、签字

可以使用这个插件进行操作 手写板-签名签字-lime-signature - DCloud 插件市场 但是目前这个插件没有vue3 setup Composition API的写法。所以对于此文档提供的可以直接使用,需要使用Composition API方式实现的,可以继续看。 因为Composition API方式,更加的简单、灵活,…

Java编程题目 | 四个数的三三组合

大家可以关注一下专栏&#xff0c;方便大家需要的时候直接查找&#xff0c;专栏将持续更新~ 题目描述 使用数字1、2、3、4&#xff0c;编写一个Java程序&#xff0c;找出所有互不相同且每个三位数中不含有重复数字的组合&#xff0c;并输出这些组合。 解题思路 使…

记录一个腾讯云上kafka不能正常启动问题

问题描述&#xff1a;刚在新的腾讯云三台节点上安了Zookeeper和kafka&#xff0c;改好对应配置文件后&#xff0c;启动zk和kafka。 启动zk后&#xff0c;启动kafka jpsall以后 发现两个进程都启了&#xff08;这里有猫腻&#xff0c;kafka其实没起来&#xff0c;过几秒就自动掉…

在Windows中用命令行编译C项目

在Windows中可以用命令行编译C项目 官方指导文档&#xff1a; 演练&#xff1a;在命令行上编译 C 程序 | Microsoft Learn 在官方文档中可以看到&#xff0c;可以只安装VS的命令行工具集&#xff0c;如下图所示

2.0 Hadoop 运行环境

2.0 Hadoop 运行环境 分类 Hadoop 教程 由于 Hadoop 是为集群设计的软件&#xff0c;所以我们在学习它的使用时难免会遇到在多台计算机上配置 Hadoop 的情况&#xff0c;这对于学习者来说会制造诸多障碍&#xff0c;主要有两个&#xff1a; 昂贵的计算机集群。多计算机构成的…

JVM性能调优——GC日志分析

文章目录 1、概述2、生成GC日志3、Parallel垃圾收集器日志解析3.1、Minor GC3.2、FULL GC 4、G1垃圾收集器日志解析4.1、Minor GC4.2、并发收集4.3、混合收集4.4、Full GC 5、CMS垃圾收集器日志解析5.1、Minor GC5.2、Major GC5.3、浮动垃圾 6、日志解析工具6.1、GCeasy6.2、GC…

SpringBoot项目 jar包方式打包部署

SpringBoot项目 jar包方式打包部署 传统的Web应用进行打包部署&#xff0c;通常会打成war包形式&#xff0c;然后将War包部署到Tomcat等服务器中。 在Spring Boot项目在开发完成后&#xff0c;确实既支持打包成JAR文件也支持打包成WAR文件。然而&#xff0c;官方通常推荐将Sp…

【Godot4.2】CanvasItem绘图函数全解析 - 8.绘制点索引

概述 在示意图绘制过程中或者测试过程中&#xff0c;可能需要标记点的索引。 最常见的形式就是用一个圆圈作为背景&#xff0c;用阿拉伯数字作为索引。 实现的重点是动态计算背景圆的半径。原理是&#xff0c;获取字符串的矩形&#xff0c;取对角线长度的一半作为外接圆的半…

AI PC元年,华为的一张航海图、一艘渡轮和一张船票

今天&#xff0c;从学术研究者到产业投资者&#xff0c;无不认为大模型掀起了一场人工智能的完美风暴。 所谓“完美风暴”&#xff0c;指的是一项新技术的各个要素&#xff0c;以新的方式互相影响、彼此加强&#xff0c;组合在一起形成了摧枯拉朽般的力量。 而我们每个人&#…

【运维笔记】深入理解反向代理的原理及应用

一、引言 在现代网络架构中&#xff0c;反向代理是一个核心组件&#xff0c;它在提升网站性能、增加安全性和简化网络流量管理方面发挥着至关重要的作用。本文将深入探讨反向代理的原理&#xff0c;展示其在不同场景下的应用&#xff0c;并通过具体案例来说明如何实现和优化反…

【opencv】示例-phase_corr.cpp 捕获视频流并通过计算相位相关性来检测画面中的移动...

// 包含OpenCV库的头文件 #include "opencv2/core.hpp" // 包含OpenCV核心功能 #include "opencv2/videoio.hpp" // 包含视频IO功能 #include "opencv2/highgui.hpp" // 包含高级GUI功能&#xff0c;显示图像 #include "opencv2/imgproc.hp…

机器视觉系列之【硬件知识】-工业相机(三)

目录 几个高频面试题目 如何解决工业相机的丢帧现象 工业相机是怎么实现触发的?

SpringCloud 2021.0.9 OpenFeign 与 circuitbreaker-resilience4j 使用示例

背景 OpenFeign是微服务中服务远程调用组件。 circuitbreaker 是断路器的抽象接口。 resilience4j是断路器的一种实现。 在服务间远程调用过程中&#xff0c;为了避免服务雪崩&#xff0c;需要设置失败保护机制&#xff0c;当下游服务超时或者不可用时&#xff0c;上游服务可…

Eureka-搭建Eureka步骤

简介&#xff1a; Eureka是Netflix开发的服务发现框架&#xff0c;本身是一个基于REST的服务&#xff0c;主要用于定位运行在AWS域中的中间层服务&#xff0c;以达到负载均衡和中间层服务故障转移的目的。SpringCloud将它集成在其子项目spring-cloud-netflix中&#xff0c;以实…

【OTA】STM32新能源汽车OTA技术ymodem协议PC串口升级过程

【OTA】STM32新能源汽车OTA技术ymodem协议PC串口升级过程 文章目录 前言一、实验工具1.串口USB线——烧录APP2生成的BIN文件2.STLINK——烧录BOOT代码和APP1代码3.烧录工具——将BIN文件烧录到单片机中4.FLYMCU——清除芯片FLASH 二、硬件绘制1.原理图2.PCB 三、软件配置1.BOOT…

Github 2024-04-13 开源项目日报 Top9

根据Github Trendings的统计,今日(2024-04-13统计)共有9个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Python项目2C++项目2Jupyter Notebook项目2TypeScript项目1Cuda项目1非开发语言项目1GoogleTest - Google测试和模拟框架 创建周期:3181 天开发…

订单状态及其转换

目录 新建状态&#xff08;Created&#xff09;/待处理&#xff08;Pending&#xff09; 待支付&#xff08;Pending Payment&#xff09; 支付确认中&#xff08;Payment Processing&#xff09; 支付成功&#xff08;Paid&#xff09; 处理中&#xff08;Processing&…

【2024-03-14】Spring中基于注解和AOP的结合实现(改造系统中的原有AOP鉴权)

业务需求 改造系统中的原先写的通过表达式拦截实现的鉴权功能。 原有逻辑 没有注释&#xff08;啊啊啊啊&#xff09;。 花费工时7.5小时。 步骤如下&#xff1a; 获取Header头参数。校验Header头的必要参数。通过Header中获取的参数&#xff0c;查询数据库入口表信息。通过…