新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 大容量NAND Flash在多媒体手机中的应用

大容量NAND Flash在多媒体手机中的应用

作者: 时间:2016-12-20 来源:网络 收藏


  完成ReadMode(1)的伪码如下:

  ReadMode1_Func(Cmd, Addr)

  {

  RE=1;

  ALE = 0 ;

  CLE = 1 ;

  WE = 0 ;

  CE=0;

  SendCmd(Cmd); // 向NAND 发送操作命令,此例中应该是00H

  WE = 1 ; / / NAND 取走命令

  CE = 1 ;

  CLE=0; // 发送命令结束

  ALE=1; // 开始发送起始地址

  for(i=0;i<3;i++)

  {

  WE = 0 ;

  CE=0;

  SendAddr(Addr);

  WE=1; // 取走指令

  CE=1;

  } // 发送完所有地址

  CE=1;

  WE = 1 ;

  ALE = 0 ;

  Delay(2);

  while(BUSY)

  Wait; // 判断等待状态是否结束

  RE=0;

  CE=0;

  ReadData(Buf); // 读取数据到buffer

  }


2.5 NANDFlashDiver的特殊功能

NANDFlash的访问是串行的,比较类似硬盘的存储方式。NANDFlash必须有Driver的支持才能在手机使用。Driver除了提供对NANDFlash的Read,Program,Erase外,还应该提供以下基本的功能:

  BadBlockManagement

  WearLevelingTreatment

  ECC(ErrorCorrectCode)

NANDFlash是通过Driver分配的逻辑地址来进行访问的。BadBlockManagement对坏块不分配逻辑地址,这样会形成连续的逻辑地址。WearLevelingTreatment避免对某一区域进行大量的读写操作,这样就会延长NANDFlash的使用时间。ECC主要完成读写过程中的纠错,但是ECC只能对1bit的数据进行纠错。

3 结语

在多媒体手机中NANDFlash主要用来存储多媒体数据(图片、语音文件等)。在实际应用中不会对NANDFlash进行频繁的写入和擦除操作,而且多媒体数据对数据的完整性要求也不是很高,但是多媒体数据的数据量较大。这些特征决定了使用NANDFlash来存储多媒体数据是十分恰当的,这也正是业界的通行做法。


上一页 1 2 下一页

评论


技术专区

关闭