第7章存储器与并行口扩展140728_第1页
第7章存储器与并行口扩展140728_第2页
第7章存储器与并行口扩展140728_第3页
第7章存储器与并行口扩展140728_第4页
第7章存储器与并行口扩展140728_第5页
已阅读5页,还剩81页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第7章单片机存储器扩展7.0引言7.1存储器的分类及片外三总线的形成7.2存储器并行扩展存储空间分配片选信号产生方法程序存储器和数据存储器的并行拓展

片内的资源如不满足需要,需外扩存储器和I/O功能部件:系统扩展问题,内容主要有:(1)外部存储器的扩展

(外部存储器又分为外部程序存储器和外部数据存储器)(2)I/O接口部件的扩展单片机最小系统7.0引言按其功能通常把系统总线分为三组:

1.地址总线(AdressBus,简写AB):A0-A15

2.数据总线(DataBus,简写DB):D0-D7

3.控制总线(ControlBus,简写CB)

/PSEN访问代码空间

/WR/RD访问数据空间

MCS-51数据存储器和程序存储器的最大扩展空间各为64KB7.0.1总线分类系统扩展三总线示意图7.0.2单片机系统扩展的工作特点CPU指示灯ROM键盘RAMD/AA/D在计算机系统中,数据发送方可称为发言者,数据接收方可称为听众。某些单元永远是听众,而某些单元有时是听众,有时是发言者。某一时刻,只允许有一个发言者,但可以有多个听众。总线没有记忆能力,信息只能在有限的时间内停留。听众的多少取决于总线的驱动能力。

总线是由导线构成的,在总线上的信息是由数据输出方输出的逻辑电平,导线的性质决定了在总线上各点的逻辑电平是一致的;如果同一时刻有多个设备试图向总线输出信号,势必会造成总线逻辑电平的混乱,影响信号的正确传输;同一时刻所有连接在总线上的数据接收设备都会根据总线逻辑电平得到相同的信号输入;1、某一时刻,只允许有一个发言者,但可以有多个听众

总线由导线构成,它永远保持当前输出设备正在输出的逻辑电平,而无法记录当前时刻之前的任何逻辑电平信息;信息在总线上停留的时间,取决于当前输出设备输出信息的持续时间,这一时间一般来说都是很短的;2、总线没有记忆能力,信息只能在有限的时间内停留

当总线保持逻辑高电平或逻辑低电平时,所有连接到总线上的信息接收设备都会消耗功率,总线电平的提供者必须要有足够的驱动能力来满足这些功率的消耗;一个总线上能够连接多少接收设备,取决于该总线保持逻辑电平的能力,即总线的驱动能力;3、听众的多少取决于总线的驱动能力

1、听众必须具有记忆能力,即具有锁存功能;由于总线没有记忆能力,而且信号维持时间很短,对于需要总线信号维持时间较长的设备,必须要自行添加锁存器,使得信号能够在脱离总线的情况下被单独的保存;最常用的锁存器就是D触发器;7.0.3计算机总线的工作原理要求

总线上某一时刻只允许有一个发言者,否则会造成逻辑混乱;2、发言者必须首先获得发言权;总线上往往又存在很多设备,其中信息发送设备也不止一个;此时就必须要在每个信息发送设备与总线之间添加三态门作为输入缓冲,利用三态门的开启使某个设备获得发言权。计算机中的两个重要概念输出锁存:采用锁存器使听众具有记忆能力。输入缓冲:采用三态门,将发言者接入总线。小结:在计算机系统中输出锁存和输入缓冲有何作用?7.0引言7.1存储器的分类及片外三总线的形成7.2存储器并行扩展存储空间分配片选信号产生方法程序存储器和数据存储器的并行拓展7.1.1存储器分类及常用存储芯片存储器是存放二进制编码信息的硬件装置存储器的类型按工作时与CPU联系密切程度分类主存和辅存,或者称作内存和外存。主存直接和CPU交换信息,容量小,速度快。辅存则存放暂时不执行的程序和数据,只在需要时与主存进行批量数据交换,通常容量大,但存取速度慢;(例子:主存:DRAM(“Cache-主存”层次,在CPU和主存之间增加一级容量小、价格高的高速缓冲存储器(Cache)),辅存:硬盘)按存储元件材料分类半导体存储器、磁存储器及光存储器;7.1.1存储器分类及常用存储芯片按存储器读写工作方式分类只读存储器(ROM,ReadOnlyMemory)随机存储器(RAM,

RandomAccessMemory)SRAMDRAM可现场改写的非易失性存储器(NWM)FlashEEPROM7.1.1存储器分类及常用存储芯片2.典型存储器芯片RAM芯片:6116:CMOSSRAM2Kx8Bit6264:CMOSSRAM8Kx8Bit62256:CMOSSRAM32Kx8BitROM芯片:2716:NMOSEPROM2Kx8Bit2764:NMOSEPROM8Kx8Bit27256:NMOSEPROM32Kx8Bit7.1.1存储器分类及常用存储芯片3.技术指标及选择原则存储器的性能指标存储器的主要性能指标:存储容量、存取速度、可靠性、性能价格比。存储容量用其存储的二进制位信息量描述,用其存储单元数与存储单元字长乘积表示,即容量=字数×字长。

