资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,CPU,的结构和功能,第 八 章,作业题:,2,,,7,,,8,,,11,,,12,,,17,,,18,,,23,,,24,,,25,,,26,,,27,2.,什么是,指令周期,?指令周期是否有一个,固定值,?为什么?解:指令周期是指一条指令从,开始取指令直到指令执行完,这段时间。由于计算机中各种指令执行所需的时间差异很大,因此,为了提高,CPU,运行效率,,即使在,同步控制,的机器中,不同指令的指令周期长度都是,不一致,的,也就是说指令周期对于不同的指令来说,不是一个固定值,。,讨论:,指令周期长度不一致的,根本原因,在于设计者,为了提高,CPU,运行效率而这样安排的,与,指令功能不同,及,指令实际执行时间不同,没有什么必然关系,。,7.,答案见课本第,346,页,系统的并行性。,粗粒度并行和细粒度并行的区别。,8.,答案见课本第,346-347,页,指令流水,二级流水示意图见课本图,8.14,。,11.,解:,(1),流水线的时钟周期应取完成各步操作的时间中最大的即,90ns,(2),若相邻的指令发生数据相关,则第,2,条指令的,ID,应在第,1,条指令的,WR,之后,即应该推迟两个时钟周期,:,90ns*2=180ns,(3),可采取定向技术,又称为旁路技术。,(P351),12.,解:由题意可知,时钟周期应取,10ns,,即,t=10ns,指令条数,n=12,,指令流水段数,m=5,,于是得,采用流水线需时间,T=m*,t+(n-1),t=(m+n-1),t,=(5+12-1)*10ns=160ns,等效的非流水线需时间,T,=12*(10+8+10+10+7)ns=540ns,故加速比为,S,P,=T,/T=540ns/160ns=3.375,实际吞吐率为,T,P,=n/T=12/160ns=7.5*10,7,条指令,/,秒,17.,在中断系统中,,INTR,、,INT,、,EINT,这三个触发器各有何作用?解:,INTR,中断请求触发器,,用来,登记,中断源发出的随机性中断请求信号,以便为,CPU,查询中断及中断排队判优线路提供,稳定的,中断请求信号;,EINT,中断允许触发器,,CPU,中的,中断总开关,。当,EINT=1,时,表示允许中断(开中断),当,EINT=0,时,表示禁止中断(关中断)。其状态可由开、关中断等指令设置;,INT,中断标记触发器,,控制器,时序系统,中周期状态分配电路的一部分,表示,中断周期标记,。当,INT=1,时,进入中断周期,执行,中断隐指令,的操作。,讨论:,回答时首先应给出该触发器的,中文名称,,然后说明其,主要作用,。,当进入中断周期时,,INT=1,;,(,INT=1,时,进入中断周期),INT,与,EINT,配合使用以实现关中断功能,即,INT=1,,反相后使,EINT=0,;,(关中断并不是,INT,的主要功能,进入中断周期后要执行,中断隐指令的全部三个功能,),INT,表示自愿中断,完成系统调用;,(尽管,INT,触发器的英文缩写与,INT,指令助记符完全相同,但它们一个是,硬件设置,,一个是,软中断指令,,其作用完全不同),INT,标记目前是否正在运行中断程序;,(,INT,标记在运行中断程序时已不存在),INT,表示处于中断状态中;,(,INT,并不是在整个中断过程中都存在),INT,判断中断过程中是否接受其它中断请求,,INT=0,时,开中断,允许中断嵌套;,(,INT,标记与中断嵌套技术没有任何关系。它不能表示出中断过程中是否接受其它中断请求,,INT=0,也不表示开中断),EINT,判断,CPU,是否响应中断请求;,(,CPU,根据,EINT,状态决定是否响应中断请求),当,CPU,响应中断时,,EINT,置,1,;,(当,EINT=1,时,允许,CPU,响应中断),EINT,确保,CPU,响应中断后,不受新的中断干扰;,(,CPU,响应中断在先,进入中断周期后才使,EINT=0,,仅在单重中断时,整个中断过程保持,EINT=0,,不接受新的中断请求),EINT,表示中断隐指令,,INT,起关中断作用;,(把,EINT,和,INT,的作用搞反了),INTR=1,,判断哪个中断源有请求;,(,INTR,对中断源的请求进行登记,当,INTR=1,时,表示有请求),18.,答案见于课本第,363,页,中断隐指令及其功能,23.,答案见于课本第,364,页,保护现场的任务及其实现,24.,现有,A,、,B,、,C,、,D,四个中断源,其优先级由高向低按,A,B,C,D,顺序排列。若中断服务程序的执行时间为,20,s,,请根据下图所示时间轴给出的中断源请求中断的时刻,画出,CPU,执行程序的轨迹。,解:,CPU,执行程序的轨迹图如下:,A,服务,B,服务,C,服务,D,服务,现行程序,0 10 20 30 40 50 60 70 80 90,100 110 120 130 140 150,t(,s),B,与,C,请求,D,请求,B,请求,A,请求,这是一个多重中断的程序运行轨迹,图中忽略了中断响应时间。,25.,设某机有,五个,中断源,L,0,、,L,1,、,L,2,、,L,3,、,L,4,,按中断响应的优先次序,由高向低排序,为,L,0,L,1,L,2,L,3,L,4,,现要求中断处理次序改为,L,1,L,4,L,2,L,0,L,3,,根据下面的格式,写出各中断源的,屏蔽字,。解:各中断源屏蔽状态见下表:,中 断 源,屏 蔽 字,0 1 2 3 4,L,0,L,1,L,2,L,3,L,4,1 0 0 1 0,1 1 1 1 1,1 0 1 1 0,0 0 0 1 0,1 0 1 1 1,表中:设屏蔽位,=1,表示,屏蔽,,屏蔽位,=0,表示中断,开放,。为了使所有中断都能得到及时响应,现行程序的中断屏蔽字一般设为,全开放,(,全,0,)状态。,讨论:,按照修改过的优先次序,当,五个中断请求信号同时到来,时,,CPU,中断处理过程如下图:,图中括号内为各程序的屏蔽码。,注意:,中断屏蔽码的判优作用体现在对低级中断请求的,屏蔽,上,对于多个同时到来的高级中断请求信号之间则,只有开放,作用,,没有判优,作用。此时还需依赖,硬件排队线路,完成进一步的判优。,现行程序(,00000,),五级中断请求同时到来。,L,0,中断服务(,10010,),保存现场,开中断,L,1,中断服务(,11111,),执行一条指令,中断返回,L,2,中断服务(,10110,),中断返回,L,4,中断服务,(,10111,),中断返回,关中断,恢复现场,执行一,条指令,L,3,中断服务,(,00010,),中断返回,中断返回,中断处理过程示意图,(画法二:时空图表示),L,4,服务,L,3,服务,L,2,服务,L,1,服务,L,0,服务,现行程序,L,0,、,L,1,、,L,2,、,L,3,、,L,4,同时,请求,t,程序,26.,设某机配有,A,、,B,、,C,三台设备,其优先级按,A,B,C,降序排列,为改变中断处理次序,它们的中断屏蔽字设置如下:,设备 屏蔽字,A 1 1 1 B 0 1 0 C 0 1 1,请按下图所示,时间轴,给出的设备请求中断的时刻,画出,CPU,执行程序的,轨迹,。设,A,、,B,、,C,中断服务程序的执行时间均为,20s,。,解:,CPU,执行程序的轨迹图如下:,主要,注意,问题:,1,)轨迹的,连续性,;,2,)程序的转出、返回轨迹及时刻;,3,)现行程序在坐标系中的位置。,0 10 20 30 40 50 60 70 80 90 t(,s),A,请求,B,请求,C,请求,这是一个多重中断的程序运行轨迹,图中忽略了中断响应时间。,A,服务,B,服务,C,服务,现行程序,讨论:,当从,B,中断转到,C,中断时,,不返回,现行程序,下述程序运行轨迹是,错误,的:,A,服务,B,服务,C,服务,现行程序,0 10 20 30 40 50 60 70 80 90 t(,s),A,请求,B,请求,C,请求,注意,现行程序的运行轨迹在,横坐标,上,即此程序运行轨迹是相对于现行程序而言的。,27.,设某机有,3,个中断源,其优先级按,1,23,降序排列。假设中断处理时间均为,,在下图所示的时间内共发生,5,次中断请求,图中,表示,1,级中断源发出中断请求信号,其余类推,画出,CPU,执行程序的轨迹。,解:,CPU,执行程序的轨迹图见下页:,CPU,执行程序的轨迹图,1,服务,2,服务,3,服务,现行程序,0,2,3,4,5,6,t,程序,
展开阅读全文