SAMSUNG Nand Flash应用

来源:互联网 发布:高压配电网络 编辑:程序博客网 时间:2024/04/30 20:35
 

K9K8G08U1M

  • 512Mx8Bits
  • Package Type: 48-Pin TSOP1

这是典型的NAND flash,由block组成,每一个block包含64Pages,而一个page2k+64=2048+64=2112字节。对于一个page0~2047个字节用来存储数据,2048~2111,共64个字节,Spare Area,用来存储page中每个sector的信息,其中第一个16字节用于描述第一个512个字节,第二个16字节用于描述第二个512个字节,以此类推,共64个字节,用于描述前面的2048个字节。这每一个16字节,在little-endianCPU上可以用下面的结构体表示。

typedef struct {

       BYTE       badBlock;      

       BYTE         oemReserved;

       WORD       reserved2;

       DWORD       reserved1;

       BYTE    ecc[3];

       BYTE    unused[5];

} LB_SPARE_AREA;

oemReservedOEM自定义的字段

ecc用于验证512个字节

badBlock是用来描述block的,在下一节会有详细的说明



Invalid Block的判别标准

typedef struct {

       BYTE       badBlock;      

       BYTE         oemReserved;

       WORD       reserved2;

       DWORD       reserved1;

       BYTE    ecc[3];

       BYTE    unused[5];

} LB_SPARE_AREA;

 

Invalid Block,就是我们常说的坏块。SAMSUNG规定在block的第一和第二个pageSpare Area的第一个字节,对于非0xFF的,就判定该blockInvalid Block。也就是上面结构体中的badBlock,如果不等于0xFF,就说明是坏块。反之,对于一般的blockbadBlock==0xFF




原创粉丝点击