存储器相关,聚焦于半导体存储器,主要分为读写存储器、只读存储器以及读为主的存储器。接着叙述芯片逻辑,以及芯片优化。
# 回顾:存储器
# 回顾:存储器

1Byte(字节) = 8 bit(比特)
1 字 可能是 4 字节,也可能是 8 字节。根据计算机是 32 位还是 64 位有所不同,不同计算机有不同的字长。

# 存储器层次结构

# 半导体存储器

半导体
位元 存储 1 位数据
# 半导体存储器类型

表中列出的而所有类型的存储器都是随机存取的。
快闪 flash——U 盘是其中的一种。
# 读 - 写存储器 —— 随机存取存储器 RAM

RAM 的明显特征是,可以方便快捷地从存储器读取数据和向存储器写入新数据,且读写操作都是通过使用电信号来实现的。
易失 —— 必须持续供电,一旦断电,数据就会丢失。
# SRAM 静态 RAM

CS 片送
RW 控制读写

推导过程

# DRAM 动态 RAM

通过电容充电来存储数据。
电容器有漏电趋势,动态 RAM 需要周期地充电刷新来维持数据的存储。
动态一词就是在描述存储电荷丢失的趋势,即使电源一直在供电。
# SRAM 与 DRAM 的对比

DRAM 密度高,价格便宜,趋向于满足大容量存储器的要求。但是 SRAM 更快。
SRAM 一般用于 cache 存储器(片上或者片外的)【CPU 中】,而 DRAM 则用于主存储器中。
# 只读存储器
# ROM 只读存储器

问题补充:固化数据需要较大的固定成本,无论是制造一片或者复制上千片特殊的 ROM。但是可以通过批量生产降低单片芯片的成本。
# 可编程 ROM(PROM)

需要少量的存储特定内容的 ROM 芯片,可以选择较为廉价的可编程 PROM
可由供应商或者用户在芯片出厂后写入一次、
# 主要进行读操作的存储器

# EPROM

使芯片暴露在紫外线辐射下使所有的存储位元都被擦除,没有办法做到很精确,因此是芯片级的可擦除性。

# EEPROM

任何时候都可以写入,无需擦除原先内容,只更新寻址到的一个或多个字节。
将非易失性和数据修改灵活的优点结合起来。修改数据只需要使用常规的控制、地址和地址总线。
电写入,从 1 变成 0; 电擦除,从 0 变成 1。
# 快闪存储器

NAND Flash 共用一条线 —— 外部存储器
# 各类 ROM 对比

# 芯片逻辑
# 从位元到主存




位扩展,从 1bit 增加到 8bit,需要增加 7 根线。
字扩展,从 16K 变成 64K,16K 需要 7 根线,64K 需要 8 根线【因为行列复用】,只需要增加一根线,就可以实现 16K 到 64K。
1K = 2 10
有多少位数据,就需要有多少根数据线。


# 如何寻址:地址译码器


DRAM 不用刷新,采用行列复用 —— 用 11 位分别计算出行地址和列地址进行访问, 因为 DRAM 的存储空间较大,且行列复用耗时较高,所以只在 DRAM 中使用。
SRAM 且没有 RAS(行地址选通)和 CAS(列地址选通),也没有数据输入输出缓冲器,SRAM 常作为缓存,需要更快的速度。
WE 写允许
OE 输出允许
# 如何刷新

集中式刷新会造成死区,影响使用,因此开发分散式刷新和异步刷新进行优化。
译码阶段不需要进行缓存,每行的刷新相对独立,不需要按照顺序。
# 高级的 DRAM 架构

# 同步 DRAM (Synchorounous DRAM, SDRAM)
# 双频率 SDRAM (Double-Data-Rate SDRAM)

SDRAM
在每一次行选之前,都需要做预充电
如果下一次仍然是同一行的数据,不需要行选。
在时钟上升沿才能发数据

DDR SDRAM
在时钟下升沿也可以发数据

核心频率无法改变 —— 电容很难提升


# 寄存器基本原理

边沿 D 触发器,RS 锁存器以及增加了 input 和 clock(?
寄存器和 CPU 的时钟同步
# 总结
