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

cross mob
Translation_Bot
Community Manager
Community Manager
Community Manager

こんにちは

私の数学モデルにはdsamに多くのグローバル変数があり、ADSはこれらの変数を自動的に拡張してpsramに配置しますが、psramのこれらの変数は常に異常であり、たとえば以下のコードセクションのように、このモデルでは「1」を取得する必要がありますが、このscetionをデバッグすると、Test_Memory 1対0になることがわかりました。 それは正しくありません。

しかし、この変数をpsramから他のdsramに移動すると、「1」の正しい結果が得られますが、何かアドバイスはありますか?

感謝

uint8 Test_Memory=1;  //Psram

if(Test_Memory)
    return 1;
else
    return 0;  // Always return 0, incorrect and Test_Memory abnormal
///////////////////////////////////////
uint8 Test_Memory=1;  //Move to Dsram

if(Test_Memory)
    return 1;  // return correct value
else
    return 0;  

 

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/AURIX/Aurix-Tricore-TC277-global-variable-abnormal-with-dsram-and-psram/td-p/645705

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

下の図のように、この手順はリセットして停止するだけで、実行されません。図-2は誤った変数を示しています。

図-1:

correct.png

図-2:incorrect.png

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/AURIX/Aurix-Tricore-TC277-global-variable-abnormal-with-dsram-and-psram/m-p/645761

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

PSPRはコード用で、DSPRとDLMUを試すことができます。

// Force the compiler to put the following global variable into the DSPR0 memory
BEGIN_DATA_SECTION(lmubss_cpu0)
uint32 rdnumdlmu0[BUFFERSIZE];
END_DATA_SECTION

BEGIN_DATA_SECTION(lmubss_cpu1)
uint32 rdnumdlmu1[BUFFERSIZE];
END_DATA_SECTION

BEGIN_DATA_SECTION(lmubss_cpu2)
uint32 rdnumdlmu2[BUFFERSIZE];
END_DATA_SECTION

BEGIN_DATA_SECTION(lmubss_cpu3)
uint32 rdnumdlmu3[BUFFERSIZE];
END_DATA_SECTION

BEGIN_DATA_SECTION(lmubss_cpu4)
uint32 rdnumdlmu4[BUFFERSIZE];
END_DATA_SECTION

BEGIN_DATA_SECTION(lmubss_cpu5)
uint32 rdnumdlmu5[BUFFERSIZE];
END_DATA_SECTION


BEGIN_DATA_SECTION(bss_cpu0)
 uint32 rdnum0[256];
END_DATA_SECTION

BEGIN_DATA_SECTION(bss_cpu1)
 uint32 rdnum1[256];
END_DATA_SECTION

BEGIN_DATA_SECTION(bss_cpu2)
 uint32 rdnum2[256];
END_DATA_SECTION

BEGIN_DATA_SECTION(bss_cpu3)
 uint32 rdnum3[256];
END_DATA_SECTION

BEGIN_DATA_SECTION(bss_cpu4)
 uint32 rdnum4[256];
END_DATA_SECTION

BEGIN_DATA_SECTION(bss_cpu5)
 uint32 rdnum5[256];
END_DATA_SECTION

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/AURIX/Aurix-Tricore-TC277-global-variable-abnormal-with-dsram-and-psram/m-p/646958

0 件の賞賛