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

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

3天内不再提示

全面介绍ZYNQ-AXI互联IP

FPGA之家 来源:FPGA之家 作者:FPGA之家 2021-05-11 14:52 次阅读

学习内容

近期设计需要用到AXI总线的IP,所以就对应常用的IP进行简要的说明,本文主要对AXI互联IP进行介绍。

基础架构IP

基础的IP是用于帮助组装系统的构建块。基础架构IP往往是一个通用IP,它使用通用的AXI4接口在系统中移动或转换数据,而不解释数据。

这些基础的IP各自有自己的常用的功能,下面列举出一部分AXI接口的基础构架IP。

° AXI Register slices (for pipelining)用于流水线操作。° AXI FIFOs (for buffering/clock conversion)用于缓存和时钟转换。° AXI Interconnect IP and AXI SmartConnect IP (for connecting memory-mapped IP together)用于连接存储器映射的IP互连。

° 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) 用于仿真验证。

ce5a852e-b20b-11eb-bf61-12bb97331649.png

Xilinx AXI SmartConnect IP and AXI Interconnect IP(AXI互联IP)介绍

Xilinx AXI Interconnect IP和AXI SmartConnect IP都可以将一个或多个AXI存储器映射的主设备连接到一个或多个存储器映射的从设备。而使用AXI SmartConnect IP,更紧密地集成到Vivado设计环境中,用户以最小的用户干预自动配置和适应已连接的AXI主从IP。AXI互联IP(AXI SmartConnect IP and AXI Interconnect IP)可以用于所有的存储器映射设计中。

在某些情况下,对于高带宽应用程序,使用SmartConnect IP可以提供更好的优化。AXI SmartConnect IP通过综合针对重要接口进行优化的低区域自定义互连,在低延迟下提供最大的系统吞吐量。

AXI Interconnect IP(axi_interconnect)可以将一个或多个AXI存储器映射的主设备连接到一个或多个存储器映射的从设备。Interconnect 相对于SmartConnect IP更符合来自ARM的AMBA AXI4规范,包括AXI4-Lite 接口。

AXI Interconnect IP和AXI SmartConnect IP仅用于存储器映射传输。AXI4-Stream传输不适用。但可以使用AXI4-Stream Interconnect IP (axis_interconnect)。带有AXI4-Stream接口的IP通常彼此连接到DMA IP或者AXI4-Stream Interconnect IP上。

综上:对于中到高性能设计,推荐使用AXI SmartConnect IP,因为它在面积和时间上提供了更好的向上扩展。对于低性能(AX14-Lite)或中小型复杂性设计,AXI Interconnect IP可能更有效的面积。

AXI Interconnect IP使用方式

对于互联IP的使用,在xilinx的指导手册中提到了下述四种方式。

ce753a90-b20b-11eb-bf61-12bb97331649.png

1. Conversion Only(仅转换操作)

当一个主设备连接到一个从设备时,AXI Interconnect IP可以执行各种转换和流水线功能。这些操作如下述:

数据宽度转换

时钟速率转换

AXI4-Lite从机自适配

AXI4-3从机自适配

流水线,如寄存器或数据通道FIFO操作。

在这些情况下,AXI Interconnect IP不包含仲裁、解码或路由等逻辑。可能会导致延迟,延迟大小取决于正在执行的转换类型。

下图显示了一个转换的示例:

cea3126c-b20b-11eb-bf61-12bb97331649.png

2. N-to-1 Interconnect

AXI Interconnect IP的一个常见退化配置(或者我翻译为简化配置)是多个主设备为访问一个从设备(通常是一个内存控制器)进行仲裁。在这些情况下,地址解码逻辑可能是不必要的,并且在AXI Interconnect IP被省略(除非需要地址范围验证)。在这种配置下,还可以执行数据宽度和时钟速率转换等转换功能。N-to-1 AXI互联示例如下图所示:

ceef7b34-b20b-11eb-bf61-12bb97331649.png

3. 1-to-N Interconnect

AXI Interconnect IP的另一种退化配置(简化配置)是当一个主设备(通常是一个处理器)访问多个内存映射的从外围设备时。在这些情况下,仲裁(在地址和写数据路径)不执行。1 - N互联示例如下图所示:

cefaf46e-b20b-11eb-bf61-12bb97331649.png

