微机原理与接口技术课程设计计算机并行处理机制的研究.docx
《微机原理与接口技术课程设计计算机并行处理机制的研究.docx》由会员分享,可在线阅读,更多相关《微机原理与接口技术课程设计计算机并行处理机制的研究.docx(14页珍藏版)》请在冰豆网上搜索。
微机原理与接口技术课程设计计算机并行处理机制的研究
计算机科学与技术学院课程设计报告
2011—2012学年第_1__学期
课程名称微机原理与接口技术
设计题目计算机并行处理机制的研究
学生姓名
学号
专业班级
指导教师
2011年9月6日
概述
二、并行的概念1
2.1并行性1
2.2并行等级的划分1
2.3实现并行处理的技术途径2
三、计算机内部并行处理机制3
3.1流水线3
3.2超标量结构4
3.3超流水线结构5
3.4VLIW(超长指令字)6
四、计算机间的并行处理机制8
4.1对称多处理机SMP8
4.1.1SMP的结构和特性8
4.1.2多处理机中的扩展存储层次结构9
4.2大规模并行处理机MPP10
4.2.1MPP的结构和特性10
4.2.2当代MPF系统的公共体系结构11
4.3机群12
4.3.1机群的概念和特性12
4.3.2机群的分类13
4.3.3机群的体系结构13
五、总结与展望16
六、参考资料16一、概述
计算机从1946年的ENIAC机问世以来,至今已经历了五次更新换代。
每一代计算机的性能都成数量级倍的提高,计算机的体积、重量、价格、稳定性、可靠性、可维护性及功能的多样性等均有了显著的改善。
人们通常以电子管、晶体管、中小规模集成电路、大规模和超大规模集成电路等器件的变革作为计算机换代的标志。
但是,计算机系统实际上是器件、硬件、软件、算法、语言、系统结构以及通讯技术等的综合,所以计算机的换代也反映在上述各方面的巨大变革上。
促使计算机迅速发展和系统性能极大提高的因素是多方面的,其中,器件技术尤其是微电子技术的迅速发展无疑是最为关键的因素,它是计算机得以迅速发
展的物质基础。
然而,应当看到,如果不能最合理地利用这些新器件、新设备,最大限度地发挥出它们的内在潜力,设计和构成综合性能指标最佳的计算机系统,只靠器件技术的变革是不行的,还需要硬件、软件、算法、语言、系统结构、通讯技术等多方面的发展变革才行。
在特定的时期里,器件的发展变化会因物理、工艺、价格等条件限制而有一定限度。
在同一种器件技术水平上,进一步提高计算机系统性能的有效途径就是在系统结构上使用并行处理技术,挖掘出系统固有的并行性潜力,提高其并行性操作的程度。
并行性在不同的处理级别中可表现为多种形式,如先行方式、流水方式、向量化、并发行、同时性、数据并行性、划分、交叉、重叠、多重性、重复、时间共享、空间共享、多任务处理、多道程序、多线程方式和分布式计算等。
二、并行的概念
2.1并行性
只要在同一时刻或是同一时间间隔内完成两种或两种以上性质相同或不同的工作,它们在时间上相互重叠,都体现了并行性。
也就是说,并行性包括同时性和并发性两重含义。
同时性(simultaneity)指的是两个或多个时间在同一时刻发生,并发性(concurrency)指的是两个或多个事件在同一时间间隔内发生。
2.2并行等级的划分
并行性可以划分为不同的等级,从不同的角度出发,等级的划分方法也不一样。
(1)从计算机系统内部执行程序的角度来划分
指令内部一条指令内部各种微操作之间的并行
指令之间多条指令在某一时刻或同一时间间隔内并行执行
任务或进程之间一一多个任务或程序段之间的并行执行
作业或程序之间一一多个作业或多道程序之间的并行执行
(2)从计算机系统中处理数据的并行性角度来看
字串位串一一同时只对一个字的一位进行处理,通常指传统的串行单处理机,没有并行性
字串位并一一同时对一个字的全部位进行并行处理,通常指传统的并行单处理机,开始出现并行性
字并位串一一同时对许多字的同一位进行处理,开始进入并行处理领域
字并位并一一同时对许多字的全部或部分位组进行处理。
(3)从计算机信息加工的各个步骤和阶段来看
存储器操作并行一一可以采用单体多字、多体单字或多体多字方式在一个存储周期内访问多个字,进而采用按内容访问方式在一个存储周期内用位串字并获全并行方式实现对存储器中大量字的高速并行比较、检索、更新、变换等操作。
典型的例子就是并行存储器系统和以相联存储器为核心构成的相联处理机。
处理机操作步骤并行一一处理机操作步骤可以指一条指令的取指、分析、执行等操作步骤,也可指如浮点加法的求阶差、对阶、尾加、舍入、规格化等具体操作的执行步骤。
操作步骤并行就是将操作步骤或具体操作的执行步骤在时间上重叠流水地进行。
典
型的例子就是流水线处理机。
处理机操作并行一一为支持向量、数组运算,可以通过重复设置大量处理单元,让它们在同一控制器控制下按照同一条指令的要求对多个数据组同时操作。
典型的例子就是并行处理机。
指令、任务、作业并行这是较高级的并行,虽然它也可包含如操作、操作步骤等较低等级的并行,但原则上与操作级并行是不同的。
指令级以上的并行是多个处理机同时对多条指令及有关的多数据组进行处理,而操作级并行是对同一条指令及其有关的多数据组进行处理。
因此,前者构成的是多指令流多数据流
(MIMD计算机,后者构成的则是单指令流多数据流(SIMD计算机。
典型的例子是多处理机。
2.3实现并行处理的技术途径
实现并行处理的技术途径是各种各样的,其中主要有时间重叠、资源重复和资源共享等方法。
时间重叠在并行性概念中引入时间因素,使多个处理过程在时间上错开,轮流重叠地使用同一套硬件设备的不同部件,以加快硬件周转而赢得速度。
最典
型的例子就是流水线工作方式。
时间重叠原则上不需要重复增加硬件设备就可提高系统的性能。
资源重复在并行性概念中引入空间因素,通过重复设置硬件资源,如处理
机或外围设备等,来达到大幅度提高可靠性和处理速度的目的。
资源共享让多个用户按一定时间间隔轮流使用同一套资源,以提高系统的
整体性能。
三、计算机内部并行处理机制
RISC处理机内部可以采用如下技术来增加其并行性:
(1)哈佛结构:
即设计分开的指令cache和数据cache,可以并行工作。
(2)多端口的寄存器堆。
如果一个寄存器堆有两个源操作数端口和一个目的操作数端口,那么两个源操作数可以同时取出,还可以写入或取出另一条指令的目的操作数。
(3)流水线。
(4)编译优化技术。
充分利用硬件资源、优化分配寄存器。
(5)超标量(superscalar)结构。
即设置多个执行部件。
(6)超流水线(superpipeline)结构。
(7)VLIW(VeryLongInstructionWord)
指令级并行处理(ILPP,InstructionLevelParallelProcessing)是实
行低层机器操作的并行执行,如存、取、整数加和浮点乘等。
其中的流水线、超长指令字VLIW超标量结构等技术都属于处理机指令级并行技术,下面将分别对其加以介绍。
3.1流水线
一条典型指令的执行基本上由取指、译码、执行和写回4个阶段组成。
由于
不同阶段的执行由不同的功能部件来进行,因此可以使得指令的执行在时间上重
迭起来。
流水线的基本思想就是重迭连续指令的执行以节省执行时间和增加吞吐率。
一般流水线结构如下图所示:
IPC(InstructionPerCycle)=1,但由于数据相关、转移相关和资源相关
使得IPC<1。
n
IF
ID
EX
WR
n+1
IF
ID
EX
WR
n+2
IF
ID
EX
WR
3.2超标量结构
主要特点:
(1)配置多个处理部件,采用多条流水线并行处理;
(2)能同时对若干条指令进行译码,将可并行执行的指令送往不同的执行部件,从而达到每个周期启动多条指令的目的。
(3)在程序运行期间由硬件完成指令调度。
下图中,一个周期内同时发出三条指令,有多个执行部件,三条指令发到三个独立的执行部件去分别执行。
IF
ID
EX
WR
IF
ID
EX
WR
IF
ID
EX
WR
超标量的典型结构:
指令的执行部件:
存储器操作部件:
执行Load、Store指令
ALU整数运算
转移控制部件:
执行转移指令
状态记录部件(调度部件):
进行流水动态调度。
依靠硬件在程序运行过程中对可能出现的相关情况加以检测,从而保证流水线中的各个功能部件能最大限度的重叠工作。
它对流水线中的各个功能部件的工作状态、进入流水线中的各条指令的工作状态、它们所使用的源寄存器和目的寄存器情况等进行集中的统一记录和调度。
在译码阶段,状态记录部件根据所记录的状态决定是否将译码后的指令发送给有关功能部件进行处理。
状态记录部件主要检查:
该指令要使用的功能部件是否已被流水线中的其它指令占用(资源冲突);
该指令的源操作数寄存器是否为其它指令的目的寄存器,或者它所要写入的目的寄存器又正好是前面其它指令所要读出的操作数,或是要写入的目的寄存器。
即检查是否存在RAWWARWAV的数据相关。
3.3超流水线结构
下图中,一个流水段(一个周期)分成三个子段,每个子段取出的仍只有一条指令,但总体来看,一个周期内取出了三条指令,执行部件可以一套,每个部件在一个子段时间内完成。
超标量结构、超流水线结构一般采用指令窗方法,把一段指令取到窗口中,判断这段指令能否并行执行。
超标量和超流水线的比较
超标量:
工作部件多,晶体管数目也多,每个部件的工作速度相
对的可以低一些。
以空间换取时间。
超流水线:
工作部件少,晶体管数目少了,每一个部件必须在一个子周期内执行,工作速度较高。
以时间换取了空间。
3.4VLIW(超长指令字)
1983年,Yale大学Fisher教授首先提出。
一条长指令来实现多个操作的并行执行,以减少对存储器的访问,这种长指令往往达上百位,甚至上千位。
如下面的图。
每拍启动一条长指令,执行3个操作,相当于3条指令,要求并行度为3。
主要特点:
单一的控制流。
只有一个控制器,每个周期启动一条长指令。
超长指令字被分成多个控制字段,每个字段直接独立的控制每个功能部件。
含有大量的数据通路和功能部件,由于编译器在编译时间已经考虑可能出现的数据相关和资源相关,故控制硬件比较简单。
在编译阶段完成超长指令中多个可并行执行操作的调度(超长指令字的生成是由编译器完成)。
VLIW机的结构框图
RF(寄存器堆)
四、计算机间的并行处理机制
体系结构的并行性才是并行计算机真正的特点,下面主要介绍当代流行的几
种主要的并行体系结构:
对称多处理机SMP大规模并行处理机MPP机群。
4.1对称多处理机SMP
4.1.1SMP的结构和特性
SMP机器结构图如下:
SMP
SMFP吉构具有以下特性:
(1)对称性系统中任何处理机都可以对称地访问任何存储单元和I/O
设备,且具有相同的访存时间,所以也常叫均匀存储访问UMA结
构
(2)单一物理地址空间所有处理器的存储单元按照单一地址空间编址
(3)高速缓存及其一致性多极高速缓存可支持数据局部性,且其一致性由硬件来实现
(4)低通信延迟处理机间的通信用简单的读/写指令来完成
正是这些特性使得对称处理机得到了广泛使用。
例如,由于存在单一物理地