AXI Interconnect IP核的连接模式简介

AXI Interconnect IP核内部包含一个 Crossbar IP核,用于在 Slave Interfaces(SI)和 Master Interfaces(MI)之间路由传输。在连接 SI 或 MI 到 Crossbar 的每条路径上,可以选择性地添加一系列 AXI Infrastructure cores(耦合器),以执行各种转换和缓冲功能。这些耦合器包括 Register Slice、Data FIFO、Clock Converter、Data Width Converter 和 Protocol Converter。

这些耦合器的功能如下:

  • Register Slice:通常用于在数据路径中插入一个或多个寄存器级延迟,以便满足时序要求或进行数据缓冲。
  • Data FIFO:用于在数据传输过程中提供缓冲,以确保数据流的连续性和稳定性。当主设备和从设备之间的数据传输速率不匹配时,Data FIFO 可以起到平衡作用。
  • Clock Converter:当主设备和从设备在不同的时钟域中运行时,Clock Converter 负责将数据从一个时钟域转换到另一个时钟域,以确保数据的正确同步和传输。
  • Data Width Converter:当主设备和从设备的数据宽度不同时,Data Width Converter 负责将数据从一个数据宽度转换到另一个数据宽度,以便在它们之间进行数据传输。
  • Protocol Converter:当主设备和从设备使用不同的 AXI 子协议(如 AXI4、AXI3 或 AXI4-Lite)时,Protocol Converter 负责在它们之间进行协议转换,以确保数据的正确传输。

AXI Interconnect IP核可以根据需要进行配置,以支持最多16个Slave Interfaces (SI) 和最多16个Master Interfaces (MI)。每个SI连接到一个AXI主设备,用于接收写和读事务请求。每个MI则连接到一个AXI从设备,并向从设备发出事务。

在AXI Interconnect IP核的中心是交叉开关(crossbar)IP核,它负责在SI和MI之间的所有AXI通道上路由传输。在SI和交叉开关之间或交叉开关和MI之间的每条路径上,可以有一个或多个基础核(infrastructure cores),它们执行各种转换和存储功能。

交叉开关有效地将AXI Interconnect IP核在SI相关功能单元(SI半球)和MI相关单元(MI半球)之间进行了分隔。

AXI Interconnect IP核的使用模型非常灵活,它可以将一个或多个AXI内存映射主设备连接到一个或多个内存映射从设备。每个连接的主设备可能是发起AXI事务的IP核(端点主设备),或者是上游AXI Interconnect IP核的级联主接口。每个连接的从设备可能是AXI事务的最终目标(端点从设备),或者是下游AXI Interconnect IP核的级联从接口。此外,连接的主设备或从设备也可以是AXI基础转换/存储 IP核之一,尽管这些功能通常在AXI Interconnect IP核内部执行,以避免顶层设计的混乱。

每个AXI Interconnect IP核都可以配置为执行以下一般连接模式之一:

  • N-to-1 互联
  • 1-to-N 互联
  • N-to-M 互联(交叉开关模式)
  • N-to-M 互联(共享访问模式)

互联也可以配置为连接一个主设备到一个从设备,在这种情况下,IP集成器将自动实例化并配置路径上所需的任何耦合器。

1 N-to-1 互联

当多个主设备需要访问单个从设备(如内存控制器)时,应使用N-to-1配置的AXI Interconnect IP核。

在这种配置中,还可以执行任何可选的转换功能,如数据宽度和时钟速率转换,如图2-2所示。通过AXI Interconnect IP核,多个主设备可以按照预定的优先级或仲裁机制访问共享的从设备,同时保持数据传输的效率和正确性。

2 1-to-N 互联

当单个主设备(通常是处理器)需要访问多个内存映射的从设备(外设)时,应使用1-to-N配置的AXI Interconnect IP核。在这种情况下,不需要进行仲裁(在地址和写数据路径上),因为只有一个主设备在发送请求。

在1-to-N配置中,AXI Interconnect IP核将单个主设备的AXI事务路由到多个从设备。每个从设备通常代表一个不同的内存映射外设,如GPIO、UART、SPI等。由于没有多个主设备竞争访问,因此不需要进行仲裁。

图2-3展示了这种配置的简化示例,其中单个主设备通过AXI Interconnect IP核连接到多个从设备。AXI Interconnect IP核确保主设备的事务被正确地路由到目标从设备,同时可能还执行一些转换或缓冲功能(如果需要)。

