寄存器-寄存器ALU指令.ppt

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

将一条指令的执行过程分为三个阶段 3.1 重叠执行和先行控制 取指令 按照指令计数器PC的内容访问主存,取出一条指令 送到指令寄存器。 指令分析 对指令的操作码进行译码,按照给定的寻址方式和地址字段形成操作数的地址,并用这个地址访问主存读取操作数。 指令执行 按照操作码的要求,完成指令规定的功能,生成运算结果,并访问主存保存结果。还要更新PC值,为读取下一条指令做好准备。 访问主存的冲突问题 3.1 重叠执行和先行控制 多条指令情况:三种执行方式 顺序执行方式 一次重叠执行方式 二次重叠执行方式 3.1 重叠执行和先行控制 执行n条指令所花的时间 3.1 重叠执行和先行控制 如果取指令、指令分析和指令执行的时间相等, 都是t,则 T=3nt 优点 控制简单,节省设备。 主要缺点 处理机执行指令的速度慢(3t完成一条) 功能部件的利用率很低(任意时刻只有一个部件忙碌) 3.1 重叠执行和先行控制 3.1 重叠执行和先行控制 如果执行一条指令的3个阶段的时间相等,都是 t,则执行n条指令所花的时间为 T=(1+2n)t 优点 程序的执行时间减少了近1/3。 功能部件的利用率明显提高。 缺点 需要增加一些硬件,控制过程变复杂了。 3.1 重叠执行和先行控制 3.1 重叠执行和先行控制 如果执行一条指令的3个阶段的时间相等,都是 t,则执行n条指令所花的时间为 T= (2+n)t 优点 与顺序执行方式相比,执行时间缩短了近2/3。 部件的利用率有了进一步的提高。 缺点 需要增加更多的硬件。 需要设置独立的取指令部件、指令分析部件和指令执行部件。 3.1 重叠执行和先行控制 访问主存的冲突问题 4种解决方法 设置两个独立编址的存储器: 指令存储器(存放指令)、数据存储器(存放数据) 指令和数据仍然混合存放在同一个主存中,但设置 两个Cache: 指令Cache、数据Cache 程序空间和数据空间相互独立的系统结构被称为哈佛结构。 指令和数据仍然混合存放在同一个主存中,但主存采用 多体交叉结构。(有一定的局限性,指令和数据正好在同一个存储体中,则无法重叠) 未完接下页 3.1 重叠执行和先行控制 在主存和指令分析部件之间增设先行指令缓冲站 FIFO大竹筐,特殊的指令Cache且无数据Cache的情况 主存不是满负荷工作的,插空从主存中预先把后面将 要执行的指令取出来,存放到指令缓冲站中。 在“取指令”阶段从指令缓冲站读取指令(如果指令 缓冲站不为空),而不用去访问主存。 3.1 重叠执行和先行控制 先行指令缓冲站的组成 指令缓冲存储区和相应的控制逻辑 按队列方式工作。 只要指令缓冲站不满,它就自动地向主存控制器发 取指令请求,不断地预取指令。 指令分析部件 每分析完一条指令,就自动向指令缓冲站发出取下 一条指令的请求。指令取出之后就把指令缓冲站中 的该指令作废。 指令缓冲站中存放的指令的条数是动态变化的。(一边注水一边放水) 两个程序计数器 先行程序计数器PC1:用于从主存预取指令; 现行程序计数器PC:用来记录指令分析部件当前正在 分析的指令的地址。 3.1 重叠执行和先行控制 二次重叠+先行指令缓冲≈一次重叠 先行指令缓冲使得取指令阶段的时间很短,因此可以把这个操作合并到分析指令中。上述的二次重叠就演变成了一次重叠 把一条指令的执行过程分为分析和执行两个阶段; 让前一条指令的执行与后一条指令的分析重叠进行。 如果指令分析和指令执行所需要的时间都是t,则采用这种方式连续执行n条指令所需要的时间为: T= (1+n)t 一套指令分析部件,一套指令执行部件,控制方式比较简单,得到了广泛应用。 3.1 重叠执行和先行控制 3.1 重叠执行和先行控制 先行控制技术:缓冲技术和预处理技术的结合 缓冲技术:在工作速度不固定的两个功能部件之间设置缓冲器,用以平滑它们的工作。 预处理技术:预取指令、对指令进行加工以及预取操作数等。 采用先行控制方式的处理机结构 3.1 重叠执行和先行控制 设置了4个缓冲站 (平滑主存、指令分析部件、运算控制部件三者之间的工作) 先行指令缓冲站(指令分析从主存取指令 间速度差) 先行操作站(指令分析部件运算控制部件 间速度差) 先行读数站(从主存取操作数运算控制部件 间速度差) 后行写数站 (向主存写结果运算控制部件 间速度差) 共

文档评论(0)

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

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

1亿VIP精品文档

相关文档