片上网络NoC(5)——非直连拓扑

目录

一、前言

二、概念阐述

三、交叉开关

四、蝶形网络

五、clos网络

六、fat tree网络

6.1 clos网络的折叠过程

七、总结


一、前言

        本文继续介绍片上网络的拓扑,在之前的文章中,我们已经介绍了片上网络的拓扑指标和直连拓扑的相关内容,这些将是继续阅读本文的基础:

片上网络NoC(3)——拓扑指标icon-default.png?t=N7T8https://ztzhang.blog.csdn.net/article/details/136106748?spm=1001.2014.3001.5502片上网络NoC(4)——直连拓扑icon-default.png?t=N7T8https://ztzhang.blog.csdn.net/article/details/136109452?spm=1001.2014.3001.5502        本文中,我们将详细介绍片上网络中的非直连拓扑。

二、概念阐述

        非直连拓扑指的是所有终端节点通过一个或多个中间交换节点(switch node)相连的网络拓扑。与直连拓扑中每个节点既是终端节点又是交换节点不同,非直连拓扑中终端节点与交换节点是彼此分离的。只有终端节点是流量的源(发出新的流量)或目的地(处理输入的流量而不向下继续传递),中间交换节点只是流量的中转站(将流量从输入送到指定的输出)。

三、交叉开关

        最简单的非直连拓扑是交叉开关(crossbar),一个交叉开关通过 n×m 个简单的交换节点连接了n个输入和m个输出。其中,n个输入和m个输出进行全连接,每个输入都连接到所有的m个输出。这种结构是非阻塞的,因为它总是可以将发送方与特定的接收方直接连起来。

四、蝶形网络

        蝶形 (bufferfly)网络是非直连拓扑的典型例子,可以描述为k-ary n-fly。该网络具有k^{n}个终端节点和n级交换节点,每级含k^{n-1}个交换节点。换句话说,k是交换节点的入度/出度,n是交换节点的级数。(入度/出度指的是输入/离开交换节点的链路数,由于蝶形网络中交换节点的输入、输出链路数相等,所以节点的入度、出度也相等,为节点度的一半。)

        下图是一个2-ary 3-fly的蝶形网络:

        我们不妨假设左侧的圆形节点为源节点,右侧的圆形节点为目的节点,这样的圆形节点可以统称为终端节点。中间的方形节点则为交换节点。

        蝶形网络最大的缺点是缺失路径多样性并缺少对网络局部性的利用。

五、clos网络

        经典的 clos 结构是一个三段的网络,每一阶段由若干数量的 crossbar 开关组成。通常使用三元组(m, n, r)来表示一个 clos 的参数:

  • m 是中间阶段 switch 的数量。
  • n 是每个input/output switch 的端口数量。
  • r 是 input、output 阶段 switch 的数量。

每个中间级的switch 会和所有的 input switch 和 output switch 相连。

  • 第一阶段的 r 个 input switch 是 n x m 的 crossbar,每个 switch 将各自 n 个输入端口连接到 m 个 middle switch 上。
  • 第二阶段的 m 个 middle switch 是 r x r 的 crossbar,每个 switch 将 r 个 input switch 与 r 个 output switch 相连。
  • 第三阶段的 r 个 output switch 是 m x n 的 crossbar,每个 switch 将 m 个 middle switch 与 n 个输出端口相连。

六、fat tree网络

        fat tree网络在逻辑上是一个二叉树结构,物理上各个节点内部的布线资源不同,距离根节点越近的节点内部的连线资源越多。

        从另一个角度来说,一个fat tree网络可以由clos网络折叠而成,因为fat tree网络实际是clos网络在根节点处将自己对折,因此fat tree网络逻辑上是一个5级的clos网络(即信号从输入路由到输出需要最多5跳)。

        根节点处存在多个可以连接左右两边的节点,因此fat tree网络具有路径多样性。在fat tree网络中,消息先沿着树结构向上路由,直到找到目的地节点的祖先节点,之后向下路由到指定目的节点。这种路由方式使fat tree 网络可以很好地利用节点之间的局部性。尽管更高层级的节点之间的链路更宽,我们始终认为fat tree 网络中每一个交换节点的逻辑上的度为4。

