2295528_ja-JP

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

2295528_ja-JP

2295528_ja-JP

S32K324のBISTデバッグに関する質問

こんにちはチーム


BIST デバッグガイダンスについてお聞きしてもよろしいでしょうか?


お客様は RTD (MCAL) 付きの S32K324 を使用しています。

BIST_RUN API の実行後、MCU はリセットされたように見えます。(もちろん、UM に続く BIST では PLL による正しいクロックが使用されます。)

ただし、MC_RGM には「STCU_URF」と表示されています。


STCUに確認しましたが、重大な理由はわかりませんでした。

これらは「まだ進行中で、MBIST 実行に失敗しました」のように表示されますが、これらもデフォルト値です。


このCASEに関して、より詳しい情報を入手できるのはどちらでしょうか?


よろしくお願いします。


Luke_Chun_0-1768784350463.png


Luke_Chun_1-1768784375850.png

Luke_Chun_2-1768784388055.png


優先度: 重要SAFETY_SW出典: 直接お客様Re: Question about BIST debugging of S32K324

こんにちは@Luke_Chun

MBSPLLEN / LBSWPLLEN が「0」であれば正しく、これは検証済みの構成 STCU2 セットアップの一部です。

設定の場合、関数のパラメータが何であるかを意味します。例:
Bist_Run ( BIST_SAFETYBOOT_CFG );

構成から、お客様が LBIST および MBIST 回復不能障害対応を設定したことがわかります。これが、表示されるリセットの原因です。
これらのタブに何も設定されていないことを確認してください。

RadoslavB_0-1768887526357.png


この設定後、BIST は終了し、リセット後に結果を調べることができます。
おそらく、MBIST または LBIST で何らかの障害が発生し、これが前提条件が間違っている (おそらく一部のクロックが実行されていない) という手がかりになります。

よろしくお願いいたします
ラドスラフ

 

Re: Question about BIST debugging of S32K324

こんにちは@RadoslavB


ご返信ありがとうございます。


BIST に関するフィードバックは次のとおりです。

以下の行ではブレークポイントが使用されました。

Luke_Chun_0-1768833035752.png


以下はSTCUレジスタです。

1つの質問は、RUNSW: MBSPLLEN/LBSWPLLENが「0」であることです。

「PLLなし」を意味します。正しい構成ですか?

また、以下の STCU に異常な構成はありましたか?


Luke_Chun_1-1768833035850.png



Luke_Chun_2-1768833035942.png

よろしくお願いします。

Re: Question about BIST debugging of S32K324

こんにちは@Luke_Chun

破壊的リセット STCU2 レジスタがデフォルトに設定されると、レジスタから根本原因に関する詳細情報を見つけることはできません。

どの BIST 構成を実行しているかを把握し、BIST を開始する関数Bist_SelfTestTrigger()の命令の直前に STCU2 レジスタを確認すると便利です。
SAFETYBASE_REG_WRITE32 ( BIST_STCU_RUNSW_REG BIST_STCU_RUNSW_RUN_BIT );

LBUFM と MBUFM が設定されていない場合、それにもかかわらず STCU_URF が設定される可能性があるのはなぜなのか、HW チームに質問することになります。

理想的には、クロックの初期化直後に BIST を実行し (クロックを起動して実行するだけ、他には何も行わない)、他のペリフェラルは初期化せず、Core_1 をリセット状態に保ち、FCCU を有効にせず、MPU と XRDC を無効のままにし、すべてのウォッチドッグを無効のままにして、PMIC をデバッグ モードのままにして、LBIST_CLK が 40 MHz であることを確認します。

比較のために、K344 の SAF デモ例で、MCU モジュール (クロックと McuModeSettingConf) がどのように構成されているかを確認できます。


敬具、
ラドスラフ

Re: Question about BIST debugging of S32K324

こんにちは@RadoslavB


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

あなたの言及によって私はもう一歩前進することができます。

以下を使用すると、STCU_URF は発生しません。

Luke_Chun_2-1769040876651.png



Luke_Chun_1-1769040842633.png



しかし、別の結果が表示されています。


RMG が更新されませんでした (以下によりリセットが発生していないと思います)。

また、ERR_STAT には WDTOSW が表示されており、RFSF が発生しています。



Luke_Chun_3-1769040937988.png


両方のエラーが発生する可能性についてお尋ねしてもよろしいでしょうか?


(WDTOSW はクロック構成に関連しているのではないかと推測しています...もう一度確認してみます...)

しかし、RFSF についての情報はありませんでした...)


ありがとう。


Re: Question about BIST debugging of S32K324

こんにちは@Luke_Chun

SAF リリースバージョンとは何ですか?

BIST 実行前にブレークポイントが表示され、同じポイントで STCU2 レジスタのスクリーンショットが取得されていますか?BIST 実行前であっても ERR_STAT が設定される理由がわかりません。

RFSR - eMcem 構成でこの FCCU 障害が無効になっていることを確認してください

RadoslavB_0-1769096210289.png
BIST は eMcem_Init の前に実行する必要があるため、理想的には、すべての NCF チャネルに対して FCCU を完全に無効にする必要があります。SAF デモの例をご覧ください。

