1、2022年5月31日星期二1第第1 1章章 计算机系统设计基础计算机系统设计基础第第2 2章章 数据表示与指令系统性能分析数据表示与指令系统性能分析第第3 3章章 流水技术和向量处理流水技术和向量处理 第第4 4章章 阵列计算机阵列计算机 第第5 5章章 多处理机系统多处理机系统第第6 6章章 数据流计算机数据流计算机2022年5月31日星期二2本章学习要求 了解几种非传统计算机结构的概念和工作原理 掌握数据流计算机的工作原理和结构特点 了解多核处理器计算机2022年5月31日星期二3第6章 新型计算机结构脉动阵列计算机 数据流计算机多核处理器计算机2022年5月31日星期二46.1 6.1
2、脉动阵列计算机脉动阵列计算机 脉动阵列结构是由一组相同的处理单元PE构成的阵列机。每个PE可完成少数基本的算术逻辑运算操作 工作原理:阵列内所有处理单元的数据锁存器都受同一个时钟控制,运算时数据在阵列结构的各个处理单元间沿各自的方向同步向前推进,就像血液受心脏有节奏地搏动在各条血管中同步向前流动一样 2022年5月31日星期二5 脉动阵列机主要适用要求计算量很大的信号图像的处理,以及某些特定计算类算法题目的求解,特别是需要对大量数据执行重复计算的运算受限类问题的求解。根据具体计算的问题不同,脉动阵列可以有一维线形、二维矩形六边形/二叉树形三角形等阵列互连构形。2022年5月31日星期二6Ma
3、b c a b d MMMMMMMMMMMMMMMMMMMd=ab+ca=a, b=b脉动式二维阵列流水机2022年5月31日星期二7333231232221131211aaaaaaaaaA333231232221131211bbbbbbbbbB333231232221131211cccccccccBAC31kkjikijbaC1i3,1j3 现有矩阵A、B如下,要在二维脉动阵列机上求两矩阵的乘积C其中在图中给出了在t1、t2 、t3 时刻送入数据,到t6 时,从45 方向上将同时输出 的值,t7 时输出 的值,t8 时输出 的值。可以看出,总共只需用8拍就可以完成两个33矩阵相乘,比单处理机
4、上循环执行所需的27拍,速度提高了两倍多。 3121111213,ccccc322223,ccc33c2022年5月31日星期二8 a11 a12 a13 0 0 t1 0 a21 a22 a23 0 t2 0 0 a31 a32 a33 t3t8 t6 c12 c13 t6 c11 c21 c31 t8 c33 t7 c23 t7 c22 c32 00000MMMMMMMMMMMMMMMMMMMt100 b31 b21 b11t20 b32 b22 b12 0t3b33 b23 b13 0 0Ma b c a b d 2022年5月31日星期二9脉动阵列计算机具有如下特点:(1)结构简单、规
5、整,模块化强,可扩充性好。非常适合于超大规模集成电路的实现。(2)PE间数据通信距离短、规则,使数据流和控制流的设计、同步控制简单规整。(3)具有极高的计算并行性,可通过流水获得很高的运算效率和吞吐率。(4)脉动阵列结构的构形与特定的计算任务和算法密切相关,限制了其应用范围。脉动阵列机的发展目标:研制通用型脉动阵列机。2022年5月31日星期二106.2 6.2 数据流计算机数据流计算机 数据流计算机的基本工作原理数据流计算机的基本工作原理 数据流程序图和数据流语言数据流程序图和数据流语言 数据流计算机的基本结构数据流计算机的基本结构 数据流计算机存在的主要问题数据流计算机存在的主要问题202
6、2年5月31日星期二117.2.1数据流计算机的基本工作原理数据流计算机的基本工作原理 数据驱动的数据流方式:只要一条或一组指令所要求的操作数全部准备就绪,就可立即激发相应的指令或指令组执行。特点:指令的执行基本上是无序的,完全受数据流的驱动;没有程序计数器PC,取而代之的是“数据令牌”。“数据令牌”是一种表示某一操作数或参数已准备就绪的标志。 2022年5月31日星期二127.2.2 数据流程序图和数据流语言 数据流程序图:是一种用来表示指令级的数据流程序的有向图(directed graph),它由多个结点(node)和一些连接它们的弧所组成。它说明了指令之间执行顺序的约束条件。 数据流程
7、序图中的结点除表示一般的算术逻辑操作外,还可表示常数产生、复制操作、判定操作和控制操作等。 2022年5月31日星期二13数据流程序图中常用的结点(1)算逻运算结点: +“加”+1“加1”N“非”“与”算术运算结点:加、减、乘、除、加l、减1等布尔运算结点:与、或、异或、非等 2022年5月31日星期二14(2)常数结点: 常数结点的功能是用来产生一个常数。 常数产生结点没有输入端,只有一条输出线。n激发后222数据令牌 一般表示数据复制控制复制o(3)复制结点: 数据复制结点:图中圆点和箭头用实心表示。控制量(布尔量)复制结点:图中的圆点和箭头用空心表示。2022年5月31日星期二15(4)
8、控制操作结点 : 激发后T门控结点 F门控结点T aT aT激发后T aF aFT门控:仅当布尔控制端为真、且输入端有数据令牌时才能激发,然后在输出端产生数据令牌而输入端的数据令牌消失。 F门控:仅当布尔控制端为假、且输入端有数据令牌时才能激发,然后在输出端产生数据令牌而输入端的数据令牌消失。 2022年5月31日星期二16MGT F aT激发后MGT F aMGT F aF激发后开关门控结点SWT F aTSWT F a激发后SWT F aFSWT F a激发后归并门控结点MGT F a2022年5月31日星期二17(5)条件判断结点 : 0 x x激发后激发后T(x0)T(x0) 0 x
9、xy yF(xy)F(x0Z=X-Y X0 oMGT F-+问题:图中有多少个结点? 出现了多少种结点?复制判断开关控制复制算术运算归并2022年5月31日星期二19数据流语言 数据流语言的结构类似于命令式程序设计语言,但又要能方便地被编译成数据流程图。 数据流语言大都是单赋值语言。单赋值的含义是指,在程序中每个变量只能赋值一次,即同一变量在赋值语句的左部只允许出现一次,不允许对同一变量进行多次赋值。 常用的数据流语言有美国的ID和VAL,法国的LAU以及英国曼彻斯特大学的SISAL语言等。 2022年5月31日星期二20数据流语言举例 对于点积操作,用ID语言则可写成如下的过程: proce
10、dure inner_product(a,b,n) initial S0 for i from 1 to n do new SS+(ai *bi) return S2022年5月31日星期二217.2.3数据流计算机的基本结构 依据处理数据令牌的不同,数据流机可分成静态和动态两大类。 静态数据流机的数据令牌不带任何标号,在任何一条弧上只允许存在一个数据令牌。 动态数据流机的数据令牌带有标号。这样就可使数据流程序图中的任一条弧上同时存在带有不同标号(或称颜色)的数据令牌。 2022年5月31日星期二22静态数据流计算机指令存储部件指令存储部件更新部件更新部件取指令部件取指令部件处理器部件处理器部
11、件可执行指令队列可执行指令队列结果包结果包操作包操作包:2022年5月31日星期二23动态数据流计算机指令存储部件指令存储部件处理部件处理部件匹配令牌组匹配令牌组:更新更新/取指部件取指部件可执行指令队列可执行指令队列匹配部件匹配部件由于任一条弧上同时存在带有不同标号(或称颜色)的数据令牌只要对令牌标号进行符合比较就可加以识别。为此,需要有一个称为匹配部件的硬件机构将标号附加到数据令牌上,并完成标号的匹配工作。 2022年5月31日星期二247.2.4数据流机存在的主要问题数据流机存在的主要问题1指令级的数据驱动导致每条指令的执行有较大的时间开销,因为在运行时需要对每一个和每一次操作进行数据相
12、关分析。 2由于数据流程序的操作包代码长度较长,将占用较多的存储空间。3当机器规模变大时,接到转接网络上的流水环数将增加,从而使转接网络变成系统性能的新瓶颈口。 2022年5月31日星期二256.3多核处理器计算机 多核处理器的工作原理 多核处理器的原型系统及产品 多核处理器系统的软件技术2022年5月31日星期二261、多核处理器的工作原理 片上多处理器(Chip Multiprocessor,CMP)系统允许多个线程在多个处理器核上并行执行,从而提高系统性能。 同时多线程(Simultaneous Multithreading,SMT)一个时钟允许发射多线程的多条指令,提高处理器发射槽以及
13、功能部件的利用率。2022年5月31日星期二27多核处理器的组织结构 共享存储的CMP 共享二级Cache的CMP2022年5月31日星期二282、 CMP的原型系统及产品 斯坦福大学的Hydra集成了4个MIPS R3000处理器核,每一个核有一对指令Cache和数据Cache,所有处理器核共享L2级Cache IBM的Power4双核、SUN Niagara 8核处理器、Intel安腾2双核处理器、AMD Opteron系列多核处理器2022年5月31日星期二293、多核处理器系统的软件技术 虚拟化技术根据需求将一个处理器虚拟化为多个独立的具有不同属性的虚拟机满足用户需求的多样性提高系统的
14、使用效率,发掘处理器的潜在计算能力实现系统间的安全隔离 虚拟化技术是在系统硬件和操作系统间增加VMM实现的2022年5月31日星期二30虚拟机1应用程序操作系统虚拟机1应用程序操作系统虚拟机n应用程序操作系统虚拟机监控器(VMM)系统硬件2022年5月31日星期二31事务型内存 事务概念源于数据库系统,在数据库系统中事务具有原子性、一致性、隔离性和持续性 事务型内存是为了解决线程同步一种有效方法,替代先前的互斥锁 事务型内存实现有硬件和软件方法2022年5月31日星期二32core1core2begin_xactionA.withdraw(20)B.deposit(20)end_xactionbegin_xactionSun=A.sun+B.sunend_xactionA.sun=80B.sun=220内存中的值硬件事务型内存示例2022年5月31日星期二33本课程全部结束 祝同学们学习进步!考试成功!祝同学们学习进步!考试成功!
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。