《最新单片微机原理及应用课件第6章单片机存储器及系统扩展技术精品课件.ppt》由会员分享,可在线阅读,更多相关《最新单片微机原理及应用课件第6章单片机存储器及系统扩展技术精品课件.ppt(46页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 6.1 6.1 半导体半导体存储器的分类存储器的分类 一、一、半导体半导体存储器的分类存储器的分类 1 1、 只读存储器(只读存储器(ROMROM)(1 1) 掩膜工艺掩膜工艺ROMROM(2 2)可一次性编程)可一次性编程ROMROM(PROMPROM)(3 3)紫外线擦除可改写)紫外线擦除可改写ROMROM(EPROMEPROM)(4 4)电擦除可改写)电擦除可改写ROMROM(EEPROMEEPROM或或E E2 2PROMPROM)(5 5)快擦写)快擦写ROMROM(flash ROMflash ROM)Intel公司的公司的27系列产品:系列产品:2716(2K)2732(4K)
2、2764(8K)27128(16K) 6116芯片的工作方式芯片的工作方式CEOEWE状态状态D7D0未选中未选中1XX高阻高阻禁止禁止011高阻高阻读出读出001数据读出数据读出写入写入010数据写入数据写入6.3 只读存储器(只读存储器(ROM)1、2716芯片的引脚图和内部结构图如芯片的引脚图和内部结构图如P110所示所示 该芯片的主要引脚为:该芯片的主要引脚为: A10A0 11根地址线,说明芯片的容量为根地址线,说明芯片的容量为 211 =2048=2K个单元。个单元。 D7D0 8根数据线根数据线 ,编程时,为输入线,用于写入信息;,编程时,为输入线,用于写入信息; 使用时,为输出
3、线,用来输出存储的信息。使用时,为输出线,用来输出存储的信息。 CE/PGM:为片选为片选/编程控制信号。运行时,作片选输入端;编程编程控制信号。运行时,作片选输入端;编程时,该端输入编程正脉冲信号。时,该端输入编程正脉冲信号。 OE:读信号,当它为低电平时,允许输出信号。(先烧芯片)读信号,当它为低电平时,允许输出信号。(先烧芯片) Vcc:工作电源工作电源,接接+5V。 Vpp:编程电源。编程时,接编程电源。编程时,接+25V;运行时,接;运行时,接+5V。2、2716芯片工作方式芯片工作方式 引 脚 方引 脚 方式式VccVppCEOED0D7读读+5V+5V低低输出未选中未选中+5V+
4、5VX高高阻等待等待+5V+5V高X高阻编程编程+5V+25V正脉冲高输入编程检查编程检查+5V+25V低低输出编程禁止编程禁止+5V+25V低高高阻6.4 CPU与存储器的连接与存储器的连接一、一、CPU与总线连接时应考虑的问题与总线连接时应考虑的问题1、 CPU总线的带负载能力总线的带负载能力 在较大的系统中,存储器的芯片较多时应加缓冲器或在较大的系统中,存储器的芯片较多时应加缓冲器或总线驱动器。总线驱动器。2、 CPU时序与存储器速度之间的配合时序与存储器速度之间的配合 CPU访问存储器的操作具有固定的时序,因此,存储访问存储器的操作具有固定的时序,因此,存储器的存取时间要与器的存取时间
5、要与CPU的读写时序相匹配。的读写时序相匹配。3、存储器的地址分配和片选信号的产生、存储器的地址分配和片选信号的产生 即如何找到所需的存储器单元。即如何找到所需的存储器单元。4、控制信号的连接、控制信号的连接 即考虑即考虑CPU与与RD、WE、CE和和PSEN等引脚的连接。等引脚的连接。二、存储器连接常用接口电路二、存储器连接常用接口电路1、总线缓冲器、总线缓冲器缓冲器主要用于缓冲器主要用于CPU总线的缓冲,以增加总线驱总线的缓冲,以增加总线驱动负载的能力。动负载的能力。2、地址锁存器、地址锁存器 常用的地址锁存器有带三态缓冲输出的常用的地址锁存器有带三态缓冲输出的74LS373,如图,如图P
6、115OE:为输出使能端。低电平时,锁存器输出;:为输出使能端。低电平时,锁存器输出; 高电平时,输出呈高阻态。高电平时,输出呈高阻态。G: 选通脉冲输入端。选通脉冲有效时,数据输选通脉冲输入端。选通脉冲有效时,数据输入入D0D7被锁存。被锁存。3、地址译码器、地址译码器 常用的译码芯片有:常用的译码芯片有:74LS139(双(双24译码器)和译码器)和74LS138(38译码器)等。译码器)等。1G2G1A1B2A2B1Y01Y21Y12Y01Y32Y12Y22Y3二四译码器Y0Y1Y2Y3Y4Y5Y6Y7G1G2AG2BABC三八译码器输入输出允许选择G1 G2 C B A Y0 Y1 Y
7、2 Y3 Y4 Y5 Y6 Y7 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 1 1 0 1 1 1 1 1 1 1 0 0 1 0 1 1 0 1 1 1 1 1 1 0 0 1 1 1 1 1 0 1 1 1 1 1 0 1 0 0 1 1 1 1 0 1 1 1 1 0 1 0 1 1 1 1 1 1 0 1 1 1 0 1 1 0 1 1 1 1 1 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 06.5 MCS-51存储器的扩展存储器的扩展系统扩展概述系统扩展概述单片机是
8、集单片机是集CPU、RAM、ROM、定时器、定时器/计数器计数器和和I/O接口电路于一片集成电路的微型计算机。对接口电路于一片集成电路的微型计算机。对于简单的应用场合,可以在于简单的应用场合,可以在MCS-51系列单片机中系列单片机中选择一个合适的产品构成一个具有最简单配置的选择一个合适的产品构成一个具有最简单配置的系统,即最小系统。系统,即最小系统。MCS-51系列中含有片内程序存储器的单片机系列中含有片内程序存储器的单片机如如8051/8751仅一块芯片就可构成最小系统,而无仅一块芯片就可构成最小系统,而无片内存储器的单片机如片内存储器的单片机如8031必须外部扩展程序存必须外部扩展程序存
9、储器才能构成最小系统。储器才能构成最小系统。图(图(a)为)为MCS51系列中系列中8051和和8751单片机的最小系统。单片机的最小系统。 图(图(b)为由)为由8031、8032单片机组成的最小系统。单片机组成的最小系统。P P2 2. .3 3| |P P2 2. .0 0A AL LE EP P0 0P PS SE EN N8 80 03 31 1E EA A7 74 4L LS S3 37 73 3地址锁存器高8位地址线低8位地址线8位数据线OECE2 27 73 32 2D D7 7| |D D0 0A A7 7| |A A0 0A A1 11 1| |A A8 880C5187C
10、51X XT TA AL L1 1X XT TA AL L2 2P P0 0P P1 1P P2 2P P3 3R RE ES SE ET T1 12 2M MH HZ Z2 22 2u uF F1 1K K2 20 00 08 88 88 88 82 20 0P PF F2 20 0P PF F+ +5 5V V图5.1 MCS-51系列最小化系统(a)(b) 为了使单片机能方便地与各种扩展芯片连接,应将单片机的外为了使单片机能方便地与各种扩展芯片连接,应将单片机的外部连接变为一般的微型机三总线结构形式。即地址总线、数据总线和部连接变为一般的微型机三总线结构形式。即地址总线、数据总线和控制总
11、线。对控制总线。对MCS51系列单片机,其三总线由下列通道口的引线系列单片机,其三总线由下列通道口的引线组成:组成: 地址总线:地址总线:由由P2口提供高口提供高8位地址线(位地址线(A8A15),由),由P0口提供口提供低低8位地址线。由于位地址线。由于P0口是地址、数据分时使用的通道口,所以为保口是地址、数据分时使用的通道口,所以为保存地址信息,需外加地址锁存器锁存低存地址信息,需外加地址锁存器锁存低8位的地址信息。一般都用位的地址信息。一般都用ALE正脉冲信号的下降沿控制锁存时刻。正脉冲信号的下降沿控制锁存时刻。 数据总线:数据总线:由由P0口提供。此口是双向、输入三态控制的通道口。口提
12、供。此口是双向、输入三态控制的通道口。 控制总线:控制总线:扩展系统时常用的控制信号为地址锁存信号扩展系统时常用的控制信号为地址锁存信号ALE,片外程序存储器取指信号片外程序存储器取指信号PSENPSEN以及数据存储器以及数据存储器RAM和外设接口共用和外设接口共用的读写控制信号的读写控制信号OEOE、WEWE等。等。 图为单片机扩展成三总线的结构图。扩展芯片与主机图为单片机扩展成三总线的结构图。扩展芯片与主机相连的方法同一般三总线结构的微处理机完全一样。相连的方法同一般三总线结构的微处理机完全一样。图为 单片机的三总线结构 P2ALEP0PSENRDWR8031EA74LS373地址锁存器A
13、8A15A0A7D0D7控制总线数字总线地址总线高八位地址总线低八位6.5.1 程序存储器的扩展程序存储器的扩展一、程序存储器的扩展方法及时序一、程序存储器的扩展方法及时序返回本章首页图为图为2764A EPROM 程序存储器的扩展电路程序存储器的扩展电路访问外部程序存储器时序操作时序如图所示,其操作过程如下。操作时序如图所示,其操作过程如下。 (1 1)在)在S S1 1P P2 2时刻产生时刻产生ALEALE信号。信号。 (2 2)由)由P P0 0、P P2 2口送出口送出1616位地址,由于位地址,由于P P0 0口送出的低口送出的低8 8位位地址只保持到地址只保持到S S2 2P P
14、2 2,所以要利用,所以要利用ALEALE的下降沿信号将的下降沿信号将P P0 0口送口送出的低出的低8 8位地址信号锁存到地址锁存器中。而位地址信号锁存到地址锁存器中。而P P2 2口送出的高口送出的高8 8位地址在整个读指令的过程中都有效,因此不需要对其进位地址在整个读指令的过程中都有效,因此不需要对其进行锁存。从行锁存。从S S2 2P P2 2起,起,ALEALE信号失效。信号失效。 (3 3)从)从S S3 3P P1 1开始,对外部程序存储器进行读操作,将开始,对外部程序存储器进行读操作,将选中的单元中的指令代码从选中的单元中的指令代码从P P0 0口读入,口读入,S S4 4P
15、P2 2时刻,失效。时刻,失效。 (4 4)从)从S S6 6P P1 1后开始第二次读入,过程与第一次相似。后开始第二次读入,过程与第一次相似。图图为为 MCS-51系列单片机访问外部程序存储器的时序图系列单片机访问外部程序存储器的时序图 P1P2P1P2P1P2P1P2P1P2P1P2S1S2S3S4S5S61个机器周期P1P2S1OSC时钟ALEPSENP2P0A8A15A8A15A8A15指令A0A7指令A0A7指令PCL输出有效输出有效PCL输出有效输出有效指令输入指令输入指令输入指令输入访问外部数据存储器时序(执行MOVX指令时)图图为为 MCS-51系列单片机访问外部数据存储器的
16、时序图系列单片机访问外部数据存储器的时序图 S1S2S3S4S5S6第1个机器周期S1S2S3S4S5S6第2个机器周期ALERDP2P0A15 A8A15 A8A15 A8A0A7指令地址数据A0A7PSENWR访问外部数据存储器的操作过程如下:访问外部数据存储器的操作过程如下: (1)从第)从第1次次ALE有效到第有效到第2次次ALE开始有效期间,开始有效期间,P0口送出外部口送出外部ROM单元的低单元的低8位地址,位地址,P2口送出外部口送出外部ROM单单元的高元的高8位地址,并在有效期间,读入外部位地址,并在有效期间,读入外部ROM单元中的单元中的指令代码指令代码。 (2)在第)在第2
17、次次ALE有效后,有效后,P0口送出外部口送出外部RAM单元的单元的低低8位地址,位地址,P2口送出外部口送出外部RAM单元高单元高8位地址。位地址。 (3)在第)在第2个机器周期,个机器周期,第第1次次ALE信号不再出现信号不再出现,此,此时失效,并在第时失效,并在第2个机器周期的个机器周期的S1P1时,时,RD/WRRD/WR信号开始有信号开始有效,从效,从P0口读入选中口读入选中RAM单元中的内容。单元中的内容。 二、程序存储器的扩展电路二、程序存储器的扩展电路27128A EPROM扩展电路(扩展电路(16K)EEPROM扩展电路(扩展电路(K)6.5.2 数据存储器的扩展数据存储器的
18、扩展一、数据存储器的扩展方法及时序一、数据存储器的扩展方法及时序返回本章首页图为图为6264 静态数据存储器的扩展电路静态数据存储器的扩展电路 数据存储器的扩展概述数据存储器的扩展概述 单片机与数据存储器的连接方法和程序存储器连接方法大致相单片机与数据存储器的连接方法和程序存储器连接方法大致相同,简述如下:同,简述如下: 1. 地址线的连接,与程序存储器连法相同。地址线的连接,与程序存储器连法相同。 2. 数据线的连接,与程序存储器连法相同。数据线的连接,与程序存储器连法相同。 3 .控制线的连接,主要有下列控制信号:控制线的连接,主要有下列控制信号: 存储器读信号存储器读信号OE和单片机读信
19、号和单片机读信号RD相连即和相连即和P3.7相连。相连。 存储器写信号存储器写信号WE和单片机写信号和单片机写信号WR相连即和相连即和P3.6相连。相连。 ALE:其连接方法与程序存储器相同。其连接方法与程序存储器相同。 使用时应注意,访问内部或外部数据存储器时,应分别使用使用时应注意,访问内部或外部数据存储器时,应分别使用MOV及及MOVX指令。指令。 外部数据存储器通常设置二个数据区:外部数据存储器通常设置二个数据区: (1) 低低8位地址线寻址的外部数据区。此区域寻址空间为位地址线寻址的外部数据区。此区域寻址空间为256个个字节。字节。CPU可以使用下列读写指令来访问此存贮区。可以使用下
20、列读写指令来访问此存贮区。 读存储器数据指令:读存储器数据指令:MOVXA,R 写存储器数据指令:写存储器数据指令:MOVXR,A由于由于8位寻址指令占字节少,程序运行速度快,所以经常采用。位寻址指令占字节少,程序运行速度快,所以经常采用。 (2) 16位地址线寻址的外部数据区。当外部位地址线寻址的外部数据区。当外部RAM容量较大,要容量较大,要访问访问RAM地址空间大于地址空间大于256个字节时,则要采用如下个字节时,则要采用如下16位寻址指令。位寻址指令。 读存储器数据指令:读存储器数据指令:MOVXA,DPTR 写存储器数据指令:写存储器数据指令:MOVXDPTR,A 由于由于DPTR为
21、为16位的地址指针,故可寻址位的地址指针,故可寻址64KRAM字节单元字节单元由于程序存储器的读控制信号由于程序存储器的读控制信号PSEN与数据存储器的与数据存储器的RD、WR控制信号控制信号是相互独立的,不会同时有效,固各自的是相互独立的,不会同时有效,固各自的64K地址空间是相互独立的。地址空间是相互独立的。时序图如时序图如P122所示所示二、存储器扩展的编址技术二、存储器扩展的编址技术1 、线选法线选法 所谓线选法,就是直接以系统的地址线(通常是未用所谓线选法,就是直接以系统的地址线(通常是未用的高位地址线的某一根的高位地址线的某一根P2.X)作为存储芯片的片选信号,)作为存储芯片的片选
22、信号,为此,只需把高位地址线与存储芯片的片选信号直接连接为此,只需把高位地址线与存储芯片的片选信号直接连接即可。特点是简单明了,不需增加另外电路。缺点是存储即可。特点是简单明了,不需增加另外电路。缺点是存储空间不连续。适用于小规模单片机系统的存储器扩展。空间不连续。适用于小规模单片机系统的存储器扩展。【例】现有例】现有2K*8位存储器芯片,需扩展位存储器芯片,需扩展8K*8位存位存储结构采用线选法进行扩展。储结构采用线选法进行扩展。 扩展扩展8KB的存储器结构需的存储器结构需2KB的存储器芯片的存储器芯片4块。块。2K的存储器所用的地址线为的存储器所用的地址线为A0A10共共11根根地址线和片
23、选信号与地址线和片选信号与CPU的连接如表所示。的连接如表所示。 表表5-1 80C51与存储器的线路连接与存储器的线路连接 80C51存储器存储器P0口经锁存器锁存形成口经锁存器锁存形成A0A7与与A0A7相连相连P2.0、P2.1、P2.2与与A8A10相连相连P0口口与与D0D7相连相连P2.3与存储器与存储器1的片选信号相的片选信号相连连P2.4与存储器与存储器2的片选信号相的片选信号相连连P2.5与存储器与存储器3的片选信号相的片选信号相连连P2.6与存储器与存储器3的片选信号相的片选信号相连连扩展存储器的硬件连接如图扩展存储器的硬件连接如图5.5所示。所示。 P2.2P2.1P2.
24、0ALEP0EA74LS373D0|D7A A7 7| |A A0 0A A7 7| |A A0 0A A7 7| |A A0 0A A7 7| |A A0 0D0|D7D0|D7D0|D7A10A9A8A10A9A8A10A9A8A10A9A8CE1CE2CE3CE4P2.6|P2.31 12 23 34 48 80 0C C5 51 1图为线选法连线图图为线选法连线图 这样得到四个芯片的地址分配如表这样得到四个芯片的地址分配如表5-2所示所示 表所示表所示为为 线选方式地址分配表线选方式地址分配表 A15A14A13A12A11A10 . A0地址范围芯片100111111000 . 01
25、 . 17000H-77FFH芯片200111100110 . 01 . 16800H-6FFFH芯片300110011110 . 01 . 15800H-5FFFH芯片400001111110 . 01 . 13800H3FFFH对于芯片对于芯片1A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A 0 0 X X X 0 0 0 0 ,0 0 0 0, 0 0 0 00 0 0 ,0 0 0 0, 0 0 0 0 0 X X X 0 1 1 1 , 1 1 1 1, 1 1 1 1 芯片之间的地址不连续,存储空间没有充分利用。此芯片之间的地址不连续,存储空间没有充分利
26、用。此外,有地址的重叠。所以用线选法实现片选,其存储单元外,有地址的重叠。所以用线选法实现片选,其存储单元地址不是唯一的。地址不是唯一的。如:如:0000H,1000H,2000H-7000H都对应于同一个单元。都对应于同一个单元。而我们希望在同一时刻只能选中一个单元。即每个单元的而我们希望在同一时刻只能选中一个单元。即每个单元的地址应该是唯一的。地址应该是唯一的。2. 译码法译码法 所谓译码法就是使用译码器对系统的高位地址进行所谓译码法就是使用译码器对系统的高位地址进行译码,以其译码输出作为存储芯片的片选信号。这是一译码,以其译码输出作为存储芯片的片选信号。这是一种最常用的存储器编址方法,能
27、有效地利用空间,种最常用的存储器编址方法,能有效地利用空间,特点特点是存储空间连续,适用于大容量多芯片存储器扩展。是存储空间连续,适用于大容量多芯片存储器扩展。 常用的译码芯片有:常用的译码芯片有:74LS139(双(双24译码器)和译码器)和74LS138(38译码器)等,它们的译码器)等,它们的CMOS型芯片分别型芯片分别是是74HC139和和74HC138。 1G2G1A1B2A2B1Y01Y21Y12Y01Y32Y12Y22Y3二四译码器Y0Y1Y2Y3Y4Y5Y6Y7G1G2AG2BABC三八译码器图图为为译码器管脚图译码器管脚图 【例【例5-2】现有】现有2K*8位存储器芯片,需扩
28、展位存储器芯片,需扩展8K*8位位存储结构采用译码法进行扩展。存储结构采用译码法进行扩展。 扩展扩展8KB的存储器结构需的存储器结构需2KB的存储器芯片的存储器芯片4块。块。2K的存储器所用的地址线为的存储器所用的地址线为A0A10共共11根地址线和片根地址线和片选信号与选信号与CPU的连接如表所示。的连接如表所示。 表表为为80C51与存储器的线路连接与存储器的线路连接 80C51存储器存储器P0口经锁存器锁存形成A0A7与A0A7相连P2.0、P2.1、P2.2与A8A10相连P0口与D0D7相连P2.4P2.3译码输出与存储器的片选信号连接00与存储器1的片选信号相连01与存储器2的片选
29、信号相连10与存储器3的片选信号相连11与存储器4的片选信号相连 P2.3、P2.4作为二作为二-四译码器的译码地址,译码输出作为四译码器的译码地址,译码输出作为扩展扩展4个存储器芯片的片选信号,个存储器芯片的片选信号,P2.5、P2.6、P2.7悬空。扩展悬空。扩展连线图如图连线图如图5.7所示。(部分译码法)所示。(部分译码法) 图图5.7 采用译码器扩展采用译码器扩展8KB存储器连线图存储器连线图 4A7|A0CECECECEA7|A0A7|A0A7|A0123BAY0Y1Y2Y374LS1391GA10A9A8A10A9A8A10A9A8A10A9A8P0口锁存输出P2.2P2.1P2
30、.0P2.4P2.3这样得到四个芯片的地址分配如表这样得到四个芯片的地址分配如表5-6所示。所示。 表表为为 译码方式地址分配表译码方式地址分配表 P2.7P2.6P2.5P2.4P2.3P2.2 . P0地址范围芯片100000000000 . 01 . 1 0000H-07FFH芯片20000000011 0 . 0 1 . 1 0800H-0FFFH芯片30000001100 0 . 0 1 . 1 1000H-17FFH芯片40000001111 0 . 0 1 . 1 1800H1FFFH全全译码:译码: 指除存储器芯片所用地址线与指除存储器芯片所用地址线与CPUCPU的地址线对应相
31、连的地址线对应相连外,未用的地址线全部参加译码,通过译码器的输出产生外,未用的地址线全部参加译码,通过译码器的输出产生存储器的片选信号。存储器的片选信号。 其特点是存储器地址没有重叠,存储单元地址是唯一其特点是存储器地址没有重叠,存储单元地址是唯一的。的。P124P124单片机单片机 8031P2.0P2.1P2.2A8A9A10ALERD74LS373G6264A7A6A5A4A3A2A1A0O0O1O2O3O4O5O6O7P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7OECEQ0Q1Q2Q3Q4Q5Q6Q7D0D1D2D3D4D5D6D7WEWRP2.7P2.3P2.4A
32、11A12存储器的地址范围是多少?存储器的地址范围是多少? 8031 8031 P2.7 P2.4 P2.0P2.7 P2.4 P2.0 P0.7 P0.0P0.7 P0.0 选中单元选中单元 6264 CE 6264 CE A12 A11 A8A12 A11 A8 A7 A6 A5 A4 A3 A2 A1 A0) A7 A6 A5 A4 A3 A2 A1 A0) 0 X X 0 0 0 0 0 0 0 0 0 0 0 0 00 X X 0 0 0 0 0 0 0 0 0 0 0 0 0(0000H0000H) 0 0 0 X X 0 0 0 0 0 0 0 0 0 0 0 0 1 0 X X
33、 0 0 0 0 0 0 0 0 0 0 0 0 1(0001H0001H) 1 1 0 X X 0 0 0 0 0 0 0 0 0 0 0 1 0 0 X X 0 0 0 0 0 0 0 0 0 0 0 1 0(0002H0002H) 2 2 0 X X 0 0 0 0 0 0 0 0 0 0 0 1 1 0 X X 0 0 0 0 0 0 0 0 0 0 0 1 1(0003H0003H) 3 3 0 X X 0 0 0 0 0 0 0 0 0 0 1 0 0 0 X X 0 0 0 0 0 0 0 0 0 0 1 0 0(0004H0004H) 4 4 . . . . . . 0 X X 1 1 1 1 1 1 1 1 1 1 1 1 1 0 X X 1 1 1 1 1 1 1 1 1 1 1 1 1(1FFFH1FFFH) 8K-8K-1 1 可见,可见,当单片机输出地址当单片机输出地址0000H1FFFH时,选中时,选中62646264的的08K-1号单元,号单元,即按照上面电路扩展的存储器的地址范围是即按照上面电路扩展的存储器的地址范围是0000H1FFFH(共(共8K字节字节此时此时XX=00XX=00,)。,)。 THANK YOU VERY MUCH !本章到此结束,本章到此结束,谢谢!谢谢!结束放映返回本章首页46 结束语结束语
限制150内