目录
  1. 1. 字长位数扩展(位扩展)
  2. 2. 字存储容量扩展 (字扩展)
  3. 3. 字位扩展
计算机组成原理复习之存储器扩充

一颗存储芯片的容量和位数是有限的。在内存或者固态硬盘上,我们常常能看到很多存储颗粒被组合使用,这就是存储器的扩充。存储器扩充可以在存储颗粒工艺有限的情况下,制造大容量的存储设备。存储器扩充有以下三种形式。

字长位数扩展(位扩展)

给定的芯片字长位数较短,不满足设计要求的存储器字长,此时需要用多片给定芯片扩展字长位数。三组信号线中,地址线和控制线公用而数据线单独分开连接。

比如,我们可以利用16K×4位的SRAM芯片,设计一个存储容量为16K×8位的SRAM存储器。

  1. 第一步,要计算出为了达到扩充目的,所需的芯片数d,(d=设计要求的存储器容量/选择芯片存储器容量)。因此,在这个问题中,$d = \frac{16K\times 8}{16K\times 4} = 2片$

  2. 第二步,计算所需的地址总线和数据总线的位宽。在这个问题中,要扩容出16K×8的存储器,$16K = 2^{14}$,所以地址总线是0~13,总共14位。而数据总线就是16K×8中的那个8,因此是0~7,共8位。

  3. 第三步就是可以开始画图了。首先,先把所需的两个存储器芯片给画出来;然后,画出地址总线和数据总线;最后,连接控制控制总线,片选信号CS接地,RW信号连接到外部的RW信号即可。要注意的是,这里的扩充相当于一颗芯片存高四位,另一颗存低四位,数据总线的连接要标清楚。

字存储容量扩展 (字扩展)

给定的芯片存储容量较小(字数少),不满足设计要求的总存储容量,此时需要用多片给定芯片来扩展字数。三组信号组中给定芯片的地址总线和数据总线公用,控制总线中R/W公用,使能端EN不能公用,它由地址总线的高位段译码来决定片选信号。所需芯片数仍由(d=设计要求的存储器容量/选择芯片存储器容量)决定。

比如利用16K×8位的DRAM芯片,设计64K×8位的DRAM存储器。

  1. $d = \frac{64K\times 8}{16K\times 8} = 4片$。
  2. $A = log_264K=16 \ \ \ \ D = 8$
  3. 画图时,连接地址总线时需要注意,$A_{0}-A_{13}$之间总共是直接连在各个芯片上(控制16K种信号),剩余的$n$路先经过一个$n:2^n$(其中$2^n$必然等于k)译码器分贝连接到各个芯片的片选信号上,这里$n=2$,是2:4译码器。如果只多一路的话,无需使用2:4译码器,用一个非门即可。

字位扩展

实际存储器往往需要字向和位向同时扩充。一个存储器的容量为M×N位,若使用L×K位存储器芯片,那么,这个存储器共需要M/L×N/K个存储器芯片。字位扩展就是把上述两种情况结合起来。

比如使用1K×4的芯片,扩展到4K×8。

这里不重复计算前两步了,直接重点说明画图。纵向的叠加,是位扩展,横向为字扩展。其实可以看作是先进行位扩展,然后把这两颗芯片封装起来,再用四颗封装好的芯片进行字扩展。所以可以看到地址总线和片选信号会连接到每一颗芯片上。WE取反后连接到WR。

文章作者: QF
文章链接: http://blog.logan-qiu.cn/posts/b4ebbc17/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 QF的个人博客
打赏
  • 微信
  • 支付宝

评论