2289663_ja-JP

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

2289663_ja-JP

2289663_ja-JP

S32G399AカスタムボードがBOOT_CFG1とFUSE_SELの故障で動作不能に

こんにちは、

QSPI NORフラッシュ (標準接続、RDB3 回路図に類似) を備えたカスタム S32G399A ボードがあります。

QSPI NOR から強制的にブートしたかったので、EVB 上の QSPI_BOOT_CFG のAN13456 (S32G3 ブート プロセス) に添付されている Excel シートの推奨値とリファレンス・マニュアルヒューズマップに従って、 Ocotp_Ip_Example_S32G399A_M7 (RTD から) を適応させてブート ヒューズを飛ばしました。コードスニペットと参照ドキュメントはこの投稿に添付されています。

Ocotp_Ip_ReadEFuse()を使用して BOOT_CFG への書き込みごとにすぐに成功を確認し、値が正しく更新されました (0x2000000C および 0x00000010)。

しかし、現在では:

  • ボードが NOR から起動していません。
  • シリアル ダウンロード モードが応答しなくなりました (S32 フラッシュ ツールで「ターゲット デバイスとの通信を確立できませんでした」)。
  • JTAG デバッガー (PE Micro) は、「GDB サーバーはターゲット プロセッサへの接続を確立できませんでした」と報告します。

根本的な原因を見つけるのに協力してもらえますか?

Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL

こんにちは@wael_bさん

お問い合わせいただきありがとうございます。また、問題を非常に詳細にご説明いただきありがとうございます。私が見る限り、次のように設定するつもりだったようです。

BOOT_CFG1 内:

alejandro_e_0-1767828044759.pngalejandro_e_1-1767828048217.png

また、BOOT_CGF2 では、FUSE_SEL ビットにより、RCON 値はチップ外部のシリアル/パラレル値ではなく、ヒューズから取得されます。設定を正しく理解できたかどうかお知らせください。


シリアル モード (フラッシュとデバッグの両方) で接続しようとしているときに、この構成を使用していますか?FUSE_SEL が 0 のCASEとは異なり、BOOT_MOD1 と BOOT_MOD2 の値は異なる効果を持つことに注意してください。

alejandro_e_2-1767828939324.png

使用している BOOT_MOD 1 と 2 の値をお知らせください。


よろしくお願いします。






Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL

こんにちは。返信ありがとうございます!
FUSE_SEL = 1 で正しい BootMod を使用したことを確認しました。

