<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 大容量NAND Flash在多媒體手機(jī)中的應(yīng)用

          大容量NAND Flash在多媒體手機(jī)中的應(yīng)用

          作者: 時間:2016-12-20 來源:網(wǎng)絡(luò) 收藏


            完成ReadMode(1)的偽碼如下:

            ReadMode1_Func(Cmd, Addr)

            {

            RE=1;

            ALE = 0 ;

            CLE = 1 ;

            WE = 0 ;

            CE=0;

            SendCmd(Cmd); // 向NAND 發(fā)送操作命令,此例中應(yīng)該是00H

            WE = 1 ; / / NAND 取走命令

            CE = 1 ;

            CLE=0; // 發(fā)送命令結(jié)束

            ALE=1; // 開始發(fā)送起始地址

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

            {

            WE = 0 ;

            CE=0;

            SendAddr(Addr);

            WE=1; // 取走指令

            CE=1;

            } // 發(fā)送完所有地址

            CE=1;

            WE = 1 ;

            ALE = 0 ;

            Delay(2);

            while(BUSY)

            Wait; // 判斷等待狀態(tài)是否結(jié)束

            RE=0;

            CE=0;

            ReadData(Buf); // 讀取數(shù)據(jù)到buffer

            }


          2.5 NANDFlashDiver的特殊功能

          NANDFlash的訪問是串行的,比較類似硬盤的存儲方式。NANDFlash必須有Driver的支持才能在手機(jī)使用。Driver除了提供對NANDFlash的Read,Program,Erase外,還應(yīng)該提供以下基本的功能:

            BadBlockManagement

            WearLevelingTreatment

            ECC(ErrorCorrectCode)

          NANDFlash是通過Driver分配的邏輯地址來進(jìn)行訪問的。BadBlockManagement對壞塊不分配邏輯地址,這樣會形成連續(xù)的邏輯地址。WearLevelingTreatment避免對某一區(qū)域進(jìn)行大量的讀寫操作,這樣就會延長NANDFlash的使用時間。ECC主要完成讀寫過程中的糾錯,但是ECC只能對1bit的數(shù)據(jù)進(jìn)行糾錯。

          3 結(jié)語

          在多媒體手機(jī)中NANDFlash主要用來存儲多媒體數(shù)據(jù)(圖片、語音文件等)。在實(shí)際應(yīng)用中不會對NANDFlash進(jìn)行頻繁的寫入和擦除操作,而且多媒體數(shù)據(jù)對數(shù)據(jù)的完整性要求也不是很高,但是多媒體數(shù)據(jù)的數(shù)據(jù)量較大。這些特征決定了使用NANDFlash來存儲多媒體數(shù)據(jù)是十分恰當(dāng)?shù)?,這也正是業(yè)界的通行做法。


          上一頁 1 2 下一頁

          評論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();