《硬件技术基础第五章存储器.ppt》由会员分享,可在线阅读,更多相关《硬件技术基础第五章存储器.ppt(52页珍藏版)》请在三一办公上搜索。
1、,存储器,第五章,教学目的和要求 本章介绍了半导体存储器典型RAM和ROM主要引脚、基本特性、应用特点。典型RAM和ROM的应用分析,存储器与微处理器连接的电路设计。要求了解和掌握典型RAM和ROM特点、存储器RAM、EPROM和E2PROM的扩展电路的设计。,存储器,内容提要 半导体存储器概述 半导体存储器芯片 半导体存储器的应用,存储器,半导体存储器概述,半导体存储器的分类,半导体存储器概述,半导体存储器的结构 半导体存储器由主存储体,地址译码驱动电路、读/写放大、时序控制四部分组成。,半导体存储器概述,主存储体 存储体是半导体存储器中的核心部分,存储体由大量的存储单元组成。存储单元是存储
2、器中最小的可寻址的单位,CPU对存储器的访问就是对某个存储单元进行读/写操作。存储器地址线位数N,存储单元数为K,它们之间的关系为K=2N。地址译码驱动电路 地址译码器驱动电路用来对地址码进行译码,带有一定驱动能力,作为地址单元选择线。,半导体存储器概述,读/写放大电路 读写放大电路包括读/写放大器和数据寄存器(三态双向缓冲器),是数据信息输入/输出通道。时序控制电路 时序控制电路的作用是控制对存储体的访问以及读写放大电路中数据信息的流向,时序控制电路所需的控制线包括读,写或者读/写命令线。,半导体存储器概述,半导体存储器的主要性能指标 衡量存储器性能指标主要有三点:容量、速度、价格。存储器容
3、量 存储器的容量是指一个存储器中单元总数,用字或字节数表示。也可以用二进制位(bit)来表示。如64K字=64K16位,512KB(B表示字节)=512K8位。另外除了上述表示容量的单位B、KB以外,还采用MB、GB、TB等。其中1KB=210B,1MB=220B,1GB=230B,1TB=240B。,半导体存储器概述,存取速度 存储器的存取速度常用存储器的存取时间(Memory Access Time)和存储周期表示,是指访问(读/写)一次存储器所需要的时间。采用MOS工艺的存储器,存取周期数为数十至数百nS,而双极性型RAM存取周期最快可达10nS以下。价格 性能价格比是衡量存储器的重要指
4、标,常以每位价格来描述,若S位存储器容量的总价格为C,则每位价格P=C/S。,半导体存储器芯片,本节分三个层次介绍存储器芯片 存储器与CPU总线相关信号线。常用各种芯片外特性。常用各种芯片与CPU的连接方式。,半导体存储器芯片,半导体存储器与CPU总线相关的信号线 所有存储器器件与CPU总线相关信号线一般包三种:地址线、数据线、控制线。,半导体存储器芯片,地址线(An A0)地址线AnA0用来输入选择存储器中的一个存储单元的地址信号,An为最高位(MSB),A0为最低有效位(LSB),下标n总比地址引脚数少1,存储器芯片的存储单元数取决于地址线的位数。数据线(D7 D0)存储器件都有一组可以进
5、行输出(ROM)或输入/输出(RAM)的数据总线(D7D0),其中D7为最高位(MSB),D0为最低位(LSB)。用于存(写)/取(读)数据。,半导体存储器芯片,控制线ROM控制线 ROM芯片提供两个控制输入信号;芯片允许 CE,输出允许 OE。CE=1 使该芯片处于低功耗备用模式;CE=0 该芯片被选中,使D7 D0 处于允许状态;OE=1 输出被禁止,D7 D0 处于高阻;OE=0 允许D7 D0 正常输出。由此可见,使ROM能有效地操作必须使 CE=OE=0。,半导体存储器芯片,SRAM控制线 静态RAM(SRAM)芯片提供三个控制输入信号;芯片允许CE,输出允许OE,写允许WR。无论对
6、SRAM进行读或写数据时,必须使CE=0。向SRAM写数据时,WR=0,CE=0,OE=1,将D7 D0配置为输入,实现对存储器写操作。向SRAM读出数据时,WR=1,CE=0,OE=0,将D7 D0配置为输出,实现对存储器读操作。注意:WR=OE=0 不能存在。WR=OE=1 数据线处于高阻抗状态,即不能读/不能写。,半导体存储器芯片,DRAM控制信号 动态RAM(DRAM)提供两个控制信号:CE(RAS,CAS),WR DRAM和SRAM主要差别在于容量大,存储器信息是依靠电容来保持,因此2mS4mS之后必须对其刷新一次(即若对641的DRAM,每隔4mS完成256次读操作),需加定时刷新
7、电路。由于容量大,引脚不够,采用两路复用锁存方式。用行地址、列地址(RAS,CAS)选通信号进行控制两组地址输入,正是这两个问题决定DRAM接口比较复杂。DRAM芯片控制信号没有专门的CE片选线,用RAS,CAS兼作片选线,只设置一条读/写控制信号WR,WR=0是为写允许,WR=1是为读允许。,半导体存储器芯片,IRAM 控制信号 IRAM是近几年出现的一种新型DRAM芯片。该芯片将动态刷新逻辑和地址多路复用逻辑集成于原DRAM芯片内部,使之从外部特性看很像SRAM,其三条控制信号为:芯片允许CE,输出允许OE,写允许WR。,半导体存储器芯片,半导体存储器芯片外特性 所谓存储器芯片外特性是指与
8、CPU总线相关的信号线。ROM芯片外特性,半导体存储器芯片,EPROM的外特性常用EPROM型号 当前有大量的标准EPROM集成电路(IC)器件可供选择使用,但用于比较广泛的是较典型的Intel公司的EPROM芯片。,半导体存储器芯片,常用EPROM引脚 2716,2732均为24脚双列直插式封装,276427512为28脚双列直插式封装。,半导体存储器芯片,EPROM的读时序 以27256为例,介绍EPROM的结构框图和读时序波形图。27256由28引脚,容量为256Kb,地址线15位(A14 A0),具有地址锁存功能,数据输出线8条D7 D0。,半导体存储器芯片,半导体存储器芯片,E2PR
9、OM的外特性 E2PROM是一种在线电擦除的只读存储器。整个芯片只需+5V电源VCC供电。目前用的最多仍然是Intel公司的产品如2816,2817,2864等。常用E2PROM引脚 2816和2817均为2KB容量,每个字节可以在线循环擦写1000次,每次写入数据可以支持10年以上。读取数据速度200nS400nS。,半导体存储器芯片,半导体存储器芯片,E2PROM 2817的工作方式,半导体存储器芯片,E2PROM与CPU的连接方法,半导体存储器芯片,RAM的外特性 目前广泛运用的RAM有两种:SRAM和DRAM。SRAM中数据一旦写入,只要不关电源,数据一直保持有效;DRAM为了保持其中
10、的数据,必须定时对存储器刷新,电路比较复杂。常用SRAM型号与引脚 当前可以运用的SRAM类型很多,他们之间的主要区别在于密度和组成结构不同。我们常用的标准SRAM芯片有:6216(2KB)、6232(4KB)、6264(8KB)、62128(16KB)、62256(32KB)等。,半导体存储器芯片,半导体存储器芯片,SRAM读/写时序,半导体存储器芯片,SRAM与CPU的连接,半导体存储器的应用,目前,CPU的种类比较繁多,而不同种类的CPU和存储器的连接方法多少有所不同。本节主要介绍半导体存储器在8088 CPU系统中的应用。8088 CPU有20条地址线,所以可以寻址的物理空间为1M字节
11、,其线性地址范围为00000H0FFFFFH。有8条数据线。,半导体存储器的应用,半导体存储器电路的分析方法 所谓半导体存储器电路的分析是指对一个给定的存储器电路,通过分析找出该存储器电路中各个存储器芯片在该CPU系统中所处的地址范围。通常采用的方法是从各个存储器芯片所需要的控制线、地址线到CPU提供的控制线、地址线逐级写出逻辑函数式,最后得到各个存储器芯片的输入信号和CPU提供的信号的逻辑关系式,从而确定各个存储器芯片在该CPU系统中所处的地址范围。,半导体存储器的应用,【例5-1】指出图中2764和6264的地址范围,并编程对6264清零。,半导体存储器的应用,由图可知,2764的CE接8
12、088的CPU的A19;2764的A0A12 接地址总线的A0A12;OE=RDIO/M(或运算)。RD和IO/M由8088 CPU提供。2764的D0D7接数据总线的D0D7。8088 CPU要想能够对2764进行操作,必须满足如下条件:OE=0,即RD和IO/M必须同时为0,也就是8088 CPU必须执行对存储器读操作。例如 MOV AL,BX 指令。CE=0,即A19=0。A12A0可以从0000H1FFFH。,半导体存储器的应用,从以上条件可以得出,2764的地址范围为:首单元地址:A19 A18 A17 A16 A15 A14 A13 A12 A11 A10 A9 A8 A7 A6
13、A5 A4 A3 A2 A1 A0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0尾单元地址:A19 A18 A17 A16 A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 0 1 1 1 1 1 1 1 1 1 1 1 1 1(可以是低电平,也可以是高电平)。,半导体存储器的应用,由于A18A13可以是低电平,也可以是高电平,因此2764的地址可以由64种不同的地址范围。这也就是说在存储器应用中利用线选片选法可以简化硬件电路,但存储器的范围不是唯一的,浪费了存储空间。例如 00000H01FFFH,02000H03FFF
14、H,04000H05FFFH,06000H07FFFH等都是2764的地址范围。,半导体存储器的应用,同2764一样,由图可知,8088 CPU的A19经过非门接6264的CE;OE=RDIO/M(或运算);WE=WRIO/M。地址线和数据线连接同2764。WR、RD和IO/M由8088 CPU提供.。8088 CPU要想能够对6264进行操作,必须满足如下条件:OE=0,即RD和IO/M必须同时为0,也就是8088 CPU必须执行对存储器读操作。例如 MOV AL,BX 指令。或WE=0,即WR和IO/M必须同时为0,也就是8088 CPU必须执行对存储器写操作。例如 MOV BX,AL 指
15、令。CE=0,即A19=1。A12A0可以从0000H1FFFH。,半导体存储器的应用,从上条件可以得出,6264的地址范围为:首单元地址:A19 A18 A17 A16 A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A01 0 0 0 0 0 0 0 0 0 0 0 0 0尾单元地址:A19 A18 A17 A16 A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A01 1 1 1 1 1 1 1 1 1 1 1 1 1(可以是低电平,也可以是高电平)。,半导体存储器的应用,由于A1
16、8A13可以是低电平,也可以是高电平,因此6264的地址可以由64种不同的地址范围。例如 80000H81FFFH,82000H83FFFH,84000H85FFFH,86000H87FFFH等都是6264的地址范围。假设我们选用6264的地址范围为80000H81FFFH。6264的单元个数为8K,即1FFFH个。由6264地址范围为80000H81FFFH,不妨设其段地址为8000H,那么6264首地址的偏移地址为0000H,尾地址的偏移地址为1FFFH。,半导体存储器的应用,对存储器清0编程如下:MOV AX,8000H;6264首地址的段地址 MOV DS,AX;把段地址存入数据段寄存
17、器 MOV CX,1FFFH;6264的单元个数 MOV BX,0000H;6264首地址的偏移地址 MOV AL,00H;对累加器清零LOOP1:MOV BX,AL;把0存储到存储器单元中 INC BX;存储器指针加1 LOOP LOOP1;循环1FFFH次,半导体存储器的应用,【例5-2】指出图中2764和6264的地址范围,并编程把2764中的内容对应搬移到6264中。,半导体存储器的应用,由图可知,2764的CE接74LS138的Y0;2764的A0A12 接地址总线的A0A12;2764的D0D7接数据总线的D0D7。OE=RDIO/M(或运算)。6264的CE接74LS138的Y7
18、;6264的A0A12 接数据总线的A0A12;6264的D0D7接数据总线的D0D7。OE=RDIO/M(或运算);WE=WR IO/M。WR、RD 和IO/M由8088 CPU提供。8088 CPU要想能够对2764进行操作,必须满足如下条件:OE=0,即RD和IO/M必须同时为0,也就是8088CPU必须执行对存储器读操作。例如 MOV AL,BX指令。CE=0,即Y0=0。,半导体存储器的应用,A12A0可以为0000H1FFFH。8088 CPU要想能够对6264进行操作,必须满足如下条件:OE=0,即RD和IO/M必须同时为0,也就是8088 CPU必须执行对存储器读操作。例如 M
19、OV AL,BX 指令。或WE=0,即WR和IO/M必须同时为0,也就是8088 CPU必须执行对存储器写操作。例如 MOV BX,AL指令。CE=0,即Y7=0。A12A0可以从0000H1FFFH。本例采用译码片选法。根据74LS138的逻辑关系知道:Y0=0,必须A=B=C=0,G2A=G2B=0,G1=1。Y7=0,必须A=B=C=1,G2A=G2B=0,G1=1。,半导体存储器的应用,从上条件可以得出,2764的地址范围为:首单元地址:A19 A18 A17 A16 A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 1 1 0
20、 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0尾单元地址:A19 A18 A17 A16 A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 1 1 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 十六进制表示为:C0000HC1FFFH。,半导体存储器的应用,6264的地址范围为:首单元地址:A19 A18 A17 A16 A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 1 1 0 0 1 1 1 0 0 0 0 0 0 0 0 0
21、 0 0 0 0尾单元地址:A19 A18 A17 A16 A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 十六进制表示为:CE000HCFFFFH。,半导体存储器的应用,不妨设段地址为C000H,那么2764首地址的偏移地址为0000H,尾地址的偏移地址为1FFFH,6264首地址的偏移地址为E000H,尾地址的偏移地址为FFFFH。把2764中的内容对应搬移到6264中编程如下:MOV AX,C000H MOV DS,AX MOV SI,0000H M
22、OV DI,E000H MOV CX,1FFFHLOOP1:MOV AL,SI MOV DI,AL INC SI INC DI LOOP LOOP1,半导体存储器的应用,半导体存储器在计算机系统中的设计方法 设计方法是指根据给出的实际计算机系统要求,求出实现这一要求的最简单的存储器接口电路。这里所说的“最简单”是指所用的器件数最少,器件的种类最少,器件之间的连线最少,而且所选用的器件资源较为广泛。,半导体存储器的应用,设计方法通常按如下步骤进行:根据计算机系统要求选择存储器芯片。根据存储器芯片和计算机系统情况,确定存储器在计 算机系统中空间范围。根据存储器地址范围设计存储器接口电路逻辑关系式。
23、选定接口器件的类型。根据器件类型变换逻辑表达式。根据变换后的接口逻辑表达式设计接口电路。,半导体存储器的应用,【例5-3】为8088 CPU的微机系统设计一个24KB容量的存储器,要求EPROM为16KB,从00000H开始,RAM为8KB,从0C000H开始。然后编程实现把两片EPROM对应单元中内容相或,结果存入RAM对应的单元中。为了简化接口设计,我们最好选用相同容量、相同字长的EPROM和SRAM芯片来组织该存储器。比如,不妨以2764作为EPROM芯片,以6264作为SRAM芯片,它们都是8K8位的芯片。这样根据要求共需要2片2764和1片6264。,半导体存储器的应用,半导体存储器
24、的应用,不妨设段地址为0000H,那么2764(1)首地址的偏移地址为0000H,尾地址的偏移地址为1FFFH,2764(2)首地址的偏移地址为2000H,尾地址的偏移地址为3FFFH,6264首地址的偏移地址为C000H,尾地址的偏移地址为DFFFH。把两片2764对应单元中内容相或,结果存入6264对应的单元中。,半导体存储器的应用,编程如下:MOV AX,0000H;对数据段寄存器赋值 MOV DS,AX MOV BX,0000H;2764(1)指针 MOV SI,2000H;2764(2)指针 MOV DI,C000H;6264指针 MOV CX,1FFFH;循环次数LOOP1:MOV AL,BX;取数 OR AL,SI;运算 MOV DI,AL;存数 INC BX;修改指针 INC SI;修改指针 INC DI;修改指针 LOOP LOOP1;循环,The end,