S32K D-Flash Memeory single sector is abnormal

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

S32K D-Flash Memeory single sector is abnormal

1,438 次查看
HuitingXu
Contributor I

A hard fault reset occurs during the use of the chip. After investigation, it is found that some discontinuous addresses in one sector of the D-Flash address are abnormal. There is no specific value. To determine the cause of this phenomenon, what operation causes the discontinuous exception of a single sector in the D-Flash address segment.Please refer to the following example

example of abnomal D-Flash Memory dump:
10007080 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF DF D9 FF ?? ?? ?? ?? ?? ?? ?? ??
100070A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
100070C0 ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? FF FF FF FF FF FF FF FF
100070E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ?? ?? ?? ?? ?? ?? ?? ?? FF FF F5 7B FF FF FF FF
10007100 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
10007120 FF FF FF FE FE DF CF FF ?? ?? ?? ?? FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF

 

 

 
 
 
 
 

 

0 项奖励
回复
14 回复数

1,406 次查看
danielmartynek
NXP TechSupport
NXP TechSupport

Hello @HuitingXu,

Can you specify the MCU part?

The debugger shows ?? on data where uncorrectable ECC error are reported.

When the DFlash is programmed, make sure the operation is not interrupted.

If you use SKD/RTD, read the return status of the APIs.

 

Regards,

Daniel

0 项奖励
回复

1,396 次查看
charles_wangw
Contributor III

Hello Daniel

While Huiting has no access to upload the the picture. I help to reply this picture.

We setting cluster0 and cluster1.

Cluster0  address from 10000000-10006FFF

Cluster1 address from 10007000-1000DFFF

Every time abnormal area is the head sector of cluster, such as 10007000-100077FF and 10000000-100007FF

The problem cannot be reproduced during normal operation, How can we reproduce the problem 

 

charles_wangw_0-1719300113107.png

Thank you very much.

@danielmartynek 

BS

Charles

0 项奖励
回复

1,391 次查看
danielmartynek
NXP TechSupport
NXP TechSupport

Hi @charles_wangw,

I don't know what application does.

But to recover from this, the sectors must be erased.

Once it is erased, you should see all 1s in the sectors.

Check the sectors after each programming to confirm the data has been written correctly.

Also, always read the return return status of the APIs.

 

BR, Daniel

0 项奖励
回复

1,367 次查看
charles_wangw
Contributor III

Hello Daniel

@danielmartynek  Also I am curious about DFLash will comes to 0xFF(for byte) when we clear with the interface. When  it can reach "????" from your information. It will help us a lot.

Thanks

Charles

 

 

0 项奖励
回复

1,126 次查看
danielmartynek
NXP TechSupport
NXP TechSupport

All the information provided by you is rather confusing.

For example, you wrote:

"The problem cannot be reproduced during normal operation, How can we reproduce the proble"

If you mean the ???? data, this is an ECC error, it can be reproduce by interrupting a flash operation by a system reset.

 

Can you mass erase the MCU, so that the DFLash is blank (all 0xFF)?

 

"This block will be written before sleep and power down. Is it related to the abnormal address?"

Then update DFlash through FEE, and make sure the operation is not interrupted (monitor the reset_b pin and power supply), and don't put the MCU into any stop mode before the operations are finished.

Always check the status of the FEE driver after every operation, read return status of the APIs.

 

It would help if you could create a new simple test project that can reproduce the issue and share the project either here or via a support ticket so that we can test it.

 

Regards,

Daniel

 

 

 

0 项奖励
回复

1,375 次查看
charles_wangw
Contributor III

Hello Daniel

We Use IC5000 to debug.

iC5000 - iSYSTEM

What you see in the picture "????" is we read directly from the failed sample. It looks like these area is erased by debug. 

When we try to repeat this issue. All the area will also comes to "?????" when do the process "Erase Mass all" with IC5000.

We have no idea why the sample can get the status above. In the application software, all the process to update Dflash is through the Fee interface below(We use EB AutoSar and with NXP MCAL). 

charles_wangw_0-1719366406758.png

And we try to ask for help in which condition can reach the issue scenario. Then we can try to repeat with application code again.

Thank you again.

Charles

 

 

 

 

 

标记 (1)
0 项奖励
回复

1,351 次查看
danielmartynek
NXP TechSupport
NXP TechSupport

Can you share the configuration of the FEE driver?

And what version of the RTD drivers do you use?

 

Thanks,

Daniel

 

0 项奖励
回复

1,336 次查看
charles_wangw
Contributor III

Hello Daniel

Thank you for your support.

Please uncompress from the attachment for fee config.

We use S32K14X_MCAL4_2_RTM_HF2_1_0_2 from NXP.

@danielmartynek 

@HuitingXu 

BR

Charles  

 

0 项奖励
回复

1,331 次查看
danielmartynek
NXP TechSupport
NXP TechSupport

Can you share the screenshots of the configuration?

Or the whole project, not just .xdm?

 

Thank you,

BR, Daniel

0 项奖励
回复

1,320 次查看
charles_wangw
Contributor III

Hello Daniel

Please help to check the config below.

charles_wangw_1-1719541410483.png

Thanks.

BR

Charles

 

 

 

 

0 项奖励
回复

1,191 次查看
danielmartynek
NXP TechSupport
NXP TechSupport

Can you share screenshots of all the configuration tabs?

Also, you did not specify the MCU part number.

 

BR, Daniel

0 项奖励
回复

1,165 次查看
HuitingXu
Contributor I

HuitingXu_0-1719899482921.pngHuitingXu_1-1719899492968.pngHuitingXu_2-1719899505128.png

HuitingXu_5-1719899635017.png

 

HuitingXu_4-1719899605640.png

Above are our FEE configration of APP(Which has problem cluster header one)

Our MCU part number is S32K144HBT0MLHR.

 

 

0 项奖励
回复

1,156 次查看
danielmartynek
NXP TechSupport
NXP TechSupport

Hello @HuitingXu,

Thank you ro all the information.

What you see in the picture "????" is we read directly from the failed sample. It looks like these area is erased by debug. When we try to repeat this issue. All the area will also comes to "?????" when do the process "Erase Mass all" with IC5000.

That is interrecting, because Mass erase from the debugger should not caused any ECC issues, unless the operation is interrupted.

Can you confirm there are indeed ECC errors?

Can you read the DFlash ???? loacations by the core?

You should see a fault exception and FERSTAT[DFDIF] = 1.

You need to implement correct exception handling (AUTOSAR_MCAL_FLS_IM.pdf, Section 4.4 Implementing an Exception Handler in case of noncorrectable ECC error.

 

If the ECC errors are confirm there, make sure the FEE operations are not interrupted, please scope the reset_b pin along with the power supply.

 

Best regards,

Daniel

 

 

0 项奖励
回复

1,144 次查看
HuitingXu
Contributor I

This error is not caused by the debugger erase, is integrated into the ECU normal operation,

And go to the hard fault error.

HuitingXu_0-1719969580342.png

from the dumped D-Flash address segment information,

A block set to write immediately was repeatedly written 181 times,

but failed to write, only the block header information was written, the actual block content was not written. This block will be written before sleep and power down. Is it related to the abnormal address?

Below is 181 times unfinished writes

HuitingXu_1-1719969713647.png

Below is dumped D-flash image

HuitingXu_3-1719969922890.png

Below is ???? abnormal area

HuitingXu_4-1719969977217.png

 

 

 

 

0 项奖励
回复