现代微机结构Pentium and core.pptVIP

  1. 1、本文档共97页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
现代微机结构Pentium and core

(1) 增加了144条指令, 进一步增强了对多媒体信息、3维信息、互连网操作的处理能力; (2) 主频2G以上, 提高了指令执行的吞吐率; (3) 系统总线的速率400M; (4) 流水线级数提高到20级; 2. 主要技术特点 5. 高级动态执行(Advanced Dynamic Execution) 为支持乱序执行和提高分支预测精度, 高级动态执行机制可以检查126条指令, 并决定执行次序, 配合128个重命名寄存器, 具有更高的预测精度。 与PIII相比, 大约可减少1/3的预测错误。 注: 动态执行技术一般指集分支预测、数据流分析(即乱序执行)和猜测执行三种技术于一身。 猜测执行 : CPU在实际的程序计数器之前执行指令的能力。猜测执行时, 向前查看程序计数器并执行后面可能要执行的指令, 执行结果保存在一个缓冲区内。如果后面确要被执行, 则已执行的指令有效, 并存入CPU寄存器。这一技术实质上允许CPU预先完成指令, 然后当需要的时候直接获得结果。 6. 执行跟踪缓存 (Execution Trace Cache) 用于存储已解码的微指令(?OPs), 加快运行速率。 当下次再执行到相同指令时, 不必再一次重复解码, 只需要取相关数据直接执行即可。这对于循环执行的程序有很高的效率。 此外, 当分支预测出错, 需要回到分支处重新开始运行另一路时, 之前的译码阶段已经把另一分支指令缓冲进了Trace Cache, 而不用再译码,可节约1~2个时钟周期。 7. 快速执行引擎 (Rapid Execution Engine) 8. 超长管道处理技术(超管线技术 ) (Hyper Pipelined Technology) 采用了称为Double Pumped的双重并发技术(即两组ALU) , 每个时钟ALU能执行两次, 效率相应提升一倍。因此, Pentium 4的双ALU在一个周期内可以执行4条指令。 采用超长管道处理技术, 使流水线深度达20级。 但是, 流水线的长度越长, 当出现分支预测错误时, 损失的指令周期就越多。这也是很多其它许多处理器适当控制流水线长度的原因。 有资料指出, 在极端情况下, 流水线塞满长延迟、低吞吐量的微操作时, P4会出现100个周期的损失。 ? 4个单精度浮点数(SSE) ? 2个双精度浮点数(SSE2) ? 16字节数(SSE2) ? 8个字数(word) (SSE2) ? 4个双字数(SSE2)   ? 2个四字数(SSE2) ? 1个128位长的整数(SSE2) 引入新的数据格式, 包括: 9. SSE2指令集(Streaming SIMD Extension 2) 对原有SIMD的扩展, 10. 增加静态分支预测作为动态分支预测的补充 使用静态预测时: ? 如果分支所跳转的地址为逆向跳转, 则预测为分支跳转成立, 并执行跳转; ? 如果分支所跳转的地址为正向跳转, 则预测为分支跳转不成立。 该方式对循环分支较为有效。 处于M状态的Cache行, 可直接进行读/写操作, 无需启动访问内存的总线周期。 Dj Ai Cache Di Ai 内存 M Modified(已修改) 一个Cache行相对于所对应的内存地址单元, 其内容已被修改。 比如, 当写Cache 命中后: M状态相当于为避免Cache内容丢失而设立的“更新位” E Exclusive(独占) 此时的Cache行与所对应内存单元内容相同。 如: Di Ai Cache Di Ai 内存 处于已E状态的Cache行的读/写操作, 无需启动访问内存的总线周期。 对处于已E状态的Cache行实施写操作后, 该Cache行状态将变为M状态。 S Shared(共享) 指示本Cache行与其它Cache行可以共享。 即, 同一个Cache行的内容可以放在多个Cache内。 Di Ai Cache1 对处于S状态下的Cache行进行读操作, 无需启动访问内存的总线周期; 对处于S状态下的Cache行进行写操作, 必须启动访问内存的写周期(直写), 使内存相应单元持有共享Cache行的更新值。 (总线监视, 避免过时) Di Ai Cache2 Di Ai Cache3 I Invalid(无效) 该Cache行内容无效。 ? 对I状态的Cache行进行读操作: 不命中Cache, 访问内存, 执行Cache填充。

文档评论(0)

panguoxiang + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档