计算机组成原理-指令周期课件
《计算机组成原理-指令周期课件》由会员分享,可在线阅读,更多相关《计算机组成原理-指令周期课件(28页珍藏版)》请在装配图网上搜索。
1、5.2 指令周期 5.2.1 指令周期的基本概念 5.2.2 非访内指令的指令周期 5.2.3 取数指令的指令周期 5.2.4 存数指令的指令周期5.2.5 转移指令的指令周期5.2.6 用方框图语言表示指令周期上一页上一页返回返回下一页下一页5.2.1 指令周期的基本概念 前言:计算机所以能自动地工作,是因为CPU能从存放程序的内存里取出一条指令并执行这条指令;紧接着又是取指令,执行指令,如此周而复始,构成了一个封闭的循环。除非遇到停机指令,否则这个循环将一直继续下去。具体参看下图:下一页下一页返回返回上一页上一页5.2.1 指令周期的基本概念图5.21 取指令、执行指令周期序列上一页上一页
2、返回返回下一页下一页5.2.1 指令周期的基本概念指令周期 CPU从内存取出一条指令并执行这条指令的时间总和。CPU周期 又称机器周期,CPU访问一次内存所花的时间较长,因此用从内存读取一条指令字的最短时间来定义。时钟周期 通常称为节拍脉冲或T周期。一个CPU周期包含若干个时钟周期。下一页下一页返回返回上一页上一页5.2.1 指令周期的基本概念下图示出了采用定长CPU周期的指令周期示意图。图5.22 指令周期上一页上一页返回返回下一页下一页5.2.2 非访内指令的指令周期 CLA是一条非访内指令,它需要两个CPU 周期,其中取指令阶段需要一个CPU周期,执行指令阶段需要一个CPU周期。具体参看
3、演示:下一页下一页返回返回上一页上一页5.2.2 非访内指令的指令周期1、取指令阶段(1)程序计数器PC的内容20(八进制)被装 入地址寄存器AR;(2)程序计数器内容加1,变成21,为取 下一条指令做好准备;(3)地址寄存器的内容被放到地址总线上;上一页上一页返回返回下一页下一页5.2.2 非访内指令的指令周期(4)所选存储器单元20的内容经过数据总 线,传送到数据缓冲寄存器DR;(5)缓冲寄存器的内容传送到指令寄存器 IR;(6)指令寄存器中的操作码被译码或测试;(7)CPU识别出是指令CLA,至此,取指令 阶段即告结束。下一页下一页返回返回上一页上一页5.2.2 非访内指令的指令周期2、
4、执行指令阶段(1)操作控制器送一控制信号给算术逻辑 运算单元ALU;(2)ALU响应该控制信号,将累加寄存AC 的内容全部清零,从而执行了CLA指令。上一页上一页返回返回下一页下一页5.2.3取数指令的指令周期 ADD指令的指令周期由三个CPU周期组成,请参看CAI演示。具体参看演示:下一页下一页返回返回上一页上一页5.2.3取数指令的指令周期1.送操作数地址第二个CPU周期主要完成送操作数地址。在此阶段,CPU的动作只有一个,那就是把指令寄存器中的地址码部分(30)装入地址寄存器,其中30为内存中存放操作数的地址。上一页上一页返回返回下一页下一页5.2.3取数指令的指令周期2.两操作数相加
5、第三个CPU周期主要完成取操作数并执行加法操作中。在此阶段,CPU完成如下动作:(1)把地址寄存器中的操作数的地址(30)发送到地址总线上。(2)由存储器单元30中读出操作数(6),并经过数据总线传送到缓冲寄存器。下一页下一页返回返回上一页上一页5.2.3取数指令的指令周期(3)执行加操作:由数据缓冲寄存器来的操作数(6)可送往ALU 的一个输入端,已等候在累加器内的另 一个操作数(因为CLA指令执行结束后累加器内容为零)送往ALU的另一输入端,于是ALU将两数相加,产生运算结果为0+66。这个结果放回累加器,替换了累加器中原先的数0。上一页上一页返回返回下一页下一页5.2.4存数指令的指令周
6、期 STA指令的指令周期由三个CPU周期组成,请参看CAI演示。具体参看演示:下一页下一页返回返回上一页上一页5.2.4存数指令的指令周期1.送操作数地址在执行阶段的第一个CPU周期中,CPU完成的动作是把指令寄存器中地址码部分的形式地址40装到地址寄存器。其中数字40是操作数地址。上一页上一页返回返回下一页下一页5.2.4存数指令的指令周期2.存储和数 执行阶段的第二个CPU周期中,累加寄存器的内容传送到缓冲寄存器,然后再存入到所选定的存储单元(40)中。CPU完成如下动作:(1)累加器的内容(6)被传送到数据缓冲寄存器DR;下一页下一页返回返回上一页上一页5.2.4存数指令的指令周期(2)
7、把地址寄存器的内容(40)发送到地址总线上,40即为将要存入的数据6的内存单元号;(3)把缓冲寄存器的内容(6)发送到数据总线上;(4)数据总线上的数写入到所选中的存储器单元中,即将数6写入到存储器40号单元中。上一页上一页返回返回下一页下一页5.2.5转移指令的指令周期JMP指令的指令周期由两个CPU周期组成具体参看演示:下一页下一页返回返回上一页上一页5.2.5转移指令的指令周期1.第一个CPU周期(取指令阶段)CPU把23号单元的“JMP 21”指令取出放至指令寄存器,同时程序计数器内容加1,变为24,从而取下一条指令做好准备。上一页上一页返回返回下一页下一页5.2.5转移指令的指令周期
8、2.第二个CPU周期(执行阶段)CPU把指令寄存器中地址码部分21送到程序计数器,从而用新内容21代替PC原先的内容24。这样,下一条指令将不从24单元读出,而是从内存21单元开始读出并执行,从而改变了程序原先的执行顺序。下一页下一页返回返回上一页上一页5.2.5转移指令的指令周期注意:执行“JMP 21”指令时,我们此处所给的四条指令组成的程序进入了死循环,除非人为停机,否则这个程序将无休止地运行下去,因而内存单元40中的和数将一直不断地发生变化。当然,我们此处所举的转移地址21是随意的,仅仅用来说明转移指令能够改变程序的执行顺序而已。上一页上一页返回返回下一页下一页5.2.6用方框图语言表
9、示指令 周期 在进行计算机设计时,可以采用方框图语言来表示一条指令的指令周期。方框 代表一个CPU周期,方框中的内容表示数据通路的操作或某种控制操作。菱形 通常用来表示某种判别或测试,不过时间上它依附于紧接它的前面一个方框的CPU周期,而不单独占用一个CPU周期。下一页下一页返回返回上一页上一页5.2.6用方框图语言表示指令 周期我们把前面的四条典型指令加以归纳,用方框图语言表示的指令周期具体请 参见CAI演示:上一页上一页返回返回下一页下一页5.2.6用方框图语言表示指令 周期【例1】教材图5.15所示为双总线结构机器的数据通路,IR为指令寄存器,PC为程序计数器(具有自增功能),M为主存(
10、受R/W信号控制),AR为地址寄存器,DR为数据缓冲寄存器,ALU由加、减控制信号决定完成何种操作,控制信号G控制的是一个门电路。另外,线上标注有小圈表示有控制信号,例中yi表示y寄存器的输入控制信号,R1o为寄存器R1的输出控制信号,未标字符的线为直通线,不受控制。下一页下一页返回返回上一页上一页5.2.6用方框图语言表示指令 周期(1)“ADD R2,R0”指令完成(R0)+(R2)R0的功能操作,画出其指令周期流程图,假设该指令的地址已放入PC中。并列出相应的微操作控制信号序列。(2)“SUB R1,R3”指令完成 (R3)-(R1)R3的功能操作,画出其指 令期流程图,并列出相应的微操
11、作控 制信号序列。上一页上一页返回返回下一页下一页5.2.6用方框图语言表示指令 周期【解】(1)“ADD R2,R0”指令是一条加法指令,参与运算的两个数放在寄存器R2和R0中,指令周期流程图包括取指令阶段和执行指令阶段两部分(为简单起见,省去了“”号左边各寄存器代码上应加的括号)。根据给定的数据通路图,“ADD R2,R0”指令的详细指令周期流程图如图(a)所示,图的右边部分标注了每一个机器周期中用到的微操作控制信号序列。下一页下一页返回返回上一页上一页5.2.6用方框图语言表示指令 周期(2)“SUB R2,R3”指令是一条减法指令,其指令周期流程图如图(b)所示。与ADD指令不同的是:在执行指令阶段,微操作控制信号序列有所不同。上一页上一页返回返回下一页下一页5.2.6用方框图语言表示指令 周期 图5.23 加法和减法指令周期流程图返回返回上一页上一页
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。