Nand Flash简介
简介
相当于pc机的硬盘,保存系统运行所必须的操作系统、应用程序、用户数据以及运行过程中产生的一系列数据。掉电后数据仍可保存。
贴上Tiny6410所用的Nand Flash芯片的引脚配置图和信息,以后会用。
引脚
引脚配置图:
引脚描述:
基本结构图
由图中可以看到,一页有2KB的空间以及64*8bit的额外空间(韦东山老师的视频教程里称之为OOB,不在Nand Flash的编址范围之内,一般情况下不用)。可以看出,一页有2112*8个cell(一个cell为1bit),一个block有64页,一个Device Register有2K个块(block)。
Nand Flash Controller
硬件连接图
从图中可以看到,S3C6410只有数据总线与Nand Flash相连,而没有地址总线,这与SDRAM,SRAM,寄存器,网卡等都不相同,这也意味着Nand Flash有着另一种寻址方式,而不是由CPU统一编址。
Nand Flash访问方式
没有了地址总线,那么所有的命令、地址、数据都得由数据总线完成,如何确定是命令、地址还是数据,则是控制信号需要完成的工作。
基本访问步骤是:
发出命令(CLE引脚):
读,写,擦除
PS:读写操作都是以页为单位执行的,而擦除操作是以块为单位执行的。
Nand Flash的Command Set:
对S3C6410来说,这一步简化为写NFCMMD寄存器,将所需的命令通过Command Set表映射为一个16进制数,写入该寄存器即可。
发出地址(ALE引脚):
对S3C6410来说,这一步简化为写NFADDR寄存器。
传输数据(WE,RE引脚):
对S3C6410来说,这一步简化为写NFDATA寄存器。
状态:
对S3C6410来说,这一步简化为写NFSTAT寄存器。
代码示例
明天分析。