收藏 分销(赏)

CPU和存储器的连接.ppt

上传人:精*** 文档编号:12815510 上传时间:2025-12-10 格式:PPT 页数:50 大小:407KB 下载积分:14 金币
下载 相关 举报
CPU和存储器的连接.ppt_第1页
第1页 / 共50页
CPU和存储器的连接.ppt_第2页
第2页 / 共50页


点击查看更多>>
资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,CPU和存储器的连接,一、存储器芯片与,CPU,的连接,1.,引言,在微型系统中,,CPU,对存储器进行读写操作,首先要由地址总线给出地址信号,选择要进行读,/,写操作的存储单元,然后通过控制总线发出相应的读,/,写控制信号,最后才能在数据总线上进行数据交换。所以,存储器芯片与,CPU,之间的连接,实质上就是其与系统总线的连接,包括:,地址线的连接;,数据线的连接;,控制线的连接;,在连接中要考虑的问题有以下几个方面:,(1),控制线的连接:即如何用,CPU,的存储器读写信号同存储器芯片的控制信号线连接,以实现对存储器的读写操作。简单系统:,CPU,读写信号与存储器芯片的读写信号直接相连。复杂系统:,CPU,读写信号和其它信号组合后与存储器芯片的读写信号直接相连。,CPU,读信号最终和存储器的读信号相连,,CPU,写信号最终和存储器的写信号相连。,(2),数据线的连接:若一个芯片内的存储单元是,8,位,则它自身就作为一组,其引脚,D,0,D,7,可以和系统数据总线,D,0,D,7,或,D,8,D,15,直接相连。若一组芯片,(4,个或,8,个,),才能组成,8,位存储单元的结构,则组内不同芯片应与不同的数据总线相连。,6116,8086,D,7,D,0,I/O8,I/O1,2164(0),8086,D,7,D,0,D,IN,(D,OUT,),2164(6),D,IN,(D,OUT,),2164(7),D,IN,(D,OUT,),D,6,存储器芯片与,CPU,的连接,存储器芯片分组,位扩展,(,加大字长,),例,用,8,个,16K1bit,芯片组成,16K8bit,的存储器。,A,0,A,13,D,0,D,1,D,2,D,7,16K1,CS,CS,CS,CS,WE,WE,WE,WE,16K1,D,0,D,1,D,2,D,7,(3),地址线的连接:将用以,“,字选,”,的低位地址总线直接与存贮芯片的地址引脚相连,将用以,“,片选,”,的高位地址总线送入译码器。,2732,8086,译码器,A,19,A,12,A,11,A,0,A,11,A,0,6116,8086,译码器,A,19,A,11,A,10,A,0,A,10,A,0,可以根据所选用的半导体存储器芯片地址线的多少,把,CPU,的地址线分为芯片外,(,指存储器芯片,),地址和芯片内的地址,片外地址经地址译码器译码后输出。,作为存储器芯片的片选信号,用来选中,CPU,所要访问的存储器芯片。,片内地址线直接接到所要访问的存储器芯片的地址引脚,用来直接选中该芯片中的一个存储单元。,对,4K8b,的,2732,而言,片外地址线为,A,19,A,12,,片内地址线为,A,11,A,0,;,对,2K8b,的,6116,而言,片外地址线为,A,19,A,11,,片内地址线为,A,10,A,0,。,字扩展,(,扩大地址,),CS,WE,CS,WE,CS,WE,CS,WE,16K4,16K4,16K4,16K4,A,0,A,13,WE,D,0,D,1,D,2,D,3,译码器,A,14,A,15,1,2,3,D,0,D,3,D,0,D,3,D,0,D,3,D,0,D,3,2.CPU,总线的负载能力,在设计,CPU,芯片时,一般考虑其输出线的直流负载能力为带一个,TTL,负载。现在的存储器一般都为,MOS,电路,直流负载很小,主要的负载是电容负载,故在小型系统中,,CPU,是可以直接与存储器相连的,而较大的系统中,若,CPU,的负载能力不能满足要求,可以(就要考虑,CPU,能否带得动,需要时就要加上缓冲器,)由缓冲器的输出再带负载。,3.CPU,的时序和存储器的存取速度之间的配合问题,CPU,在取指和存储器读或写操作时,是有固定时序的,用户要根据这些来确定对存储器存取速度的要求,或在存储器已经确定的情况下,考虑是否需要,Tw,周期,以及如何实现。,4.,存储器的地址分配和片选问题,内存通常分为,RAM,和,ROM,两大部分,而,RAM,又分为系统区,(,即机器的监控程序或操作系统占用的区域,),和用户区,用户区又要分成数据区和程序区,,ROM,的分配也类似,所以内存的地址分配是一个重要的问题。,另外,目前生产的存储器芯片,单片的容量仍然是有限的,通常总是要由许多片才能组成一个存储器,这里就有一个如何产生片选信号的问题。,组成一个存储系统通常是由多个存储芯片组成,CPU,每次访问内存只能对一个存储单元进行读或写,这个单元位于某个芯片中或一组芯片中。,因此,首先要找到这个或这组芯片,这就是所谓的片选问题。换句话说,就是每当,CPU,访问内存,如何产生相应芯片的片选信号。,指定一个存贮单元是由,CPU,给出的地址来决定的,硬件寻址的方法是将地址总线分成两部分。,一部分直接送入芯片进行,“,片内地址译码,”,,确定片内单元的位置;,另一部分送入译码器进行,“,片外地址译码,”,产生片选信号。,通常我们有三种片选方法:线选法、全译码法、部分译码法。,线选法,在剩余的高位地址总线中,任选一位作为片选信号直接与存贮芯片的,CS,引脚相连,这种方式就称为线选法。,其特点是无需译码器,但有较多的地址重叠区。,该方法适用于存储器容量不大,所使用的存储芯片数量不多,而,CPU,寻址空间远远大于存储器容量。,(,1,),1KB,CS,(,2,),1KB,CS,(,3,),1KB,CS,(,4,),1KB,CS,A,10,A,11,A,13,A,11,A,0,A,9,线选法,例,5-1,:用,5,片,Intel6116(2K8),组成,10K8,位的存储器系统。求每块芯片的地址范围。,RAM,2KB,RAM,2KB,RAM,2KB,CS,CS,CS,CS,CS,A11,A12,A13,A14,A15,D,0,-D,7,A,0,-A,10,数据总线,地址总线,(,3,),(,4,),(,5,),RAM,2KB,RAM,2KB,(,1,),(,2,),线选法,A,15,A,14,A,13,A,12,A,11,A,10,-A,0,地 址范围,0 1 1 1 1 0 0,7800H,0 1 1 1 1 1 1,7FFFH,1 0 1 1 1 0 0,B800H,1 0 1 1 1 1 1,BFFFH,1 1 0 1 1 0 0,C800H,1 1 0 1 1 1 1,CFFFH,1 1 1 0 1 0 0,E800H,1 1 1 0 1 1 1,EFFFH,1 1 1 1 0 0 0,F000H,1 1 1 1 0 1 1,F7FFH,存储器,5,地址范围,存储器,4,地址范围,存储器,3,地址范围,存储器,2,地址范围,存储器,1,地址范围,线选法,A,19,A,18,A,17,A,16,A,15,A,14,A,13,A,12,A,11,A,10,-A,0,地 址范围,0 1 1 1 1 0 0,7800H,0 1 1 1 1 1 1,7FFFH,1 0 1 1 1 0 0,B800H,1 0 1 1 1 1 1,BFFFH,1 1 0 1 1 0 0,C800H,1 1 0 1 1 1 1,CFFFH,1 1 1 0 1 0 0,E800H,1 1 1 0 1 1 1,EFFFH,1 1 1 1 0 0 0,F000H,1 1 1 1 0 1 1,F7FFH,全译码法,除去与存储芯片直接相连的低位地址总线之外,将剩余的地址总线全部送入,“,片外地址译码器,”,中进行译码的方法就称为全译码法。,其特点是物理地址与实际存储单元一一对应,但译码电路复杂。,8KB,(2),CS,8KB,(1),CS,8KB,(8),CS,3-8,译码器,A,0,A,12,A,13,A,15,Y,0,Y,1,Y,7,全译码法,例,5-2,:用,16,片,Intel6232(4K8),组成,64K8,位的存储器系统。求每块芯片的地址范围。,4KB,(1),4KB,(2),4KB,(16),译,码,器,CS,CS,CS,Y,0,Y,1,Y,15,A0-A11,地址总线,数据总线,D0-D7,A,15,-A,12,.,.,.,.,.,全译码法,A,15,A,14,A,13,A,12,A,11,A,10,-A,0,地 址范围,0 0 0 0 0 0 0,Y,1,0000H-0FFFH,0 0 0 1,0 0 0,Y,2,1000H-1FFFH,0 0 1 0 0 0 0,Y,3,2000H-2FFFH,1 1 0 1 0 0 0,Y,14,D000H-DFFFH,1 1 1 0 0 0 0,Y,15,E000H-EFFFH,1 1 1 1 0 0 0,Y,16,F000H-FFFFH,存储器,1,地址范围,存储器,2,地址范围,存储器,3,地址范围,存储器,14,地址范围,存储器,15,地址范围,存储器,16,地址范围,部分译码法,除去与存储芯片直接相连的低位地址总线之外,剩余的部分不是全部参与译码的方法就称为部分译码。,其特点是译码电路比较简单,但出现,“,地址重叠区,”,,一个存贮单元可以由多个地址对应。,部分译码法,例,5-3,:用,8,片,Intel6116(2K8),组成,16K8,位的存储器系统。求每块芯片的地址范围。,2KB,(1),2KB,(2),2KB,(8),译,码,器,CS,CS,CS,Y,0,Y,1,Y,7,A0-A10,地址总线,数据总线,D0-D7,A,15,-A,11,中任三根,.,.,.,.,.,用,A11,、,A12,、,A13,来译码,A,15,A,14,A,13,A,12,A,11,A,10,-A,0,地 址范围,x x 0 0 0 0 0,7800H,x x 0 0 0 1 1,7FFFH,x x 0 0 1 0 0,B800H,x x 1 1 1 1 1,BFFFH,x x 0 1 1 0 0,C800H,x x 0 1 1 1 1,CFFFH,x x 1 0 1 0 0,E800H,x x 1 0 1 1 1,EFFFH,x x 1 1 0 0 0,F000H,x x 1 1 0 1 1,F7FFH,存储器,5,地址范围,存储器,4,地址范围,存储器,3,地址范围,存储器,2,地址范围,存储器,1,地址范围,地址译码器,将,CPU,与存储器连接时,首先根据系统要求,确定存储器芯片地址范围,然后进行地址译码,译码输出送给存储器的片选引脚,CS,。,能够进行地址译码功能的部件叫做地址译码器。,常见的地址译码器如,74LS138,电路。,地址译码器,如图给出了该译码器的引脚和译码逻辑框图。由图可看到,译码器,74LS138,的工作条件是控制端,G1=1,G2A*=0,G2B*=0,,译码输入端为,C,、,B,、,A,,故输出有八种状态,因规定,CS*,低电平选中存储器,故译码器输出也是低电平有效。当不满足编译条件时,,74LS138,输出全为高电平,相当于译码器未工作。,74LS138,的真值表如下表。,地址译码器,G,1,C B A,译码输出,1 0 0,0 0 0,=0,,其余为,1,1 0 0,0 0 1,=0,,其余为,1,1 0 0,0 1 0,=0,,其余为,1,1 0 0,0 1 1,=0,,其余为,1,1 0 0,1 0 0,=0,,其余为,1,1 0 0,1 0 1,=0,,其余为,1,1 0 0,1 1 0,=0,,其余为,1,1 0 0,1 1 1,=0,,其余为,1,不是上述情况,全为,1,5.,控制信号的连接,CPU,在与存储器交换信息时,通常有以下几个控制信号,(,对,8088/8086,来说,),:,IO/M,(,IO/M,),,RD,WR,以及,WAIT,信号。这些信号如何与存储器要求的控制信号相连,以实现所需的控制功能。,二、存储器芯片的扩展,存储器芯片扩展的方法有以下两种:,1.,存储器芯片的位扩充,适用场合 存储器芯片的容量满足存储器系统的要求,但其字长小,于存储器系统的要求。,【,例,1】,用,1K4,的,2114,芯片构成,lK8,的存储器系统。,【,分析,】,由于每个芯片的容量为,1K,,故满足存储器系统的容量要求。但由于每个芯片只能提供,4,位数据,故需用,2,片这样的芯片,它们分别提供,4,位数据至系统的数据总线,以满足存储器系统的字长要求。,【,设计要点,】,将每个芯片的,10,位地址线按引脚名称一一并联,按次序逐根接至系统地址总线的低,10,位。,数据线则按芯片编号连接,,1,号芯片的,4,位数据线依次接至系统数据总线的,D0-D3,,,2,号芯片的,4,位数据线依次接至系统数据总线的,D4-D7,。,两个芯片的,WE,端并在一起后接至系统控制总线的存储器写信号,WR,(如,CPU,为,8086/8088,,也可由和,IO,M,或,IO/M,的组合来承担)。,CS,引脚也分别并联后接至地址译码器的输出,而地址译码器的输入则由系统地址总线的高位来承担。,具体连线见图,4-16,。,当存储器工作时,系统根据高位地址的译码同时选中两个芯片,而地址码的低位也同时到达每一个芯片,从而选中它们的同一个单元。在读,/,写信号的作用下,两个芯片的数据同时读出,送上系统数据总线,产生一个字节的输出,或者同时将来自数据总线上的字节数据写入存储器。,图,5-16,用,2114,组成,1K8,的存储器连线,根据硬件连线图,我们还可以进一步分析出该存储器的地址分配范围如下:(假设只考虑,16,位地址),地 址 码 芯 片 的 地 址 范 围,A15 .A12 A11 A10 A9 .A0,0 0 0 0 0 0 0 0 H,:,:,0 0 1 1 0 3 F F H,表示可以任选值,在这里我们均选,0,。,这种扩展存储器的方法就称为位扩展,它可以适用于多种芯片,如可以用,8,片,2164A,组成一个,64K8,的存储器等。,2.,存储器芯片的字扩充,【,适用场合,】,存储器芯片的字长符合存储器系统的要求,但其容量太小。,【,例,2】,用,2K8,的,2716,存储器芯片组成,8K8,的存储器系统。,【,分析,】,由于每个芯片的字长为,8,位,故满足存储器系统的字长要求。但由于每个芯片只能提供,2K,个存储单元,故需用,4,片这样的芯片,以满足存储器系统的容量要求。,【,设计要点,】,同位扩充方式相似。,先将每个芯片的,11,位地址线按引脚名称一一并联,然后按次序逐根接至系统地址总线的低,11,位。,将每个芯片的,8,位数据线依次接至系统数据总线的,D0-D7,。,两个芯片的端并在一起后接至系统控制总线的存储器读信号(这样连接的原因同位扩充方式),,它们的引脚分别接至地址译码器的不同输出,地址译码器的输入则由系统地址总线的高位来承担。连线见图,5-17,。,图,5-17,用,2716,组成,8K8,的存储器连线,当存储器工作时,根据高位地址的不同,系统通过译码器分别选中不同的芯片,低位地址码则同时到达每一个芯片,选中它们的相应单元。在读信号的作用下,选中芯片的数据被读出,送上系统数据总线,产生一个字节的输出。,同样,根据硬件连线图,我们也可以进一步分析出该存储器的地址分配范围如下表:(假设只考虑,16,位地址),地 址 码 芯片的地址范围 对应芯片编号,A15.A13 A12 A11 A10 A9.A0,0 0 0 0 0 0 0 0 0 H,:,2716-1,0 0 1 1 1 0 7 F F H,0 1 0 0 0 0 8 0 0 H,:,2716-2,0 1 1 1 1 0 F F F H,1 0 0 0 0 1 0 0 0 H,:,2716-3,1 0 1 1 1 1 7 F F H,1 1 0 0 0 1 8 0 0 H,:,2716-4,1 1 1 1 1 1 F F F H,表示可以任选值,在这里我们均选,0,。,这种扩展存储器的方法就称为字扩展,它同样可以适用于多种芯片,如可以用,8,片,27128,(,16k8,)组成一个,128K8,的存储器等。,3.,同时进行位扩充与字扩充,【,适用场合,】,存储器芯片的字长和容量均不符合存储器系统的要求,这时就需要用多片这样的芯片同时进行位扩充和字扩充,以满足系统的要求。,【,例,3】,用,1K4,的,2114,芯片组成,2K8,的存储器系统。,【,分析,】,由于芯片的字长为,4,位,因此首先需用采用位扩充的方法,用两片芯片组成,1K8,的存储器。再采用字扩充的方法来扩充容量,使用两组经过上述位扩充的芯片组来完成。,【,设计要点,】,每个芯片的,10,根地址信号引脚宜接接至系统地址总线的低,10,位,每组两个芯片的,4,位数据线分别接至系统数据总线的高,/,低四位。地址码的,A10,、,A11,经译码后的输出,分别作为两组芯片的片选信号,每个芯片的,WE,控制端直接接到,CPU,的读,/,写控制端上,以实现对存储器的读,/,写控制。硬件连线如图,5-18,图,5-18,用,2114,组成,2K8,的存储器连线,当存储器工作时,根据高位地址的不同,系统通过译码器分别选中不同的芯片组,低位地址码则同时到达每一个芯片组,选中它们的相应单元。在读,/,写信号的作用下,选中芯片组的数据被读出,送上系统数据总线,产生一个字节的输出,或者将来自数据总线上的字节数据写入芯片组。,同样,根据硬件连线图,我们也可以进一步分析出该存储器的地址分配范围如下:(假设只考虑,16,位地址),地 址 码 芯片组的地址范围 对应芯片组编号,A15.A13 A12 A11 A10 A9.A0,0 0 0 0 0 0 0 0 H,:,2114-1,0 0 1 1 0 3 F F H,0 1 0 0 0 4 0 0 H,:,2114-2,0 1 1 1 0 7 F F H,表示可以任选值,在这里我们均选,0,。,【,思考,】,从以上地址分析可知,此存储器的地址范围是,0000H-07FFH,。如果系统规定存储器的地址范围从,0800H,开始,并要连续存放,对以上硬件连线图该如何改动呢?,由于低位地址仍从,0,开始,因此低位地址仍直接接至芯片组。于是,要改动的是译码器和高位地址的连接。我们可以将两个芯片组的片选输入端分别接至译码器的,Y2,和,Y3,输出端,即当,A11,、,A10,为,10,时,选中,2114-1,,则该芯片组的地址范围为,0800H-0BFFH,,而当,A11,、,A10,为,11,时,选中,2114-2,,则该芯片组的地址范围为,0C00H-0FFFH,。同时,保证高位地址为,0,(即,A15-A12,为,0,)。这样,此存储器的地址范围就是,0800H-0FFFH,了。(具体连线自己考虑),以上例子所采用的片选控制的译码方式称为全译码方式,这种译码电路较复杂,但是,由此选中的每一组的地址是确定且唯一的。有时,为方便起见,也可以直接用高位地址(如,A10,A15,中的任一位)来控制片选端。例如用,A10,来控制,如图,5-19,所示。,图,5-19,线选法示例,粗看起来,这两组的地址分配与全译码时相同,但是当用,Al0,这一个信号作为片选控制时,只要,Al0,0,,,A11,A15,可为任意值都选中第一组;而只要,A10,1,,,All,A15,可为任意值都选中第二组。这种选片控制方式称为线选法。,线选法节省译码电路,设计简单,但必须注意此时芯片的地 图,5-19,线选法示例,址分布以及各自的地址重叠区,以免出现错误。,【,例,4】,一个存储器系统包括,2K RAM,和,8K ROM,,分别用,1K4,的,2114,芯片和,2K8,的,2716,芯片组成。要求,ROM,的地址从,1000H,开始,,RAM,的地址从,3000H,开始。完成硬件连线及相应的地址分配表。,图,5-20 2K RAM,和,8K ROM,存储器系统连线图,【,分析,】,:,整个存储器的硬件连线如图,4-20,所示。,根据硬件连线图,我们可以分析出该存储器的地址分配范围如下。(假设只考虑,16,位地址),地 址 码 芯片的地址范围 对应芯片编号,A15 A14 A13 A12 A11 A10 A9 .A0,0 0 0 1 0 0 0 0 1 0 0 0 H,:,2716-1,0 0 0 1 0 1 1 1 1 7 F F H,0 0 0 1 1 0 0 0 1 8 0 0 H,:,2716-2,0 0 0 1 1 1 1 1 1 F F F H,0 0 1 0 0 0 0 0 2 0 0 0 H,:,2716-3,0 0 1 0 0 1 1 1 2 7 F F H,0 0 1 0 1 0 0 0 2 8 0 0 H,:,2716-4,0 0 1 0 1 1 1 1 2 F F F H,0 0 1 1 0 0 0 0 3 0 0 0 H,:,2114-1,0 0 1 1 0 0 1 1 3 3 F F H,0 0 1 1 1 0 0 0 3 8 0 0 H,:,2114-2,0 0 1 1 1 0 1 1 3 B F F H,【,习题与思考,】,画出容量为,2K*8,的,RAM,连接图(,CPU,用,8088,,,RAM,用,2114,,,RAM,地址区为,0800H0FFFH,)。,试画出容量为,8K*8,的,ROM,连接图(,CPU,用,8086,,,EPROM,用,2716,,,ROM,地址区从,4000H,开始)。,一台,8,位微机系统(,CPU,为,8088,)需扩展内存,16K,,其中,ROM,为,8K,,,RAM,为,8K,。,ROM,选用,EPROM2716,,,RAM,选用,2114,,地址空间从,0000H,开始,要求,ROM,在低地址,,RAM,在高地址。试画出存储器组构图,并写出各芯片的存储分配范围。,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服