存取速度是指从CPU给出有效地存储器地址到存储器输入或输出有效数据所需要的时间。7.1.1存储器分类及常用存储芯片存储器指标与选择原则类型:ROM、RAM根据设计意图选定RAM或ROM,ROM用于固化程序,对于产品开发宜于选用EPROM;RAM有SRAM和DRAM之分。由于对SRAM不需刷新操作,电路连接简单,扩充灵活,可靠性高,而且一般SRAM的引脚与同容量的EPROM兼容,因此在存储器容量较小的系统中广泛选用SRAM。存储容量:8KB、32KB、64KB一般根据系统和用户程序的规模确定整个存储器的容量。由于单片存储器芯片容量有限,往往需要多片组成,因此对于单片机系统,通常选择单片容量较大、位数不需扩展的存储器芯片。7.1.1存储器分类及常用存储芯片存储器的速度:7ns、8ns、10ns、70ns存储器的速度必须和CPU的读写速度相匹配。一般应尽量根据CPU的速度来选定存储器芯片的速度,一方面使电路连接简单,另一方面同时也可充分发挥CPU的高速功能。存储器的功耗一般,对功耗要求高的场合,应选用CMOS型器件。价格:32KBSRAM~¥107.1.1存储器分类及常用存储芯片存储器结构4.存储器结构7.1.1存储器分类及常用存储芯片半导体存储器芯片的结构半导体存储器芯片由存储矩阵、地址译码器、控制逻辑和三态数据缓冲寄存器组成,是大量存储元件的有机结合。存储元件则是由能存储一位二进制代码的物理器件构成。将存储矩阵中的全部存储单元赋予单元地址,由芯片内部的地址译码器实现按地址选择对应的存储单元。在CPU及其接口电路送来的芯片选择信号CS和读写控制信号R/W的配合下,单方面打开三态缓冲器,将该存储单元中的代码进行读或写操作。在不进行读或写操作时,芯片选择信号无效,控制逻辑使三态缓冲器处于高阻组态,存储矩阵与数据线脱开。7.1.1存储器分类及常用存储芯片半导体存储器芯片的结构容量为2n个存储单元的存储矩阵,必须有n条地址线选通对应的存储单元,若每个存储单元有N位(字长为N),则有N条数据线,该存储体由2n×N个存储bit元件组成。7.1.1存储器分类及常用存储芯片5.常用存储器芯片介绍SRAM61166116是一种典型的CMOS型SRAM,其容量为2KB。6116的结构分为存储矩阵、地址译码和读/写控制三部分。7.1.1存储器分类及常用存储芯片存储矩阵6116芯片的容量为2Kx8位,即它有2048个存储单元,每个存储单元字长为8位,故6116芯片内有16384个基本存储电路。为了节省内部译码电路,将它们排列成128X128的矩阵形式,它是存储器存储信息的载体。7.1.1存储器分类及常用存储芯片地址译码由于存储体是矩阵式的结构,所以地址译码电路分成行地址译码和列地址译码。由A4-A10译码产生128根行选择线Xi(i=0,…,127);由A0-A3经译码产生16根列选择线Yj(j=0,…,15),每条列选择线同时控制8位。根据外部地址输入,存储器内部通过译码电路选中被访问的存储单元,以便进行“读”或“写”。7.1.1存储器分类及常用存储芯片读/写控制RAM的输入/输出与计算机的数据总线相连。CPU对RAM进行读操作时,被访问的存储单元中的信息应读出(输出)到外部数据总线上来;CPU对RAM进行写操作时,数据总线上的内容应写入(输入)到被访问的存储单元中。当CE=0,OE=0,WE=1时,为读出操作;当CE=0,OE=1,WE=0时,为写入操作;其他情况下,输入/输出的三态门呈高阻态。7.1.1存储器分类及常用存储芯片6116的引脚A0~A10:地址引脚;I/O0~I/O7:数据引脚;VCC、GND:电源引脚;CE:片选信号引脚;WE:写入有效信号引脚;RD:读出有效信号引脚;7.1.1存储器分类及常用存储芯片6116芯片的工作方式:写入方式。其条件是:CE=0,WE=0,OE=1。操作结果是D0-D7上的内容输入到A0-A10所指定的存储单元中。读出方式。其条件是:CE=0,WE=1,OE=0。操作结果是A0-A10所指定的存储单元内容输出到D0-D7上。低功耗维持方式,这是一种非工作方式,当CE=1时,芯片处于这一方式。此时,器件电流仅为20uA左右,为系统断电时用电池保持RAM的内容提供了可能性。7.1.1存储器分类及常用存储芯片62647.1.1存储器分类及常用存储芯片622567.1.1存储器分类及常用存储芯片EPROM27162716是典型的NMOS型2KB的EPROM;其内部结构同样分为存储矩阵、地址译码和读/写控制三部分;其工作方式与SRAM6116非常类似,只是工作状态较复杂。7.1.1存储器分类及常用存储芯片2716的引脚VCC、VSS、VPP:电源引脚;A0-A10:地址引脚;D0-D7:数据引脚;OE:输出有效信号引脚;CE/PGM:片选有效/编程脉冲信号引脚;7.1.1存储器分类及常用存储芯片2716的工作状态读方式这是2716芯片通常使用的方式,此时两个电源引脚VCC和VPP都接至+5V。当从2716芯片的某个单元中读数据时,先通过A0-A10接收来自CPU的地址信号,然后使CE和OE都有效,于是经过一段延迟时间,D0-D7便送出该地址所指定的存储单元的内容。7.1.1存储器分类及常用存储芯片未选中在OE=1时,不论CE状态如何,2716芯片均未选中,因此D0-D7呈高阻状态。等待在CE=1时,2716芯片处于等待状态。此时,2716芯片的功耗由525mW下降到132mW,只有读状态的四分之一。在此状态下,D0-D7呈高阻态。编程VPP=+25V,CE=1,把要写入数据的单元地址和数据分别送到地址总线和数据总线上,向OE端送一个52ms宽的正脉冲,就可以将数据写入指定的单元中。全部2K字节的编程时间约100s。7.1.1存储器分类及常用存储芯片编程检查为了检查编程时写入的数据是否正确,通常在编程过程中包含检查操作。在一个字节的编程完成后,电源的接法不变,CE、OE均为低电平,则同一单元的数据就在数据线上输出,以便与输入数据进行比较,检查编程的结果是否正确。编程禁止在编程过程中,只要使该芯片的CE=0,编程就立即禁止。7.1.1存储器分类及常用存储芯片2764、272567.1.1存储器分类及常用存储芯片小结:ABUS,DBUS,CBUS/CE(chipenable):片选线/OE(outputenable):输出允许6264读操作:/CE1=0且CE2=1且/OE=06264写操作:/CE1=0且CE2=1且/WE=02764读操作:/CE=0且/OE=07.1.1存储器分类及常用存储芯片缓冲器缓冲器主要用于CPU总线的缓冲,以增加总线驱动负载的能力。常用的有单向缓冲器74LS244和双向缓冲器74LS245。74LS24474LS2457.1.1存储器分类及常用存储芯片74LS244一片244分为两组,每组4位,对应输入分别为1A1-1A4和2A1-2A4对应输出分别为1Y1-1Y4和2Y1-2Y4;/G1和/G2分别是两组的三态使能控制端,低电平有效。若把/G1和/G2相连接,则一片244即为一个8位的单向缓冲器。这种缓冲器常用于地址或控制信号的缓冲。7.1.1存储器分类及常用存储芯片74LS245245是一个8位双向缓冲器;/G为使能控制端,低电平有效;DIR为方向控制端。当/G=0、DIR=0时,数据由B到A,当/G=0,DIR=1时,则数据由A到B。当/G=1时,A和B均处于高阻态。245常用作数据缓冲器,也可用作单向缓冲器,用于地址或控制信号的缓冲。7.1.1存储器分类及常用存储芯片锁存器由于MCS-51的P0口是分时复用的地址/数据线,因此必须利用锁存器将地址信号从地址/数据总线中分离出来,得到低8位地址A0~A7。这种锁存器也可作为数据锁存器,锁存CPU输出的数据。常用锁存芯片有74LS373、74LS273等。74LS37374LS2737.1.1存储器分类及常用存储芯片74LS373数据锁存(电平触发型,透明式锁存器)/OC:输出有效G(C):输入有效7.1.1存储器分类及常用存储芯片74LS273上升沿触发型锁存/CLR:清零信号CLK:上升沿触发信号7.1.1存储器分类及常用存储芯片373与273的区别373是电平触发,即在G为高电平时触发D触发器;273是上升沿触发,在CLK的上升沿处触发D触发器;373输出有三态门作为缓冲,即存在高阻态;而273则没有;7.1.2MCS-51单片机片外三总线的形成从物理上可以分为片内、片外两个区域;片外区域在逻辑上可以分为ROM和RAM两个区域;访问这两个逻辑区域所用的控制信号和访问指令都是不一样的;外部设备在逻辑上一般划归RAM区域,通过访问RAM的方式来访问外部设备;空间类型对象控制信号访问指令代码空间ROM,E2PROM/PSENMOVC数据空间RAM/RD,/WRMOVXIO空间A/DD/A并行口等/RD,/WRMOVX1、MCS-51单片机系统存储空间格局和特点7.1.2MCS-51单片机片外三总线的形成片外三总线为数据、地址、控制总线,MCS-51的片外三总线构成方式如图;地址总线A0-A15由P0、P2共同构成;数据总线D0-D7由P0构成;控制总线由ALE、/PSEN、/WR、/RD构成,访问不同逻辑空间时使用不同信号;2、三总线的形成7.1.2MCS-51单片机片外三总线的形成控制总线(CB)地址总线(AB)数据总线(DB)2、三总线的形成7.1.2MCS-51单片机片外三总线的形成

