




已阅读5页,还剩390页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
.,1,计算机组成原理,张权,QQ群:47146134,.,2,概述,计算机组成:主要指计算机硬件的具体实现方式及工作原理从三方面掌握本课程内容硬件结构:从物理上、逻辑上掌握计算机各部件和器件的构成和作用实现方式:硬件联接形式和内部处理方式(如控制器、运算器的实现方式等)工作原理:计算机各部分内部工作过程,.,3,本课程的重要地位本课程是计算机及相关专业的核心专业基础课,对后续课程(操作系统、接口与通信等)的学习十分重要。考研必考课程。通过课程的学习主要掌握以下内容本课程主要讲授单处理机系统的组成及工作原理。分析和说明计算机由哪些功能部件组成(结构),各功能部件在整机中的作用,以及它们如何完成各自所分配的任务(工作原理)。学习难点内容较多、结构复杂、要有数字逻辑的基础学习思路(方法)分析结构、弄清原理、多做练习,.,4,主要内容计算机系统概述(计算机基础、基本概念)运算方法和运算器(计算机中数据的表示和编码:包括数值、非数值数据,整数、小数,汉字,校验码等。计算机中运算方法:定点运算、浮点运算、逻辑运算。运算器及实现)内部存储器(存储器芯片的结构与工作原理,存储器的组织与连接,高速存储器、等)指令系统(指令格式、寻址方式、典型指令)中央处理器(CPU的组成及工作原理,控制器的实现,实现技术)总线系统(总线概念、总线技术)外围设备(典型外围设备基本工作原理)输入输出系统(输入输出控制方式)操作系统支持(调度,存储管理,虚拟存储器等),.,5,第一章计算机系统概论,第一节计算机分类电子计算机从总体上来说分为两大类:电子模拟计算机和电子数字计算机。电子模拟计算机的特点是数值由连续量来表示,运算过程也是连续的。电子数字计算机的主要特点是按位运算,并且不连续地跳动计算。,.,6,数字计算机又可分为专用计算机和通用计算机。专用和通用是根据计算机的效率、速度、价格、运行的经济性和适应性来划分的。专用机是最有效、最经济和最快速的计算机,它是针对某一任务设计的计算机,但是它的适应性很差。通用机适应性很大,但是牺牲了效率、速度和经济性。通用计算机又分巨型机、大型机、中型机、小型机、微型机和单片机六类。它们的区别在于体积、简易性、功率损耗、性能指标、数据存储容量、指令系统规模和机器价格。,.,7,第二节计算机的发展1、计算机五代变化2、半导体存储器芯片的发展3、微处理器的发展4、计算机体系结构的变化计算机体系结构是在冯诺依曼结构的基础上,围绕提高速度、提高字长、扩大存储容量、降低成本、提高系统可靠性和方便使用等诸方面,通过新器件和新软件提高计算机性能。体系结构上,从指令系统、微程序设计、流水线结构、多级存储器体系结构、输入/输出体系结构、并行体系结构、分布式体系结构等方面的形成和发展。体系结构发展趋势:网络化、智能化、模块化、多媒体应用。,.,8,第三节计算机的硬件,一、数字计算机硬件的组成硬件:指计算机中的电子线路和物理装置。计算机硬件由五大部分组成:即运算器、控制器、存储器、输入设备、输出设备。运算器进行数据处理或信息加工()包括各种算术运算、逻辑运算和判断处理存储器存放程序和数据()程序是计算机进行各种操作和控制的依据数据是计算机进行操作的对象计算机中存放的程序和数据都是二进制形式的,.,9,控制器控制计算机各部分自动协调的工作()完成的工作是从内存中读取指令,分析和解释指令,然后按指令的要求发出操作命令,控制计算机各部分自动协调的工作。简单程序指令形式控制器的基本任务指令流和数据流冯诺依曼体系结构计算机的主要特征是:采用存储程序和数据,由指令流来控制计算机的操作。输入设备输入信息到计算机中的设备输出设备从计算机中输出信息的设备,.,10,第四节计算机软件一、软件的组成与分类计算机中的各种程序、数据和有关文档构成计算机的软件系统。计算机的软件一般分为两大类:系统软件:便于计算机使用的系统管理程序(包括操作系统、语言处理、数据库管理系统等)应用软件:针对用户具体实际应用的程序,.,11,二、软件的发展目的程序汇编程序源程序编译程序操作系统数据库管理系统,.,12,第四节计算机系统的层次结构一、多级组成的计算机系统微程序设计级一般机器级操作系统级汇编语言级高级语言级二、软件与硬件的逻辑等价性,.,13,第四节计算机系统的层次结构,计算机系统具有层次性,它是由多级层次结构组成的。其层次之间的关系十分紧密,上层是下层功能的扩展,下层是上层的基础;层次的划分不是绝对的,各层之间有时是相互渗透的。,.,14,第二章运算方法和运算器,第一节数据与文字的表示数据一般分为两大类:数值数据:有确定的值,相互间有大小关系非数值数据:相互间无大小关系,用于表示符号、文字或属性。,.,15,一、数制及相互转换1、数制常用数制十进制(D):日常使用数制二进制(B):数字计算机内部使用数制十六进制(H):为使于对二进制的阅读和书写,常采用十六进制(或八进制)表示。,.,16,对一任意数S,其r进制数表示为(S)rknrn-1+kn-1rn-2+kiri-1+k-mr-m-1其中kirr称为进位计数值的基数,ki为第i位数字符,i为位序号,ri为第i位的位权。,.,17,(347)8=382+481+780=(103)10(347.5)8=382+481+780+58-1=(231.625)10(34E.5)16=3162+4161+14160+516-1=(846.3125)10,.,18,2、不同数制间的转换1十进制八,十六进制二进制法则整数部分:除8(16)取余数小数部分:乘8(16)取整重复循环,.,19,2八,十六进制二进制二进制八进制以小数点为界,分别向左和向右每三位分为一组,然后写出各组对应的八进制数。二进制十六进制以小数点为界,分别向左和向右每四位分为一组,然后写出各组对应的十六进制数。,.,20,3八,十六进制十进制直接按照相应进制数的公式,依“按权相加”的方法计算出通式的值。(10110.01)=124+023+122+181+120+02-1+12-2=(22.25)10(347.5)8=382+481+780+58-1=(231.625)10(34E.5)16=3162+4161+14160+516-1=(846.3125)10,.,21,二、数据格式在计算机中进行数据表示时需考虑的几个因素:表示数的类型(小数、整数、实数等)数值的范围数值的精度数据存储及处理的硬件代价,.,22,计算机中常用的数据表示格式有两种,一是定点格式,二是浮点格式。一般来说定点格式容许的数值范围有限(通常用于表示整数或纯小数),但要求的处理硬件比较简单。浮点格式容许的数值范围很大(可以表示实数),但要求的处理硬件比较复杂。,.,23,、定点数的表示定点表示:约定机器中所有数据的小数点位置是固定不变的。由于约定在固定的位置,小数点就不再使用记号“.”来表示。通常将数据表示成纯小数或纯整数。n+1位定点数表示:X0X1X2X3XiXn-2Xn-1Xn其中X0为符号位,XXn为数值部分,Xi为或。,.,24,1定点小数最高位为符号位,小数点位置隐含约定在符号位后,其后为数值部分n+1位定点小数的表示范围是0X12n或:(12n)X12n(16位小数范围:(12)X12),.,25,2定点整数最高位为符号位,其后为数值部分,小数点位置隐含约定在数值部分的后面。n+1位定点整数的表示范围是0X2n1或:(2n1)X2n1(16位整数范围:(2151)X(2151),.,26,2、浮点表示法1数的浮点表示其范围和精度部分分别用定点数表示123.45=1234.5101=12345102=1234501034796.540.4796541040.004796540.4796541020.004796540.479654102,.,27,101.1101=0.101110120011=0.01011101020100101.1101=0.101110120011=0.010111010201000.0001011101=0.101110120011=0.010111010200100.0001011101=0.101110120011=0.01011101020010,.,28,任意十进制N,可以化为NM10E其中M为小数,E为整数一个数S的任意进制表示(S)RmRem:尾数,是一个纯小数。e:比例因子的指数,称为浮点的指数,是一个整数。R:比例因子的基数,对于二进计数值的机器是一个常数,一般规定为2,8或16。,.,29,浮点表示法:把一个数的有效数字和数的范围在计算机的一个存储单元中分别予以表示,这种把数的范围和精度分别表示的方法,数的小数点位置随比例因子的不同而在一定范围内自由浮动。对于:101.1101(=0.101110120011)只需存放0.1011101和0011即010111010011,.,30,一个机器浮点数由阶码和尾数及其符号位组成(尾数:用定点小数表示,给出有效数字的位数,决定了浮点数的表示精度;阶码:用整数形式表示,指明小数点在数据中的位置,决定了浮点数的表示范围。)具体格式见教材17,.,31,IEEE标准总位数符号位阶码尾数短实数321823长实数6411152临时实数8011564,.,32,阶码和尾数各占用的位数确定了浮点数的格式对二进制数而言:1110.0110.111001121000.0011100110.11100112100.0011100110.1110011210在将上面的数以浮点数格式存放时,只需将红色部分按照浮点数格式要求的位数,化为相应的补码或移码,按照浮点数格式存放。,.,33,为提高数据的表示精度,当尾数的值不为0时,其绝对值应0.5,即尾数域的最高有效位应为1,否则以修改阶码同时左右移小数点的办法,使其变成这一表示形式,这称为浮点数的规格化表示。101.1101=0.101110120011=0.01011101020100规格化表示为尾数是0.1011101,阶码是0011而尾数是0.01011101,阶码是0100不是规格化表示。,.,34,当浮点数的尾数为0,不论其阶码为何值,或者阶码的值遇到比它能表示的最小值还小时,不管其尾数为何值,计算机都把该浮点数看成零值,称为机器零。浮点数转换的实例见18,.,35,IEEE754浮点数格式说明一个规格化的32位浮点数的真值可表示为(1)s(1.)2127e127其中的范围是(阶码范围126+127),0和255作特殊用途:浮点数+,0:,时表示x(1),:255,M0时x(1)IEEE754的32位浮点数表示的除外的绝对值最小的数:s0000000100000000000000000000000 x()S21261.0IEEE754的32位浮点数表示的除外的绝对值最大的数:s1111111011111111111111111111111x()S2127(2223),.,36,3、十进制数串的表示十进制数串在计算机内主要有两种表示形式:1字符串形式字符串形式:一个字节存放一个十进制的数位或符号位。为了指明这样一个数,需要给出该数在主存中的起始地址和位数(串的长度)。,.,37,2.压缩的十进制数串形式压缩的十进制数串形式:一个字节存放两个十进制的数位。它比前一种形式节省存储空间,又便于直接完成十进制数的算术运算,是广泛采用的较为理想的方法。码(二十进制编码),.,38,、自定义数据表示自定义数据表示则用数据本身来说明数据类型。其表示形式有两种,即标志符数据表示和描述符数据表示。标志符数据表示要求对每一个数据都附加标志符(),其中标志符指明后面的数据所具有的类型,如整数、浮点数、BCD数、字符串等。,.,39,描述符数据表示主要用来描述多维结构的数据类型,如向量、矩阵、记录等()。描述符标志位部分指明这是一个数据描述符;特征标记部分指明数据的各种特征;长度部分指明数组中元素个数;起始地址部分指明数据块的首地址。,.,40,标志符与描述符表示的区别是:(1)标志符与每个数据相连,二者合起来存放在一个存储单元,而描述符要和数据分开存放。(2)描述符表示中,先访问描述符,后访问数据,至少增加一次访存。(3)描述符是程序的一部分,而不是数据的一部分。,.,41,二、数的机器码表示在计算机中对数据进行运算操作时,符号位的表示,符号位是否也同数值位一道参加运算,如何参加运算?为了妥善的处理好这些问题,就需要把符号位和数字位一起编码表示数据,为适应不同的处理要求,产生了多种数据编码方法,如原码、补码、反码、移码等。,.,42,计算机中对数据的表示都采用二进制编码真值:数值数据的实际值,如257,33,1011B等机器数(机器码):数值数据在计算机内的编码表示,.,43,在计算机中通常采用原码、补码、反码和移码表示数值数据原码、补码、反码的共性:1)这几种编码表示中,正数的编码值与真值一样,负数具有不同的编码。2)编码的最高位为符号位:0表示正1表示负,.,44,1、原码表示法符号位:0表示正,1表示负数值部分:与真值的二进制形式一样原码的特征:1)零有两种表示:0和0+0原=0.000.0-0原=1.000.02)优点:简单直观,便于乘、除法运算缺点:加减法运算不便(符号不能直接参预运算),.,45,2、反码表示法符号位:0表示正,1表示负数值部分:正数不变;负数反码是将真值的各位取反得到反码的特征:1)零有两种表示:0和00反0.00.00反1.11.12)通常用于求补码,.,46,3、补码表示法符号位:0表示正,1表示负数值部分:正数不变;负数通过求补得到计算机中数值数据采用补码形式,其符号部分可以直接参预加、减法运算。补码的特征:1)零的表示唯一2)补码加减法运算中,符号直接参预运算3)定点小数表示中,-1补1.000,.,47,、移码表示法移码通常用于表示浮点数的阶码。阶码是个n位的整数。n+1位移码的定义是移2n2n2n符号位:1表示正,0表示负数值部分:与补码数值部分相同移码的特征:1)零的表示唯一:100002)移码只能表示整数(只有整数有移码),用于浮点数阶码表示,.,48,例:写出下列各数位的原码、反码、补码、移码表示。771030.0110123/6477=1001101103=110011123/64=1011126=0.010111,.,49,例:写出下列机器码的真值。x1原0.110101x2原1000101x3反1.010101x4反0.000101x5补1.010101x6补0.000101x7补1.000000x8补10000000x3移1.010101x4移0.000101,.,50,三、字符与字符串的表示方法、字符的表示采用位ASCII码表示0930H39HA41Ha61H,.,51,2、字符串的表示字符串是指连续的一串字符,通常方式下,它们占用主存中连续的多个字节,每个字节存一个字符。当主存字由2个或4个字节组成时,在同一个主存字中,既可按从低位字节向高位字节的顺序存放字符串的内容,也可按从高位字节向低位字节的次序顺序存放字符串的内容。,.,52,四、汉字的表示方法内部编码(内码),输入码,显示(打印)码,.,53,五、校验码校验码:按照一定的规律和方法,通过给数据增加一位或多位数据而重新编码的方法,使得计算机能够发现或纠正数据在存放或传送过程中出现的错误。这样得到的新的编码称为校验码。其中增加的数据位称为校验位。,.,54,检错码:具有发现错误能力的校验码称为检错码。纠错码:能够发现并纠正错误的校验码称为纠错码。奇偶校验码:能够发现一位或奇数位数据错误。奇校验码:通过给数据增加一位校验位,使校验码中1的个数为奇数个。偶校验码:通过给数据增加一位校验位,使校验码中1的个数为偶数个。,.,55,第二节定点加、减法运算一、补码加法1、补码加法负数用补码表示后,可以和正数一样来处理。这样,运算器里只需要一个加法器就可以了,不必为了负数的加法运算,再配一个减法器。补码加法的公式是补补补(mod2)补码加法的特点:符号位要作为数的一部分一起参加运算,要在模2的意义下相加,即超过2的进位要丢掉。,.,56,、补码减法负数的减法运算也要设法化为加法来做,其所以使用这种方法而不使用直接减法,是因为它可以和常规的加法运算使用同一加法器电路,从而简化了计算机的设计。数用补码表示时,减法运算的公式为补补补补补在实际计算时,利用补补补公式将减法运算变为加法进行,.,57,现在的问题是如何从y补去求y补这一点在硬件上实现也很简单,只需对y补包括符号位“求反且最末位加1”(简称“求反加”),即可得到y补。,.,58,三、溢出概念与检测方法在定点小数机器中,数的表示范围为|当Ex=Ey=E时,xy=2E(MxMy)2当EXEY时,先通过对阶,使X和Y的阶码相同,然后按照上式计算。(M2EEM)2E,E0操作数检查2对阶(小阶向大阶看齐)先求阶差E=EXEY若E=0,则不必对阶若E0,则EXEY,阶码向EX看齐,MY右移E位若E0,则EXEY,阶码向EY看齐,MX右移E位3尾数相加减4结果规格化将尾数部分变为0.1或1.0的形式分为左规格化或右规格化5舍入处理,.,105,、对尾数采用补码时的规格化处理右规格化:尾数结果为10.或01.时进行处理方法:将尾数右移1位,并且阶码加1。左规格化:尾数结果为0.0或1.1时进行处理方法:尾数每左移1位,阶码减1,重复直到结果尾数为0.1或1.0为止。、舍入处理“0舍1入”法:如果右移时被丢掉数位的最高位为0则舍去,为1则将尾数的末位加“1”。“恒置一”法:只要数位被移掉,就在尾数的末尾恒置“1”。“就近舍入”:其实质就是通常所说的四舍五入。“朝0舍入”:即朝数轴原点方向舍入,就是简单的截尾。“朝舍入”:对正数来说,只要多余位不全为0则向最低有效位进1;对负数来说则是简单的截尾。“朝舍入”:对正数来说,只要多余位不全为0则简单截尾;对负数来说,向最低有效位进1。,.,106,、溢出及处理浮点数的溢出通常是以其阶码的溢出表现出来的。当机器浮点数值大于最大正数,或小于最小负数时,称为上溢。上溢时阶码运算值超出了它所表示的范围,机器必须做中断处理。当机器浮点数值小于最小正数a值,或大于最大负数b值时,称为下溢。下溢通常看作为机器零。溢出的处理:阶码上溢:阶码超过了阶码可能表示的最大值的正指数值,一般将其认为是和。阶码下溢:阶码超过了阶码可能表示的最小值的负指数值,一般将其认为是0。尾数上溢:两个同符号尾数相加产生了最高位向上的进位,将尾数右移,阶码增1来重新对齐。尾数下溢:在将尾数右移时,尾数的最低有效位从尾数域右端流出,要进行舍入处理。,.,107,二、浮点数的乘、除法运算、运算规则设有两个浮点数和:2EM2EM浮点乘法运算的规则是2(EE)(MM)浮点除法运算的规则是2(EE)(MM),.,108,、乘、除法运算步骤浮点数的乘除运算大体分为以下几个步骤:0操作数检查。阶码加/减操作。尾数乘/除操作。结果规格化舍入处理。、移码运算移码加,减法运算的公式为:移移补移移补上面公式表明执行阶码加减时,对加数或减数来说,应送移码符号位正常值的反码。,.,109,如果阶码运算的结果溢出,上述条件则不成立。双符号位的阶码加法器:规定移码的第二个符号位,即最高符号位恒用0参加加减运算。则溢出条件是结果的最高符号位为1。此时,当低位符号位为0时,表明结果上溢,为1时,表明结果下溢。当最高符号位为0时,表明没有溢出。此时,当低位符号位为1,表明结果为正;为0时,表明结果为负。,.,110,三、浮点运算流水线、流水线原理计算机的流水处理过程同工厂中的流水装配线类似。为了实现流水,首先必须把输入的任务分割为一系列的子任务,使各子任务能在流水线的各个阶段并发地执行。将任务连续不断地输入流水线,从而实现了子任务的并行。流水处理可以大幅度地改善计算机的系统性能,是在计算机上实现时间并行性的一种非常经济的方法。在流水线中,原则上要求各个阶段的处理时间都相同。若某一阶段的处理时间较长,势必造成其他阶段的空转等待。因此对子任务的划分,是决定流水线性能的一个关键因素,它取决于操作部分的效率、所期望的处理速度,以及成本价格等等。,.,111,线性流水线:假定作业T被分成k个子任务,可表达为TT1,T2,Tk各个子任务之间有一定的优先关系:若ik时,Ckk。这就是说,理论上k级线性流水线处理几乎可以提高k倍速度。但实际上由于存储器冲突、数据相关,这个理想的加速比不一定能达到。,.,114,、流水线浮点加法器浮点数加减法由0操作数检查、对阶操作、尾数操作、结果规格化及舍入处理共4步完成,因此流水线浮点加法器可由4个过程段组成。图2.19仅示出了除0操作数检查之外的3段流水线浮点加法器框图。,.,115,四、浮点运算器实例、之外的浮点运算器8087是美国Intel公司为处理浮点数等数据的算术运算和多种函数计算而设计生产的专用算术运算处理器。由于它们的算术运算是配合8086CPU进行的,所以又称为协处理器。8087浮点运算器的特点和内部结构:以异步方式与80386并行工作,8087相当于386的一个I/O部件,本身有它自己的指令,但不能单独使用,它只能作为386主CPU的协处理器才能运算。可处理包括二进制浮点数、二进制整数、和压缩十进制数串三大类7种数据,其中浮点数的格式符合IEEE754标准。全部数据在8087中均以80位临时数据的形式表示。因此8087具有80位字长的内部结构,并有八个80位字长以“先进后出”方式管理的寄存器组,又称寄存器堆栈。,.,116,8087中有处理浮点数指数部分的部件和处理尾数部分的部件,还有加速移位操作的移位器路线,它们通过指数总线和小数总线与八个80位字长的寄存器堆栈相连接。8087内部还设置了三个各为16位字长的寄存器,即特征寄存器、控制寄存器和状态寄存器。、之内的浮点运算器奔腾CPU将浮点运算器包含在芯片内。浮点运算部件采用流水线设计。指令执行过程分为8段流水线。前4段为指令预取(DF)、指令译码(D1)、地址生成(D2)、取操作数(EX),在U、V流水线中完成。后4段为执行1(X1)、执行2(X2)、结果写回寄存器堆(WF)、错误报告(ER),在浮点运算器中完成。一般情况下,由U流水线完成一条浮点数操作指令。,.,117,.,118,.,119,第三章内部存储器,存储器:计算机中记录信息的设备,用于存放程序和数据。构成存储器的存储介质,目前主要采用半导体器件和磁性材料。,.,120,第一节存储器概述一、存储器分类存储器中最小的存储单位就是一个双稳态半导体电路或一个CMOS晶体管或磁性材料的存储元,它可存储一个二进制代码。由若干个存储元组成一个存储单元,然后再由许多存储单元组成一个存储器。能构成存储元的材料或电路的特征:具有两种稳定状态两种稳定状态经控制信号可以转换能读出其中的信息无外部原因,其状态能够长期保存,.,121,根据存储材料的性能及使用方法不同,存储器有各种不同的分类方法:按存储介质分半导体存储器:用半导体器件组成的存储器。磁表面存储器:用磁性材料做成的存储器。按存储方式分随机存储器:任何存储单元的内容都能被随机存取,且存取时间和存储单元的物理位置无关。顺序存储器:只能按某种顺序来存取,存取时间和存储单元的物理位置有关。按存储器的读写功能分只读存储器(ROM):存储的内容是固定不变的,只能读出而不能写入的半导体存储器。随机读写存储器(RAM):既能读出又能写入的半导体存储器。,.,122,按信息的可保存性分非永久记忆的存储器:断电后信息即消失的存储器。永久记忆性存储器:断电后仍能保存信息的存储器。按在计算机系统中的作用分根据存储器在计算机系统中所起的作用,可分为主存储器、辅助存储器、高速缓冲存储器、控制存储器等。二、存储器的分级结构为了解决对存储器要求容量大,速度快,成本低三者之间的矛盾,目前通常采用多级存储器体系结构,即使用高速缓冲存储器、主存储器和外(辅助)存储器构成的多级(三级)存储体系结构。能够直接访问的存储器称为内存储器(内存)。它包括高速缓冲存储器和主存储器(主存)。不能直接访问外存储器,外存储器上的信息必须调入内存后才能由处理。,.,123,高速缓冲存储器(Cache):是与主存储器间的一个高速小容量的半导体存储器。通过Cache可以使高速存取主存储器中的指令和数据。特点:存取速度快,但存储容量小。主存储器(主存):主存存放计算机运行期间的大量程序和数据。特点:存取速度较快,存储容量不大。外存储器(辅助存储器):外存存放系统程序和大型数据文件及数据库。特点:存储容量大,位成本低,速度慢。在多级存储器管理系统中,各级存储器承担各自不同的职能:Cache提速;外存提供大容量;主存提供运行程序和数据的存储。,.,124,三、存储器基本概念及技术指标、基本概念记忆元件(存储介质):组成存储器的物理器件位:一位二进制存储单元:若干存储位构成的存储单元字节单元:8位二进制构成的存储单元字(存储)单元:存放一个字的存储单元存储体:许多存储单元构成的集合地址:存储单元的编号,用于识别不同单元字节地址:每个单元存放一个字节时,则相应地址为字节地址字地址:每个单元存放一个机器字时,则相应地址为字地址,.,125,、技术指标存储容量:存储器具有的存储单元总的数量。一般可通过地址的位数反映出单元数的多少,它反应了存储器存储信息的能力。其单位通常为:KB,MB,GB,TB。1K21010241M2201G2301K单元有10位地址,1单元有20位地址,1G单元有30位地址。如:32K单元有15位地址,256M单元有28位地址。存取时间:启动到完成一次存储器操作所经历的时间。分为读出时间和写入时间。存储周期:连续启动两次读(写)操作所需间隔的最小时间。通常存储周期略大于存取时间。存储器带宽:单位时间里存储器所存取的信息量,(单位为MB/s,每秒多少兆字节),反应了存储器的整体速度。,.,126,第二节SRAM存储器目前广泛采用的半导体存储器是半导体存储器。根据存储信息的原理不同,分为静态存储器()和动态存储器()。一、基本的静态存储元阵列所有的SRAM是用一个锁存器(触发器)作为存储位元。SRAM包含三组信号:地址线:选择单元,确定容量(单元数)数据线:单元的位数控制线:读写控制,.,127,.,128,、基本RMOS存储器逻辑结构由存储体(阵列)、地址译码器、IO电路和控制电路组成地址译码器:将用二进制代码表示的地址转换成输出端的高电位,用来驱动相应的读写电路,以便选择所要访问的存储单元。地址译码有两种方式:单译码(单方向译码):只有一个译码器,译码输出选择一个存储字。N位地址,译码输出2N个状态,对应2N个单元15位地址,需21532K条选通线双译码:采用X、Y两个方向译码器进行译码。采用双向译码方式可以减少译码输出选择线的条数。同样32K个单元,采用256128阵列形式时,只需要256128384条选择线,.,129,.,130,存储体:存储单元的集合存储阵列由256行*128列*8位的三维结构。行和列的交叉位置为一个存储单元。通常用X选择线(行线)和Y选择线(列线)的交叉来选择所需要的单元。I/O电路:处于数据总线和被选用的单元之间,控制被选中的单元读出或写入,放大信息。片选:在地址选择时,首先要选片,只有当片选信号有效时,此片所连的地址线才有效。,.,131,3、读/写周期波形图读/写周期波形图精确的反映了SRAM工作的时间关系。也反映了数据线、地址线、和控制线在读/写存储器过程中的相互关系。读周期时间:从地址有效开始到从数据线读出数据的时间。写周期时间:从地址有效到数据写入存储器的时间。存取周期:将读周期和写周期取为相同,并称之为存取周期。,.,132,第三节DRAM存储器一、DRAM存储位元的记忆原理动态MOS随机读写存储器DRAM的存储容量很大,通常用作计算机的主存储器。DRAM存储器的存储元是由一个MOS晶体管和电容组成的记忆电路。其中的MOS管作为开关使用,而存储的信息是由电容器上的电荷来体现:充满电荷看作1,放完电荷看作0。,.,133,.,134,二、DRAM芯片的逻辑结构DRAM与SRAM的不同点:地址线采用了重用,地址分为行地址和列地址,分时输入。RAS为行地址选通,CAS为列地址选通。减少芯片地址的引线。增加了刷新计数器和刷新控制电路。动态存储器的存储元需要定期刷新(充电),否则信息会随电容漏电而丢失。DRAM的刷新是通过按行读方式进行的。,.,135,三、DRAM的读/写周期和刷新周期注意动态存储器的读写过程中地址是分为行地址和列地址两次输入的。刷新:定期对动态RAM的所有单元进行充电的过程。动态存储器是通过读行的方式进行刷新的。刷新周期:从上一次对整个存储器刷新结束到下一次对整个存储器全部刷新一遍为止的时间间隔称为刷新周期。刷新周期通常为8ms到16ms。,.,136,刷新操作可采用集中式刷新或分散式刷新两种方式:1集中式刷新:在一个刷新间隔内安排集中的一段时间对存储器进行刷新。死时间:在集中刷新的一段时间内不能对存储器进行存取操作,这段时间称为死时间2分散式刷新:将每一行的刷新插入到正常的读写周期之中。,.,137,四、存储器容量的扩充1、字长位数的扩展当芯片字长的位数比实际要求的存储器字长位数较短时,需要用多片芯片扩展字长位数。连接时,芯片的地址线和控制线公用,而数据线分开对应连接。,.,138,.,139,2、字存储容量扩展当给定的芯片的存储容量比实际要求的存储器单元数少时(字数少),需要用多片芯片来扩展字数(单元数)。连接时,芯片的数据线和地址线公用,地址总线的高位段通过译码产生的译码信号来选通芯片的使能端,从而选择相应的芯片。,.,140,.,141,五、高级的DRAM结构1、FPMDRAMFPMDRAM称为快速页模式动态存储器。程序访问局部性原理:根据计算机中对大量典型程序运行情况的分析结果,当前要立即执行的程序和数据往往局限在一个小的范围内,也即是说,在一个较短的时间间隔内,CPU对局部范围的存储器进行频繁访问,而对此外的地址很少访问。这种现象称为程序访问的局部性分页技术:保持行地址不变,只改变列地址,对同一行的所有内存单元进行访问。,.,142,2、CDRAMCDRAM是指带高速缓冲存储器(CACHE)的动态存储器。,.,143,3、SDRAMSDRAM是同步型动态存储器。猝发式访问:在对同一行的连续单元进行访问时,减少额外的延迟和等待周期。SDRAM支持与系统同步的连续单元猝发式访问。,.,144,.,145,例4、CDRAM内存条实例,.,146,六、DRAM主存读/写的正确性校验为保证主存储器读写数据的正确性和可靠性,可以通过增加校验位的方法检错和纠错。,.,147,第四节只读存储器和闪速存储器一、只读存储器ROM掩膜式只读存储器:数据在芯片制造过程中写入。PROM:一次可编程只读存储器。EPROM:光擦除可编程ROM,通过紫外线擦除。EEPROM:电擦除编程ROM,可通过电擦除。,.,148,二、闪速存储器(FlashMemory)1、闪速存储器及其特点闪速存储器是一种高密度、非易失性的读/写半导体存储器,它突破了传统的存储器体系,改善了现有存储器的特性。由于其体积小、速度快,广泛用于各种数码设备中(数码相机、MP3、U盘、手提电脑等)。闪速存储器的特点:固有的非易失性:断电后信息不会丢失。廉价的高密度:相同容量的闪速存储器和DRAM相比,其位成本相近。可执行性:闪速存储器可以直接与CPU相连,大大提高程序和文件的访问速度。固态性:闪速存储器是一种低功耗、高密度且无机电装置的半导体器件,特别适合便携式系统应用。,.,149,2、闪速存储器的基本操作编程操作:编程操作就是对闪存的写操作。读取操作:从闪存读出数据。擦除操作:将闪存全部变为1。,.,150,第五节并行存储器存储器访问速度成为限制计算机高速处理的主要问题。除了主存可以采用更高速技术缩短读出时间或加长存储器的字长。还可以采用并行操作的双端口存储器和多体交叉存储器。,.,151,一、双端口存储器1、双端口存储器的逻辑结构双端口存储器是指同一个存储器具有两组相互独立的读写控制线路,可以并行的进行读写操作,是一种高速工作的存储器。如图为2K16位双端口存储器IDT7133的逻辑框图。由于采用了两个相互独立的端口,分别具有各自的地址线、数据线和控制线,因而可以对存储器中任何位置上的数据进行独立的存取操作。2.无冲突读写控制当两个端口的地址不相同时,在两个端口上进行读写操作,一定不会发生冲突。当任一端口被选中驱动时,就可对整个存储器进行存取,每一个端口都有自己的片选控制和输出驱动控制。,.,152,.,153,3.有冲突的读写控制当两个端口同时存取存储器同一存储单元时,便发生读写冲突。为解决此问题,特设置了BUSY标志。由片上的判断逻辑决定对哪个端口优先进行读写操作,而暂时关闭另一个被延迟的端口。CE判断:如果地址匹配且在CE之前有效,片上的控制逻辑在CEL和CER之间进行判断来选择端口。地址有效判断:如果CE在地址匹配之前变低,片上的控制逻辑在左、右地址间进行判断来选择端口。,.,154,二、多模块交叉存储器1、存储器的模块化组织一个由若干个模块组成的主存储器是线性编址的。这些地址在各模块有两种安排方式:顺序方式:在多模块的存储器中,访问地址按顺序分配给一个模块后,接着又按顺序分配给下一个模块。连续地址是分配在一个模块内的。此时当某个模块进行存取时,其他模块不工作,某一模块出现故障时,其他模块可以照常工作,通过增添模块来扩充存储器容量比较方便。但各模块串行工作,存储器的带宽受到了限制。交叉方式:地址码的低位字段经过译码选择不同的模块,而高位字段指向相应模块内的存储字。连续地址分布在相邻的不同模块内,同一个模块内的地址都是不连续的。采用交叉方式编址时,对连续字的成块传送可实现多模块流水式并行存取,大大提高存储器的带宽。,.,155,.,156,.,157,2.多模块交叉存储器的基本结构如图3.27为四模块交叉存储器结构框图。主存被分成四个相互独立、大小相等的模块。每个模块都有自己的读写控制电路、地址寄存器和数据寄存器,各个以等同的方式与CPU交换信息。当进行连续数据访问时,CPU同时访问四个模块,由存储器控制部件控制它们分时使用数据总线进行信息传递。这是一种流水线并行存储器结构。下面我们看看多模块交叉存储器工作原理:我们假定模块字长等于数据总线宽度,模块存取一个字的存储周期为T,总线传送周期为,存储器的交叉模块数为m,为了实现流水线方式存取,应当满足T=m(m=T/称为交叉存取度),.,158,交叉存储器要求其模块数必须大于或等于m,以保证启动某模块后经m时间再次启动该模块时,它的上次存取操作已经完成。这样,连续读取n个字所需的时间为t1=T+(n-1)=m+(n-1)=(m+n-1)而顺序方式存储器连续读取n个字所需时间为t2=nT=n*m*由此可见,交叉存储器的带宽确实大大提高了。3、二模块交叉存储器举例图3.29为二模块交叉存储器方框图。由图中可见,24位的存储器物理地址指定的系统主存总容量可达16MB,按“存储体块字”进行寻址。其中高3位用于存储体选择,全系统可以有8个2MB的存储体。A20A3的18位地址用于模块中256K个存储字的选择,并分为行、列地址送给芯片的9位地址引脚。主存地址A2用于模块选择,连续的存储字交错分布在两个模块上,A2=0选择偶模块,A2=1选择奇模块。,.,159,DRAM存储器需要逐行定时刷新,而且,DRAM芯片的读出是一种破坏性读出,因此在读取之后要立即按读出信息予以充电再生。这样,若CPU先后两次读取的存储字使用同一RAS选通信号的话,CPU在接收到第一个存储字之后必须插入等待状态,直至前一存储字再生完毕才开始第二个存储字的读取。由于采用m=2的交叉存取度的成块传送,两个连续地址字的读取之间不必插入等待状态(零等待存取)。,.,160,第六节CACHE存储器一、CACHE的基本原理1、CACHE的功能cache是介于CPU和主存之间的小容量存储器,存取速度比主存快。它能高速地向CPU提供指令和数据,加快程序的执行速度。它是为了解决CPU和主存之间速度不匹配而采用的一项重要技术。从功能上看,cache是主存的缓冲存储器,它由SRAM组成。为追求高速,包括管理在内的全部功能都是由硬件实现的,因而对程序员是透明的。2、CACHE的基本原理CPU与cache之间的数据交换是以字为单位,而cache与主存之间的数据交换是以块为单位。一个块由若干定长字组成的。,.,161,.,162,当CPU读取主存中一个字时,便发出此字的内存地址到cache和主存。此时cache控制逻辑依据地址判断此字当前是否在cache中:若是,此字立即由cache传送给CPU;若非,则用主存读周期把此字从主存读出送到CPU,与此同时,把含有这个字的整个数据块从主存读出送到cache中。3、CACHE的命中率增加cache的目的,就是在性能上使主存的平均读出时间尽可能接近cache的读出时间。因此,cache的命中率应接近于1。程序访问局部性原理:根据计算机中对大量典型程序运行情况的分析结果,当前要立即执行的程序和数据往往局限在一个小的范围内,也即是说,在一个较短的时间间隔内,CPU对局部范围的存储器进行频繁访问,而对此外的地址很少访问。这种现象称为程序访问的局部性。,.,163,由于程序访问的局部性,使得cache的命中率应接近于1。在一个程序执行期间,设Nc表示cache完成存取的总次数,Nm表示主存完成存取的总次数,h定义为命中率,则有h=Nc(Nc+Nm)若tc表示命中时的cache访问时间,tm表示未命中时的主存访问时间,1-h表示未命中率,则cache/主存系统的平均访问时间ta为:ta=htc+(1-h)tm设r=tm/tc表示主存慢于cache的倍率,e表示访问效率,则有:e=tc/ta=tc/(htc+(1-h)tm)=1/(h+(1-h)r)=1/(r+(1-r)h由上式可知,为提高访问效率,命中率h越接近1越好,r值以510为宜,不宜太大。命中率h与程序的行为、cache的容量、组织方式、块的大小有关。,.,164,二、主存与CACHE的地址映象cache的容量一般都很小,它保存的内容只是主存内容的一个子集(部分内容的备份),且cache与主存的数据交换是以块为单位。地址映射:即是应用某种方法把主存地址定位到cache中。地址址映射方式有全相联方式、直接方式和组相联方式三种。在cache中,地址的变换由快速硬件实现,我们丝毫感觉不到cache的存在,这种特性称为cache的透明性。,.,165,.,166,1.全相联映射方式主存中一个块的地址与块的内容一起存于cache的行中,其中块地址存于cache行的标记部分中。这种方法使主存的一个块可以拷贝到cache中的任意一行上,非常灵活。它的主要缺点是比较器电路难于设计和实现,因此只适合于小容量cache采用。2.直接映射方式这也是一种多对一的映射关系,但一个主存块只能拷贝到cache的一个特定行位置上去。cache的行号i和主存的块号j有如下函数关系:i=jmodm(m为cache中的总行数)直接映射方式的优点是硬件简单,成本低。缺点是每个主存块只有一个固定的行位置可存放,容易产生冲突。因此适合大容量cache采用。,.,167,.,168,.,169,3.组相联映射方式这种方式是前两种方式的折衷方案。它将cache分成u组,每组v行,主存块存放到哪个组是固定的,至于存到该组哪一行是灵活的,即有如下函数关系:muv组号qjmodu组相联映射方式中的每组行数v一般取值较小,这种规模的v路比较器容易设计和实现。而块在组中的排放又有一定的灵活性,冲突减少。3.替换策略cache工作原理要求它尽量保存最新数据,必然要产生替换。对直接映射的cache来说,只要把此特定位置上的原主存块换出cache即可。对全相联和组相联cache来说,就要从允许存放新主存块的若干特定行中选取一行换出。,.,170,常用的替换算法(策略)有三种:最不经常使用(LFU)算法:LFU算法将一段时间内被访问次数最少的那行数据换出。它给每行设置一个计数器。从0开始计数,每访问一次,被访行的计数器增1。当需要替换时,将计数值最小的行换出,同时将这些行的计数器都清零。这种算法将计数周期限定在对这些特定行两次替换之间的间隔时间内,不能严格反映近期访问情况。近期最少使用(LRU)算法:LRU算法将近期内长久未被访问过的行换出。它给每行也设置一个计数器,cache每命中一次,命中行计数器清零,其它各行计数器增1。当需要替换时,将计数值最大的行换出。这种算法保护了刚拷贝到cache中的新数据行,有较高的命中率。,.,171,随机替换:随机替换策略从特定的行位置中随机地选取一行换出。在硬件上容易实现,且速度也比前两种策略快。缺点是降低了命中率和cache工作效率。四、cache的写操作策略CPU对cache的写入更改了cache的内容。可选用写操作策略使cache内容和主存内容保持一致。为保证cache的内容与主存的一致,通常有三种写操作策略供选择:写回法:当CPU写cache命中时,只修改cache的内容,而不立即写入主存;只有当此行被换出时才写回主存。这种方法减少了访问主存的次数,但是存在不一致性的隐患。实现这种方法时,每个cache行必须配置一个修改位,以反映此行是否被CPU修改过。,.,172,全写法:当写cache命中时,cache与主存同时发生写修改,因而较好地维护了cache与主存的内容的一致性。当写cache未命中时,直接向主存进行写入。cache中每行无需设置一个修改位以及相应的判断逻辑。缺点是降低了cache的功效。写一
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 ISO/TS 16755-1:2025 EN Acoustics - Non-acoustic factors influencing the perception,interpretation and response to environmental sounds - Part 1: Definition and conceptual f
- 【正版授权】 ISO 24165-1:2025 EN Digital token identifier (DTI) - Registration,assignment and structure - Part 1: Method for registration and assignment
- 【正版授权】 ISO 80369-6:2025 EN Small bore connectors for liquids and gases in healthcare applications - Part 6: Connectors for neural applications
- 【正版授权】 ISO 80000-4:2019/Amd 1:2025 EN Quantities and units - Part 4: Mechanics - Amendment 1
- 【正版授权】 IEC 60079-19:2025 FR Explosive atmospheres - Part 19: Equipment repair,overhaul and reclamation
- 北汽知识培训集团课件
- 校园食堂食品安全知识培训课件
- 校园消防知识培训课件新闻稿
- 校园消防安全知识培训
- 物业人民调解员考试试题及答案
- 网约车停运损失赔偿协议书范文
- 移动宽带注销委托书模板需要a4纸
- 精细化600问考试(一)附有答案
- 超融合解决方案本
- 知识题库-人社练兵比武竞赛测试题及答案(八)
- SYT 0452-2021 石油天然气金属管道焊接工艺评定-PDF解密
- 《育婴师培训》-课件:环境消毒基础知识
- 关于规范村级财务管理的审计建议
- 长安欧尚A800说明书
- 火灾应急预案组织架构图
- 山东省济宁市第十五中学2023-2024学年(五四学制)六年级上学期第一次月考语文试题
评论
0/150
提交评论