浅谈AXI协议及搭建自己的AXI IP核-01(协议解读)

news/2024/11/28 18:35:41/文章来源:https://www.cnblogs.com/dy-stairmed/p/18574944

一、什么是AXI协议?
AXI(Advanced eXtensible Interface)是一种总线协议,该协议是ARM公司提出的AMBA(Advanced Microcontroller Bus Architecture)3.0协议中最重要的部分,AMBA包括以下几个部分:

  1. Advanced High-performance Bus (AHB):高性能总线,用于连接高性能主设备,如处理器和DMA控制器等。AHB总线具有多主从设备、分时复用等特点,支持带宽请求、优先级传输和错误处理等功能。
  2. Advanced Peripheral Bus (APB):外设总线,用于连接低速器件,例如控制器和定时器等。它是单主多从的设备总线,APB总线是一种简单的串行总线,具有定时器可编程特性,其速度较慢,但其节点可达数目较多。
  3. Advanced eXtensible Interface (AXI):可扩展性接口,用于连接系统中高速器件之间的互连。AXI是多主和多从设备的连接,AXI总线支持优先级传输、带宽请求、流水线传输和乱序传输等功能,是AMBA规范中最高级别的总线接口协议。
    学过STM32的同学应该很眼熟APB总线,在STM32等微处理器架构中GPIO等外设都是挂载在APB总线上的,具体APB协议这里不过多深入。
    而AXI由于地址/控制和数据相位是分离的,支持不对齐的数据传输及突发传输的特点,因此在擅长高速、高数据量的FPGA上大放异彩。
    二、为什么要学习AXI协议
    在学习xilinx FPGA过程中我们会经常遇到AXI接口,特别在ZYNQ架构上,ZYNQ-7系列上集成了2个异构高性能A9处理器以及FPGA资源,因此需要一种接口用来实现FPGA与ARM的高速数据交换,而由于上述AXI总线的天然优势使之自然而然地承担了该任务。同时xilinx的一些其他高速接口的IP核的控制(PCIE、DDR等)也是通过AXI接口实现的。因此想要学习ZYNQ架构或者处理高速信号,AXI协议都是绕不过去的门槛。
    三、AXI协议
    AXI协议定义了五个独立的事务通道。地址通道携带着控制信息,用于描述传输数据的性质。五个独立通道都由一组信息信号、以及提供双向握手机制的VALID和READY信号组成。
    下面结合读写过程,对5个通道进行说明,
  4. 写过程

    上图表示了一次AXI写的过程,
    写地址通道:首先Master在写地址通道(write address channel)发起一次写地址请求,表明自己写入的数据将存储至哪个地址。
    写数据通道:随后Master在写数据通道(write data channel)写入数据,注意,axi是支持突发传输(即给一个起始地址,可以连续写入多个数据,第二次写地址时地址自增写入数据长度即可),因此可以看到写数据通道写入了多个数据,这些数据在地址上是连续的。例如假设数据位宽为16bit(2Byte),突发长度为8(一次写入8个数据),那么写地址每次需要增加 2*8 。
    写应答通道:由于双方已经约定好了数据位宽及突发长度,所以在Mater写完最后一个数据(wlast)后,Slave会进行写通道和写数据的应答,表示Slave已经成功完成接受这一次突发写入内容。
  5. 读过程

    上图表示了一次AXI读过程,
    读地址通道:Master在读地址通道写入想要读取的数据地址,
    读数据通道:Slave在读数据通道将该地址的突发长度数据返回给Master
  6. 握手机制
    值得注意的是,在这5个通道所产生的读写事务都是基于握手机制完成的,主从通信都使用相同的VALID/READY握手过程来传输地址、数据和控制信息。这种双向流控制机制意味着Master和Slave都可以控制信息的移动速率。传输只发生在VALID和READY信号都是1的时候。
  • 源端产生VALID=1信号:表示地址、数据或控制信息可用。
  • 终端生成READY=1信号:表示可以接受该信息。
    那么就存在一个问题,握过程中VALID和READY的前后关系,或者握手过程是怎么样的?
    AXI支持三种形式的握手形式:
  1. VALID before READY:

    源端发起VALID后必须等到终端回应READY后才可以释放VALID。
  2. READY before VALID :

    终端先产生READY信号,源端产生VALID,终端拉高READY后可以取消拉高,不必一直保持到完成握手。
  3. VALID with READY:

VALID和READY信号同时拉高,完成握手。
4. 读写时序

  1. 写时序图

  2. 读时序

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

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

相关文章

哈希表篇

