CRC on FLASH

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

CRC on FLASH

1,840 Views
bengtandersson
Contributor III

Are there any built in features 5602B that automatically calculates and saves the CRC of the FLASH memory?

Labels (1)
0 Kudos
5 Replies

1,131 Views
lukaszadrapa
NXP TechSupport
NXP TechSupport

Hi,

there's Flash Array Integrity Check function. It calculates something like checksum on selected flash blocks and then it is compared with checksum calculated by offline calculator using s-record file.

pastedImage_0.png

pastedImage_1.png

Take a look at this example:

Example MPC5604B Flash Array Integrity Check - using SSD flash drivers

Regards,

Lukas

0 Kudos

1,131 Views
bengtandersson
Contributor III

Hi!

Long time since I asked this question. Finally I will try to use this example and I have one question. I can find almost no information about the MISR_C90LC.exe program. There should be a readme file explaining MISR_C90LC.exe in the example code but the only readme file in this project is the readme.txt file always created when a new project is created. Also extremely hard to find information about MISR_C90LC.exe on the internet.

Regards

Bengt

0 Kudos

1,131 Views
lukaszadrapa
NXP TechSupport
NXP TechSupport

Hi Bengt,

the offline tool can be found in this package (this one is compatible with MPC560xB devices):

http://www.nxp.com/assets/downloads/data/en/device-drivers/MPC56XX_C90LC_JDP_SSD_100_DEVD.exe 

Default path is:

c:\Program Files (x86)\Freescale\Standard Software Driver v1.0.3\xPC56xx_C90LC\Tools\MISR\MISR_C90LC.exe

There's also readme file:

c:\Program Files (x86)\Freescale\Standard Software Driver v1.0.3\xPC56xx_C90LC\Tools\MISR\readme.txt

Or just run cmd.exe in windows, type MISR_C90LC.exe to command line without parameters and it will list all possible options. That should be enough to be able to use the tool.

Regards,

Lukas

0 Kudos

1,131 Views
bengtandersson
Contributor III

Thanks! I have now started to get things working. The example code is adapted and inserted into my application code and everything seems to compile as intended. I have run the MISR_C90LC program on my .mot file and added the result into my code as well (to sector 0). All steps prior to running the pFlashArrayIntegrityCheck runs fine but when this function is called it returns code 0xb00 (The MISR generated by the FMR hardware doesnot match the MISR passed by the user). There is a lot of parameters that should be passed to the MISR_C90LC.exe program and to the function pFlashArrayIntegrityCheck . I have taken most of the parameters from the example code except for the ones that obviously has to be changed. In the ssdConfig struct passed to the pFlashArrayIntegrityCheck  function I'm not sure about the lowBlockNum, midBlockNum, highBlockNum and pageSize parameters and how to use them.

Can you explain them for me?

To me they look very similar to the parameters lowEnabledBlocks, midEnabledBlocks and highEnabledBlocks. My application uses sector 0 to 4 of the CFLASH.

Regards

Bengt

0 Kudos

1,131 Views
bengtandersson
Contributor III

Hi!

I have one additional question. I'm using CW 10.7 and I'm not sure if the SSD functions are compatible with this version. Do I have to use CW 2.10 Classic as in the example ??

/Bengt

0 Kudos