0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Xilinx zynq AXI总线全面解读

电子设计 来源:FPGA技术联盟 作者:默宸 2020-12-04 12:22 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

AXI (Advanced eXtensible Interface) 本是由ARM公司提出的一种总线协议, Xilinx从 6 系列的 FPGA 开始对 AXI 总线提供支持,目前使用 AXI4 版本。

AXI总线

ZYNQ有三种AXI总线:

(A)AXI4:(For high-performance memory-mapped requirements.)主要面向高性能地址映射通信的需求,是面向地址映射的接口,允许最大256轮的数据突发传输;

(B)AXI4-Lite:(For simple, low-throughput memory-mapped communication )是一个轻量级的地址映射单次传输接口,占用很少的逻辑单元。

(C)AXI4-Stream:(For high-speed streaming data.)面向高速流数据传输;去掉了地址项,允许无限制的数据突发传输规模。

AXI4总线和AXI4-Lite总线具有相同的组成部分:

① 读地址通道,包含ARVALID, ARADDR, ARREADY信号

② 读数据通道,包含RVALID, RDATA, RREADY, RRESP信号;

③ 写地址通道,包含AWVALID,AWADDR, AWREADY信号;

④ 写数据通道,包含WVALID, WDATA,WSTRB, WREADY信号;

⑤ 写应答通道,包含BVALID, BRESP, BREADY信号;

⑥ 系统通道,包含:ACLK,ARESETN信号。

而AXI4-Stream总线的组成有:

① ACLK信号:总线时钟,上升沿有效;

② ARESETN信号:总线复位,低电平有效

③ TREADY信号:从机告诉主机做好传输准备;

④ TDATA信号:数据,可选宽度32,64,128,256bit

⑤ TSTRB信号:每一bit对应TDATA的一个有效字节,宽度为TDATA/8

⑥ TLAST信号:主机告诉从机该次传输为突发传输的结尾;

⑦ TVALID信号:主机告诉从机数据本次传输有效;

⑧ TUSER信号 :用户定义信号,宽度为128bit。

AXI接口

AXI有三种接口:

(A)AXI-GP接口(4个):是通用的AXI接口,包括两个32位主设备接口和两个32位从设备接口,用过该接口可以访问PS中的片内外设。

