Example MPC5777C-1b+2b_FLASH_ECC_error_injection GHS614

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

Example MPC5777C-1b+2b_FLASH_ECC_error_injection GHS614

Example MPC5777C-1b+2b_FLASH_ECC_error_injection GHS614

********************************************************************************
* Detailed Description:
* Purpose of the example is to show how to generate Multi-bit or Single-bit
* ECC error in internal FLASH (user must choose it in the option at the end of
* main function).
* Flash over-programming is used to generate a non-correctable (or single-bit)
* ECC error in FLASH. The bad data is accessed then, so the IVOR1 exception (or
* ERM combined interrupt service routine) is generated and handled.
* Example also offers useful macros for EIM and ERM modules.
* The example displays notices in the terminal window (USBtoUART bridge J21)
* (19200-8-no parity-1 stop bit-no flow control on eSCI_A).
* No other external connection is required.
*
* ------------------------------------------------------------------------------
* Test HW:         MPC5777C-512DS Rev.A + MPC57xx MOTHER BOARD Rev.C
* MCU:             PPC5777CMM03 2N45H CTZZS1521A
* Fsys:            PLL1 = core_clk = 264MHz, PLL0 = 192MHz
* Debugger:        Lauterbach Trace32
* Target:          internal_FLASH
* Terminal:        19200-8-no parity-1 stop bit-no flow control on eSCI_A
* EVB connection:  eSCI_A is USBtoUART bridge (connector J21)
*
********************************************************************************

Labels (1)
Attachments
Comments

Hello David,

I wonder why you chose to generate Flash ECC errors by a double-program operation in flash. MPC5777C (and others MPC57xx devices) do have some area in flash which are programmed to contain a single or double ECC error. You only need to read these locations to have a single/double ECC error be generated.

Thanks

