网站大量收购闲置独家精品文档,联系QQ:2885784924

chap3-微处理器系统结构及关键技术.ppt

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

* 如果限制在机器内部只用一个累加器,则指令集就会被限制在如下范围内: ① 使用单目操作数的指令,可以将累加器作为一个源操作数,同时可作为一个目的操作数。 ② 使用双目操作数的指令,可以将累加器作为一个源操作数,以存储器作为另一个源操作数,累加器同时也可作为目的操作数。 如果只用一个索引寄存器,则寻址模式将局限于以下两种方式: ① 当进行直接存储器寻址时,存储器地址由指令中的部分字段提供。 ② 当进行位移量寻址时,目标地址一部分来自指令的存储器地址,与指数寄存器相加之后,形成目标操作数的地址。 * 在微码结构中,控制单元的输入和输出之间的关系被视为一个存储系统。 时序部件 指令预处理 工作原理 微程序控制 (存储控制) 组成 微码控制器 +微代码 * 优点: 可以通过减少取指令次数的方法来降低存储器总访问时间从而提高系统性能; 简化硬件设计,可使其成品机器几乎没有设计上的错误; 建立或改动微代码比建立或改动电路省时、不易出错,因此更易于创建新的CPU版本; 缺点: 同样功能微代码比硬连逻辑实现的开销大; * 硬件设计开销 随机逻辑CPU的硬件和指令集必须同步进行设计和优化,因此比较复杂。 微码CPU的指令集设计并不直接影响现有硬件,修改指令集并不需要重新设计新的硬件。 性能 如果采用相同指令集,则随机逻辑CPU操作会更快。 如果执行相同的计算任务,微码CPU能够通过使用更少(但更复杂)的指令达到更高性能。 当系统整体性能受限于存储器的速度时,微码CPU对性能提高的优势更为明显。 * 建立硬件体系结构, 保证其具备执行必要基本功能步骤的功能。 将指令分割成许多微步骤,转写成微程序并写入控制存储器。 微指令Micro-instruction:控制存储器中的一个存储单元(字)表示了某一条指令的某一操作步骤的控制信号,以及下一步骤的有关信息,称该字为微指令 微程序Micro-program(固件fireware,全部微指令的集合) 指令instruction 微码控制器Microcode controller(定序器sequencer) * 控制逻辑对IR中的指令译码,确定对应微码程序地址并写入?PC; ?PC向微码ROM提供 地址,返回的微码写入?IR; ?IR译码后产生相应的控制信号; ?PC地址加1后获取下一条微指令地址,直到完成整个微码程序 * 数据通路一般应有如下三个基本的时钟周期: 从存储器读数据后: 写入寄存器堆(Register File); 写入指令寄存器(IR); 写入临时寄存器(TempIn); 作为ALU的一个输入; 从寄存器读数据后: 写入存储器地址寄存器MAR; 写入临时寄存器作为ALU的 一个输入; 存入存储器; 将Result寄存器内容写入寄存器组,或存入存储器; * 延迟=320ps 吞吐量=3.12GIPS 延迟=?ps 吞吐量=?GIPS 延迟=360ps 吞吐量=8.33GIPS 单个操作延迟增加; 整体吞吐量增加; * * 各阶段性能差异会导致流水线性能下降 寄存器延迟开销导致流水线性能下降 硬件空闲 延迟=?ps 吞吐量=?GIPS 延迟=360ps 吞吐量=8.33GIPS * 深度(depth)或并行度(degree of parallelism)即流水级数m 等待时间(latency) 每一作业从开始到结束所需时钟周期数,=m 理想流水线: 各级延时时间相等; 无等待时间; 大量代码不断流; * 吞吐率Tp:指单位时间内能完成的作业量。 最大吞吐率Tpmax:流水线达到稳定状态后的吞 吐率。 用于描述流水线执行各种运算的速率,通常表示为每秒执行的运算数或每周期执行的运算数。 若一个m级线性流水线各级时长(即拍长)均为Δt,则连续处理n条指令时的实际吞吐率Tp为: 可以看出,当n→?时,最大吞吐率Tpmax=1/ Δt * CPU 回写 执行 取指 回写 执行 取指 回写 执行 取指 1取指 1执行 1回写 2取指 2执行 2回写 3取指 3执行 3回写 4取指 4执行 4回写 5取指 5执行 5回写 M=3级流水线(深度3级) n=5条指令的执行情况 T流水=[m+(n-1)]Δt Δt 为拍长 Δt Δt Δt * CPU 回写 执行 取指 回写 执行 取指 回写 执行 取指 1取指 1执行 1回写 2取指 2执行 2回写 3取指 3执行 3回写 4取指 4执行 4回写 5取指 5执行 5回写 M=3级流水线(深度3级) n=5条指令的执行情况 T流水=[m+(n-1)]Δt Δt 为拍长 * 非流水线执行时间相对流水线执行时间之比。 若一个

文档评论(0)

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

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

1亿VIP精品文档

相关文档