高级计算机系统结构期末考试复习总结

合集下载

计算机体系结构期末考试知识点与答案

计算机体系结构期末考试知识点与答案

计算机体系结构期末考试知识点与答案体系结构复习重点.doc1.冯.诺依蔓计算机的特点答:冯·若依曼计算机的主要特点如下:存储程序方式。

指令和数据都是以字的方式存放在同一个存储器中,没有区别,由机器状态来确定从存储器读出的字是指令或数据。

指令串行执行,并由控制器集中加以控制、单元定长的一维线性空间的存储器使用低级机器语言,数据以二进制形式表示。

单处理机结构,以运算器作为中心。

其实,他最大的特点就是简单易操作。

2. T(C)=<K*K',D*D',W*W'>所描述的三个层次(8页)答:3个层次为控制器、算术逻辑部件、基本逻辑部件3. 计算机系统结构的分类(5页)4. 计算机系统中的数据表示(38页)5. 指令系统设计的原则答:指令系统的设计原则是,应特别注意如何支持编译系统能高效、简易地将源程序翻译成目标代码。

首先是正交性:又称分离原则或互不相干原则。

即指令中各个有不同含义的字段之间,在编码时应互相独立、互不相关。

规整性:对相似的操作数做出相同的规定。

可扩充性:要保留一定余量的操作码空间,为以后的扩展所用。

对称性:为了使编译能更加方便,通常希望操作具有对称性。

6. 流水操作中的相关答:流水操作过程中会出现一下的3个相关:资源或结构相关、数据相关、和控制相关。

资源相关是指当有多条指令进入流水线后在同一机器周期内争用同一功能部件所发生的冲突。

数据相关:这是由于流水线中的各条指令的重叠操作使得原来对操作数的访问顺序发生了变化,从而导致了数据相关的冲突。

控制相关主要是转移指令引起的,比起数据相关来,他会使流水线丧失更多的性能。

7. 向量机中对向量的各种运算可以采用的加工方式(149页)答:向量机中对向量的各种运算可以采用不同的加工方式,但比较有效的加工方式应是尽量避免出现数据相关和尽量减少对向量功能的转换。

一种普通加工方式称为横向加工,它是按向量顺序计算的。

另外一种加工方式称为垂直加工,即它是先纵向加工所有B和C向量中元素对的相加操作。

计算机系统结构考点总结

计算机系统结构考点总结

计算机系统结构考点总结计算机系统结构是计算机科学与技术领域的重要分支,涉及计算机硬件和软件的组成及其相互关系。

为了帮助大家更好地掌握这一领域的核心知识,本文将针对计算机系统结构的考点进行详细总结。

一、计算机系统结构基本概念1.计算机系统结构的定义及发展历程2.计算机系统结构的分类:冯·诺伊曼结构、哈佛结构、堆栈式结构等3.计算机系统性能指标:指令周期、CPU时钟周期、主频、缓存命中率等二、中央处理器(CPU)1.CPU的组成:算术逻辑单元(ALU)、控制单元(CU)、寄存器组等2.指令集架构:复杂指令集计算机(CISC)、精简指令集计算机(RISC)3.CPU缓存:一级缓存、二级缓存、三级缓存及其工作原理4.多核处理器:核数、并行计算、线程级并行等三、存储系统1.存储器层次结构:寄存器、缓存、主存储器、辅助存储器等2.主存储器:DRAM、SRAM、ROM等3.磁盘存储器:硬盘、固态硬盘、光盘等4.存储器管理:分页、分段、虚拟存储器等四、输入输出系统1.I/O接口:并行接口、串行接口、USB、PCI等2.I/O设备:键盘、鼠标、显示器、打印机等3.I/O控制方式:程序控制、中断、直接内存访问(DMA)等4.I/O调度策略:先来先服务(FCFS)、最短作业优先(SJF)、扫描算法等五、总线与通信1.总线分类:内部总线、系统总线、I/O总线等2.总线标准:ISA、PCI、PCI Express等3.通信协议:TCP/IP、UDP、串行通信等4.网络拓扑结构:星型、总线型、环型、网状等六、并行计算与分布式系统1.并行计算:向量机、SIMD、MIMD等2.分布式系统:分布式计算、分布式存储、负载均衡等3.并行与分布式编程:OpenMP、MPI、MapReduce等4.并行与分布式算法:排序、搜索、分布式锁等通过以上考点的总结,相信大家对计算机系统结构有了更加全面和深入的了解。