4. N-to-M Interconnect (Sparse Crossbar Mode)

AXI Interconnect的N-to-M用例采用共享地址多数据(SAMD)拓扑,稀疏数据交叉连接,单线程写和读地址仲裁,如下图所示:

cf220ac2-b20b-11eb-bf61-12bb97331649.png

下图展示了稀疏交叉写和读数据路径:

cf38af5c-b20b-11eb-bf61-12bb97331649.png

根据配置的稀疏连接映射,并行写和读数据通道将每个SI插槽(连接到左边的AXI主机上)连接到它可以访问的所有MI插槽(连接到右边的AXI从机上)。当多个源有数据要发送到不同的目的地时,只要满足AXI排序规则,数据传输就可以独立并发地进行。在所有SI槽(如果> 1)中的写地址通道馈送到一个中心地址仲裁器,它一次授予对一个SI槽的访问权,对于读地址通道也是如此。

AXI4-Stream Interconnect Core IP介绍

AXI4-Stream Interconnect Core IP(axis_interconnect)将一个或多个AXI4-Stream主设备连接到一个或多个AXI4-Stream从设备。AXI4-Stream Interconnect Core IP 仅用于AXI4-Stream 传输;AXI4存储器映射传输不适用。

AXI4-Stream Interconnect Core 内部框图

cff49276-b20b-11eb-bf61-12bb97331649.png

AXI4-Stream Interconnect Core IP由SI、MI和包括它们之间的AXI通道的功能单元组成。

SI接受来自连接的主设备的事务请求。

MI向从设备发送事务。

在中心是交换机,它仲裁和路由连接到SI和MI的各种设备之间的通信

AXI4-Stream Interconnect Core IP还包括位于交换机和每个SI和MI接口之间的其他功能单元,可选择性地执行各种转换和存储功能。该开关有效地将AXI4-Stream Interconnect Core IP从SI相关功能单元(SI半球)和MI相关单元(MI半球)中间分开。这个架构类似于AXI Interconnect IP的架构。

AXI4-Stream Interconnect IP使用方式

AXI4-Stream Interconnect IP将一个或多个AXI4-Stream主设备连接到一个或多个AXI4-Stream从设备。对于AXI4-Stream Interconnect IP,主要有两种使用方式:

流数据路由和交换

流多路复用和去多路复用

Streaming Data Routing and Switching (Crossbar Mode)流数据路由和交换

ax14流互连可以实现N × M全交叉开关,如下图所示。它支持从端仲裁,能够在N个主服务器和M个从服务器之间并行数据传输。解码器和仲裁者服务于主从之间的路由数据传输交互。

d0021220-b20b-11eb-bf61-12bb97331649.png

Stream Multiplexing and De-multiplexing(流多路复用和去多路复用)

你可以在Nx1配置中将AXI4-Stream Interconnect IP配置为一起多路传输流,然后配置为1xM来解多路传输流。使用多路复用和多路复用解复用来创建多通道流,其中较小数量的导线可以携带来自多个主从的共享流量。

例如,在下面的图中,AX14-Stream互连与AXI虚拟FIFO控制器一起用于从多个端点主从复用和解复用多个流。

d028b2d6-b20b-11eb-bf61-12bb97331649.png

Reference

正点原子讲解视频

UG1037

Vuko csdn博客同步更新~

欢迎大家关注我的博客。如果需要工程微信后台留言即可~

学习内容

近期设计需要用到AXI总线的IP,所以就对应常用的IP进行简要的说明,本文主要对AXI互联IP进行介绍。

基础架构IP

基础的IP是用于帮助组装系统的构建块。基础架构IP往往是一个通用IP,它使用通用的AXI4接口在系统中移动或转换数据,而不解释数据。

这些基础的IP各自有自己的常用的功能,下面列举出一部分AXI接口的基础构架IP。

° AXI Register slices (for pipelining)用于流水线操作。° AXI FIFOs (for buffering/clock conversion)用于缓存和时钟转换。° AXI Interconnect IP and AXI SmartConnect IP (for connecting memory-mapped IP together)用于连接存储器映射的IP互连。° 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) 用于仿真验证。

ce5a852e-b20b-11eb-bf61-12bb97331649.png

Xilinx AXI SmartConnect IP and AXI Interconnect IP(AXI互联IP)介绍

