AXI介绍

1.什么是AXI?

AXI(高级可扩展接口),是ARM,AMBA的一部分;
AMBA:高级微控制器总线架构
1996年首次引入的一组微控制器总线;开放的片内互联的总线标准,能在多主机设计中实现多个控制器核外围设备之间的连接和管理。
详细官方文档见:
https://download.csdn.net/download/qq_42025108/15735039

2.AXI4三种类型

AXI4(AXI4-Full)
用于高性能的存储区映射需求。存储器映射:主机对从机进行读写操作时,会指定一个目标地址,这个地址就是对应系统存储空间的地址,表示对该空间进行读写操作。
功能最丰富,占用资源最多,支持单次突发传输256个数据。
AXI4-Lite
简化版的AXI4接口,用于低吞吐率的存储器映射的通信,仅支持单次传输1个数据。
AXI4-Stream(ST)
用于高速的流数据通信,不属于存储器映射,突发传输长度不受限制。

3.AXI优点

生产力、灵活性、可活得性

4.AXI的工作方式

AXI4和AXI-Lite包含5个独立通道
读地址通道
读数据通道
写地址通道
写数据通道
写相应通道

结论:
AXI4:由于读写通道数据分离,可同时支持读写双向传输;突发长度最大256。
AXI4-Lie:和AXI4比较类似,但不支持突发传输。
AXI4-Stream:只有一个单一数据通道,单向数据流,基于握手的机制。和AXI4的写数据通道比较类似,突发长度不受限制。

5.基础架构IP核举例

AXI Register slices
AXI FIFOS
AXI Interconnect IP and AXI SmartConnect IP
AXI Direct Memory Access(DMA) engines
(用得比较多,实现stream流到存储器映射接口的转化)
AXI Performance Monitors and Protocol Checkers
AXI Verification IP

6.实现方式

建立带AXI4接口的IP核,实现步骤见如下博客(AXI4-Lite使用案例):
https://blog.csdn.net/qq_42025108/article/details/113134186?spm=1001.2014.3001.5501

7.AXI InterConnect 和AXI SmartConnect

这两个IP核都是用于连接单/多个存储器映射的AXI Master和单/多个存储器映射的AXI。一般Vivado可以智能自动连接。

8.AXI的通道定义

每一个独立的通道都包含一组信息信号、VALID信号和READY信号,用于提供双向握手机制。
信息源端使用VALID信号表示当前通道地址、数据和控制信息什么时候有效,目的端使用READY信号表示什么时候可以接收信息。读数据通道和写数据通道都包含一个LAST信号,用于表示传输的最后一个数据。
读数据通道和写数据通道都包含各自的地址通道,地址通道携带了请求所需的地址和信息。读数据通达由从机发送给主机,包含了读数据和读响应的信息,读响应的信号用于表示读传输是否操作完成;写数据通道由主机发给从机,包含了写数据,然后通道WSTRB信号表示当前数据的哪个字节有效。
写响应信号通道由从机发送给主机,包含了写响应信号,用于表示当前写操作是否完成。
所有数据在时钟上升沿采样;复位低电平有效。

9.握手机制

所有五个事务通道都使用相同的VALID/READY信号握手来传输地址、数据和控制信息。这种双向流量控制机制意味着主机和从机之间传输数据时,主从双方都可以控制传输速率。源产生有效的信号来指示地址。数据或控制信息可用。目的地产生就绪信号来指示它可以接受信息。只有当VALID和READY同时为高电平时,传输才会发生在主接口和从接口上,输入和输出信号之间必须没有组合路径。

AXI协议需要维护以下关系:
在写入事务中,写入响应必须始终紧跟它所属的最后一个写入传输;读取的数据必须总是跟在数据所关联的地址后面;通道握手必须符合在通道握手之间的依赖项中定义的依赖项信号。

10.AXI4-Lite的选择

适用于当不需要AXI4完整功能的时候,一些简单的控制寄存器的读写。所有突发传输长度为1;所有的数据访问都使用数据总线的全宽度,AX14-Lite支持32位或64位的数据总线宽度。所有访问都是不可修改、不可缓冲的不支持独占访问。

11.时序图

突发读:

突发写:

