您好,欢迎访问三七文档
第5章存储器系统设计5.1MCS-51存储器系统配置5.2程序存储器扩展设计5.3数据存储器扩展设计AT89S51单片机内部功能模块8051的存储器结构8051的存储器结构与常见的微型计算机的配置方式不同,它把程序存储器和数据存储器分开,有各自的寻址系统、控制信号和功能。8051的存储器在物理结构上分为片内数据存储器、片内程序存储器、片外数据存储器和片外程序存储器4个存储空间。但从用户使用的角度看,8051的存储器分为3个逻辑空间。5.1MCS-51存储器系统配置5.1.1程序存贮器8031单片机,程序存贮器需外接,一般用EPROM/Flash芯片,且引脚接地。地址范围:0000H~FFFFH,64KB89C51单片机,内部有4KBFlash存贮器,地址为0000H~0FFFH,引脚接VCC。外部可扩展60KB:地址为1000H~FFFFH5.1.2数据存贮器RAM51系列:片内128字节RAM:地址00H~7FH;地址80H~FFH,为专用寄存器SFR(20个)。一般情况下,此128字节RAM已够用。若不够可外接RAM芯片,按地址总线的寻址范围0000H~FFFFH,最大可64KB。EAEA0000H7FH00H80HFFH0FFFH0FFFH0000H0000HEA0FFFFHSFRRAMEA1ROM4KBFFFFH64KBROMRAM64KB(I/O)RAM片内存储器1000H片外扩展存储器片内外统一寻址的64KB程序存储器空间,地址范围为0000H~FFFFH。64KB的片外数据存储器空间,地址范围也为0000H~FFFFH。256B的片内数据存储器空间,地址范围为00H~FFH。5.1.3MCS-51系统扩展功能单片机三总线结构当单片机最小系统不能满足系统功能的要求时,需要进行扩展,将单片机的外部连线变为一般的微机3总线结构形式。对于MCS-51系列单片机,其3总线由下列通道口的引线组成:(1)地址总线AB:由P2口提供高8位地址线,此口具有输出锁存的功能。P0口提供低8位地址,由ALE信号指示。(2)数据总线DB:由P0口提供。(3)控制总线:扩展系统时常用的控制信号为:ALE—地址锁存信号,用以实现对低8位地址的锁存。—程序存储器取指信号(或执行MOVCA,@A+PC/DPTR时)—片外数据存储器读信号(执行MOVXA,@Ri/DPTR时)-片外数据存储器写信号(执行MOVX@Ri/DPTR,A时)PSENRDWR系统扩展的内容:1.外部程序存储器的扩展;2.外部数据存储器的扩展;3.I/O接口的扩展;4.其他专用功能部件的扩展。MCS-51单片机内部虽然集成了储存器、I/O口、定时器/计数器等硬件资源,但它们的容量比较小,资源有限。为了满足各种复杂的应用系统的要求,常常需要单片机外部扩展存储器和各种功能的器件。5.2程序存贮器扩展设计8031是片内无程序存储器的单片机芯片,因此,8031的最小应用系统应在片外扩展EPROM。当程序量超过单片机的片内程序存储器时,将采用片外扩展程序存储器,通常采用EPROM、E2PROM、Flash存储器等芯片。5.2程序存贮器扩展设计一、程序存储器扩展的基本方法1.地址线的连接P0口(P0.0~P0.7)经锁存器接存储器低8位地址线(A0~A7)。P2口(P2.0—P2.7)与存储器高8位地址线(A8~A15)相连接.2.数据线的连接P0口与存储器的8位数据线(D0~D7)相连接。3.控制线的连接/PSEN接存储器的允许输出信号/OEALE接地址锁存器锁存信号G。4.片选信号的连接与地址译码当芯片的三组总线连接完后,将地址总线剩下的高位地址线作为片选信号,一般片选信号的产生有三种方法即:线选法、部分译码法、全译码法等。5.2程序存贮器扩展设计5.2.1外部程序存贮器操作时序5.2.2常用芯片介绍1.常用的EPROM用得较多的是2764(8K×8位)或27128(16K×8位)芯片。为28Pin双列直插式封装。A12~A0:13位地址线。D7~D0:8位数据线。:片选信号,低电平有效。:输出允许信号,低电平有效VPP:编程电源,编程时加12V;使用时,加+5V。NC为空脚/27128为A13。2764271282764/27128的功能表*27128的引脚与2764兼容,仅Pin26(NC)为地址线A13*擦除:用紫外线照射10分钟左右后,每个单元均为FFH*编程(即代码的写入):需专门的编程器CEOED7~D000输出(由A12/A13~A0的编码所确定的单元)1X高阻状态2.常用的地址锁存器P0口是数据/地址低8位的复用口,分时工作。利用ALE信号,用D锁存器可将地址分离出来,常用的是:74LS373──8D锁存器。1D1Q’┋┋8D8Q’GE1Q┋8Q74LS373的结构示意图74LS373的功能表EGDiQi1XX高阻010/1Qi=Di00X保持(Qi=原值)1D1Q┋┋8D8QGEP0.0┋P0.7ALEA0┋A774LS373用作地址锁存器的接法3.常用的地址译码器74LS(HC、F)138:3—8译码器,74LS139:双2—4译码器。(1)引脚图译码器引脚图74LS138:为控制端,A、B、C为输入端,Y0~Y7为输出端,低有效。当=100时才能进行译码输出,否则8个输出端Y0~Y7全为1。译码输入端与输出端之间的译码关系见表5-6(P.158)G2AG1,,G2BG2AG1,,G2BCBAY0Y1Y2Y3Y4Y5Y6Y7000011111110011011111101011011111011111011111001111011110111111011110111111011111111111074LS139:一个芯片上有2个独立的2-4译码器。译码器的控制端G为低电平时才能进行译码输出,否则其4个输出端Y0~Y3全为1。GBAY0Y1Y2Y300001110011011010110101111101XX111174LS139的真值表5.2.3程序存贮器扩展设计存储器扩展的核心问题是存储器的编址。所谓编址就是给存储单元分配地址。由于存储器可由多片芯片组成,因此存储器的编址分为两个层次:即存储器芯片的选择和存储器芯片内部存储单元的选择。要点:存储器芯片的地址线与单片机的对应地址线相接,存储器芯片的数据线与单片机对应的数据线相接,存储器芯片的端接单片机的。余下的是片选端怎样接,即地址译码问题:1.线选法直接将系统地址线作为存储器芯片的片选信号,即把剩余的高位地址线与存储器芯片的片选端直接相连即可。2.译码法使用地址译码器对系统剩余的高位地址线进行译码,以其译码输出作为存储器芯片的片选信号。译码法又分为完全译码和部分译码两种。(1)完全译码:地址译码器使用了剩余的全部高位地址线,1个存储单元只占用1个唯一的地址。(2)部分译码:地址译码器使用了剩余的部分高位地址线,1个存储单元可占用了几个地址。下面用例子进行说明。CEOEPSEN1.典型EPROM扩展电路Intel的通用EPROM不同型号芯片由于其管脚有一定的兼容性,它们在单片机系统扩展中常常被采用。EPROM扩展的典型产品有:2716(2KB)、2732(4KB)、2764(8KB)、27128(16KB)、27256(32KB)、27512(64KB),它们的主要差别只是地址线的增减。程序存储器扩展实例分析EPROM管脚功能:1)A0~A15地址线。2764(A0~A12),27128(A0~A13),27256(A0~A14);2)CE芯片使能信号3)OE/VPP输出使能信号/编程电压4)PGM编程脉冲输入端5)O0~O7数据线例1:用一片27128扩展的16K字节单片机程序存储器。扩展一片程序存储器时,片选信号CS可直接接地,也可接A14或A15,既采用线选法。一旦片选确定则存储单元的地址信号就确定了,线选法时存储器的地址不是唯一的27128的A0~A13——接地址总线A0~A13OE——接PSENO0~O7——接D0~D7地址锁存器的G——ALEOC——直接接地由于EPROM没有加密功能,不利于应用软件的保密。为了用户的应用程序不被他人拷贝,可采用带有片内程序存储器的单片机芯片。采用线选法时,存储器的地址不是唯一的,存在地址重叠现象。27128的地址范围:0000H~3FFFH或4000H~7FFFH因为P2.6(A14)未用,其状态为“0”或为“1”均可。0/10/1┉┉┉┉┉┉┉┉┉0/10/10/1X0A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0确定27128芯片的地址范围:方法是A13~A0从全0开始,然后从最低位开始依次加1,最后变为全1,相当于214=16384(16KB)个单元地址依次选通。A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A00000000000000000地址:0000H00000000000000010001H00000000000000100002H00000000000000110003H00000000000001000004H┇┇┇┇┇┇┇┇┇┇00111111111111113FFFH2.E2PROM扩展电路扩展2864电路如图2864是8K字节的E2PROM,说明:图中的2864既是程序存储器又是数据存储器,这时程序和数据存储器要统一编址。27128的A0~A12——接地址总线A0~A12OE——单片机的RD、PSEN通过与门输入WE——接WRO0~O7——接D0~D7地址范围:0000H~1FFFH或4000H~5FFFH或8000H~9FFFH或C000H~DFFFH因为P2.6(A15),P2.5(A14)未用,其状态为“00/01/10/11”均可。3.扩展24KBEPROM(用3片2764芯片)采用部分译码方式因为P2.7未用,所以地址有重叠。若将P2.7接译码器LS139的2G端,则U0~U2的地址范围均是惟一的(无地址重叠)。0000~1FFFH/8000H~9FFFH2000H~3FFFH/A000H~BFFFH4000H~5FFFH/C000H~DFFFHLS3732764276427644.扩展64KBEPROM(用8片2764芯片)全地址译码方式片选8:E000H~FFFFH片选7:C000H~DFFFH片选6:A000H~BFFFH片选5:8000H~9FFFH片选4:6000H~7FFFH片选3:4000H~5FFFH片选2:2000H~3FFFH片选1:0000H~1FFFH*地址是连续的*通常利用译码器的输出来选择其它扩展芯片,如RAM、I/0接口、A/D、D/A等。对于程序存贮器(EPROM)有各种容量的芯片。选择所需容量1片即可。所占电路板的面积小,价格相对多片组合要便宜。如:27128(16Kx8),27256(32Kx8),27512(64Kx8),29F010(128Kx8)…。5.3.数据存贮器扩展设计若内部RAM不够用(如采集较多的数据),可以外接RAM芯片。1.RAM与EPROM的地址区是重迭的,最大范围均为64K。其区分是指令不一样:MOVX,MOVC。从控制信号看,访问RAM使用或引脚信号,访问EPROM时使用引脚信号,它们不会同时有效。*外部数据存贮器操作时序见P.162图5-102.静态RAM6264简介在单片机系统中常用的数据存储器是静态随机存储器(SRAM),其典型的芯片有6264(8K×8位)、62256(32K×8位)。6264是8K×8位的静态数据存储器芯片,采用CMOS工艺制造,28Pin双列直插式封装,其引脚图如图所示。RDWRPSEN静态RAM6264的引脚图I/O7~I/O0读001数据输出写010数据输入1XX高阻CEOEWE表5-96264的工作方式(CS1=1)RAM管脚(6264):1)A0~A15地址线。6264(A0~A12),62256(A0~A
本文标题:5存储器系统设计
链接地址:https://www.777doc.com/doc-3153897 .html