计算机系统结构复习总结

计算机系统结构复习总结

计算机系统结构复习总结计算机系统结构复习总结一、计算机系统结构概念1.1 计算机系统结构:程序员所看到的计算机的基本属性,即概念性结构与功能特性。

*注意:对不同层次上的程序员来说,由于使用的程序设计语言不同,可能看到的概念性结构和功能特性会有所不同。

1.2 计算机系统的层次结构现代计算机是一种包括机器硬件、指令系统、系统软件、应用程序和用户接口的集成系统。

现代计算机结构图*注意:计算机结构的层次模型依据计算机语言广义的理解,可将计算机系统看成由多级“虚拟”计算机所组成。

从语言层次上画分可得下图:计算机结构的层次模型1.3计算机系统结构组成与实现计算机系统结构:是计算机系统的软件与硬件直接的界面计算机组成:是指计算机系统结构的逻辑实现计算机实现:是指计算机组成的物理实现*计算机系统结构、组成与实现三者间的关系:计算机系统结构不同会影响到可用的计算机组成技术不同,而不同的计算机组成又会反过来影响到系统结构的设计。

因此,计算机系统结构的设计必须结合应用来考虑,要为软件和算法的实现提供更多更好的硬件支持,同时要考虑可能采用和准备采用哪些计算机组成技术,不能过多或不合理地限制各种计算机组成、实现技术的采用与发展。

计算机组成与计算机实现可以折衷,它主要取决于器件的来源、厂家的技术特长和性能价格比能否优化。

应当在当时的器件技术条件下,使价格不增或只增很少的情况下尽可能提高系统的性能。

1.4 计算机系统结构的分类计算机结构分类方式主要有三种:(1)按“流”分类按“流”分类法是Flynn教授在1966年提出的一种分类方法,它是按照计算机中指令流(Instruction Stream)和数据流(Data Stream)的多倍性进行分类。

指令流是指机器执行的指令序列,数据流是指指令流调用的数据序列。

多倍性是指在计算机中最受限制(瓶颈最严重)的部件上,在同一时间单位中,最多可并行执行的指令条数或处理的数据个数。

*注意:按“流”分类法,即Flynn分类法的逻辑结构类型:①SISD计算机②SIMD计算机③MISD计算机④MIMD计算机(2)按“并行性”和“流水线”分类(3)按计算机系统结构的最大并行度进行分类1.5计算机系统的设计与实现随着大规模集成电路技术的发展和软件硬化的趋势,计算机系统软、硬件间界限已经变得模糊了。

计算机系统结构期末复习

计算机系统结构期末复习

计算机系统机构知识点总结1.名词解释1)翻译:翻译是先用转换程序将高一级机器级上的程序整个地变换成低一级机器级上可运行的等效程序,然后再在低一级机器上实现的技术。

2)解释:解释是在低一级机器级上用它的一串语句或指令来仿真高一级机器级上的一条语句或指令的功能,通过对高一级程序中的每条语句或指令逐条解释来实现的技术。

3)CPI:表示执行每条指令所需要的平均时钟周期数。

4)MIPS:是一个用来描述计算机性能的单位,即每秒执行百万条指令。

5)MFLOPS:是一个用来描述计算机性能的单位,即每秒执行百万次浮点操作。

6)基准程序:是性能测试程序,并假设他能刻画某一类应用问题的处理和数据移动特征。

基准程序用来测量和预测计算机系统的性能,并能提示它们的体系结构的弱点和特点。

7)基准程序组:是一套基准程序的控制测试条件及过程的一组特点规则,包括输入数据,输出结果以及性能指标。

8)基准程序系列:是一套基准程序组。

9)CISC:复杂指令系统计算机。

10)RISC:精简指令系统计算机。

11)加载/存储结构:即只允许LOAD指令和STORE指令执行存储器操作,其他指令均对寄存器进行操作。

12)窗口重叠技术:为了能更简单、直接的实现过程与过程之间的参数传递。

