TI中文支持网
TI专业的中文技术问题搜集分享网站

nand 的ALE怎么算?

请问evm5517_v1\tests\nandflash这个例程中

擦除操作

// Start erase operation
NANDFLASH_CLE = CMD_ERASE;
NANDFLASH_ALE = (blocknum & 0x0003) << 6;
NANDFLASH_ALE = (blocknum & 0x03fc) >> 2;
NANDFLASH_ALE = (blocknum & 0x0c00) >> 10;
NANDFLASH_CLE = CMD_ERASE_CONFIRM;

中ALE为什么这么算,跟nand芯片的参数怎么结合对应起来?

feng wu2:

还有我如果用CS4,当执行完NANDFLASH_CLE = CMD_ERASE;,在地址0x700000+0x2000不应该是0x60吗,为什么我看是全0啊

feng wu2:

回复 Tony Tang:

非常感谢,已经解决了。

原来我有个误区就是这个ALE我要给的是地址,也就是要算出我想进行读写的页的偏移地址。但是实际不是这样的

这个ALE其实代表的是我要操作的第几块第几页,也就是在擦除的时候ALE就要告诉擦除第几块,而读写的时候ALE要告诉的是第几页。

然后再看对应nand的datasheet中的地址周期的介绍就能很好理解了

赞(0)
未经允许不得转载:TI中文支持网 » nand 的ALE怎么算?
分享到: 更多 (0)