非流水与流水的CPU - Read.PPT

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

C6000 流水线 非流水与流水的CPU 流水线基本级描述 程序取指(PF-级) 程序取指(PF)分为4个节拍: PG:程序地址产生 PS:程序地址发送 PW:程序访问等待 PR:程序接收 译码(D—级) 译码分成2个节拍: DP:确定指令到功能单元路线(指令分配) DC:指令在功能单元译码 C6000指令类型和执行周期 C62/C64所有指令仅需要1个周期执行,但有些指令的结果被延迟。(C67有功能单元等待时间) 执行(E—级) 取指令(LD)执行节拍 虽然取指令只需一个周期执行操作(E1),但结果延迟4个周期 C62/C64总流水线节拍 E2-E6结果延迟节拍 C67,E1~E10 取指包 取指包 代码通过流水线过程举例 点积代码 程序取指开始 程序取指结束 指令分配 指令译码 执行(E1) MVK完成,LD→E1 指令类型和延迟间隙(delay slots) 第二个LD进入E1 MPY到达E1 ADD到达E1 MPY /ADD指令完成 使ADD延迟执行 ADD进入E1 NOP与延迟间隙 添加NOP 使用多周期NOP 代码性能 一个综合的例子 记住: B: 5个延迟间隙 LD: 4个延迟间隙 MPY: 1个延迟间隙 C64: .M单元的非乘法指令 1个延迟间隙 .M单元的扩展乘法指令 3个延迟间隙 B2 * 远见品质 * 内核循环: 第一个 LD 1 第二个 LD 5 MPY 2 ADD/ SUB 2 B 6 总周期数: 16*40=640+2=642 优化后 *

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档