大多数RISC 机器的CPU中都设置有数量较大的寄存器组,让每个过程使用一个有限数量的寄存器窗口,并让调用过程的低位寄存器与被调用的高位寄存器重叠使用。

13)延迟转移技术:将转移指令与其前面的与转移指令无关的一条或几条指令对换位置,让成功转移总是在紧跟的指令被执行之后发生,从而使预取的指令不作废,同时可节省一个或几个机器周期。

14)退耦CISC/RISC体系结构:在CPU芯片中有一个前端部分,它将x86代码转换成RISC类指令供后端的RISC核心去完成超标量和/或超流水线执行。

15)后RISC:商品化微处理器中存在的一种逆向发展趋势是将越来越多的性能加到RISC微处理器中,某加入的特性仍属于RISC类型,但也有许多加入的特性明显的是非RISC或甚至是属于CISC类型的。

计算机系统结构期末复习

计算机系统结构期末复习

第一章计算机系统结构定义计算机=软件+硬件(+网络)两种定义:定义1:Amdahl于1964年在推出IBM360系列计算机时提出:程序员所看到的计算机系统的属性,即概念性结构和功能特性定义2:计算机系统结构主要研究软硬件功能分配和对软硬件界面的确定计算机系统的多级层次模型第6级专用应用语言机器特定应用用户(使用特定应用语言)(经应用程序翻译成高级语言)第5级通用高级语言机器高级语言程序员(使用通用高级语言)(经编译程序翻译成汇编语言)第4级汇编语言机器汇编语言程序员(使用汇编语言)(经汇编程序翻译成机器语言、操作系统原语)第3级操作系统语言机器操作系统用户(使用操作系统原语)(经原语解释子程序翻译成机器语言)第2级传统机器语言机器传统机器程序员(使用二进制机器语言)(由微程序解释成微指令序列)第1级微指令语言机器微指令程序员(使用微指令语言)(由硬件译码器解释成控制信号序列)第0级硬联逻辑硬件设计员第0级由硬件实现,第1级由微程序实现,第2级至第6级由软件实现,由软件实现的机器称为:虚拟机从学科领域来划分:第0和第1级属于计算机组织与结构,第3至第5级是系统软件,第6级是应用软件。

它们之间仍有交叉。

第0级要求一定的数字逻辑基础;第2级涉及汇编语言程序设计的内容;第3级与计算机系统结构密切相关。

在特殊的计算机系统中,有些级别可能不存在。

计算机组成:是计算机系统结构的逻辑实现确定数据通路的宽度•确定各种操作对功能部件的共享程度•确定专用的功能部件•确定功能部件的并行度•设计缓冲和排队策略•设计控制机构•确定采用何种可靠性技术计算机实现:是指计算机组成的物理实现处理机、主存储器等部件的物理结构•器件的集成度和速度•专用器件的设计•器件、模块、插件、底版的划分与连接•信号传输技术•电源、冷却及装配技术,相关制造工艺及技术等计算机系统结构、计算机组成和计算机实现是三个不同的概念。

系统结构是计算机系统的软硬件的界面;计算机组成是计算机系统结构的逻辑实现;计算机实现是计算机组成的物理实现。

计算机系统结构知识点复习考点归纳总结

计算机系统结构知识点复习考点归纳总结

计算机系统结构知识点复习考点归纳总结令)控制计算机硬件的层次,汇编语言机器级则是用(助记符)来控制计算机硬件的层次。

22、缓存技术是为了(解决处理器与主存速度不匹配的问题)而引入的。

23、DMA访问是指(直接内存访问)技术,可以减少CPU的负担,提高数据传输效率。

24、在多处理机系统中,(任务)级并行性是指多个任务同时执行,(数据)级并行性是指一个任务中的多个数据同时执行。

25、计算机系统中的(指令流水线)技术可以提高CPU 的运行效率,将多个指令的执行过程重叠起来,从而减少CPU的空闲时间。

26、计算机系统中的(虚拟存储器)技术可以将主存和辅存结合起来,使得程序能够访问比主存更大的地址空间,从而提高系统的性能。

