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.

XDS560V2 Mezzanine on C6678EVM unreliable when using ddr3?

Hi,

I have a mezzanine emulator on my C6678 evm.  I found that when my program was small enough to run in local ram (L2 and MCMSRAM) the emulator performance was ok.  Now that my program needs to run from DDR3, I have constant connection problems. 

For instance, a core will be hung when it tries to connect.  If I ask it to ignore that core then the emulator just hangs until I power cycle it.

Sometimes when I try to connect it will say that it cannot validate the load address (which is in DDR3) and then it will hang.  Again, i need to power cycle.

This would not be a big deal if it was occasionally, but I would say this is one in three or one in two times when I try to re-load a program.  My situation is this:

I load a program onto 5 cores.

I run the program - it either aborts itself and/or I will pause all the cores.  Then I will disconnect completely (using the red square).

I will make some changes.

I will try to test again.  When I press the debug button I get one of three behavoirs - a proper connection and load of the gel file and application, a core is hung or it cannot validate the load address on a core.

My colleague is creating a different application for the same EVM and he also has the same problems when running from DDR3.  His program is single core.  Both of our applications have started from a TI sample program (his was an ethernet program and mine was an SRIO program.)

Please advise on why this is happening.  Also, let me know what other info you need.

 

Thanks!

Brandy

  • Here are some exact errors:

    C66xx_0: GEL Output: Setup_Memory_Map...

    C66xx_0: GEL Output: Setup_Memory_Map... Done.

    C66xx_1: GEL Output: Setup_Memory_Map...

    C66xx_1: GEL Output: Setup_Memory_Map... Done.

    C66xx_2: GEL Output: Setup_Memory_Map...

    C66xx_2: GEL Output: Setup_Memory_Map... Done.

    C66xx_3: GEL Output: Setup_Memory_Map...

    C66xx_3: GEL Output: Setup_Memory_Map... Done.

    C66xx_4: GEL Output: Setup_Memory_Map...

    C66xx_4: GEL Output: Setup_Memory_Map... Done.

    C66xx_5: GEL Output: Setup_Memory_Map...

    C66xx_5: GEL Output: Setup_Memory_Map... Done.

    C66xx_6: GEL Output: Setup_Memory_Map...

    C66xx_6: GEL Output: Setup_Memory_Map... Done.

    C66xx_7: GEL Output: Setup_Memory_Map...

    C66xx_7: GEL Output: Setup_Memory_Map... Done.

    C66xx_0: GEL Output:

    Connecting Target...

    C66xx_0: GEL Output: DSP core #0

    C66xx_0: GEL Output: Initialization performed but bootmode = 0x00000005

    C66xx_0: GEL Output: Please manually edit gel file to remove default setup if you would rather stick with bootmode initialization.

    C66xx_0: GEL Output: C6678L GEL file Ver is 2.0

    C66xx_0: GEL Output: Global Default Setup...

    C66xx_0: GEL Output: Setup Cache...

    C66xx_0: GEL Output: L1P = 32K

    C66xx_0: GEL Output: L1D = 32K

    C66xx_0: GEL Output: L2 = ALL SRAM

    C66xx_0: GEL Output: Setup Cache... Done.

    C66xx_0: GEL Output: Main PLL (PLL1) Setup ...

    C66xx_0: GEL Output: PLL1 Setup for DSP @ 1000.0 MHz.

    C66xx_0: GEL Output: SYSCLK2 = 333.3333 MHz, SYSCLK5 = 200.0 MHz.

    C66xx_0: GEL Output: SYSCLK8 = 15.625 MHz.

    C66xx_0: GEL Output: PLL1 Setup... Done.

    C66xx_0: GEL Output: Power on all PSC modules and DSP domains...

    C66xx_0: GEL Output: Security Accelerator disabled!

    C66xx_0: GEL Output: Power on all PSC modules and DSP domains... Done.

    C66xx_0: GEL Output: PA PLL (PLL3) Setup ...

    C66xx_0: GEL Output: PA PLL Setup... Done.

    C66xx_0: GEL Output: DDR3 PLL (PLL2) Setup ...

    C66xx_0: GEL Output: DDR3 PLL Setup... Done.

    C66xx_0: GEL Output: DDR begin (1333 auto)

    C66xx_0: GEL Output: XMC Setup ... Done

    C66xx_0: GEL Output:

    DDR3 initialization is complete.

    C66xx_0: GEL Output: DDR done

    C66xx_0: GEL Output: DDR3 memory test... Started

    C66xx_0: Trouble Writing Memory Block at 0x80000000 on Page 0 of Length 0x4: (Error -1060 @ 0x80000000) Device is not responding to the request. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 5.0.520.0)

    C66xx_0: GEL: Error while executing OnTargetConnect(): target access failed.

    C66xx_0: GEL Output: Invalidate All Cache...

    C66xx_0: Trouble Writing Memory Block at 0x1845028 on Page 0 of Length 0x4: (Error -1060 @ 0x1845028) Device is not responding to the request. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 5.0.520.0)

    C66xx_0: GEL: Error calling OnPreFileLoaded(): target access failed

    C66xx_0: Trouble Reading Memory Block at 0x80300000 on Page 0 of Length 0x4: (Error -1060 @ 0x64) Device is not responding to the request. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 5.0.520.0)

    C66xx_0: File Loader: Data verification failed at address 0x80300000 Please verify target memory and memory map.

    C66xx_0: GEL: File: D:\mcsdk\logos_c6678_evm_exploitation\rx\logos_c6678_evm_exploitation_rx.out: a data verification error occurred, file load failed.

  •  

    This sounds more like a DDR initialization problem - your GEL file didn't initialize the DDR appropriately, and the memory test process failed, which caused the system failed.

    So, you should focus on fixing the GEL file for DDR initialization.

     

    Regards!

    Wen

  • Hi Brandy,

    Your EVM is running at bootmode=5, that is I2C boot mode, so the GEL attached with the target configuration file could not be loaded automatically.

    You can try to modify the bootmode through switching SW3[4:2] ="000"(ON,ON,ON) which will bring the EVM to Emulation Boot and the GEL(evmc6678l.gel) could be loaded properly.

    Allen

  • Hello,

    Thank you for the response, I did switch it to Emulation boot and it is a bit more reliable. 

    Regards,
    Brandy