1 Reply Latest reply on Apr 2, 2020 6:45 PM by JuyoungJ_06

    Community Translation - Change S25FL064L from Default Serial SDR Mode to Quad or QPI Mode - KBA222445

    KaKi_1384211

      【タイトル】

      S25FL064LをデフォルトのSDRモードからQuadモード、または QPIモードに変更する方法 - KBA222445

       

      【質問】

      S25FL064LをデフォルトのSDRモードからQuadモード、または QPIモードに変更する方法を教えてください。

      *デフォルトのSDRモード : READ 03h, 4READ 13h, FAST_READ 0Bh, 4FAST_READ 0Ch, DOR 3Bh, 4DOR 3Ch, DIOR BBh, 4DIOR BCh

      *Quadモード : QOR 6Bh, 4QOR 6Ch, QIOR EBh,4QIOR ECh,

      *QPIモード : QIOR EBh, 4QIOR ECh

       

      【回答】

      QUAD_NV bit(CR1NV[1]) :

      Quadデータ幅ビット(QUAD_NV) は、Configuration Register-1 NVbit1(CR1NV[1]) にアサインされており、

      そのCR1NV[1]に “1” を設定する(CR1NV[1] = 1) と、FlashOuad入力 / 出力モード(QIOモード) を対応することが出来ます。

      これにより、FlashDual出力(1-1-2) コマンド(DOR 3Bh, 4DOR 3Ch)及び Quad出力(1-1-4) コマンド(QOR 6Bh, 4QOR 6Ch) と

      Dual入出力(1-2-2) コマンド(DIOR BBh, 4DIOR BCh)Quad入出力(1-4-4)コマンド(QIOR EBh,4QIOR ECh) を認識して、該当するモードが対応可能になります。

      * Dual出力(1-1-2) モード(DOR 3Bh, 4DOR 3Ch) Dual入出力(1-2-2) モード(DIOR BBh, 4DIOR BCh)

      Configuration Register-1 NVbit1(CR1NV[1]) ”0” (CR1NV[1] = 0) でも使用可能です。

      電源投入時に、CR1NV[7 : 0] bit値がCR1V[7 : 0] にコピーされ、CR1V [7 : 0] のデフォルト値となります。

       

      QPI_NVbit (CR2NV[3]) :

      Quad Peripheral Interfaceビット(QPI_NV) は、Configuration Register-2 NVbit3(CR2NV[3]) にアサインされており、

      そのCR2NV[3] “1” を設定する(CR2NV[3] = 1) FlashQPIモード(QIOR EBh, 4QIOR ECh) を対応することが出来ます。

      QPIモードでは、InstructionAddressとデーダは4bit(4-4-4) で転送されます。

      電源投入時に、CR2NV[7 : 0] bitCR2V[7 : 0] にコピーされ、CR2V[7 : 0] のデフォルト値となります。

       

      QUAD_NV bit(CR1NV[1]) QPI_NV bit(CR2NV[3]) “1” を設定する方法(プログラミング方法) :

      1) WRENコマンド(06h) を入力します。Status Register-1 NVbit1(SR1NV[1]) は自動的に “1” に設定されます。これでWriteコマンド受付状態です。

      ** 揮発レジスタのWrite Enableコマンド(WRENV 50h) ではStatus Register-1 Vbit1(SR1V[1]) “1” になりません。”0” のままです。

      2) WRRコマンド(01h) を入力後、次の8bitStatus Register-1NV8bitになります。そのため書き換える必要があるbit “1” に設定してください。

      *Status Register-1 NVbit1(SR1NV[1])Read Onlyですので、”1” に設定されている(Writeコマンド受付状態) ことを確認してください。

      その次の8bitConfiguration Register-1 NV8bitになります。従いまして、Quadモードで使用する場合は、”02h” を入力してください。

      その次の8bitConfiguration Register-2 NV8bitになります。従いまして、QPIモードで使用する場合は、”68h” を入力してください。デフォルト値は “60h” です。

      その次の8bitConfiguration Register-3 NV8bitになります。デフォルト値は “78h” です。

      Configuration Register-3 NVを書き換える必要がなければ、24bit目でCS#High(CS# = H) にすることで、SR1CR1CR2の書き込みが完了されます。

      新しく書き込みされた不揮発性レジスタのbit :

      SR1NV = 02h(WEL_D bitSR1NV[1]) = 1

      CR1NV = 02h(QUAD_NV bitCR1NV[1] = 1

      CR2NV = 68h(QPI_NV bitCR2NV[3] = 1。これはQPIモード(QIOR EBh, 4QIOR ECh) が必要な場合に設定。

      CR3NV = 78h(WrapLatencyの設定に変更がない場合、デフォルト値の78hのまま。)

       

      Power On Reset(POR)、ハードウェアリセット、またはソフトウェアリセット時に不揮発性(NV) レジスタのbit値は、揮発性レジスタにコピーされ、

      揮発性レジスタのデフォルト値になります。但し、Status Register-2(SR2V) は全てRead onlybitのため、ユーザーが書き込むことはできません。

      電源投入時、SR2Vのデフォルト値は “00h” ですが、デバイスのステータスによって自動的に変更されます。

      また、不揮発性レジスタ(NV) が消去され、新しいbit値で再書き込みされるたびに、揮発性レジスタは不揮発性レジスタ(NV) bit値をコピーするため

      それぞれ対応した新しいbitに反映されます。

       

      揮発性レジスタは、不揮発性レジスタのbit値が想定されます。

      SR1NV = 02h(WEL_D bitSR1NV[1] = 1

      CR1NV = 02h(QUAD_NV bitCR1NV[1] = 1

      CR2NV = 68h(QPI_NV bitCR2NV[3] = 1。これはQPIモード(QIOR EBh, 4QIOR ECh) が必要な場合に設定。

      “X = Don’t care; CR1V[1] bit “1” 、または “0” のいずれかです。CR2V[3] = 1の場合、QPIモードが優先され、CR1V[1] の設定は無視されます。