哈希表 有效的字母异位词/*** 242. 有效的字母异位词 字典解法* 时间复杂度O(m+n) 空间复杂度O(1)*/ class Solution {public boolean isAnagram(String s, String t) {int[] record = new int[26];for (int i = 0; i < s.length(); i++) {record[s.charAt(i) - a]++; /…

windows下编程中的多用户、权限问题

编程中经常遇到windows相关的多用户问题,以下通过代码进行实际验证。 一、创建一个UserTest程序using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using System.Security.Principal; using System.Text; using System.Threadin…

电力IEC103/2/1/4规约数据采集仪器网关通讯管理机测试软件工具客户端服务器 LFP/NZ94/N4F规约

www.daq-iot.com作为物联网数据采集解决方案专业提供商,数采物联网小编daq-iot在这里做以下内容介绍,并诚挚的欢迎大家讨论和交流。IEC103规约支持:工具完全适用于电力行业的各种通信测试采集需求。 串口和以太网通信:工具支持通过串口和以太网进行通信,灵活适应不同的电力通…

创新的在线音乐播放器-支持特别歌曲

音乐播放器开发学习笔记 项目简介 这是一个基于Web的音乐播放器练习项目,主要用于学习和实践Web开发技术。项目采用PHP开发,实现了基础的音乐播放功能。 在线体验实现功能 本项目目前包含以下基础功能:音乐搜索和播放 音频文件下载 歌词同步显示 音量调节控制 播放控制(暂停…

触觉智能亮相OpenHarmony人才生态大会2024

11月27日,OpenHarmony人才生态大会2024在武汉隆重举行。本次大会汇聚了政府领导、学术大咖、操作系统技术专家、高校及企业代表,围绕新时代背景下的操作系统人才培养进行了深入探讨,分享高校、企业在产学研融合方面的先进经验,全面展现了OpenHarmony在人才生态领域学-考-用…

20222415 2024-2025-1 《网络与系统攻防技术》实验五实验报告

1.实验内容 本周学习了Web安全。 2.实验过程 (1)从www.besti.edu.cn、baidu.com、sina.com.cn中选择一个DNS域名进行查询,获取如下信息: DNS注册人及联系方式 Registrar: MarkMonitor Inc. Registrar Abuse Contact Email: abusecomplaints@markmonitor.com Registrar Abus…

活动回顾丨云原生开源开发者沙龙杭州站回放 PPT 下载

11 月 08 日,云原生开源开发者沙龙丨AI 应用工程化专场在杭州顺利举办。现场座无虚席,阿里云一线工程师围绕《构建面向 AI 应用可观测能力》、《Java 开发者如何玩转 AI》、《事件驱动构建 AI 原生应用》、《智启未来:通过 AI 网关快速构建智能应用》4 个当下热门议题深入分…

Vulnhub WestWild1.1

0x01:端口扫描 主机发现 nmap -sn 192.168.231.0/24全端口扫描 nmap --min-rate 10000 -p- 192.168.231.140开了22ssh,80http,两个smb服务 详细端口扫描 nmap -sT -sC -sV -O --min-rate 10000 -p22,80,139,445 192.168.231.140漏洞扫描 nmap --script=vuln -p22,80,139,445…

【VMware VCF】基于 RDU 方式更新 VCF 环境中的 vCenter Server 组件。

Reduced Downtime Upgrade(RDU)是一种基于“迁移”的 vCenter Server 更新方式,通过临时部署一个与源 vCenter Server 完全一致的目标 vCenter Server(类似于跨版本 vCenter Server 升级),然后找一个维护窗口期完成源 vCenter Server 和目标 vCenter Server 的切换即可,…

『模拟赛』多校A层冲刺NOIP2024模拟赛27终结篇

『模拟赛记录』多校A层冲刺NOIP2024模拟赛27终结篇Rank rp++A. 【模板】分治FFT 签。没取模挂 50pts。 列出式子发现无论何种合并方式,最终权值均为 \(\sum_{i=1}^n\ a_i\times (\sum_{j=i}^n\ a_i)\),因此求方案数即可。发现每一步相当于从当前堆数中任选两个出来,容易得出…

服装行业如何应对快速生产与库存管理挑战?

在服装行业,快时尚的浪潮让市场变化迅速,消费者的需求也在不断变化。而与此同时,企业面对的压力也越来越大——生产周期紧、库存管理难、设计和销售协调困难,往往导致一系列管理瓶颈。如何在如此竞争激烈的环境中提高生产效率、快速响应市场需求,同时确保库存不积压?这些…