6.1 clos网络的折叠过程

        一个clos网络可以交换内部各个节点的位置,并沿着中间级交换节点折叠,使输入级与输出级完全重合,输入终端节点和输出终端节点完全重合,然后将重合的节点合并为同一个节点,并将节点之间的连接由单向变为双向,从而得到折叠的 clos 网络,折叠过程如下图所示。

        一个 clos 网络可以通过从中线折叠的方式,将输入级和输出级交换节点共享。前文中的fat tree结构就展示的是一个 5 级 clos 网络被折叠后的样子,我们依然可以用三元数组(2,2,4)来表示它,而这样的网络的中间级又是由3 级参数为(2,2,2) 的clos网络构成的。这个clos网络沿着最上面一行的交换节点进行折叠。

七、总结

        本文介绍了片上网络中的非直连结构,分别介绍了crossbar,蝶形网络,clos网络和fat tree网络。

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

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

相关文章

【新年第一辑 | TortoiseGit常见用法】

TortoiseGit常见用法 概述常用操作建立仓库提交代码更新代码回滚版本添加忽略文件设置比较工具🩸 解决冲突 主页传送门 : 📀 传送 概述 TortoiseGit是一个Windows平台上的Git客户端工具,它提供了一个直观和易于使用的图形用户界面…

面向对象2:继承

目录 2.1继承 2.2 继承的好处 2.3 权限修饰符 2.4 单继承、Object 2.5 方法重写 2.6 子类中访问成员的特点 2.7 子类中访问构造器的特点 面向对象1:静态 2.1继承 向对象编程之所以能够能够被广大开发者认可,有一个非常重要的原因,是…

springboot184基于springboot的校园网上店铺的设计与实现

简介 【毕设源码推荐 javaweb 项目】基于springbootvue 的 适用于计算机类毕业设计,课程设计参考与学习用途。仅供学习参考, 不得用于商业或者非法用途,否则,一切后果请用户自负。 看运行截图看 第五章 第四章 获取资料方式 **项…

如何把华为手机上的数据转移到荣耀手机上?

