- 1、本文档共78页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《计算机组成原理与汇编语言程序设计》第二版 复习与作业解答一
计算机组成与结构 计算机组成原理与汇编语言程序设计 作业讲评 3.4.2 模型机的时序系统 组合逻辑控制器依靠不同的时间标志,使CPU分步工作。模型机采用前述的三级时序系统,即将时序信号分为工作周期、节拍(时钟周期)和工作脉冲。 1.工作周期划分(由6个周期状态触发器来表示它们的状态。任一时刻只允许一个触发器为1,表明CPU所处工作状态,及该阶段时间标志与依据)。 (1)取指周期FT 在取指周期FT中完成取指所需的操作 (2)源周期ST 如果需要从主存中读取源操作数,则进入ST。 (3)目的周期DT 如果需要从主存中读取目的地址或目的操作,则进入DT。 (4)执行周期ET 在取得操作数后,则进入ET,在ET中将依据IR中操作码执行相应操作,如传送、算术运算、逻辑运算、获得转移地址等 (5)中断响应周期IT (6)DMA传送周期DMAT 中断方式:由于某些异常情况或特殊请求,引起CPU暂停执行当前程序,转去执行中断处理子程序,以处理这些情况或请求,等处理完后又返回原程序断点继续执行,这一过程就称为中断。 CPU在响应中断请求之后,进入中断响应周期IT。在IT中将直接依靠硬件进行关中断、保存断点、转处理程序入口等操作。IT结束后,进入取指周期FT,开始执行中断处理程序。 DMA(Direct Memory Access)即直接访存方式:其基本思想是在主存储器和I/O设备之间建立直接的数据传送通路,由专门的DMA控制器控制主存和I/O设备间的数据传送,在传送时不需CPU干预。由于传送过程完全由硬件实现,所花费的时间短,因此能满足高速数据传送的需要。 CPU响应DMA请求之后,进入DMAT。在DMAT中,CPU交出系统总线的控制权,即MAR、MDR与系统总线脱钩(呈高阻态)。改由DMA控制器控制系统总线,实现主存与外围设备间的数据直接传送,因此对CPU来说,DMAT是一个空操作周期。 FT ST DT IT ET DMAT DMA请求? 中断? Y Y N N CPU控制流程 例. 双操作数指令的两个操作数均在主存中,工作周期变化为: FT→ST→DT→ET→(FT……) 例. 单操作数指令的操作数在主存中,工作周期变化为: FT→DT→ET→(FT……) 例. 双操作数指令的操作数均在CPU寄存器中,工作周期变化为: FT→ET→(FT……) 左图描述了指令执行时工作周期状态变化流程。 3.4.3 指令流程 分析指令流程是为了在寄存器这一层次分析指令的读取与执行过程,也就是讨论CPU的工作机制。 拟定指令流程通常有两种方法:一种方法是以工作周期为线索,按工作周期分别拟定各类指令在本工作周期内的操作流程,其优点是便于综合与化简微命令的逻辑式,容易取得比较优化的结果:另一种方法是以指令为线索,按指令类型分别拟定指令流程,其优点是对指令的执行过程拟定出清晰的线索,便于理解CPU的工作过程。模型机设计采用后一种方法,使用再插入中断周期与DMA周期的流程。 1.取指周期FT (1)进入FT的条件 初始化时置入FT 加电或按复位键,将取指周期状态触发器FT为1。 程序正常运行时同步打入FT 若要进入FT,则事先在状态触发器D端准备好条件1→FT ,然后产生同步脉冲CPFT,又CPFT的上升沿,将1打入FT。 FT S R D C Q Q 复位 1 1 FT CPFT 取指周期状态触发器 FT中的操作是各类指令流程都需首先经历的。 (2)取指流程 寄存器级传送语句形式描述取指周期内的操作。 PC→MAR M→MDR→IR PC+1→PC FT0 FT1 (3)微操作时间表 描述取指流程每步基本操作与下一步操作所需微命令。 2.MOV指令(重点掌握) 1)取指令周期FT和取源操作数周期ST流程图 FT ST0 ST1 ST2 ST3 ST4 R (R) -(R) I/(R)+ DI X(R) MOVE指令 2)取目的地址和执行周期流程图 DT0 DT1 DT2 DT3 ET0 ET1 R (R) -(R) I/(R)+ DI X(R) DR DR [例3—14] 拟出指令“MOV(R0),—(R1)”的读取与执行流程,其中源操作数寻址方式为-(R1) 取指周期 源周期 目的周期 执行周期 独立地看本指令,ET0的操作是多余的。考虑到其他指令的需要,在DT中很可能使用MDR, 则ET0的操作就有必要了。 3.双操作数指令(重点掌握) 双操作数指令共有5条:加ADD、减SUB、与AND、或OR、异或EOR,其指令流程图: ST FT DT0 DT1 D
文档评论(0)