第 8 章 具有现代特色的计算机.ppt_第1页
第 8 章 具有现代特色的计算机.ppt_第2页
第 8 章 具有现代特色的计算机.ppt_第3页
第 8 章 具有现代特色的计算机.ppt_第4页
第 8 章 具有现代特色的计算机.ppt_第5页
已阅读5页,还剩55页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第八章具有现代特征的计算机,8.1脉冲阵列机8.2数据流机8.3还原机8.4智能机8.5大规模并行处理器MPP及集群系统,8.1脉冲阵列机,8.1.1脉冲阵列结构原理,图8.1脉冲阵列结构基本原理,图8.2为二维矩形脉冲阵列结构。假设数组中的每个PE可以在每一步中执行zz x in y in,x out x in,y out y。在这个二维脉冲阵列中,如果要将两个矩阵A和B相乘22,图8.2-22中的二维矩形脉冲阵列结构的例子包括,根据矩阵乘法规则,图8.3在22维矩形脉冲阵列上相乘两个矩阵22的过程,图8.1.2面向特定算法的脉冲阵列结构,图8.4脉冲阵列结构的配置例子,例如, 图8.5给出

2、了一个脉冲阵列结构的例子。每个处理单元PE包含一个乘法器和一个加法器,它们可以完成内积步进运算; 每个节拍可以从三个不同方向的三个输入端发送信息,即从左到右的水平方向、从下到上的垂直方向和从左下角到右上角的45倾斜方向,并将结果同时传输到相应的三个输出端,从而得到AA、BB和DAB。现在,假设矩阵A和B分别为,图8.5是脉动二维阵列流的一个例子。脉动阵列结构具有以下特点:结构简单规则,模块性强;2)数据流和控制流设计简单规则;3)极高的计算并行性;4)脉动阵列结构的配置与具体的计算任务和算法密切相关;8 . 1 . 3一般脉动阵列结构;图8.6可编程脉冲阵列结构;图8.7 WARP处理器;图8

3、.2数据流机;以及图8.2.1数据驱动概念,以一维二次方程ax2 bx c=0的根为例。给定b2-4ac0,FORTRAN程序可编写如下:read *,a,b,cx1=2 * a d=sqrt(b * b-4 * a * c)d=d/x1x 2=-b/x1x 1=x2 x2=x2-d print *,x1,x2end,图8.8图8.9求二次方程根的数据流图,8.2.2数据流图和语言,1。数据流图,8.10计算z=(a b)*(a-b)的数据流图,8.11数据流图的执行过程,8.12常见非控制操作节点及其激励规则,8.13常见控制操作节点及其激励规则图8.14条件分支结构的数据流程序图例,图8.

4、15圆形结构的数据流程序图例,图8.16 z=(a b)*(a-b)活动模块表示的计算,图8.17和图8数据流语言,单一赋值语言意味着每个变量在程序中只被赋值一次,即,相同的变量名。因此,事实上,在传统计算机中没有变量的概念,但它只是一个值名。例如,如果一个程序允许下列语句序列:C=A B C=C*D F=(C-D)/E,那么所使用的语言不是一种单一的赋值语言。此时,如果程序只允许写成C=A B C1=C*D F=(C1-D)/E,那么它所使用的语言就反映了单项作业的规则和要求。单赋值语言的语义清晰,程序的并行性易于编译器开发。在这种语言中,其单一作业语言的基本特征如下所列。遵循单一分配的规则

5、。(2)数据类型丰富。(3)它具有很强的类型学特征。(4)模块化结构的编程思想。(5)没有全局记忆和状态的概念。(6)程序没有规定语句的执行顺序。8.2.3数据流计算机结构,1。静态数据流机,图8.18静态数据流机结构,图8.19 MIT静态数据流机主要结构,图8.20 278仲裁网络示意图,2。动态数据流机,图8.21动态数据流机结构框图,图8.22麻省理工学院动态数据流机结构,图8.23麻省理工学院动态数据流机的典型指令格式,图8.24麻省理工学院动态数据流机各层的内部结构,图8.25曼彻斯特数据流机结构框图,以及8.2.4数据流机存在的问题。(1)数据流机的主要目的是提高操作级并行的开发