这种配置适用于需要处理器访问多个外设的嵌入式系统,其中处理器作为主设备,而各个外设作为从设备。通过使用AXI Interconnect核心,可以简化系统设计,提高性能和可靠性。

N-to-M互联

N-to-M互联(交叉开关模式)是AXI Interconnect IP核的一种应用场景,它采用共享地址多数据(SAMD)拓扑结构,通过稀疏数据交叉开关连接,使用单一的共享写和读地址仲裁。

在这种模式下,AXI Interconnect IP核可以同时处理来自多个主设备(N个)的事务请求,并将它们路由到多个从设备(M个)。交叉开关的设计使得任何主设备都可以与任何从设备进行通信,从而实现了高度灵活的连接性。

图2-4和图2-5可能展示了这种配置的示意图,其中可以看到主设备和从设备通过交叉开关进行连接,共享地址仲裁模块负责处理所有设备的地址请求,确保数据能够正确、高效地传输。

这些图并非直接提供,但可以根据描述自行绘制或查找相关资料以获取更详细的信息。

在AXI Interconnect IP核的N-to-M互联(交叉开关模式)中,根据配置的稀疏连接映射,每个SI(Slave Interface)槽位通过并行的写和读数据路径连接到它可以访问的所有MI(Master Interface)槽位。当多个源需要向不同的目标发送数据时,只要满足AXI顺序规则,数据传输就可以独立且并发地进行。

通过禁用未使用的路径,可以减少数据路径复用逻辑和地址解码逻辑,从而降低FPGA资源的利用率并加快时序路径。

所有SI槽位的写地址通道都输入到中央地址仲裁器中,该仲裁器一次只允许一个SI槽位访问。读地址通道也采用相同的处理方式。每个仲裁周期的获胜者将其地址信息传输到目标MI槽位,并将条目推入适当的命令队列中,这些命令队列使各种数据路径能够将数据路由到正确的目的地,同时强制执行AXI顺序规则。

交叉开关模式仅在AXI Crossbar被配置为AXI4或AXI3协议时可用。这种模式允许在复杂的系统中实现高效且灵活的数据传输。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/620243.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

一图看懂git merge和git rebase的区别!!

一图看懂git merge和git rebase的区别!! Git 是一个非常流行的版本控制系统,它帮助开发者管理代码的不同版本。在 Git 中,merge 和 rebase 是两种常用的将不同分支的更改合并到一起的方法,但它们在处理方式和结果上有…

一篇教你python网页自动化

一篇教你python网页自动化 网页自动化 一篇教你python网页自动化[TOC](网页自动化) 前言一、安装Python?二、安装Selenium库:1.下载WebDriver:2.第二部分:基本网页操作 三、元素定位与操作:图文演示获取选择器写的一个…

百面算法工程师 | 正则优化函数——BN、LN、Dropout

本文给大家带来的百面算法工程师是正则优化函数,文章内总结了常见的提问问题,旨在为广大学子模拟出更贴合实际的面试问答场景。在这篇文章中,我们将总结一些BN、LN、Dropout的相关知识,并提供参考的回答及其理论基础,以…

探秘原子写:为数据完整性再加一分!

对存储设备来说,确保数据的准确记录和读取是其核心使命。鉴于NAND Flash独特的工作原理,当数据需要更新时,SSD往往会将新的数据直接存储到空白的PBA物理块地址上,随后建立LBA逻辑块地址与PBA的映射关系,并将LBA原先指向…

2024中国(重庆)VR/AR科技展8月举办

2024中国(重庆)VR/AR科技展8月举办 邀请函 主办单位: 中国航空学会 重庆市南岸区人民政府 招商执行单位: 重庆港华展览有限公司 展会背景: 2024中国航空科普大会暨第八届全国青少年无人机大赛在重庆举办,同时举办第二届中国…

Jupyter配置

一、修改Jupyter打开界面 (1)打开【Anaconda Prompt】,输入【jupyter notebook --generate-config】命令 从运行结果可知【jupyter_notebook_config.py】的位置 (2)使用【记事本】打开 找到# c.NotebookApp.noteb…

【Qt】之【CMake】Error : The source.. does not match the soused

QT中cmak编译出现CMake Error: The source… does not match the soused 分析 前提是该项目是从另一个路径的项目复制过来的,编写代码时发现无论怎样修改代码,运行后都没有任何变化,以为是qtbug,重构重启都没用,最后…

【多电压流程 Multivoltage Flow】- 5.特定工具使用建议(5.使用ICC II以及FC进行物理实现)