%3CLINGO-SUB%20id%3D%22lingo-sub-1112988%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3EExample%20MPC5777C-1b%2B2b_FLASH_ECC_error_injection%20GHS614%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1112988%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E********************************************************************************%3CBR%20%2F%3E*%20Detailed%20Description%3A%3CBR%20%2F%3E*%20Purpose%20of%20the%20example%20is%20to%20show%20how%20to%20generate%20Multi-bit%20or%20Single-bit%3CBR%20%2F%3E*%20ECC%20error%20in%20internal%20FLASH%20(user%20must%20choose%20it%20in%20the%20option%20at%20the%20end%20of%3CBR%20%2F%3E*%20main%20function).%3CBR%20%2F%3E*%20Flash%20over-programming%20is%20used%20to%20generate%20a%20non-correctable%20(or%20single-bit)%3CBR%20%2F%3E*%20ECC%20error%20in%20FLASH.%20The%20bad%20data%20is%20accessed%20then%2C%20so%20the%20IVOR1%20exception%20(or%3CBR%20%2F%3E*%20ERM%20combined%20interrupt%20service%20routine)%20is%20generated%20and%20handled.%3CBR%20%2F%3E*%20Example%20also%20offers%20useful%20macros%20for%20EIM%20and%20ERM%20modules.%3CBR%20%2F%3E*%20The%20example%20displays%20notices%20in%20the%20terminal%20window%20(USBtoUART%20bridge%20J21)%3CBR%20%2F%3E*%20(19200-8-no%20parity-1%20stop%20bit-no%20flow%20control%20on%20eSCI_A).%3CBR%20%2F%3E*%20No%20other%20external%20connection%20is%20required.%20%3CBR%20%2F%3E*%3CBR%20%2F%3E*%20------------------------------------------------------------------------------%3CBR%20%2F%3E*%20Test%20HW%3A%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%20MPC5777C-512DS%20Rev.A%20%2B%20MPC57xx%20MOTHER%20BOARD%20Rev.C%3CBR%20%2F%3E*%20MCU%3A%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%20PPC5777CMM03%202N45H%20CTZZS1521A%3CBR%20%2F%3E*%20Fsys%3A%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%20PLL1%20%3D%20core_clk%20%3D%20264MHz%2C%20PLL0%20%3D%20192MHz%3CBR%20%2F%3E*%20Debugger%3A%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%20Lauterbach%20Trace32%3CBR%20%2F%3E*%20Target%3A%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%20internal_FLASH%3CBR%20%2F%3E*%20Terminal%3A%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%2019200-8-no%20parity-1%20stop%20bit-no%20flow%20control%20on%20eSCI_A%20%3CBR%20%2F%3E*%20EVB%20connection%3A%26nbsp%3B%20eSCI_A%20is%20USBtoUART%20bridge%20(connector%20J21)%3CBR%20%2F%3E*%3CBR%20%2F%3E********************************************************************************%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-TEASER%20id%3D%22lingo-teaser-1112988%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E********************************************************************************%3CBR%20%2F%3E*%20Detailed%20Description%3A%3CBR%20%2F%3E*%20Purpose%20of%20the%20example%20is%20to%20show%20how%20to%20generate%20Multi-bit%20or%20Single-bit%3CBR%20%2F%3E*%20ECC%20error%20in%20internal%20FLASH%20(user%20must%20choose%20it%20in%20the%20option%20at%20the%20end%20of%3CBR%20%2F%3E*%20main%20function).%3CBR%20%2F%3E*%20Flash%20over-programming%20is%20used%20to%20generate%20a%20non-correctable%20(or%20single-bit)%3CBR%20%2F%3E*%20ECC%20error%20in%20FLASH.%20The%20bad%20data%20is%20accessed%20then%2C%20so%20the%20IVOR1%20exception%20(or%3CBR%20%2F%3E*%20ERM%20combined%20interrupt%20service%20routine)%20is%20generated%20and%20handled.%3CBR%20%2F%3E*%20Example%20also%20offers%20useful%20macros%20for%20EIM%20and%20ERM%20modules.%3CBR%20%2F%3E*%20The%20example%20displays%20notices%20in%20the%20terminal%20window%20(USBtoUART%20bridge%20J21)%3CBR%20%2F%3E*%20(19200-8-no%20parity-1%20stop%20bit-no%20flow%20control%20on%20eSCI_A).%3CBR%20%2F%3E*%20No%20other%20external%20connection%20is%20required.%20%3CBR%20%2F%3E*%3CBR%20%2F%3E*%20------------------------------------------------------------------------------%3CBR%20%2F%3E*%20Test%20HW%3A%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%20MPC5777C-512DS%20Rev.A%20%2B%20MPC57xx%20MOTHER%20BOARD%20Rev.C%3CBR%20%2F%3E*%20MCU%3A%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%20PPC5777CMM03%202N45H%20CTZZS1521A%3CBR%20%2F%3E*%20Fsys%3A%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%20PLL1%20%3D%20core_clk%20%3D%20264MHz%2C%20PLL0%20%3D%20192MHz%3CBR%20%2F%3E*%20Debugger%3A%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%20Lauterbach%20Trace32%3CBR%20%2F%3E*%20Target%3A%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%20internal_FLASH%3CBR%20%2F%3E*%20Terminal%3A%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%2019200-8-no%20parity-1%20stop%20bit-no%20flow%20control%20on%20eSCI_A%20%3CBR%20%2F%3E*%20EVB%20connection%3A%26nbsp%3B%20eSCI_A%20is%20USBtoUART%20bridge%20(connector%20J21)%3CBR%20%2F%3E*%3CBR%20%2F%3E********************************************************************************%3C%2FP%3E%3C%2FLINGO-TEASER%3E%3CLINGO-LABS%20id%3D%22lingo-labs-1112988%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CLINGO-LABEL%3EGeneral%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1112989%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3ERe%3A%20Example%20MPC5777C-1b%2B2b_FLASH_ECC_error_injection%20GHS614%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1112989%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHello%20David%2C%3C%2FP%3E%3CP%3EI%20wonder%20why%20you%20chose%20to%20generate%20Flash%20ECC%20errors%20by%20a%20double-program%20operation%20in%20flash.%20MPC5777C%20(and%20others%20MPC57xx%20devices)%20do%20have%20some%20area%20in%20flash%20which%20are%20programmed%20to%20contain%20a%20single%20or%20double%20ECC%20error.%20You%20only%20need%20to%20read%20these%20locations%20to%20have%20a%20single%2Fdouble%20ECC%20error%20be%20generated.%3C%2FP%3E%3CP%3EThanks%3C%2FP%3E%3C%2FLINGO-BODY%3E
No ratings
Version history
Last update:
‎09-19-2016 01:10 AM
Updated by: