计算机组成原理课件 4存储器 3主存储器组织

上传人:f****u 文档编号:129342239 上传时间:2020-04-22 格式:PPT 页数:56 大小:966KB
返回 下载 相关 举报
计算机组成原理课件 4存储器 3主存储器组织_第1页
第1页 / 共56页
计算机组成原理课件 4存储器 3主存储器组织_第2页
第2页 / 共56页
计算机组成原理课件 4存储器 3主存储器组织_第3页
第3页 / 共56页
计算机组成原理课件 4存储器 3主存储器组织_第4页
第4页 / 共56页
计算机组成原理课件 4存储器 3主存储器组织_第5页
第5页 / 共56页
点击查看更多>>
资源描述

《计算机组成原理课件 4存储器 3主存储器组织》由会员分享,可在线阅读,更多相关《计算机组成原理课件 4存储器 3主存储器组织(56页珍藏版)》请在金锄头文库上搜索。

1、4 3主存储器的组织 关于存储器的组织 目的 用不同容量和不同数量的存储器芯片构成一个存储器系统 实现与CPU的连接 涉及内容 存储器的逻辑设计 动态存储器的刷新 4 3 1半导体存储器逻辑设计 应解决的问题 芯片的选用 地址分配 片选逻辑 信号线的连接 多大容量 位数 多少片等 将CPU提供的全部地址空间的哪些地址空间分配给所设计的存储器 怎样分配 电路中如何体现 如何产生芯片所需片选信号 所有信号线如何连接 线路连接的原理框图 CPU 控制总线 地址译码电路 产生片选信号 地址 例1 给出芯片地址分配与片选逻辑 画出存储器框图 1 计算所需芯片数 设计步骤 方法1 先扩展位数 再扩展单元数

2、 8片 位扩展 单元扩展或字扩展 存储器寻址逻辑 2 地址分配与片选逻辑 芯片内的寻址系统 芯片外的地址分配与片选逻辑 为芯片分配哪几位地址 以便寻找片内的存储单元 由哪几位地址形成芯片选择逻辑 以便寻找芯片 存储空间分配 本例假设 4KB存储器在16位地址空间 64KB 中占据任意连续区间 即本4KB占据64KB的哪4K空间 A15 A12A11A10A9 A0 任意值 片选 芯片地址 低位地址分配给芯片 高位地址形成片选逻辑 000 3FF 400 7FF 800 BFF C00 FFF 需要12位地址A11 A0 每块芯片需要10位地址A9 A0 低位地址分配给芯片 高位地址形成片选逻辑

3、 3 连接方式 假设片选信号低电平有效 即每一组的连接详图 如0组 某半导体存储器 按字节编址 其中 0000H 07FFH为ROM区 选用EPROM芯片 2KB 片 0800H 13FFH为RAM区 选用RAM芯片 2KB 片和1KB 片 地址总线A15 A0 给出地址分配和片选逻辑 例2 1 计算容量和芯片数 ROM区 2KB RAM区 3KB 存储空间分配 2 地址分配与片选逻辑 先安排大容量芯片 放地址低端 再安排小容量芯片 共3片 5K 0000H 13FFH A15A14A13A12A11A10A9 A0 5KB需13位地址寻址 A12 A0 即 对2K的ROM 有A12A11 0

4、0对2K的RAM 有A12A11 01对1K的RAM 有A12A11A10 100 低位地址分配给芯片 高位地址形成片选逻辑 A15A14A13为全0 3 连接方式 注 芯片每个单元长度为1个字节 片选信号低电平有效 假设ROM的片选信号有效时 便能实现读操作 CPU 地址总线 2KRAM 2KROM 1KRAM A10 A0 A10 A0 A9 A0 CPU 2KROM 2KRAM 1KRAM 数据总线D7 D0 关于全译码 部分译码和线译码 例1 用2114 1K 4 SRAM芯片组成2K 8的存储器 地址总线A15 A0 双向数据总线D7 D0 所需芯片数量 4片 分配地址范围 1000