調査の結果、BOOT_CFG1 のビット 15 (ブート エクセルの「don't care」フィールド) が XOSC モードを構成していることがわかりました (ヒューズ構成後、MCU の XTAL ピンと EXTAL ピンの両方で XOSC クロック信号が失われました)。
したがって、現在のヒューズ構成では、ビット 15 が 0 であるため、XOSC 差動バイパス モードになっていますが、これは明らかにサポートされていません (添付のスクリーンショットを確認してください)。
この場合、ビット 15 はゼロであってはならないことを確認できますか?

ヒューズが設定されていない動作中のボードがまだ 1 つあるため、2 回目の設定を行うためにサポートをお願いします。
ありがとう。

Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL

こんにちは@wael_bさん

問題は、S32G_Bootconfigwords_EVB.xlsx に示されている構成が EVB/RDB ボード用であり、しかも再構成可能な RCON ビットで構成する必要があることです。Excel シートの下部を見るとわかるように、気にする必要がない部分についてはリファレンス・マニュアルを確認することをお勧めします。

alejandro_e_0-1767908953800.png

たとえば、SD_BOOT_CFG を確認すると、多くの「don't care」ビットが表示されますが、「効果がない」というのは、特に EVB/RDB ボードの SD 構成の場合であり、ビット自体に効果がないわけではありません。

AN13456 に記載されているサポートされていない構成に関しては、詳細を社内で確認する必要があります。

参考までに、内部文書で次の記述を見つけました。

BOOT_CFG1 のビット XOSC BYPASS MODE は、FXOSC モジュールの外部クロック ソース モードを選択するために使用されます。FXOSC モジュールは、入力として 3 つのクロック ソース モードのいずれかを選択できます。3 つのクロック ソース モードは、それぞれ、クリスタル (コンポーネント) モード、(外部) 差動 (クロック ソース入力) モード、および (外部シングルエンド クロック ソース) BYPASS モードです。お客様がパッシブ水晶 (クリスタル モードで動作) またはアクティブ差動クロック発振器 (差動モードで動作) を FXOSC 入力として使用する場合、XOSC BYPASS MODE 0 を設定する必要があります。この場合、他に設定がなければ、FXOSC はデフォルトで入力がクリスタル モードで動作していると見なします。

それ以外の場合、お客様がシングルエンド デジタル クロック ソース (BYPASS モードで動作) を FXOSC 入力として使用する場合は、XOSC BYPASS MODE 1 を設定する必要があります。

したがって、BOOT_CFG1:15 の値は、デザインの構成方法によって異なります。たとえば、0 を使用する場合は、RDB3 ボードのように外部発振器が必要です。

alejandro_e_2-1767911418325.png


S32G3 のヒューズが切れていないボードの場合、RCON ブートを使用してご自身のデザインに適した構成をテストすることをお勧めします。ヒューズ マップ テーブルからわかるように、正確な構成は QSPI メモリの種類と発振器の構成によって異なります。


さらにサポートが必要な場合はお知らせください。



Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL

こんにちは、 alejandro_e

私は@wael_bと同じボードで作業していますが、Excelファイルには次のように記載されています:

XOSC バイパス モード選択: XOSC 構成ヒューズが切れていない場合は、XOSC モードを選択します。
0-差動
1 - クリスタルまたはシングルバイパスモード

BOOT_CFG[15] =0のときは差動モードです。

しかし、それが1の場合はクリスタルまたはシングルバイパスモードのいずれかです

BOOT_CFG[15] =0がクリスタルで問題なく動作すると記載されているドキュメントを教えていただけますか?

アウトボードにはEVKと同じ水晶振動子が搭載されており、BOOT_CFG[15]を0に設定するとクロックソースがなくなるため、MCUはこの差動モード水晶振動子を待機しており、パッシブ水晶振動子を駆動していないと考えられます。間違っていたら訂正してください。

haythemLtifi_0-1767937954503.png

また、RCON を使用することはできず、ヒューズから起動することしかできません。したがって、ヒューズを使用してボード(EVK と同じフラッシュと同じクリスタルをベースにしています)を起動する方法を提案していただければ幸いです。


Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL

GM_SEL について説明しているリファレンス・マニュアルのスクリーンショットをここで確認できます。

Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL

こんにちは@haythemLtifi さん@wael_b さん

返信が遅くなり申し訳ありません。ようやく社内チームから情報を受け取りました。彼らは以下の情報を共有してくれました。

S32G3では差動モードはサポートされていません。Crystalモードのご利用をお勧めします。
Crystal モードを構成するには 2 つの方法があります。

  1. XOSC 構成が有効でない場合は、 XOSC BYPASS MODE SELECTION を1 - Crystal モードに設定します。
  2. XOSC 構成が有効な場合は、 XOSC MODE を11 – Crystal modeに設定します。

安定性が向上するため、2 番目の構成を使用することをお勧めします。

XOSC設定の有効性はBOOT_CFG2[0]によって示されます。

ボードを回復できるかどうかまだ確認する必要があります。

Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL

こんにちは@alejandro_e
サポートありがとうございます!ご提案いただいた構成では、次の 2 つのケースが考えられます。

  • CASE 1:
    BOOT_CFG1 -> 0x2000800C :
    ビット 29、15、3、2 = 1 で、残りはゼロです。
    BOOT_CFG2 -> 0x17 :
    ビット 4、2、1、0 = 1 で、残りはゼロです。
    この場合、 JTAGは動作しています (FUSE_SEL = 1 の推奨シリアル構成を使用) が、ターゲットとアルゴリズムをS32FTのハードウェアにアップロードしようとすると、エラーが発生しました。
    エラー: ターゲットデバイスとの通信を確立できませんでした。」
    また、XTAL に信号が表示されません。
    この動作は、BOOT_CFG2 の「XOSC_GM_SEL: 関連する XOSC モードの GM Sel 値」ビット 8 ~ 11 に関連している可能性がありますか?

  • ケース2:
    2番目のボードでBOOT_CFG1 -> 0x2000800Cを使用して設定を行いました
    そしてBOOT_CFG2 -> 0x0F:
    ビット0,1,2,3 = 1
    FUSE_SEL ヒューズが切れていないので、このケースは回復可能だと思いますか?
Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL

こんにちは 、

どうやら時差が7時間あるようです、SOいくつか質問させてください。残りの質問については、ワエルが明日返信します。

- あなたが言及したコード内の gm 値は 0b1100 ですが、これを変更するにはどうすればよいですか?それはクロックの初期化関数にありますか?

または、グラフィック インターフェースを使用して変更できますか?0b1111 に設定したいのですが、どうすればいいでしょうか?


今、EXtal ピンで水晶を測定すると、約 800mV のほぼ DC 電圧値が表示されます。水晶が正常に動作していないのか、アクティブ プローブを使用していないのかはわかりません。EVK で通常のプローブを使用して波形を測定し、ボードの電源を入れた後に何が表示されるか教えてください。そしてコードを実行すると。

シリアルで動作するボードの場合、ブートモード0と1を使用してシリアルを選択すると、Extalに800 mVの絶対直流電圧があることがわかります(実際には正弦波ではありませんが、振動しています)。



Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL

こんにちは@haythemLtifi

S32DS のクロック ビューを使用して値を変更できます。

alejandro_e_0-1768510249934.png

alejandro_e_1-1768510288170.png

コードを更新すると、次のファイルで変更が有効になります。

alejandro_e_2-1768510756606.png


この変更は、SW イネーブルメント Guideで説明されているように、構造体をパラメータとして Clock_Ip_Init() を実行するときに有効になります。


これが役に立つかどうか教えてください

Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL

こんにちは、 @haythemLtifiさん

テストに関しては、今のところはCANですが、来週行う予定です。

発振器から何が見えるかをお知らせします。


よろしくお願いします。

Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL

こんにちは@wael_bさん

私の回答は以下をご覧ください。

  • CASE1の場合。クリスタル モードの場合、次の式に従って GM_SEL を構成する必要があります。
    • alejandro_e_0-1768496877959.png
      • ここでは、
        • gm: 最小トランスコンダクタンス値
        • ESR: 等価直列抵抗
        • f: 水晶振動数
        • C0: 水晶の寄生静電容量
        • C1: 水晶の定格負荷静電容量
    • いくつかの例については、S32G3 データシート Rev4 の以下の表 26 も確認してください。
      • alejandro_e_1-1768498294702.png
    • 私たちが提供するサンプル プロジェクトの構成も確認しました。これらには1100b - 0.631×を使用します。
    • トランスコンダクタンスはクロック信号の増幅の一種であることを考えると、0 を使用するとチップが動作しなくなるのは当然です。私はこれを自分でテストしていないので、GM_SEL の値を変更するとセットアップに何らかの影響があるかどうかをお知らせください。
  • ケース 2 の場合、私の理解では、これはヒューズ マップの MISC シートに示されているように、BOOT_CFG_LOCK の値によって決まります。
    • alejandro_e_2-1768498657315.png
  • 理論的には、ロック ビットが 00 または 01 の場合、値を上書きできるはずです。しかし、私はこれを自分でテストしていないので、その効果について完全には知りません。

ケース 1 では、シリアルからのブートが機能すると書かれていますが、そのセットアップでは FXOSC に出力信号があると思いますが、正しいでしょうか?

QSPI ブートの場合、アプリケーションでは RTD を使用していますか? それとも完全にカスタムのソフトウェアを使用していますか?


よろしくお願いします。

Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL

こんにちは@alejandro_e
この質問への回答: 「アプリケーションの QSPI ブートでは、RTD を使用していますか? それとも完全にカスタムのソフトウェアを使用していますか?」 => はい、カスタム ソフトウェアではなく、RTD の例を使用しています。

いくつか質問があります!
- ブートプロセスドキュメントのこのセクションを理解する手助けをお願いできますか?(添付のスクリーンショットを参照)
- また、Nor Flash または SD カード ブートにダウンロードする専用の .bin はありますか?
- IVT から生成された Siul_Dio_ToggleLed アプリケーションのサイズは 5.3 MB ですが、これは問題でしょうか?


Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL

こんにちは 、

私たちは NOR の問題を解明しました。デフォルトの BootROM クロックは 30Mhz で、タイムアウト (500ms) 前に S32G339A の RAM をダウンロードするには不十分でした。そこで、QSPI 構成を追加して BootROM クロックを 200Mh にブーストするオプションを見つけて、問題を解決しました。

ご対応ありがとうございます。

Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL

こんにちは@wael_bさん

情報をいただきありがとうございます。返信が遅くなり申し訳ありません。クロックテストに関しては、できるだけ早く実施して結果を共有しますので、遅れて申し訳ありません。

最後の質問についてですが、フラッシュまたは SD カードにダウンロードするための専用のバイナリはありません。フラッシュの場合は IVT ビンを 0x0000 にプログラムする必要があり、SD カードの場合は 0x1000 にプログラムする必要があることに注意してください。

バイナリのサイズに関しては、S32G3 の dio サンプルを使用して簡単な IVT バイナリを実行したところ、5.3 MB であり、サイズに問題はないはずです。

おそらく私はあなたの質問を正しく理解していないと思います。もし答えていなかったらお知らせください。

バイナリが正しくロードされ、bootROM によって解析されているかどうかをテストする方法の 1 つは、ボードの LED をオンにする DCD を追加することです。たとえば、S32G3 HSE DEMO APP を確認してください。どのバージョンでも動作するはずですが、たとえばバージョン 0.2.51.0 では、付録 11 のセクション「S32 DS – VDD_EFUSE の電源投入とシステム RAM の初期化のための DCD イメージの生成」を確認できます。問題の場合、関連する部分は VDD_EFUSE の手順です。よく知らない方のために説明すると、DCD はプログラムの実行前に追加できる非常に単純なレジスタ命令のセットです。そのため、DCD を追加した後にボードの LED が点灯すれば、バイナリが正しくロードされ、BootROM によって解析されていることを確認できます。

Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL

こんにちは@haythemLtifi

情報ありがとうございます。念のため確認しますが、このトピックに関しては私からのこれ以上のサポートは必要ないですよね?


Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SELこんにちは 、
はい、大丈夫です。ありがとうございます
Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL

こんにちは@haythemLtifi

完璧です。教えてくれてありがとう。

今後何か問題が発生した場合は、新しい投稿を作成していただければ、喜んでお手伝いさせていただきます。


よろしくお願いいたします。

タグ(1)
評価なし
バージョン履歴
最終更新日:
‎01-22-2026 02:27 AM
更新者: