1) 先从硬件上来了解一下nand flash
k9f2g08r0a 256M*8 需要28线地址线,但原理图上只有8根线,所以是数据、地址利用,地址多个周期发出。
CLE 命令、ALE 地址,都为0是传输数据。
nand flash不能像内存一样直接读写,要先发出命令,再发地址,再读写数据。这就需要操作nand flash控制器,把命令、地址、数据的值写入寄存器中就可以。
NAND FLASH是一个存储芯片, 那么: 这样的操作很合理"读地址A的数据,把数据B写到地址A"
问1. 原理图上NAND FLASH和S3C2440之间只有数据线, 怎么传输地址?
答1.在DATA0~DATA7上既传输数据,又传输地址
当ALE为高电平时传输的是地址,
问2. 从NAND FLASH芯片手册可知,要操作NAND FLASH需要先发出命令, 怎么传入命令?
答2.在DATA0~DATA7上既传输数据,又传输地址,也传输命令
当ALE为高电平时 传输的是地址,
当CLE为高电平时 传输的是命令
当ALE和CLE都为低电平时 传输的是数据
问3. 数据线既接到NAND FLASH,也接到NOR FLASH,还接到SDRAM、DM9000等等,