Xilinx AXI Interconnect IP和AXI SmartConnect IP都可以将一个或多个AXI存储器映射的主设备连接到一个或多个存储器映射的从设备。而使用AXI SmartConnect IP,更紧密地集成到Vivado设计环境中,用户以最小的用户干预自动配置和适应已连接的AXI主从IP。AXI互联IP(AXI SmartConnect IP and AXI Interconnect IP)可以用于所有的存储器映射设计中。

在某些情况下,对于高带宽应用程序,使用SmartConnect IP可以提供更好的优化。AXI SmartConnect IP通过综合针对重要接口进行优化的低区域自定义互连,在低延迟下提供最大的系统吞吐量。

AXI Interconnect IP(axi_interconnect)可以将一个或多个AXI存储器映射的主设备连接到一个或多个存储器映射的从设备。Interconnect 相对于SmartConnect IP更符合来自ARM的AMBA AXI4规范,包括AXI4-Lite 接口。

AXI Interconnect IP和AXI SmartConnect IP仅用于存储器映射传输。AXI4-Stream传输不适用。但可以使用AXI4-Stream Interconnect IP (axis_interconnect)。带有AXI4-Stream接口的IP通常彼此连接到DMA IP或者AXI4-Stream Interconnect IP上。

综上:对于中到高性能设计,推荐使用AXI SmartConnect IP,因为它在面积和时间上提供了更好的向上扩展。对于低性能(AX14-Lite)或中小型复杂性设计,AXI Interconnect IP可能更有效的面积。

AXI Interconnect IP使用方式

对于互联IP的使用,在xilinx的指导手册中提到了下述四种方式。

ce753a90-b20b-11eb-bf61-12bb97331649.png

1. Conversion Only(仅转换操作)

当一个主设备连接到一个从设备时,AXI Interconnect IP可以执行各种转换和流水线功能。这些操作如下述:

数据宽度转换

时钟速率转换

AXI4-Lite从机自适配

AXI4-3从机自适配

流水线,如寄存器或数据通道FIFO操作。

在这些情况下,AXI Interconnect IP不包含仲裁、解码或路由等逻辑。可能会导致延迟,延迟大小取决于正在执行的转换类型。

下图显示了一个转换的示例:

cea3126c-b20b-11eb-bf61-12bb97331649.png

2. N-to-1 Interconnect

AXI Interconnect IP的一个常见退化配置(或者我翻译为简化配置)是多个主设备为访问一个从设备(通常是一个内存控制器)进行仲裁。在这些情况下,地址解码逻辑可能是不必要的,并且在AXI Interconnect IP被省略(除非需要地址范围验证)。在这种配置下,还可以执行数据宽度和时钟速率转换等转换功能。N-to-1 AXI互联示例如下图所示:

ceef7b34-b20b-11eb-bf61-12bb97331649.png

3. 1-to-N Interconnect

AXI Interconnect IP的另一种退化配置(简化配置)是当一个主设备(通常是一个处理器)访问多个内存映射的从外围设备时。在这些情况下,仲裁(在地址和写数据路径)不执行。1 - N互联示例如下图所示:

cefaf46e-b20b-11eb-bf61-12bb97331649.png

4. N-to-M Interconnect (Sparse Crossbar Mode)

AXI Interconnect的N-to-M用例采用共享地址多数据(SAMD)拓扑,稀疏数据交叉连接,单线程写和读地址仲裁,如下图所示:

cf220ac2-b20b-11eb-bf61-12bb97331649.png

下图展示了稀疏交叉写和读数据路径:

cf38af5c-b20b-11eb-bf61-12bb97331649.png

根据配置的稀疏连接映射,并行写和读数据通道将每个SI插槽(连接到左边的AXI主机上)连接到它可以访问的所有MI插槽(连接到右边的AXI从机上)。当多个源有数据要发送到不同的目的地时,只要满足AXI排序规则,数据传输就可以独立并发地进行。在所有SI槽(如果> 1)中的写地址通道馈送到一个中心地址仲裁器,它一次授予对一个SI槽的访问权,对于读地址通道也是如此。

AXI4-Stream Interconnect Core IP介绍

AXI4-Stream Interconnect Core IP(axis_interconnect)将一个或多个AXI4-Stream主设备连接到一个或多个AXI4-Stream从设备。AXI4-Stream Interconnect Core IP 仅用于AXI4-Stream 传输;AXI4存储器映射传输不适用。

