460 likes | 604 Views
第七章 互连网络. 7.1 互连网络的基本概念. 7.1.1 互连网络的功能和特性. ◆ 互连网络 是将集中式系统或分布式系统中的结点连 接起来所构成的网络。 结点: 处理器、存储模块或其他设备。 ◆ 互连网络的任务 是为输入和输出两组结点之间提供 一组通信连接。 ◆ 好坏标准: 处理单元使用率、求解算法适应性、通 信速度、拓扑结构灵活性以及成本。. 7.1 互连网络的基本概念. 可以从 4 个不同的方面来描述互连网络 定时方式: 有同步和异步两种。 同步系统: 使用一个统一的时钟。
E N D
第七章 互连网络
7.1互连网络的基本概念 7.1.1 互连网络的功能和特性 ◆互连网络是将集中式系统或分布式系统中的结点连 接起来所构成的网络。 结点:处理器、存储模块或其他设备。 ◆互连网络的任务是为输入和输出两组结点之间提供 一组通信连接。 ◆好坏标准:处理单元使用率、求解算法适应性、通 信速度、拓扑结构灵活性以及成本。
7.1 互连网络的基本概念 可以从4个不同的方面来描述互连网络 • 定时方式:有同步和异步两种。 • 同步系统:使用一个统一的时钟。 异步系统:没有统一的时钟,系统中的各个处理机都是独立地工作。 • 交换方法:有线路交换和分组交换两种。 • 线路交换:源结点和目的结点之间的物理通路在整个数据传送期间一直保持连接。 • 分组交换:把信息分割成许多组(又称为包),将它们分别送入互连网络。
7.1 互连网络的基本概念 • 这些数据包可以通过不同的路径传送,到达目的结点后再拼合成原来的数据。 • 结点之间不存在固定连接的物理通路。 • 控制策略:有集中式和分散式两种 • 集中控制方式:有一个全局的控制器接收所有的通信请求,并由它设置互连网络的开关连接。 • 分散控制方式:不存在全局的控制器,通信请求的处理和开关的设置由互连网络分散地进行。
7.1 互连网络的基本概念 • 拓扑结构:有静态和动态两种。 • 静态拓扑结构:在各结点之间有专用的连接通路,在运行过程中不能改变。 • 动态拓扑结构:可根据需要设置互连网络中的开关,从而对结点之间的连接通路进行重新组合,实现所要求的通信模式。
7.1 互连网络的基本概念 互连网络的性能参数 (1)网络规模:结点数 (2)结点度: 与结点相连接的边的数目。 入度: 进入结点的通道数 出度: 从结点出来的通道数 (3)网络直径 网络中任意两个结点间最短路径长度的最大值。 (4)等分宽度 在将某一网络切成相等两半的各种切法中, 沿切口的最小通道边数。
7.1 互连网络的基本概念 另: 结点间的线长 是否是对称网络 从其中的任何一个结点看,拓扑结构都是一样的 网络。
7.1 互连网络的基本概念 互连函数 变量x:输入(设x=0,1,…,N-1) 函数f(x):输出 通过数学表达式建立输入端与输出端的一一对应关系。即在互连函数f的作用下,输入端x连接到输出端f(x)。 • 互连函数反映了网络输入数组和输出数组之间对应的置换关系或排列关系。 (有时也称为置换函数或排列函数)
7.1 互连网络的基本概念 互连函数f(x)有时可以采用循环表示 即:(x0 x1 x2 … xj-1) 表示: f(x0)=x1,f(x1)=x2,…,f(xj-1)=x0 j 称为该循环的长度。
7.1 互连网络的基本概念 几种常用的基本互连函数及其主要特征: 交换函数 • 交换函数:实现二进制地址编码中第k位互反的输入端与输出端之间的连接。
7.1 互连网络的基本概念 • 主要用于构造立方体互连网络和各种超立方体互连网络。 • 它共有n=log2N种互连函数。 (N为结点个数) • 当N=8时,n=3,可得到常用的立方体互连函数:
7.1 互连网络的基本概念 变换图形 N=8 的立方体交换函数
7.1 互连网络的基本概念 均匀洗牌函数 • 均匀洗牌函数:将输入端分成数目相等的两半,前一半和后一半按类似均匀混洗扑克牌的方式交叉地连接到输出端(输出端相当于混洗的结果)。 • 函数关系 即把输入端的二进制编号循环左移一位。
7.1 互连网络的基本概念 • 逆均匀洗牌函数:将输入端的二进制编号循环右移一位而得到所连接的输出端编号。 • 互连函数 逆均匀洗牌是均匀洗牌的逆函数
7.1 互连网络的基本概念 N=8 的均匀洗牌和逆均匀洗牌函数
7.1 互连网络的基本概念 碟式函数 • 蝶式互连函数:把输入端的二进制编号的最高位与最低位互换位置,便得到了输出端的编号。
7.1 互连网络的基本概念 反位序函数 • 反位序函数:将输入端二进制编号的位序颠倒过来求得相应输出端的编号。 • 互连函数 • 对于N=8的情况,B(x)函数等于R(x)函数。
7.1 互连网络的基本概念 N=8 的碟式函数和反位序函数
7.1 互连网络的基本概念 • PM2I函数 • PM2I函数:一种移数函数,它是将各输入端都循环移动一定的位置连到输出端。 • 互连函数 PM2+i(x) = x+2i mod N PM2-i(x) = x-2i mod N 其中: 0≤x≤N-1,0≤i≤n-1,n=log2N,N为结点数。 • PM2I互连网络共有2n个互连函数。
7.1 互连网络的基本概念 • 当N=8时,有6个PM2I函数: • PM2+0:(0 1 2 3 4 5 6 7) • PM2-0:(7 6 5 4 3 2 1 0) • PM2+1:(0 2 4 6 )(1 3 5 7) • PM2-1:(6 4 2 0)(7 5 3 1) • PM2±2:(0 4)(1 5)(2 6)(3 7)
7.1 互连网络的基本概念 N=8 的PM2I函数
7.1 互连网络的基本概念 影响互连网络性能的因素 (1)功能特性 网络如何支持路由、中断处理、同步、请 求/消息组合和一致性。 (2)网络时延 单位消息通过网络传送时最坏情况下的时间延迟。 (3)带宽 通过网络的最大数据传输率,用MB/s表示。 (4)硬件复杂性 诸如导线、开关、连接器、仲裁和接口逻辑等 的造价。 (5)可扩展性 在增加机器资源使性能可扩展的情况下,网络 具备模块化可扩展的能力。
7.2 互连网络的结构 7.2.1 静态连接网络 指各结点之间有专用的连结通路,且在运行中不能改变的网络。 1. 线性阵列 一种一维的线性网络,其中N个结点用N-1个链 路连成一行。 • 内部结点度:2 • 端结点度: 1 • 直径: N-1 • 等分宽度 b=1
7.2 互连网络的结构 2. 环和带弦环 (1) 环 用一条附加链路将线性阵列的两个端点连接起 来而构成的。可以单向工作,也可以双向工作。 • 结点度: 2 • 双向环的直径:N/2 • 单向环的直径:N
7.2 互连网络的结构 (2) 带弦环 增加的链路愈多,结点度愈高,网络直径就愈小。 全连接网络 结点度: N-1 直径: 1
7.2 互连网络的结构 3. 循环移数网络 通过在环上每个结点到所有与其距离为2的整 数幂的结点之间都增加一条附加链而构成的。 • 结点数: 16 • 结点度: 7 • 直径: 2 如果|j-i|=2r,r=0,1,2,…,n-1,网络规模N=2n, 则结点i与结点j连接。这种循环移数网络的结点度为 d=2n-1,直径D=n/2。
7.2 互连网络的结构 4. 树形和星形 (1)一棵5层31个结点的二叉树 一般说来,一棵k层完全平衡的二叉树有 N=2k-1个结点。 最大结点度是3,直径是2(k-1)。 (2)星形 • 一种2层树。 • 结点度较高,为d=N-1。 • 直径较小,是一常数2。 5. 胖树形
7.2 互连网络的结构 6. 网格形和环网形 (1)一个3×3网格形网络 一般说来,N=nk个结点的k维网络的内 部结点度为2k,网络直径为k(n-1)。边结 点和角结点的结点度分别为3或2。 (2)环形网 ◆ 可看做是直径更短的另一种网格。 ◆ 环形网沿阵列每行和每列都有环形连接。 ◆ 一个n×n二元环网 结点度为4 直径为2 * n/2
7.2 互连网络的结构 7. 超立方体 ◆ 一种二元 n -立方体结构。 ◆ 一般说来,一个n-立方体由N=2n个结点组成, 它们分布在n维上,每维有两个结点。 例 8个结点的3-立方体、 4-立方体 ◆ 一个 n-立方体的结点度等于n,也就是网络的 直径。
7.2 互连网络的结构 7.2.2 动态连接网络 根据程序要求的通信模式,动态实现连结通路的网络 1. 动态互连网络的三个主要操作特征 • 定时 • 开关 • 控制 2. 根据级间连结方式,动态互连网络分为 (1)单级网络, 也称循环网络 (2)多级网络 由一级以上的开关元件构成。 这类网络可以把任一输入与任一输出相连。
7.2 互连网络的结构 多级网络可进一步分为: ◆ 阻塞网络 如果同时连接多个输入输出对时,可能会引 起开关和通信链路使用上的冲突。 大多数多级网络都是阻塞网络。 ◆ 非阻塞网络 如果多级网络通过重新安排连接方式可以 建立所有可能的输入输出之间的连接。
7.2 互连网络的结构 3. 几类主要的开关网络 (1)总线系统 ◆ 优点: 价格较低, 灵活,易扩展 ◆ 缺点:带宽较窄 容易产生故障
7.2 互连网络的结构 (2)交叉开关网络 单级无阻塞置换网络 ◆每个交叉点是一个可以打开或关闭的一元 开关,提供源(处理器)和目的(存储器)之间 点对点的连接通路。 ◆交叉点开关网络中n 对处理器可以同时传送 数据。 ◆交叉开关网络的带宽和互连特性最好。
7.2 互连网络的结构 (3)多端口存储器 ①主要思想 将所有交叉点仲裁逻辑和跟每个存储器模 块有关的开关功能移到存储器控制器中。 ②性能 介于低成本低性能的总线系统和高成本高 带宽的交叉开关系统之间。 ③缺点 • 十分昂贵 • 不能扩展 • 当系统配置很大时,需要大量的互连电缆和连 接器。
7.2 互连网络的结构 (4)多级网络 多级网络可用于构造大型多处理机系统。 ① 通用多级网络 各种多级网络的区别就在于所用开关模 块和级间连接模式的不同。
由a×b开关模块和级间构成的通用多级互连网络结构由a×b开关模块和级间构成的通用多级互连网络结构
7.2 互连网络的结构 ②Omega网 ◆2×2开关四种可能的连接方式
③ 路由算法举例 ◆ 置换π1=(0,7,6,4,2)(1,3)(5)