We have TS101 based DSP board. EMU, TCK, TDI & TMS signals are pulled up by 4.75K resistor to 3.3V DSP line.
When trying to program the DSP with HPUSB-ICE emulator, I got error " An EMUIR scan was attempted ,but the dsp is not ready to accept instruction via JTAG ". In Visual DSP configurator, with the "Test" option JTAG scan is passing for all the parameters are passing. What could be problem in programming?
The error "An EMUIR scan was attempted but the DSP is not ready to accept instruction via JTAG" could be the result of a hung core. A hung core can occur when the DSP itself gets stuck performing an operation that never completes (like a DMA operation for example). Depending on what state the DSP is in this can also lock out JTAG accesses by the emulator which would result in the error you see. Can you try using the "Stop DMA while target is halted" Target Option, available from 'Settings'->'Target Options' in the idde. Does using this option (try it both checked and unchecked) have any effect on the system overall?
Although the ICE Test utility appears to be working this utility only talks to the JTAG port on the processor. It sets the processor to bypass mode and shifts bits through the JTAG bypass register. This utility only verifies that the JTAG connection is working. These tests do NOT test the /EMU signal, which is specific to ADI and used by our ICEs as a JTAG emulation status flag from the processor. They also do NOT test for issues like shorts, problems with the processor's pins.
Since you are using a custom board, it is recommended that you consult EE-68 'Analog Devices JTAG Emulation Technical Reference' for details of the JTAG specification and to ensure your board conforms with this standard . EE-68 can be found online at the following location:
We also recommend that you try to rule out the EMU~ signal as the cause of the problem by pulling the EMU~ pin at the JTAG header to ground through a 100-ohm resistor. The DSP EMU~ signal is an open drain pin, and will not be harmed by pulling it to ground hard with a 100-ohm resistor. Now reset the target and ICE and try to connect VisualDSP++ to the target again. If VisualDSP++ does connect to the target with the EMU~ signal pulled to ground with a 100-ohm resistor, the problem is the EMU~ pin logic on the target hardware. Remove the 100-ohm resistor and investigate the EMU~ signal's integrity with an oscilloscope while trying to connect with VisualDSP++ (or use with an Ohmmeter to check the connectivity of the signal on the target (unpowered without the ICE attached). Before using VisualDSP++ as normal, be sure to remove the 100-ohm resistor to ground on the EMU~ pin.
If the problem persists, I would recommend contacting private support via the link below, so that we can get a copy of your schematics and check if there is anything that may be causing this problem.
Thanks for detailed analysis. I tried all the solutions suggested but without much luck.
The problem was finally traced to "Contact issue" of BGA balls with PCB pads.
I request some more help in this regard:
As I memtioned in query, the four pull up resistors connected across EMU~, TCK, TDI & TMS has value of 4.75K, but when the ICE scan test passes these resistors measure 3.7K to 3.9K. This is one way for me to ensure, that at these locations, BGA balls are making contact with PCB pads. But what are other vital signals coming out of DSP (that must be present for establishing "Target Connection") which can be monitored on DMM / Scope to ensure that the BGA is indeed making contact with pads ?
As referred in Analog Devices website, we are following "IPC/JEDEC J-STD-020D.1" for mounting of BGA. As per this standard, the Peak package body temperature (Tp) for Pb-Free devices is 260 deg. But we needed to raise the temperature to almost 300 Deg for this BGA to work (that too after re-flowing it couple of times). We are using top & bottom heat blower for re-flow assembly. Which specific re-flow profile would you recommend for this mounting this BGA? Is there a resource where I can get some more help about correct temperature re-flow profile of ADSP TS101 ?
The JTAG port signals need to be correct for establishing the target connection with VDSP++. There are case where the target connection error will occur even if CLKIN, RESET and power supply to the chip are not connected properly. It is better to make sure that all the DSP signals are connected properly.
Regarding the reflow profile the JEDEC standard you have been using is the one recommended for this device. We may need to understand why this fails for your case. Please make sure that your reflow temperature and the times are calibrated correctly. We may continue further discussion on the reflow profile under our private support system.