MCS-51单片机总线宽度(16位),在片外可扩展的存储器最大容量为64KB,地址为0000H~FFFFH。因为MCS-51单片机对片外程序存储器和数据存储器的操作使用不同的指令和控制信号,所以允许两者的地址空间重叠,故片外可扩展的程序存储器与数据存储器分别为64KB。为了配置外围设备而需要扩展的I/O口与片外数据存储器统一编址,即占据相同的地址空间。因此,片外数据存储器连同I/O口一起总的扩展容量是64KB。2、三总线的形成7.1.2MCS-51单片机片外三总线的形成P0、P2和P3口在三总线中分别担任什么角色?ALE的作用是什么?低8bits地址什么时候锁入74LS373?/PSEN,/RD,/WR的作用是什么?小结7.1.2MCS-51单片机片外三总线的形成数据存储器基本扩展方法扩展数据存储器要将存储器芯片的OE和WE分别和单片机系统的RD和WR相连。可采用EEPROM只读存储器、静态RAM和动态RAM三类芯片。3、程序存储器和数据存储器的基本扩展方法7.1.2MCS-51单片机片外三总线的形成例:片外扩展1片6116,2KB的SRAM7.1.2MCS-51单片机片外三总线的形成程序存储器基本扩展方法扩展程序存储器主要是将存储器芯片的OE与单片机系统的PSEN相连。扩展程序存储器可以采用只读存储器的3种芯片。