27、计算机系统中的(分布式系统)是指将多个计算机连接起来,共同完成一个任务,可以提高系统的可靠性和性能。

28、计算机系统中的(并行计算)技术可以将一个大问题分解成多个小问题,同时在多个处理器上进行计算,从而提高计算速度和效率。

29、计算机系统中的(云计算)是指将计算资源和服务通过网络提供给用户,可以实现资源的共享和高效利用。

4096字节之间)当程序需要访问某一页时。

操作系统会将该页从磁盘上读入主存,然后再进行访问。

这种方式可以提高存储器的利用率,但也会增加访问时间和开销。

并行性是指在同一时间段内完成多项任务的能力。

它可以分为最低耦合、松散耦合和紧密耦合三种类型,取决于物理连接的紧密度和交叉作用能力的强弱。

开发并行性的途径有时间重叠、资源重复和资源共享。

并行性的开发需要综合考虑硬件、软件、语言、算法和性能评价等因素。

资源重复是指通过重复设置硬件资源来提高可靠性或性能。

最典型的例子是双工系统。

资源重复不仅可以提高可靠性,而且可以进一步用多计算机或机群系统来提高系统的速度性能。

并行处理技术的研究需要综合考虑硬件、软件、语言、算法和性能评价等因素。

沿时间重叠技术途径发展的异构型多处理机系统的典型结构代表是流水线处理机。

高级计算机体系结构总结

高级计算机体系结构总结

1.摩尔定律内容及其对现代计算机的影响?答:摩尔定律是由英特尔名誉董事长戈登摩尔经过长期观察指出的。

主要内容是集成电路芯片上所集成的晶体管数将每隔18个月翻一番,微处理器的性能将提高一倍,价格下降一半。

影响:(1)归纳了信息技术进步的速度,比如半导体芯片的发展;(2)带动了芯片产业自热化得竞争,是公司发展的驱动力;(3)指导着高科技产业中设计者们的工作,让生产找到了提高产品性能的途径。

摩尔定律实际上是关于人类信念的定律,当人们相信某件事情一定能做到时就会努力去实现它。

2.Pipling指令集流水线段各是什么?答:一条指令流水线由五段组成:(1)取指令(IF):发送程序计数器PC到内存,取出当前指令,更新PC;(2)指令译码(ID):判断指令类型,从寄存器取操作数(3)计算有效地址或者执行(EX):计算内存操作数的有效地址,分支跳转的有效地址,执行(4)访存取数(MEM):用有效地址去访存取数或存数,用分支跳转有效地址更新PC(5)写回(结果写回寄存器WB)3.什么原因导致流水线停止,怎样解决?答:要使流水线具有良好的性能,必须使流水线畅通流动,不发生断流,但由于流水过程中发生以下三种相关冲突而停止:结构相关,数据相关,控制相关。

结构相关:当数据和指令放在同一个存储器且只有一个访问口时,便发生两条指令争用存储器资源的相关冲突,解决办法:一是指令停顿一排再启动,插入一个气泡,二是增设一个存储器,将指令和数据分别放在两个存储器中。

数据相关:在一个程序中,如果必须等前一条指令执行完毕后,才能执行后一条指令,那么这两条指令就是数据相关的,解决办法:一是插入气泡,二是流水CPU的运算器中特意设置若干运算结果缓冲寄存器,暂时保留运算结果,以便于后继指令直接使用;三是推迟后继指令的执行,直到前面的指令的结果产生为止,这样大大影响流水线的吞吐率。

控制相关:是由转移指令引起的,当执行转移指令时,依据转移条件产生的结果,可能为顺序取下一条指令,也可能转移到新的目标地址取指令,从而使流水线发生断流,为减少转移指令对流水线性能的影响,可采用延迟转移法和转移预测法。

计算机体系结构期末考试知识点与答案复习过程

计算机体系结构期末考试知识点与答案复习过程

计算机体系结构期末考试知识点与答案体系结构复习重点.doc1.冯.诺依蔓计算机的特点答:冯·若依曼计算机的主要特点如下:存储程序方式。

指令和数据都是以字的方式存放在同一个存储器中,没有区别,由机器状态来确定从存储器读出的字是指令或数据。