使用IC Compiler II和Fusion Compiler进行物理实现 在完成带有行站点、电源规划和I/O放置的floorplan之后,可以继续进行物理综合和实现。Fusion Compiler提供了广泛的功能,以执行设计的平面物理实现。 图67显示了物理实现流程的一般步骤以及流程的低功耗支持特性。 图67 I…

PCL PolygonMesh数据结构

目录 一、函数源码二、主要函数三、读写数据四、代码案例五、结果展示六、相关链接本文由CSDN点云侠原创,原文链接。如果你不是在点云侠的博客中看到该文章,那么此处便是不要脸的GPT爬虫。 一、函数源码 #pragma once

Android Studio高版本安卓模拟器抓取https包

Android Studio avd 设置 证书生成 *.cer格式证书​ openssl x509 -inform DER -subject\_hash\_old -in charles-ssl-proxying-certificate.cer​ *.pem格式证书​ openssl x509 -inform PEM -subject\_hash\_old -in charles-ssl-proxying-certificate.pem会输出 2cb30a9e …

二叉树的四种遍历代码实现

二叉树的遍历大致能分为以下几种 1.前序:根 左 右 2.中序:左 根 右 3.后序:左 右 根 4.层序:从根开始一层一层的向下 如上图访问顺序: 前序:1 2 3 N N N 4 5 N N 6 N N 中序:N 3 N 2 N 1 N 5 N 4 N …

小成本大保障:中小企业的数据安全解决方案

在经营预算有限的情况下,中小企业面临着保障数据安全的巨大挑战。数据泄露不仅会导致财务损失,还会损害企业声誉,甚至可能违反数据保护法规。以下是一些成本效益高、实施简便的数据安全解决方案,帮助中小企业在小成本下实现大保障…

【爬虫】爬取股票历史K线数据写入数据库(三)

前几天有写过两篇: 【爬虫】爬取A股数据写入数据库(二) 【爬虫】爬取A股数据写入数据库(一) 现在继续完善,分析及爬取股票的历史K线数据通过ORM形式批量写入数据库。 2024/05,本文主要内容如下…

十五、Redis缓存常见问题

Redis作为最常用的缓存中间件,在使用过程中,必然会遇到过;**缓存穿透、缓存雪崩、缓存击穿。**这三个可以说是Redis缓存使用过程中,最常见的问题,且也是面试中最常闻到的问题。1、缓存穿透 **缓存穿透:**是…

【手势操作-复习前一天的内容-预习今天的内容 Objective-C语言】

一、昨天呢,我们学习的是这个,事件 1.事件这一块儿呢,iOS事件,分为三大类, 1)触摸事件 2)加速计事件 3)远程控制事件 2.这个里边呢,我们主要学习的是这个触摸事件,触摸事件里边,就是Touch,touchesBegan:方法里边,有一个touches参数,它是set类型的, 3.Set,…

启动项目时出现SELinux is preventing

问题描述 启动项目时出现SELinux is preventing**** SELinux正在阻止systemd对文件AB.sevice进行读取访问。 我的是启zabbix是报该错: 最终解决方案 方法一:暂时禁用SELinux setenforce 0 方法二:禁用SELinux 在配置文件/etc/sysconfig/…

韵搜坊(全栈)-- 前后端初始化

文章目录 前端初始化后端初始化 前端初始化 使用ant design of vue 组件库 官网快速上手:https://www.antdv.com/docs/vue/getting-started-cn 安装脚手架工具 进入cmd $ npm install -g vue/cli # OR $ yarn global add vue/cli创建一个项目 $ vue create ant…

【网络安全入门】你必须要有的学习工具(附安装包)零基础入门到进阶,看这一篇就够了!

工欲善其事必先利其器 在新入门网络安全的小伙伴而言。这些工具你必须要有所了解。本文我们简单说说这些网络安全工具吧! Web安全类 Web类工具主要是通过各种扫描工具,发现web站点存在的各种漏洞如sql注入、xss等。从而获取系统权限,常用的…

相同的树LeetCode

100. 相同的树 - 力扣(LeetCode100. 相同的树 - 力扣( 给你两棵二叉树的根节点 p 和 q ,编写一个函数来检验这两棵树是否相同。 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。 /*** Definition…

css 步骤条虚线渐变色效果实现

效果如图所示&#xff1a; 思路&#xff1a; 使用元素覆盖的方式实现视觉上虚线的效果 实现代码&#xff1a; html布局 <ul class"details-cont"><li class"details-li" v-for"item in 3" :key"item"><div class&qu…