zynq设计学习笔记7-AXI简介相关推荐

  1. 【小猫爪】AUTOSAR学习笔记01-AUTOSAR架构简介

    [小猫爪]AUTOSAR学习笔记01-AUTOSAR架构简介 前言 1 背景介绍 2 基本概念 3 方法论 4 分层软件架构 4.1 Application Layer(APP) 4.2 Basic ...

  2. StatQuest学习笔记23——RNA-seq简介

    StatQuest学习笔记23--RNA-seq简介 前言--主要内容 这篇笔记是StatQuest系列笔记的第58节,主要内容是讲RNA-seq的原理.StatQuest系列教程的58到62节是协录 ...

  3. ASP.Net学习笔记001--ASP.Net简介1

    ASP.Net学习笔记001--ASP.Net简介1 2016/1/10 以前写的课程都没有附上源码,很抱歉! 课程中的源码可以加qq索要:1606841559 也可以自己下载: ASP.Net学习笔 ...

  4. C#.NET学习笔记1---C#.NET简介

    C#.NET学习笔记1---C#.NET简介 技术qq交流群:JavaDream:251572072  教程下载,在线交流:创梦IT社区:www.credream.com -------------- ...

  5. 模电设计学习笔记(二)——反相放大电路

    模电设计学习笔记(二) 反向放大电路设计 反向放大电路:输出信号与输入信号的相位相反并且电压或电流值成一定比例. 如下图就是一个简单的反向放大电路. 设计反向放大电路,同样的需要先清除需求,然后定量的 ...

  6. 数字IC设计学习笔记_Formality 形式验证

    数字IC设计学习笔记 Formality 形式验证 1. 基本特点 2. Reference Design 和Implementation Design 3. container 4. 读入共享技术库 ...

  7. Mockplus原型设计学习笔记(1)—— 图层的调节

    Mockplus原型设计学习笔记(1)-- 图层的调节 前言: 本节内容: 总结:

  8. STM32 HAL库学习笔记1-HAL库简介

    STM32 HAL库学习笔记1-HAL库简介 HAL库 SPL 库 和 HAL 库两者相互独立,互不兼容.几种库的比较如下 目前几种库对不同芯片的支持情况如下 ST 中文官网上有一篇<关于ST库 ...

  9. 数字IC设计学习笔记_静态时序分析STA_ PrimeTime 基本概述

    数字IC设计学习笔记 PrimeTime 基本概述 1. PrimeTime 基本概述 2. 运行模式 1. PrimeTime 基本概述 PrimeTime,Synopsys公司提出的,针对于复杂的 ...

最新文章

  1. 《Adobe After Effects CC完全剖析》——动画:完全是由“关系”组成的
  2. Linux添加新硬盘、分区、格式化、自动挂载
  3. 分布式面试题(含解答)
  4. 开发自定义JSF组件(4) 保存状态与恢复状态
  5. 促销 java_原始促销 [Java]
  6. ClickHouse入门
  7. 【Python】循环的拓展
  8. Array.prototype.slice.call()方法详解
  9. php给一个参数布尔值,php – 布尔值和字符串条件
  10. SHLVL 和 BASH_SUBSHELL 两个变量的区别
  11. Spyder has encountered an internal problem!问题解决过程
  12. matlab uicontrol 下标,Matlab Impoint和Uicontrol
  13. jsPlumb点到点连线偏移
  14. Typora加超链接实现页内跳转的三种方法
  15. WatchOS开发教程之四: Watch与 iPhone的通信和数据共享
  16. 香港大学计算机科学学制,香港大学CS 计算机科学专业解析
  17. linu修改open files无效_雷电模拟器修改教程
  18. 大数据同步利器: 表格存储全增量一体消费通道 1
  19. 【C语言进阶】指针(进阶2)
  20. 初级会计实务--第三章第四节、应交税费

热门文章

  1. 消息摘要算法-HMAC算法
  2. Linux 中 sudo和su的区别
  3. xynuoj 灯光问题 酒馆浪人的博客
  4. 第一章 Linux操作系统概述
  5. DC-1靶场搭建及渗透实战详细过程(DC靶场系列)
  6. 南京邮电大学通达学院C++上机实验参考答案
  7. 使用HTML+CSS制作个人主页
  8. xxx.tlb文件与xxx.tli, xxx.tlh 的关系
  9. shell stty命令
  10. Element-UI框架对话框报错visible.sync