7.1.2MCS-51单片机片外三总线的形成例:片外扩展1片27128A,16KB的EPROM7.1.2MCS-51单片机片外三总线的形成程序存储器访问时序什么是时序?访问程序存储器的控制信号(1)ALE

(2)/PSEN

(3)/EA

如果指令是从片外EPROM中读取,ALE用于低8位地址锁存,/PSEN接外扩EPROM的/OE脚。4、程序存储器访问时序通道1:内部总线LatchDriver通道2:内部总线DriverP0口的结构P0口作为总线口使用时,Control=1内部数据总线,地址总线与驱动器接通P2口的结构作为总线口使用时Control=1内部地址总线与驱动器接通取指时序PCH:01PCL:00在ALE的下跳沿PCL信息被锁入373INST:75在PSEN的下跳沿使能ROM的OE端片外数据存储器读时序P2:12P0:34在ALE的下跳沿DPL中的信息通过PO口引脚输出,并锁入373在RD的下跳沿使能RAM的OE端DATA:557.0引言7.1存储器的分类及片外三总线的形成7.2存储器并行扩展存储空间分配片选信号产生方法程序存储器和数据存储器的并行拓展7.2存储空间分配和片选信号产生方法存储空间分配存储空间是计算机资源之一分配存储空间:指确定存储芯片或接口芯片地址(范围)的过程。如6264芯片,内含8KB,即8192个存储单元。给6264分配存储空间的含义是确定其每个存储单元的地址。7.2.1存储空间分配7.2存储空间分配和片选信号产生方法片选信号的产生方法片选信号(/CS,/CE)的作用:决定每个器件是否具有使用总线的权利。片选信号的产生方法:直接接地法、线选法、译码法1、直接接地法地址线A12-A0:用于片内译码,达到选择某个特定单元的目的。地址线A15,A14,A13为无关态。7.2.2片选信号的产生方法7.2存储空间分配和片选信号产生方法访问6264的有效地址?由于系统地址总线中A13-A15未使用,因此访问6264的有效地址为:A15A14A13A12A11-A8A7―A4A3―A0XXX0000000000000……XXX0010000000000……XXX11111111111117.2存储空间分配和片选信号产生方法情况1:A15A14A13A12A11-A8A7―A4A3―A0