指令串行执行,并由控制器集中加以控制、单元定长的一维线性空间的存储器使用低级机器语言,数据以二进制形式表示。

单处理机结构,以运算器作为中心。

其实,他最大的特点就是简单易操作。

2. T(C)=<K*K',D*D',W*W'>所描述的三个层次(8页)答:3个层次为控制器、算术逻辑部件、基本逻辑部件3. 计算机系统结构的分类(5页)4. 计算机系统中的数据表示(38页)5. 指令系统设计的原则答:指令系统的设计原则是,应特别注意如何支持编译系统能高效、简易地将源程序翻译成目标代码。

首先是正交性:又称分离原则或互不相干原则。

即指令中各个有不同含义的字段之间,在编码时应互相独立、互不相关。

规整性:对相似的操作数做出相同的规定。

可扩充性:要保留一定余量的操作码空间,为以后的扩展所用。

对称性:为了使编译能更加方便,通常希望操作具有对称性。

6. 流水操作中的相关答:流水操作过程中会出现一下的3个相关:资源或结构相关、数据相关、和控制相关。

资源相关是指当有多条指令进入流水线后在同一机器周期内争用同一功能部件所发生的冲突。

数据相关:这是由于流水线中的各条指令的重叠操作使得原来对操作数的访问顺序发生了变化,从而导致了数据相关的冲突。

控制相关主要是转移指令引起的,比起数据相关来,他会使流水线丧失更多的性能。

7. 向量机中对向量的各种运算可以采用的加工方式(149页)答:向量机中对向量的各种运算可以采用不同的加工方式,但比较有效的加工方式应是尽量避免出现数据相关和尽量减少对向量功能的转换。

一种普通加工方式称为横向加工,它是按向量顺序计算的。

另外一种加工方式称为垂直加工,即它是先纵向加工所有B和C向量中元素对的相加操作。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第一章量化设计与分析基础1.计算机性能提升表现在哪些方面:半导体技术不断提高,如特征尺寸和时钟频率;计算机体系结构不断改进,如高级语言编译器、标准化的操作系统和指令更为简单的RISC 体系结构。

2.并行分类:1)应用程序的并行分类:数据级并行(DLP):同时操作多数据任务级并行(TLP):创建了一些能够独立处理但大量采用并行方式执行的工作任务2)硬件的体系结构:指令级并行(ILP):在编译器帮助下。

利用流水线的思想开发数据级并行,利用推理执行的思想以中等水平开发数据集并行。

向量体系结构和图像处理单元(GPUs):将单条指令并行应用于一个数据集,来达到数据集并行线程级并行:在紧耦合硬件模型中开发数据集并行或任务及并行,这种模型允许在线程之间进行交互。

请求级并行:在程序员或操作系统制定的大量去耦合任务之间开发并行3.Flynn’s分类是如何分类的?Flynn’s分类主要分为四类:1)单指令流、单数据流(SISD):一条指令处理一个数据,可以利用指令级并行(ILP)2)单指令流、多数据流(SIMD):将大量重复设置的处理单元按一定方式互连成阵列,在单一控制部件CU(Contrul Unit)控制下对各自所分配的不同数据并行执行同一指令规定的操作,主要应用于向量体系结构、多媒体扩展指令和图像处理单元(Graphics processor units) 3)多指令流、单数据流(MISD):用多个指令作用于单个数据流,没有商业实现4)多指令流多数据流(MIMD):每个处理器都提取自己的指令,对自己的数据进行操作,主要用于开发线程级并行TLP(紧耦合MIMD)和请求级并行RLP(松耦合MIMD)4.什么是“真正”的计算机体系结构?1)满足目标和功能需求的组成和硬件;2)限制条件下最大化性能:成本、功耗、可用性;3)包括指令集体系结构(ISA),微体系结构,硬件5.计算题:可靠性的计算平均无故障时间:Mean time to failure (MTTF),MTTF是故障率的倒数。