方法/步骤 点击并进入华为手机(旧手机)的【手机克隆】应用,选择【这是旧设备】; 点击并进入荣耀手机(新手机)的【换机克隆】应用,选择【这是新设备】; 荣耀手机(新…

LeetCode-第70题-爬楼梯

1.题目描述 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 2.样例描述 3.思路描述 画图就可以发现规律,典型的斐波那契额数列 4.代码展示 class Solution {public int climbStair…

webgis后端安卓系统部署攻略,超详细Termux攻略

目录 前言 一、将后端项目编译ARM64 二、安卓手机安装termux 1.更换为国内源 2.安装ssh远程访问 3.安装文件远程访问 三、安装postgis数据库 1.安装数据库 2.数据库配置 3.数据导入 四、后端项目部署 五、自启动设置 总结 前言 因为之前一直做的H5APP开发&#xf…

机器学习、深度学习、强化学习、迁移学习的关联与区别

Hi,大家好,我是半亩花海。本文主要了解并初步探究机器学习、深度学习、强化学习、迁移学习的关系与区别,通过清晰直观的关系图展现出四种“学习”之间的关系。虽然这四种“学习”方法在理论和应用上存在着一定的区别,但它们之间也…

2024幻兽帕鲁服务器创建教程_阿里PK腾讯超简单

幻兽帕鲁官方服务器不稳定?自己搭建幻兽帕鲁服务器,低延迟、稳定不卡,目前阿里云和腾讯云均推出幻兽帕鲁专用服务器,腾讯云直接提供幻兽帕鲁镜像系统,阿里云通过计算巢服务,均可以一键部署,鼠标…

深度学习-吴恩达L1W2作业

作业1:吴恩达《深度学习》L1W2作业1 - Heywhale.com 作业2:吴恩达《深度学习》L1W2作业2 - Heywhale.com 作业1 你需要记住的内容: -np.exp(x)适用于任何np.array x并将指数函数应用于每个坐标 -sigmoid函数及其梯度…

【编程题】合法括号的判断

合法括号的判断—难度&#xff1a;⭐⭐ 我的答案&#xff1a;错误 class Parenthesis {public:bool chkParenthesis(string A, int n) { // write code hereif (n % 2 ! 0) {return false;}stack<char> st;auto ch A.begin(); // cout<<"hello?"<&l…

react渲染流程是怎样的

整体流程&#xff1a; react的核心可以用uifn(state)来表示&#xff0c;更详细可以用&#xff1a; const state reconcile(update); const UI commit(state);上面的fn可以分为如下一个部分&#xff1a; Scheduler&#xff08;调度器&#xff09;&#xff1a; 调度任务&…

Netty应用(十一) 之 ChannelHandler Channel生命周期 @Sharable 心跳

目录 27.ChannelHandler总结 27.1 一些概念 27.2 到底有几个handler&#xff1f;真的只有你想的那样吗&#xff1f; 27.3 channel.writeAndFlush 和 ctx.writeAndFlush的区别 27.4 ByteBuf的创建和销毁 27.5 Channel的生命周期方法 27.5.1 handlerAdded 27.5.2 channelR…

VS Code主题设置(美化VS Code)

主题的具体效果放在了文章末尾&#xff0c;这篇文章后续也会进行更新 目录 切换整体主题&#xff08;整体主题&#xff09; 1.VS Code内置主题&#xff08;快捷键&#xff1a;CtrlK &#xff0c;CtrlT&#xff09; 1.VS Code左上角点击文件 2.选择首选项-->主题-->颜色…

理解JAVA EE设计模式

理解JAVA EE设计模式 在Web应用程序的设计和开发阶段,开发人员在开发类似的项目时可能会遇到相似的问题。每名开发人员可能会遇到的问题找出不同或相似的解决方案。但是,这导致一些时间和精力浪费在为相似的问题寻找解决方案上。因此,要啊节省时间和精力,需要记录常见问题…

【Pyhton4Delpi】学习笔记(二)安装验证篇

D12环境下安装P4D。 一、下载 Python4Delphi&#xff08;下称P4D&#xff09;: 下载地址&#xff1a;https://github.com/pyscripter/python4delphi 下载或者克隆P4D到指定的目录&#xff0c;例如&#xff1a;MDS_New&#xff0c;目录结构如下&#xff0c;P4D就是克隆下来的…

localStorage、sessionStorage、cookie区别

localStorage: localStorage 的生命周期是永久的&#xff0c;关闭页面或浏览器之后 localStorage 中的数据也不会消失。localStorage 除非主动删除数据&#xff0c;否则数据永远不会消失 sessionStorage: sessionStorage 的生命周期是仅在当前会话下有效。sessionStorage 引入…

【小沐学GIS】基于C++QT绘制三维数字地球Earth(OpenGL)

&#x1f37a;三维数字地球系列相关文章如下&#x1f37a;&#xff1a;1【小沐学GIS】基于C绘制三维数字地球Earth&#xff08;456:OpenGL、glfw、glut&#xff09;第一期2【小沐学GIS】基于C绘制三维数字地球Earth&#xff08;456:OpenGL、glfw、glut&#xff09;第二期3【小沐…

基于Spring Boot的足球青训俱乐部管理后台系统,计算机毕业设计(带源码+论文)

源码获取地址&#xff1a; 码呢-一个专注于技术分享的博客平台一个专注于技术分享的博客平台,大家以共同学习,乐于分享,拥抱开源的价值观进行学习交流http://www.xmbiao.cn/resource-details/1757420859554869250

流量嗅探详解

不少人存在这样的观点&#xff1a;只要计算机安装各种专业的安全软件&#xff0c;系统及时更 新补丁&#xff0c;密码尽可能复杂&#xff0c;那么计算机就会避免遭到入侵。当然这样的确不容易 被入侵&#xff0c;但那也只是针对传统的病毒、木马而言&#xff0c;在流量攻击面前…

2.13作业

21.c 22.b 23.b 假设&#xff0c;入&#xff1a;12345&#xff0c;出&#xff1a;54132.要出5&#xff0c;必须12345按顺序入&#xff0c;然后出5&#xff0c;依次出4321&#xff0c;想要在4之后出1是不可能实现的。 24.b10,c11,d100 25.3 ,2 …