《扩展存储器》PPT课件.ppt
《《扩展存储器》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《扩展存储器》PPT课件.ppt(113页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第8 8章章 AT89S51AT89S51单片机单片机 外部存储器的扩展外部存储器的扩展12第第8章章目目录8.1系系统扩展展结构构8.2地址空地址空间分配和外部地址分配和外部地址锁存器存器8.2.1存储器地址空间分配8.2.2外部地址锁存器8.3程序存程序存储器器EPROM的的扩展展8.3.1常用的EPROM芯片8.3.2程序存储器的操作时序8.3.3AT89S51单片机与EPROM的接口电路设计8.4静静态数据存数据存储器器RAM的的扩展展8.4.1常用的静态RAM(SRAM)芯片8.4.2外扩数据存储器的读写操作时序8.4.3AT89S51单片机与RAM的接口电路设计8.5EPROM和
2、和RAM的的综合合扩展展8.5.1综合扩展的硬件接口电路8.5.2外扩存储器电路的工作原理及软件设计8.6E2PROM的的扩展展8.6.1并行E2PROM芯片简介8.6.2E2PROM的工作方式8.6.3AT89S51单片机扩展E2PROMAT2864的设计8.7片内片内Flash存存储器的器的编程程8.7.1通用编程器编程8.7.2ISP编程3内容概要内容概要许多情况,片内的存储器资源还不能满足需要存储器资源还不能满足需要,为此需AT89S51单片机进行外部程序存储器和外部数据存储器的扩展。由于有时需要扩展多片芯片,首先介绍AT89S51单片机的两个外部存储器空间的地址分配的两个外部存储器空
3、间的地址分配的两种方法两种方法,即线选法线选法和译译码法码法。最后介绍扩展外部程序存储器和外部数据存储器的具体设计。48.1系统扩展结构系统扩展结构AT89S51单片机采用总线结构,使扩展易于实现,AT89S51单片机系统扩展结构如图图8-1所示。图图8-1AT89S51单片机的系统扩展结构单片机的系统扩展结构5由图8-1可以看出,系统扩展系统扩展主要包括存储器扩展存储器扩展和I/O接口部件扩展接口部件扩展。AT89S51单片机的存储器扩展即包括程序存储器扩展程序存储器扩展又包括数据存储器扩展数据存储器扩展。AT89S51单片机采用程序存储器空间和数据存储器空间截然分开的哈佛结构。扩展后,系统
4、形成了两个并行的外部存储器空间两个并行的外部存储器空间。系统扩展是以AT89S51为核心,通过总线把单片机与各扩展部件连接起来。因此,要进行系统扩展首先要构造首先要构造系系统总线统总线。系统总线按功能通常分为3组,如图8-1所示。6(1)地址总线)地址总线(AddressBus,AB):用于传送单片机发发出的地址信号出的地址信号,以便进行存储单元和I/O接口芯片中的寄存器单元的选择。(2)数据总线)数据总线(DataBus,DB):用于单片机与外部存储器之间或与I/O接口之间传送数据,数据总线是双向的双向的。(3)控制总线)控制总线(ControlBus,CB):控制总线是单片机发出的各种控制
5、信号线。7如何来构造系统的三总线。1P0口作为低口作为低8位地址位地址/数据总线数据总线AT89S51受引脚数目限制,P0口口既用作低8位地址总线,又用作数据总线(分时复用),因此需增加一个增加一个8位地址锁存位地址锁存器器。AT89S51访问外部扩展的存储器单元或I/O接口寄存器时,先发出低先发出低8位地址位地址送地址锁存器锁存,锁存器输出作为系统的低8位地址(A7A0)。随后,P0口又作为数据总线口又作为数据总线口(D7D0),如图图8-2所示所示。2P2口的口线作为高位地址线口的口线作为高位地址线P2口用作系统的高高8位地址线位地址线,再加上地址锁存器提供的低8位地址,便形成了系统完整的
6、16位地址总线。8使单片机系统的寻址范围达到64KB。9图图8-2AT89C51单片机扩展的片外三总线单片机扩展的片外三总线3控制信号线控制信号线除地址线和数据线外,还要有系统的控制总线。这些信号有的就是单片机引脚的第一功能信号,有的则是P3口第二功能信号。包括:(1)作为外扩程序存储器外扩程序存储器的读选通读选通控制信号。(2)和和为外扩数据存储器外扩数据存储器和I/O的读、写选通控制信号。(3)ALE作为P0口发出的低8位地址锁存控制信号。(4)为片内、片外程序存储器的选择控制信号。可见,AT89S51的4个并行I/O口,由于系统扩展的需要,真正作为数字真正作为数字I/O用,就剩下用,就剩
7、下P1和和P3的部分口线的部分口线了。108.2地址空间分配和外部地址锁存器地址空间分配和外部地址锁存器本节讨论如何进行存储器空间的如何进行存储器空间的地址分配地址分配,并介绍用于输出低8位地址的常用的地址锁存器地址锁存器。8.2.1存储器地址空间分配存储器地址空间分配实际系统设计中,既需要扩展程序存储器,又需要扩展数据存储器,如何把片外的两个如何把片外的两个64KB地址空间分配给地址空间分配给各个程序存储器、数据存储器芯片,各个程序存储器、数据存储器芯片,使一个存储单元只对一个存储单元只对应一个地址应一个地址,避免单片机发出一个地址时,同时访问两个单元,发生数据冲突。这就是存储器地址空间分配
8、问题地址空间分配问题。11AT89S51单片机发出的单片机发出的地址码地址码用于选择某个存储器单元用于选择某个存储器单元,外扩多片存储器芯片中,单片机必须进行,外扩多片存储器芯片中,单片机必须进行两种选择两种选择:一一是是选中该存储器芯片,这称为选中该存储器芯片,这称为“片选片选”,未被选中的芯片未被选中的芯片不能被访问。不能被访问。二是二是在在“片选片选”的基础上再根据单片机发出的基础上再根据单片机发出的地址码来对的地址码来对“选中选中”芯片的某一单元进行访问,即芯片的某一单元进行访问,即“单单元选择元选择”。为实现片选,存储器芯片都有为实现片选,存储器芯片都有片选引脚片选引脚。同时也都有多
9、。同时也都有多条条地址线引脚地址线引脚,以便进行单元选择。,以便进行单元选择。注意,注意,“片选片选”和和“单元选择单元选择”都是单片机通过地址线一次发出的地址信号来都是单片机通过地址线一次发出的地址信号来完成选择完成选择。通常把单片机系统的地址线笼统地分为通常把单片机系统的地址线笼统地分为低位地址线低位地址线和和高高12位地址线位地址线,“片选片选”都是使用都是使用高位地址线高位地址线。实际上,。实际上,16条地条地址线中的高、低位地址线的数目并不是固定的,只是习惯址线中的高、低位地址线的数目并不是固定的,只是习惯上把用于上把用于“单元选择单元选择”的地址线,都称为低位地址线,其的地址线,都
10、称为低位地址线,其余的为高位地址线。余的为高位地址线。常用的存储器地址空间常用的存储器地址空间分配方法有分配方法有两种两种:线性选择法线性选择法(简称(简称线选法)和线选法)和地址译码法地址译码法(简称译码法),下面介绍。(简称译码法),下面介绍。1线选法线选法是直接利用系统的是直接利用系统的某一高位地址线某一高位地址线作为存储器芯片(或作为存储器芯片(或I/O接接口芯片)的口芯片)的“片选片选”控制信号。为此,只需要把用到的控制信号。为此,只需要把用到的高高位地址线与存储器芯片的位地址线与存储器芯片的“片选片选”端直接连接端直接连接即可。即可。13线选法优点线选法优点是电路简单,不需要另外增
11、加地址译码器硬是电路简单,不需要另外增加地址译码器硬件电路,体积小,成本低。件电路,体积小,成本低。缺点缺点是可寻址的是可寻址的芯片数目受到芯片数目受到限制限制。另外,。另外,地址空间不连续地址空间不连续,每个存储单元的地址不唯,每个存储单元的地址不唯一,这会给程序设计带来不便,只一,这会给程序设计带来不便,只适用于外扩芯片数目不适用于外扩芯片数目不多的单片机系统的存储器扩展多的单片机系统的存储器扩展。2译码法译码法使用译码器对使用译码器对AT89S51单片机的单片机的高位地址进行译码高位地址进行译码,译译码输出码输出作为存储器芯片的作为存储器芯片的片选信号片选信号。这种方法能够。这种方法能够
12、有效地有效地利用存储器空间,利用存储器空间,适用于适用于多芯片的存储器扩展多芯片的存储器扩展。常用的译常用的译码器芯片码器芯片有有74LS138(3线线-8线线译码器)、译码器)、74LS139(双(双2线线-4线线译码器)和译码器)和74LS154(4线线-16线线译码器)。译码器)。14若全部高位地址线都参加译码,称为若全部高位地址线都参加译码,称为全译码全译码;若仅部分;若仅部分高位地址线参加译码,称为高位地址线参加译码,称为部分译码部分译码。部分译码存在着部。部分译码存在着部分存储器地址空间相重叠的情况。分存储器地址空间相重叠的情况。下面介绍下面介绍常用的译码器芯片常用的译码器芯片。(
13、1)74LS1383线线-8线线译码器,有译码器,有3个数据输入端个数据输入端,经,经译码产生译码产生8种状种状态态。引脚如。引脚如图图8-3所示所示,真值表见,真值表见表表8-1。由。由表表8-1可可见,见,当译码器的输入为某一固定编码时,其当译码器的输入为某一固定编码时,其输出仅有一个固定输出仅有一个固定的引脚输出为低电平的引脚输出为低电平,其余的为高电平其余的为高电平。输出为低电平的。输出为低电平的引脚就作为某一存储器芯片的片选信号。引脚就作为某一存储器芯片的片选信号。1516(2)74LS139双双2线线-4线线译码器译码器。这两个译码器完全独立,分别有各自的数据输入端、译码状态输出端
14、以及数据输入允许端,其引脚如图8-4所示所示,真值表见表8-2(只给出其中一组)。图图8-374LS138引脚图引脚图图图8-474LS139引脚图引脚图1718以74LS138为例,如何进行地址分配。例如,例如,要扩扩8片片8KB的RAM6264,如何通过74LS138把64KB空间分配给各个芯片?由74LS138真值表可知,把G1接到+5V,、接地,、(高3位地址线)分别接74LS138的C、B、A端,由于对高3位地址译码,这样译码器有8个输出,分别接到8片6264的各各“片选片选”端端,实现8选1的片选。低低13位地址位地址(,)完成对选中的6264芯片中的各个存储单元的“单元选择”。这
15、样就把64KB存储器空间分成8个8KB空间了。1964KB地址空间分配地址空间分配如图图8-5所示所示。图图8-564KB地址空间划分成地址空间划分成8个个8KB空间空间这里采用全地址译码全地址译码方式。因此,AT89S51发出16位地址时,每次只能选中某一芯片及该芯片的一个存储单元20如何用如何用74LS138把把64KB空间全部划分为空间全部划分为4KB的块呢?4KB空间需12条地址线,而译码器输入只有3条地址线(),没有参加译码,没有参加译码,发出的0或1决定选择64KB存储器空间的前前32KB还是后后32KB,由于没有参加译码没有参加译码,就不不是全译码方式是全译码方式,前后两个32K
16、B空间就重叠了。那么,这这32KB空间利用空间利用74LS138译码器可划分为译码器可划分为8个个4KB空间空间。如果把通过一个非门与74LS138译码器G1端连接起来,如图8-6所示所示,就不会发生两个32KB空间重叠的问题了。这时,选中的是选中的是64KB空间的前空间的前32KB空间空间,地址范21围为0000H7FFFH。如果去掉图8-6中的非门,地址范围为8000HFFFFH。把译码器的输出连到各个4KB存储器的片选端,这样就把32KB空间划分为8个4KB空间。,实现“单元选择”,通过74LS138译码实现对各存储器芯片的片选。采用译码器划分的地址空间块都是地址空间块都是相等相等的,如
17、果将地址空间块划分为不等的块,可采用可编程逻辑器件可编程逻辑器件FPGA对其编程来代替译码器进行非线性译码。22图图8-6存储器空间被划分成每块存储器空间被划分成每块4KB238.2.2外部地址锁存器外部地址锁存器受引脚数的限制,P0口兼用数据线和低8位地址线,为了将它们分离出来,需在单片机外部增加地址锁存器。目前,常用的地址锁存器芯片有74LS373、74LS573等。1锁存器锁存器74LS373是一种带三态门的8D锁存器,其引脚如图8-7所示所示,内部结构如图8-8所示所示。AT89S51与74LS373锁存器的连接如图8-9所示。2425图8-7锁存器存器74LS373的引脚的引脚图图8
18、-874LS373的内部结构的内部结构2627图8-9AT89S51单片机片机P0口与口与74LS373的的连接接引脚说明:nD7D0:8位数据输入线,nQ7Q0:8位数据输出线。nG:数据输入锁存选通信号。当加到该引脚的信号为高电平时,外部数据选通到内部锁存器,负跳变时,数据锁存到锁存器中。n:数据输出允许信号,低电平有效。当该信号为低电平时,三态门打开,锁存器中数据输出到数据输出线。当该信号为高电平时,输出线为高阻态。74LS373锁存器功能如表表8-3。2829图8-10锁存器存器74LS573的引脚的引脚2锁存器锁存器74LS573也是一种带有三态门的8D锁存器,功能及内部结构与与74
19、LS373完全一样完全一样,只是其引脚排列与74LS373不同,图8-10为74LS573引脚图。由图8-10,与74LS373相比,74LS573的的输入输入D端端和和输输出出Q端端依次排列在芯片两侧依次排列在芯片两侧,为绘制印制电路板提供方便引脚说明:nD7D0:8位数据输入线。nQ7Q0:8位数据输出线。nG:数据输入锁存选通信号,该引脚与74LS373的G端功能相同。30n:数据输出允许信号,低电平有效。当该信号为低电平时,三态门打开,锁存器中数据输出到数据输出线。当该信号为高电平时,输出线为高阻态。8.3程序存储器程序存储器EPROM的扩展的扩展程序存储器采用只读存储器,因为这种存储
20、器在电源关断后,仍能保存程序(我们称此特性为非易失性非易失性的),在系统上电后,CPU可取出这些指令重新执行。31只读存储器简称ROM(ReadOnlyMemory)。ROM中的信息一旦写入,就不能随意更改,特别是不能在程序运行过程中写入新的内容,故称为只读存储器。向ROM中写入信息写入信息称为ROM编程编程。根据编程方式不同,分为以下几种分为以下几种。(1)掩模)掩模ROM。在制造过程中编程,是以掩模工艺实现的,因此称为掩模ROM。这种芯片存储结构简单,集成度高,但由于掩模工艺成本较高掩模工艺成本较高,因此只适合于大批量只适合于大批量生产生产。32(2)可编程)可编程ROM(PROM)。芯片
21、出厂时没有任何程序信息,用独立的编程器写入。但PROM只能写一次,只能写一次,写入内容后,就不能再修改。(3)EPROM。用紫外线擦除紫外线擦除,用电信号编程电信号编程。在芯片外壳的中间位置有一个圆形窗口,对该窗口照射紫外线照射紫外线就可擦除原有的信息可擦除原有的信息。使用编程器编程器可将调试完毕的程序写入。(4)E2PROM(EEPROM)。一种用电信号编程电信号编程,也用电信号擦除电信号擦除的ROM芯片。对E2PROM的读写操作与RAM存储器几乎没有什么差别,只是写入的速度慢一些写入的速度慢一些,但断电后仍能保存信息。33(5)FlashROM。又称闪速存储器(简称闪存),是在EPROM、
22、E2PROM的基础上发展起来的一种电擦除型只读存储器。特点是可快速在线修改其存储单元中的数据,改写次数可达1万次,其读写速度很快读写速度很快,存取时间存取时间可达70ns,而成本成本比比E2PROM低得多低得多,大有取代E2PROM的趋势。目前许多公司生产的8051内核的单片机,在芯片内部大多集成了数量不等的FlashROM。例如,美国ATMEL公司产品AT89C5x/AT89S5x,片内有不同容量的FlashROM。在片内的FlashROM满足要求下,扩展外部程序存储器可省去。348.3.1常用的常用的EPROM芯片芯片使用较多的是并行EPROM,首先介绍常用EPROM芯片。EPROM的典型
23、芯片是典型芯片是27系列产品系列产品,例如,2764(8KB)、27128(16KB)、27256(32KB)、27512(64KB)。型号“27”后面的数字表示其位存储容量。如果换算成字节容量,只需将该数字除以8即可。例如,例如,“27128”中的“27”后的数字“128”,128/8=16KB随着大规模集成电路技术的发展,大容量存储器芯片产量剧增,售价不断下降,性价比明显增高,且由于小容量小容量芯片停止生产芯片停止生产,使市场某些小容量芯片价格反而比大容量某些小容量芯片价格反而比大容量芯片还贵芯片还贵。所以,应尽量采用大容量芯片。351常用常用EPROM芯片引脚芯片引脚27系列EPROM芯
24、片的引脚如图8-11。芯片引脚功能:nA0A15:地址线引脚。它的数目由芯片的存储容量决定,用于进行单元选择。nD7D0:数据线引脚。n:片选控制端。n:输出允许控制端。n:编程时,编程脉冲的输入端。36图8-11常用常用EPROM芯片引脚芯片引脚37nVPP:编程时,编程电压(+12V或+25V)输入端。nVCC:+5V,芯片的工作电压。nGND:数字地。nNC:无用端。表8-4为27系列EPROM芯片的技术参数,其中VCC是芯片供电电压,VPP是编程电压,Im为最大静态电流,Is为维持电流,TRM为最大读出时间。38392EPROM芯片的工作方式芯片的工作方式5种工作方式,由、信号的组合确
25、定。5种工作方式如表表8-5。40(1)读出方式。)读出方式。工作在该方式的条件是使片选控制线为低电平,同时让输出允许控制线为低电平,VPP为+5V,就可把指定地址单元的内容从D7D0上读出。(2)未选中方式)未选中方式。当片选控制线为高电平时,芯片未选中方式,数据输出为高阻抗悬浮状态高阻抗悬浮状态,不占用数据总线。EPROM处于低功耗的维持状态。(3)编程方式。)编程方式。在VPP端加上规定好的高压高压,和端加上合适的电平(不同芯片要求不同),能将数据写入到指定地址单元。编程地址编程地址和编程数据编程数据分别由系统的A15A0和D7D0提供。41(4)编程校验方式。)编程校验方式。VPP端保
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 扩展存储器 扩展 存储器 PPT 课件
限制150内