AXI4-Stream Interconnect Core 内部框图

cff49276-b20b-11eb-bf61-12bb97331649.png

AXI4-Stream Interconnect Core IP由SI、MI和包括它们之间的AXI通道的功能单元组成。

SI接受来自连接的主设备的事务请求。

MI向从设备发送事务。

在中心是交换机,它仲裁和路由连接到SI和MI的各种设备之间的通信。

AXI4-Stream Interconnect Core IP还包括位于交换机和每个SI和MI接口之间的其他功能单元,可选择性地执行各种转换和存储功能。该开关有效地将AXI4-Stream Interconnect Core IP从SI相关功能单元(SI半球)和MI相关单元(MI半球)中间分开。这个架构类似于AXI Interconnect IP的架构。

AXI4-Stream Interconnect IP使用方式

AXI4-Stream Interconnect IP将一个或多个AXI4-Stream主设备连接到一个或多个AXI4-Stream从设备。对于AXI4-Stream Interconnect IP,主要有两种使用方式:

流数据路由和交换

流多路复用和去多路复用

Streaming Data Routing and Switching (Crossbar Mode)流数据路由和交换

ax14流互连可以实现N × M全交叉开关,如下图所示。它支持从端仲裁,能够在N个主服务器和M个从服务器之间并行数据传输。解码器和仲裁者服务于主从之间的路由数据传输交互。

d0021220-b20b-11eb-bf61-12bb97331649.png

Stream Multiplexing and De-multiplexing(流多路复用和去多路复用)

你可以在Nx1配置中将AXI4-Stream Interconnect IP配置为一起多路传输流,然后配置为1xM来解多路传输流。使用多路复用和多路复用解复用来创建多通道流,其中较小数量的导线可以携带来自多个主从的共享流量。

例如,在下面的图中,AX14-Stream互连与AXI虚拟FIFO控制器一起用于从多个端点主从复用和解复用多个流。

d028b2d6-b20b-11eb-bf61-12bb97331649.png

编辑:jq

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

    关注

    112

    文章

    16073

    浏览量

    176980
  • 数据
    +关注

    关注

    8

    文章

    6792

    浏览量

    88725
  • IP
    IP
    +关注

    关注

    5

    文章

    1599

    浏览量

    149224
  • fifo
    +关注

    关注

    3

    文章

    386

    浏览量

    43484

原文标题:ZYNQ-AXI互联IP介绍

