This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TMS320C6713B: .out execution file loading issue

Guru 15510 points
Part Number: TMS320C6713B

Hi,

My customer are using C6713 and having some issue when trying to flash the boot image to boot memory(flash).
The issue occur when they try to load flashwriter program(.out) to the C6713 via XDS560v2 and CCSv6.2.0.00050.

When they load the program, the target(C6713) start running suddenly, and following error have been displayed.
By this error, unavailable to flash boot image to the flash memory.
*****************************************
Can't Run Target CPU:
(Error - 1143 @ 0x1BC0010)
Device core was hung. The debugger has forced the device to a ready state
and recovered debug control, but your application's state is now corrupt.
You should have limited access to memory and registers, but you may need
to reset the device to debug further.
(Emulation package 6.0.407.3)
*****************************************

The customer are using 960pcs of C6713 and this issue occur against 21pcs of C6713.
After this issue occur on the board, they change the C6713 to other C6713 and the error won't occur.
So, they think that this is not board problem.

We have following questions:
Q1.What cause this issue and how to solve this issue?
Q2.Is this device(C6713) issue or emulator issue?

best regards,
g.f.

  • Hi g.f.

    Thank you for the query.

    The customer are using 960pcs of C6713 and this issue occur against 21pcs of C6713.
    After this issue occur on the board, they change the C6713 to other C6713 and the error won't occur.

    Can you please let us know, out of 960 pcs same 21 pcs are facing issues or it occurs on random pcs?

    Q1.What cause this issue and how to solve this issue?

    For answers related to above questions, please refer Device-hung article.

    Q2.Is this device(C6713) issue or emulator issue?

    On multiple runs, does the issue occurs on different 21pcs of C6713 or the identical 21pcs of C6713 are facing issue every time?

    Regards,

    Tushar

  • The total number of devices(C6713) used so far in the past appears to be 960.
    In this time, we don't know it is same LOT but the device which issue occurred are all same LOT.

    >Can you please let us know, out of 960 pcs same 21 pcs are facing issues or it occurs on random pcs?
    [Answer]
    Same 21 pcs are facing issues.

    >On multiple runs, does the issue occurs on different 21pcs of C6713 or the identical 21pcs of C6713 are facing issue every time?
    [Answer]
    Identical 21 pcs of C6713 are facing issue every time.

    Here are additional information from the custmer:
    I requested to the customer that  to make some simple program(Hello, World) and load it to the target(C6713) via CCS.
    The program(code, data) was mapped to internal memory(L2) of C6713 and the program was loaded
    to C6713 successfully, and running withou any error.
    From this result, it seem the issue is not C6713 hardware problem, how do you think?

    By the way, from error code : Error - 1143 @ 0x1BC0010, the "0x1BC0010" is space of emulation register of C6713.
    Is this issue related to emulation? And what kind of register is the address "0x01BC0010for emulation in C6713?

    Also, can you tell me what factors, if any, cause the program to automatically start executing when loaded in CCS before the run button is pressed?

    best regards,
    g.f.

  • Hi g.f.

    I am assigning this query to our domain expert and you can expect a reply in one or two days.

    Thanks & Regards,

    Tushar

  • g.f 

    as noted on the device product folder , this device now has limited support

    https://www.ti.com/product/TMS320C6713B

    From the problem statement I do not see this to be an emulator problem or device problem (device has been in production very long and no recent reported issues). 

    It would be good to do a complete ABA swap to confirm that the failing devices fail even on a known good board (you have already established that that if the failing unit is removed and replaced with another unit, the board works).

    If you still see failures on a known good board with the bad device you can evaluate the customer return process for failure analysis

    https://www.ti.com/support-quality/additional-information/customer-returns.html

    Regards

    Mukul 

  • Can you share the Reset circuit? Would suggest to try manual reset before connecting JTAG and load .out, see if helps.

  • Hi Mukul and Tony,

    Thank you for the reply and sorry for the delay.

    I got new information from the customer, so let me share with you.

    On the target where the problem was occurring, they changed the procedure to load the newly
    prepared write program before the existing write program and then load the existing program,
    and we are not sure why, but the problem no longer occurs.

    In the existing write program, the code that reads the hex file completes reading
    when it reaches the end of the file.

    They created a new program based on this program that continues the reading process until
    the counter reaches 2000 at the end of the file reading code in this program.

    They first load the new program to the target(which issue occur) via CCS,
    after loading the above program they loaded existing write program.
    I don't know why but the existing write program was loaded successfully, and the issue never occured.

    The only difference between the two programs is the presence or absence of a counter
    that counts up to 2000 in the file reading code.

    The added code is following:
    (This code was added at the end of reading file functions)
    --------------------------------------
    counts++; // local variables
    if(counts>2000)
    break;
    ---------------------------------------

    There are other points of concern I have identified in my review of the customer's program.
    Some how in the customer's program, there are code that reading the reserved space of C6713 as following;
    --------------------------------------------------------------------------------
    unsigned int area = ( ( *((volatile unsigned int *)0x01600030) ) & 0x00000001 );
    ---------------------------------------------------------------------------------
    0x01600030 is reserved space of C6713, so is it conceivable that this could have caused the current problem?

    The customer made vector table in the writting program by their self, and it's mapped by the linker automatically.
    By reviewing the map file of the program, the vector table are not mapped to the address 0.
    Does vector table need to be mapped to the address 0?

    best regards,
    g.f.

  • g.f

    I will check with Tony , who is field engineer (not factory) if they have any additional inputs otherwise my original response stands we have no ability to support c6713 queries and go deeper on the follow up you are looking for. The device is mature and we have no known issues, so the issue is likely with the customer hardware / software/ system setup. 

    If they think the device is faulty they after an ABA swap they can return the unit to TI to do another sanity check.