2305841_ja-JP

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

2305841_ja-JP

2305841_ja-JP

[Lear][SAF][S32K3]メモリ要件の確認

こんにちは、チームの皆さん

リアには問題がある:

-----------------------------------------------------------------------------------------

SAF: v1.0.5

誘導体: S32K311


対応する ASIL パーティションにシンボルを割り当てるときに、深刻な問題が発生し始めています。問題は、sCheck がシンボル sCheck_DataCacheL1_Buffer の間に大きなギャップを導入することです。

image-20260204.png

合計で、これらのシンボルは 8KB のメモリを必要としますが、実際に使用されるのは 384 バイトだけです。適切な解決策は、各バッファに異なるメモリ セクションを用意することです (VAR_INIT_8192_EXEC_0 および VAR_INIT_8192_EXEC_1 と同様)。ただし、これには SAF の修正が必要になります。この変更を加えた SAF バージョンを作成することは可能ですか?代替案を提案してもらえますか?

----------------------------------------------------------------------------------


BR

ステファノ

優先度: 高SAFETY_SW出典: 直接お客様Re: [Lear][SAF][S32K3]sCheck memory needs

こんにちは、 @StefanoGattazzoさん。

これは4月1日に送信された最後のメールからの提案です。

現時点で、アライメントによる大きな未使用メモリギャップを回避するために試せる対策は次のとおりです。
 
1)
.s32_saf_bss にアプリケーションの BSS 変数も追加していただけます か?
これにより、リンカーはBSSコンテンツを効率的に配置するためのより多くの選択肢を得ることができ、大きなギャップを減らすことができる。
 
2)
リンカーファイルでOVERLAY機能を使用できます。
重ね合わせたメモリ領域が同時に使用されない場合は、それらすべてに同じメモリ範囲を利用することで、メモリを無駄にしないようにすることができます。

簡略化した例:

.sram_bss (NOLOAD) :
{
. = ALIGN(8);
...
EXCLUDE_FILE(sCheck_CacheTest_S32K3XX.c) (.s32_saf_bss)
// all SAF BSS sections except sections from sCheck_CacheTest_S32K3XX.c file with huge alignment
...
__sram_bss_end = .;
} > int_sram

OVERLAY :
{
.sram_bss_2 (NOLOAD)
{
sCheck_CacheTest_S32K3XX.c(.s32_saf_bss)
// SAF buffers from sCheck_CacheTest_S32K3XX.c file with huge alignment
// (this creates section size of ~6KB)
}

.user_bss_buffers
{
/* Other user BSS sections 6KB or more that can overlap with cacheable SAF BSS section and are not used at the same time*/
}
} > int_sram

今のところ返答はありません。

この方法がお客様のご要望に合わない場合は、お客様のご提案に基づき、各セクションを特定のセクションに配置するなど、リンカーファイル内の正確な配置をお客様が制御できるようにする改善策を検討する可能性があります。

敬具、
ラドスラフ
タグ(1)
評価なし
バージョン履歴
最終更新日:
‎04-15-2026 03:33 AM
更新者: