Tip / ログイン to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Translation_Bot
Community Manager
Community Manager
Community Manager

TC387コントローラを使用しており、CANバスのトラフィックが増加すると、CPU負荷が約100%になります。

CANトラフィックの増加方法-

DBCファイルごとに設定された周期性に関係なく、1msの周期性でCanoeからメッセージを送信します。

CANは割り込みベースとして設定されています。

CPU負荷の増加による影響-

Core0の負荷が増加したため、CAN通信が機能しなくなりました。

通信スタックは Core0 に実装されています。

影響を受けるコア-

CPU負荷はCore0でピークに達しており、COMからのCANメッセージが受信および処理され、さらに他のアプリケーションと共有されます。

他のコアは、CANトラフィックの増加による大きな影響はありません。

クエリ-

CAN通信に影響が及ばないように、CANトラフィック増加によるCPU負荷を最適化するには、どのような対策を講じればよいのでしょうか?

 

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/AURIX/CPU-Load-Increase-with-CAN-Traffic/td-p/657828

0 件の賞賛
1 解決策
Translation_Bot
Community Manager
Community Manager
Community Manager

こんにちは

アプリケーションと要件を完全には把握していないため、根本原因を特定することは困難ですが、最適化の次の可能性を確認できます。

1. ISR の実行時間を分析し、最適化できるかどうかを確認します。

2. 複数のコアに CAN ノードを分散させるために、異なるコアから実行できるかどうかを確認してください。

3. コード アクセスのキャッシュを有効にすると、動作が改善されるかどうかを確認します。

4. アプリケーションの観点から、使用可能な PSPR RAM が十分にある場合は、PSPR から ISR を直接実行してみてください。

5. CANメッセージオブジェクトの設定を確認してください アプリケーションが必要とするかどうかに関係なく、すべてのCANメッセージを受信している可能性があると思います。 これが本当なら、CANメッセージオブジェクトの設定を再設定できると思います。

よろしく

プルドヴィ。

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/AURIX/CPU-Load-Increase-with-CAN-Traffic/m-p/664355

元の投稿で解決策を見る

0 件の賞賛
3 返答(返信)
Translation_Bot
Community Manager
Community Manager
Community Manager

こんにちは

すべてのCANメッセージをレート@1ms送信する方法がCPUに負荷をかけていることは明らかです。 そのようにテストしている理由を教えてもらえますか?

ボーレートが500kの場合、各ビットには~2usかかります。 したがって、一般的なClassic CANフレームの32ビット識別子+64ビットデータ+プロトコルビットの場合、約120〜130ビットかかり、他のペリフェラルからアクティブなISRに関係なく、ISRがCANフレームを処理する各メッセージ間の時間は~240〜260usになります。

さらに、私はあなたのシステムについて知りませんが、このCPUサービスのためにこれらの割り込みの負荷が高くなる可能性があり、最適化の可能性はdbc要件に従ってすべてのメッセージを構成することです。

よろしく

プルドヴィ。

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/AURIX/CPU-Load-Increase-with-CAN-Traffic/m-p/658301

0 件の賞賛
Translation_Bot
Community Manager
Community Manager
Community Manager

当社のHILベンチで実施されたテストでは、DBCに従ってメッセージが周期的に送信されると、CPU負荷が高くなります。

したがって、1msでの送信は、HIGHのトラフィック状況を再現するためだけに行われました。

設定された周期でメッセージが送信される場合でも、高CANトラフィック状況によるこのCPU負荷の増加をどのように最適化できますか。

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/AURIX/CPU-Load-Increase-with-CAN-Traffic/m-p/658663

0 件の賞賛
Translation_Bot
Community Manager
Community Manager
Community Manager

こんにちは

アプリケーションと要件を完全には把握していないため、根本原因を特定することは困難ですが、最適化の次の可能性を確認できます。

1. ISR の実行時間を分析し、最適化できるかどうかを確認します。

2. 複数のコアに CAN ノードを分散させるために、異なるコアから実行できるかどうかを確認してください。

3. コード アクセスのキャッシュを有効にすると、動作が改善されるかどうかを確認します。

4. アプリケーションの観点から、使用可能な PSPR RAM が十分にある場合は、PSPR から ISR を直接実行してみてください。

5. CANメッセージオブジェクトの設定を確認してください アプリケーションが必要とするかどうかに関係なく、すべてのCANメッセージを受信している可能性があると思います。 これが本当なら、CANメッセージオブジェクトの設定を再設定できると思います。

よろしく

プルドヴィ。

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/AURIX/CPU-Load-Increase-with-CAN-Traffic/m-p/664355

0 件の賞賛