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.

Emulation about C6474

We try to connect Emulator to C6474 with the 14 PIN JTAG.

The error imformation is as follow:


(1), The emulator can be connected to C6474, the program(*.out) can be loaded to C6474, But when the program run a few seconds or a few miniutes, It will appear the following error imformation:

 

Power Failure on Target CPU

Failed to remove the debug state from the target before disconnecting.  There may still be breakpoint opcodes embedded in program memory.  It is recommended that you reset the emulator before you connect and reload your program before you continue debugging.

 

 

Power Failure on Target CPU

Failed to remove the debug state from the target before disconnecting.  There may still be breakpoint opcodes embedded in program memory.  It is recommended that you reset the emulator before you connect and reload your program before you continue debugging.

 

(2), When we unconnect to C6474 and then reconnect the C6474, sometimes, error appears as follow:


 

Trouble Reading Memory Block at 0x800000 on Page 0 of Length 0x2c0:

Error 0x00000002/-1139

Error during: Memory,

Device driver: Emulation Connection Loss Detected on Target CPU.

It is recommended to RESET EMULATOR.  This will disconnect each

target from the emulator.  The targets should then be power cycled

or hard reset followed by an emureset and reconnect to each target.

 

 

Trouble Reading Memory Block at 0x800000 on Page 0 of Length 0x680:

Error 0x00000002/-1139

Error during: Memory,

Device driver: Emulation Connection Loss Detected on Target CPU.

It is recommended to RESET EMULATOR.  This will disconnect each

target from the emulator.  The targets should then be power cycled

or hard reset followed by an emureset and reconnect to each target.

 

Trouble Writing Memory Block at 0x29a017c on Page 0 of Length 0x4:

Error 0x00000002/-1139

Error during: Memory,

Device driver: Emulation Connection Loss Detected on Target CPU.

It is recommended to RESET EMULATOR.  This will disconnect each

target from the emulator.  The targets should then be power cycled

or hard reset followed by an emureset and reconnect to each target.

 

 

Error connecting to the target:

Error 0x80000260/-1198

Fatal Error during: Execution, Initialization, OCS,

Cannot get ownership of the EXE unit.

 

 

 

Board Name: C6474 XDS560 Emulator, 20-pin JTAG Cable

Cpu Name: C6400PLUS_0

 

Abort:            Close Code Composer Studio.

Retry:             Try to connect to the target again.

Cancel:           Remain disconnected from the target

Diagnostic:     Run diagnostic utility.

 

(3), Sometimes, The emulator can be connected to C6474, but the program(*.out) can't be loaded to C6474,  It will appear the following error imformation:


 

Trouble Reading Memory Block at 0x800000 on Page 0 of Length 0x680:

Error 0x00000002/-1139

Error during: Memory,

Device driver: Emulation Connection Loss Detected on Target CPU.

It is recommended to RESET EMULATOR.  This will disconnect each

target from the emulator.  The targets should then be power cycled

or hard reset followed by an emureset and reconnect to each target.

 

 

Trouble Writing Memory Block at 0x808520 on Page 0 of Length 0x6ee0:

Error 0x00000006/-1139

Error during: Memory, Register,

Device driver: Emulation Connection Loss Detected on Target CPU.

It is recommended to RESET EMULATOR.  This will disconnect each

target from the emulator.  The targets should then be power cycled

or hard reset followed by an emureset and reconnect to each target.

 

Trouble Writing Memory Block at 0x1848200 on Page 0 of Length 0x40:

Error 0x00000002/-1139

Error during: Memory,

Device driver: Emulation Connection Loss Detected on Target CPU.

It is recommended to RESET EMULATOR.  This will disconnect each

target from the emulator.  The targets should then be power cycled

or hard reset followed by an emureset and reconnect to each target.

(3), Sometimes, The emulator can be connected to C6474, but the program(*.out) can't be loaded to C6474,  It will appear another kinds of error imformation:


