2 Replies Latest reply on Sep 28, 2020 10:25 PM by NoTa_4591161

    Community Translation - FX3 SPI boot fails when S25FS128S flash is used – KBA231163

    NoTa_4591161

      Hi,               

       

      I would like to translate KBA231163into Japanese.

      Please confirm to my work.

       

      Thanks,

      Kenshow

        • 1. Re: Community Translation - FX3 SPI boot fails when S25FS128S flash is used – KBA231163
          MohammedN_41

          Hi, Kenshow-san

          You can work on this KBA.

           

          Thanks,

          Mohammed

          • 2. Re: Community Translation - FX3 SPI boot fails when S25FS128S flash is used – KBA231163
            NoTa_4591161

            Hi Mohammed-san,

             

            Japanese translation was over.
            Please check below.

             

            Original KBA:

            FX3 SPI boot fails when S25FS128S flash is used – KBA231163

             

            Thanks.

            Kenshow

            ==============================

             

            タイトル: S25FS128Sフラッシュを使用するとFX3SPIブートが失敗する – KBA231163

             

            バージョン:**

             

            デフォルトでは、S25FS128Sフラッシュデバイスにはハイブリッドセクターが付属しています(64KBの最初のセクターが9セクターに分割されています(4KB8セクターと32KBセクターが1つ)。残りのセクターはすべて均一です(それぞれ64KB)。

             

            FX3 SDKのコントロールセンターアプリケーションを使用する場合、内部プログラミングユーティリティ(CyBootProgrammer.img)は、フラッシュデバイスのセクターサイズが均一であると想定します。これにより、ハイブリッドセクターである最初のセクターのデータが破損します。

             

            これを防ぐには、コンフィグレーションレジスタ3CR3NV)を変更して、それぞれ64KBの均一セクターを使用するようにフラッシュデバイスを構成します。図1を参照してください。

             

            1.コンフィグレーションレジスタ3CR3NV):アドレス= 0x00000004

                   

             

            均一な64KBセクターでフラッシュを設定するには、WRAR 71hコマンドを使用してCR3NV [3]に「1」を書き込み、CR3NV [1]に「0」を書き込みます(CR3NVレジスタに0x08を書き込みます)。このレジスタを更新した後、デフォルトのコントロールセンターアプリケーションを使用して、ファームウェアイメージをフラッシュにロードします。

             

            別のアプローチとして、コントロールセンターユーティリティ(CyBootProgrammer.img)のデフォルトのプログラマツールを変更することがあります。ただし、他のタイプのフラッシュを使用すると、エラーが発生する可能性があることに注意してください。したがって、他のフラッシュデバイスで使用するためにCyBootProgrammer.imgバックアップを作成します。

             

            CyBootProgrammer.imgを変更するには、次の手順を実行します。

             

            1. SDKサンプルプロジェクトcyfxflashprogを次の場所からEZ- USBSuiteインポートします。

            C\Program Files(x86)\Cycles\EZ-USB FX3 SDK\1.3\firmware\basic_examples\cyfxflashprog

             

            2. cyfxflashprog.cソースファイルを開き、CyFxFlashProgSpiInit関数を見つけます。

             

            3.この関数の最後に次のコード行を追加します。

            uint32_t reg_adr = 0x000004;

            uint32_t temp;

            uint8_t  location[5], rdBuf[2];

            location[0] = 0x06;  /* Write enable. */

            CyU3PSpiSetSsnLine (CyFalse);

            status = CyU3PSpiTransferWords (location, 1, 0, 0);

            CyU3PSpiSetSsnLine (CyTrue);

            rdBuf[0] = 0x8;

            location[0] = 0x71; /* Sector erase. */

            temp  = reg_adr;

            location[1] = (temp >> 16) & 0xFF;

            location[2] = (temp >> 8) & 0xFF;

            location[3] = temp & 0xFF;

            location[4] = 0x08;

            CyU3PSpiSetSsnLine (CyFalse);

            status = CyU3PSpiTransferWords (location, 5, 0, 0);

            CyU3PSpiSetSsnLine (CyTrue);

             

            4.プロジェクトをビルドします。

             

            5.生成された.imgファイルの名前をCyBootProgrammer.imgに変更します。

             

            6.このファイルをコピーして次の場所に貼り付けます。

            C\Program Files(x86)\Cypress\EZ-USB FX3 SDK\1.3\bin

             

            7.この場所に既存のCyBootProgrammer.imgのバックアップを作成して、他のSPIフラッシュデバイスで使用できるようにします。

             

            8.コントロールセンターユーティリティ CyControl.exe を使用してフラッシュをプログラムします。

             

            添付のcyfxflashprogSDKサンプルプロジェクトには、必要なファームウェアの変更が含まれています。

             

            コントロールセンターのユーザーガイドを参照してください:C\Program Files(x86)\Cypress\EZ-USB FX3 SDK\1.3\application\c_sharp


             

            ==============================

            29-Sept-2020

            Kenshow