平均修复时间:Mean time to repair (MTTR)平均故障间隔时间:Mean time between failures (MTBF) = MTTF + MTTR可用性:Availability = MTTF / MTBF例:设磁盘子系统的组件及MTTF如下:10个磁盘,1000000小时MTTF;1个ATA控制器,500000小时MTTF;1个电源,200000小时MTTF;1个风扇,200000小时MTTF;1根ATA电缆,1000000小时MTTF;采用简化假设,寿命符合指数分布,各故障相互独立,试计算整个系统的MTTF.解答:系统故障率=10*1/1000000+1/500000+1/200000+1/200000+1/1000000=23000FIT(每10亿小时)MTTF=1/故障率=43500小时第二章存储器层次结构设计1.层次化存储寄存器→多级CACHE→内存→磁盘2.命中时间:命中时访问需要的时间,包括判断是否命中的时间;缺失代价:从内存中替代块的时间;3.块放置策略有全相联映射和组相联映射两种策略全相联映射:一个块可以放在CACHE中的任何位置;需要检索CACHE中的所有项:并行比较器组相联映射:每个块有n个位置可放的cache称为n路组相联cache;存储器中的一个块对应到cache中唯一的组,但是可以放在组内的任意位置上4.1)命中方法的两种方式有写直达法和写回法写直达法:保持CACHE和主存的一致;写回法:修改过的块被替换时才写入主存;2)不命中(写缺失)的两种方式有写分配和写不分配写分配:分配CACHE中的块,并写入CACHE;写不分配:不分配,直接写主存。

5.缺失率是什么?导致缺失的原因是什么?缺失率是指CACHE访问不命中的比率。

导致缺失的原因有强制缺失、容量缺失和冲突缺失强制缺失:第一次访问相应cache块,cache中肯定没有改cache块容量缺失:cache块被移除后又被访问冲突缺失:重复访问的多个地址映射在CACHE的同一位置6.性能的定量计算:程序执行时间=CPU执行程序的时间+等待存储访问的时间基于CPI的计算:存储器阻塞时钟周期=(存储器总访问次数/指令数)*缺失率*缺失代价平均访问时间(AMAT)=命中时间+缺失率*缺失代价举例1:假设指令cache的缺失率为2%,数据cache的缺失率为4%,处理器的CPI为2(没有存储器阻塞),且每次缺失的代价为100个时钟周期,那么配置一个从不发生缺失的理想的cache,处理器的速度快多少?假定全部LOAD和STORE的频率为36%.解:指令缺失时钟周期:1*2%100=2.0I数据缺失:136%*4%*100=1.44I总存储器阻塞:2.0 I + 1.44 I = 3.44 I总CPU : 2 + 3.44 = 5.44配置理想cache: 5.44 / 2 = 2.72 倍举例2:处理器时钟周期的时间1ns,缺失代价是20个时钟周期,缺失率为每条指令0.05次缺失,cache的访问时间(包括命中判断)为1个时钟周期。

假设读操作和写操作的缺失代价相同并且忽略其它写阻塞。

请计算AMAT.解:每条指令的平均存储器访问时间为:AMAT = 命中时间+缺失率缺失代价=1+0.0520=2个时钟周期举例3:假定处理器基本的CPI为1.0,时钟频率为4GHz。

假定主存访问时间为100ns,其中包括缺失处理时间。

设一级cache中每条指令缺失率为2%。

