《微机电子教程第五章半导体存储器.ppt》由会员分享,可在线阅读,更多相关《微机电子教程第五章半导体存储器.ppt(11页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第五章第五章 半导体存储器半导体存储器5.1 5.1 概述概述作用:用于存放待加工的原始数据和中间计算结果以及系统或用户程序等。5.1.1 5.1.1 半导体存储器的性能指标半导体存储器的性能指标1.容量:存储器的容量是指一个存储器芯片所能存储的二进制信息量。存储器芯片容量=存储单元数数据线位数例:6264 6264 8KB =8K 88KB =8K 8bitbit2.最大存取时间存储器的存取时间定义为访问一次存储器(对指定单元写入或读出)所需要的时间,这个时间的上限值即最大存取时间,一般为十几ns到几百ns。最大存取时间越小,则表示芯片的工作速度越快。5.1.2 5.1.2 存储器的分类存储
2、器的分类半导体存储器(Memory)随机存取存储器(RAM)只读存储器(ROM)静态RAM(SRAM)动态RAM(DRAM)掩膜ROM可编程ROM(PROM)紫外线可擦除的PROM(EPROM)电可擦除的PROM(EEPROM)快擦写存储器(Flash Memory)随机存取存储器RAM在使用中可由程序随时读写其内容,一般用于存放输入/输出数据、中间结果或用户应用程序。而只读存储器ROMROM在执行程序时,其内容只能读出,不能写入。掩膜ROMROM的内容是不能改变的,而EPROMEPROM等的内容在特定条件下(如高电压、大电流等)才能改写。5.2 5.2 随机存取存储器随机存取存储器(RAM)
3、(RAM)5.2.1 5.2.1 静态RAM(SRAMSRAM)一、RAMRAM原理构成存储体(R-SR-S触发器)外围电路译码电路译码电路I/OI/O控制电路控制电路1.存储体一个基本存储电路能存储一位二进制数,而一个八位的二进制数则需八个基本存储电路。一个容量为MNMN(如64K8)的存储器则包含MN个基本存储电路。这些大量的基本存储电路有规则地排列在一起便构成了存储体。基本存储电路主要由RSRS触发器构成,其两个稳态分别表示存储内容为“0 0”或为“1 1”。容易理解,静态RAM在有电源条件下,存入的数据才可以保存和读出,而且只要不写入新的数据,触发器状态就保持不变,即使读(触发器的输出
4、)操作也不会改变之;但RAMRAM芯片掉电后,原存信息全部丢失,这就是所谓的“易失性”;为了区分不同的存储单元,给每个单元规定一个地址号,以此来选择不同的单元 2.外围电路外围电路通常包括:(1 1)地址译码器。它对外部地址信号译码,用以选择要访问的单元。在目前所用的存储器中,通常采用双译码或称复合译码结构,如图51所示。在双译码结构中,地址译码器分成X X和Y Y两个。若每个K/2个输入端,它可以有2K/2输出状态,X X和Y Y两个地址译码器就其有2K/22K/2=2K个输出状态,而译码输出线却只有2K/2+2K/2=2K/22根。(2 2)I/OI/O电路,它处于数据总线和被选中的单元之
5、间,用R/WR/W(读写控制信号)来控制被选中单元的读出或写入。CSCS(或CECE)为片选信号,当CECE为低电平时,该芯片被选中,并能正常读/写信息;而为高电平时,表示该芯片未被选中。5.2.2 5.2.2 动态动态RAMRAM(DRAMDRAM)动态基本存储电路是利用MOSMOS管栅极和源极之间的电容C来存储信息的,图55为单管动态基本存储电路。以电容上“有”和“无”电荷两种状态来区分其存储的二进制信息是“1 1”还是“0 0”,由于工艺问题,一般C C小于数据线的分布电容CD,故每个数据读出后,C C上的电荷经CD释放,信息被破坏,所以每个数据读出后,要重新恢复C C上的电荷量。既使无
6、“读操作”,电荷泄漏也会造成信息丢失。为保持C C中信息(电荷),故需周期性地不断充电,这一过程称为刷新。刷新周期通常为2ms-8ms。图5-5 单管动态基本存储电路电路原理图与SRAMSRAM相比,DRAMDRAM的基本存储电路较简单,故集成度较高、功耗小,但除正常读/写外,额外增加了刷新操作,需要一些相应的外部电路支持,使用较复杂。另外,动态RAMRAM的存取速度一般比静态慢。动态RAMRAM一般用于组成大容量RAMRAM区。而容量不大时(如常规单片机系统)选用SRAMSRAM芯片更为简单实用。5.3 5.3 只读存储器(只读存储器(ROMROM)5.3.1 5.3.1 掩膜掩膜ROMRO
7、M和和PROMPROM一、掩膜ROMROM(Read Only MemoryRead Only Memory)掩膜ROMROM芯片所存储的信息是由芯片制造厂家完成的,用户不能修改,图510是一个典型的22位ROM存储矩阵。矩阵中,字选线与数据线之间或有管子相连(如“字字0 0”与“数数0 0”),或无管子相连(如“字字0 0”与“数数1 1”),这些管子是制造时由二次光刻版的图形(掩膜工艺)决定的,故称为掩膜ROMROM。二、PROMPROM(Programmable ROMProgrammable ROM)典型的PROMPROM(可编程的ROMROM)基本存储电路如图511所示。芯片出厂时,
8、开关管T1与位线之间以熔丝相连。用户可根据需要写入信息(熔断或保留熔丝以区分“1/01/0”),但只能写入一次(熔断后不能再连通)。PROMPROM的写入要由专用的电路(大电流、高电压)和程序完成;为了与RAM的随机写入过程区别,称PROMPROM的写入过程为编程。5.3.2 EPROM5.3.2 EPROM(可擦除的(可擦除的PROMPROM)根据片内信息擦除方式的不同,可擦除的PROMPROM又分为两类:一类是紫外线可擦除的,称UVEPROMUVEPROM(习惯上简称EPROMEPROM,ErasableErasable Programmable ROMProgrammable ROM),
9、一类是电可擦除的,称EEPROMEEPROM存储器芯片选择一、类型选择一、类型选择据前所述,半导体存储器可分成RAMRAM和ROMROM两大类。RAM最大的特点是其存储器的信息可以在程序中用读/写指令随读写,但掉电时信息丢失。所以RAM一般用于存储用户的调试程序(或程序存储器中的用户区)、程序的中间运算结果及掉电时无需保护(存)的I/OI/O数据及参数等。二、存储器芯片与二、存储器芯片与CPUCPU的时序配合的时序配合存储器的存取时间是反映其工作速度的重要指标,选用存储芯片时,必须考虑它的存取时间和CPUCPU的工作速度的匹配问题,即时序配合。当CPUCPU进行读操作时,什么时候送地址信号,什
10、么时候从数据线上读数据,其时序也是固定的,而存储器芯片从外部输入地址信号有效,到把内部数据送至数据总线上的时序也是固定的,并由存储芯片的内部结构和制造工艺决定。因此把它们连接时,必须注意这两种时序的配合,即当CPUCPU发出读数据信号的时侯,存储器已把数据输出并稳定在数据总线上,则读操作能顺利进行。5.4 5.4 存储器连接与扩充存储器连接与扩充存储器容量扩充存储器容量扩充一、存储器位扩充用8K8的SRAMSRAM芯片HM6116扩充形成8K16的芯片组,所需芯片为 16/8=2片这两个芯片(0#0#和1#1#)的地址线A0-A12A0-A12分别连在一起,另外,各芯片相应的片选信号以及读/写
11、控制信号也都分别连到一起,两个芯片只有数据线各自独立,一片作低8位(D0-D7D0-D7),另一片作高8位(D8-D15D8-D15),也就是说,每个16位数据的高、低字节分别存储于两个芯片中,一次读/写操作同时访问两个芯片中的同地址单元。二、存储单元数扩充当存储器位数满足要求而需要扩充单元数时,也需要用若干芯片(组)组成新的芯片组,如用上述8K8芯片6264构成32K8的存储区时,则所需要的8K8芯片数为 32/8=4片这个4芯片(0#3#)连成32K8芯片组。即片6264的地址线A0A0A12A12、数据线D7D0及读/写信号都是同名信号连在一起。字数的扩充使得32K8芯片组较8K8芯片增
12、加了两位地址信号A13A13、A14A14,它们译码后产生四个片选信号,分别选中四个8K8芯片中的一组,这32K的地址范围在四个芯片中的分配为:8K8芯片 A14.A15A12-A0地址范围 0N 0 0000至1110000H1FFFH 1N 0 1000至1112000H3FFFH 2N 1 0000至1114000H5FFFH 3N 1 1000至1116000H7FFFH 称地址线A0A12A0A12实现片内寻址,A13A14A13A14实现片间寻址。当存储器的单元数和位数都需要扩充时,如用8K8芯片构成32K16存储区,需要42个芯片。可以先扩充位数,每2个芯片一组,构成4个8K16
13、芯片组;然后再扩充单元数,将这4个芯片组组合成32K16存储区。5.5 8086/80885.5 8086/8088与存储器连接与存储器连接8086/80888086/8088有20位地址线,其中的低8位AD7-AD0AD7-AD0与与数据线复用,高4位与状态位复用。因此80888088与存储器相连时须使用外部地址锁存器,由地址锁存信号ALE把A19-A16A19-A16及AD7-AD0AD7-AD0在地址锁存器上锁存,生成系统数据总线(如PC总线上的A19-A0A19-A0就是锁存后的信号),然后(或驱动后)再连至存储器。一般有三种译码方式:全译码法片内寻址未用的全部高位地址线都参加译码,译
14、码输出作为片选信号、区分四62646264(0#0#3#3#),如图5-18,各片62646264的地址范围为:为:000至111 60000H7FFFFH 1 100 3N000至111 40000H4FFFFH 1 000 2N000至111 20000H3FFFFH 0 100 1N000至111 00000H01FFFH 0 000 0NA12A1A0 地址范围 A14 A13 A19A15 芯片整个32K832K8存储器的地址范围为00000H07FFFH00000H07FFFH,仅占用了80888088的1M存储容量的32K32K地址范围。全译码的优点是每个芯片的地址范围是唯一确定
15、,而且各片之间是连续的。缺点是译码电路比较复杂,一般可以用3-83-8译码器或可编程器件等实现 部分译码法所谓部分译码即用片内寻址外的高位地址的一部分译码产生片选信号。图5-20是用部分译码方法产生片选信号的原理图。由于四片62646264需要四个片选信号,因此要用两位地址信号A A1414、A A1313来译码产生,而A A1919AA1515不参与译码。其它信号(数据线,读写信号)的连接同图5-18。图520中,由于寻址各片62646264时未用到80888088高位地址A A1919AA1515,所以只要A A1414=A=A1313=0=0而无论A A1919AA1515取何值,均选中
16、第一片(O#O#)(其它片同理)。也就是说,32K32K RAMRAM中的任一个单元,都对应于2 2(20-1520-15)=2=25 5个地址,这种一个单元有多个地址的现象称为地址重叠。从地址分布来看,这32K32K存储器实际上占用了80888088全部1M存储容量,每一片62646264有:1M/4=256K1M/4=256K的地址重叠区。令未用到的高位地址信号全为“0 0”,这样确定出的存储器地址称为基本地址,本例32K832K8存储器的基本地址即00000H07FFFH00000H07FFFH。可见部分译码较全译码简单,但存在地址重叠区。3 3线选法线选法线选法就是高位地址线不经过译码
17、,直接分别接各存储器芯片的片选端来区别各芯片的地址。必须注意的是,软件上必须保证这些片选线每次寻址时只能有一位有效(如本例中为低电平),决不允许多于一位同时有效,才能保证硬件正常工作。图521是用线选法产生四片62646264(0#0#3#3#)片选信号的原理图。A1A1A13A13用作片选,而A19A1A19A1未用。其它信号(数据线,读写信号)的连接同图5-18。这时,32K32K存储器的基本地址范围为:芯片A19-A17A16-A13A12A0地址范围0N 0000111 000至111 0E000H0FFFFH 1N 0001011 000至111 16000H17FFFH 2N 0001101 000至111 1A000H1BFFFH 3N 0001110 000至111 1C000H1DFFFH 线选法不仅会造成地址重叠,而且各芯片地址一般是不连续的。实际应用中,存储器芯片的片选信号可根据需要选择上述某种方法或几种方法并用。ROMROM类芯片与CPUCPU连接时,因ROMROM是只读的,故无需“写”信号。除此之外,ROMROM与CPUCPU连接时和RAMRAM与CPUCPU连接时所要解决的问题(如容量扩充、地址译码等)及处理方法基本相同
限制150内