1. 闪存技术基础:NOR与NAND的起源与共性
在嵌入式系统和存储设备中,NOR Flash和NAND Flash就像一对性格迥异的双胞胎。它们都诞生于上世纪80年代,由东芝公司的舛冈富士雄博士发明,但设计理念和应用方向却大相径庭。这两种技术都属于非易失性存储器(NVM),即断电后数据不会丢失,这使它们成为现代电子设备中不可或缺的存储解决方案。
从物理结构来看,NOR和NAND都采用浮栅晶体管作为基本存储单元。数据存储的原理是通过在浮栅中注入或释放电子来改变晶体管的阈值电压,从而表示"0"或"1"。这种设计使得它们既具备了EEPROM的可擦写特性,又通过块擦除机制大幅提高了存储密度。
技术细节:浮栅晶体管中的电子可以保持10年以上不丢失,但反复擦写会导致氧化层磨损,这也是闪存有写入寿命限制的根本原因。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 核心差异解析:从物理结构到性能表现
2.1 内部架构与接口设计
NOR Flash采用并行架构,每个存储单元都直接连接到位线,就像城市中每家每户都有独立的门牌号和直达道路。这种设计使得CPU可以通过地址总线直接访问任意存储单元,实现真正的随机访问。典型的NOR芯片拥有独立的地址和数据引脚,例如16位数据总线加20位地址总线,这与SRAM的接口非常相似。
NAND Flash则采用了串联结构,存储单元像链条一样连接在一起。这种设计大幅减少了连线数量,通常只需要8个I/O引脚就能完成所有操作(命令、地址和数据都通过这组引脚分时传输)。带来的代价是必须按"页"(通常2KB或4KB)为单位进行读写,按"块"(通常128KB或256KB)为单位进行擦除。
2.2 存取方式对比
NOR的随机读取延迟通常在100ns以内,与DRAM相当,这使得它非常适合存储需要直接执行的代码。在实际应用中,我们经常看到这样的场景:嵌入式系统的Bootloader直接存放在NOR Flash中,上电后CPU直接从NOR中取指令执行,无需任何中间拷贝过程。
NAND的读取则需要经过复杂的寻址过程:
- 发送读命令(0x00)
- 分多次发送目标地址(通常需要5个周期)
- 等待数据准备就绪(tR时间,约25μs)
- 以50ns/byte的速度串行输出整个页的数据
这种差异就像查字典:NOR可以像纸质字典一样直接翻到目标页,而NAN
