微处理器系统结构与嵌入式系统-第三章-微处理器体系结构及关键技术讲诉.ppt

微处理器系统结构与嵌入式系统-第三章-微处理器体系结构及关键技术讲诉.ppt

  1. 1、本文档共75页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
3.4 流水线技术的特点 延迟=320ps 吞吐量=3.12GIPS 延迟=?ps 吞吐量=?GIPS 延迟=360ps 吞吐量=8.33GIPS 单个操作延迟增加; 整体吞吐量增加; 流水线操作过程 流水线的局限性 各阶段性能差异会导致流水线性能下降 寄存器延迟开销导致流水线性能下降 硬件空闲 延迟=?ps 吞吐量=?GIPS 延迟=510ps(450+60) 吞吐量=5.88GIPS(1/170ps) 指令流水线设计 深度(depth)或并行度(degree of parallelism)即流水级数m 等待时间(latency) 每一作业从开始到结束所需时钟周期数,=m 理想流水线: 各级延时时间相等; 无等待时间; 大量代码不断流; 吞吐率(Throughput Rate) 吞吐率Tp:指单位时间内能完成的作业量。 最大吞吐率Tpmax:流水线达到稳定状态后的吞 吐率。 用于描述流水线执行各种运算的速率,通常表示为每秒执行的运算数或每周期执行的运算数。 若一个m级线性流水线各级时长(即拍长)均为Δt,则连续处理n条指令时的实际吞吐率Tp为: 可以看出,当n→?时,最大吞吐率Tpmax=1/ Δt 理想流水线,大量代码 加速比(Speedup Ratio) 非流水线执行时间相对流水线执行时间之比。 若一个m级线性流水线各级时长(即拍长)均为Δt,则连续处理n条指令时的加速比Sp为: 可以看出,当 n→?时,Sp→m,即最大加速比等于流水线的段数m。 效率(Efficiency) 一定时段内,流水线所有段处于工作状态的比率。 若一个m级线性流水线各级时长(即拍长)均为Δt,则连续处理n条指令时的效率E为: E =指令完成时间内占用的时空区 /指令总时空区 可以看出,当 n→?时,E→1,即流过流水线的指令越多,流水线效率越高。 3.5 ARM体系结构 1。RISC指令集,内核小,功耗低、成本低 2。哈佛结构 3。运算器操作数只能从寄存器输入/输出 3.5 8086体系结构 1、冯式结构 2、运算器操作数可以从寄存器、存储器或I/O端口获得 3、分成两大功能部件EU、BIU ARM指令系统特点 1、RISC指令规则,适合流水设计 2、寻址方式灵活简单,执行效率高 3、所有指令的条件执行实现最快速的代码执行 4、支持Thumb(16 位)/ARM(32 位)双指令集,能很好的兼容8 位/16 位器件 x86指令系统特点 1。为保持兼容性采用变长的、高度不规则的CISC指令集。 2。是基于专用寄存器组的二地址存储器-寄存器(M-R)机:对于二元操作,一个操作数总是指定在寄存器中,另一个操作数可以从存储器或寄存器中读取。 第三章 习题 作业:5、9、10、11、13 、14 思考:1、4、6~7 、12、16 练习题 1、有一条4个段的线性流水线,各段的执行时间分别为50ns、50ns、100ns、200ns。 (1)连续向流水线输入6条指令,画出指令执行的时-空图,求该流水线的实际吞吐率和效率。注意计算时需写出步骤。 Balancing Operators a, b, c, d: 4-bit vectors out = a * b * c * d X a b X c X d z X a b out = (a * b) * (c * d) X c d X z Unbalanced Balanced 4 x 4 8 x 4 12 x 4 16-bit 4 x 4 4 x 4 8 x 8 16-bit Delay through 3 Stages of Multiply Delay through 2 Stages of Multiply 随机逻辑CPU的指令集设计 考虑如何让逻辑门可以快速而方便地实现 指令译码。 在随机逻辑CPU的指令集中,可以使用以下4种类型的指令:分支指令(branch instruction) 、存储器引用指令(memory reference instruction)、ALU指令(ALU instruction)、设置指令(SET instruction) 一般的设计方法是将指令内部的结构划分成多个指令字段(field)。同时还要求这些指令字段在各指令中所放的位置尽可能一样。这样,在CPU中可以减少指令译码所需的逻辑数量。 */86 指令的简化示例 如果限制在机器内部只用一个累加器,则指令集就会被限制在如下范围内: ① 使用单目操作数的指令,可以将累加器作为一个源操作数,同时可作为一个目的操作数。 ② 使用双目操作数的指令,可以将累加器作为一个源操作数,以存储器作为另一个源操作数,累加器同时也可作为目的操作数。 如果只用一

文档评论(0)

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

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

1亿VIP精品文档

相关文档