如果增加一个二级cache,命中或缺失访问的时间都是5ns,而且容量大到必须使访问主存的缺失率减少到0.5%,这时的处理器速率能提高多少?解:主存的缺失代价:100ns/(0.25ns/时钟周期)=400个时钟周期只有一级cache时:总的CPI=1.0+2%*400=9对于两级cache:二级cache的缺失代价:5ns/(0.25ns/时钟周期)=20个时钟周期总的CPI=1+2%*20+0.5%*400=3.4有二级cache的处理器性能是没有二级cache性能的9.0/3.4=2.6倍6.层次化存储优化方法有6种基本的CACHE优化方法:1)更大的cache块:强制缺失减少;容量和冲突缺失增加,缺失代价增加;2)更大的CACHE容量:缺失率降低;命中时间,功耗增加;3)更高的相联度:冲突缺失减少;命中时间增加,功耗增加;4)更多级CACHE:内存访问时间减少;5)读缺失优先级更高:缺失代价降低;6)缓存索引期间避免地址转换:减少命中时间;第三章指令级并行1.开发指令级并行的目标:最小化CPI(执行指令平均时钟周期数)流水线CPI =理想流水线CPI +结构冒险停顿+数据冒险停顿+控制冒险停顿2.Load指令的5个阶段或5级流水线的分法?5个阶段的具体内容?Load指令的5个阶段:Ifetch (取指)、Reg/Dec (取数和译码)、Exec (执行) 、Mem (读存储器) 和Wr(写寄存器)Ifetch (取指) : 从指令存储器取指令并计算PC+4(指令存储器、Addr)Reg/Dec (取数和译码) : 寄存器取数,同时对指令进行译码(寄存器堆读口、指令译码器) Exec (执行) : 计算内存单元地址(扩展器、ALU)Mem (读存储器) : 从数据存储器中(数据存储器)Wr(写寄存器): 将数据写到寄存器中(寄存器堆写口)3.用什么解决数据冒险?方法1:硬件阻塞(stall)方法2:软件插入“NOP”指令方法3:编译优化:调整指令顺序方法4:合理实现寄存器堆的读/写操作即前半时钟周期写,后半时钟周期读,若同一个时钟内前面指令写入的数据正好是后面指令所读数据,则不会发生数据冒险方法5:转发(Forwarding或Bypassing 旁路)技术,若相关数据是ALU结果,可通过转发解决;若相关数据是上条指令DM读出内容,不能通过转发解决,随后指令需被阻塞一个时钟或加NOP指令。

称为Load-use数据冒险!4.如何解决控制冒险?方法1:硬件上阻塞(stall)分支指令后三条指令的执行使后面三条指令清0或其操作信号清0,以插入三条NOP指令方法2:软件上插入三条“NOP”指令(以上两种方法的效率太低,需结合分支预测进行)方法3:分支预测(Predict)简单(静态)预测:总是预测条件不满足(not taken),即:继续执行分支指令的后续指令。

可加启发式规则:在特定情况下总是预测满足(taken),其他情况总是预测不满足。

如:循环顶(底)部分支总是预测为不满足(满足)。

能达65%-85%的预测准确率动态预测:根据程序执行的历史情况,进行动态预测调整,能达90%的预测准确率注:采用分支预测方式时,流水线控制必须确保错误预测指令的执行结果不能生效,而且要能从正确的分支地址处重新启动流水线工作方法4:延迟分支(Delayed branch)(通过编译程序优化指令顺序!)把分支指令前面与分支指令无关的指令调到分支指令后面执行,也称延迟转移5.动态预测基本方法采用一位预测位:总是按上次实际发生的情况来预测下次,其特点:1)1表示最近一次发生过转移(taken),0表示未发生(not taken)2)预测时,若为1,则预测下次taken,若为0,则预测下次not taken3)实际执行时,若预测错,则该位取反,否则,该位不变4)可用一个简单的预测状态图表示5)缺点:当连续两次的分支情况发生改变时,预测错误采用二位预测位1)用2位组合四种情况来表示预测和实际转移情况2)按照预测状态图进行预测和调整3)在连续两次分支发生不同时,只会有一次预测错误两位预测状态图基本思想:只有两次预测错误才改变预测方向00状态时预测发生(强转移),实际不发生时,转到状态01(弱转移),下次仍预测为发生,如果再次预测错误(实际不发生),才使下次预测调整为不发生11。

第四章数据级并行1.SIMD 并行的3种实现方法:向量体系结构、SIMD 扩展和图形处理单元(GPUs)向量体系结构的基本思想:读存储器中散布的数据集至“vector registers”;寄存器操作;分散结果存储至存储器;SIMD 扩展的基本思想:固定了操作中操作数的数目:向量体系结构采用向量长度寄存器;SIMD扩展没有复杂的寻址模式:步幅和集中-分散寻址模式;没有遮罩寄存器。

图形处理单元(GPUs)的基本思想:异构执行模型是CPU 为主机, GPU 为加速器;开发类C 的编程语言;统一所有的GPU并行为CUDA 线程;编程模型“SIMT”。

2.GPU 架构的3种方法各有什么异同点?相同点:NVIDIA GPU 架构与向量机类似,擅长数据级并行;集中-分散;遮罩寄存器;大的寄存器组。

相关文档
最新文档