data verification failed at address 0813400. please verify target memory and memory map.

 When this kind of error appear, we have to restart the CCS program.

 

 

Following is some imfortion about our the platform.

1. Correct Core voltage supply of the chip.

 1.2V now
2. For the re-connect error, try simple hello project test first.

 We had try the simple project, but the problems appeared as usual.
3. Latest emulator driver.

BHEMU-SetupCCS_v3.3.300.0.zip(blackhawk driver with SR12_20080419)
But the blackhawk emulator is hard to connect.
The xds560 sometimes can be connected.

4. Latesr CCS SR release that can support C6474.

SR12_CCS_v3.3_SR_3.3.82.13.exe

5. Correct CCS configuration of your board.

Do you mean we need some special configuration on CCS when emulating the board?

   In fact, we found some errors in the gel file, and we correct it, but it seems no use.

   Do it need different emulation methods when emulating the 6474 as it has three cores?


 We have tried C6474 XDS560 Emulator, 20-pin JTAG Cable configuration on XDS560 Emulator.
We also tried Blackhawk USB560m- C6474  Emulator, 20-pin JTAG Cable on Blackhawk USB560 Emulator.

The configuration all come from the Available Factory Boards on CCS.

7. Correct memory map file.

We had done some changes, but it did not work.
The gel file we have is on the attachment.
evmc6474.gel is the original gel from spectrum.3757.c6474_gel.zip
evmc6474_0.gel is changed by ourselves.
evmc6474_0.gel run longer time than evmc6474.gel.

  • You have the latest BH drivers and your version of CCS SR12 gives you a software setup that should be able to connect and emulate well. There are not very many additional things you can do from the software side, but here are some simple ideas to help isolate the problem.

    1. In your GEL file, the OnTargetConnect() function calls GEL_Reset(), init_PLL() and init_emif(). Disable this function by changing the name to xOnTargetConnect() so it will not run automatically when you try to connect. In your first set of error messages, one failing access is in the range of PLL1 registers, so it could be occurring during the execution of the init_PLL() function. You can isolate this by running these functions manually from the GEL menu or GEL Toolbar. GEL_Reset could be avoided or used depending on what works best on your system.
    2. Make sure your PDM setup does not automatically try to connect. Since you are having troubles with connecting, the automatic connection will make it harder to debug. If you do change this, close PDM, power cycle your target board and emulator (if external), reset the emulator (if available), and restart PDM.
    3. From PDM, open a CCS window on the first DSP core rather than connecting from within PDM. This may give you access to more message information, and it will give you more control over the connection process. Before connecting, do Debug->Reset Emulator; if nothing happens, then you are okay, but if there is an error message try it again. If no error message comes up, then try to connect (Debug->Connect).
    4. If it appears to connect properly, there will likely be a Disassembly window pop up automatically. This at least gives you confidence that you have some level of connection available.
    5. Open a memory window and try to write to a couple of locations in local and global L2 memory space.
    6. Manually run init_pll() to try to get the clock speed up to where you want it to be. I am pretty sure this should only be done once per power cycle, and should only be done on one core, so you will want a different GEL file for the other two cores.

    In my opinion, you will be debugging a hardware issue rather than software, but these steps may help you to isolate the type of problem you are facing. Debugging hardware problems will mean checking with an oscilloscope to determine signal integrity on

    1. All power supplies, at all pins as close to the C6474 as you can get.
    2. All JTAG signals to see if there is noise or if timing is bad (TCK speed and sampling edge can be adjusted in CCSetup for the BH emulator).
    3. Look at the clock input and any clock outputs to see if the signals are good and if the PLL seems to be locking at the adjusted rate.

    Try all of this on multiple boards to try to eliminate manufacturing problems. Hidden pins that have poor connections will lead to improper behavior like this, but everything has to be right for it to work. Once you get the hardware problem located, you will have a very reliable system.