6、水平,但是如果主题本身具有很强的数据相关性,并且包含很少的并行组件,那么数据流机的效率就不如传统的冯诺依曼机。(2)为了在数据流机中标记数据、识别和处理标记,需要花费更多的辅助开销和更大的存储空间(可能是纽曼型的2-3倍)。(3)数据流机不保存数组。(4)数据流语言中的变量代表数值而不是存储位置,这使得程序员无法控制存储分配。为了有效地回收未使用的存储单元,增加了编译程序设计的难度。(5)很难设计出专门适用于数据流机的互联网络,数据流机的输入输出需要完善。(6)数据流机没有程序计数器,给诊断和维护带来困难。从函数编程的角度来看,程序是函数的一种表达。通过定义一组“程序形成运算符”,您可以使用简

7、单函数(即简单程序)来形成任意复杂程序,即形成任意复杂函数的表达式。另一方面,如果给定了属于函数表达式集中的复函数的表达式,则在有限约简和替换之后,通过使用所提供的函数集中的子函数,总是可以获得期望的结果,即由常数组成的目标。函数表达式是指函数之间的映射。从语法上讲,它是按照规定的语法规则形成的符号串,从语义上讲,它是多个运算符的组合。功能集包括所有原始功能和复合功能。原始函数是指从一个目标到另一个目标的基本映射,这是一个在还原机器构建时安装的函数。它们可以包括从一个元素序列中选择一个元素的功能、算术功能(如加法、减法、乘法和除法)、交叉替换功能、比较和测试功能、附加序列功能、加1/减1功能等

8、。复合函数是指通过使用一组“程序形成运算符”,由现有函数(程序)组成的复杂函数(程序)。一般来说,有多种“程序形成操作符”,如组合、构造、条件、插入、整体作用等。从约简的角度来看,函数是一种特殊的表达式,即带有局部变量的表达式。例如,在由DEF f(x)=x z定义之后,表达式x z变成一个函数,其中x是局部变量,z是全局变量。函数也可以理解为定义子表达式的替换规则。例如,在定义了f函数之后,当计算表达式5*f(3)时,f(3)可以被3 z代替,并从5*f(3)转换为5*(3 z)。函数程序可以由目标、函数、函数表达式、定义和操作符组成。这里,“定义”是指从原始函数定义一个新函数。通常,冒号(

9、:)用作操作符。例如,函数f作用于目标X,目标X可以表示为fx。以表达式z=(y-1)*(y x)为例,可以理解,z=f(u)等价于g(v)*h(w),其中g(v)=y-1;H(w)=y x,即函数z=f(u)的解可以化为两个子函数g(v)和H(w)的乘积。G(v)和h(w)可以分别向下减少。具有以下主要优点:(1)程序的每个句子可以表达更多关于算法的信息。(2)没有状态和存储单元的概念,函数的独立变量的值是随着函数的应用而动态获得的,因此不存在一个过程的变量受另一个过程影响的副作用,即在定义函数时应用的函数不能改变约束关系。(3)没有赋值语句,就不会有像命令式语言中的赋值语句x=x 1这样的

10、现象,它与数学中的变量不一致,违背了数学中“等式”的演绎推理规则;同时,不使用GO TO类控制语句。(4)指令执行的顺序只受操作数需求的限制。只要不存在数据相关函数,原则上它们可以在不同的处理器上并行处理,因此程序中的并行性易于检测和开发。(5)程序具有单一的递归结构,即函数由函数组成。功能程序的功能仅与功能程序的组件相关。数据结构是目标不可分割的一部分,而不是程序。因此,同一个函数程序可以处理不同结构和大小的目标,增强了程序的通用性。8.3.2用于功能编程的压下机的基本结构特征:(1)压下机应面向功能语言或非诺依曼机,功能语言为机器语言。(2)物理内存大,采用虚拟内存容量大的虚拟内存系统。它

11、对动态内存分配和管理有高效的软硬件支持,满足了缩减器对动态内存分配和大存储空间的需求。(3)处理部分应为多处理器或多处理器并行的结构,以充分发挥功能程序并行处理的特点。(4)适合功能程序运行的多处理器(机)互连机制。虽然过去引入的各种机器间互连结构原则上都是可用的,但最好采用树型互连结构或多级复合互连结构。(5)为了减少进程调度和进程间通信的开销,运行进程的节点机应该尽可能靠近进程所需的数据,运行过程中需要相互通信的进程所占用的处理器也应该靠近。此外,每个处理器的负载应该尽可能平衡。根据函数表达式在机器中的不同存储方式,约简方法分为两类:字符串约简和图形约简。为了说明这两种归约方法之间的区别,

