Hello,
Well that wont be necessary. I am interested only on how do you start core2.
Below is the example how it should looks like, as you see, no reset is needed. In fact reset will put core2 into reset state.
What you are describing is not possible to achieve from HW standpoint concept of this micro.
Best regards,
Peter
void Core_Boot (void)
{
/* ~~~~~~~~~~~~~~~~~~~~~~~ Configure Cores ~~~~~~~~~~~~~~~~~~~~~~~~~ */
/* Enable Cores - Will start on next mode transistion */
//MC_ME.CCTL1.R = 0x00FE; // (z4a) - boot core_0 is active
MC_ME.CCTL[2].R = 0x00FE; // (z4b) - core_1 is active
MC_ME.CCTL[3].R = 0x00FE; // (z2) - core_2 is active
/* Set Start address for other cores: Will reset and start */
/* Flash addresses */
MC_ME.CADDR[2].R = 0x00F90001; // core_1 (z4b) boot address
MC_ME.CADDR[3].R = 0x00F9C001; // core_2 (z2) boot address
/****************************** Preform mode change **************************/
/* Mode change Re-enter the drun mode, to start cores */
MC_ME.MCTL.R = 0x30005AF0; /* Mode & Key */
MC_ME.MCTL.R = 0x3000A50F; /* Mode & Key inverted */
while(MC_ME.GS.B.S_MTRANS == 1); /* Wait for mode entry complete */
while(MC_ME.GS.B.S_CURRENT_MODE != 0x3); /* Check DRUN mode entered */
}//Core_Boot