版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
...wd......wd......wd...一、本课程在计算机系统中的位置一、课程目标1、构造与原理掌握建设计算机系统的整机概念;掌握计算机各部件的组成原理与技术;了解计算机系统组成与构造的新技术2、分析与计算能力掌握对组成与构造进展性能分析的方法;通过量化计算,加深对组成原理的理解与掌握3、应用与设计能力通过实验,培养逻辑设计及理论指导实践的能力二、课程内容组织第1章计算机系统概论计算机的模型、硬件组成,计算机的工作过程、性能指标第2章数据的表示和运算数据的编码及表示,定点及浮点运算方法,ALU构造与组成第3章存储系统层次构造,RAM组成,主存、Cache、虚存的组成原理第4章指令系统指令功能与指令格式,操作数存放及寻址方式,CISC/RISC第5章中央处理器CPU的功能与构造、工作流程,指令执行过程,数据通路组织,CU的构造及组成,微程序控制器技术,指令流水技术计算机软件(指令串及数据)计算机软件(指令串及数据)CUALU存储器…系统总线I/O设备1I/O接口1I/O设备2I/O接口2I/O设备nI/O接口n第6章总线概述,操作步骤,仲裁/定时方式,互连构造第7章I/O系统组成,I/O设备,I/O接口,I/O方式(4种)1、学习方法建设整机概念,将所学知识点融合在一起;从逻辑设计出发,分析多种方案的利与弊;通过量化分析,加深对原理的掌握与理解。2、学习效率第1章计算机系统概论◆计算机:按照内部存储的指令序列,对数字化信息进展自动高速处理、存储、传送、控制的装置。指令:指示计算机硬件完成某种功能的明确的命信息:有用的数据,有多种不同类型,其表现手段可以采用数字化形式或模拟量形式;运算:包括算术运算和逻辑运算,要求自动与高速;处理:对信息进展搜索、识别、变换,甚至联想、思考和推理等等。◆计算机的基本功能主要包括数据处理数据存储数据传送控制◆数据处理功能运算功能:算术运算功能和逻辑运算,应用于数值计算和非数值计算两个方面;处理对象:数值、字符、图形、图像、声音和视频等。◆数据存储功能主存储器:保存指令和数据;辅助存储器:以文件的形式保存大量数据信息。◆数据传送功能内部数据流动:CPU和主存以及CPU内部存放器与运算器之间的数据流动;外部数据传送:输入/输出〔I/O〕和计算机通信。◆控制功能控制器:产生各种基本操作信号并按某种时序发出以完成相应功能;指令编码、指令系统:一台计算机的所有指令集合。1.1.1计算机系统的软硬件*计算机系统的组成:功能的实现方式—①硬件具备数据的存储、传送及处理和过程控制功能②软件表示应用的数据处理及过程控制需求└→程序(指令序列,硬件用不同指令表示不同功能)③执行软件实现应用的数据处理及过程控制功能*计算机系统组成的特性:软件功能靠硬件实现,硬件性能靠软件反映*计算机系统构造:机器语言程序员所看到的计算机属性概念性构造和功能特性←┘ *计算机组成:实现计算机系统构造时所表达的计算机属性*计算机实现:实现计算机组成时所表达的计算机属性*相互关系:计算机系统构造—确定软硬件功能分配及其界面特性;计算机组成—逻辑实现系统构造的内容;计算机实现—物理实现计算机组成的内容举例 系统构造 计算机组成 计算机实现乘法功能 是否有乘法指令 乘法器还是加法+移位 器件、电路主存系统 最大容量、编址方式 速度保证、单体/多体MEM总线 带宽 信号线数、时钟、传输方式§1.2计算机系统基本组成一、冯·诺依曼模型计算机*构造与组成:由运算器、存储器、控制器、输入及输出设备组成,以运算器为中心;输入设备输入设备存储器运算器控制器输出设备注:数据信息
指令信息
控制信息
状态信息*数据表示与运算:指令及数据均用二进制方式表示,运算亦采用二进制方式*存储程序原理—程序存储方式:指令及数据预先存放(以等同地位)在存储器中;*存储器构造:由定长单元构成的一维空间,存储器按地址访问;*指令组成:由操作码及地址码组成;例:假设加法运算的操作码用010表示,第01000号与第10000号两个存储单元内容相加的操作可表示为:0100100010000*存储程序原理—程序控制机制:按程序逻辑顺序、自动地、逐条地取出指令并执行。冯·诺依曼计算机模型。1〕计算机由运算器、存储器、控制器和输入/输出五个部件组成;2〕存储器以二进制形式存储指令和数据;3〕存储程序工作方式;4〕五部件以运算器为中心进展组织。二、计算机硬件的基本组成1、计算机硬件的构造现代计算机均在冯·诺依曼模型根基上进展改进*采用以存储器为中心的构造:使数据传送与数据处理并行,有利于提高系统性能*由多种存储器构成存储系统:解决速度-容量-价格间的矛盾,有利于提高性能/价格 *采用总线互连形式:实现部件操作标准化,有利于提高系统的可扩展性 2、计算机部件的基本组成(1)存储器*功能:存储程序和数据、通过读/写操作接收/提供信息*组成:*完成操作的过程:读操作—①接收地址及命令,内部操作;②输出数据写操作—①接收地址及命令;②接收数据,内部操作(2)运算器*功能:实现算术运算及逻辑运算,并暂存运算结果*组成:*(AC)+[Y]→AC的运算过程:(0)(AC)为被加数(1)加数[Y]→TEMP(2)(AC)+(TEMP)(3)ALU结果→AC△约定:(X)表示存放器X中内容,[Y]表示存储单元Y中内容(3)控制器*功能:指挥及控制各部件协调地工作,以实现程序执行过程*程序执行过程:①循环的指令执行过程(取指令及执行指令);②下条指令地址由当前指令产生(按程序逻辑顺序)取指令取指令取指阶段分析指令执行指令执行阶段(4)输入/输出设备*功能:实现外部-内部信息的输入/输出及格式转换;*种类:键盘、鼠标、显示器、打印机、磁盘等;*连接:通过I/O接口(又称适配器或控制器)与总线连接,I/O接口实现信息传送时的缓冲、中转等功能三、计算机软件的基本组成三、计算机软件的基本组成四、计算机工作过程计算机的工作过程就是执行程序的过程。考察指令ADDNUM,R0的执行过程。图1.4CPU组成以及和存储器的连接图1.4CPU组成以及和存储器的连接考察指令ADDNUM,R0的执行过程。程序执行过程*程序执行的初始条件:(a)程序及数据已存放在主存储器MM中;(b)PC内容已经为即将执行的程序首条指令地址*程序执行的实现方法:--控制器指挥与控制①取指—(PC)→[MM]→IR,(PC)+“1〞→PC;②分析—(IR)→ID→CU;③执行—实现指令约定操作(指令转移时重写PC);④循环—假设无中断执行的要求,转①§1.3计算机系统的性能指标一、计算机系统的性能指标*系统性能:指在计算机硬件上运行的计算机软件的性能1、硬件性能参数*机器字长:指CPU一次能处理的二进制位数。└→指ALU一次能处理的n位CPU—指机器字长为n个二进制位的CPU;例如,Core2CPU为64位CPU对系统性能的影响—机器字长越长,数据处理性能越好;(∵应用数据长度>机器字长时,需分次运算)对其它硬件的影响—直接影响ALU、REG长度,间接影响存储字长、数据总线位数*机器主频:指CPU内部主时钟脉冲的频率,常用f表示。主频单位—1GHz=1×103MHz=1×106KHz=1×109Hz;时钟周期—CPU内部基本操作的时长,常用TC表示;f与TC关系—倒数关系,即f=1/TC*存储容量:指存储器可存储二进制信息的总位数。主存容量—容量S=存储单元个数×存储字长;辅存容量—容量S=存储块个数×存储块长度;容量单位—1GB=1×210MB=1×220KB=1×230B=8×230bit;最大主存容量—CPU能够访问的主存最大容量,它决定了CPU的地址和数据引脚数量2、系统性能指标时间是唯一标准,主要有响应时间和吞吐量两个指标。*响应时间:指一个任务从任务输入到结果输出的总时间,*吞吐量:又称吞吐率,指单位时间内能处理的工作量,即吞吐量=n个任务的总工作量÷n个任务的总时间特点—反映了多任务计算机系统的软硬件总体性能表示—因工作量无统一定义,通常用MIPS及MFLOPS代替△MIPS(每秒百万次指令)△MFLOPS(每秒百万次浮点运算)*其他:RAS(可靠性/可用性/可维护),兼容性等二、计算机软件的开展历史1、计算机语言的开展机器语言→汇编语言→高级语言→应用语言*高级语言例:FORTRAN、PASCAL、C/C++、Java2、系统软件的开展*语言处理程序:汇编程序、编译程序、解释程序;*操作系统:DOS、UNIX、Windows;(多道程序、分时/实时、网络、分布式、面向对象)*服务性程序:装配、调试、诊断、排错;*数据库:数据库(网状、层次、关系型)、数据库管理软件;*网络:协议(NetNIOS、TCP/IP等)及实现库三、计算机系统分类按规模及功能分类超级计算机—科学计算等;大型计算机—多用户使用等;小型计算机—办公应用等;工作站—图形处理及分布式计算等;微型计算机—应用广泛;单片机/嵌入式系统—工业控制等第二章数据的表示和运算§2.1数据的编码一、数制及其转换1、进位计数制*进位计数制:又称进制或数制,是用一组固定的符号和统一的规那么来表示数值的方法。有数码、基数和位权3个基本参数*常用的4种进制:*R进制数表示:(N)R=(kn-1…k1k0.k-1k-2…k-m)R=其中,ki∈{0,1,…(R-1)}(2)十进制数小数转换成R进制数小数*小数转换规那么:乘基取整、上左下右例3—将(0.6875)10分别转换成二、八进制数(3)十进制数转换成R进制数*转换规那么:整数局部、小数局局部别转换后再合并练习1—(19.6875)10=(X)2=(Y)8,X=Y=4、二、八、十六进制数相互转换*隐含规律:2=21,8=23,16=24(1)二进制、八进制数相互转换*转换规那么:①从小数点向两边分别转换;②3个二进制数位(不够时补零)等价于1个八进制数位例4—(13.724)8=(001011.111010100)2=(1011.1110101)2(10011.01)2=(010011.010)2=(23.2)8(2)二进制、十六进制数相互转换*转换规那么:①从小数点向两边分别转换;②4个二进制数位(不够时补零)等价于1个十六进制数位例5—(2B.E)16=(00101011.1110)2=(101011.111)2(11001.11)2=(00011001.1100)2=(19.C)16二、机器数及其编码*数值数据:组成—由符号、小数点及数值构成,可缺省符号及小数点运算—①符号与数值分开运算;②加减法需先比较大小*机器数:符号数字化的数,通常0/1表示+/-;如(+101)2→(0101)2、(-0.101)2→(-.101)2→(1.101)2真值—带“+〞或“-〞符号的数*机器数的运算方法:①采用手工运算方法,硬件实现很不方便;如—(+x)+(-y)时,先求x-y、再求结果符号、最后求x-y或y-x☆②采用新运算方法,便于硬件实现(如符号与数值一起运算)└→必须使用新的编码方法!*机器数的编码方法:原码、补码、反码、移码等1、原码表示法(原码编码方法)*基本思想:用0/1表示符号+/-,数值位为真值的绝对值*纯整数原码定义:设X=±xn-2…x0,xi=0或1,那么[X]原=xn-1xn-2…x0,*纯小数原码定义:设X=±0.x-1…x-(n-1),那么[X]原=x0.x-1…x-(n-1)*原码的特性:①X与[X]原关系—·[X]原与X表示值的范围一样,·[+0]原≠[-0]原;②运算方法—符号与数值分开运算(与手工运算一致)└→适合于乘除法,加减法较复杂2、补码表示法*目标:实现符号与数值一起运算(1)有模运算与补数例如—将时针从10点拨向7点,有两种拨法:①倒拨10-3=7;②顺拨10+9=7+12=7*有模运算:运算时只计量小于“模〞的局部,多余局部被丢弃模—计量系统的计数范围;同余—假设A、B、M满足A=B+kM(k为有符号整数),那么记A≡B(modM),称B和A为模M的同余*补数:假设a、b、M满足a+b=M,称a、b互为模M的补数运算特征—c-a=c-(M-b)=c+b(modM),即减去一个数等价于加上这个数的补数└→可将减法运算转化为加法运算(2)补码定义一个负数的补码应等于模与该数绝对值之差。即某负数X的补码为:[X]补=M+X(modM)*纯整数补码定义:设X=±xn-2…x0,xi=0或1,那么[X]补=x’n-1x’n-2…x’0,即说明—因X连同符号位共n位,故模为2n例6—[+0001]补=00001,[-0001]补=100000-0001=11111[+1111]补=01111,[-1111]补=100000-1111=10001※正数补码最高位(符号位)为0,负数最高位为1[+0000]补=[-0000]补=00000※数0的补码惟一练习2—假设X=-01000、Y=+01000,[X]补=[Y]补=例7—n=5、X≥0时,最大[X]补=01111,Xmax=24-1=+15X<0时,最小[X]补=10000,Xmin=-24=-16※补码表示数的个数比原码多1个原码无11…1110…0110…0000…0000…0101…11补码10…0010…0111…1100…0000…0101…11真值-2n-1-(2n-1-1)-10+1+(2n-1-1)*定点纯小数补码定义:设X=±0.x-1…x-(n-1),那么[X]补=x’0.x’-1…x’-(n-1)例8—[+0.1011]补=0.1011[-0.1011]补=2-0.1011=10.0000-0.1011=1.0101(3)补码的特性△X→[X]补—假设X为正数,改符号位为0,其余各位不变;假设X为负数,改符号位为1,其余各位取反、末位加1△[X]补→X—假设[X]补最高位为0,改其为正号,其余各位不变;假设[X]补最高位为1,改其为负号,其余各位取反、末位加1△[X]原→[X]补—假设[X]原最高位为0,[X]补=[X]原;假设[X]原最高位为1,[X]补=[X]原各数值位取反、末位加1△[X]补→[X]原—假设[X]补最高位为0,[X]原=[X]补;假设[X]补最高位为1,[X]原=[X]补各数值位取反、末位加1*[X]补与[-X]补的关系:△[X]补→[-X]补—[X]补的各位取反(含符号位)、末位加1[-X]补→[X]补—[-X]补的各位取反(含符号位)、末位加1练习4—①假设X=+01001,[X]原=001001,[X]补=001001;②假设X=-01010,[X]原=101010,[X]补=110110;③假设[X]原=001010,X=+01010,[X]补=001010;④假设[X]原=101110,X=-01110,[X]补=110010;⑤假设[X]补=001110,X=+01110,[-X]补=110010;⑥假设[X]补=101110,X=-10010,[-X]补=010010;⑦假设[-X]补=101011,[X]补=010101,[X]原=010101;⑧假设[-X]补=001001,[X]补=110111,[X]原=1010013、反码表示法*目标:作为原码与补码相互转换时的一种过渡编码*纯整数反码定义:设X=±xn-2…x0,xi=0或1,取模=2n-1,那么例14—[+1101]反=01101,[-1101]反=10010*纯小数反码定义:设X=±0.x-1…x-(n-1),xi=0或1,模=2-2-(n-1),那么例15—[+0.1101]反=0.1101,[-0.1101]反=1.0010*反码与补码关系:假设X为正数,[X]补=[X]反;假设X为负数,[X]补=[X]反+1
原码、补码、反码比较:①机器数的最高位均为符号位(0/1表示正/负);②假设真值X为正数,[X]原=[X]补=[X]反;③假设真值X为负数,[X]补=[X]反+1,[X]反=[X]原各位求反(符号位除外);④[+0]补=[-0]补,补码比原码、反码多表示一个负数4、移码表示法*目标:实现符号与数值一起编码←数连续时编码连续*纯整数移码定义:设X=±xn-2…x0,其中xi=0或1,取模=2n,那么[X]移=2n-1+X(mod2n)=2n-1+X-2n-1≤X<2n-1例16—[-111]移=0001,[-001]移=0111,[±000]移=1000,[+001]移=1001,[+111]移=1111,[-1000]移=0000*移码的特性:①数在数轴上为连续编码(无符号数),便于比较大小;②[X]移=[X]补符号位取反、其余各位不变三、十进制数编码*BCD码(BinaryCodedDicimal):又称二-十进制编码,是指用4位二进制编码表示1位十进制数位的编码方式。*BCD码种类:分有权码和无权码两种,最常用的是8421码。
BCD码缺省指8421码(特殊声明除外)!四、字符及字符串编码1、字符编码*字符编码:字符在字符集中惟一的数字化代码,表示字符在字符集中的序号或特征号*字符编码的类型:有输入码、内码、交换码、字模码4种*有关字符编码的约定:字符编码—均指交换码的编码!字符数据—均指内码的编码!*常见字符编码(交换码)种类:2、字符串编码*字符串特性:①由多个字符构成;②所含字符数不固定。*字符串编码方法:①由各个字符编码组成;②通过特定编码标志字符串的完毕,完毕编码放在最后└→字符集必须包含该字符(如ASCII码中编码为0的字符)例—C语言中字符串“am〞可编码为11000011101101000000五、校验码*冗余校验思想:①用待发数据(M)形成校验信息(P),M与P一起传送;②用接收数据(M’)形成新校验信息(P〞),检错并纠错*术语:校验码—由数据位和校验位组成的信息编码;检错(检验)—检查数据在传送过程中有/无错误;纠错(校正)—根据错误位置纠正数据(取反)*常见校验码:奇偶校验码、海明校验码奇偶校验码*编码原理:采用1位校验位,使数据位及校验位中“1〞的位数为奇数或偶数个数*校验方法:故障字S—S=P’P〞,其中P’是接收的、P〞是形成的;检错—假设S=0无错误,假设S=1有错误;纠错—无此能力(∵无法获得错误位置)*校验能力:只能检测奇数个错误,无纠错能力例3—以下接收的校验码①01001、②10100、③10011中,只有一个有奇数位错,请问发送时采用的是奇校验还是偶校验码*应用:广泛应用于I/O传输的数据校验§2.2数据的表示
计算机用编码表示数据:
计算机只支持最常用(最基本)的数据类型:数据表示—计算机硬件能够直接识别和引用的数据类型应用数据→数据表示的转换:程序员或编译程序完成一、数值数据的数据表示方法1、数值数据的数学特征①进制可有多种;②符号为“+〞或“-〞,可以没有符号;③小数点为“.〞,可隐含表示,小数点位置可任意变化;④数码长度可任意变化;⑤不会产生运算溢出2、冯·诺依曼模型计算机的硬件特征①指令和数据用二进制表示,采用二进制运算;②二进制中只有0和1,无法表示符号和小数点;③机器字长固定,CPU内部全部采用定长方式处理。3、数值数据的表示方法*进制问题处理:只支持二进制方式;*符号问题处理:有符号数—用数字表示符号,数据本身无法区分无符号数—符号位置为数值;在指令级进展区分 *小数点问题处理:①点的表示—用隐含方式表示;②位置表示—约定不同数据类型的位置不同*数码长度问题处理:①不同数据类型—数码长度固定;←便于定长方式处理②同一数据类型—可有几种长度;←可提高处理及存储效率*运算问题处理:①运算方法—按数据表示的格式及编码进展相应运算;②数据类型区分—由指令操作码区分;③溢出处理—硬件检测并发出通知,由软件处理
数值数据的处理方法:包括数据的表示和数据的操作方法二、数的定点表示1、定点表示方法指约定数据中隐含的小数点位置固定不变。*定点表示形式:有约定在数值最低位之后和最高位之前两种2、定点数的表示采用定点表示格式的数称为定点数,通常有几种数码长度。*定点数的表示范围:(设数码长度为n位)三、数的浮点表示1、浮点表示方法指约定数据中隐含的小数点位置是可变的。*浮点表示形式:由尾数和阶组成格式—表示—尾数用定点纯小数表示,阶用定点整数表示2、浮点数的表示采用浮点表示格式的数称为浮点数,通常有几种数码长度。*浮点数的表示范围与精度:假设尾数及阶的基均为2,数值长度分别为m位及e位例1—假设浮点表示格式中m=10、e=4,尾数及阶均为补码编码方式,写出(-54)10的机器码。解:(-54)10=(-110110)2=-0.11011×2+110,浮点数机器码为0011010010100000例2—假设浮点表示格式中尾数为8位(含1位符号位)、阶为5位(含1位符号位),写出以下实数的浮点数及机器码。例3—浮点表示格式同例2,写出以下机器码的浮点数。3、浮点数的规格化*目的:在现有的浮点数表示格式中,使表示精度最大化。例4—假设浮点表示格式中m=3、e=3、尾数和阶均为原码编码方式,不同表示方法的浮点数精度不同:+101.1=0.1011×23=0.01011×24=0.001011×25*规格化数的要求:尾数真值的最高位为1,即1/2≤|M|<1*规格化的操作:左规—尾数左移一位,阶码减一;右规—尾数右移一位,阶码加一。应用—非规格化数→规格化数,可能需屡次规格化操作例5—假设浮点数尾数及阶的基均为2,答复以下问题:原码尾数—最高数值位为1;补码尾数—最高数值位与符号相反←便于硬件实现4、IEEE754标准*表示格式及数码长度:有单精度、双精度两种格式及长度*编码方式:①数制—M和E均采用二进制方式(即RM=RE=2);②码制—M为原码编码的定点纯小数(改进了定点位置),E为移码编码的定点整数(改进了移码值)*阶的码制:采用的是余127码和余1023码余X码—偏移值为X的移码称为余X码,标准移码:真值=E-28-1=E-128,余127码:真值=E-(28-1-1)=E-127;阶的范围—1≤E≤254,而0和255另作他用,即-126≤阶的真值≤127*尾数的码制:(以单精度格式为例)支持非规格化尾数和规格化尾数两种方式;非规格化尾数—尾数真值=±0.m-1…m-23,机器码M=m-1…m-23,尾数精度=23位;规格化尾数—规格化的尾数真值=±1.m-2…m-24,机器码M=m-2…m-24,尾数精度=24位*IEEE754标准浮点表示的特征:(以单精度格式为例)例5—求(-11/128)10的IEEE754单精度规格化数的机器码解—(-11/128)10=(-1011)2×2-7=(-0.1011)2×2-3=(-1.011)2×2-4=(-1.011)2×2123-127例6—求IEEE754单精度码为(CC968000)16的浮点数的真值N解—(CC968000)16=11001100100101101000000000000000N为负数,浮点数为规格化数(∵1<10011001<254);阶=(10011001)2-(01111111)2=(00011010)2=(26)10尾数=(1.00101101)2=(1.17578125)10∴N=(―1)1×1.17578125×226=-1.17578125×226
数值数据的表示小结:表示格式有定点和浮点两种,编码方式决定运算器的运算方法,数码长度总是固定的四、非数值数据的数据表示
MEM字长的特征:MEM字长—均为2n位(n为常数);←便于数据长度的二进制运算MEM字长种类—有二进制位、机器字长、折中长度3类
提高MEM的存储效率:1、字符数据的表示指字符的交换码在存储/处理时的表示方式,即字符的内码。2、逻辑数据的表示*数学特征:值域—真、假;运算—与(AND)、或(OR)、非(NOT)等*数据的表示方法:数码长度—1位→n位(n为MEM字长倍数);←以提高存储效率编码方式—各位独立编码,1/0可表示真/假*运算处理方法:可采用所有位同时按位进展与/或/非运算可获得最大性能←┘└→一位操作时,软件负责准备数据例2—8位逻辑数A和B如何实现第0位的OR操作(结果在A中)解:步骤为①C=BAND01H;②A=AORC§2.3定点数运算方法一、移位运算1、移位及移位运算*移位:数值相对于某个位置的移动例—20.0m=2000.0cm,称20相对于小数点左移了2位*移位操作:有左移、右移2种类型;二进制数左移或右移n位相当于乘以或除以2n*移位运算:对计算机中机器数的移位操作运算种类—对有符号数,有算术左移、算术右移;对无符号数,有逻辑左移、逻辑右移运算参数—操作数、移动位数2、逻辑移位运算*操作数类型:无符号机器数*运算规那么:机器数整体移位,移出的数丢弃,出现的空位补0例1—某REG内容为00111001,逻辑移位运算结果如下:练习—假设(REG)=11001001,逻辑左移1位再右移1位的结果?*溢出判断方法:左移、移丢数码为1时运算溢出3、算术移位运算*操作数类型:有符号机器数(原码、补码等)*运算规那么:符号位不变,数值局部整体移位,空位添补规那么如下表(根据编码方式的数学特征添补)*运算实现方法:通常用移位存放器实现右移移丢数值1仅影响精度右移移丢数值1仅影响精度*溢出判断方法:左移移丢数值1时溢出原码左移、移丢数码为1时溢出;补码/反码左移、移丢与符号相反的数码时溢出二、定点加减运算1、补码加减运算(1)补码加减运算规那么*加法:[A+B]补=[A]补+[B]补*减法:[A-B]补=[A+(-B)]补=[A]补+[-B]补(2)补码运算溢出判断方法*溢出判断①:用1位符号位判断例4—假设n=4,补码表示范围-8≤X≤+70110(+6)1111(-1)0101(+5)1011(-5)+1011(-5)+1100(-4)+0100(+4)+1100(-4)10001(+1)11011(-5)01001(+9)10111(-9)即:一样符号数相加、且结果与操作数符号不同时溢出!设[A]补=An-1An-2…A0,[B]补=Bn-1Bn-2…B0,[Z]补=[A]补+[±B]补=Zn-1Zn-2…Z0例5—设A=-11/16,B=+7/16,[A+B]补、[A-B]补是否溢出?解:[A+B]补=1.0101[A-B]补=1.0101+0.0111+1.1001=1.1100=10.1110对[A+B]补,OVR=(10)(00)=0不溢出对[A-B]补,OVR=(10)(10)=1溢出*溢出判断①优化:用结果的符号位及最高数值位进位判断An-1An-2…A0+Bn-1Bn-2…B0Zn-1Zn-2…Z0Cn-1Cn-2*溢出判断②:用2位符号位判断变形补码—采用2个符号位的补码[A]变补=AnAn-1An-2…A0,AnAn-1表示符号(00为正数、11为负数)例6—假设X=-010,Y=-110,[X+Y]变补溢出否?解:[X]变补=11110,[Y]变补=11010[X+Y]变补=11110+11010=1100011=0不溢出(3)补码加减运算所需的硬件配置*加减法实现思路:加减法统一处理C-1=1,
C-1=0,=1…=1C-1=1,
C-1=0,=1…=1减法—[A]补+[-B]补=[A]补+[B]补+1*加减法实现思路:加减法统一处理加法—[A]补+[B]补+0;减法—[A]补+[-B]补=[A]补+[B]补+1◆笔---纸乘法方法▲例1.X=1011,Y=1101,X×Y的笔---纸乘法过程:1.原码一位乘◆用原码实现乘法运算时,符号位与数值位是分开计算的;设:[X]原=xnxn-1x1x0,[Y]原=ynyn-1y1y0(其中xn、yn分别为它们的符号位)假设[X×Y]原=z2nz2n-1z1z0(z2n为结果之符号位)那么z2n=xnynz2n-1z1z0=(xn-1x1x0)×(yn-1y1y0)类似两个无符号数相乘。◆就笔---纸乘法方法,为提高效率而采取的改进措施①每将乘数Y的一位乘以被乘数得X×yi后,就将该结果与前面所得的结果累加,得到局部积Pi;②将局部积Pi右移一位与X×yi相加;加法运算始终对局部积中的高n位进展;③对乘数中“1〞的位执行加法和右移运算,对“0〞的位只执行右移运算,而不执行加法运算;▲上述乘法运算可以归结为循环地计算以下算式:设P0=0P1=2-1(P0+X×y0)P2=2-1(P1+X×y1)Pi+1=2-1(Pi+X×yi)(i=0,1,2,3,n-1)……Pn=2-1(Pn-1+X×yn-1)显然,X×Y=Pn▲对于两个n位无符号数乘法的一种可行的算法:1〕置计数器为n;2〕去除2n位局部积存放器;3〕检查乘数最右位〔初始时为最低位〕,假设为“1〞,加被乘数到局部积高n位中;4〕将局部积右移一位;5〕将乘数右移一位;6〕计数器减1,结果不为0,那么从3〕开场重新执行;假设结果为0,那么从局部积存放器读出乘积。▲实现这种方法的二个定点数乘法的逻辑电路框图nnn▲例1.[X]原=01101,[Y]原=01011,假设[X×Y]原=z8z7z0那么z8=00=0z7…z0=1101×1011的计算采用上述乘法流程,实现的具体过程如下:补码乘法例:X=0.1011,Y=-0.0001[X]补=01011,[Y]补=11111[X×Y]补=111110101[X]补×[Y]补=101010101显然,[X×Y]补[X]补×[Y]补▲对两个正数来说,它们补码的乘积等于它们乘积的补码。假设乘数是负数时,这种情况就不成立了。◆Booth〔布斯〕乘法▲A.D.Booth算法思想:相乘二数用补码表示,它们的符号位与数值位一起参与乘法运算过程,得出用补码表示的乘法结果。▲Booth算法推导:[X]补=xnxn-1……x0,[Y]补=ynyn-1……y0;根据补码定义:可得出其真值:Y=[Y]补-2n+1ynX×Y=X×{[Y]补-2n+1yn}=X{yn2n+yn-12n-1+……+y121+y020-2n+1yn}=X{-yn2n+yn-12n-1+……+y121+y020}=2n(yn-1-yn)X+2n-1(yn-2–yn-1)X+……+21(y0–y1)X+20(0–y0)Xy-1为增设的一个附加位,初值为0;[X×Y]补=[2n(yn-1-yn)X+2n-1(yn-2–yn-1)X+……+21(y0–y1)X+20(y-1–y0)X]补令[X×Y]补=[X×Y]’补×2n[X×Y]’补=[(yn-1-yn)X+2-1(yn-2–yn-1)X+……得到如下递推公式令[P0]补=0,有:[P1]补=[2-1(P0+(y-1-y0)×X]补[P2]补=[2-1(P1+(y0-y1)×X]补[Pi]补=[2-1(Pi-1+(yi-2-yi-1)×X)]补(i=1~n)[Pn]补=[2-1(Pn-1+(yn-2-yn-1)×X)]补[X*Y]’补=[Pn+1]补=[Pn+(yn-1-yn)×X]补(yi-1–yi)X实际上并不做乘法,只要比较相邻两位乘数以决定+X、–X或+0。在计算机中,对于定点整数,只要认定小数点在乘积之末,相当于将小数点右移n位。对乘数的连续两位yi和yi-1进展判断假设yiyi-1=01,那么[Pi+1]补=[2-1(Pi+X)]补假设yiyi-1=10,那么[Pi+1]补=[2-1(Pi-X)]补假设yiyi-1=00或11,那么[Pi+1]补=[2-1Pi]补一个补码数据的右移是连同符号位右移,且最高位补充符号位的值。▲例3:[X]补=01101,[Y]补=10110,[-X]补=10011。用布斯乘法计算[X×Y]补的过程如下因此,[X×Y]补=101111110▲布斯乘法的算法过程为n+1次的“判断—加减—右移〞的循环,判断的次数为n+1次,右移的次数为n次。▲在布斯乘法中,遇到连续的“1〞或连续的“0〞时,是跳过加法运算,直接实现右移操作的,运算效率高。3.5.1浮点数的加、减运算◆计算机中实现X和Y加、减法运算的步骤为:第1步:对阶▲对阶使得原数中较大的阶码成为两数的公共阶码;小阶码的尾数按两阶码的差值决定右移的数量。第2步:尾数加减 ▲对尾数进展加、减运算第3步:规格化▲设浮点数的尾数用补码表示,且加、减运算时采用双符号位,那么规格化形式的尾数应是如下形式:尾数为正数时:001xxx尾数为负数时:110xxx▲尾数违反规格化的情况有以下两种可能:①尾数加、减法运算中产生溢出正溢出时,符号位为01;负溢出时,符号位为10;规格化采取的方法是:尾数右移一位,阶码加1;这种规格化称为右规。②尾数的绝对值小于二进制的0.1。补码形式的尾数表现为最高数值位与符号位同值。采取规格化的方法:符号位不动,数值位逐次左移,阶码逐次减1,直到满足规格化形式的尾数。这种规格化称为左规。第4步:舍入▲对结果尾数进展舍入处理方法①恒舍法无论戒备位的值是多少,都舍去。②恒置1法不管戒备位为何值,尾数的有效最低位恒置1。③0舍1入法戒备位〔q位〕中的最高位为1时,就在尾数末尾加1;戒备位〔q位〕中的最高位为0时,舍去所有的戒备位;第5步:阶码溢出判断浮点数运算结果是否溢出,应由阶码来判断。例2:X=0.11011011×2010,Y=-0.10101100×2100;用补码来表示浮点数的尾数和阶码①对阶②尾数加法③尾数规格化尾数没有溢出,但符号位与最高数值位有K=1位一样,需左规:Mb左移K=1位:Mb=11000101011Eb减1:Eb=00011④舍入处理采用恒舍法,执行舍操作。得:Mb=1100010101⑤阶码溢出判断阶码无溢出,X+Y正常完毕,得:[X+Y]浮=1001100010101,即X+Y=-0.11101011×2011§2.5算术逻辑单元ALU一、加法器组成*全加器输出的逻辑表达式:2、串行加法器加法器由1个全加器组成;n位加法分成n步完成。3、并行加法器*组成:n个全加器、进位链;(1)串行进位加法器*组成:*加法器特点:进位电路简单,运算速度慢(T加法=nΔt)(2)先行进位加法器*先行进位逻辑形成:其中Gi=AiBi,Pi=AiBiC0=G0+P0C-1C1=G1+P1C0=G1+P1G0+P1P0C-1C2=G2+P2C1=G2+P2G1+P2P1G0+P2P1P0C-1C3=G3+P3C2=G3+P3G2+P3P2G1+P3P2P1G0+P3P2P1P0C-1*先行进位产生电路:*4位先行进位加法器组成:*n位先行进位加法器组成:组内并行、组间串行进位加法器—组内并行、组间并行进位加法器—二、算术逻辑部件ALU1、ALU的功能*计算机中数据的运算方法及实现部件:*ALU的功能:逻辑运算及算术运算功能;提供算术运算结果状态等ALU的基本构造*功能选择方法:设置相关引脚,以选择当前欲实现的功能*构造与组成:构造—以加法器为根基扩大功能;组成—全部由组合逻辑电路构成运算器的组织*CPU中运算器的功能:早期—只包含逻辑运算和定点算术运算功能;└→乘除法功能用加法器+移位实现后期—包含逻辑运算、定点算术运算及浮点运算功能└→乘除法功能用阵列乘除法器实现*运算器基本构造:由ALU、锁存器、状态存放器、MUX多路开关等组成第三章存储系统存储器的基本概念存储介质:能表示二进制1和0的物理部件;存储元:存储1位二进制代码信息的器件;存储单元:假设干个存储元的集合,它可以存放一个字或一个字节;存储体:假设干个存储单元的集合;地址:存储单元的编号;§3.1存储系统概述一、存储器分类1、按存储介质分类存储介质必须有区别明显的两个物理状态(表示0/1)2、按存取方式及功能分类*顺序存取存储器(SAM):按记录块为单位进展编址,存取时间与读/写头到访问地址的相对位置有关;*随机存取存储器(RAM):按存储字为单位进展编址,存取时间与访问的地址无关(时间固定);*直接存取存储器(DAM):信息存取区域定位与RAM类似,区域内操作与SAM类似;*只读存储器(ROM):操作方式为只能取、不能存可由RAM或DAM构成,信息读取的定位由存储器构造决定3、按在计算机中的作用分类*主存储器(MM):可直接与CPU交换信息的MEM构成—MOS型半导体、动态RAM和ROM*辅助存储器(AM):主存的后援MEM构成—磁性/光介质材料、SAM/DAM*高速缓冲存储器(Cache):CPU与主存间的缓冲MEM构成—MOS型半导体、静态RAM*控制存储器(CM):CPU内部存放微程序的MEM构成—MOS型半导体、ROM二、存储器的主要性能指标*容量(S):能存储的二进制信息总量,常以字节(B)为单位*速度(B):常用带宽、存取时间或存取周期表示存取时间(TA)—指MEM从收到命令到结果输出所需时间;存取周期(TM)—指连续访存的最小间隔时间,TM=TA+T恢复带宽(BM)—指单位时间内MEM最多可读写的二进制位数;BM=W/TM,其中W为一次读写的数据宽度,常以bps为单位*价格:常用总价格C或每位价格c表示,c=C/S。三、层次构造存储系统1、层次构造的引入*程序访问局部性规律:程序执行时,指令和数据呈现的相对簇聚特性。时间局部性—被访问过的信息,可能很快被再次访问;空间局部性—被访问信息的相邻信息,可能很快被访问*用户需求矛盾的解决方案:近期常用数据—放在“前方〞MEM(快而小)中;近期不用数据—放在“前方〞MEM(慢而大)中。高速度、大容量、低价格高速度、大容量、低价格2、层次构造的存储系统(1)层次存储系统组成*思想:①用多种类型MEM构成前方-前方的层次构造;②前方MEM中信息为前方MEM中信息的副本;③各层MEM之间信息传递是“透明〞的(2)常见的存储系统层次构造围绕主存的层次构造一般为“Cache-主存-辅存〞三种MEM构成的两个存储层次*“Cache-主存〞存储层次:--设置高速缓冲存储器目标—解决主存速度问题(Cache的速度,主存的容量)*“主存-辅存〞存储层次:目标—解决主存容量问题(主存的速度,辅存的容量)└→可能存在:(执行的)程序空间≥主存空间(3)层次存储系统的工作方式*程序执行需求:即将执行的指令和数据存放在主存中*层次存储系统的工作方式:§3.2半导体存储器根基*静态RAM—用触发器存储信息,长时间不访问及信息读出后信息值(状态)保持不变;*动态RAM—用电容存储信息,长时间不访问及信息读出后信息值(状态)被破坏,需及时恢复信息值(称为刷新及再生)。一、静态RAM(StaticRAM,SRAM)1、SRAM存储元的组成原理存储元—RAM中存储1位二进制信息的电路;*6管MOS静态存储元工作原理:读出—①在W线上加正脉冲;②D=D=V中→D或D产生压降(假设信息为“0〞那么D电压下降)→用差动放大器可检测出所读信息,T1、T2状态保持不变(非破坏性读)。2、SRAM芯片的组成原理(1)存储芯片基本组成主要由存储阵列、地址译码器、I/O电路、控制电路等组成*地址译码器:有一维、二维两种译码方式↓↓译码器输出线数—2M根2×2M/2根常见译码方式—二维译码方式→同一列存储元共用位选择线*驱动器:X译码器每个输出需控制同一行各存储元的字选线├→设置驱动器增加驱动能力I/O电路输出时需驱动总线信号(负载大)*I/O电路:根据内部读/写信号,检测/控制D及D线└→被选存储元*片选与控制电路:片选—MEM常由多个芯片组成,读/写操作常针对某个芯片(2)SAM芯片参数与构造*芯片相关参数:存储阵列容量—数据引脚数量—地址引脚数量—3、SRAM芯片的读写时序*读周期时序:(存储器对外部信号的时序要求)*写周期时序:、动态存储器(DynamicRAM,DRAM)
动态RAM目标:降低功耗、节约成本*单管MOS式动态存储元工作原理:第三章存储系统存储器的基本概念存储介质:能表示二进制1和0的物理部件;存储元:存储1位二进制代码信息的器件;存储单元:假设干个存储元的集合,它可以存放一个字或一个字节;存储体:假设干个存储单元的集合;地址:存储单元的编号;§3.1存储系统概述一、存储器分类1、按存储介质分类存储介质必须有区别明显的两个物理状态(表示0/1)2、按存取方式及功能分类*顺序存取存储器(SAM):按记录块为单位进展编址,存取时间与读/写头到访问地址的相对位置有关;*随机存取存储器(RAM):按存储字为单位进展编址,存取时间与访问的地址无关(时间固定);*直接存取存储器(DAM):信息存取区域定位与RAM类似,区域内操作与SAM类似;*只读存储器(ROM):操作方式为只能取、不能存可由RAM或DAM构成,信息读取的定位由存储器构造决定3、按在计算机中的作用分类*主存储器(MM):可直接与CPU交换信息的MEM构成—MOS型半导体、动态RAM和ROM*辅助存储器(AM):主存的后援MEM构成—磁性/光介质材料、SAM/DAM*高速缓冲存储器(Cache):CPU与主存间的缓冲MEM构成—MOS型半导体、静态RAM*控制存储器(CM):CPU内部存放微程序的MEM构成—MOS型半导体、ROM二、存储器的主要性能指标*容量(S):能存储的二进制信息总量,常以字节(B)为单位*速度(B):常用带宽、存取时间或存取周期表示存取时间(TA)—指MEM从收到命令到结果输出所需时间;存取周期(TM)—指连续访存的最小间隔时间,TM=TA+T恢复带宽(BM)—指单位时间内MEM最多可读写的二进制位数;BM=W/TM,其中W为一次读写的数据宽度,常以bps为单位*价格:常用总价格C或每位价格c表示,c=C/S。三、层次构造存储系统1、层次构造的引入*程序访问局部性规律:程序执行时,指令和数据呈现的相对簇聚特性。时间局部性—被访问过的信息,可能很快被再次访问;空间局部性—被访问信息的相邻信息,可能很快被访问*用户需求矛盾的解决方案:近期常用数据—放在“前方〞MEM(快而小)中;近期不用数据—放在“前方〞MEM(慢而大)中。高速度、大容量、低价格高速度、大容量、低价格2、层次构造的存储系统(1)层次存储系统组成*思想:①用多种类型MEM构成前方-前方的层次构造;②前方MEM中信息为前方MEM中信息的副本;③各层MEM之间信息传递是“透明〞的(2)常见的存储系统层次构造围绕主存的层次构造一般为“Cache-主存-辅存〞三种MEM构成的两个存储层次*“Cache-主存〞存储层次:--设置高速缓冲存储器目标—解决主存速度问题(Cache的速度,主存的容量)*“主存-辅存〞存储层次:目标—解决主存容量问题(主存的速度,辅存的容量)└→可能存在:(执行的)程序空间≥主存空间(3)层次存储系统的工作方式*程序执行需求:即将执行的指令和数据存放在主存中*层次存储系统的工作方式:§3.2半导体存储器根基*静态RAM—用触发器存储信息,长时间不访问及信息读出后信息值(状态)保持不变;*动态RAM—用电容存储信息,长时间不访问及信息读出后信息值(状态)被破坏,需及时恢复信息值(称为刷新及再生)。一、静态RAM(StaticRAM,SRAM)1、SRAM存储元的组成原理存储元—RAM中存储1位二进制信息的电路;*6管MOS静态存储元工作原理:读出—①在W线上加正脉冲;②D=D=V中→D或D产生压降(假设信息为“0〞那么D电压下降)→用差动放大器可检测出所读信息,T1、T2状态保持不变(非破坏性读)。2、SRAM芯片的组成原理(1)存储芯片基本组成主要由存储阵列、地址译码器、I/O电路、控制电路等组成*地址译码器:有一维、二维两种译码方式↓↓译码器输出线数—2M根2×2M/2根常见译码方式—二维译码方式→同一列存储元共用位选择线*驱动器:X译码器每个输出需控制同一行各存储元的字选线├→设置驱动器增加驱动能力I/O电路输出时需驱动总线信号(负载大)*I/O电路:根据内部读/写信号,检测/控制D及D线└→被选存储元*片选与控制电路:片选—MEM常由多个芯片组成,读/写操作常针对某个芯片(2)SAM芯片参数与构造*芯片相关参数:存储阵列容量—数据引脚数量—地址引脚数量—3、SRAM芯片的读写时序*读周期时序:(存储器对外部信号的时序要求)*写周期时序:数据线DCD字选择线X数据线DCD字选择线XT1CS动态存储器(DynamicRAM,DRAM)
动态RAM目标:降低功耗、节约成本*单管MOS式动态存储元工作原理:写入—①所写数据加到D上,②翻开T1→对CS充电或放电;保持—断开T1→无放电回路→信息存储在CS中(会缓慢泄漏);读出—①在D上加正脉冲→对CD预充电,②翻开T1→读D上电压变化(破坏性读)└→CS得到充电2、DRAM芯片的基本组成(2)单管MOS式DRAM芯片的组成*基本构造:通常采用地址分两次传送方式组织增设①地址锁存器、时序控制电路,②再生电路*芯片操作:读、写、刷新(行刷新方式[无列地址])(3)DRAM芯片组成例如*Intel4116芯片:单管MOS存储元、地址分两次传送参数—容量=16K×1位;地址引脚=14/2=7根;数据引脚=2根(单向DIN/DOUT、共1位宽度)构造—2个64×128存储阵列,时钟发生器串联3、DRAM芯片的操作时序*读周期时序:*刷新周期时序:与读周期类似,区别在于CAS在整个操作过程中无效└→行刷新时不需要列地址4、DRAM芯片的刷新*刷新周期:同一存储元连续两次刷新的最大间隔;与DRAM存储元材料及芯片组成有关*刷新方法:每个刷新周期内,循环进展所有行的行刷新(1)DRAM芯片刷新方式通常有集中式、分散式、异步式三种方式*集中式刷新:将所有行刷新集中在刷新周期的后部特点—存在“死区〞(不能进展读/写操作的时间段)*分散式刷新:将行刷新分散在每个存取周期中特点—防止了“死区〞,增加了存取时间(1倍)*异步式刷新:将行刷新均匀分布在刷新周期中设芯片需刷新128次,那么每次刷新间隔2000/128=15.5μs特点—“死区〞可忽略,支持固有的存取周期→最常用(2)DRAM芯片刷新实现按约定的刷新方式,由专用电路定时产生行刷新命令*DRAM芯片的刷新电路:*刷新电路在计算机的位置:通常独立存在于DRAM芯片/模块之外→DRAM控制器5、MOS型SRAM与DRAM芯片比较*DRAM芯片的优点:①DRAM集成度远高于SRAM;←常采用单管MOS存储元②DRAM地址引脚是SRAM的一半;←常采用地址分两次传送方式③DRAM功耗约为SRAM的1/4;←采用单管MOS存储元所致④DRAM成本远低于SRAM*DRAM芯片的缺点:DRAM速度远低于SRAM←使用动态元件(电容)所致*RAM芯片应用:SRAM芯片—常用来构成高速度、小容量MEM,如CacheDRAM芯片—常用来构成大容量MEM,如主存三、只读存储器(ReadonlyMemory,R0M)*ROM:信息注入MEM后不能再改变,它具有非易失性*半导体ROM:具有非易失性的半导体MEM,如EPROM、FLASH等*ROM芯片组成:与SRAM类似,区别在于存储元的实现及操作1、掩模ROM(MROM)*特征:用户不可修改信息;*存储元状态:用MOS管的有/无表示“1〞/“0〞;*数据读出:字选线加电压时,位线电压为所选存储元的数据VCC字选择线XVCC字选择线X数据线DVCC熔丝未断(“1〞)字选择线X数据线D熔丝已断(“0〞)VDVD2、可编程ROM(PROM)*特征:用户可一次性修改信息(电写入);*存储元状态:用二极管/熔丝的通/断表示“1〞/“0〞;*数据写入:字线X加电压,假设写0—VD=V地→熔丝熔断,假设写1—VD=V中→熔丝不断;*数据读出:字线X加电压、VD=V中,检测VD变化可读出数据3、可擦除可编程ROM(EPROM)*特征:用户可屡次修改信息(电写入、光擦除);*存储元状态:常用浮栅雪崩注入MOS管(即FAMOS管)的浮栅Gf是/否带电荷表示“1〞/“0〞;N基体N基体PSDGCSiO2PDSGC4、电可擦除可编程ROM(E2PROM)*特征:用户可屡次修改信息(电写入、电擦除);*存储元状态:用浮栅隧道氧化层MOS管(即Flotox管)的浮栅是/否带电荷表示“1〞/“0〞;5、闪速存储器(FLASH)*特征:用户可屡次修改信息(电写入、电擦除);*存储元状态:与叠栅EPROM类似,但氧化层更薄§3.3主存储器一、主存储器的组成*主存储器相关概念:主存容量=主存单元长度×主存单元个数*应用对主存空间的需求:二、主存储器的逻辑设计*存储器容量扩展方法:位扩展法、字扩展法、字位扩展法*主存逻辑设计:使用ROM、SRAM或DRAM芯片进展容量扩展,实现主存单元长度和主存单元个数。1、位扩展法(又称并联扩展)*目的:扩展存储器的存储字长*芯片连接特征:各芯片数据引脚连接不同,其余引脚连接一样例1—用1K×1位SRAM芯片构成1K×4位存储模块2、字扩展法(又称串联扩展)*目的:扩展存储器的存储字数例2—用1K×4位SRAM芯片构成2K×4位存储模块解:①芯片数量—共需(2K×4b)÷(1K×4b)=2片;②各芯片地址范围—存储模块有log2(2K)=11位地址,各芯片片选有效逻辑—0#、1#芯片分别为A10=0、A10=1练习1—用1M×4位SRAM芯片构成4M×4位存储模块3、字位扩展法*目的:同时扩展存储器的存储字长和存储字数例3—用1K×4位SRAM芯片构成2K×8位存储模块解:①芯片数量—共需(2K×8b)÷(1K×4b)=4片;②各芯片地址范围—存储模块有log2(2K)=11位地址,练习2—用1K×4位SRAM芯片构成4K×8位存储模块例4—用1K×4位ROM、1K×8位SRAM芯片构成4K×8位存储模块,其中前1KB空间为只读空间解:①芯片数量—共需ROM2片、SRAM3片;ROM1#ROM0#SRAM1#00XXXXXXXXXX
01XXXXXXXXXX
10XXXXXXXXXX
11XXXXXXXXXXROM1#ROM0#SRAM1#00XXXXXXXXXX
01XXXXXXXXXX
10XXXXXXXXXX
11XXXXXXXXXXSRAM2#SRAM3#模块有log2(4K)=12位地址芯片有10位地址③连接图—三、提高访存速度的措施*CPU的访存特征:一次访存的信息常为多个存储字,屡次访存的地址常为连续的;1、多模块存储器--多体存储器2、高性能存储器(1)EDODRAM(ExtendedDataOutputDRAM,扩展数据输出DRAM)*提高性能思路:同时读出并缓冲一行信息,减小平均TM*实现原理:用SRAM保存上次读操作的一行信息,当前读操作的行地址假设与上次读操作一样,那么直接从SRAM中取出信息SDRAM(SynchronousDRAM,同步DRAM)MEM从所接收地址开场,连续读/写多个存储字(内部计数器产生各存储字地址),减少了多个地址连续数据传送的平均TM(3)DDRSDRAM(DoubleDataRateSDRAM,双数据速率DRAM)3、双端口存储器--同时支持两个操作*构造:2套译码+I/O+读写电路,1个存储阵列+判断逻辑电路§3.4高速缓冲存储器一、Cache的基本原理*Cache的性能:命中率(H)—HC=NC/(NC+NM)其中,NC、NM—CPU访存在Cache、主存中的命中次数√平均访问时间—TA=HCTCache+(1-HC)TMem1、Cache的存储空间管理(1)Cache与主存的信息交换单位*目标:尽量减小平均访问时间TA*Cache与主存的信息交换单位:字块(又称块或行)(2)Cache的存储空间管理2、Cache的基本工作原理3、Cache的构造与组成*存储体:由SRAM构成*地址映像及变换机构:由目录表、比较器等组成;目录表—行数=Cache块数,表项=有效位+块标记+…地址映像机构—决定查目录表的哪些行及块标记组成└→影响变换的性能及成本地址变换机构—查表并比较,命中时直接形成Cache地址不命中时调入块或替换块后再形成二、Cache的相关技术1、地址映像及变换*实现功能:某主存块可存放到Cache中哪些块位置*性能指标:调入块时的块冲突概率、地址变换的速度与成本(1)全相联地址映像及变换*映像规那么:主存块i可映射到Cache的任意一个块;*地址变换方法:比较目录表所有行,命中时行号即为变换后的块号;例1:CPU支持最大主存容量1MB、按字节编址,块大小16B,Cache容量为8KB。全相联映像方式时,⑴主存地址格式及参数⑵Cache地址格式及参数⑶目录表行数块标记位数⑷假设目录表项为<有效位,块标记>,CPU访问36454H主存单元时,那么Cache命中时的目录表项(2)直接地址映像及变换*映像规那么:主存块i可映射到Cache的块j=(imodG);*地址变换方法:比较目录表相应行,命中时主存地址的区内块号即为变换后的块号;例2:CPU支持最大主存容量1MB、按字节编址,块大小16B,Cache容量为8KB。直接映像方式时,⑴主存及Cache地址格式及参数⑵目录表行数块标记位数⑶假设目录表项为<有效位,块标记>,CPU访存地址为36454H时,那么可能命中的Cache块号命中时的目录表项(3)组相联地址映像及变换--直接映像与全相联映像的折中*映像规那么:将Cache中块分组,每组为n个块(共G/n个组),主存块i可映像到Cache的第j组(j=imodG/n)中的任意块。※n路组
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安全生产风险分级管控和隐患排查治理指导手册
- (范文)钻石首饰项目立项报告
- (2024)氮化硅陶瓷粉体生产建设项目可行性研究报告(一)
- 2022-2023学年天津市宝坻九中高二(上)期末语文试卷
- 2023年网络应用软件项目融资计划书
- 2023年胶基糖果中基础剂物质项目融资计划书
- 机械制图题库及答案
- 广东省茂名市高州市2024届九年级上学期期末考试数学试卷(含答案)
- 养老院老人生活照顾服务质量管理制度
- 养老院老人健康监测人员管理制度
- 统编版(2024版)七年级上册历史期末复习课件
- 高校教师职称答辩演讲稿
- 2024-2025学年人教版七年级地理上学期地理知识点
- 国开2024年秋《机械制图》形考作业1-4答案
- 计算机网络智慧树知到期末考试答案章节答案2024年上海电力大学
- 劳动教育智慧树知到期末考试答案章节答案2024年温州医科大学
- MOOC 创业管理-江苏大学 中国大学慕课答案
- 2024年四川省自然资源投资集团有限责任公司招聘笔试参考题库附带答案详解
- 手机号码归属地数据库
- 北师大六年级数学上册期末复习计划
- 压力管道预防和预测性维修制度
评论
0/150
提交评论