资源描述
1.1,计算机系统简介,单击此处编辑母版文本样式,*,1.1,计算机系统简介,单击此处编辑母版文本样式,*,1.1,计算机系统简介,单击此处编辑母版文本样式,*,1.1,计算机系统简介,单击此处编辑母版文本样式,*,1.1,计算机系统简介,单击此处编辑母版文本样式,*,例,3.1,:假设总线的时钟频率为,100MHZ,,总线的传输周期为,4,个时钟周期,总线的宽度为,32,位,试求总线的数据传输率。若想提高一倍数据传输率,可采取什么措施?,解:根据总线时钟频率为,100MHZ,,得,1,个时钟周期为,1/100MHZ=0.01,总线传输周期为:,0.01,4=0.04,总线宽度为:,32,位,=4B,总线的数据传输率为:,4B/(,0.04,)=100MBps,若想提高一倍数据传输率,可以在不改变总线时钟频率的前提下,将数据线宽度改为,64,位。也可以保持数据宽度为,32,位,使时钟频率增加到,200MHZ,。,举例,没有同步时钟,双方约定字符格式:,1,个起始位,,5,8,个数据位,,1,个奇偶校验位,,1,或,1.5,或,2,个终止位。,波特率:异步串行通信数据传送速率。单位时间内,传送二进制数的位数,,bps,记作波特。,比特率:单位时间内,传送二进制有效数据的位数,,bps,。,异步串行通信:,1 0 1 0 1 0 0 1 0,例,3.3,:画图说明用异步串行传输方式发送十六进制数据,95H,,要求字符格式为:,1,个起始位,,8,个数据位,,1,个偶校验位,,1,个终止位。,解:数据,95H,,偶校验位,=10010101=0,异步串行通信:,例,3.4,:在异步串行传输系统中,若字符格式为:,1,个起始位,,8,个数据位,,1,个奇校验位,,1,个终止位。假设波特率为,1200bps,,求这时的比特率。,解:比特率:单位时间内,传送二进制有效数据的位数。传送一个字符需,1+8+1+1=11,位,有效数据位,8,位,故比特率为:,1200,(,8/11,),=872.72bps,例,3.2,:利用串行方式传送字符,每秒钟传送的比特位数,称为波特率。假设数据传送速率是,120,个字符,/,秒,每一个字符格式规定包含,10,个比特位(起始位、停止位、,8,个数据位),问传送的波特率是多少,?,每个比特位占用的时间是多少,?,解:,每秒钟传送的比特(,bit,)位数称为波特率,波特率为:,10,位,120/,秒,=1200,波特,每个比特位占用的时间,T,d,是波特率的倒数:,T,d,=1/1200=0.83310,-3,s=0.833ms,设,CPU,有,16,根地址线,,8,根数据线,并用,MREQ,作访存控制信号,(,低电平有效,),,用,WR,作读,/,写控制信号,(,高电平为读,低电平为写,),。,现有下列存储芯片:,1K4,位,RAM,;,4K8,位,RAM,;,8K8,位,RAM,;,2K8,位,ROM,;,4K8,位,ROM,;,8K8,位,ROM,及,74LSl38,译码器和各种门电路,画出,CPU,与存储器的连接图,要求;,主存地址空间分配:,6000H,一,67FFH,为系统程序区,6800H,一,6BFFH,为用户程序区,合理选用上述存储芯片,说明各选几片,详细画出存储芯片的片选逻辑图。,举例:,0 1 1 0,1 0 0 0,0 0 0 0,0 0 0 0,解,:,(1),写出对应的二进制地址码,(,16,根地址线),0 1 1 0,0 0 0 0,0 0 0 0,0 0 0 0,A,15,A,14,A,13,A,12,A,11,A,10,A,9,A,8,A,7,A,4,A,3,A,0,0 1 1 0,0 1 1 1,1 1 1 1,1 1 1 1,0 1 1 0,1 0 1 1,1 1 1 1,1 1 1 1,2K,8,位,1K,8,位,6000H,一,67FFH,为系统程序区,6800H,一,6BFFH,为用户程序区,(2),确定芯片的数量及类型,6000H,一,67FFH,系统程序区,选,1,片,2K8,位,ROM,;,6800H,一,6BFFH,用户程序区,选,2,片,1K4,位的,RAM,芯片。,0 1 1 0,0 0 0 0,0 0 0 0,0 0 0 0,A,15,A,14,A,13,A,12,A,11,A,10,A,9,A,8,A,7,A,4,A,3,A,0,0 1 1 0,0 1 1 1,1 1 1 1,1 1 1 1,0 1 1 0,1 0 0 0,0 0 0 0,0 0 0 0,0 1 1 0,1 0 1 1,1 1 1 1,1 1 1 1,2K,8,位,1K,8,位,RAM,2,片,1K,4,位,ROM,1,片,2K,8,位,(3),分配地址线,A,10,A,0,接,2K 8,位,ROM,芯片的片内地址线;,A,15,A,14,A,13,A,12,A,11,A,10,A,9,A,8,A,7,A,4,A,3,A,0,0 1 1 0,0 0 0 0,0 0 0 0,0 0 0 0,0 1 1 0,0 1 1 1,1 1 1 1,1 1 1 1,2K,8,位,1,片,ROM,A,15,A,14,A,13,A,12,A,11,A,10,A,9,A,8,A,7,A,4,A,3,A,0,0 1 1 0,1 0 0 0,0 0 0 0,0 0 0 0,0 1 1 0,1 0 1 1,1 1 1 1,1 1 1 1,1K,4,位,2,片,RAM,A,9,A,0,接,1K 4,位,RAM,的片内地址线,(4),确定片选信号,1,、,CPU,的,16,位地址线要全接上。剩余的高位地址,A,15,A,14,A,13,A,12,A,11,与访存控制信号,MREQ,共同产生存储芯片的片选信号。,2,、分析:地址线,A,15,为低,,A,14,为高。,3,、地址线,A,13,、,A,12,、,A,11,分为两组:二进制编码分别为,4,或,5,。,0 1 1 0,0 0 0 0,0 0 0 0,0 0 0 0,A,15,A,14,A,13,A,12,A,11,A,10,A,9,A,8,A,7,A,4,A,3,A,0,0 1 1 0,0 1 1 1,1 1 1 1,1 1 1 1,0 1 1 0,1 0 0 0,0 0 0 0,0 0 0 0,0 1 1 0,1 0 1 1,1 1 1 1,1 1 1 1,2K,8,位,1,片,ROM,1K,4,位,2,片,RAM,C,B,A,0 1 1 0,0 0 0 0,0 0 0 0,0 0 0 0,A,15,A,14,A,13,A,12,A,11,A,10,A,9,A,8,A,7,A,4,A,3,A,0,0 1 1 0,0 1 1 1,1 1 1 1,1 1 1 1,0 1 1 0,1 0 0 0,0 0 0 0,0 0 0 0,0 1 1 0,1 0 1 1,1 1 1 1,1 1 1 1,2K,8,位,1,片,ROM,1K,4,位,2,片,RAM,1,、采用,138,译码器;,2,、地址线,A,13,、,A,12,、,A,11,接到译码器,C,、,B,、,A,输入端;,3,、输出,Y,4,有效,选中,1,片,ROM,;,4,、输出,Y,5,与,A,10,低电平同时有效,选,2,片,RAM,。,(4),确定片选信号(电路实现),2K,8,位,ROM,1K,4,位,RAM,1K,4,位,RAM,&,Y,5,Y,4,G,1,C,B,A,G,2B,G,2A,CPU,与存储器的片选连接图,A,14,为高,,A,15,为低,,MREQ,为低,接到,G,1,、,G,2A,、,G,2B,保证了三个控制端的要求;,A,13,、,A,12,、,A,11,接到译码器,C,、,D,、,A,输入端,其输出,Y,4,有效,选中,1,片,ROM,,,Y,5,与,A,10,同时有效均为低电平时,选,2,片,RAM,。,MREQ,A,14,A,15,A,13,A,12,A,11,A,10,A,9,A,0,D,7,D,4,D,3,D,0,WR,CPU,2K,8,位,ROM,1K,4,位,RAM,1K,4,位,RAM,&,PD/Progr,Y,5,Y,4,G,1,C,B,A,G,2B,G,2A,2,片,RAM,的数据线分别与数据总线高,4,位和低,4,位双向相连。,ROM,的,8,根数据线是单向的,与,CPU,数据总线单向相连。,RAM,芯片的读,/,写控制端与,CPU,的,WR,相连。,MREQ,A,14,A,15,A,13,A,12,A,11,A,10,A,9,A,0,D,7,D,4,D,3,D,0,WR,CPU,动态,RAM,刷新,刷新:将原存信息读出,再由刷新放大器形成原信息并重新写入的再生过程。,理由:某些存储单元长期得不到访问,无读出也就无重写,原信息会消失。采用定时刷新的方法,在一定的时间内,对动态,RAM,的全部基本单元电路作一次刷新,一般取,2ms,,这个时间叫做刷新周期。,由专用的刷新电路完成对基本单元电路的逐行刷新,刷新与行地址有关,通常有,3,种方式刷新:,集中刷新,(,存取周期为,0.5,s,),周期序号,地址序号,t,c,0,1,2,3871,3872,0,1,t,c,t,c,t,c,t,c,3999,V,W,0,1,127,读,/,写或维持,刷新,读,/,写或维持,3872,个周期,(,1936,s,),128,个周期,(,64,s,),刷新时间间隔,(,2 m,s,),刷新序号,t,c,X,t,c,Y,以,128,128,矩阵为例,在刷新周期,2ms,内,含,4000,个,存取周期,周期,前,4000-128=3872,个周期用于读写操作或维持。后,128,个周期用于刷新。,缺点:出现了访存“死区”。“死区”为:,0.5 us 128=64us,,,分散刷新,对每行存储单元的刷新分散到每个读,/,写周期内完成。把存取周期分成两段,前半段用来读写或维持,后半段用来刷新。使机器存取周期变为:“读写”,+“,刷新”,=0.5us+0.5us=1us,。,这种刷新克服了集中刷新出现“死区”的缺点,但并不能提高整机的工作效率。使整机工作效率下降。,以,128,128,矩阵为例,W/R,REF,0,W/R,t,R,t,M,t,C,REF,126,REF,127,REF,W/R,W/R,W/R,W/R,刷新间隔,128,个存取周期,t,C,=,t,M,+,t,R,无“死区”,利用,CPU,对指令的译码阶段,,CPU,不访问主存的这段时间,安排动态,RAM,的刷新操作,不会出现集中刷新的“死区”。解决了分散刷新独立占据,0.5us,的读写周期问题,提高了整机工作效率。,分散刷新与集中刷新相结合(异步刷新),对于,128 128,的存储芯片(存取周期为,0.5,s,),2ms/128=15.6,s,每隔,15.6,s,刷新一行,“死区”为,0.5,s,W,/,R,W,/,R,W,/,R,W,/,R,W,/,R,W,/,R,W,/,R,W,/,R,REF,REF,t,C,15,.,6,us,15,.,6,us,0.5,us,0.5,us,0.5,us,例:按配偶原则配置,0011,的海明码,二进制序号,名称,1 2 3 4 5 6 7,C,1,C,2,C,4,1 0 0,0,0 1 1,解:,n,=4,根据,2,k,n,+,k,+1,取,k,=3,C,1,=3,5,7=1,0011,的海明码为,1 0 0 0 0 1 1,C,1,检测的,g,1,小组包含:第,C,2,检测的,g,2,小组包含:第,C,4,检测的,g,3,小组包含:第,3,,,3,,,5,,,1,,,2,,,4,,,6,,,5,,,6,,,7,位;,7,位;,7,位;,C,2,=3,6,7=0,C,4,=5,6,7=0,P,1,=1 3 5 7=0,无错,P,2,=2 3 6 7=1,有错,P,4,=4 5 6 7=1,有错,P,4,P,2,P,1,=110,第,6,位出错,可纠正为,0 1,0,0,1,0,1,;,故要求传送的信息为,0 1 0 1,。,纠错过程如下,例,解:,已知接收到的汉明码为,0100111,(按配偶原则配置)试问要求传送的信息是什么,?,3,、,Cache-,主存的效率,e,2,、平均访问时间,=2000/(2000+50)=0.97,例:假设,CPU,执行某段程序时,共访问,Cache,命中,2000,次,访问主存,50,次。已知,Cache,存取周期为,50ns,,主存的存取周期,200ns,。求,Cache-,主存的命中率、效率、和平均访问时间。,解:,t,c,=50ns,,,t,m,=200ns,,,1,、,Cache,的命中率:,=50ns,0.97+200ns,(1-0.97)=54.5ns,例:假设,Cache,的工作速度是主存的,5,倍,且,Cache,被访问命中的概率为,95%,,则采用,Cache,后,存储器性能提高多少?,解:设,Cache,的存取周期为,t,,主存的存取周期为,5t,,则系统的平均访问时间为:,t,a,=0.95,t,+0.05,5,t,=1.5,t,性能为原来的,5,t,/1.5,t,=3.33,倍,即提高了,2.33,倍。,举例,例,2,:假设主存容量为,512K,16,位,,,Cache,容量为,409616,位,,块长为,4,个,16,位的字,访存地址为字地址。,2,、在全相联映射方式下,设计主存的地址格式:,解:主存字块标记为,19-b=19-2=17,位。,1,、在直接映射方式下,设计主存的地址格式:,解:,访存地址为字地址,,(,1),字块内地址,:,块长为,4,,为,2,位,即,b=2;,(,2)Cache,容量,4096,字,,Cache,有,4096/4=1024=2,10,块。即,c=10,;,3,)主存容量为,512K=2,19,字,主存字地址,19,位,在直接映射方式下,主存字块标记为,19-12=7.,3,、在二路组相联映射方式下,设计主存的地址格式:,解:,(,1,)字块内地址,:,块长为,4,,为,2,位,即,b=2;,(,2,)根据二路组相联的条件,一组内有,2,块。,Cache,共有,1024,块,,Cache,共分,1024/2=512,组,=2,q,组,即,q=9,;,(,3,)主存字块标记为,19-q-b=19-9-2=8,位。,4,、若主存容量为,1024K,16,位,块长不变,在四路组相联映射方式下,设计主存的地址格式。,解:主存容量为,1024K,16,位,主存地址为,20,位。四路组相联,,Cache,共分,1024/4=256,组,=2,q,组,,q=8,。主存字块标记为,20-8-2=10,位。,例:设某机主存容量为,16MB,,,Cache,的容量为,8KB,。每个字块有,8,个字,每个字,32,位。设计一个四路组相联映射的,Cache,组织。,1,、画出主存地址字段中的各段位数。,解:,1,、组相联映射的主存地址字段各段格式如图所示:,解:,(,1),每个字块有,8,个字,每个字,32,位,=4,个字节,,每个字块,共,8,4=32,个字节,=2,5,个字节,。主存地址字段中字块内地址字段为,5,位。,b=5,。,(2)Cache,容量为,8KB=2,13,B,,字块大小为,2,5,B,。,Cache,共有,2,13,B/2,5,B=2,8,块。,根据四路组相联的条件,一组内有,4,块。,则,Cache,共有:,2,8,块,/,2,2,=2,6,组,,q=6,位。,(,3,)根据主存容量为,16MB=2,24,B,,得出主存地址字段中主存字块标记:,S,:,24-6-5=13,位。,主存地址字段各段格式如图所示:,2,、设,Cache,初态为空,,CPU,依次从主存第,0,,,1,,,2,,,,,99,号单元读出,100,个字(主存一次读出一个字),并重复此次序读,10,次,问命中率是多少?,解:,2,、由于每个字块中有,8,个字,而且初态,Cache,为空。,CPU,读第,0,号单元时,未命中,必须访问主存,同时,将该字所在的主存块(,1,,,2,,,,,7,单元),调入,Cache,第,0,组中的任一块内。接着,CPU,读,1,7,号单元时均命中。,同理,,CPU,读第,8,,,16,,,,,96,号单元时均未命中。,可见,CPU,在连续读,100,个字中共有,13,次未命中,而后,9,次循环读,100,个字全部命中,命中率为:,解:,3,、根据题意,设主存存取周期为,5t,,,Cache,的存取周期为,t,。,没有,Cache,的访问时间为,5t,100,10,次;,有,Cache,访问时间为,t,(,1000-13,),+5t,13,;,则有,Cache,和没有,Cache,相比,速度提高的倍数为:,3,、若,Cache,的速度是主存速度的,5,倍,试问有,Cache,和无,Cache,相比,速度提高多少倍?,解:,4,、根据,2,求得,Cache,的命中率,:h=0.987,。,根据题意,设主存存取周期为,5t,,,Cache,的存取周期为,t,。,得系统的效率为:,4,、系统的效率为多少?,假设磁盘存储器共有,6,个盘片,最外两侧盘面不能记录,每面有,204,条磁道,每条磁道有,12,个扇段,每个扇段有,512B,。磁盘机以,7200 r pm,速度旋转,平均定位时间为,8ms,。,1,、计算该磁盘存储器的存储容量。,解:,1,、,6,个盘片共有,10,个记录面,磁盘存储器的总容量为,512,B,12,204,10=12 533 760,B,。,例,1,2,、计算该磁盘存储器的平均寻址时间。,解:,2,、磁盘存储器的平均寻址时间,:,平均寻道时间和平均等待时间。,平均寻道时间,:,即平均定位时间为,8ms,,,平均等待时间:与磁盘转速有关。根据磁盘转速为,7200rpm,(,7200,转,/,每分钟),得磁盘每转一周的平均时间为,故平均寻址时间为:,例,1,60,s,/(7200,rpm,)0.5=4.165,ms,8,ms,+4.165,ms,=12.165,ms,在程序查询方式的输入输出系统中,不考虑处理时间,每一次查询操作需要,100,个时钟周期,,CPU,的时钟频率为,50MHZ,。,1,、现有鼠标设备,,CPU,每秒对鼠标进行,30,次查询。求,CPU,对这个设备所花费的时间比率,由此可得出什么结论?,2,、现有硬盘设备,硬盘以,32,位字长为单位传输数据,即每,32,位被,CPU,查询一次,传输率为,2MBps,。求,CPU,对这个设备所花费的时间比率,由此可得出什么结论?,解:,1,、,CPU,每秒对鼠标进行,30,次查询,所需的时钟周期数为:,100,30=3000,根据,CPU,的时钟频率,50MHZ,,即每秒,50,10,6,个时钟周期,故对鼠标的查询占用,CPU,的时间比率:,3000/(50,10,6,),100%=0.006%,可见,对鼠标的查询基本不影响,CPU,的性能。,第五章:举例,解:,2,、对于硬盘,每,32,位被,CPU,查询一次,每秒查询,2MB/4B=512 K,次,每秒查询的时钟周期数为,100,512,1024=52.4,10,6,故对磁盘的查询占用,CPU,的时间比率,52.4,10,6,)/(50*10,6,),100%=105%,可见,即使,CPU,将全部时间都用于对硬盘的查询也不能满足磁盘传输的要求,,CPU,一般不采用程序查询方式与磁盘交换信息。,在程序查询方式的输入输出系统中,假设不考虑处理时间,每一次查询操作需要,100,个时钟周期,,CPU,的时钟频率为,50MHZ,。,2,、现有硬盘设备,硬盘以,32,位字长为单位传输数据,即每,32,位被,CPU,查询一次,传输率为,2MBps,。求,CPU,对这个设备所花费的时间比率,由此可得出什么结论?,举例,例,5.3,:一个,DMA,接口采用周期窃取方式把字符送到存储器,它支持的最大批量为,400,个字节。假设存取周期为,100ns,。每处理一次中断需要,5 s,。现有的字符设备的传输率为,9600bps,,假设字符之间的传输是无间隙的。若忽略预处理所需的时间,问,DMA,方式每秒钟因数据传输需占用处理器多少时间?如果完全采用中断方式,又需要占用,CPU,多少时间?,解:字符设备传输率为,9600bps,,,每秒钟,字符设备,能传字符数为:,9600bps/8=1200B,(,1200,个字符),采用,DMA,方式,传送,1200,个字符需,1200,个存取周期,每传,400,个字符需中断处理一次,,DMA,方式每秒因数据传输占用处理器时间:,0.1,s1200+5,s,(,1200/400,),=135,s,若采用中断方式,每传送一个字符要申请一次中断请求,则每秒钟因传输数据占用处理器的时间为:,5 s 1200=6000 s,第六章举例:,设机器数字长为,24,位,欲表示,3,万的十进制数,试问在保证数的最大精度的前提下,除阶符、数符各 取,1,位外,阶码,m,、尾数,n,各取几位?,满足 最大精度 可取,m,=4,,,n=,24 4 2,=18,解:,m,=4,,,5,,,6,,,15,位二进制数可反映,3,万之间的十进制数,2,15,=32768,2,14,=16384,2,15,0.,15,位,设机器数字长为,8,位,其中一位为符号位,补码表示范围:(,-128+127,),A=-93,,,B=+45,,求,A-B,补,A=-93=-1011101,;,A,补,=1,,,0100011,;,B=+45=+0101101,;,B,补,=0,,,0101101,;,-B,补,=1,,,1010011,结果出错。这是因为,A-B=-138,超出了,8,位机器字长所能表示的范围(,-128+127,)。这种超出机器字长的现象,叫溢出。,溢出判断的有三种方法。,例,解:,A,补,=1,,,0100011,+-B,补,=1,,,1010011,1 0,,,1110110,A-B,补,=,A-B=,(,+118,),10,例,x,=0.1101,2,10,y,=0.1011,2,01,求,x,+,y,(除阶符、数符外,阶码取,3,位,尾数取,6,位),解:,x,补,=00,010;00.110100,y,补,=00,001;00.101100,对阶,尾数求和,j,补,=,j,x,补,j,y,补,=00,001,阶差为,+1,S,y,1,j,y,+1,y,补,=00,010;00.010110,(,尾数右移一位,阶码加,1,),S,x,补,=00.110100,S,y,补,=00.010110,对阶后的,S,y,补,01.001010,+,尾数溢出需右规,右规,x,+,y,补,=00,010;01.001010,x,+,y,补,=00,011;00.100101,(尾数右移一位,阶码加,1,),右规后,x,+,y,=0.100101,2,11,4.,舍入,(1)0,舍,1,入法,x,+,y,=(,+0.100101,),2,11,例如:,x,=0.1101 2,01,,,y,=(0.1010)2,11,,求,x+y,解:,x,补,=00,01;00.1101 ,y,补,=00,11;11.0110,1.,对阶,j,补,=,j,x,补,j,y,补,=-2,求阶差,S,x,2,j,x,+2,对阶,x,补,=00,01;00.1101=00,11;00.0011,1.,对阶,S,x,补,=,00.0011,S,y,补,=,11.0110,11.1001,x,+,y,补,=00,11;11.1001,x,补,=00,01;00.1101=00,11;00.0011,+,对阶后的,S,x,补,2.,尾数求和,3,、规格化(,尾数左移一位,阶码减,1,),y,补,=00,11;11.0110,左规后,x,+,y,补,=00,10;11.0010,x,+,y,=(,0.1110,),2,10,例,7.1,假设指令字长,16,位,操作数的地址码,6,位,指令有零地址、一地址、二地址三种格式。,1,)设操作码固定,若零地址指令有,P,种,一地址指令有,Q,种,则二地址指令最多有几种?,2,)采用扩展操作码技术,若二地址指令有,X,种,零地址指令有,Y,种,则一地址指令最多有几种?,解:,(,1,)根据操作数地址码为,6,位,则,二地址指令中地址码为,12,位,二地址指令中操作码的位数为,16,12=4,。,4,位操作码有,2,4,=16,种操作。由于操作码固定,则除去了零地址指令,P,种,一地址指令,Q,种。,二地址指令最多有:,16,P,Q,种。,举例:,OP,A,1,A,2,2,)采用扩展操作码技术,若二地址指令有,X,种,零地址指令有,Y,种,则一地址指令最多有几种?,解:(,2,)采用,扩展操作码技术,则,二地址操作码长度为,4,位,一地址操作码长度为,10,位、零地址的操作码长度为,16,位。,二地址指令操作码每减少一种,可多构成,2,6,种一地址指令操作码。一地址指令操作码每减少一种可多构成,2,6,种零地址指令。,二地址指令有,X,种,则一地址指令最多有(,2,4,X,),2,6,种。,设一地址指令有,M,种,则零地址指令最多有:,(,2,4,X,),2,6,M,2,6,种。,根据题中给出,零地址指令有,Y,种,,Y=,(,2,4,-X,),2,6,-M,2,6,则一地址指令:,M=,(,2,4,-X,),2,6,-Y,2,-6,OP,A,1,A,2,6,6,例,7.2,,设相对寻址的转移指令占,3,个字节,第一字节为操作码,第二、三字节为相对位移量(补码表示),而且数据在存储器中采用以低字节为字地址的存放方式。每当,CPU,从存储器取出一个字节时,即自动完成(,PC,),+1PC,。,1,),PC,当前值为,240,(十进制),要求转移到,290,(十进制),转移指令的第二、三字节的机器代码是什么?,解:,1,)相对位移量为,290-243=47,,补码为,2FH,。,数据在存储器中采用以低字节为字地址的存放方式,转移指令的第二为,2FH,,第三字节为,00H,。,举例:,OP,2FH,00H,解:,2,)相对位移量为,200-243=-43,,补码为,D5H,。,数据在存储器中采用以低字节为字地址的存放方式,转移指令的第二为,D5H,,第三字节为,FFH,。,举例:,2,),PC,当前值为,240,(十进制),要求转移到,200,(十进制),转移指令的第二、三字节的机器代码是什么?,OP,D5H,FFH,堆栈寻址,先进后出(一个入出口),栈顶地址 由,SP,指出,1,1FFFH,+1,2000 H,栈顶,栈底,2000 H,SP,2000 H,1FFF H,SP,1FFFH,栈顶,栈底,进栈,出栈,1FFF H,栈顶,2000 H,栈顶,堆栈是计算机中的暂存单元,出栈操作:,A,(SP),,,SP (SP)+1,入栈操作:,SP (SP)-1,Msp,(A),堆栈操作:,例,7.3,,一条双字长直接寻址的子程序调用指令,其第一个字为操作码和寻址特征,第二个字为地址码,5000H,。假设,PC,当前值为,2000H,,,SP,的内容为,0100H,栈顶内容为,2746H,,存储器按字节编址,而且进栈操作是先执行(,SP,),SP,后存入数据。回答下列几种情况下,,PC,、,SP,、及栈顶内容各为多少?,2,),CALL,指令被执行后。,2,),CALL,指令被执行后,断点进栈保留。存储器按字节编址,,CALL,指令共占,4,个字节,程序断点,2000H+4=2004H,进栈,此时,SP=,(,SP,),2=00FEH,,栈顶内容为,2004H,。,PC,为子程序入口地址,5000H,。,1,),CALL,指令被读取前。,解:,1,),CALL,指令被读取前,,PC=2000H,,,SP=0100H,,栈顶内容为,2746H,。,3,)子程序返回后。,3,)子程序返回后,程序断点出栈,,PC=2004H,,,SP,被修改为,0100H,,栈顶内容为,2746H,。,例,7.6,某模型机共有,64,种操作,操作码固定,具有以下特点。,1,)采用一地址或二地址格式。,2,)有寄存器寻址、直接寻址、和相对寻址(位移量为,-128,+127,)三种寻址方式。,3,)有,16,个通用寄存器,算术运算和逻辑运算的操作数均在寄存器中,结果也在寄存器中。,4,)取数,/,存数指令在通用寄存器和存储器之间传送数据。,5,)存储容量为,1MB,,按字节编址。,要求设计:算逻指令、取数,/,存数指令、相对转移指令的格式,并简述理由。,解:,1,)算逻指令格式为寄存器,寄存器型,取单字长,16,位。,OP,为操作码:,6,位,完成,64,种操作;,M,为寻址特征:,2,位,寄存器寻址、直接寻址和相对寻址;,Ri,和,Rj,各取,4,位,源操作数和目的操作数的寄存器编号。,解:,2,)取数,/,存数指令格式为寄存器和存储器型,取双字长,32,位。,OP,为操作码,,6,位;,M,为寻址特征,,2,位,,Ri,为,4,位,源操作数地址(存数指令)或目的操作数地址(取数指令);,A1,和,A2,共,20,位,为存储器地址,可直接访问按字节编址的,1MB,存储器。,例,7.6,某模型机共有,64,种操作,操作码固定,具有以下特点。,1,)采用一地址或二地址格式。,2,)有寄存器寻址、直接寻址、和相对寻址(位移量为,-128,+127,)三种寻址方式。,3,)有,16,个通用寄存器,算术运算和逻辑运算的操作数均在寄存器中,结果也在寄存器中。,4,)取数,/,存数指令在通用寄存器和存储器之间传送数据。,5,)存储容量为,1MB,,按字节编址。,要求设计:算逻指令、取数,/,存数指令、相对转移指令的格式,并简述理由。,解:,3,)相对转移指令为一地址格式,取单字长,16,位,格式如下:,其中,,OP,为操作码,,6,位,,M,为寻址特征,,2,位,,A,为位移量,8,位,对应位移量为,-128,+127,。,例,7.6,某模型机共有,64,种操作,操作码固定,具有以下特点。,1,)采用一地址或二地址格式。,2,)有寄存器寻址、直接寻址、和相对寻址(位移量为,-128,+127,)三种寻址方式。,3,)有,16,个通用寄存器,算术运算和逻辑运算的操作数均在寄存器中,结果也在寄存器中。,4,)取数,/,存数指令在通用寄存器和存储器之间传送数据。,5,)存储容量为,1MB,,按字节编址。,要求设计:算逻指令、取数,/,存数指令、相对转移指令的格式,并简述理由。,倒,8 2,设某机有,4,个中断源,1,、,2,、,3,、,4,,其硬件排队优先次序按,12 3,4,降序排列,各中断源的服务程序中所对应的屏蔽字如下表所示。,(1),给出上述,4,个中断源的中断处理次序。,解:,(1)4,个中断源,1,、,2,、,3,、,4,,其硬件排队优先次序按,12 3,4,(响应次序),根据表,,4,个中断源的处理次序是按,3 1 4,2,降序排列。,CPU,执行程序的轨迹,2,),CPU,响应,1,的请求,执行,1,的服务程序。在,1,的,服务程序中屏蔽字,1101,,开中断指令后转去执行,3,的服务程序。,在,3,的服务程序中屏蔽字,1111,,,3,的服务程序不被中断,结束后又回到,1,的服务程序。,处理次序是按,3 1 4 2,降序排列。,CPU,执行程序的轨迹,2,),1,的服务程序结束后,,CPU,先响应,2,的请求,执行,2,的服务程序,,2,的服务程序中设置了屏蔽字,0100,,意味着,1,、,3,、,4,可中断,2,的服务程序。在开中断指令之后转去执行,4,的服务程序,,4,的服务程序执行结束后回到,2,的服务程序的断点处,继续执行,2,的服务程序,直至该程序执行结束。,处理次序是按,3 1 4 2,降序排列。,例,9.2,单总线计算机结构如图所示,其中,M,为主存,,XR,为变址寄存器,,EAR,为有效地址寄存器,,LATCH,为锁存器。,图中各寄存器的输入和输出均受控制信号控制,例如,,PCi,表示,PC,的输入控制信号,,MDRo,表示,MDR,的输出控制信号。假设指令地址已存干,PC,中,画出,“,ADDX,,,D,”,(x,为变址寄存器,XR,,,D,为形式地址,),和,“,STA,D,”,(表示相对寻址,,D,为相对位移量)两条指令的指令周期信息流程图,并列出相应的控制信号序列。,解,(,1,),“,ADD X,D,”,指令取指周期和执行周期的信息流程及相应的控制信号如图所示,图中,Ad,(,IR,)为形式地址。,(,2,),“,STA,D,”,指令取指周期和执行周期的信息流程及相应的控制信号如图所示,图中,Ad,(,IR,)为相对位移量的机器代码。,设某计算机的,CPU,主频为,8 MHZ,,每个机器周期平均含,2,个时钟周期,每条指令的指令周期平均有,2.5,个机器周期。,试问该机的平均指令执行速度为多少,MIPS?,若,CPU,主频不变,但每个机器周期平均含,4,个时钟周期,每条指令的指令周期平均有,5,个机器周期,则该机的平均指令执行速度又是多少,MIPS?,由此可得出什么结论?,解:由于主频为,8 MHz,,所以时钟周期为,1/8=0.125s,,机器周期为,0.1252=0.25s,,指令周期为,0.25,2.5=0.625s,。,1,、平均指令执行速度为,1/0.625s=1.6 MIPS,。,2,、若,CPU,主频不变,机器周期含,4,个时钟周期,每条指令平均含,5,个机器周期,则指令周期为,0.125,4,5=2.5 s,,,故平均指令执行速度为,l/2.5s=0.4 MIPS,。,3,、,可见机器的运行速度并不完全取决于主频。,注意:,1ms=10,-3,s;1s=10,-6,s,;,1ns=10,-9,s;1ps=10,-12,s,例,10.2,设,CPU,内部结构如图所示,且,PC,有自动加,1,功能。此外还有,B,、,C,、,D,、,E,、,H,、,L6,个寄存器(图中未画)它们各自的输入端和输出端都与内部总线,Bus,相连,并分别受控制信号控制。要求写出完成下列指令组合逻辑控制单元所发出的微操作命令及节拍安排。,(l)ADD B,,,C,;,(B)+(C)B,(2)SUB E,H ;(E)+(H)E,,寄存器间接寻址,(3)STA mem;ACC(mem,),存储器间接寻址,解:,(l),完成“,ADD B,,,C”,指令所需的微操作命令及节拍:,取指周期,T0 PC Bus MAR,,,1 R,T1 M(MAR)MDR,,,(PC)+l PC,T2 MDR Bus IR,,,OP(IR),微操作命令形成部件,执行周期,T0 C Bus R1,T1 (B)+(R1)ALU R2,;,B,通过总线送,ALU,T2 R2 Bus B,(2),完成“,SUB E,,,H”,指令所需的微操作命令及节拍,:,取指周期,T0 PC Bus MAR,,,1 R,T1 M(MAR)MDR,,,(PC)+l PC,T2 MDR Bus IR,,,OP(IR),微操作命令形成部件,间址周期,T0 H Bus MAR,,,1 R,T1 M(MAR)MDR,执行周期,T0 MDR Bus R1,T1 (E)(R1)ALU R2,;,E,通过总线送,ALU,T2 R2 Bus E,(3),完成“,STA mem,”,指令所需的微操作命令及节拍,:,取指周期,T0 PC Bus MAR,,,1 R,T1 M(MAR)MDR,,,(PC)+l PC,T2 MDR Bus IR,,,OP(IR),微操作命令形成部件,间址周期,T0,Ad(IR)Bus,MAR,,,1 R,T1 M(MAR)MDR,执行周期,T0 MDR Bus MAR,,,1 W,T1 ACC Bus MDR,T2 MDR M(MAR),某机的微指
展开阅读全文