5、H 17FFH 需要构成两组 问题是 如何产生CS片选信号 将整个2K 8的地址范围1000H 17FFH分给两个组 即两个1K 8 1000H 13FFH 1400H 17FFH A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0 00010000000000000001001111111111 第一组 第二组 第一组 第二组 方式之一 将除了与芯片连接的地址以外的所有高位地址用于译码产生片选信号 称为全译码方式 方式之二 将除了与芯片连接的地址以外的部分高位地址用于译码产生片选信号 称为部分译码方式 方式之三 A10 0 直接用一条可以区分两组地址范围的地址线的高

6、低电平作为片选信号 称为线译码方式 三种译码方式的应用场合 三种译码方式的优缺点 全译码方式的译码电路更为复杂 部分译码和线译码相对简单 部分译码和线译码时 存储器扩展比较困难 例 所设计的存储器达到CPU提供的全部存储空间时 必须用全译码 且任何时候都可以使用全译码方式 所设计的存储器未达到CPU提供的全部存储空间时 可以用部分译码或线译码 可采用全译码与部分译码相结合的方式 即部分芯片用全译码 另一些芯片采用部分译码 上例中 若采用线译码方式 用地址线A10的 0 和 1 来区分两组芯片 当需要扩展存储芯片时 为新扩展芯片分配任何地址都将与已有的存储空间的地址A10重叠 因此必须修改原有地

7、址译码电路 如再用1K 4芯片扩展一组2KB存储器 分配地址空间1800H 1FFFH 即1800H 1BFFH和1C00H 1FFFH 00011000000000000001101111111111 A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0 00011100000000000001111111111111 与采用线译码重叠 如果采用部分译码 扩展的存储空间的地址分配会受到一定限制 按前面的例子 新扩展的地址的A11A10不能为00和01 如果采用全译码 则没有上述问题 任何时候都可以使用全译码 如再用1K 4芯片扩展一组2KB存储器 分配地址空间2000

8、H 27FFH 00100000000000000010011111111111 A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0 与采用部分译码重叠 例3 用1K 8的存储芯片构成6K 8的存储器 CPU地址总线16条 数据总线D7 D0 需要的芯片数 6片 地址空间分配 2000H 23FFH 2400H 27FFH2800H 2BFFH 2C00H 2FFFH3000H 33FFH 3400H 37FFH 写出二进制代码 A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0 用于连接芯片的地址线为A9 A0 A10以上地址线用于译码产生

9、片选信号 任何一个区域的A15A14A13 001 A12A11A10体现不同区域的地址上的区别 000001010011100101 第一区第二区第三区第四区第五区第六区 采用的译码方式 全译码方式 001 部分译码 例4 用两片8KB的SRAM芯片组成16KB的存储器 地址总线A15 A0 数据总线D7 D0 采用的地址分配 0000H 1FFFH和2000H 3FFFH 00000000000000000001111111111111 A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0 第一片 第二片 001000000000000000111111111111

10、11 第一片和第二片的地址的高三位A15A14A13分别为000和001 体现区别的位是A13 可以采用线译码方式 假设再扩展两片8KB的容量 作以下地址分配 4000H 5FFFH和6000H 7FFFH 01000000000000000101111111111111 A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0 第三片 第四片 01100000000000000111111111111111 连同已有的第一片和第二片 地址分配情况是 00000000000000000001111111111111 A15A14A13A12A11A10A9A8A7A6A5A

11、4A3A2A1A0 第一片 第二片 00100000000000000011111111111111 01000000000000000101111111111111 第三片 第四片 01100000000000000111111111111111 只有两片芯片时 A13 0选中第一片 增加两片后 第三片的A13也等于0 同样A13 1选中第二片 但第四片的A13也等于1 因此 仅用A13不能区分对不同芯片的访问 可以采用部分译码方式 第一片 A14A13 00 第二片 A14A13 01 第三片 A14A13 10 第四片 A14A13 11 有以下逻辑电路 采用部分译码方式 假设在上述四片

