iLLD_TC29x  1.0
IfxMtu.c File Reference

MTU basic functionality. More...

#include "IfxMtu.h"

Go to the source code of this file.

Functions

void IfxMtu_clearErrorTracking (IfxMtu_MbistSel mbistSel)
 Clears the error tracking registers (ETRR), valid and overflow bits. CAUTION: This function should be called after enabling Mbist Shell (Refer Errata: MTU_TC.005). More...
 
void IfxMtu_clearSram (IfxMtu_MbistSel mbistSel)
 Function to Clear the MBIST SRAM (Synchronous mode). Note: The function clears & sets safety endinit bit while running the test to prevent watchdog TO and automatically restores the endinit state (same state at the time of entering the function) at the end. More...
 
void IfxMtu_clearSramContinue (IfxMtu_MbistSel mbistSel)
 This Function should be called after MBIST Clear SRAM operation is completed. Note: The function should be called with safety endinit bit cleared. More...
 
void IfxMtu_clearSramStart (IfxMtu_MbistSel mbistSel)
 This Function triggers the Clear the MBIST SRAM operation (Asynchronous operation). It doesn't wait till the end of operation. The application has to poll the Mbist status (IfxMtu_isMbistDone()) in a task and once the operation is done, the IfxMtu_clearSramContinue() function should be called to complete the operation. If Synchronous usage is need, use IfxMtu_clearSram() function. Note: The function should be called with safety endinit bit cleared. More...
 
void IfxMtu_disableMbistShell (IfxMtu_MbistSel mbistSel)
 Disables the MBIST Shell of the given SRAM. More...
 
void IfxMtu_enableErrorTracking (IfxMtu_MbistSel mbistSel, boolean enable)
 Enables the tracking of SRAM errors. More...
 
void IfxMtu_enableMbistShell (IfxMtu_MbistSel mbistSel)
 Enables the MBIST Shell of the given SRAM. More...
 
uint32 IfxMtu_getSystemAddress (IfxMtu_MbistSel mbistSel, Ifx_MC_ETRR trackedSramAddress)
 Returns the descrambled system address based on a tracked SRAM error which consists of ADDR and MBI (SRAM address and block) More...
 
uint8 IfxMtu_getTrackedSramAddresses (IfxMtu_MbistSel mbistSel, Ifx_MC_ETRR *trackedSramAddresses)
 Returns the tracked SRAM error addresses and memory blocks which are stored in the MBIST ETRR registers. CAUTION: This function should be called after enabling Mbist Shell (Refer Errata: MTU_TC.005). More...
 
boolean IfxMtu_isAutoInitRunning (IfxMtu_MbistSel mbistSel)
 Returns TRUE if Auto-Initialisation is running for the given SRAM. More...
 
boolean IfxMtu_isErrorTrackingEnabled (IfxMtu_MbistSel mbistSel)
 Returns the status of the error tracking. More...
 
boolean IfxMtu_isErrorTrackingOverflow (IfxMtu_MbistSel mbistSel)
 Returns the error tracking overflow status. CAUTION: This function should be called after enabling Mbist Shell (Refer Errata: MTU_TC.005). More...
 
boolean IfxMtu_isMbistDone (IfxMtu_MbistSel mbistSel)
 This Function returns the status of MBIST clear Sram operation. Caution: It is recommended not to call this function continously in a loop. Use IfxMtu_ClearSram() function for Synchronous polling mode. More...
 
void IfxMtu_readSramAddress (IfxMtu_MbistSel mbistSel, uint16 sramAddress)
 
uint8 IfxMtu_runCheckerBoardTest (IfxMtu_MbistSel mbistSel, uint8 rangeSel, uint8 rangeAddrUp, uint8 rangeAddrLow, uint16 *errorAddr, uint32 numberRedundancyLines)
 Run CheckerBoard test. This test consists of writing the physical checkerboard pattern into the memory, then reading it back for verification Note: The function clears & sets safety endinit bit while running the test to prevent watchdog TO and automatically restores the endinit state (same state at the time of entering the function) at the end. More...
 
uint8 IfxMtu_runMarchUTest (IfxMtu_MbistSel mbistSel, uint8 rangeSel, uint8 rangeAddrUp, uint8 rangeAddrLow, uint16 *errorAddr)
 Run March U test. This test MARCHES 0 and 1 values through the memory array in an up and down direction. More precisely, 0 and 1 values are propagated through the memory in each direction; i.e. a single bit cell toggles into each direction with the neighboring cells having a given value and, in another run, the inverse given value. Note: The function clears & sets safety endinit bit while running the test to prevent watchdog TO and automatically restores the endinit state (same state at the time of entering the function) at the end. More...
 
uint8 IfxMtu_runNonDestructiveInversionTest (IfxMtu_MbistSel mbistSel, uint8 rangeSel, uint8 rangeAddrUp, uint8 rangeAddrLow, uint16 *errorAddr)
 This function runs the Non-Destructive Inversion test algorithm. Non-Destructive Inversion test can be considered as a simple linear test that is able to find all Stuck-At faults (the cell remains stuck at a value for any operation) without destroying any user data. The test accesses every Word in the address range defined by the RANGE register, four times. Test Steps: More...
 
void IfxMtu_writeSramAddress (IfxMtu_MbistSel mbistSel, uint16 sramAddress)
 

Detailed Description

MTU basic functionality.

Version
iLLD_1_0_0_11_0
                            IMPORTANT NOTICE

Infineon Technologies AG (Infineon) is supplying this file for use exclusively with Infineon's microcontroller products. This file can be freely distributed within development tools that are supporting such microcontroller products.

THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE. INFINEON SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.

Definition in file IfxMtu.c.