微机原理及应用CH7 内存储器及其管理.ppt
文本预览下载声明
存储器模块设计 确定芯片型号及数量 根据容量、速度、价格、功耗等要求,确定芯片的具体型号和数量。如考虑选用SRAM还是DRAM,是否需要E2PROM、FLASH等等。 芯片的种类和数量应越少越好;在芯片数量相同的情况下应考虑总线的负载能力和系统连接的复杂性。 思考:若要求扩展64K容量的内存,以下几种选择哪种最优? 64K?1的芯片数量N=(64K?8)/(64K?1)=1?8片;需位扩展 8K?8的芯片数量N=(64K?8)/(8K?8)=8?1片;需字扩展 16K?4的芯片数量N=(64K?8)/(16K?4)=4?2片;需字位扩展 从总线负载和系统连接来看,第一种选择最好。 存储器模块设计 内存地址空间的分配 在PC机中,大部分存储区域已被系统使用或被系统保留,用户扩展存储器可选择的地址范围一般落在0C0000H~0DFFFFH范围内。当然,实际设计时,还需要考虑系统的具体配置,以及是否需要设置选择开关来在改变扩展存储器的地址范围。 用户扩展存储器地址空间的范围决定了存储芯片的片选信号的实现方式。 CPU与存储器的连接 另外,如果系统中数据总线的宽度大于8bit,如第二章中所述的8086微处理器系统,为了能同时进行8位和16位操作,还应该设计高位库和低位库。 即根据选定存储芯片的特点确定其字位扩展方式:通常各存储芯片上的地址线及读写控制线均互连,而数据线和片选线的连接方式需根据具体情况确定。 设计较大容量存储器时宜选用容量为N×1的存储芯片进行位扩展,而不选用字扩展,为什么? 一、存储器片选译码电路 地址总线的低位地址线直接与各存储芯片的地址线连接。所需低位地址线的数目N与存储芯片容量L的关系:L=2N。 地址总线余下的高位地址线经译码后,做各存储芯片的片选。通常M/IO信号也参与片选译码。 CPU与存储器连接包括地址总线、数据总线、控制总线的连接。 二、片选信号可以采用线译码、部分译码和全译码等三种方式(或三种方式的组合)来实现。 线译码 部分译码 全译码 每组芯片使用一根地址线作片选; 只有部分高位地址线参与译码形成片选信号; 全部高位地址线都参与译码形成片选信号; 地址信号不完全确定,所以存在地址重叠问题,浪费寻址空间,并可能导致误操作。 例:设某系统地址总线宽度为20bit,数据总线宽度为8bit。现采用8K?8芯片实现32KB扩展存储器,要求其地址从0C0000H开始,试画出该扩展存储器与系统三总线的连接方式。 分析:扩展存储器共需要8K?8的存储芯片数量N=(32K?8)/(8K?8)=4?1片。 数据线:不要位扩展,芯片数据线互连后与系统数据线连接。 读写控制线:所有芯片的读/写线分别互连后与系统相连。 低位地址线:8K容量的存储芯片需要13根地址线进行字选,所有芯片地址线互连后与系统的低13位地址线(A0~A12)连接; 高位地址线:剩余的7根系统地址线(A13 ~ A19)可用于产生所需的4根片选线。 用全译码法实现扩展存储器的片选设计 芯 片 A19 ~A15 A14 A13 A12~A0 地址空间(顺序方式) ① 0C1FFFH~0C0000H ② 0C3FFFH~0C2000H ③ 0C5FFFH~0C4000H ④ 0C7FFFH~0C6000H 全译码方式下,系统的每一条地址线都应该参与译码。设该扩展存储器占用0C0000H开始的一段连续地址空间,则可用下表表示系统地址信号与各芯片所占地址空间的关系: 111111111111 ~0000000000000 11000 0 0 11000 0 1 11000 1 0 11000 1 1 从该表中可以看出: 低位地址线A12~A0应直接接在存储芯片上,寻址片内8K单元; 次高位地址线A14、A13译码后产生片选信号区分4个存储芯片; 最高位地址线A19~A15及控制信号M/(/IO)可用作片选信号有效的使能控制。 符合要求的全译码电路(一) D0 ~ D7 A0 ~ A12 ④ 8K*8 D0~7 ③ 8K*8 D0~7 ② 8K*8 D0~7 CS1 ① 8K*8 D0~7 用门电路完成片选译码,电路结构看起来比较复杂。 A19 A18 A17 A16 A13 A14 A15 M//IO R/W 符合要求的全译码电路(二) 用译码器代替门电路完成片选译码,电路工作稳定,结构简练。 2-4 译码器 CS R/W D0 ~ D7 A0 ~ A12 A19 A18 A17 A16 A13 A14 A15 M//IO ④ 8K*8 D0~7 ③ 8K*8 D0~7
显示全部