




已阅读5页,还剩425页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
计算机组成原理,广东石油化工学院计算机科学与技术系刘晶,讲课人简介和联系方式,刘晶信息学院计算机系副教授电话:2923841(宅)E-mail:liusrQQ:327693987,.,目录,第一章计算机系统概论第二章运算方法和运算器第三章存储系统第四章指令系统第五章中央处理器第六章总线系统第七章外围设备第八章输入输出系统,.,第一章计算机系统概论,1.1计算机的分类和应用1.2计算机的硬件1.3计算机的软件1.4计算机系统的层次结构,.,1.1计算机的分类和应用,一、计算机的分类电子计算机:电子模拟计算机电子数字计算机(电脑)区别:精度;数据存储量;逻辑判断能力;控制方法。,.,数字电子计算机:,专用计算机:高效;高速;经济;不通用。通用计算机:适应性好;相对不高效、高速、经济。通用计算机:巨型机;大型机;中型机;小型机;微型机;单片机。(体积;功耗;性能;数据存储量;指令系统;价格成递减),.,二、计算机的应用,科学计算测量和测试教育和卫生自动控制信息处理家用电器人工智能,.,1.2计算机的硬件组成:,.,一、数字计算机的硬件组成运算器:完成算术逻辑运算功能。存储器:保存原始数据和程序。位;字节;字;字长;存储单元;地址;容量(BKBMBGBTB等);分类(内存;外存)控制器:计算机中发号施令的部件.指令(操作码地址码);计算程序;存储程序;程序控制;取指周期;执行周期;中央处理器;数据字;指令字;数据流;指令流适配器与输入输出设备:,.,1.3计算机的软件,一、软件的组成与分类系统程序:用来简化程序设计,简化使用方法,提高计算机使用效率的程序。各种服务程序;语言程序;操作系统;数据库管理系统。应用程序:用户利用计算机来解决某些问题而编制的程序。,.,二、软件的发展和演变,机器指令;机器语言手工程序;目的程序;汇编语言;汇编源程序;汇编程序;算法语言;源程序;编译程序;解释程序;操作系统;数据库;数据库管理软件;数据库管理系统。,.,1.4计算机系统的层次结构,各级都得到它下一级的支持,同时也受到运行在下面各级上的程序的支持。,.,软件与硬件的逻辑等价性,软件硬件化-固件(固化)硬件软件化-硬件可以完成的任务也可以用软件来实现。本章思考题:P154.5.6.7.9,.,第二章运算方法和运算器,2.1数据与文字的表示方法2.2定点加法、减法运算2.3定点乘法运算2.4定点除法运算2.5定点运算器的组成2.6浮点运算方法和浮点运算器,.,2.1数据与文字的表示方法,一、数据格式(类型精度范围硬件代价)1定点数的表示方法纯小数:0|X|1-2-n纯整数:0|X|2n-1,.,2浮点数的表示方法,任何一个十进制数N都可以写成:N=10EM任意进制数N可以写成:N=ReM基数:R指数(阶码):e尾数:M早期:,.,现代:IEEE标准,S:符号位,“0”为正;“1”为负E:阶码,采用“移码”表示M:尾数,原码规格化表示(1.M型),.,例1若浮点数x的754标准存储格式为(41360000)16求其浮点数的十进制数值。,01000001001101100000000000000000符号位:S=0阶码:E=10000010(移码)指数:e=E-01111111=00000011=(3)10尾数:M=1.011011故:x=+(1.011011)23=1011.011=(11.375)10,.,例2将数(20.59375)10转换成754标准的32位浮点数的二进制存储格式.解:(20.59375)10=10100.10011=1.01001001124e=4E=100+01111111=10000011M=010010011S=032位浮点数格式:01000001101001001100000000000000=(41A4C000)16,.,3十进制数串的表示方法,字符串形式(非压缩BCD码)十进制的一位数码和符号都用一个字节存储.压缩的十进制数串形式(压缩的BCD码)十进制的一位数码和符号都用半个字节存储.例如:,符号位,补0,.,4自定义数据表示,传统的计算机是用操作码来区分数据类型(定点数;浮点数;BCD数)自定义数据是用数据本身来区分数据类型1)标志符数据表示:2)描述符数据表示:,.,二、数的机器码表示,真值:带有符号的各种进制数的表示法.如:12.3-32+101.115B.6-7机器码(机器数):计算机内部数值编码.1原码,设X=+1011100B,Y=-1011100B此时X和Y被称为真值.则X原=01011100,Y原=11011100而+0原=00000000,-0原=10000000,.,2补码,举一实例:3点钟+5小时=8时3点钟-7小时=8时即:3-7=3+5为什么?答:时钟是以12为模,5和-7互为补码.在计算机中采用补码主要原因有二,一是可以将减法变成加法来运算.二是补码的符号位可以参加运算.计算机中是用2n为模2补码.,.,3反码:若以2n-1为模的补码称1补码,结论:X为正时:X反=X补=X原X为负时:求X补是将X原的符号位不变,其余各位变反加1.求X反是将X原的符号位不变,其余各位变反.,.,+0补=2n+00.00=0-0补=2n-00.00=0,+0反=2n-1+00.00=0-0反=2n-1-00.00=111.11例如:X=+1010011BX反=X补=X原=01010011X=-1010011BX原=11010011X补=10101101X反=10101100,.,4移码,针对补码不易比较大小的缺点而出现了移码X移=2n-1-1+X-2n-1X2n-12n-1-1为偏移量例如:X=+10010B=+18,Y=-10010B=-18X移=26-1-1+X=011111+010010=110001BY移=26-1-1+X=011111-010010=001101B,.,.,例5设机器字长16位,定点表示,尾数15位,数符1位,问:(1)定点原码整数表示时,最大正数是多少?最小负数是多少?(2)定点原码小数表示时,最大正数是多少?最小负数是多少?解(1)定点原码整数表示最大正数值=(215-1)10=+32767最小负数值=-(215-1)10=-32767(2)定点原码小数表示最大正数值=(1-2-15)10=+0.111111最小负数值=-(1-2-15)10=-0.111111,.,例6假设由S,E,M三个域组成的一个32位二进制数所表示的非零规格化浮点数x,真值表示为:x=(-1)S(1.M)2E-128问:它所表示的规格化的最大正数、最小正数、最大负数、最小负数是多少?,解:(1)最大正数011111111111111x=1+(1-2-23)2127(2)最小正数000000000000000 x=1.02-128(3)最小负数111111111111111x=-1+(1-2-23)2127(4)最大负数100000000000000 x=-1.02-128,.,三、字符与字符串的表示方法,字符:ASCII码:美国国家信息交换标准字符码.有95个可显示打印的字符;33个控制码.字符串:连续的一串字符.不同的计算机存储顺序不同.四、汉字的表示方法1汉字的输入编码数字编码;拼音码;字形编码.2汉字内码是汉字信息的存储交换检索等操作的机内代码.一般采用两个字节表示.3汉字字模码用点阵表示汉字字形代码,是汉字的输出形式.五、校验码,.,2.2定点加法、减法运算,一、补码加法X补+Y补=X+Y补例8X=0.1001,Y=0.0101,求X+Y。X补=0.1001Y补=0.0101X+Y补=0.1001+0.0101=0.1110X+Y=+0.1110例9X=+0.1011,Y=-0.0101,求X+Y。X补=0.1011Y补=1.1011X+Y补=0.0110X+Y=+0.0110,.,二、补码减法X-Y补=X+(-Y)补=X补+-Y补已知Y补,求-Y补的方法是:将Y补连同符号位全部变反,末尾加上“1”。例10已知X1=-0.1110,X2=+0.1101,求X1补=-X1补=X2补=-X2补=,.,例11X=+0.1101,Y=+0.0110,求X-Y,Y-X。解:X补=0.1101Y补=0.0110-Y补=1.1010X-Y补=10.0111X-Y=0.0111-X补=1.0011Y-X补=Y补+-X补=0.0110+1.0011=1.1001Y-X=-0.0111,.,三、溢出概念与检测方法,计算机的运算结果超出了它的存储单元的存储范围而产生数据丢失的现象称为-溢出。例12X=+0.1011,Y=+0.1001,求X+Y。解:X补=0.1011Y补=0.1001X+Y补=X补+Y补=1.0100(负数)两个正数相加结果不可能是负数!运算结果是错误的.是正溢出(上溢).,.,例13X=-0.1101,Y=-0.1011,求X+Y。解:X补=1.0011Y补=1.0101X+Y补=0.1000(正数)两个负数相加结果不可能是正数.所以是错误的.是负溢出(下溢).,.,例14X=+0.1100,Y=+0.1000,求X+Y。解:X补=00.1100Y补=00.1000X+Y补=01.0100正溢出例15X=-0.1100,Y=-0.1000,求X+Y。X补=11.0100Y补=11.1000X+Y补=10.1100负溢出双符号位相同不溢出.否则溢出.单符号位溢出判别:看数值部分向符号位是否有进位和符号位是否向前有进位。,溢出判别方法:双符号位法,.,四、基本的二进制加法/减法器,n位行波进位的补码加法/减法器,.,一位全加器真值表和逻辑电路如图,Si=AiBiCiCi+1=AiBi+BiCi+CiAi,.,N位行波进位加法器的延迟时间(考虑溢出检测)为:ta=2nT+9T=(2n+9)T,当不考虑溢出检测时:ta=(n-1)2T+9T,.,作业:P62,1、2、4、5、6、11、13要求:独立完成;认真书写。,.,五、十进制加法器,n位数字的行波进位BCD加法器,.,一位BCD加法器单元的逻辑结构,.,2.3定点乘法运算,一、原码补码并行乘法被乘数X原=Xf.Xn-1X1X0乘数Y原=Yf.Yn-1Y1Y0乘积Z原=(XfYf)+(0.Xn-1X1X0)(0.Yn-1Y1Y0),.,1不带符号的阵列乘法器m位乘n位不带符号整数的阵列乘法中加法-移位操作,.,mn位不带符号的阵列乘法器逻辑框图,.,5位5位不带符号的阵列乘法逻辑电路图,.,乘法器总的乘法时间估算:,设Ta为“与门”的传输延迟时间Tf为全加器的进位传输延迟时间(用2级“与非”逻辑实现)Ta=TTf=2T乘法器总的乘法时间估算为:Tm=Ta+(n-1)6T+(n-1)Tf+3T=T+(n-1)6T+(n-1)2T+3T,.,例16已知两个不带符号的二进制整数A11011,B10101,求每一部分乘积项aibj的值与p9p8p0的值。,a4b01a3b01a2b00a1b01a0b01a4b10a3b10a2b10a1b10a0b10a4b21a3b21a2b20a1b21a0b20a4b30a3b30a2b30a1b30a0b30a4b41a3b41a2b40a1b41a0b41,.,Pp9p8p7p6p5p4p3p2p1p01000110111(56710),.,2带符号的阵列乘法器,对2求补器电路图,输入:1010输出:0110,n+1位总的延迟时间:tTC=2nT+5T=(2n+5)T,.,(n+1)(n+1)位带求补级的阵列乘法器框图,.,例17设15,13,用带求补器的原码阵列乘法器求出乘积?解:原01111原11101,加上符号位XY原=111000011,.,例18设-15,-13,用带求补器的补码阵列乘法器求出乘积?解:补10001补10011,11111101111100001111111111000011加上符号:原011000011算后求补:补=011000011,符号位:11=0,.,二、直接补码并行乘法,补码与真值的关系:N补=an-1an-2a1a0an-1是符号位N=an-12n-1+ai2i,.,一般加法器:,.,.,A(a4)a3a2a1a0B(b4)a3a2a1a0,(a4)和(b4)表示带有负权符号位,(a4)a3a2a1a0A)(b4)b3b2b1b0B(a4b0)a3b0a1b0a1b0a0b0(a4b1)a3b1a2b1a1b1a0b1(a4b2)a3b2a2b2a1b2a0b2(a4b3)a3b3a2b3a1b3a0b3)a4b4(a3b4)(a2b4)(a1b4)(a0b4)p9p8p7p6p5p4p3p2p1p0P,直接补码阵列乘法器,.,5位5位的直接补码阵列乘法器逻辑原理图,.,例设A补(01101)2,B补(11011)2,求AB补?,(0)110113)(1)10115(0)1101(0)1101(0)0000(0)11010(1)(1)(0)(1)(1)1011111165128+127026125124123122121120256+(12832168421)65(13)(5)65,.,一、原码除法算法原理被除数:原f.n110除数:原f.n110商:q原(ff)+(0.n110/0.n110),2.4定点除法运算,.,设:x=0.1001,y=0.1011.求:q=xy,0.1101商q0.10110.10010(r0)被除数小于除数,商00.0101121除数右移1位,减除数,商10.001110r1得余数r10.00101122除数右移1位,减除数,商10.0000110r2得余数r20.000101123除数右移1位,不减除数,商00.00001100r3得余数r30.0000101124除数右移1位,减除数,商10.00000001r4得余数r4,恢复余数法和加减交替法,.,二、并行除法器,1可控加法/减法(CAS)单元Ta=3T(三级逻辑),.,加减交替阵列除法器逻辑结构图,.,例200.101001,0.111,求。解:补1.001被除数0.101001减1.001余数为负1.1100010q00加0.0111余数为正0.0011010q11减1.11001余数为负1.1111110q20加0.000111余数为正0.0001100q31故得商qq0.q1q2q30.101余数r(0.00r3r4r5r6)0.000110,.,2.5定点运算器的组成,一、逻辑运算逻辑量:无符号的二进制数。非(求反):变量上方加一横表示。或(逻辑加):“”或“+”号表示。与(逻辑乘):“”或“”号表示。异或(按位加):“”号表示。见书上:P45例题2427,.,二、多功能算术/逻辑运算单元,先行进位加法器:Fi=XiYiCn+iCn+i+1=XiYi+YiCn+i+XiCn+i,.,函数发生器:,XiS2S3S2S3(AiBi)S2S3(AiBi)S2S3AiYiS0S1AiS0S1AiBiS0S1AiBi,.,上面两逻辑表达式化简:,Xi=S3AiBi+S2AiBiYi=Ai+S0Bi+S1BiXiYi=S3AiBi+S2AiBiAi+S0Bi+S1Bi=YiCn+i+1=Yi+XiCn+I4位先行进位:Cn1Y0X0CnCn2Y1X1Cn1Y1Y0X1X0X1CnCn3Y2X2Cn2Y2Y1X2Y0X1X2X0X1X2CnCn+4=Y3+X3Xn+3=Y3+Y2X3+Y1X2X3+Y0X1X2X3+X0X1X2X3CnCn+4=G+PCn,.,算术运算逻辑的实现:(M=0算术M=1逻辑),.,两级先行进位的ALU:,.,用两个16位全先行进位逻辑级联组成的32位ALU,.,三、内部总线,总线:具有逻辑控制功能的数据通道。分类:内总线:CPU内部各部件间的连线。外总线(系统总线):CPU与存储器、I/O系统之间的连线。总线又分单向和双向的。,.,四、定点运算器的基本结构,运算器:ALU、寄存器、阵列乘除器、多路开关、三态缓冲器、数据总线。1单总线结构的运算器,.,2双总线结构的运算器,.,3三总线结构的运算器,.,2.6浮点运算方法和浮点运算器,一、浮点加法、减法运算运算步骤:(1)0操作数检查;(2)比较阶码并完成对阶;E=Ex-Ey(小阶向大阶看齐)(3)尾数求和运算;(补码运算)(4)结果规格化;尾数是01.或10.要右规(补码)尾数不是0.1M/1.0M要左规(补码),2EM2EM,.,(5)舍入处理,简单的有“0舍1入”法和“恒置1”法。IEEE754标准:就近舍入:四舍过五入。等于五时,有效位是0舍,是1进。朝0舍入:截尾朝+舍入:只要不是全0,正数进负数截朝-舍入:正数截负数进(6)溢出处理阶码上溢:+和-阶码下溢:0尾数溢出:右规尾数右移时:舍入处理,.,浮点加减运算操作流程:,.,例25设20100.11011011,2100(0.10101100),求。,解:浮00010,0.11011011浮00100,1.01010100求阶差并对阶EEEE补E补000101110011110浮00100,0.00110110(11)尾数求和:1.10001010(11)规格化处理:1.00010101(10)(左规,阶码减1)舍入处理:1.00010110溢出判别:阶符00不溢出所以结果:x+y=2011(-0.11101010),.,二、浮点乘法、除法运算,浮点乘法、除法运算规则2EM2EM乘:2(EE)(MM)除:2(EE)(MM)步骤:10操作数检查;2阶码加/减操作3尾数乘/除操作4结果规格化及舍入处理,.,浮点数的阶码运算:,移2n2n2n移移2n2n2n(2n()2n移(对结果的符号再求反),混合码运算:补2n1移补2n2n12n1(2n()2n1移,.,溢出判别:,阶码的双符号位:最高符号位恒用0参加加减运算,溢出的条件是阶码的最高符号位为1。双符号位:10上溢11下溢01没有溢出,结果为正00没有溢出,结果为负,.,例26011,110,求移和移,并判断是否溢出。解:移01011,补00110,补11010移移补10001,结果上溢。移移补00101,结果正确,为3。,.,尾数处理:,原码:1、尾数最低位为1或舍去的位中有1就置最低位为1。2、0舍1入。补码:过五入设1补11.01100000,2补11.01100001,3补11.01101000,4补11.01111001,求执行只保留小数点后4位有效数字的舍入操作值。1补11.0110(不舍不入)2补11.0110(舍)3补11.0110(舍)4补11.1000(入),.,例28设有浮点数250.0110011,23(0.1110010),阶码用4位移码表示,尾数(含符号位)用8位补码表示。求浮。要求用补码完成尾数乘法运算,运算结果尾数保留高8位(含符号位),并用尾数低位字长值处理舍入操作。,解:M补0.0110011M补1.0001110E移00011E移01011E补00011浮00011,0.0110011浮01011,1.0001110EE移E移E补000110001100110(-2的移码),.,M补M补0.0110011补1.0001110补1.1010010,1001010补,规格化处理:左规,阶码变为00101(-3),尾数变为1.0100101,0010100舍入处理:尾数为1.0100101最终结果为浮00101,1.0100101其真值为23(0.1011011),.,三、浮点运算流水线,1流水线原理假定作业T被分成k个子任务,可表达为TT1,T2,Tk若ik时,Ckk,.,2流水线浮点加法器,.,例29假设每个过程段所需的时间为:求阶差170ns,对阶260ns,相加390ns,规格化480ns,缓冲寄存器L的延时为tl10ns,求(1)4级流水线加法器的加速比为多少?(2)如果每个过程段的时间相同,即都为75ns,(包括缓冲寄存器时间),加速比是多少?解:(1)加法器的流水线时钟周期至少为90ns10ns100ns如果采用同样的逻辑电路,但不是流水线方式,则浮点加法所需的时间为1234300ns因此,4级流水线加法器的加速比为Ck300/1003(2)当每个过程段的时间都是75ns时,加速比为Ck300/754,.,例30已知计算一维向量,的求和.试用4段的浮点加法流水线来实现一维向量的求和运算,这4段流水线是阶码比较、对阶操作、尾数相加、规格化。画出向量加法计算流水时空图。,.,四、浮点运算器实例,(1)8087相当于386的一个I/O部件,本身有它自己的指令,但不能单独使用,它只能作为386主CPU的协处理器才能运算.(2)可处理包括二进制浮点数、二进制整数、和压缩十进制数串三大类7种数据.(字整数、短整数、长整数、短实数、长实数、临时实数)(3)奔腾CPU将浮点运算器包含在芯片内。浮点运算部件采用流水线设计。U、V流水线。U流水线完成浮点数操作。,.,80X87浮点运算器逻辑框图,.,作业:P62,7、8、9要求:独立完成;认真书写。,.,第三章存储系统,3.1存储器概述3.2随机读写存储器3.3只读存储器和闪速存储器3.4高速存储器3.5cache存储器3.6虚拟存储器3.7存储器保护,.,3.1存储器概述,存储器用来存放程序和数据.存储器由若干个存储单元构成.每个存储单元又由若干个存储元(存储位)构成.一、存储器分类按存储介质分:半导体和磁表面存储器按存取方式分:随机和顺序存储器按读写功能分:ROM和RAM按信息的可保存性分:非永久和永久性存储器按在计算机系统中的作用分:主存辅存高速缓存控制存储器等.,.,二、存储器的分级结构,容量、速度、成本,.,三、主存储器的技术指标,存储容量:存储单元总数(字或字节为单位K字、B、KB、MB、GB、TB)存取时间:从启动操作到完成操作所需时间存储周期:连续启动两次读操作所需间隔的最小时间存储器带宽:单位时间内存储器所存取的信息量。位/秒或字节/秒,.,3.2随机读写存储器一、SRAM存储器,.,SRAM存储器的组成(4K1位组成4K16位的存储器),各级都得到它下一级的支持,同时也受到运行在下面各级上的程序的支。,.,地址译码器,单译码结构和双译码结构,.,2114存储器芯片实例(1K4位),.,位扩展法(8K1位组成8K8位存储器),.,字扩展法(16K8位组成64K8位的存储器),.,字位同时扩展法:,例如:用8K1位的存储器芯片构成64K8位的大容量存储器先进行位扩展:用8片8K1位芯片构成8K8位芯片组然后进行字扩展:用8个8K8位芯片组构成64K8位的存储器,.,存储器的读写周期:,.,.,例1下图是SRAM的写入时序图。当R/W线为低电平时,存储器按给定地址把数据线上的数据写入存储器。请指出下图写入时序中的错误,并画出正确的写入时序图,.,.,二、DRAM存储器,.,.,.,.,读周期时序图,.,写周期时序图,.,集中刷新方式,DRAM的刷新:,.,分散刷新方式,异步刷新方式2000微秒128行=15.5微秒,.,例2说明1M1位DRAM片子的刷新方法,刷新周期定为8ms,如果选择一个行地址进行刷新,刷新地址为A0A8,因此这一行上的2048个存储元同时进行刷新,即在8ms内进行512个周期的刷新。按照这个周期数,51220481048567,即对1M位的存储元全部进行刷新。刷新方式可采用:在8ms中进行512次刷新操作的集中刷新方式,或按8ms51215.5s刷新一次的异步刷新方式。,.,四、高性能的主存储器,CDRAM芯片(1M4位EDRAM芯片结构框图),.,1M4位DRAM,CDRAM芯片,.,CDRAM内存条,.,FPM-DRAM快速页模式DRAM,.,SDRAM同步型DRAM,.,.,3.3只读存储器和闪速存储器,一、只读存储器最大的特点:只能读不能写,信息的不易失性。1掩模式只读存储器:可靠、集成度高、便宜。不能重写。2一次编程只读存储器(PROM):熔丝烧断型和PN结击穿型。一次、永久。3多次编程只读存储器:光擦编程EPROM、电擦编程EEPROM、电改写EAROM。,.,168位ROM阵列结构示意图,.,.,光擦可编程只读存储器(EPROM),.,EPROM实例(2716芯片),.,EPROM存储元,.,EEPROM存储元,.,2716型EPROM的读出时序,地址,CS,数据,地址,PD/PGM,数据,后备周期,读周期,.,例3CPU的地址总线16根(A15A0),双向数据总线8根(D7D0),控制总线中与主存有关的信号有CS,R/W。主存地址空间分配如下:08191为系统程序区,由只读存储芯片组成;819232767为用户程序区;最后(最大地址)2K地址空间为系统程序工作区。上述地址为十进制,按字节编址。现有如下存储器芯片:EPROM:8K8位(控制端仅有CS);SRAM:16K1位,2K8位,4K8位,8K8位.请从上述芯片中选择适当芯片设计该计算机主存储器,画出主存储器逻辑框图,注意画出选片逻辑(可选用门电路及38译码器74LS138)与CPU的连接,说明选哪些存储器芯片,选多少片。,.,主存地址空间分布如下:,.,.,二、闪速存储器,.,.,.,.,.,特点:固有的非易失性;廉价的高密度;可直接执行;固态性能。逻辑结构:,.,3.4并行存储器提高存储器存取速度的方法:,采用更高速的技术来加速或加大字长采用并行操作的双端口存储器在CPU和主存之间插入一个高速缓冲存储器(Cache)在每个存储器周期中存取几个字,.,一、双端口存储器,.,.,.,二、多模块交叉存储器,.,多模块交叉存储器的基本结构,.,.,流水线方式存取示意图,T=mt1=T+(m-1)连续读取m个字t2=mT顺序方式连续读m个字,.,例4设存储器容量为32字,字长64位,模块数m=4,分别用顺序方式和交叉方式进行组织。存储周期T=200ns,数据总线宽度为64位,总线传送周期=50ns。问顺序存储器和交叉存储器的带宽各是多少?解:顺序存储器和交叉存储器连续读出m=4个字的信息总量都是:q=64位4=256位顺序存储器和交叉存储器连续读出4个字所需的时间分别是:t2=mT=4200ns=800ns=810-7s;t1=T+(m-1)=200ns+350ns=350ns=3.510-7s顺序存储器和交叉存储器的带宽分别是:W2=q/t2=256(810-7)=32107位/s;W1=q/t1=256(3.510-7)=73107位/s,.,二模块交叉存储器举例,.,无等待状态成块存取示意图,.,三、相联存储器,相联存储器的工作原理按内容(键)访问的存储器相联存储器的组成,.,.,3.5cache存储器,一、cache基本原理,.,cache命中率,h-命中率Nccache完成存取的总次数Nm-主存完成存取的总次数,.,若tc表示命中时的cache访问时间,tm表示未命中时的主存访问时间,1-h表示未命中率,则cache/主存系统的平均访问时间ta为:ta=htc+(1-h)tm设r=tm/tc表示主存慢于cache的倍率,e表示访问效率,则有:为提高访问效率,命中率h越接近1越好,r值以510为宜,不宜太大。,.,例5CPU执行一段程序时,cache完成存取的次数为1900次,主存完成存取的次数为100次,已知cache存取周期为50ns,主存存取周期为250ns,求cache/主存系统的效率和平均访问时间。解:,h=Nc/(Nc+Nm)=1900/(1900+100)=0.95r=tm/tc=250ns/50ns=5e=1/(r+(1-r)h)=1/(5+(1-5)0.95)=83.3%ta=tc/e=50ns/0.833=60ns,.,二、主存与cache的地址映射,全相联映射方式,.,.,直接映射方式,.,.,组相联映射方式,.,.,三、替换策略,最不经常使用(LFU)算法每访问一次,被访行的计数器增1。近期最少使用(LRU)算法cache每命中一次,命中行计数器清零,其它各行计数器增1。随机替换随机替换策略从特定的行位置中随机地选取一行换出。在硬件上容易实现,且速度也比前两种策略快。缺点是降低了命中率和cache工作效率。,.,四、cache的写操作策略,写回法当CPU写cache命中时,只修改cache的内容,而不立即写入主存;只有当此行被换出时才写回主存。这种方法减少了访问主存的次数,但是存在不一致性的隐患。实现这种方法时,每个cache行必须配置一个修改位,以反映此行是否被CPU修改过。,.,全写法当写cache命中时,cache与主存同时发生写修改,因而较好地维护了cache与主存的内容的一致性。当写cache未命中时,直接向主存进行写入。cache中每行无需设置一个修改位以及相应的判断逻辑。缺点是降低了cache的功效。,.,写一次法基于写回法并结合全写法的写策略,写命中与写未命中的处理方法与写回法基本相同,只是第一次写命中时要同时写入主存。这便于维护系统全部cache的一致性。,.,3.6虚拟存储器,一虚拟存储器的基本概念主存外存层次,透明的比实际主存空间大得多的空间。虚拟地址(虚地址):逻辑地址物理地址(实地址):CPU地址引脚送出2m再定位:虚地址转换成实地址的过程虚拟地址是由编译程序生成的。在虚拟地址模式下CPU会理解这些虚拟地址的。虚地址长度为n位,虚存空间就是2n。,.,虚存具有辅存的容量和接近主存的速度。是由主存和辅存以及辅存管理器部件构成的概念模型。虚存对应用程序员是透明的。对设计系统存储管理软件的系统程序员是不透明的。Cache与虚存的异同出发点相同;原理相同;侧重点不同;数据通路不同;透明性不同;未命中时的损失不同。虚存机制要解决的问题调度问题;地址映射问题;替换问题;更新问题。,.,二页式虚拟存储器,.,经快表(TLB)和慢表实现内部地址访问,.,内页表虚地址向主存物理地址变换。外页表虚地址向辅存地址变换。调页时用。虚存、TLB和Cache的协同操作,.,三段式虚拟存储器,.,四段页式虚拟存储器,.,五替换算法,LRU算法:最近很少用LFU算法:最不经常用FIFO算法:先进先出或两种算法结合起来例7假设主存只有a,b,c三个页框,组成a进c出的FIFO队列,进程访问页面的序列是0,1,2,4,2,3,0,2,1,3,2号。若采用FIFO算法,FIFO算法+LRU算法,用列表法分别求两种替换策略情况下的命中率。,.,.,六、奔腾系列机的虚存组织,平坦存储器模型分段存储器模型实地址模式存储器模型,.,1奔腾PC的虚地址模式(SU和PU)分段不分页模式虚地址(16位段参照,32偏移)214+32=246=64TB分段分页模式32位线性地址分成页目录、页表、页内偏移三个字段由PU转换成32物理地址。(两级表)64TB不分段分页模式SU不工作,寄存器提供的32位地址被看成是页目录、页表、页内偏移三个字段。由PU完成虚拟地址到物理地址的转换。4GB,.,2保护模式的分页地址转换,奔腾PC有两种分页方式:4KB页通过两级表转换4MB页单级页表进行转换。,.,I=14MB页04KB页P=1装入主存0缺页A=1访问过D=1修改过RW读/写控制US用户/监督控制PCD页cache禁止控制PWT页全写法的控制,.,3.7存储保护,一存储区域保护1页表保护和段表保护,.,2健保护方式,.,3环保护方式,.,本章作业:P1111,2,3(1),5,6,10,11,15、19、,.,第四章指令系统,4.1指令系统的发展与性能要求4.2指令格式4.3指令和数据的寻址方式4.4堆栈寻址方式4.5典型指令,.,4.1指令系统概述,一、基本概念微指令:微程序级的命令,属于硬件。宏指令:是由若干条机器指令组成的软件指令。机器指令:介于微指令与宏指令之间。简称为指令。指令系统:一台计算机中所有机器指令的集合。是计算机性能的重要因素。系列计算机:基本指令系统相同,基本体系结构相同的一系列计算机。,.,二、对指令系统性能的要求,完备性:指令系统丰富、功能齐全、使用方便。有效性:高效率地运行。占据存储空间小、执行速度快。规整性:对称性、匀齐性、指令格式和数据格式的一致性。兼容性:系列机各机种之间具有相同的基本结构和共同的基本指令集,指令系统是兼容的。,.,4.2指令格式,机器字长:计算机能直接处理的二进制数据的位数。指令字长:一个指令中包含二进制数据的位数。(单字长指令、半字长指令、双字长指令)指令助记符,.,指令格式举例1、八位微型计算机的指令格式,操作码,操作码,操作数地址,操作码,操作数地址1,操作数地址2,单字长指令,双字长指令,三字长指令,RR型指令;RS型指令;SS型指令多字长指令格式不利于提高机器速度,.,2、PDP/11系列机指令格式,操作码字段长度不确定。用较短的操作码包含较多的指令。能尽可能的缩短了指令字长。但控制器设计比较复杂。3、Pentium指令格式(RS型指令)指令字长是可变的:1字节到12字节。还可以带前缀。,前缀,指令,.,例1指令格式如下所示,其中OP为操作码,试分析指令格式的特点。,解:(1)单字长二地址指令。(2)操作码字段OP可以指定128条指令。(3)源寄存器和目标寄存器都是通用寄存器,所以是RR型指令,两个操作数均在寄存器中。(4)这种指令结构常用于算术逻辑运算指令。,3,.,例2指令格式如下所示,OP为操作码字段,试分析指令格式特点。,解:(1)双字长二地址指令,用于访问存储器。(2)操作码字段OP为6位,可以指定64种操作。(3)一个操作数在源寄存器,另一个操作数在存储器中,所以是RS型指令。,.,4.3操作数类型,4.3.1操作数类型地址数据:地址实际上也是一种形式的数据。数值数据:计算机中普遍使用的三种类型的数值数据。字符数据:文本数据或字符串,目前广泛使用ASCII码。逻辑数据:一个单元中有几位二进制bit项组成,每个bit的值可以是1或0。当数据以这种方式看待时,称为逻辑性数据。4.3.2Pentium数据类型常规数据类型整数数据类型详见P111表4.4,.,4.3指令和数据的寻址方式,一、指令的寻址方式1顺序寻址方式,.,2跳跃寻址方式,.,二、操作数寻址方式,.,.,.,.,.,.,段寻址方式,.,三、寻址方式举例,1PDP/11系列机寻址方式,寄存器(8个):R0、R1R7R7程序计数器R6-堆栈指示器寻址方式:8种(3位);还有4种PC型寻址方式,.,.,.,.,2Pentium的寻址方式,立即数寻址:8位、16位、32位。寄存器寻址:直接寻址:基址寻址:基址+偏移量寻址:比例变址+偏移量寻址:基址+变址+偏移量寻址:基址+比例变址+偏移量寻址:相对寻址:,.,.,例3一种二地址RS型指令的结构如下所示,请写出6种寻址方式的名称。,一种二地址RS型指令的结构如下所示:6位4位1位2位16位,解:,OP-通用寄存器间址标志I寻址模式X偏移量D,6位,4位,1位,2位,16位,.,例4某16位机器所使用的指令格式和寻址方式如下所示,该机有两个20位基址寄存器,四个16位变址寄存器,十六个16位通用寄存器,指令汇编格式中的S(源),D(目标)都是通用寄存器,M是主存中的一个单元。三种指令的操作码分别是MOV(OP)(A)H,STO(OP)(1B)H,LAD(OP)(3C)H。MOV是传送指令,STO为写数指令,LDA为读数指令。,.,要求:分析三种指令的指令格式与寻址方式特点。CPU完成哪一种操作所花时间最短?哪一种操作所花时间最长?第二种指令的执行时间有时会等于第三种指令的执行时间吗?下列情况下每个十六进制指令字分别代表什么操作?其中如果有编码不正确,如何改正才能成为合法指令?(F0F1)H(3CD2)H(2856)H(6FD6)H(1C2)H解:,.,4.4堆栈寻址方式,一、串联堆栈,.,栈顶不动,数据动!,D,.,二、存储器堆栈,入栈:,.,出栈:,276,.,4.5典型指令,一、指令的分类1数据传送指令2算术运算指令3逻辑运算指令4程序控制指令5输入输出指令6字符串处理指令7特权指令8其他指令,.,二、基本指令系统,CISC(复杂指令系统计算机)的指令大约二三百条。最常用最简单的指令占20%。在程序中出现的频率占80%。这些指令的功能也具有普遍意义,几乎所有计算机的指令集中都能找到这些指令。见P122表4-9,.,三、精简指令系统,RISC指令系统的最大特点:先取使用频率最高的一些简单指令,指令条数少。指令长度固定,指令格式种类少,寻址方式种类少。只有取数/存数指令访问存储器,其余指令的操作都在寄存器之间进行。,.,采用流水线技术的RISC特点:,简单而统一格式的指令译码;大部分指令可以单周期执行只有LOAD/STORE可以访问存储器简单的寻址方式采用延迟转移技术采用LOAD延迟技术三地址指令格式较多的寄存器对称的指令格式,.,本章作业:P1373、4、5、6、11、12,.,第五章中央处理器,5.1处理器的功能和组成5.2指令周期5.3时序产生器和控制方式5.4微程序控制器5.5微程序设计技术5.6硬布线控制器5.7传统处理器5.8流水处理器5.9精简指令系统电脑处理器5.10多媒体处理器,.,5.1处理器的功能和组成,一、处理器的功能指令控制操作控制时间控制数据加工,.,二,处理器的基本组成,控制器:由PC、IR、指令译码器、时序产生器,操作控制器组成。运算器:由ALU,累加寄存器,数据缓冲寄存器和状态条件寄存器组成。,.,.,.,5.2指令周期,一、指令周期的基本概念:处理器取出并执行一条指令所需要的时间叫做指令周期。各种指令的指令周期不尽相同。指令周期用处理器周期(机器周期)表示从内存中读取一个指令字的最短时间来规定处理器周期。处理器周期由若干个时钟周期(节拍脉冲或T周期)构成。,.,指令周期,.,六条典型指令组成的一个程序,.,非访内指令的指令周期,.,直接访内指令的指令周期,.,存数指令的指令周期,.,JMP指令的指令周期,.,.,二、用方框图语言表示指令周期,.,.,例1】图所示为双总线结构机器的数据通路,IR为指令寄存器,PC为程序计数器(具有自增功能),M为主存(受R/W信号控制),AR为地址寄存器,DR为数据缓冲寄存器,ALU由加,减控制信号决定完成何种操作,控制信号G控制的是一个门电路,线上标注有小圈表示有控制信号,例中yi表示y寄存器的输入控制信号,R1o为寄存器R1的输出控制信号,未标字符的线为直通线,不受控制。(1)ADDR2,R0指令完成(R0)+(R2)-R0的功能操作,画出其指令周期流程图,假设该指令的地址已放入个人计算机中并列出相应的微操作控制信号序列。(2)“SUBR1,R3”指令完成(R3)-(R1)-R3的操作,画出其指令周期流程图,并列出相应的微操作控制信号序列。,.,解:,ADDR2,R0SUBR1,R3,.,.,5.3时序产生器和控制方式,一、时序信号的作用和体制硬布线控制器:主状态周期-节拍电位-节拍脉冲微程序控制器:节拍电位-节拍脉冲,.,.,二、时序信号发生器,T1=C1C2T2=C2C3T3=C3T4=C1,.,.,启停控制逻辑,.,三、控制方式(控制不同操作序列时序信号的方法),同步控制方式(机器周期数一定)1采用完全统一的机器周期执行各种不同的指令2采用不定长机器周期3中央控制与局部控制结合异步控制方式(机器周期数不等,执行部件“回答”)联合控制方式(同步控制和异步控制相结合),.,5.4微程序控制器,微命令:控制部件通过控制线向执行部件发出的各种控制命令。微操作:执行部件接受微命令后所进行的操作。微指令:在一个处理器周期中,一组实现一定操作功能的微命令的组合。微程序:微指令序列构成微程序用于完成一条机器指令的功能。,.,简单运算器数据通路图,.,微指令格式,.,运算器操作时序与产生逻辑,.,微程序控制器原理图,.,微程序举例十进制加法微程序,第一条微指令:00000000000011111100000第二条微指令:01010010010000000001001第三条微指令:01000100110000000010000第四条微指令:01000100100100000000000,.,处理器周期与微指令周期的关系,T4上升沿将运算结果打入某个寄存器与此同时可用T4间隔读取下一条微指令。所以一个微指令周期和一个处理器周期是一样长的。只是在时间上相差一个脉冲节拍。(200ns)。,.,机器指令与微指令的关系,.,例2某计算机运算器框图如下所示,ALU为16位,SA,SB为16位暂存器。,.,微指令格式:,.,微指令周期如下:,.,5.5微程序设计技术,设计微程序要本着:微指令字长度控制存储器的容量微程序的执行速度微指令的修改微程序设计的灵活性,.,一、微命令编码,(1)直接表示法:操作控制字段中的每一位代表一个微
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 防止退款合同范本
- 工地承包土方合同范本
- 投手合同范本
- 补品展柜采购合同范本
- 个人报建合同范本
- 餐饮加盟合同范本
- 备件采购合同范本 英文
- 文案编辑合同范本
- 店铺转让协议 合同范本
- 嫁接胶水采购合同范本
- 浪浪山携志奔赴新学期-2025年秋季开学第一课主题教育班会-2025-2026学年初中主题班会
- 管道吊装方案范本
- 小学教师读书分享活动课件
- GB/T 6974.3-2024起重机术语第3部分:塔式起重机
- (正式版)SHT 3046-2024 石油化工立式圆筒形钢制焊接储罐设计规范
- 清表施工方案4常用
- 广西壮族自治区尾矿库注销及小型尾矿库闭库工作指导意见
- 完工情况说明-
- 吊、索具安全检查记录表
- 集装箱箱主代码
- 2010年国际贸易术语解释通则(中文完整版)解析
评论
0/150
提交评论