004:ZYNQ_AXI总线学习笔记(1)
1. WHAT IS AXI?
AXI是一种高级可扩展接口,是ARM AMBA的一部分。
2. WHAT IS AMBA?
AMBA是高级微控制器总线架构,开放的片内互联总线标准。
3.AXI分类
AXI4/AXI4_ITE/AXI4_STREAM
Memory_mapped 存储器映射 就是读写数据时需要目标地址。
AXI4(AXI4_FULL):用于高性能存储映射。例如:AXI4读写DDR3。
AXI4_LITE:简单的,低吞吐率。比如说一些控制寄存器和状态寄存器。
AXI4_STREAM(ST):高速的流数据通信。
AXI4(AXI4_FULL)和AXI4_LITE需要主机指定读写的地址。AXI4_STREAM(ST)属于流数据,不需要存储器映射不需要地址。
4.存储器映射(Memory_mapped)
主机在对从机进行读写操作时,要先指定一个目标地址(target address),在这个地址对应系统存储空间的地址,表示对该空间进行读写操作。
Memory-Mapped Protocols: In memory-mapped protocols (AXI3, AXI4, and
AXI4-Lite), all transactions involve the concept of transferring a target
address within a
system memory space and data.
AXI_Stream不属于存储器映射。
5.AXI4的优势
AXI的优势
生产力:
灵活性:AXI4(支持突发256)和AXI4_lite(不支持突发,1个数据)都属于存储器映射。AXI_ST不属于存储器映射,突发长度不受限制。
可获得性:
6.what is 互联?
7. five different channels
Both AXI4 and AXI4-Lite interfaces consist of five different channels:
• Read Address Channel
• Write Address Channel
• Read Data Channel
• Write Data Channel
• Write Response Channel
主机发送读地址,从机返回读数据
Data can move in both directions between
the master and slave simultaneously, and data
transfer sizes can vary. The limit in AXI4 is a burst
transaction of up to 256 data transfers.
AXI4-Lite allows only one data transfer per
transaction.
读操作:主机通过读地址通道向从机发出地址和控制,从机通过读数据通道发送读数据。根据突发长度大小返回不同个数的数据。
写操作:主机先通过写地址通道发出地址和控制信号。然后通过写数据通道发出数据,等从机接收到数据会发送response信号。
AXI4:
读写地址分离,支持同时读写。
需要一个单一地址然后进行256个数据突发。
As shown in the preceding figures, AXI4:
• Provides separate data and address connections for
reads and writes, which allows
simultaneous, bidirectional data transfer.
• Requires a single address and then bursts up to 256
words of data.
AXI4_LITE:
单次一个数据,不支持突发传输。
AXI4-Lite is similar to AXI4 with some
exceptions: The most notable exception is that
bursting is not supported.
AXI4-Stream:
单通道传输数据类似AXI4的写数据通道,且写数据大小没有突发限制。
The AXI4-Stream protocol defines a single channel for
transmission of streaming data. The AXI4-Stream channel models the write data channel of AXI4.
Unlike AXI4, AXI4-Stream
interfaces can burst an unlimited amount of data.
只关心数据流,不需要地址。
AXI4-Stream
Protocol: Use the AXI4-Stream protocol for applications that typically
focus on a data-centric and data-flow paradigm where the concept of an address
is not
present or not required. Each AXI4-Stream acts as a single unidirectional
channel with a
handshaking data flow.
Infrastructure
IP: An infrastructure IP is a building block used to help assemble
systems. Infrastructure IP tends to be a generic IP that moves or transforms
data
around the system using general-purpose AXI4 interfaces and does not interpret
data.
Examples of infrastructure IP are:
° AXI Register slices (for pipelining)
° AXI FIFOs (for buffering/clock conversion)
° AXI Interconnect IP and AXI SmartConnect IP (for
connecting memory-mapped IP
together)
° AXI Direct Memory Access (DMA) engines (for memory-mapped
to stream
conversion)
° AXI Performance Monitors and Protocol Checkers
(for analysis and debug)
° AXI Verification IP (for simulation-based
verification and performance analysis)
These IP are useful for connecting IP together into a system, but are not
generally
endpoints for data.
DMA常用于存储器映射和stream数据流的转换。
比如说ddr中存储了你的有效数据需要做fft
fft IP的接口时stream流 ddr的数据是存储器映射,做操作需要DMA做数据转换。
A common
approach is to build systems that combine AXI4-Stream and AXI
memory-mapped IP together. Often a DMA engine can be used to move streams in
and out
of memory.
注意AXI Data width
converter 和 AXI Direct Memory
Access支持的AXI接口协议。
8.AXI SmartConnect IP and AXI
Interconnect IP
两者都用于一些主从设备的互联(存储器映射类型)。在一些情况下, AXI
SmartConnect IP可以提供高带宽的链接以及低延迟。
The Xilinx
LogiCORE IP AXI Interconnect and LogiCORE IP AXI SmartConnect cores both connect
one or more AXI memory-mapped master devices to one or more memory-mapped slave
devices; however, the SmartConnect is more tightly integrated into the Vivado
design environment to automatically configure and adapt to connected AXI master
and slave IP with minimal user intervention. The AXI Interconnect can be used in
all memory-mapped designs. There are certain cases for high bandwidth
application where using a SmartConnect provides better optimization. The AXI
SmartConnect IP delivers the maximum system throughput at low latency by
synthesizing a low area custom interconnect that is optimized for important
interfaces.The AXI Interconnect core IP (axi_interconnect)
connects one or more AXI memory-mapped master devices to one or more
memory-mapped slave devices。
今天先到这里。
参考资料:
IHI0022D
UG1037
正点原子ZYNQ嵌入式教程
004:ZYNQ_AXI总线学习笔记(1)的更多相关文章
- openrisc 之 Wishbone总线学习笔记——接口信号定义
这部分内容就是copy下来的,网上到处都有.先看看接口啥样子,在详细说明 接口定义copy http://blog.csdn.net/ce123/article/details/6929897.百度文 ...
- openrisc 之 Wishbone总线学习笔记——总线互联
一,总线命名规范 1,wishbone总线接口信号都是高电平有限 2,wishbone接口信号都是以 _i ,或者是 _o 结束.i表示输入, o表示输出. ()表示该信号为总线信号,总线位宽可以大于 ...
- openrisc 之 Wishbone总线学习笔记——总线特性
特性: 一,互联方式: 支持点到点.共享总线.十字交叉(Crossbar)和基于交换结构(Switch fabric)的互联. 二,数据操作方式:单次读/写操作.块读/写操作,读改写(RMW,Read ...
- PCI 总线学习笔记
转载请注明出处:http://blog.csdn.net/lg2lh/article/details/8042008 PCI的基本协议这里就不介绍了,由于一般的芯片协议都是集成好的,我仅仅须要大体了解 ...
- CAN总线学习笔记
1.CAN总线信息包的格式 问题: 1.CAN总线的初始化要初始化哪些东西? 2.处理器如何与CAN总线之间进行连接? 硬件连接 关于CC2底盘CAN通信的协议格式 备注: 设备地址为01 功能码
- 基于I2C总线的MPU6050学习笔记
MPU6050学习笔记 1. 简述 一直想自己做个四轴飞行器,却无从下手,终于狠下决心,拿出尘封已久的MPU6050模块,开始摸索着数据手册分析,一步一步地实现了MPU6050模块的功能,从MPU60 ...
- IRP IO_STACK_LOCATION 《寒江独钓》内核学习笔记(1)
在学习内核过滤驱动的过程中,遇到了大量的涉及IRP操作的代码,这里有必要对IRP的数据结构和与之相关的API函数做一下笔记. 1. 相关阅读资料 <深入解析 windows 操作系统(第4版,中 ...
- C语言学习笔记之成员数组和指针
成员数组和指针是我们c语言中一个非常重要的知识点,记得以前在大学时老师一直要我们做这类的练习了,但是最的还是忘记了,今天来恶补一下. 单看这文章的标题,你可能会觉得好像没什么意思.你先别下这个 ...
- Web前端学习笔记(001)
....编号 ........类别 ............条目 ................明细....................时间 一.Web前端学习笔记 ...
随机推荐
- kafka listeners和advertised配置
kafka listeners和advertised配置 kafka版本:kafka_2.11-2.3.0 kafka配置listeners # The address the socket ser ...
- Faiss源码剖析:类结构分析
摘要:在下文中,我将尝试通过Faiss源码中各种类结构的设计来梳理Faiss中的各种概念以及它们之间的关系. 本文分享自华为云社区<Faiss源码剖析(一):类结构分析>,原文作者:HW0 ...
- .NET 中的 Worker Service 入门介绍
翻译自 Steve Gordon 2020年3月30日的文章 <WHAT ARE .NET WORKER SERVICES?> [1] 随着 .NET Core 3.0 的发布,ASP.N ...
- 01- Sublime的工具安装以及使用
一 sublime安装与使用 sublime介绍: sublime是一个代码编辑器,可以编写HTML,PHP,js,css等文件. Sublime有哪些优点: 1.跨平台 2.扩展性强 3.提交小,运 ...
- 【并发编程】ThreadLocal
ThreadLocal Thread类中 具有一个ThreadLocal.ThreadLocalMap ,这个变量是由ThreadLocal去维护的,各个线程之间相互隔离
- POJ 1679 判断最小树是否唯一
题意: 给你一个图,问你最小树是否唯一,唯一则输出最小数的权值,不唯一输出Not Unique! 思路: 题目问的是最小树是否唯一,其实也就是在问次小树是否等于最小树,如果等于则 ...
- Python中根据库包名学习使用该库包
目录 Python库包模块 import 语句 from-import 语句 搜索路径 PYTHONPATH 变量 命名空间和作用域 查看模块中所有变量和函数,以及查看具体函数的用法 globals( ...
- Day003 位运算
位运算 & 按位与,全1才为1,否则为0 | 按位或,全0才为0,否则为1 ^ 按位异或,相同则为0,不通则为1 ~按位取反 <<左移,相当于*2 >>右移,相当于/2 ...
- 基于 registry 搭建 Docker 私有镜像仓库
今天主要介绍使用 registry 来搭建 Docker私有镜像仓库,方便在公司内部项目中使用,registry 也是 Docker 官方提供的一个镜像,操作也很简单. dockerhub: http ...
- java学习路线分析