AXI zynq 笔记


ZYNQ笔记(十六):AXI DMA 环路测试
https://blog.csdn.net/2303_76814451/article/details/147616062
AXI的通道定义
每一个独立的通道都包含一组信息信号、VALID信号和READY信号,用于提供双向的握手机制。
信息源端使用VALID信号表示当前通道地址、数据和控制信息什么时候有效,目的端使用READY信号表示什么时候可以接收信息,读数据通道和写数据通道都包含一个LAST信号,用于表示传输的最后一个数据。
读数据通道和写数据通道都包含各自的地址通道,地址通道携带了请求所需的地址和信息
读数据通道由从机发送给主机,包含了读数据和读响应的信息,读响应的信号用于表示读传输是否操作完成;
写数据通道由主机发送给从机,包含了写数据,然后通过wSTRB信号表示当前数据的哪个字节有效
写响应通道由从机发给主机,包含了写响应信号,用于表示当前写操作是否完成
握手机制
所有的五个通道都是通过相同的VALID/READY握手处理来传输地址、数据和控制信息双向握手的机制意味着主机和从机之间传输数据时,都可以控制传输的速率只有当VALID和READY同时为高电平时,传输才会发生。
AXI4-Lite
适用于当不需要AXI4完整功能的时候,一些简单的控制寄存器的读写
介绍
什么是AXI?
AXI(高级可扩展接口),是ARMAMBA的一部分;
AMBA:高级微控制器总线架构;
是1996年首次引入的一组微控制器总线;
开放的片内互联的总线标准,能在多主机设计中实现多个控制器和
外围设备之间的连接和管理。
AXI三种类型
用于高性能的存储器映射需求;
AXI4(AXI4-Full):
(存储器映射:主机在对从机进行读写操作时,指定一个目标地址,
这个地址对应系统存储空间的地址,表示对该空间进行读写操作);
用于低吞吐率存储器映射的通信
AXI4-Lite:简化版的AXI4接口
AXI4-Stream(ST):用于高速的流数据通信
AXI的工作方式
AXI4和AXI-Lie包含5个独立的通道
读地址通道
读数据通道
写地址通道
写数据通道
写响应通道
AXI三种类型
AXI4(AXI4-Ful1):用于高性能的存储器映射需求;
(存储器映射:主机在对从机进行读写操作时,指定一个目标地址,
这个地址对应系统存储空间的地址,表示对该空间进行读写操作)
AXI4-Lite:简化版的AXI4接口用于低吞吐率存储器映射的通信
AXI4-Stream:用于高速的流数据通信
AXI的优点
生产力
灵活性:AXI4(支持突发256)和AXI4-Lite(1个数据)都属于存储器映射AXI4-ST不属于存储器映射,它的突发长度不受限制
可获得性
AXI InterConnectAXI SmartConnect这两个IP核都用于连接单/多个存储器映射的AXI Master和单/多个存储器映射的AXI Slave
AXI4-Lite:和AXI4比较类似,但是不支持突发传输
AXI4-Stream:只有一个单一数据通道,和AXI4的写数据通道比较类似I
AXI4:由于读写地址通道是分离的,所以支持双向同时传输;突发长度最大256
突发长度不受限制。
AXI·DMA简介
概述
AXI DMA:AXI Direct Memory Access 直接内存访问AXIDMA为内存和AXI4-Stream外设之间提供了高带宽的直接内存访问其可选的s/G功能可以将cPu从数据搬运任务中解放出来
AXI DMA通过AX4-Lite接口对寄存器做一些配置和获取状态。
MM2S: MemoryMap to Stream 储器射 (AXI4-Ful1) 到AXI4-Stream
S2MM:Stream to MemoryMap AXI4-Stream到存储器映射 (AXI4-Full)
AXI DMA编程顺序
Direct Register Mode (简单DMA)
此模式提供了在MM2s和s2MM通道上进行简单DMA传输的配置,只需较少的FPGA资源,
通过访问DMACR、源地址或者目的地址和长度寄存器发起DMA传输。
当传输完成后,如果使能了产生中断输出,那么DMASR寄存器相关联的通道位会有效。
DMA的MM2s(存储器映射到stream)通道的启动顺序
1、开启/使能M2s通道
2、如果需要的话,可以使能中断
3、写一个有效的源地址到MM2s_SA寄存器
如果没有使能DRE的功能,在指定起始地址时,需要注意字节地址对齐,
哪些地址是对齐或者不对齐的,取决于stream流的数据位宽;
4、写传输的字节数到MM2sLENGTH寄存器
一个长度为0的值是无效的,而一个非0值,将会决定存储器映射到stream流
的数据个数。
需要注意的是,必须最后一个配置MM2sLENGTH寄存器,而其他寄存器的配置顺序没有要求。
S/G模式
它把传输的基本参数,存储在内存中;
这些参数就是被称为BD(Buffer Descriptor)
在工作时,通过sG接口加载和更新BD中的状态。
posted on 2026-06-25 18:33 taylorrrrrrrrrr 阅读(9) 评论(0) 收藏 举报
浙公网安备 33010602011771号