こんにちは、
EMAC0を2500 Mbpsで設定し、必要なSERDESチャネル設定も行っています。ECUの稼働状態中は、イーサネット通信が正常に動作しています。
Eth通信にアクセスするアプリケーションをシャットダウンした後、ECUMからECUスリープリクエストをトリガーし、MCUモードをSOCスタンバイに設定し、HSE_CM7をメインコアとして選択します。
ウェイクアップ後、ECUは通常の動作に戻り、COM、SOAD、TCPIP、ETHIFのレイヤーは期待通りに動作します。EthのIFレイヤーでは、API呼び出し中の「Provide TX buffer」が「Provide TX buffer」が空いていないというエラーを返し、その後Ethフレームの送信が停止します
問題解決のために試された修正方法のリスト:
1. 「Eth_43_Pfe_Deinit」を使ってPFEドライバをシャットダウンし、「Eth_43_Pfe_Init」を呼んでPFEドライバを起動しようとしましたが、実行後にCPUがロックされてしまいました。
2. EthコントローラをEth_43_Pfe_SetControllerモードで下げてアクティブに戻そうとしたところ、バス障害が発生しました
この問題の解決策を教えてください。
追伸>
使用コンフィギュレーター:EB tresos
Eth PFE RTDバージョン:1.3.0
SDK:GOLDVIP
こんにちは、Avinash_7373さん
ご返信よろしくお願いします。
1.SOCがスタンバイモードに入ると、パーティション2のPFEクロックが無効になります。ウェイクアップ後にパーティション2が再度有効になっているか確認してください。PFE開始前のPCSの状態PRTN2_STATを確認してみてください。PFE開始前のPCS状態。
2. SERDESが正常に機能しているかどうかを確認します。
BR
ジョーイ
こんにちは、 @Joey_z
1.PFEはMコアでのみ使用されています
2. 開発ボードを使っています:S32G-VNP-RDB3
よろしくお願いいたします。
アビナシュ・V
こんにちは、Avinash_7373さん
お問い合わせいただきありがとうございます。
1. PFEはMコアでのみ使用されますか?Aコアを一緒に使ったことはありますか?
2. お客様のボードを使っていますか、それとも私たちの開発ボードを使っていますか?
BR
ジョーイ
こんにちは、@Joey_z。
ステータスレジスタのビットフィールドはスリー プ前Partition_2 1のままですが、スリープ中は 0 に更新され、MCUモードが通常に設定された後、ウェイクアップ後には再び 1 に更新されます。
Serdesは正常に動作しています。さらに、ET Phyコネクタ(RJ45)とコントローラー(NXPS32G399A)の間にSERDESが関与しないRGMIIモードでEMAC2を試しましたが、それでも問題は同じままでした。
Partition_2の起動後に再起動シーケンスが必要な場合は、お知らせください。
よろしくお願いいたします。
アビナシュ・V
こんにちは、Avinash_7373さん
問題は、おそらくウェイクアップ後のPFE初期化に関するものと思われます。クロックと関連するPFE構成を確認し、理想的な状態に初期化されていることを確認してください。
1. PFEの初期化がブートローダーに入力され、起動後にアプリケーション内で正しく再初期化されているか確認してください。
2. スタンバイプロセスに従って該当する構成を確認する。RM 32.5.5「実行モードからスタンバイモードへ」を参照してください。
BR
ジョーイ
こんにちは、Avinash_7373さん
ご返信よろしくお願いします。
スタンバイとウェイクアップシーケンスの操作について教えていただけますか?
1. コアとパーティションはどのように設定しますか?
2.Do アプリケーションでブートローダーとAコアを使っていますか?
BR
ジョーイ
こんにちは、 @Joey_z さん。
以下に睡眠・覚醒の順序を示します。
1. API 「EcuM_SelectShutdownTarget()」 を使ってECUスリープモードをリクエストしています。これにより、ECUMの実装通りにMCUモードがスタンバイに設定されます。
2. ECUMがスリープモードに入ると、ウェイクアップイベントをポーリングし、CANトランシーバーがバスの活動を検出してEcuM_SetWakeupEvent() APIを使ってウェイクアップイベントを設定し、その後ECUは通常の動作を再開します。
ブートローダーについては、NXPのブートローダー(0x0にフラッシュされる)のフラッシュ位置と、Mコアアプリケーションが0x400000にフラッシュされます。Aコアはどこにも使用されていません。
よろしくお願いいたします。
アビナシュ・V
こんにちは、 Avinash_7373
あなたの問題について何か進展はありましたか?もし継続的なサポートが必要な場合は、以下のリンクからコードをアップロードしていただければ問題をより詳しく分析できます。
BR
ジョーイ