12、仍然以表达式z=(y-1)*(y x)为例。假设x和y分别被指定为2和5。字符串约简的方法是,当提出寻找函数z=f(u)的请求时,它立即被转换成由运算符*和两个子函数g和h组成的“指令”。g和h的动作导致“指令”(-y,1)和(y,x)的执行。然后,从存储单元中取出y和x的值,计算y-1和y-x的结果,然后用返回值替换g和h,最后找到(*4,7),得到结果28。图8.26字符串约简和图形约简。2.串归约机可以看作是一种特殊的符号串处理器。函数定义、表达式和对象以字符串的形式存储在机器中。函数语言源程序可以直接在字符串缩减机上处理,无需翻译。据说串约简机的主要问题之一是不能共享子表达式,并且要多

13、次复制和求值,因此时间和空间的辅助开销比较大。图8.27细胞归约机中表达式的存储形式,图8.28 FFP机结构,图8.29 FP子树中从(a)到(d)的FP程序执行过程,图3归约机,图8.30古兹曼并行LISP机结构,8.4智能机,8.4.1智能信息处理和智能机器。在这样的系统中,需要解决知识获取、知识表示、知识存储、知识处理和知识应用的问题,使计算机能够更好地模拟细胞8.4.2智能机器的结构和使用的机器语言,1。智能机器结构,图8.31智能机器结构框图,2。逻辑编程语言PROLOG是逻辑编程语言的典型代表。1972年,法国马赛的科尔梅劳尔首次开发了这种技术。它是一种基于一阶谓词演算的交互式语

14、言。谓词逻辑与基于人类对客观世界的理解所形成的抽象概念的思维和推理方式非常一致。PROLOG语言是一种完全面向问题的语言。尽管PROLOG程序也有一个程序组件,但它与专注于算法描述的一般程序完全不同。PROLOG程序是对已知事实及其与问题的关系的描述。其程序的执行主要取决于PROLOG程序中语句的内在逻辑关系和语言本身根据产生式规则进行演绎推理的能力。从现有事实中得出新的事实。只有一部分取决于用户明确给出的控制信息。以X=6,Y=2,Z=(X,Y)*(X-Y)为例,如果用PROLOG语言描述,只需要一个产生式规则,即assign (z,X,y) :- p为正(X,1),Q为负(X,Y)。该规则

15、意味着如果P=X,1(第一个子句),Q=X-Y(第二个子句)和Z=P*Q(第三个子句)都满足,则一般目标,即左边的规则头假设X=6,Y=2,求解z的问题可以写成?-分配(Z,6,2)。3。智能计算机的发展。经过三年的调查和准备,日本于1981年10月宣布了从1982年到1991年的所谓“第五代计算机”的研究计划,引起了巨大的国际反响。此后,美国、英国和西欧国家在人工智能和智能机器的研究方面取得了许多成就。1982年4月,日本正式成立了新一代计算机技术研究所(ICOT),许多大公司、研究机构和大学都参加了该研究所。据此,建立了五个实验室,包括核心语言、自然语言处理、知识库子系统、推理子系统和应用

16、子系统。大规模并行处理器MPP和集群系统。大规模并行处理需要新的计算方法、新的存储技术、新的处理方法和新的结构组织。因此,将数百、数千甚至数万个高性能、低成本的RISC微处理器互连起来形成大规模并行处理器MPP是很自然的。该处理器可以进行大规模的中、细粒度并行处理,形成SIMD或MIMD系统。它具有高性价比和良好的可扩展性。如果一个RISC微处理器的性能是100 MFLOPS,那么由1 024个这样的微处理器组组成的MPP系统可以达到100GFLOPS的最高性能。这比由单个主处理器组成的超级计算机的性能高很多倍,成本可能只有它的1/5。良好的可扩展性是节点处理器的数量可以方便地增加或减少,从而使系统规模、处

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论