- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第5章中央处理器白中英
I1 LAD R1,A ;M(A)→R1,M(A)是存储器单元 I2 ADD R2,R1 ;(R2) + (R1)-R2 I3 ADD R3,R4 ;(R3) + (R4)-R3 I4 MUL R4,R5 ;(R4)×(R5)-R4 I5 LAD R6,B ;M(B)→R6,M(B)是存储器单元 I6 MUL R6,R7 ;(R6)×(R7) → R6 译码段 执行段 写回段 取/存 加法器 乘法器 时钟 2 3 4 5 6 7 8 9 10 5.5.2 并行性概念 2.并行处理技术的主要形式 (1) 时间并行—时间重叠 让多个处理过程在时间上相互错开,轮流重叠地使用 同一套硬件的各个部分,从而赢得高速度。 实现方式:采用流水处理部件。 (2)空间并行——资源重复 例:奔腾CPU采用的超标量流水技术。 用多个相同部件处理多个事件。 实现方式:多处理器系统和多计算机系统或单处理器系统。 (3) 时间并行+空间并行 既采用时间并行性又采用空间并行性。 1.流水计算机的系统组成 现代流水计算机的系统组成原理如左图所示。其中CPU按流水线方式组织,通常由三部分组成:指令部件、指令队列、执行部件。这三个功能部件可以组成一个3级流水线。 图3.33 流水计算机系统组成原理示意图 5.7.2 流水CPU的结构 1.指令流水线原理 (1)问题的提出 串行执行方式存在部件利用率不高(有闲置时间)的问题。 CPU周期 使用部件 闲置部件 取指令 PC,MS,IR等 ALU,GRS 取数 MS PC,ALU,GRS 执行 ALU,GRS PC,MS 每个过程段所用的部件不同 在某个过程段时,其他过程段的部件处于空闲 (2)流水线工作原理 ① 指令周期三个主要过程: 图5.30 指令周期的三个过程段 取数 取指 执行 ② 指令执行过程的时空图 a.非流水线时空图 I1 I1 I1 I2 I2 I2 I3 I3 I3 I1 I2 I3 空间S 时间T 执行 取数 取指 (a)非流水线时空图 b.标量流水线时空图 I1 I1 I1 I2 I2 I2 I3 I3 I3 I4 I4 I4 I1 I2 I3 空间S 时间T 执行 取数 取指 (b)标量流水线时空图 I4 图5.31 非流水线与流水线对比 c.? 超标量流水线时空图 I1 I3 I5 I2 I4 I6 I1 I3 I5 I7 I2 I4 I6 I8 I1 I3 I5 I7 I9 I2 I4 I6 I8 I10 I1 I2 I3 I4 I5 I6 执行 取数 取指 空间S 时间T (C)超标量流水线时空图 小结: ① 非流水线指令的执行是串行的; ② 标量流水线从满载起,每经1个周期做完一条指令; ③ 超标量流水线,提高了吞吐量,但需二套(或二套以上)流水线的硬件及其他电路。 2.流水线中的主要问题及解决方法 (1)资源相关 在同一机器时钟周期内争用同一个功能部件所发生的冲突。 时钟 指令 1 2 3 4 5 I1 取指 译码 取数 执行 I2 取指 译码 取数 执行 I3 取指 译码 取数 在时钟3发生争用内存 的问题—资源相关。 解决方法: ① 增设一个存储器,将指令和数据分开存放; ② 将取指操作推迟一个时钟进行; ③ 采用双端口存储器。 (2)数据相关 在程序中,一条指令的执行需等前一条指令执行完后才能进行,则有数据相关。 例: 取数 译码 取指 ADD 执行 取数 译码 取指 SUB 4 3 2 1 时钟 指令 解决方法: ① 推迟ADD指令的取数操作; ②采用数据旁路(内部向前)技术,直接把结果送给下一条指令。 (3)控制相关 由条件转移指令引起的。 解决方法: ① 延迟转移法:加入空操作,等待转移条件形成。 ② 猜测法:选择出现概率较高的分支进行指令预取。 【例4】 流水线中有三类数据相关冲突: 写后读相关;读后写相关;写后写相关。 判断以下三组指令各存在哪种类型的数据相关。 (1) I1: ADD R1,R2,R3 ; (R2) + (R3)-R1 I2: SUB R4,R1,R
文档评论(0)