0000000000000000……

00011111111111116264芯片首地址:0000H6264芯片末地址:1FFFH7.2存储空间分配和片选信号产生方法情况2:A15A14A13A12A11-A8A7―A4A3―A0

0010000000000000……

00111111111111116264芯片首地址:2000H6264芯片末地址:3FFFH7.2存储空间分配和片选信号产生方法依次类推可得:6242共有8块存储地址,占用了全部数据空间0000H-1FFFH2000H-3FFFH4000H-5FFFH6000H-7FFFH8000H-9FFFHA000H-BFFFHC000H-DFFFHE000H-FFFFH6242共有8块存储地址,即存在重复地址,它占用了全部数据空间!7.2存储空间分配和片选信号产生方法2、线选法直接利用单根地址线作为片选信号。例:采用线选法扩展两片8KBROM以及8KBRAM6264和2764都是8KX8的存储器,它们都有13根地址线A0-A12;用剩余3根地址线A13-A15分别作片选信号;A13(P2.5)连2764(1)和6264(1)的片选端;A14(P2.6)连2764(2)和6264(2)的片选端。7.2存储空间分配和片选信号产生方法访问6264(1)的地址约束条件为:

A15(P2.7) A14(P2.6) A13(P2.5) X X 0由于有两根地址线未使用,故可选择的地址空间为:0000H-1FFFH,4000H-5FFFF,8000H-9FFFH,C000H-DFFFH这四个存储区是重叠的,例如,地址0000H,4000H,8000H,C000H都对应6264(1)中的同一个地址单元,即地址重叠了,其他几片与此类似。所以用线选法实现片选,其存储单元地址不是唯一的。7.2存储空间分配和片选信号产生方法访问6264(2)的地址约束条件为:

A15(P2.7) A14(P2.6) A13(P2.5) X 0 X由于有两根地址线未使用,故可选择的地址空间为:0000H-1FFFH,2000H-3FFFF,8000H-9FFFH,A000H-BFFFH可见对于两片6264来说,地址空间0000H-1FFFH和8000H-9FFFH是重叠的,因此不能使用这一范围的地址来访问片外RAM,否则会出现两个6264都被选中的情况,会造成逻辑错误。片外2764的地址空间情况与6264相同。7.2存储空间分配和片选信号产生方法3、译码法多根地址线经过译码器、简单逻辑电路、可编程逻辑阵列处理后产生片选信号。地址译码法又有部分译码和全译码两种方式。7.2存储空间分配和片选信号产生方法全译码除存储器芯片所用地址线与CPU的地址线对应相连外,未用的地址线全部参加译码,通过地址译码器产生存储器的片选信号。7.2存储空间分配和片选信号产生方法3-8线译码器74LS1387.2存储空间分配和片选信号产生方法双2-4线译码器74LS1397.2存储空间分配和片选信号产生方法访问6264(1)的地址约束条件为:/CE=/Y0 A15(P2.7) A14(P2.6) A13(P2.5) G B A 0 0 06264(1)的地址范围为0000H-1FFFH7.2存储空间分配和片选信号产生方法访问6264(2)的地址约束条件为:/CE=/Y1 A15(P2.7) A14(P2.6) A13(P2.5) G B A 0 0 16264(2)的地址范围为2000H-3FFFH6264(1)和6264(2)的地址空间都是唯一的,不存在重复地址。7.2存储空间分配和片选信号产生方法16根地址线中低13位(A0-A12)用于片内译码,高3位(A13、A14、A15)用于片选译码。全部地址线参与了译码,6264不再存在重复地址!7.2存储空间分配和片选信号产生方法如图所示的片外存储器扩展方法,各存储器的地址空间为:2764(1):程序存储空间0000H-1FFFH(/Y0)2764(2):程序存储空间2000H-3F

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论