存储器组织及译码问题引入:通常存储芯片在位数或字长方面与实际存储器的要求有很大差距,所以当需要大容量的存储器时,需要对存储器在字和位两方面进行扩展。一、存储器扩展1、位扩展位扩展:位扩展是指只进行位数扩展,而芯片的字数和存储器的字数是一致的。所需芯片的数量:假设芯片容量为Mk*n位,要组成一个Mk*N位的存储器,则需要N/n片芯片。连接方法:将各存储芯片的地址线,片选线和读/写控制线相应地并联起来,而将各芯片的数据线单独列出。例:用8K*1的存储器芯片扩充为8k*8的存储器。2.字扩展字扩展:字扩展是指仅在字方向上进行扩展,而位数不变。所需芯片的数量:假设Nk*n位,要组成一个存储容量为MK*n位的存储器,则需要M/N片芯片。连接方法:将各芯片的地址线、数据线、读/写控制线并联,由片选信号来区分各个芯片。例:用16K*8芯片扩展成64K*8的存储器。3.字和位同时扩展所需芯片的数量:假设芯片存储容量为mK*n位,要组成一个存储容量为MK*N位的存储器,则所需芯片数为(M/N)*(N/n)。连接方法:将位扩展和字扩展所用方法进行综合。例:用2114(1K*4位)SRAM芯片组成一个容量为4K*8位的半导体存储器。地址总线A15~A0,双向数据总线D7~D0,读/写信号线R//W(为高电平表示“读”,为低电平表示“写”)。64KB1K*41K*41K*41K*41K*41K*41K*41K*44K4K地址空间片选芯片地址A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0不用3、连接芯片解:1、计算芯片数量(4/1)*(8/4)=8数据线的连接地址线的连接读写信号线的连接片选信号线的连接2、地址分配与片选逻辑21142114211421142114211421142114D3~D0D7~D4A9~A0R//WA11/A10/A11A10/A11/A10A11A10二、半导体存储器与CPU的连接连接原则:CPU存储器低位地址线片内地址线高位地址线译码器片选MREQ数据线数据线控制线:/MEMR/OE/MEMW/WE问题引入:一个存储器系统通常由多片RAM、EPROM等芯片组成,每块芯片都有一定的存储容量,占有一定的存储空间,那么每块存储器芯片应如何分配地址空间呢?这就是地址译码所要解决的问题。通常包括两方面的内容:对部分高位地址总线进行译码,产生片选信号以实现正确的存储器芯片片选控制。低位地址总线的连接,用以实现芯片内部存储单元的正确选择。三、存储器地址译码方式及译码电路1、全译码片选法将低位地址总线直接连接至各芯片的地址线外,对余下的所有高位地址总线进行译码,并把译码输出作为各芯片的片选信号。FFFFFHFE000H00000HEPROM27648KB空间例:2764EPROM芯片,容量为8KB,假定CPUA0~A19共20条地址线,可直接寻址的存储空间为1MB,若2764占有的地址空间为FE000H~FFFFFH,问应与CPU如何连线?/MEMRMREQA19~A16+5VA15A14A13G1/G2A/G2B/Y7C/Y6B~A/Y074LS138D0~D7A0~A12/CE/OE2764EPROMD0~D7A0~A122、局部译码片选法从余下的高位地址线中选取一部分参加地址译码。例:电路如下,CPU地址线A0~A19请计算6264RAM芯片的存储器空间地址。D0~D7A0~A12/CS/WE/OEG1/G2A/G2B/Y7C/Y6B~A/Y0/MEMRMREQA18A17A16+5VA15A14A1374LS1386264RAM/MEMWD0~D7A0~A128K字节空间8K字节空间81FFFH80000H01FFFH00000HA19不参加译码地址空间出现重叠现象3、线选法在比较简单的微型计算机系统中,由于存储容量不大,存储器芯片数目不多,可以直接使用单根高位地址线作为片选控制信号。这种方法不需要专门的译码电路,缺点是地址不连续,地址空间浪费现象很严重。例:已知某CPU系统有16条地址线(A0~A15),电路如图所示,试回答如下问题(1)片选信号的获得采用了哪种方法?(2)分别指出EPROM27128和RAM62256的地址范围。/OE/WE27128A0~A13D0~D7/CE/RD/WEA0~A13D0~D7/CE/OE/WE62256A0~A14D0~D7/RD/WEA0~A14D0~D7A15例:已知某CPU系统有20条地址线(A0~A19),试设计一容量为16K*8位的RAM,并安排地址空间的70000H~71FFFH段及76000H~77FFFH段,可提供的芯片为8K*8位的RAM芯片6264,试设计相应的片选译码电路(不允许地址空间重叠)。例:已知某CPU系统有20条地址线(A0~A19),试设计一容量为16K*8位的RAM,并安排在地址空间的34000H~37FFFH段,可提供的芯片为8K*8位的RAM芯片2764,试设计相应的片选译码电路(不允许地址空间重叠)。思考题:设计一个半导体存储器,其容量为6K*8位。其中固化区有4K字节,选用EPROM2716(2K*8位);工作区有2K字节,选用SRAM芯片2114(1K*4位)。地址总线A15~A0,双向数据总线D7~D0。2K*82K*81K*41K*41K*41K*46KB解:1、计算芯片数量4KB固化区:(4K/2K)=2工作区(2/1)*(8/4)=42、地址分配与片选逻辑芯片容量芯片地址片选信号片选逻辑2KA10~A0/CS0/A12/A112KA10~A0/CS1/A12A111KA9~A0/CS2A12/A11/A101KA9~A0/CS3A12/A11A103、连接芯片D7~D4D3~D0271627162114211421142114R//WA0~A10/A12/A11/A12A11A12/A11/A10A0~A10A0~A9A0~A9A12/A11A10/CS0/CS2/CS3/CS1