收藏 分销(赏)

第5章-控制器系统.ppt

上传人:s4****5z 文档编号:13985314 上传时间:2026-05-22 格式:PPT 页数:36 大小:455KB 下载积分:10 金币
下载 相关 举报
第5章-控制器系统.ppt_第1页
第1页 / 共36页
第5章-控制器系统.ppt_第2页
第2页 / 共36页


点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第八章,CPU,的结构和功能,返回,(课时:,4,),一、,CPU,功能、结构,二、指令周期,三、指令流水,四、,CPU,中的中断系统,CPU,是计算机中,执行程序,的部件。表现在四方,面的功能,由不同部件完成。,1.,顺序控制,:,即对程序中指令的执行顺序加以控制;,2.,操作控制,:,按照一条指令要完成的功能,向相应部件发出操作控制信号,;,3.,时间控制,:,对各种操作执行的时间进行定时;,4.,数据加工,:,对数据进行各种运算处理;,CPU,的功能,CPU,结构,ALU,采用系统总线的,CPU,结构框图,寄存器,中断,系统,控制,单元,CPU,控制总线,数据总线,地址总线,系统总线,CPU,中的主要寄存器,(7,种,),用户可见寄存器,(3,种,),通用寄存器组,(R0R3),累加寄存器(,ACC,),状态条件寄存器(,PSW,),用户不可见寄存器,(4,种,),存储器地址寄存器(,MAR/AR,),存储器数据寄存器(,MDR/DR,),指令寄存器(,IR,),程序计数器(,PC,),指令的执行过程,取指令,指令地址送入主存地址寄存器,读内存,读出内容送入指令寄存器,分析指令,指令操作码译码,按指令规定内容执行指令,不同指令的操作步骤数,,和具体操作内容差异很大,指令执行完后检查有无中断请求,若有,则转中断处理,若无,则转入下一条指令的执行过程,形成下一条指令地址,返回,指令周期,CPU,取出并执行完一条指令所需要的时间叫作,指令周期,。指令周期又包含:,取指令、分析指令和执行指令,三个阶段,其中分析指令时间很短,可以合并至取,指令阶段。,CPU,指令周期,=,取值周期,+(,间址周期,)+,执行周期,取指阶段,执行阶段,取指周期,执行周期,指令周期,由于各种指令所完成的操作及寻址方式不同,故各种指令的,指令周期是不等长,的。,例如:,取指周期,取指周期,执行周期,取指周期,间址周期,执行周期,取指周期,执行周期,JMP X,ADD X,ADD X,MUL X,指令周期,指令周期,指令周期,指令周期,CPU,在每条,指令执行阶段结束前,,都要发出,中断查询信号,,以检查是否有中断请求。若有,则进入,中断周期,,进行中断响应。否则,进入下一条指令周期。,取指周期,有间址吗?,有中断吗?,执行周期,N,间址周期,Y,中断周期,Y,N,指令周期流程图,(perfect!),FE,D,IND,D,EX,D,INT,D,1,FE,1,IND,1,EX,1,INT,CLK,CPU,周期(或称机器周期),通常,,CPU,周期取值与存储器的读写周期相同,。,取址周期、间址周期、执行周期和中断周期同称为,CPU,工作周期,|CPU,周期,|,机器周期,(MC),。,在,CPU,内分别由四个标志触发器,标志指令周期的不同阶段。,取,指,周,期,间,址,周,期,执,行,周,期,中,断,周,期,为了教学的目的,采用一个,假想计算机模型,,说明各,CPU,周期中的数据流。,1.,取指令周期,指令周期数据流,MAR,CU,MDR,PC,IR,存储器,地址总线,数据总线,控制总线,CPU,2.,间址周期,以,ADD X,指令为例,MAR,CU,MDR,存储器,地址总线,数据总线,控制总线,CPU,3.,执行周期,以,ADD X,指令为例,MAR,CU,MDR,存储器,地址总线,数据总线,控制总线,ACC,ALU,CPU,MAR,CU,MDR,PC,存储器,地址总线,数据总线,控制总线,CPU,4.,中断周期,中断,系统,指 令 流 水,1.,提高计算机运行速度的途径,提高器件的性能,改进系统的体系结构,开发系统的并行性,2.,指令流水,取指令,1,执行指令,1,取指令,2,执行指令,2,取指令,3,执行指令,3,指令的,串行,执行,(,指令的一级流水,),指令的二级流水,取指令,1,执行指令,1,取指令,2,执行指令,2,取指令,3,执行指令,3,时间,空间,执行部件,取指令部件,影响流水线性能的因素,1.,资源相关,2.,数据相关,3.,控制相关,中断系统,当前的计算机系统中,除了输入,/,输出外,还有很多事情都可以通过中断的方式来处理。为此,,CPU,中设有专门的中断处理机构,即,中断系统,,以解决各种中断的共性问题。,中断源及其分类,把能引起中断的事件或能够发生中断请求的来源称为,中断源,。可分为以下几类:,中断源分类,中断源,内部中断:,CPU,执行程序引起的中断。,外部中断:,系统中硬件引起的中断。,例如:软中断或称自愿中断,程序性事故,例如:,I/O,设备,硬件故障,中断系统须解决的,7,大问题,:,1.,各中断源如何向,CPU,提出中断请求,,,CPU,如何,识别中 断源,;,如何发出中断信号,?,2.,当多个中断源同时提出请求时,如何确定,优先响应 顺序,;,中断优先级,3.CPU,在什么条件、什么时候、以什么方式,响应,中断;,4.,响应中断后,如何,保护现场,及,断点,;,5.,如何,停止现行程序,,,如何转到中断服务程序的入口 处,;,6.,中断结束后,,如何,恢复程序现场,及,原程序的执行,;,7.,在中断处理过程中,若又出现了,新的中断请求,,,CPU,如何处理。,1,、,2,问题:中断请求标记和中断判优逻辑,1.,中断请求标记,产生中断信号,在中断系统中,为每一个中断源设置一个中断请求触发器(,INTR,),用以记录有无中断请求。,2.,中断判优逻辑,判断中断的优先级,由于,CUP,一次只能执行一个程序,当多个中断源同时向,CPU,提出中断请求时,,CPU,必须按中断源的优先次序依次响应。,中断判优逻辑,就是通过,硬件或软件,的方法实现优先级判别。,各种断源的优先级是根据中断源的类型事先设计好的。,中断判优逻辑,(,经典电路,perfect!,),1.,硬件排队,有,串行排队,判优逻辑和,并行排队,判优逻辑两种。串行排队判优逻辑如图,5.38,。并行排队判优逻辑如下:,1,1,1,&,1,&,1,&,INTP,1,INTP,2,INTP,3,INTP,4,INTR,1,INTR,2,INTR,3,INTR,4,优先级,高,(,先,),低,(,后,),1,1,1,&,1,&,1,&,INTP,1,INTP,2,INTP,3,INTP,4,INTR,1,INTR,2,INTR,3,INTR,4,优先级,高 低,INTR,1,INTR,2,INTR,3,INTR,4,1,&,1,&,&,INTP,2,1,1,INTP,3,INTP,4,例如:,INTR,2,和,INTR,3,同时有效,排队后,,仅,INTP,2,有效,1,2.,软件排队,通过,程序查询,实现。,A,有请求吗?,Y,转,A,的服务,程序入口,Y,转,B,的服务,程序入口,B,有请求吗?,N,Y,转,C,的服务,程序入口,C,有请求吗?,N,N,获得中断服务程序入口地址,1.,硬件向量法,(,两种实现方法,),针对硬件排队,利用硬件产生,向量地址,,再由向量地址找到中断,服务程序入口地址。,实现时可以采取两种办法。一种如图,5.40,;另一,种是在主存中留出一段区域,用以存放,中断向量表,。,1.,向量地址,形成部件,INTP,1,INTP,2,INTP,n,中断向量地址,主存,12H,13H,14H,向量地址,200,300,400,中断服务程序,入口地址,或称中断向量,2.,软件查寻法,针对软件排队,对应于软件排队判优法。利用跳转指令直接转移至中断服务程序入口处。,1.,中断的响应条件,(,总允许,EINT,和分项允许,),中断系统中设置了一个中断允许触发器(,EINT,),它可通过开、关中断指令来置位和复位。当,EINT=1,时,表示开中断,即,CPU,允许响应中断请求;当,EINT=0,时,表示关中断,即,CPU,不允许响应中断请求。所以,,CPU,响应中断请求的必要条件是:,EINT=1,,且有中断请求(,INTR,i,=1,)。,中断响应,2.,中断的响应时间,中断请求是随机产生的,但,CPU,只有在,指令执行周期结束后,,才能响应中断源的中断请求。,通常,,CPU,在指令的,执行周期结束时刻,向所有中断源发出,中断查询信号,,获知是否有中断请求,继而进入,中断周期,。,3.,中断隐指令,在中断周期内,,CPU,要自动完成:,保护程序断点,获得中断服务程序入口地址,关中断,的操作,,对于程序设计者来说,这些操作可以认为由一条隐含指令完成,称为,中断隐指令,。,保护现场,:,为了在中断处理后现行程序能继续执行,在进入中断服务程序执行之前,需要保护现行程序的,断点,(PC,值,),保护,和,CPU,内寄存器的值,(7,大类寄存器,),,称作,现场保护,。,断点保护由隐指令完成,;,寄存器值的保护在,中断服务程序内完成。,恢复现场,:,中断返回之前,必须恢复寄存器的值,也是在中断服务程序内完成。,通常,现场保护和恢复在系统堆栈中实现。,保护现场和恢复现场,中断屏蔽技术,多重中断的概念,例行程序,(,取指,+,间指,+,执行,+,中断检测,),A,中断源,请求,A,服务程序,B,中断源,请求,(,被拒绝,),B,服务程序,单重中断过程示意,A,中断源,请求,B,中断源,请求,C,中断源,请求,例行程序,A,服务,程序,B,服务,程序,C,服务,程序,多重中断过程示意,2.,实现多重中断的条件,开中断,在中断周期中,由隐指令自动置,EINT=0,,即关中断。为了在中断服务程序中能再次响应中断,必须在服务程序中开中断(执行开中断指令)。,优先级别高的中断源有权优先级别低的中断源,多重中断一般嵌套规则:,优先级高的中断源可以中断优先级低的中断源;,同级中断源不能中断同级中断;,优先级低的中断源不能中断优先级高的中断源。,3.,屏蔽技术,(,经典,!),屏蔽触发器和屏蔽字,在中断系统中,为每个,可屏蔽中断源,设置一个屏蔽触发器(,MASK,i,),当,MASK,i,=1,时,对应中断源,被屏蔽,,,CPU,不能得到此中断源的请求。,1,1,1,&,1,&,1,&,INTP,1,INTP,2,INTP,3,INTP,4,INTR,1,INTR,2,INTR,3,INTR,4,优先级,高 低,MASK,1,MASK,2,MASK,3,MASK,4,具有屏蔽功能的排队器,将所有中断源的屏蔽触发器组合在一起,便构成了一个,屏蔽寄存器。,若有,16,个可屏蔽中断源,其优先级由高到底依次为,116,,在屏蔽寄存器依次分别占,150,位,,按照一般嵌套规则,,在,各级中服务程序中,,设置,屏蔽字,内容如下表。其中,,CPU,可认为是由优先级最低的,即在,例行程序中设置的全“,0”,屏蔽字,,允许任何中断源中断。,优先级,屏 蔽 字,1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1,2 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1,3 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1,4 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1,5 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1,15 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1,16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1,CPU,0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0,屏蔽技术可改变响应顺序,若想改变多重中断的嵌套顺序,可通过改变屏蔽码来实现。所以,,多重中断的响应顺序由中断屏蔽码和判优线路一起决定的。,本 章 总 结,CPU,的功能,CPU,的组成,指令周期概念及流程,中断系统,中断源的分类,中断判优逻辑,向量中断,中断隐指令功能,多重中断及中断屏蔽,本 章 作 业,P371,2,、,4,、,24,、,25,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服