(B)AXI-HP接口(4个):是高性能/带宽的标准的接口,PL模块作为主设备连接(从下图中箭头可以看出)。主要用于PL访问PS上的存储器(DDR和On-Chip RAM

(C)AXI-ACP接口(1个):是ARM多核架构下定义的一种接口,中文翻译为加速器一致性端口,用来管理DMA之类的不带缓存的AXI外设,PS端是Slave接口。

AXI协议

协议的制定是要建立在总线构成之上的。因此说AXI4,AXI4-Lite,AXI4-Stream都AXI4协议。AXI总线协议的两端可以分为分为主(master)、从(slave)两端,他们之间一般需要通过一个AXI Interconnect相连接,作用是提供将一个或多个AXI主设备连接到一个或多个AXI从设备的一种交换机制。

AXI Interconnect的主要作用是,当存在多个主机以及从机器时,AXIInterconnect负责将它们联系并管理起来。由于AXI支持乱序发送,乱序发送需要主机的ID信号支撑,而不同的主机发送的ID可能相同,而AXI Interconnect解决了这一问题,他会对不同主机的ID信号进行处理让ID变得唯一。

AXI协议将读地址通道,读数据通道,写地址通道,写数据通道,写响应通道分开,各自通道都有自己的握手协议。每个通道互不干扰却又彼此依赖。这是AXI高效的原因之一。

01:AXI握手协议

AXI4 所采用的是一种 READY,VALID 握手通信机制,简单来说主从双方进行数据通信前,有一个握手的过程。传输源产生 VLAID 信号来指明何时数据或控制信息有效。

而目地源产生READY信号来指明已经准备好接受数据或控制信息。 传输发生在VALID和 READY信号同时为高的时候。

如下图中的一种实例:

02:突发式读写

突发式读的时序:

当地址出现在地址总线后,传输的数据将出现在读数据通道上。设备保持VALID 为低直到读数据有效。为了表明一次突发式读写的完成,设备用 RLAST 信号来表示最后一个被传输的数据。

突发式写的时序:

这一过程的开始时,主机发送地址和控制信息到写地址通道中,然后主机发送每一个写数据到写数据通道中。当主机发送最后一个数据时,WLAST 信号就变为高。当设备接收完所有数据之后他将一个写响应发送回主机来表明写事务完成。

编辑:hfy
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Xilinx
    +关注

    关注

    73

    文章

    2192

    浏览量

    129938
  • 总线协议
    +关注

    关注

    0

    文章

    155

    浏览量

    15558
  • Zynq
    +关注

    关注

    10

    文章

    625

    浏览量

    49239
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    利用开源uart2axi4实现串口访问axi总线

    microblaze和jtag-to-axi(jtag2axi)虽然也提供了访问axi总线的能力,但是依赖于xilinx平台。而uart-t
    的头像 发表于 12-02 10:05 1574次阅读
    利用开源uart2<b class='flag-5'>axi</b>4实现串口访问<b class='flag-5'>axi</b><b class='flag-5'>总线</b>

    NVMe高速传输之摆脱XDMA设计44:工程设计考量?

    和复位接口外, 有两个 AXI 总线接口, 分别连接到 axi_uart 模块和 NoPHAE 模块。 axi_uart模块为 Xilinx
    发表于 11-12 09:52

    利用蜂鸟E203搭建SoC【1】——AXI总线的配置与板级验证

    融合进BD设计流程,第一步需要对其总线进行配置以便于后续的SoC搭建。 蜂鸟e203内部使用的是icb总线,这种总线协议与AXI类似,都采用了握手信号进行传输,相对易于转换;此外,
    发表于 10-30 07:35

    将e203 例化AXI总线接口

    将系统外设总线内部axi接口引出给gpio,注意vivado中gpio地址分配应保证移植 Debug: 通过Xil_Out32函数给gpio的地址写1或者0,注意这里地址是gpio地址也就是核中给
    发表于 10-29 06:08

    AXI GPIO扩展e203 IO口简介

    AXI GPIO简介 AXI-GPIO是一种Xilinx公司开发的外设IP,可以连接到AXI总线上,并提供GPIO(General Purp
    发表于 10-22 08:14

    RTthread怎么加载zynq的支持包?

    RTthread有xilinx zynq的芯片支持包了么,SDK管理器里面怎么下载ZYNQ的支持包呢?求助
    发表于 09-23 06:05

    RDMA简介8之AXI分析

    AXI4 总线是第四代 AXI 总线,其定义了三种总线接口,分别为:AXI4、
    的头像 发表于 06-24 23:22 456次阅读
    RDMA简介8之<b class='flag-5'>AXI</b>分析

    RDMA简介9之AXI 总线协议分析2

    ​ 这里以功能完备的 AXI4 接口举例说明 AXI4 总线的相关特点。AXI4 总线采用读写通道分离且数据通道与控制通道分离的方式,这样的
    发表于 06-24 18:02

    RDMA简介8之AXI 总线协议分析1

    AXI 总线是一种高速片内互连总线,其定义于由 ARM 公司推出的 AMBA 协议中,主要用于高性能、高带宽、低延迟、易集成的片内互连需求。AXI4
    发表于 06-24 18:00

    NVMe IP之AXI4总线分析

    广泛应用 。随着时间的推移,AXI4的影响不断扩大。目前,由Xilinx提供的大部分IP接口都支持AXI4总线,使得系统中不同模块之间的互连更加高效。这也让基于这些IP的开发变得更加快
    发表于 06-02 23:05

    NVMe简介之AXI总线

    NVMe需要用AXI总线进行高速传输。而AXI总线是ARM公司提出的AMBA(Advanced Microcontroller Bus Architecture)协议中的重要组成部分,
    的头像 发表于 05-21 09:29 586次阅读
    NVMe简介之<b class='flag-5'>AXI</b><b class='flag-5'>总线</b>

    NVMe协议简介之AXI总线

    NVMe需要用AXI总线进行高速传输。这里,AXI总线是ARM公司提出的AMBA(Advanced Microcontroller Bus Architecture)协议中的重要组成部
    发表于 05-17 10:27

    AXI接口FIFO简介

    AXI接口FIFO是从Native接口FIFO派生而来的。AXI内存映射接口提供了三种样式:AXI4、AXI3和AXI4-Lite。除了Na
    的头像 发表于 03-17 10:31 1777次阅读
    <b class='flag-5'>AXI</b>接口FIFO简介

    ZYNQ基础---AXI DMA使用

    Xilinx官方也提供有一些DMA的IP,通过调用API函数能够更加灵活地使用DMA。 1. AXI DMA的基本接口 axi dma IP的基本结构如下,主要分为三个部分,分别是控制axi
    的头像 发表于 01-06 11:13 3584次阅读
    <b class='flag-5'>ZYNQ</b>基础---<b class='flag-5'>AXI</b> DMA使用

    基于Xilinx ZYNQ7000 FPGA嵌入式开发实战指南

    电子发烧友网站提供《基于Xilinx ZYNQ7000 FPGA嵌入式开发实战指南.pdf》资料免费下载
    发表于 12-10 15:31 39次下载