赞
踩
阈(yu)值电压,用于判断每个单元(cell)存储的状态数据值。一个单元划分的状态越多,控制进入栅极的电子越精细,写入的时间就越长。例如下图MLC存储单元四种状态就有四种值“11”“10”“01”“00”。
Row address:行地址 Column Address:列地址
行地址表示 LUN, Block, Page的地址。列地址表示的是page内部偏移的地址。一般来说,列是由2个Bytes地址组成,而行是由3个Bytes地址组成。行地址的位宽由flash的容量决定(block可能一个字节不够表达)
*有一些功能函数只需要发送行地址的LUN和Block即可,eg:擦除(Erase)。
LSB:最低有效位。MSB:最高有效位。CSB:中央有效位。
单元上CSB在TLC(3bits)更能体现出来,数据的写入遵循从低位到高位(LSB->CSB->MSB)
Upper page和lower page
Upper/lower page同时绕不开LSB和MSB概念,其实这只是一个映射关系。通过cell与其中的关系就能更易懂了,cell是物理存储单元。eg:MLC的cell由两个bit组成,因此存在LSB位和MSB位,LSB对应着lower page,MSB对应着upper page。
由cell的写原理知道,先写低位再写高位,因此Upper page的编写时间长,lower page的写时间短。
Lower page编写:
1. 写1,vth不变,保持擦除状态;
2. 写0,vth升高,达到“10”或“00”所需要的电压值;
Upper page编写:
1. 写1,Vth不变,保持擦除状态;
2. 写0,那么:
若lower page是‘1’,Vth将会升高到“01” 电压值;
若lower page是‘0’,Vth将会升高到“00” 电压值;
内存寻址
芯片模型图(举例)
io 0 | io 1 | io 2 | io 3 | io 4 | io 5 | io 6 | io 7 | |
---|---|---|---|---|---|---|---|---|
1st/col | A0 | A1 | A2 | A3 | A4 | A5 | A6 | A7 |
2nd/col | A8 | A9 | A10 | A11 | *L | *L | *L | *L |
3rd/row | A12 | A13 | A14 | A15 | A16 | A17 | A18 | A19 |
4th/row | A20 | A21 | A22 | A23 | A24 | A25 | A26 | A27 |
5th/row | A28 | *L | *L | *L | *L | *L | *L | *L |
*L must be set to “low”
列地址A0-A11:
页内地址,地址范围时0—4096,与页内地址(2k+64)对应,其实只需要A0-A10,而A11是用于表示oob区域(spare区)也就是图中多出64bytes。
行地址A12-A28:
表示LUN, BLOCK和PAGE地址,具体位宽根据flash容量大小设置,从数据手册得知。
*有一些功能函数只需要发送行地址而不需要发送列地址,eg:擦除(Erase)。
每个页都有一块区域,叫空闲区域。数据在读写的时候容易出错,为了保证数据正确性,要有对应的纠正机制(ECC),所以该区域用于存放数据的校验值。
OOB的读写是随着页的操作一起完成。
用途:
标记所处的block是否为坏块。
存储ECC数据。
存储一些和文件系统相关的数据。
对于一个Block里面,含有许多的page,假如Block0里面有255个page,那么在写入数据的时候,如果写了255个page的话,那么就叫做Close Block,如果从page0开始写,但是没写到page255的话,那么就叫做Open Block。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。