1 / 52

第五章 互连网络

第五章 互连网络. 0. 0. …. N-1. N-1. 第一节 互连网络基本概念. 节点. 节点. 节点. 一、互连网络的互连特性. ···. 软件接口 硬件接口. 软件接口 硬件接口. 软件接口 硬件接口. 1 、 互连网络 ( Interconnection Network ) *概念: 由 开关元件 按一定 拓扑结构 和 控制方式 构成的网络, 实现节点间的互连. 互连网络 IN. ···. P. P. P. P. ···. 互连网络 IN. 互连网络 IN. ···. PM. PM.

sen
Download Presentation

第五章 互连网络

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第五章 互连网络

  2. 0 0 … N-1 N-1 第一节 互连网络基本概念 节点 节点 节点 一、互连网络的互连特性 ··· 软件接口 硬件接口 软件接口 硬件接口 软件接口 硬件接口 1、互连网络(Interconnection Network) *概念:由开关元件按一定拓扑结构和控制方式构成的网络,实现节点间的互连 互连网络IN ··· P P P P ··· 互连网络IN 互连网络IN ··· PM PM *互连特性:多个端口对(同时)、多种端口对组(分时) *应用:根据需要,可用于P→P及P←→M的并行连接 回下页

  3. 例1—互连函数f(bn-1…b0)=bn-1…b0,表示IN的所有端口分为N/2个组,组内入端与出端交叉连接(对称的)例1—互连函数f(bn-1…b0)=bn-1…b0,表示IN的所有端口分为N/2个组,组内入端与出端交叉连接(对称的) 2、互连特性的表示 *互连函数:出端编码是入端编码的排列、组合、移位、取反等操作的结果,用于表示所有出端与入端的连接关系 入端编码表示—x=bn-1…b0,n=log2N 出端编码表示— f(x)=基于bn-1…b0的操作结果 例2—互连函数f(bn-1…b0)=bn-2…b0bn-1,表示IN的前一半入端与其编码×2的出端连接、后一半入端与其编码÷2的出端连接(非对称的) *互连特性的表示:可用一组互连函数表示 *互连特性的选择:用控制信号实现选择(网络控制) 转上页

  4. 3、应用需求与互连实现方式 *应用需求种类: ①节点互连需同时完成(互连函数需同时实现),如SIMD ②节点互连可分时完成(互连函数可分时实现),如MIMD 节点P0 P0→P1 P0→P2 P0→P4 P0→P1 P0→P2 节点P4 P4→P5 P4→P6 P4→P8 P4→P5 P4→P6 P4→P8 节点P8 P8→P9 P8→P0 P8→P4 P8→P9 P8→P0 同时互连示例 分时互连示例 *互连实现方式: 回6页

  5. …… 二、互连网络的组成 1、网络主要器件 (1)链路 --又称通道或电缆 属性有长度、宽度、定时机制3种 *长/短链路:指同一时刻可传递多/单个逻辑值 *宽/窄链路:指数据及控制信号可并行/串行传送 *同步/异步链路:指源端、目的端是/否使用公共时钟握手 (2)交叉开关(Crossbar) *组成:N2个交叉点开关[2态], (建立N个入-出连接) *控制:用控制信号控制, 控制信号数由功能决定 (最多为N2个、常为Nlog2N个) 回下页

  6. 接收器 缓冲区 缓冲区 发送器 交叉 开关 出 端 入 端 寻径器(路由、调度、控制) (3)交换开关(Switch) —又称交换机或路由器 *组成:交叉开关、缓冲区、接收器/发送器、寻径器 *控制:由控制信号(外部)、或数据包(内部)控制 *交换开关的度:输入/输出端口的数量(N) 特点—部件部分成本~kN, 即~端口数量×端口宽度 内部连接成本~cN2,即~交换开关度2 转4页 转上页 回下页

  7. 说明: ①实线部分为动态网络NIC一般结构; ②虚线部分为静态网络NIC增加部分,数量由网络拓扑结构决定 链路接口 链路接口 网络接口 电路NIC 交换 开关 总线 接口 发送DMA 接收DMA 发送DMA 接收DMA 节点DMA请求 节点MEM总线或I/O总线 (4)网络接口电路(Network Interface Circuitry) --又称网卡 *组成:链路接口、缓冲区、DMA通道、控制逻辑等 *功能:数据包组织、路由构造、数据包发送/接收、 一致性检查、流量和错误控制等 *成本:由端口规模、处理能力和控制电路决定 *设计:软硬件分配取决于IN和节点的特性及性能要求 回下页 转上页

  8. P010 P011 M P C P110 P111 NIC MB P000 P001 NIC 节点 P100 P101 2、静态互连网络组成 节点间的连接在运行期间固定不变,又称直接网络 └→节点直接连接 *组成:链路、拓扑结构、NIC *拓扑结构:有线性阵列、网格、立方体等多种 *互连特性: 互连函数种类—有限几种(数量n由拓扑结构决定) 互连函数选择—控制NIC 回11页 回12页 转上页 回下页

  9. 3、动态互连网络组成 节点间的连接由程序动态地改变,类型有共享介质、交叉开关、多级互连3种,后2种又称间接网络(节点仅与交换开关连接) (1)共享介质网络 同时只存在一个节点对连接(N个节点对连接需分时实现) *组成:链路、拓扑结构、NIC M P C P0 P1 PN-1 … MB NIC 节点 *拓扑结构:总线 *互连特性: 互连函数种类—零个(多个节点对连接只能分时实现) 节点对选择—各NIC自行判别地址 *与线性阵列静态网络的区别:通道数量、互连方向性 回下页 转上页

  10. P0 M P C … MB PN-1 NIC 节点 PN-1 P0 … (2)交叉开关网络 同时存在N个节点对的任意连接,又称非阻塞网络 *组成:链路、交叉开关(拓扑结构)、NIC *拓扑结构:交叉开关 *互连特性: 互连函数种类—常为Nlog2N种(可为NN种) 互连函数选择—控制交叉开关 转上页 回下页

  11. P0 P1 … PN-1 P0 P1 … PN-1 ISC(O) ISC(1) … ISC(n-1) M P C … MB … … … … … NIC 节点 … (3)多级互连网络 单级互连网络—只有一种互连函数,常为链路+拓扑结构 多级互连网络—用开关模块级联多个单级网络, 实现N个节点对的有限连接 *组成:链路、交换开关、单级网络、NIC *拓扑结构:可为静态网络的各种结构,各ISC(i)可不同 *互连特性: 互连函数种类—多种(可为N!种,数量由拓扑结构决定) 互连函数选择—控制交换开关 转8页 转上页 回下页

  12. 4、混合互连网络的组成 *组成示例:(可扩展性较强) 主干 节点0 主干节 点N-1 网格 节点0 网格节 点M-1 叶节点0 (2个P) 叶节点L-1 … … … 主干网 (超立方体网络) 主干节点网 (静态网格网络) 网格节点网 (总线网络) *互连特性:互连函数种类—多种(M×N×L) 互连函数选择—组合控制各个网络 1D网络:线性阵列 静态网络2D网络:环、树型、胖树型、星型、2D网格等 nD网络:带弦环、nD网格、立方体、超立方体等 ※IN组成汇总: 共享介质网络:总线、环 动态网络 交叉开关网络:n×n交叉开关(非阻塞) 多级互连网络:单向多级、双向多级、单向环 转8页 转上页

  13. 三、互连网络的性能指标 1、时延 指网络无负载时的传输时延,即网络时延 通信时延=额外开销+网络时延+竞争时延 额外开销—收/发方的软/硬件开销,与节点内核及NIC有关 竞争时延—网络传输竞争导致的时延,与网络状况及程序行为有关 网络时延 发送开销 接收开销 通道时延 路由时延 t 发送方 互连网络 接收方 网络时延=路由时延+消息长度/通道带宽 路由时延—消息停顿在各交换开关的时间,与拓扑结构有关 通道带宽—消息占用通道导致的时延,与链路带宽有关 回26页

  14. 节点0 节点0 … 每端口带宽b … … … … 节点N/2-1 节点N/2-1 节点N/2 节点N/2 … … … 节点N-1 节点N-1 2、带宽 有每端口带宽、等分带宽和聚集带宽3种带宽类型 *每端口带宽:节点或交换机任意一个端口的带宽 *等分带宽(对剖带宽):网络中最小等分平面上连线的总带宽 ※等分平面—前一半节点与后一半节点间的连线,受开关位置影响 目标—反映全局通信的聚合带宽 *聚集带宽:网络中任意一半节点到另一半节点的最大带宽 目标—反映局部通信的聚合带宽[如移数f(x)=(x+k)%N] 注:l为最小剖面的链路数 等分带宽B=lb 聚集带宽l’b 注:l’对应最小链路数的剖面 回30页

  15. PE0 PE0 PE控制器 ISC(0) ISC(n-1) … PE1 PE1 … 计算指令 通信指令 指令译码器 … … 并行 程序 … … … … … PEN-1 PEN-1 IN控制器 网络控制指令 四、互连网络的实现要点 主要指网络层的实现; 主要有控制方式、传输机制、拓扑结构、路由算法、流控机制 1、控制方式 指互连函数同时/分时实现,方式有集中式和分布式2种 *集中式控制: 程序在IN外部同时控制所有交换开关(或NIC)状态, IN保持状态、直到再次控制为止 回下页 回31页

  16. P0 P0 接收器 缓冲区 缓冲区 发送器 ISC(0) ISC(n-1) … P1 P1 交叉 开关 出 端 入 端 … … … … … … … … 寻径器(路由、调度、控制功能) PN-1 PN-1 分布式控制的互连网络结构 分布式控制的交换开关结构 *分布式控制: 数据分组在IN内部分时控制相关交换开关(或NIC)状态, IN保持状态、直到分组通过或通信完成为止 *控制方式的应用: 集中式控制—适合于SIMD系统 分布式控制—适合于MIMD系统 转上页 回32页

  17. 2、传输机制 指分组在分布式控制IN中的传送方式 └→链路层以上均基于分组传输 *消息格式: 发送时将消息拆为数据包,接收时按“顺序号”合为消息 消息 R:导径信息 S:顺序号 D:数据片 包 片 D D D D S R *传输机制(寻径技术)种类: 存储-转发(Store-and-Forward)、切通(Cut-Through) 注:消息大小可变,数据包和数据片大小固定 回下页

  18. R1 交换开关 R2 R3 R R4 t R1 交换开关 R2 R3 R4 t *存储-转发传输方式: 数据包串行传输,缓冲数据包 T=t0+d(th+m/B) *切通传输方式: 数据包流水传输(Δt=数据片),正常时缓冲数据片, 阻塞时缓冲数据包(虚拟直通方式)、或数据片(虫蚀方式) T=t0+dth+m/B ≈t0+m/B *比较:前者拥塞的代价小、后者时延与距离无关 转上页

  19. 3、拓扑结构 是实现互连函数的主要机构←交换开关为辅助机构 *拓扑结构种类: 1D—线性阵列 2D—环、树型、胖树型、星型、2D网格等 nD—带弦环、nD网格、立方体、超立方体等 *拓扑结构与互连函数: 并行链路数量—影响互连函数的种类 链路连接特性—影响互连函数的功能 *控制方式与拓扑结构: 集中式控制—对拓扑结构要求较高(→常用nD结构) 分布式控制—对拓扑结构要求一般

  20. 3、路由算法 交换开关决定分组移动方向的算法 └→入→出路径 *算法:算术路由、源路由、查表路由、自适应路由等 *目标:避免死锁、均匀负载、维持低时延、容错等 4、流控机制 流量控制—控制分组发送速度、以适应接收端吸收能力 *流控机制种类:链路级流控、端到端流控 (基于反馈) (基于速率) ※拥塞控制—控制分组的传送、以保持网络的承载流量 拥塞控制方法—警告位、抑制分组、绕道、扬弃(NACK)

  21. 000 001 010 011 100 101 110 111 000 001 010 011 100 101 110 111 N=8恒等置换互连 第二节 拓扑结构 一、互连函数与拓扑结构 *单级互连网络:只具有一种互连函数的互连网络 即互连函数所实现的互连结构 *拓扑结构:由(多个)单级互连网络构成 1、恒等置换 *互连函数:I(b2b1b0)=(b2b1b0) *互连特性:互连函数可逆,只有一种变换

  22. 2、交换置换 --编码末位取反 *互连函数:Exchange(b2b1b0)=(b2b1b0) 000 001 010 011 100 101 110 111 000 001 010 011 100 101 110 111 N=8交换置换互连 *互连特性:互连函数可逆,只有一种变换 *应用:2×2交换开关可实现恒等和交换变换、及其它功能, 需1位或2位控制信号 恒等 交换 恒等 交换 上播 下播 (a)1位控制信号 (b)2位控制信号

  23. 3、立方体置换 --编码某位取反 *互连函数:Cubek(bn-1…bk…b0)=(bn-1…bk…b0) 000 001 010 011 100 101 110 111 000 001 010 011 100 101 110 111 000 001 010 011 100 101 110 111 000 001 010 011 100 101 110 111 000 001 010 011 100 101 110 111 000 001 010 011 100 101 110 111 N=8 Cube0置换互连 N=8 Cube1置换互连 N=8 Cube2置换互连 y 010 011 110 111 001 000 x 100 101 z *互连特性:互连函数可逆,有n种(Cube0,…,Cuben-1)变换 *应用:n立方体结构可实现n种Cube变换, 每个节点需n位控制信号 CPU X Y Z CPU X Y Z NIC 回下页

  24. 000 001 010 011 100 101 110 111 000 001 010 011 100 101 110 111 N=8 混洗置换互连 0 1 2 3 4 5 6 7 4、混洗置换 --编码最高位移位 *互连函数:Shuffle(bn-1bn-2…b1b0)=(bn-2…b1b0bn-1) *互连特性:互连函数不可逆(首尾节点只连接自身), 只有一种变换 *应用:混洗与交换结构可实现任意节点间互连 特征—多级网络ISCi可只有一种互连(混洗) 转上页

  25. 000 001 010 011 100 101 110 111 000 001 010 011 100 101 110 111 000 001 010 011 100 101 110 111 000 001 010 011 100 101 110 111 N=8蝶式置换互连 N=8 β(1)子蝶式置换互连 5、蝶式置换 --编码位交换位置 *互连函数:β(bn-1bn-2…b1b0)=(b0bn-2…b1bn-1) *子蝶式和超蝶式置换: β(k)(bn-1…bkbk-1…b0)=(bn-1…bk+1b0bk-1…b1bk) β(k)(bn-1…bn-kbn-k-1…b0)=(bn-k-1bn-2…bn-kbn-1bn-k-2…b0) *互连特性:互连函数可逆,有2n-2种(子/超各为n-1)变换 *应用:子蝶式结构可实现分组互连(+交换=组内全互连) 蝶式结构可实现组间互连(步长>1的组内互连)

  26. 000 001 010 011 100 101 110 111 000 001 010 011 100 101 110 111 000 001 010 011 100 101 110 111 000 001 010 011 100 101 110 111 k=1移数置换互连 k=2移数置换互连 6、移数置换 --编码值移位 *互连函数:α(X)=(X+k) mod N,0≤k≤N-1 0 7 1 6 2 5 3 4 *互连特性:互连函数不可逆(k=0除外),有2n个移数变换 *应用:带弦环结构可实现多种移数变换 结构特性—间隔k决定内弦连接 变换种类决定内弦数 回下页

  27. 000 001 010 011 100 101 110 111 000 001 010 011 100 101 110 111 000 001 010 011 100 101 110 111 000 001 010 011 100 101 110 111 PM2I+1置换互连 PM2I+2置换互连 7、加减2i置换 --移数置换的特例(k=2i) *互连函数:PM2I+i(j)=(j+2i) mod N PM2I-i(j)=(j-2i) mod N 0 7 1 6 2 5 3 4 *互连特性:互连函数不可逆(i=±n除外),有2n-1种变换 *应用:闭合螺旋结构可实现PM2I+0及 PM2I±n/2变换 △小结:互连函数用单级网络实现 拓扑结构由(多个)单级网络构成 转上页

  28. P010 P011 MEM CPU Cache P110 P111 MEM Bus P000 P001 NIC 节点 P100 P101 二、互连实现与拓扑结构 *IN应用需求:IN中的节点均可与多个节点连接 *IN实现方法:IN具有多个互连函数,不同互连函数可叠加 1、静态互连网络与拓扑结构 *网络组成:链路、拓扑结构、节点NIC *互连实现:源→目标节点需穿过(函数叠加)几个中间节点 └→可变 *拓扑结构:结构实现多种互连函数、NIC选择互连函数 互连函数功能及种类决定了互连性能 回下页

  29. P0 ISC(0) ISC(n-1) … P0 P1 PN-1 … … … PN-1 … … … PN-1 P0 … M P C MB NIC 节点 2、动态互连网络与拓扑结构 *网络组成:链路、拓扑结构、交换开关、节点NIC 注—等同互连功能时,交换开关规模影响多级网络的级数 *互连实现:源→目标节点需穿过(函数叠加)多个交换开关 *拓扑结构:各单级互连网络ISCi实现多种互连函数, 各交换开关实现相邻节点恒等/交换函数, 单级互连网络功能及级数决定了互连功能 △小结:拓扑结构决定了互连网络的功能及性能! 转上页

  30. 3、拓扑结构性能参数 *连接度:接入或射出节点的连线数(单向网络为两者之和) *网络直径:任意两个节点间互连的最大步数 (与连接度及连接方式有关) *常见拓扑结构性能参数: 转14页

  31. PE010 PE011 PE110 PE111 PE000 PE001 PE100 PE101 三、网络控制方式与拓扑结构 1、集中控制方式与拓扑结构 --SIMD方式 *互连特性:互连函数中的互连须同时实现 *控制实现: (以静态网络为例) 程序从IN外部同时控制所有NIC通道,直到再次控制 PE控制器 并行程序指令 系统控制器(CU) 计算指令 通信指令 ALUs LM SM MB NIC MB PE I/O DISK 网络控制指令 互连网络控制器 *通信性能:Tcomm=Nstep×(t0+dth+m/B) 其中 Nstep—需求分解的C/N指令数,由拓扑结构决定 d—源→目标的步数,由拓扑结构决定 回下页 转15页

  32. 2、分布控制方式与拓扑结构 --MIMD方式 *互连特性:互连函数中的互连可分时实现 *控制实现: (以静态网络为例) 数据分组从IN内部分时控制相关NIC通道,直到分组通过 说明: ①缓冲队列—级跳传输所需 ②相关通道—各出端分别控制 ③分组通过—分组离开NIC或 穿过交叉开关 接收器 缓冲 缓冲 发送器 4×4交叉 开关 入 端 出 端 寻径器(路由、调度、控制) *通信性能:Tcomm=max{(t0+d(th+tc)+m/B)} 其中 tc—竞争导致的时延,又拓扑结构决定 △小结:集中式控制—拓扑结构影响IN的功能、性能 分布式控制—拓扑结构影响IN的功能、但影响性能 回36页 转上页 转16页

  33. 第三节 路由算法 *路由算法目标: 低时延、避免死锁、平衡负载、容错等 一、路由算法 *设计依据: 根据并行计算机及网络拓扑结构的特征设计 *算法种类: 确定性路由算法—路由仅与节点地址有关 自适应路由算法—路由与节点地址、网络传输状态有关

  34. 1、确定性路由算法 有算术路由法、源路由法、查表路由法3种 (1)算术路由法 源节点—在分组头中包含目标地址(开关地址) 交换开关—根据其位置(维序),计算并选择路径(到下级开关) *X-Y路由算法:--适用于2D网格拓扑结构 ①计算当前与目标偏差(ΔX,ΔY),即(X目标-Xi,Y目标-Yi) ②若ΔX≠0,将分组沿X方向(左或右)送出,算法结束; 否则,转③ ③若ΔY≠0,将分组沿Y方向(上或下)送出, 否则,当前开关为目标开关,算法结束 *E-立方体路由算法: --适用于nD立方体拓扑结构 *特点:交换开关需知道拓扑结构及其位置 *应用:nCUBE/2,Paragon(Intel),J-machine等 回下页

  35. (2)源路由法 源节点—在分组头中建立(计算)沿途的各交换开关输出端口 交换开关—根据分组头中信息选择路径(输出端口号) *特点:交换开关结构简单,源节点需检测拓扑结构 *应用:Myrinet,Parc(MIT)及CS-2(Meiko)的路由器等 (3)查表路由法 源节点—在分组头中建立目标地址域i 交换开关—维护(计算)一个路由表R<目标域,下级开关>, 根据分组中i查表选择路径(输出端口o=R[i]) *特点:交换开关中路由表R较大, 路由应相对稳定(适合LAN/WAN、不太适合IN) *应用:HPPI、ATM等 转上页 回下页

  36. 2、自适应路由算法 根据网络状态从多条路径中选择一条的路由算法,一般在确定性路由算法基础上进行扩展 *确定性算法的扩展: 算术路由—分组头中增加控制信息,由交换开关(新)识别 源 路 由—源节点根据历史信息建立路由(交换机不变) 查表路由—路由表项中包含多条路由域<i,o>,交换机根据网络状态选择 *特点:负载平衡好(竞争减少)、容错性好,带宽要求高 *应用:较少 ←┬—∵∑Δth(↑)>∑Δtc(↓) └→平衡负载有其他方法(虚拟通道等) 转32页 转上页

  37. 路由死锁示意图 二、死锁避免 1、死锁的类型 *迎面死锁:两个节点相互以同步方式传送消息时会发生 消息缓冲区—通常为FIFO队列 同步方式传送—消息发送后,只接收该消息的应答消息 ① ③ 消 息 处 理 消 息 处 理 ④ ② 节点B 节点A *路由死锁: 多个消息竞争网络资源时会产生 例—多个消息在网络中传输(存储-转发或切通方式),所需通道缓冲区均已满、各消息路径构成闭环时产生死锁 只接收①的应答 只接收②的应答 回下页

  38. C4 C4 V4 C1 C3 C1 C3 V3 C2 C2 2、死锁的避免 (1)迎面死锁的避免 只处理①的应答 除去超时消息 NIC无法发送(接收队列头非应答)时,仍可接收应答消息,或检测队列头并除去超时消息 ① ③ 消 息 处 理 消 息 处 理 ④ ② 节点B 节点A (2)路由死锁的避免 *虚拟通道技术:某通道被阻塞时,选择其虚拟通道传输,以打破通道闭环 虚拟通道数—在部分通道(关键通道)上设置 回下页 回50页 转上页

  39. *转弯路由技术:限制转弯种类,以避免通道产生闭环 例—2D网格结构的转弯路由技术 基本方法—不限制X→Y方向转弯,不允许Y→X方向转弯 结果—16种转弯中禁止了4种 性能—阻塞概率随禁止种类增加 └→反映死锁解决效果 +x→-y -x→-y +x→+y -x→+y X优先算法 优化方法—16种转弯中只禁止2种转弯 西优先算法 北最后算法 负优先算法 转上页

  40. 第四节 流量控制 *流控的任务:控制发送速度、以适应接收端吸收能力 *流控的种类:链路层控制、端到端控制 1、链路层流量控制 基于反馈的流量控制,IN通常都提供(以保证高速度) (LAN/WAN可不提供) (高可靠性来支持) *控制机制:采用握手机制,握手可基于令牌或信用 状态线 数据链路 *控制实现: 短链路—(宽链路)1个片/令牌,(窄链路)n个片/令牌 长链路—(宽链路)1个片/信用,(窄链路)n个片/信用 回下页

  41. 2、端到端流量控制 基于速率的流量控制,靠节点实现 *热点问题:某节点接收多个节点的分组,形成饱和树 控制机制—减少逻辑上的相关(降低关键路径热度) *全局通信操作:各节点分别收、发多个分组,形成矩阵 控制机制—分批发送+收/发数量平衡后发送, 分批发送+等待确认后发送 *接纳控制:切通网络中分组流水传输,形成拥塞节点链 控制机制—节点间采用基于信用的流控 (如节点间只允许1个在传分组) 转上页

  42. 接收器 缓冲区 缓冲区 发送器 交叉开关 输 入 端 口 输 出 端 口 路由、调度、控制 第五节 交换机的设计 *交换机(交换开关)结构图: *交换机设计的相关问题: 端口、交叉开关、通道缓冲策略、调度与控制等 ※仅讨论分布式控制的交换机设计 (集中式控制的交换机需从外部统一控制) 回44页

  43. 一、端口 *设计参数:端口数量、端口宽度、信号定时等 *端口数量:通常较少(2~4个) ←芯片周长增长比面积慢 *端口宽度: ①长链路均为串行链路、短链路常为并行链路, ②每个通道配备一根握手信号线(实现流控) S正在发 R/A S准备发 D禁止收 D可以收 D可以收 *信号定时实现方式: 指时钟及控制信号 并行链路—常用专用信号线实现 串行链路—须用帧内编码方式实现 开关S 开关D R/A 通道

  44. I0 I1 I2 I3 I0 O0 SRAM 相 地址 I1 O1 O0 Din Dout O1 I0 O0 O2 I2 I1 O1 O2 I2 O2 O3 I3 I3 O3 O3 (a)多路复用器构成 (b)三态驱动器构成 (c)SRAM构成 二、交叉开关--又称内部数据通路 1、交叉开关实现方法 通常有多路复用器、三态驱动、静态RAM3种 2、交叉开关设计 *阻塞程度:通常为非阻塞方式 ←利于减少时延 但SRAM方式亦较流行(原因稍后解释) *开关的度:通常较少(同端口数)←连线长度平方级增加 回47页 回47页 回46页 回49页

  45. 路由器0 路由器1 路由器2 路由器3 三、通道缓冲策略 *方案种类:无缓冲、入端缓冲、出端缓冲、共享缓冲池 1、无缓冲 要求各出端不会阻塞,适用于集中式控制的IN(如SIMD) 2、输入端设置缓冲 --路由器之前缓冲 *缓冲设置:每个入端设置1个FIFO缓冲区 4×4 交叉开关 输 入 端 口 输 出 端 口 调度、控制 *缓冲时延:T缓冲=分组大小/链路带宽 回下页 转42页 回47页

  46. I0的FIFO: ②被阻塞 … Pack02(→O1) Pack01(→O0) O0 O1 被阻塞 I1的FIFO: O2 … Pack12(→O2) Pack11(→O0) ①正在通过 O3 “排头”阻塞现象示意图 *路由器:调用路由算法(分组头中地址)→产生控制请求 └→FIFO队列头 T路由=路由算法时延,应有T路由<T缓冲 *交叉开关:宜采用多路复用器或三态驱动结构 *性能:会产生“排头”阻塞现象,通道时延最大 └→类似于迎面死锁 回下页 转上页 转44页

  47. 路由器2 路由器0 路由器1 路由器3 输 出 端 口 输 入 端 口 调度、控制 3、输出端设置缓冲 --路由器之后缓冲 (1)扩展输入FIFO队列 *缓冲设置:每个入端设置n个FIFO缓冲区 *路由器:调用路由算法→通知相应FIFO队列接收分组→产生控制请求 *交叉开关:宜采用多路复用器结构 *成本:(相对入端缓冲) 需增加n-1个缓冲区、1级转换(多路开关) *性能:避免了“排头”阻塞现象,通道时延最小 回下页 回50页 转45页 转上页 转44页

  48. 4×4 交叉开关 输 入 端 口 输 出 端 口 调度、控制 路由器0 路由器0 路由器0 路由器0 (2)独立输出FIFO队列 *缓冲设置:每个出端设置1个FIFO缓冲区 *路由器:调用路由算法→产生控制请求 *交叉开关:宜采用多路复用器或三态驱动结构 *成本:FIFO队列的时钟应比入端快n倍(竞争影响不链路速率) *性能:避免了“排头”阻塞现象,通道时延较小(有出端竞争) 回下页 转上页

  49. 4、设置共享缓冲池 *缓冲设置:所有入端及出端共享同一个存储器(SRAM), 每个出端设置1个FIFO队列(存放分组指针) *路由器:调用路由算法→通知相应FIFO队列接收分组指针 →产生控制请求 *交叉开关:采用SRAM结构 常规SRAM—带宽要求为BSRAM=B链路*2n, m端口SRAM—带宽要求为BSRAM=B链路*2n/m *性能:避免了“排头”阻塞现象,通道时延取决于SRAM 转44页 转上页

  50. 路由器0 路由器1 路由器2 路由器3 输 入 端 口 输 出 端 口 调度、控制 5、虚拟通道缓冲 *缓冲设置:每个入端设置m个FIFO缓冲区(m为2~n), 类似于扩展输入FIFO队列方式(n个) *性能:部分避免了“排头”阻塞现象,通道时延较小(与m有关) *应用:便于解决路由死锁 转47页 转38页

More Related