LBIST failing on MPC5777C

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

LBIST failing on MPC5777C

1,854 Views
mauriziogreco
Contributor III

Hi all,

I'm working on MPC5777C.

As first overview I must remark that I init MCU using CORE 0 only to start CORE1. All code is fetched by CORE1.

Inside the CORE 1 I execute the code suggest by Vlna Peter (MPC5777C-Online-MBIST+LBIST-v1_2-GHS614).

If I understand the routine SysClk_Init() the PLL works at 200MHz, FM_PER_CLK works at 100MHz, and the Clock for STCU2 unit works at 50MHz.

PLLDIG.PLL0DV.R = 0x5002100A;

SIU.SYSDIV.R = 0x05003110;

STCU2.CFG.R = 0x10000011;

So MBIST test works at 50MHz , LBIST works at clock fixed by

/* LBIST0 */
STCU2.LB[0].LB_CTRL.R = 0x04014504; /* STCU2_LB_CTRL0: Run Sequentially, next in sequence is LBIST4, SHS = 1 */
STCU2.LB[0].LB_PCS.R = 0x4C0;
STCU2.LB[0].LB_MISRELSW.R = 0x638CABD3;
STCU2.LB[0].LB_MISREHSW.R = 0xF6FEF134;

/* LBIST1 */
STCU2.LB[1].LB_CTRL.R = 0x02014504; /* STCU2_LB_CTRL1: Run Sequentially, next in sequence is LBIST2, SHS = 1 */
STCU2.LB[1].LB_PCS.R = 0x340;
STCU2.LB[1].LB_MISRELSW.R = 0x29CAE1DA;
STCU2.LB[1].LB_MISREHSW.R = 0xF547396A;

/* LBIST2 */
STCU2.LB[2].LB_CTRL.R = 0x05014504; /* STCU2_LB_CTRL2: Run Sequentially, next in sequence is LBIST5, SHS = 1 */
STCU2.LB[2].LB_PCS.R = 0x500;
STCU2.LB[2].LB_MISRELSW.R = 0x1AC8F17C;
STCU2.LB[2].LB_MISREHSW.R = 0x84F64979;


/* LBIST3 */
STCU2.LB[3].LB_CTRL.R = 0x7F014504; /* STCU2_LB_CTRL3: Run Sequentially, last in sequence, SHS = 0 */
STCU2.LB[3].LB_PCS.R = 0xA00;
STCU2.LB[3].LB_MISRELSW.R = 0xC59BF565;
STCU2.LB[3].LB_MISREHSW.R = 0x555F4ACF;


/* LBIST4 */
STCU2.LB[4].LB_CTRL.R = 0x03014504; /* STCU2_LB_CTRL4: Run Sequentially, next in sequence is LBIST3, SHS = 1 */
STCU2.LB[4].LB_PCS.R = 0xA40;
STCU2.LB[4].LB_MISRELSW.R = 0x15C9A73F;
STCU2.LB[4].LB_MISREHSW.R = 0xBD55BE6A;


/* LBIST5 */
STCU2.LB[5].LB_CTRL.R = 0x00014504; /* STCU2_LB_CTRL5: Run Sequentially, next in sequence is LBIST0, SHS = 1 */

i.e LBIST works at 25MHz.

Before starting the setting of clocks, I also disable CORE 0 (no CORE 1) and all unit (no STC2 clock) using:

SIU_HLT1 and SIU_HLT2  (no STCU2 clock).

I m  using this code and test ON LINE works, but always the partition 3 and 4 of LBIST result with 

STCU2_LB_MISRRLSW3, STCU2_LB_MISRRLHW3

STCU2_LB_MISRRLSW4STCU2_LB_MISRRLHW4

different from the related expected value (already above reported and coherent with AN5288).

What can be happens?

Another problem for me is that I can see:

LBSSW4=0 (error)

LBSSW3=0 (error)

LBESW4=1 (finished)

LBESW3=1 (finished)

but 

STCU2_ERR_STAT not report errors , but I m waiting for some indication into UFSF or RFSF.

At same time MBIST it seems works well with MPC5777C-Online-MBIST+LBIST-v1_2-GHS614 code (proposed by Peter)

Can some one explain me, where I miss?

Thanks into advance for answer.

0 Kudos
Reply
2 Replies

1,690 Views
petervlna
NXP TechSupport
NXP TechSupport

Hello,

I have just run the STCU online test according to my example code.

All tests has passed correctly. But I have run it only on core0.

pastedImage_1.png

Now I will try to rerun the tests on core1. This will take me some time, but I am curios why it fails for you.

regards,

Peter

0 Kudos
Reply

1,690 Views
mauriziogreco
Contributor III

Hi Peter, I'm sorry. Many days are passed from issue: too much.

I don't remember all detail of that problem, at today! We skipped ON LINE TEST! It cannot work for us.

At end of test, MCU shall restart. For us the restart of ECU will always monitored by external safety core (MC33908).

pastedImage_1.png

At end of OnLine Test, also if FCCU don't works, pull-up and pull-down resistor can be able to communicate (in case of reset) a fault on MC33908. This device will reset MCU! --> So we cannot never see result of test.

pastedImage_2.png

pastedImage_3.png

In MC33908 it cannot be "managed" reading of Eout port as you want! You can enable or disable it one-time. After enabled (at Key on of system) an internal reset of MCU will produce a external reset of same MCU.

When we found this new problem we decided in september of 2018 to remove ON LINE usage.

With OFF LINE this kind of problem is not present.

Thanks for answer.

Regards.

0 Kudos
Reply