「駆動学習 - NANDフラッシュドライバ(MTD層分析とNANDドライブの生産)」

1.次のようにNANDフラッシュタイプはこのセクションK9F2G08U0Mで使用され、そのコマンドであります

  

次のように1.1読み取ったIDは、私たちの上のグラフ(IDを読み取る)は、例えば、そのタイミングです。

まず、チップセレクトCEを有効にする必要があります

1)CLEを有効にします

2)0x90をコマンドを送信し、書き込みパルスを発行WE(即ち、ハイレベルにローレベル)

3)CLEをリセットし、ALEは、次に缶

4)0X00アドレスを送信し、書き込みパルスを送信WE(即ち、ハイレベルにローレベル)

5)が配置CLEおよびALEが低いです

6)NREを判定しながら(リードイネーブル)が低いです

7)8 I / Oデータを読み出して、立ち上がりエッジパルスREを発行

(私たちの8 I / OポートへのNANDフラッシュ、そのモデルK9F2G08U0M)

1.2 NANDフラッシュコントローラの紹介

  そこ2440で自動的にCLE、ALEこれらの制御ピンを制御し、NANDフラッシュコントローラで、私たちは、あなたが(読み、そのレジスタを完了することができるようにデータを書き込み、アドレスを書き、直接コマンドを書くことができ、コントローラを設定する必要があります以下に示すように、前にデータを読み書きする必要があるリズム&ブルースの足を)分析:

 

 

 

NANDフラッシュコントローラで、我々は唯一の段階(非常に簡単)以下のIDを読み取るために必要がある場合:

1)、ビット1 = 0のNFCONT(0x4E000004)を登録チップ選択を可能にするために

2)NFCMMD(0x4E000008)= 0x90を、送信コマンドレジスタ書き込み

3)アドレスを送信し、NFADDR(0x4E00000C)= 0X00レジスタ書き込み

4)NREを判定しながら(リードイネーブル)が低いです

5)データを読み取るために、NFDATA(0x4E000010)を登録読みます

我々は1.3 ubootをテストし、読み出しはidコマンドMDとMW(X小文字)によって達成されます

以下に示すように、最終的なリード0XEC 0XDA 0X10 0X95

 

 

 我々は、ちょうどNANDフラッシュマニュアルデータに対応する(メーカー0XEC IDを表し、0XDAは、デバイスIDことを示します)。

 

私たちは、読み出しIDコマンドを終了したい場合は、単に行にリセットし、同様に、読み出しデータ/書き込みデータから撤退し、それがリセットされます。

1.4リセットコマンドが0xFFであり、そのタイミングチャートを以下に示します。

 

 

 

 

 1.5は同様に、我々は、読み出しアドレスのタイミング図を見て、再び参照してください。

2K内のページのアドレスを示す場合には、カラムアドレスの対応カラムアドレス

特定のページを示す行アドレスに対応する行アドレス、

図5のサイクルのアドレスを、次のように:

当社のNANDフラッシュ= 256メガバイト=(2K * 128M)Bので、

だから、行アドレス= 128M = 2 ^ 17(〜A11 A27)

だから、列アドレス= 2K = 2 ^ 11(A10〜A0)

 

おすすめ

転載: www.cnblogs.com/zhuangquan/p/11698986.html