ZYNQ学习之pl和ps接口

news/2024/12/22 18:25:11/

1、PL和PS的接口类型总共有两种:

(1)功能接口:AXI、EMIO、中断、DMA流控制、时钟调试接口。

(2)配置接口:PCAP、SEU、配置状态信号和Program/Done/Init信号。这些信号连接到PL内配置模块的固定逻辑上,给PS提供对PL的控制能力。

2、AXI总线:AXI (Advanced eXtensible Interface)本是由ARM公司提出的一种总线协议。用于PL和PS之间的通信。

总线:是一组传输通道,是各种逻辑器件构成的传输数据的通道,一般由由数据线、地址线、控制线等构成。

接口:是一种连接标准,又常常被称之为物理接口。

协议:就是传输数据的规则

(1)AXI总线:在ZYNQ中有支持三种AXI总线

AXI4:(For high-performance memory-mapped requirements.)主要面向高性能地址映射通信的需求,是面向地址映射的接口,允许最大256轮的数据突发传输;
AXI4-Lite:(For simple, low-throughput memory-mapped communication )是一个轻量级的地址映射单次传输接口,占用很少的逻辑单元。
AXI4-Stream:(For high-speed streaming data.)面向高速流数据传输;去掉了地址项,允许无限制的数据突发传输规模。

(2)zynq的AXI接口共有9个,包括如下类型:

1)AXI_ACP接口:加速器一致性接口,用来管理DMA之类不带缓冲的AXI外设,PS端是Slave接口。

通过该接口PL端可以直接访问PS部分cache,故PL逻辑可以直接从cache中拿到CPU的计算结果,同时也可以进一步第一时间将计算的逻辑加速运算的结果送至CPU。

2)AXI_HP接口:高性能/带宽的AXI3.0标准接口,共有4个,PL模块作为主设备连接。。主要用于PL访问PS上的存储器(DDR和On-Chip RAM)。

AXI-HP接口主要是为了PL访问PS上的存储器(DDR和on-chip RAM)而设计的高速数据通路。AXI-HP端口分为两部分一部分直接和PL相连,另一部分连接到AXI interconnect。例如视频处理时,高清的图像有FPGA直接采集处理,然后通过AXI-HP接口将数据传输到DDR中,供APU完成进一步图像处理。

3)AXI_GP接口:通用AXI接口,共有4个,包括两个32位主设备接口和两个32位从设备接口。

(3)AXI协议

AXI总线协议的两端可以分为分为主(master)、从(slave)两端,他们之间一般需要通过一个AXI Interconnect相连接,作用是提供将一个或多个AXI主设备连接到一个或多个AXI从设备的一种交换机制。AXI Interconnect的主要作用是,当存在多个主机以及从机器时,AXIInterconnect负责将它们联系并管理起来。由于AXI支持乱序发送,乱序发送需要主机的ID信号支撑,而不同的主机发送的ID可能相同,而AXI Interconnect解决了这一问题,他会对不同主机的ID信号进行处理让ID变得唯一。

(4)AXI协议之握手协议

AXI4 所采用的是一种 READY,VALID 握手通信机制,简单来说主从双方进行数据通信前,有一个握手的过程。传输源产生 VLAID 信号来指明何时数据或控制信息有效。而目地源产生 READY 信号来指明已经准备好接受数据或控制信息。传输发生在 VALID和 READY 信号同时为高的时候。VALID 和 READY 信号的出现有三种关系。

1) VALID 先变高 READY 后变高

2) READY 先变高 VALID 后变高

3) VALID 和 READY 信号同时变高

3、 AXI4-Lite 详解

(1)先要自定义一个AXI-Lite的IP,新建工程之后,选择,菜单栏->Tools->Creat and Package IP。

(2)next - 选择Create AXI4 Peripheral,然后Next - 默认,选择Next - 这里接口类型选择Lite,选择Next - 选择Edit IP,点击Finish - 此后,Vivado会新建一个工程,专门编辑该IP,通过该工程,我们就可以看到Vivado为我们生成的AXI-Lite的操作源码。

(3)代码分析:

 

 

 文章转自:https://blog.csdn.net/zhongjianblackberry/article/details/79456338


http://www.ppmy.cn/news/314963.html

相关文章

API接口之webservice接口

一、准备工作:apache cxf,axis,httpclient等,目前流行是用cxf,本节也是用cxf实现 1.引入apache cxf包,点击----->apache-cxf-2.6.16下载 2.下载完成后解压放入项目lib目录下重新编译,如下图 二、实现方法: 1.webs…

xilinx PYNQ PS与PL的接口说明

PS/PL Interfaces Zynq在PS和PL之间有9个AXI接口。 在PL方面,有4x AXI Master HP(高性能)端口,2x AXI GP(通用)端口,2x AXI Slave GP端口和1x AXI Master ACP端口。 PS中还有连接到PL的GPIO控制…

ZYNQ开发系列——使用AXI4LITE接口进行PS和PL交互

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 ZYNQ开发系列——使用AXI4LITE接口进行PS和PL交互 前言PS端AXI接口AXI4LITE slave模块的设计后记 前言 前面我们讲到使用AXI4LITE来作为总线接口来实现PS和PL的交互。同时我…

ZYNQ 应用笔记(2)PS/PL接口

相比传统的SOC 芯片,Xilinx 公司ZYNQ 的最大优势在于,除了内嵌的硬核ARM 处理器自带的IO接口之外,能够利用FPGA 自由地构建符合应用需求的IO外设和基于verilog/HDL的算法。这给嵌入式系统设计带来的巨大的灵活性。 ZYNQ 分成所谓的Processing…

面向对象——接口

接口:接口是一种用来定义程序的协议,它描述可属于任何类或结构的一组相关行为,可以把它看成是实现一组类的模板。接口可有方法、属性、事件和索引器或这4种成员类型的任何组合构成,但不能包含字段。 类和结构可以像类继承基类一样…

PS4 eye camera v2 ROS测试

For the I-RC ps4 eye camera 是一款性价比很高的双目摄像头,之前已经有人设计完成了一代产品的ROS驱动程序,代码见GitHub[1],今天要测试的是去年发布的新款摄像头. 一代摄像头二代摄像头 ps4 camera 接口是USB3.0 的一个衍生版本,需要进…

PS2接口协议及代码分析

一.电气特性 1 DATA Key Data 2 n/c Not connected 3 GND Gnd 4 VCC Power , 5 VDC 5 CLK Clock 6 n/c Not connected 二.数据格式 1个起始位 总是逻辑0 8个数据位 (LSB)低位在前 1个奇偶校验位 奇校验 1个停止位 总…

jmeter接口测试

jmeter进行http接口测试的主要步骤(1.添加线程组 2.添加http请求 3.在http请求中写入接口的URL,路径,请求方式,参数 4.添加查看结果树 5.调用接口,查看返回值) 针对接口添加header在如下途径添加&#xff…