微知-nandflash和norflash名字为什么叫nand和nor?主要区别是什么?
以前就死记硬背,分别是干嘛的?实际上背后还是有些逻辑
他们名字的主要区别是在于他们的存储单元的实现不同。
NAND flash 是 NOT 和 AND
NOR flash是 NOT 和 OR
所以
nand本质是and “与”
nor本质是or“或”
可以记忆为andflash和orflash
另外nor稳定性高支持xip直接执行。在很多嵌入式芯片就直接使用nor,只是xip执行比sram慢。但and or本质都是flash都是持久存储也就是所谓的非易失性。为什么叫易失。因为它是用电子在存储单元来维系的。用pn节围着。读取快写入慢。是按照bit读的。擦除按照扇区。扇区大小k级别。擦写10w次寿命。容量小 还很贵。所以常用在系统启动的代码存储比如bootrom。像一些嵌入式设备,为了节约成本,少用sram,有些代码就放在xip执行的。可随机访问(意味着擦除不回连带其他cell 寿命相对也多一些)。数据密度较低。
nand主要是容量大。稳定性不高。有坏块,还需要单独单元来记录坏块。擦写100万次寿命。比如bootloader和systemimg容量大的可以存储在这里。但是bootloader一般是sram加载。bootloader初始化ddr之后ddr加载os。只要是运行的,基本上都需要去加载到ROM里面。唯一的不同就是low flash支持XIP,能够直接执行。按照页来读写 块来管理和擦除。nand管理芯片有动态擦除算法决定其寿命。
nand中三种存储形式 slc mlc tlc表示single layer cell单层单元 多层和三层。slc寿命最长。