12、的基础上 再扩展两片8KB的容量 作以下地址分配 8000H 9FFFH和A000H BFFFH 连同已有的四片芯片 地址分配情况是 A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0 只有四片芯片时 A14A13 00选中第一片 但又增加两片后 第五片的A14A13也等于00 同样A14A13 01选中第二片 但第六片的A14A13也等于01 因此 仅用A14A13不能区分对不同芯片的访问 需采用全译码方式 第一片 A15A14A13 000 第二片 A15A14A13 001 第三片 A15A14A13 010 第四片 A15A14A13 011 有以下逻辑电路

13、第五片 A15A14A13 100 第六片 A15A14A13 101 采用全译码方式 结论 1 采用线译码和部分译码方式 译码线路简单 但是可扩展性差 2 采用哪一种译码方式取决于所设计的存储系统的容量 3 任何容量的存储器系统都可以采用全译码方式 可扩展性好 例 仅有两片8KB的芯片时 采用全译码方式 例5 用16K 8芯片1片 8K 8芯片3片 4K 8芯片4片 2K 8芯片3片 1K 8芯片1片 构成一个63K 8的存储器 地址总线16条 存储芯片总数 12片 地址空间分配 地址空间分配 4K 8 4片 5000H 5FFFH4000H 4FFFH3000H 3FFFH2000H 2F

14、FFH 8K 8 3片 A000H BFFFH8000H 9FFFH6000H 7FFFH 16K 8 1片 C000H FFFFH 2K 8 3片 1800H 1FFFH1000H 17FFH0800H 0FFFH 1K 8 1片 0400H 07FFH 空闲区 0000H 03FFH 写出地址分配的二进制代码 A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0 由以上地址分配 设计出以下存储器译码电路 01 01 00 A13A12 4 3 2主存储器与CPU的连接 2 较大系统模式 1 最小系统模式 地址 1 系统模式 3 专用存储总线模式 2 速度匹配与时序控

15、制 总线周期 时钟周期 异步控制 同步控制 扩展同步控制 CPU与主存间建立专用高速存储总线 CPU内部操作 访存操作 3 数据通路匹配 解决主存与数据总线之间的宽度匹配 8086存储器匹配方式如下 4 主存的控制信号 读写命令 存储器选择命令等 4 3 3动态存储器的刷新 1 刷新定义和原因 定义 刷新 动态存储器依靠电容电荷存储信息 平时无电源供电 时间一长电容电荷会泄放 需定期向电容补充电荷 以保持信息不变 定期向电容补充电荷 原因 注意刷新与重写的区别 破坏性读出后重写 以恢复原来的信息 2 最大刷新间隔 在此期间 必须对所有动态单元刷新一遍 非破坏性读出的动态M 需补充电荷以保持原来

16、的信息 2ms 3 刷新方法 按行读 刷新一行所用的时间 刷新周期 存取周期 刷新一块芯片所需的刷新周期数由芯片矩阵的行数决定 对主存的访问 由CPU提供行 列地址 随机访问 2ms内集中安排所有刷新周期 CPU访存 4 刷新周期的安排方式 死区 用在实时要求不高的场合 动态芯片刷新 由刷新地址计数器提供行地址 定时刷新 1 集中刷新 2ms 50ns 2 分散刷新 各刷新周期分散安排在存取周期中 100ns 用在低速系统中 2ms 3 异步刷新 例 各刷新周期分散安排在2ms内 用在大多数计算机中 每隔一段时间刷新一行 128行 15 6微秒 每隔15 6微秒提一次刷新请求 刷新一行 2毫秒内刷新完所有行 15 6微秒 15 6微秒 15 6微秒 刷新请求 刷新请求 DMA请求 DMA请求 同步突发静态随机存储器SBSRAM多端口SRAM先进先出存储器FIFO扩展数据输出动态随机访问存储器EDODRAM5 同步动态随机访问存储器SDRAM6 双倍速率SDRAM DDRSDRAM 4 3 4主存储器芯片技术 了解 作业 设计一半导体存储器 其中ROM区4KB 选用ROM芯片 4K 4位

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号