WDTOSW - はい、BIST がタイムアウト内に実行されなかったようです。そのため、いくつかの低速クロックが設定されている、またはいくつかの必須クロックが無効になっています - SAF デモからの MCU クロック セットを参照してください。


敬具、
ラドスラフ

Re: Question about BIST debugging of S32K324

こんにちは@Luke_Chun

1)
クロック (このCASEは分周器) を有効にすることは最低限必要ですが、BIST では最大可能周波数 (最大周波数のクロック ソース PLL) で構成する必要があります。デフォルトの FIRC ではなく、すべての MUX 除数または乗数は、最大出力クロック周波数を提供するように設定されます。など) => これにより、BIST タイムアウトが超過しないようにすることができます。
正確に確認するには、RTD MCU プラグインを使用することをお勧めします。レジスタを探索するのではなく、周波数を出力します。

2)
FCCU が無効になっていることがわかります (リセット後のデフォルト状態)。NCF5 に NCF_S0 が設定されているのは、NXP が FCCU をこのように設計しているためです。チャネルを有効にする必要はありませんが、FCCU チャネルを有効にしているにもかかわらず、ステータス フラグは常に設定されます。
NCF5 には DCMROD レジスタによって記述される他の多くの障害があり、これによって NCF5 の正確な障害原因がわかりますが、この場合は STCU2 RF (これは DCMROD5 に報告されます) であると仮定します。

NCF5 が表示されるということは、BIST エラーがまだあることを意味します。
- お客様が eMcem を使用しない場合、FCCU をどのように構成しますか?無効になっているようですが、BIST を実行する意味は何でしょうか?
BIST は、ほとんどの場合 FCCU に報告される HW セーフティメカニズムの潜在的な障害をチェックするだけです。したがって、FCCU を無効にして BIST を実行すると、お客様アプリケーションは QM レベルに降格され、セーフティ ASIL アプリケーションを実行できなくなります。

BIST 後には ST_DONE 機能リセットが必要です。BIST リセット後、お客様はBist_GetFailLists() を呼び出して BIST 結果を評価する必要がありますが、結果はどうなりますか?
BIST ドライバーの使用方法については、SAF デモの例を参照してください。
Bist_Run() は NCF5 ステータス フラグをクリアできません。実際、これがフラグが設定されている理由です。


敬具、
ラドスラフ

Re: Question about BIST debugging of S32K324

こんにちは@RadoslavB


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

皆様のサポートにより、BIST は機能しています。

しかし、いくつか質問があります。



1. 最後の理由はクロックの設定に関連しています。

MUX7、8、9、10 はクロックの有効化を行いませんでした。

有効にした後は正常に動作します。

これは近づいていますか?

Luke_Chun_0-1769147607789.png


2. FCCU については、おっしゃるとおり FCCU に確認いたしました。

ご覧のとおり、NCF_s0_5 が設定されています...

Luke_Chun_1-1769147912889.png


ただし、お客様は eMECM を使用していません (emecm_init を呼び出していません)。

上記はMCUリセット後の状態です。


ただし、BIST_RUN API 中はクリアされます...

これは機能していますか?



ありがとう。

Re: Question about BIST debugging of S32K324

こんにちは@RadoslavB


フィードバックはこちらです。


1. お客様はSPD1.0.5を使用します。SAF が使用されます。

FCCU は実装されますが、この段階では BIST が最初の項目です。


2. はい、Clock は以下のように使用されます。

Luke_Chun_0-1769421729963.png



3. BIST後、STCUおよびFCCUに障害情報は発生しませんでした。

Luke_Chun_1-1769421765879.png

Luke_Chun_2-1769421792187.png


4. 異常の 1 つは、リセット理由がなく、BIST_BUSY であることです。

BIST_BUSY の場合の確認方法を教えてください。

Luke_Chun_4-1769421869771.png


Luke_Chun_5-1769421965686.png


ありがとう。





Re: Question about BIST debugging of S32K324

こんにちは@Luke_Chun

Bist_GetExecStatus が BIST_BUSY を返す場合、このビットが設定されている(BIST 操作がまだ完了していない)ことを意味します。

RadoslavB_0-1769428393829.png

しかし、スクリーンショットを見るとこのビットは 0 なので、なぜ BIST_BUSY が返されるのか分かりません。
Bist_Specific_GetExecStatus() をデバッグしてみると、次のようになります:
uint32 ReadRunSw = SAFETYBASE_REG_READ32 ( BIST_STCU_RUNSW_REG );

MBIST11 も実行されていることがわかります。これは、
顧客アプリケーションでは使用すべきではない BIST_DIAGNOSTIC_CFG を実行していることを意味します。BIST_SAFETYBOOT_CFG を実行させてください

クロック設定の一部しかカバーしていないスニペットから**bleep**設定を検証できません。お客様はクロックのMCUプラグイン設定を比較する必要がありますが、私の能力ではここではサポートできません。繰り返しますが、すべてのクロックを最大周波数で有効にするだけで済みます。


敬具、
ラドスラフ

Tags (1)
No ratings
Version history
Last update:
‎01-27-2026 03:29 AM
Updated by: