ZYNQ PS和PL交互

ZYNQ PS和PL交互



前言


一、交互方式

在这里插入图片描述

1.1 GP接口

AXIM_GP:属于AXI-lite协议。适用于少量数据
在这里插入图片描述
一般不用AXI-FIFO作为数据交互,因为互联模块本身也有FIFO(但是空间小)。大量数据其实也就不用这种方式。

1.2 PS AXI_MASTER

在这里插入图片描述

1.3 PS AXI_SLAVE

在这里插入图片描述

1.4 HP接口和ACP接口

适用快速、大量数据传输交互

二 GP接口应用

使用一个GP接口实现对PL端的BRAM的读写
Vivado Block Memory Generator v8.4学习总结
GP接口
通过BRAM实现PS与PL数据交互

代码如下:

`timescale 1ns / 1ps

module RAM_WR#(
    parameter       P_OPERATION_NUM = 40    ,
    parameter       P_DATA_WIDTH    = 32    ,
    parameter       P_WRITE_BASEADDR= 0     ,
    parameter       P_READ_BASEADDR = 40    
)(
    input           i_clk           ,
    input           i_rst      
### Zynq PSPL交互机制 Zynq SoC集成了ARM处理器子系统(PS)FPGA可编程逻辑(PL),两者之间提供了多种高效的数据交换路径[^1]。 #### 一、主要交互方式 ##### 1.1 GP接口 通用目的(GP)接口允许PS访问PL中的外设寄存器,支持低带宽控制信号传输。GP接口分为两组:一组用于连接外部设备;另一组专供内部使用。 ##### 1.2 PS AXI_MASTER 此模式下,PS作为主控方发起对PL内存储器映射区域的操作请求。该通道适用于需要较高性能的应用场景,比如图像处理或视频流传输等大容量数据搬运任务。 ##### 1.3 PS AXI_SLAVE 当PL侧需主动向PS发送信息时,则可通过AXI从属接口实现反向通信功能。这种方式常被用来报告状态变化或是触发中断事件给CPU核心。 ##### 1.4 HP/ACP接口 高优先级(High Performance Point-to-point,简称HP)以及加速一致性端口(Accelerator Coherency Port, ACP)提供更优的延迟表现及更高的吞吐量特性,特别适合于那些对于实时性效率有严格要求的任务执行环境。 #### 二、具体应用场景下的配置实例 针对不同需求可以选择合适的技术手段来完成特定的功能开发: - **BRAM共享内存**:利用内置双端口RAM构建简单而有效的双向通讯桥梁,在某些情况下甚至可以省去额外设置DMA控制器的工作负担[^2]。 - **AXI Stream FIFO**:面向高速串行化数据流转设计的一种优化方案,它能够很好地适应诸如音频采样之类连续不断的输入输出操作流程[^3]. - **DMA引擎驱动的大规模数据搬移**:借助专用硬件模块自动管理大量资料位移过程,从而减轻CPU负载并提高整体工作效率. ```c++ // 使用Vitis编写简单的PSPL DMA传输示例代码片段 #include "xparameters.h" #include "xdma_example.h" int main() { int Status; // 初始化DMA IP核 XDma_Initialize(&DmaInstancePtr); // 设置源地址为DDR内存区某位置 SourceAddress = XPAR_PS7_DDR_0_S_AXI_BASEADDR + OFFSET; // 设定目标地址指向PL内的缓冲空间 DestinationAddress = XPAR_FABRIC_PL_TARGET_ADDR; // 启动一次单次传送事务 Status = XDma_StartTransfer(DmaInstancePtr, (u32*)SourceAddress, (u32*)DestinationAddress, TRANSFER_SIZE); return Status; } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值