文章出处:【微信号:zhuyandz,微信公众号:FPGA之家】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    芯驿电子 ALINX 推出全新 IP 核产品线,覆盖 TCP/UDP/NVMe AXI IP

    10GBe/40GBe UDP 协议栈 IP 核、10GbE TCP/IP 协议栈 IP 核和 NVMe AXI IP 核。   ALIN
    的头像 发表于 10-30 17:39 142次阅读
     芯驿电子 ALINX 推出全新 <b class='flag-5'>IP</b> 核产品线,覆盖 TCP/UDP/NVMe <b class='flag-5'>AXI</b> <b class='flag-5'>IP</b> 核

    AMBA AXI4接口协议概述

    AMBA AXI4(高级可扩展接口 4)是 ARM 推出的第四代 AMBA 接口规范。AMD Vivado Design Suite 2014 和 ISE Design Suite 14 凭借半导体产业首个符合 AXI4 标准的即插即用型
    的头像 发表于 10-28 10:46 111次阅读
    AMBA <b class='flag-5'>AXI</b>4接口协议概述

    GPS定位与IP地址定位的互联策略

    虽然GPS定位和IP地址定位在原理、精度以及应用场景上存在差异,但如果有一种互联的策略实施,两者的优势可以互补,由此也可以构建起更为灵活的定位解决方案。 GPS定位和IP地址定位的技术基础截
    的头像 发表于 10-11 10:03 185次阅读

    东京裸机云多IP服务器全面分析

    东京裸机云多IP服务器是一种提供多IP地址分配和高性能网络服务的云计算解决方案,广泛应用于需要多IP管理和高稳定性的网络应用。下面将从几个方面具体介绍东京裸机云多
    的头像 发表于 07-22 09:49 264次阅读

    Xilinx NVMe AXI4主机控制器,AXI4接口高性能版本介绍

    NVMe AXI4 Host Controller IP可以连接高速存储PCIe SSD,无需CPU,自动加速处理所有的NVMe协议命令,具备独立的数据写入和读取AXI4接口,不但适用高性能、顺序
    的头像 发表于 07-18 09:17 440次阅读
    Xilinx NVMe <b class='flag-5'>AXI</b>4主机控制器,<b class='flag-5'>AXI</b>4接口高性能版本<b class='flag-5'>介绍</b>

    Xilinx ZYNQ 动手实操演练

    带宽AMBA®-AXI互联能以极低的功耗支持千兆位级数据传输,从而解决了控制、数据、I/O和存储器之间的常见性能瓶颈问题。 编程环境 Zynq-7000系列提供了一个开放式设计环境,便于可编程逻辑中
    发表于 05-03 19:28

    FPGA通过AXI总线读写DDR3实现方式

    AXI总线由一些核心组成,包括AXI主处理器接口(AXI4)、AXI处理器到协处理器接口(AXI4-Lite)、
    发表于 04-18 11:41 1187次阅读

    AMBA总线之AXI设计的关键问题讲解

    首先我们看一下针对AXI接口的IP设计,在介绍之前我们先回顾一下AXI所具有的一些feature。
    的头像 发表于 02-20 17:12 1537次阅读
    AMBA总线之<b class='flag-5'>AXI</b>设计的关键问题讲解

    漫谈AMBA总线-AXI4协议的基本介绍

    本文主要集中在AMBA协议中的AXI4协议。之所以选择AXI4作为讲解,是因为这个协议在SoC、IC设计中应用比较广泛。
    发表于 01-17 12:21 2005次阅读
    漫谈AMBA总线-<b class='flag-5'>AXI</b>4协议的基本<b class='flag-5'>介绍</b>

    AD9683的引脚如何与zynq 7015芯片中的JESD204 ip核端口对应相连?

    目前,我在设计中想使用ZYNQ 7015系列的FPGA,利用JESD204 IP核接收A/D转换器AD9683转换完成后的数据。但是JESD204 IP核的端口很多,我不知道应该如何将AD9683
    发表于 12-15 07:14

    AXI通道读写DDR的阻塞问题?

    基于vivado2020.1和zcu102开发板(rev1.1)开发项目,工程涉及DDR4(MIG)和PL端多个读写接口交互的问题,通过AXI interconnect进行互联和仲裁(采用默认配置)。
    的头像 发表于 12-01 09:04 902次阅读
    <b class='flag-5'>AXI</b>通道读写DDR的阻塞问题?

    使用 PCIE 更新 AMD ZYNQ™ 的 QSPI Flash 参考设计

    简介 AMD ZYNQ™ 7000 的 S_AXI 端口提供了外设访问 PS 内部外设控制器的接口,这其中包括 4 个 S_AXI_HP 端口以及两个 S_AXI_GP 端口。一般来说
    发表于 11-30 18:49

    XILINX FPGA IPAXI Traffic Generator

    AXI Traffic Generator IP 用于在AXI4和AXI4-Stream互连以及其他AXI4系统外设上生成特定序列(流量)。
    的头像 发表于 11-23 16:03 2226次阅读
    XILINX FPGA <b class='flag-5'>IP</b>之<b class='flag-5'>AXI</b> Traffic Generator

    使用PCIE更新AMD ZYNQ的QSPI Flash参考设计

    AMD ZYNQ 7000 的 S_AXI 端口提供了外设访问 PS 内部外设控制器的接口,这其中包括 4 个 S_AXI_HP 端口以及两个 S_AXI_GP 端口。一般来说,可以访
    的头像 发表于 11-17 10:02 1138次阅读
    使用PCIE更新AMD <b class='flag-5'>ZYNQ</b>的QSPI Flash参考设计

    基于zynq7020器件来搭建Linux系统

    Zynq器件将arm和FPGA结合,利用了两者各自的优势,arm可以实现灵活的控制,而FPGA部分可以实现算法加速,这大大扩展了zynq的应用。比如深度学习加速,图像处理等等。PL侧表示FPGA的逻辑部分,PS侧为arm端以及一些AXI
    发表于 11-09 11:28 2366次阅读
    基于<b class='flag-5'>zynq</b>7020器件来搭建Linux系统