第5章体系结构.ppt

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章体系结构

第五章 标量处理机 基本概念 5.1 先行控制技术 5.2 流水线处理机 5.3 超标量处理机与超流水线处理机 标量处理机中只有标量数据表示和标量指令系统 标量(scalar):一个完全由其大小决定而没有方向的数量,如质量、长度等。 向量(vector):完全由大小和方向确定的量,如速度等,向量常用形如A(x1,x2,x3)的形式来表示。 在标量处理机中,一次处理中涉及的是标量,如处理向量A的分量x1。而在向量处理机中,并行处理x1、x2、x3。在标量处理机中一次处理一个数据,向量处理机一次处理的是一组数据。 超标量计算机,指的是在处理机内部有多个独立的操作部件,如ALU、浮点数加减法和乘除法部件,各部件有独立的功能。 一般标量计算机中,是用一个多功能部件集中实现算术逻辑、浮点数加减、乘除法等多种计算。 5.1 先行控制技术 先行控制(Lookahead)技术最早在IBM公司的STRETCH机器中采用。 先行控制技术的关键是缓冲技术和预处理技术。 目前,许多处理机中都已经采用了先行控制技术。 5.1.1 指令的重叠执行方式 5.1.2 先行控制方式的原理和结构 5.1.3 数据相关 5.1.4 控制相关 5.1.1 指令的重叠执行方式 1、顺序执行方式: 执行n条指令所用的时间为: 如每段时间都为t,则执行n条指令所用的时间为:T=3nt。 主要优点:控制简单,节省设备。 主要缺点:执行指令的速度慢,功能部件的利用率低。 2、一次重叠执行方式: 如果两个过程的时间相等,则执行n条指令的时间为:T=(1+2n)t 一种最简单的流水线方式 主要优点:指令的执行时间缩短、功能部件的利用率明显提高 主要缺点:需要增加一些硬件、控制过程稍复杂 3、二次重叠执行方式: 如果三过程的时间相等,执行n条指令的时间为:T=(2+n)t 理想情况下同时有三条指令在执行 处理机的结构要作比较大的改变,必须采用先行控制方式 5.1.2 先行控制方式的原理和结构 采用二次重叠执行方式必须解决的两个问题 解决访存冲突的方法 先行控制方式处理机结构 先行控制方式的指令执行时序 先行缓冲栈 缓冲深度的设计 采用二次重叠执行方式 必须解决两个的问题 (1) 有独立的取指令部件、指令分析部件和指令执行部件,要把一个集中的指令控制器,分解成三个相对独立的控制器:存储控制器、指令控制器、运算控制器。 (2) 要解决访问主存储器的冲突问题:取指令、分析指令、执行指令可能都要访问存储器 解决访存冲突的方法 (1) 两个独立的存储器:独立的指令存储器和数据存储器。 如果再规定,指令执行结果只写到通用寄存器,那么,取指令、分析指令和执行指令就可以同时进行 在许多高性能处理机中,有独立的指令Cache和数据Cache。 这种结构被称为哈佛结构。 (2) 采用低位交叉存取方式: 这种方法不能根本解决冲突问题 需要保证取指令、读操作数、写结果在不同存储体 (3) 采用先行控制技术。 先行控制技术的关键是缓冲技术和预处理技术。 缓冲技术是在工作速度不固定的两个功能部件之间设置缓冲栈,用以平滑它们的工作。 预处理技术是把运算器的指令都处理成RR型指令 在采用了缓冲技术和预处理技术之后,运算器能够专心于数据的运算,从而大幅度提高程序的执行速度。 先行控制方式处理机结构 在处理机内部设置一定容量的指令缓冲栈 把指令分析器所需要的指令事先取到指令缓冲栈中,而不必访问主存储器 使取指令、分析指令和执行指令重叠起来执行 三个独立的控制器:存储控制器、指令控制器、运算控制器 四个缓冲栈:先行指令缓冲栈、先行读数缓冲栈、先行操作栈、后行写数栈 只要指令缓冲栈没有满,就自动发出取指令的请求 设置两个程序计数器 先行程序计数器PC1,用来指示取指令, 现行程序计数器PC,记录指令分析器正在分析的指令地址 指令分析器每次取指令能够在先行指令缓冲栈中得到,则取指令只需要很短的时间就能够完成 可以把取指令与分析指令合并到一起,构成一次重叠执行方式 一次重叠执行存在的主要问题: (1) 各类指令分析和执行所需要的时间相差很大。 (2) 数据相关。 (3) 控制相关。 先行控制方式的指令执行时序 理想情况下,指令执行部件应该一直忙碌 连续执行n条指令的时间为: 先行缓冲栈 设置先行缓冲栈的目的:使指令分析器和指令执行部件独立工作。 1、先行指令缓冲栈 2、先行操作栈 3、先行读数栈 4、后行写数栈 在采用先行控制方式的处理机中,一个程序的执行情况 1、先行指令缓冲栈 位置:主存储器与指令分析器之间。 作用:用它来平滑主存储器取指令和指令分析器的工作。 把运算、移位、数据传送等指令都处理成RR型指令,送入先行操作栈。 RR型指令,不必处理,直接送先行操作栈; RS(存储器

文档评论(0)

yaocen + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档