您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > NAND-FLASH-控制器
NANDFLASH控制器K9F1208U0MNORNAND对比NORNAND容量1MB~32MB16MB~512MBXIP可片内执行不可擦除速度5s3ms写慢快读快较快可靠性较高较低,需校验可擦除次数10000~100000100000~1000000生命周期低,10%NAND10NOR接口、体积与RAM相同I/O口访问控制随机存储串行访问编程简易度简单复杂,实现控制协议主要用途存放程序存放数据价格高低NANDFLASH物理结构:K9F1208U0MK9F1208U0M引脚定义硬件接口电路传输所有命令字,地址,数据软件控制协议基本流程开始写命令字写操作地址数据执行命令检查状态结束指令,数据通过I/O口传输,每次一字节操作示例:写入一页数据就绪/忙碌数据线命令字:80h代表写入页操作要写入的地址,写入的数据命令字:10h代表执行写入命令字:70h查询状态状态判断必须在R/B状态为低时执行写入K9F1208U0M命令字00h读A区,01h读B区读C区读芯片序列号复位写入多页写入复制多块复制块擦除多块擦除K9F1208U0M存储结构页地址四个Plane每个Plane1024个块每个块32页每页512字节+16字节PLANE划分注意:Plane内的块不是连续的。纵向组合Block0Block1Block4092Plane0K9F1208U0M地址格式每页512+16=28+1+24I/O线共8条,每次8位,固只能分两次读取地址:A0~A7联合命令字确定上半部(00h),下半部(01h)列地址页地址页地址中:每32页一个块,所以:A9~A13为块内页地址每1024个块组成一个Plane,A14~A25为Plane内块地址共有4个Plane,A14~A15为Plane地址地址格式:列地址+页地址+Plane地址+块地址注意:为什么没有A8读操作命令格式:00h/01h+地址页结构:一页512+16字节,8位地址显然不够,至少需要三次读取每页分为三个区,A:0~255B:256~511C:512~527通过命令字确定读取的是哪个区页面区读取显然:00h读取前半区,相当于A8=001h读取前半区,相当于A8=1读操作时序:A,B区命令字地址,分四次传输数据输出读操作时序:C区有效地址数据:A0~A3数据输出从上半区开始读取从下半区开始读取数据由起始地址顺序输出?如何停止数据输出使CE引脚变高数据读取的编程正确的读取数据,需要严格按照时序进行编程过程:控制时序根据时序实现I/O口上的指令协议核心:寄存器的配置和读写相关寄存器寄存器功能NFCONF:配置寄存器,配置时序NFCMD:寄存器写入指令NFADD:寄存器写入地址NFDATA:数据寄存器NFSTAT:状态寄存器时序分析寄存器操作CLEALECEWERENFCONF:使能外部flashLNFCMD:写入控制字HLLLHNFADD:写入地址LHLLHNFDATA:读取数据LLLHL当执行下列操作时,相应的引脚状态如下表自动变换引脚状态必须满足如下状态才能执行相应的操作寄存器时序配置S3C2410时序NANDFLASH时序值寄存器时序配置值:TACLS=0TWRPH0=3TWRPH1=0程序编制原语NFCONF&=~0x300;//使能NANDFLASH,CE置0,配置时钟for(i=0;i10;i++);//等待10个周期,确保就绪NFCMD=0x00;//ALE置0,CLE置1,WE由低变高/*写地址*///ALE置1,CLE置0,WE由低变高NFADDR=A0~A7;NFADDR=A9~A16;NFADDR=A17~A24;NFADDR=A25;/*读取数据*/*buf=NFDATANFCONF&=~0x800//关闭芯片,用于保护NFCONNFCMD&NFADDRNFDATA&NFSATA&NFECC向FLASH写数据:NFDATA=*buf从FLASH读数据;*buf=NFDATA代表R/B状态线的值写入页命令格式:命令字:80地址数据命令字:10执行写入命令字:70:读取状态根据状态字执行响应操作写入时序图命令字地址,分四次传输数据输入命令字命令字写入程序编制原语NFCONF&=~0x300;NFCMD=0x08;/*写地址*/NFADDR=A0~A7;NFADDR=A9~A16;NFADDR=A17~A24;NFADDR=A25;/*写数据*/NFDATA=*bufNFCMD=0x10;NFCMD=0x70h;判断处理NFCONF&=~0x800;FOURPALNEPAGEPROGRAM每个PALNE只能写一页块擦除命令格式:命令字:60块地址:3周期命令字:D0执行写入命令字:70:读取状态根据状态字执行响应操作注意:地址只需要3个周期块擦除时序60hD0h70h块地址多块擦除最多可重复4次页拷贝命令格式命令字:00原地址命令字:8A命令字:70:读取状态根据状态字执行响应操作目的地址命令字:10页拷贝时序图00h8Ah10h70h源地址目标地址拷贝到同一PLANE的另一页状态命令寄存器命令结束后,通过读取相应管脚的值确定操作状态
本文标题:NAND-FLASH-控制器
链接地址:https://www.777doc.com/doc-4836557 .html