Aug 17, 2020
05:09 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Aug 17, 2020
05:09 AM
I am implementing the SMU alive alarm test, by sending the alive alarm command from the core smu to the smu standby, after sending the command I wait till the command is accepted then I check PMS_AG_STDBY1.B.SF16 if the stay smu set this bit and then I claim that the alive alarm test has succeeded, but the test fails just after flashing, however after cold power-on reset the test passes and is fine, why would it fail only after flashing and pass after a cold power on, is there something I am doing wrong or what could cause such problem if my logic is correct?
- Tags:
- IFX
9 Replies
Aug 17, 2020
06:56 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Aug 17, 2020
06:56 AM
Is the SMU in START state? Check SMU_DBG - the alive test can only be executed when the SMU is in the start state, per Table 534 - SMU_core commands and valid conditions.
Aug 17, 2020
09:01 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Aug 17, 2020
09:01 AM
after reflashing a new SW, shouldn't the SMU state be START state at the beginning of the SW?
Aug 17, 2020
09:09 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Aug 17, 2020
09:09 AM
and the last question,for alive test to pass PMS_AG_STDBY1.B.SF16 this bit should be set, correct?
Aug 17, 2020
11:42 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Aug 17, 2020
11:42 AM
TC37xx wrote:
after reflashing a new SW, shouldn't the SMU state be START state at the beginning of the SW?
It depends what you mean by "reflashing". If you used a bootloader, the bootloader is probably just doing a software reset (SWRSTREQ).
Only a cold power-on reset (power restored) or warm power-on reset (PORST asserted) will reset the SMU. A software reset does not reset the SMU.
Aug 17, 2020
11:43 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Aug 17, 2020
11:43 AM
TC37xx wrote:
and the last question,for alive test to pass PMS_AG_STDBY1.B.SF16 this bit should be set, correct?
SMU_STS.B.RES=0 indicates the test passed.
Aug 18, 2020
01:11 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Aug 18, 2020
01:11 AM
UC_wrangler wrote:
SMU_STS.B.RES=0 indicates the test passed.
I understand that the SMU_STS.B.RES indicates that the command was received and successful, but is that enough to indicate the alive test passed? in the aurix user manual indicates " sending the SMU_AliveTest command will trigger the SCAM to inject a fault and to forward the
smu_core_alive alarm to the SMU_stdby. The smu_core_alive alarm flag can be read in the AG2i_STDBY (i=1)"
and in table 427 SMU_CORE Alarm Table ,
Description SMU Targets
SMU.SMU_CORE - SMU_core Alive Alarm ALM21[16]
that's why I am checking that alarm to check if it's set after the command is received successfully.
Aug 19, 2020
09:39 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Aug 19, 2020
09:39 AM
Ah, sorry, my mistake - you're right with PMS_AG_STDBY1. Here's some example code that does part of the test:
function_execution_status SMU_core_alive_test_clear(void)
{
IfxSmu_stopAliveTest();
//clear the ALM21[16] which is triggered by the Core alive test
IfxSmuStdby_setSmuStdbyAlarmStatusFlag(21,16,IfxSmuStdby_AlarmStatusFlag_faultExist);
//check if the last command (alive test stop) has been executed properly
// and if the alarm flag has been cleared
if((SMU_STS.B.RES==0)&(PMS_AG_STDBY1.B.SF16==0))
return pass;
else
return fail;
}
Aug 24, 2020
05:35 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Aug 24, 2020
05:35 AM
would you recommend checking the SMU state before running the command? as the test would fail in case the SMU is in run or fault state.
Aug 24, 2020
08:27 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Aug 24, 2020
08:27 AM
Depends how your software is set up, but checking SMU_DBG.SSM=0 (START state) doesn't add much overhead.