Spectrum Digital JTAG Emulator FAQ
This document contains General JTAG emulator information that may not be found in the product Technical Reference or quick start guide. Also included is troubleshooting information that can be used to help troubleshoot questionable JTAG Emulator connection.
Initial emulator specifications and emulator installation details can be found in the emulator 'Technical Reference', 'Quick Start Guide', and
Table of Contents
1. Preliminary Checks
2. SDConfig Utility
3. Emulator Connection Troubleshooting
4. Emulator Specific
5. Code Composer Studio Configuration and Spectrum Digital Emulators
6. Emulator Memory Summary
1.1 Simple things to check
Small things that cause a surprising number of problems:
All driver installations and software installations must be done while logged in to Windows with Adminstrative rights and Anti-Virus protection disabled.
Your JTAG emulator should always be attached to the board before power is applied. This insures that a proper ground is established on board startup.
Make sure that the correct power is applied to the Target and emulator (if required) and verify the JTAG cable is securely connected to the target's JTAG header.
Verify that your JTAG connection is working using SDConfig (see section 2).
If you have access to another DSP Target board (preferably a Spectrum Digital EVM or DSK), Connect the emulator to the other board and test connection. If there is still failure then the problem may be in the emulator hardware or configuration.
Check the Software Guide to see if you have all necessary components.
If you are getting an intermittent or unreliable connection, try using the JTAG cable (the part between the emulator and the target board) in a few different positions to see if it makes a difference. This will tell you if you need to have your cable replaced.
1.2 Windows Operating System Support
Here is a list of Operating systems supported by our JTAG emulators and Code Composer Studio v3.x:
- Windows 2000 Service Pack 4
- Windows XP Pro Service Pack 1 & 2
- Windows XP Home Service Pack 1 & 2
- Windows Vista 32 and 64* (requires CCS v3.3 SR8 and later)
*-USB drivers for Vista 32 and 64 bit versions are included in the standard emulation installation (CCS 3.3 and later). After installation, the drivers can be found in a directory that looks like:
- 32 bit: C:\CCStudio_v3.3\specdig\xds510usb
- 64 bit: C:\CCStudio_v3.3\specdig\xds510usb_win64
- Windows 7, 32 and 64* (requires CCS v4.1 or later)
*-USB drivers for Windows7 32 and 64 bit versions are included in the standard emulation installation that is executed during the CCS v4.1 installation. After installation, the drivers can be found in a directory that looks like:
- 32 bit: C:\Program Files\SpectrumDigital\Emulation\Drivers\i386
- 64 bit: C:\Program Files\SpectrumDigital\Emulation\Drivers\amd64
The SDConfig utility is installed with the standard JTAG Emulation driver installation. It can be launched from the 'SDConfig' icon on the Desktop or by double-clicking the 'sdconfig.exe' file in the installation path of C:\\specdig\sdconfig\bin.
The SDConfig utitily is a convenient tool to test the connection between the host computer, Spectrum Digital JTAG emulator, and Target JTAG Scan chain. In the event the emulation hardware or target hardware are questionable, the tests will help determine
which part of the tool chain is failing. If any of the SDConfig tests fail, then Code Composer Studio or any other emulator utility will not be able run.
SDConfig does not support the XDS560R USB JTAG Emulator at this time.
2.1 SDConfig Test Suggestions
2.1.1 SDConfig Host Computer Port Test
SDConfig can test to determine if the Host Computer port (Parallel POrt or USB) is available for use by the Spectrum Digital JTAG emulator. Highlight the port address (port list is in the column in the left panel) you wish to test. The test can be run by clicking "Configuration", then "Ports Avialable", then "Printer, USB". The SDConfig output
window will tell you if a suitable port has been found.
2.1.2 SDConfig Emulator Connection Verification
SDConfig can test the connection between the Host Computer and Emultor. Connect the emulator to the computer and power the emulator (if external power is required). Highlight the port address (port list is in the column in the left panel) you wish to test. Now click "Configuration", then "Verify". The SDConfig output
window will tell you if a Spectrum Digital JTAG Emulator has been found.
If the Configuration-->Verify fails, then it may be necessary that the emultion drivers be re-installed. Alternatively, this may be a result of faulty emulator hardware. Try connecting another emulator (if one is available) to the computer and test the Verify again. If the new emulator is found by SDConfig, then
the questionable one may need to be returned for repair.
2.1.3 SDConfig Emulator/Target Connection test
The JTAG connection between the emulator and Target DSP can be tested using the SDConfig "Emulator Test". Highlight the port address (port list is in the column in the left panel) you wish to test. Now click "Emulator", then "Test. The SDConfig output
window will tell you if the Spectrum Digital JTAG Emulator has successfully connected to a valid JTAG scan chain.
If the Emulator Test fails, this may be a result of faulty emulator hardware or possibly faulty target JTAG connection. Try connecting another emulator (if one is available) to the same target and run the test again. If the new Emulator Test passes with the new emulator connected, then
the questionable one may need to be returned for repair. Alternatively, try connecting a different Target board to the emulator. If the Test passes when connected to the new target, then the original target board may need repair.
2.1.4 SDConfig Scan Chain Connection Diagnostics
Once you have verified the PC to emulator connection you can perform advanced scan chain diagnostics. These diagnostics can aid in finding scan chain problems related to integrity, signal quality and other failures that would prevent CCS or other debug products from starting and running reliably.
To run diagnostics, connect the emulator to the computer and target, power the emulator and target, then launch SDConfig. Select the port address that is appropriate for the emulator being used, then click Emulator->Diagnostics. A new window will appear as follows:
Scan Verify: Uses an incrementing scan pattern. This pattern will have varying numbers of ones and zeroes.
Scan Pattern: User selectable pattern. Best selection for probing the JTAG TDI/TDO signals.
Stop Error Count: Determines the number of failures that can accumulate before the test stops. If set to zero then all errors are ignored. Set to zero when probing with scope.
Test Loop: Number of iterations to run the test. If set to zero then loop until user selects the stop button. Set to zero when probing with scope.
Emulation Connection Troubleshooting
The Emulator must have valid communication with the Host Computer and have valid connection with the target processor board. It is not always easy to determine where the communication failure has occured. Is the emulator communicating with the computer? Is the emulator communicating
with the target board? This section should help pinpoint the cause of the failing communication.
3.1 Connection Between Emulator and Host Computer
3.1.1 Verify the USB drivers are properly installed
USB communication to the host computer is used by many of Spectrum Digital's JTAG Emulators, EVMs, DSKs, and eZdsp boards. The USB drivers must be correctly installed and registered in Windows. This installation is done during the initial setup of the USB device.
The USB installation may be verified as follows:
An entry named "SD USB Based Debug Tools" should appear in the root. Expand the entry and the name of the device should appear. For example: "Spectrum Digital XDS510 USB". If the device
entery does not appear or does not appear correctly, then the USB drivers may need to be re-installed or there is possibly a hardware problem with the emulator. Try installing the emulator on a second computer. If the problem persists, then the unit may need to be
returned for repair.
- Plug in the Emulator (DSK, EVM, or eZdsp) to the USB port of the computer.
- Go to the Windows 'Control Panel' and click 'System'.
- Click the 'Hardware' Tab.
- Click 'Device Manager'
3.1.2 Verify the emulator connection to the Host computer
- Check the cable (USB or Parallel port) connection to the computer. The connection should be secure.
- If using a Parallel port emulator, verify +5V is applied to power the emulator. This may be done using an external +5V power supply or through the PD pin on the target board's JTAG connection.
- If using a USB hub for a USB emulator, make sure the hub is a powered hub. If not, then the proper power may not be supplied to the USB emulator.
- Use the SDConfig "Configuration Verify" to verify the connection. See Section 2 of this document.
3.1.3 Parallel Port Adapters
Spectrum Digital parallel port drivers (XDS510PP PLUS JTAG Emulator and eZdsp boards) require a port using standard LPT1 port addresses such as 0x378, 0x278, and 0x3bc. If the computer does not have a parallel port, the use of a parallel port adapter may be considered,
however the adapter MUST allow being mapped to the standard LPT1 port addresses mentioned previously.
We have found only one adapter that will allow the LPT1 addresses. It is a PCMCIA to Parallel Port adapter. The manufacturer is Quatech and the part number is SPP-100.
3.2 Connection between Emulator and Target
3.2.1 Emulator JTAG Scan Test
The SDConfig JTAG Scan Test is the quickest way to test the connection between emulator and target. See Section 2 above about the SDConfig for more details.
3.2.2 Code Composer Studio Failure to lauch or Connect
Code Composer Studio does not automatically "Connect" once the application is launched. After launching CCS, the connection must be made. Click "Debug" then "Connect".
If the connection still cannot be made, or errors appear, there might be a Configuration problem in the CCS Configuration utility. Close the CCS and launch back into the CCS Setup Tool. Verify the proper connection is being used, the JTAG Scan chain is defined poperly, and a
suitable GEL file is being used. Spectrum Digital JTAG emulator installations include many pre-built configurations using Spectrum Digital Emulators and targets. The CCS Setup utility uses 3 drop-down menus to narrow the search for a suitable pre-built configuration. Make sure
the correct Emulator Selection (Platform) is selected for a SD Emulator.
XDS510PP, XDS510PP PLUS, or SPI515 JTAG emulators ---> "PP emulator"
SPI525 PCI JTAG Emulator ---> "SPI 525 emulator"
XDS510USB, XDS510SUB PLUS or C2000 XDS510LC USB JTAG Emulators ---> "XDS510SUB Emulator"
** PLEASE NOTE: DO NOT SELECT 'XDS510 EMULATOR' IF YOU ARE USING A SPECTRUM DIGITAL EMULATOR. ** 'XDS510 Emulator' corresponds to the Texas Instruments XDS510ISA JTAG Emulator, not a Spectrum Digital emulator.
3.2.3 Potential Hardware Causes for Failure
Faulty hardware is also a potential cause for failure with the CCS connection. The SDConfig utility can be used as an initial test to verify if the hardware is a potential cause of the failure. See Section 2 above regarding the "Emulator Test" for more detail.
The emulator hardware may have become faulty. The cable may be bad or possibly components on the emulator board are failing. If the emulator hardware is suspected to be faulty, it may be returned to Spectrum Digital for repair. The repair process is handled on our
website at www.spectrumdigital.com, by clicking on "Return Merchandise Authorization".
The Target board JTAG connection may be suspect as well. Proper JTAG connection and signal integrity is very important to allow communication with a JTAG emulator. Custom JTAG connections that do not comply to the standare JTAG header pinouts are extremely suspect.
A noisy system, noisy environment, poor signal integrity, etc. will create problems with the emulation connection.
- It is recommended to use the standard Texas Instruments JTAG header (14-pin, 20-pin, 60-pin) design and pin out. Any deviation from the standard may pose potential communication problems
- The JTAG signal trace length on the target board, between the JTAG header and DSP must be less than 2 inches. Otherwise the signals must be buffered.
- The 'EMU' Must be pulled high to the target voltage to allow for emulator debugging.
4.1 XDS510USB JTAG Emulator
Here is a list of XDS510USB JTAG emulator specific Notes
The JTAG Tclock generated by the XDS510USB is fixed at 12MHz. This clock value may be divided to slow the clock if needed. This might help improve JTAG connection with marginal systems. The clock value divider can be changed in the Driver Options file "SDOpts.cfg". SDopts.cfg is locate in the C:\Windows\system32 directory of the computer.
Open the SDOpts.cfg in a text editor and change the value of the 'EmuTckDiv' option to geve the necessary TCK value. Below is a screenshot example what the SDopts.cfg change looks like:
Up to 4 XDS510USB JTAG emulators can be used simultaneously on one computer. Details how this can be acheive can be found in the Tech Note: Using Multiple XDS510USB Emulators
4.2 XDS510USB PLUS JTAG Emulator
Here is a list of XDS510USB PLUS JTAG emulator specific Notes.
The XDS510USB PLUS is supported by the SDConfig utility. However, additional support for the XDS510USB PLUS Features is available using the "SDConfigEX" utility. The SDConfigEX utility is included with the emulation driver installation. It can be accessed
by launching the 'SDConfiEX.exe'executable. The executable may be found in the installation directory that looks similar to "C:\CCStudio_v3.3\specdig\sdconfigex". SDConfigEX offers the same support for the XDS510USB PLUS as the SDConfig does, but with added
options. Details can be found in the SDConfigEX PDF documentation found in the same path where the executable is located (C:\CCStudio_v3.3\specdig\sdconfigex).
Up to 4 XDS510USB PLUS JTAG emulators can be used simultaneously on one computer. Details how this can be acheive can be found in the Tech Note: Using Multiple XDS510USB Emulators
4.3 C2000 Series XDS510LC USB JTAG Emulator
Here is a list of C2000 XDS510LC USB JTAG emulator specific Notes.
The C2000 Series XDS510LC JTAG Emulator supports only the C2000 family of DSCs from Texas Instruments. Development support for other Texas Instruments DSPs and TMS470 parts will require one of our other JTAG Emulators.
Only 1 C2000 XDS510LC can be used on a single computer at a time.
4.4 XDS510PP PLUS JTAG Emulator
Here is a list of XDS510PP PLUS JTAG emulator specific notes.
The Parallel port cable should be connected directly to the host computer's parallel port using the parallel port cable included with the XDS510PP PLUS package. Docking Stations, Parallel port Switch boxes, Extender cables,
security dongles, etc., can cause communication problems between the emulator and computer and should be avoided.
The parallel port mode settings in the computer's BIOS should be Bi-Directional, SPP-8, ECP, or EPP. Modes of normal, automatic, or SPP-4 will not allow communication with the XDS510PP PLUS.
USB or PCI to parallel ports generally will NOT work with our parellel port emulators. Please refer to 3.1.3 Parallel Port Adapters above for more details
4.5 XDS560R USB JTAG Emulator
Here is a list of XDS560R USB JTAG emulator specific notes.
The XDS560R has a variable JTAG Tclock. The user can adjust the clock value to help improve JTAG communication. Slowing the clock can help remedy a marginal or intermittent JTAG connection.
This can be done in the CCS configuration properties:
The SDConfig utility and SDFlash utility do not suppor the XDS560R USB JTAG Emulator
- Launch the Setup CCS utility and Right Click on the configuration/connection name under 'My System' in the CCS System Configuration. Then click Properties
- A new window will appear. In the new window click the tab labeled 'connection properties'.
- Change the "JTAG TCLK Frequency (MHz)" to 'Automatic with user specified limit'.
- Leave the value of 10.368 in the Value field.
- Click finish and Save the configuration. Now launch into CCS.
- If the connection can be made, then things should be fine and you are running. You may now go back into the configuration and increase the TCLK value from 10.368 to try and achieve faster JTAG Communication.
4.6 XDS100 USB JTAG Emulator
A complete and up to date support source for the XDS100 emulator technology may be found on the Texas Instruments XDS100 Wiki web page at XDS100 Wiki
Code Composer Studio Configuration and Spectrum Digital Emulators
5.1 CCS Configurations included with Driver installation
Spectrum Digital emulation driver installations include a number of 'pre-built' configurations for Code Composer Studio. The installation includes configurations for connections to Spectrum Digital EVM, DSK, and eZdsp boards and common, single DSP (or SoC) device scan chains using Spectrum Digital emulators. Please note there may not be a configurtion with the exact naming convention that corresponds to every device. For example, in the screenshot below, there is not a configuration using the XDS510USB with a TMS320F2809, however the F2808 configuration is the closest. The emulation driver used in the F2808 configuration example also supports the F2809, as well as other F28xxx devices from TI. The only change to be considered in the CCS configuration is the GEL file. Modify the configuration to use a GEL file that more closely reflects the DSP or target board being used.
5.2 Custom Board Configurations
Custom configurations may be created using the Setup CCS utility. This is useful when the target has multiple JTAG devices in the JTAG scan chain. Please refer to the Help Menu in the Setup CCS utility for instruction how to create a custom CCS Configuration.
The first step in creating the custom board requires to select the 'connection' that will be used. The 'connection' is the emulator connection that is being used. The 'Available Connections' in the Create Board tab and their associated Spectrum Digital emulators are as follows:
"SD XDS560R USB Emulator" ---> XDS560R USB JTAG Emulator.
"SD510 Emulator" ---> XDS510PP PLUS (parallel port), SPI525 PCI JTAG Emulators, and eZdsp boards using on-board parallel port / JTAG emulation.
"SD510USB Emulator" ---> XDS510USB, XDS510USB PLUS, C2000 XDS510LC USB JTAG Emulators.
"SDDSKUSB Emulator" ---> DSK, eZdsp, and EVM using on-board USB / JTAG emulation connections.
5.3 XDS560R and CCS v4
XDS560R support is included with the CCS v4 installation. However, the XDS560R setup installation is not executed during the current CCS v4 installation. The installation can be run manually. The setup executable is located in the following default install directory: "C:\Program Files\Texas Instruments\ccsv4\common" (your install directory may vary if you did not install in the default directory).
Close the CCS v4 application and run the 'SetupSDXDS560R.exe' file. When it finishes, launch CCS v4 and you will now find the 'Spectrum Digital XDS560R USB Emulator' option populated in the connection list.
Emulator Memory Summary
6.1 Emulator Memory Summary
The Following is a summary of memory types on SD emulators and usage. The XDS510USB and SPI530 emulators contain an emulation processor and memory for storage of the emulation application as well as data storage for the userís target application. At no time would there ever be greater then 64K bytes of a userís application code resident in the emulator at one time.
- 64byte EEPROM for ID storage. Cannot be modified in the field.
Once you unplug the power cable to the unit is lost and the SRAM and SDRAM are gone. Leaving the unit unpowered for 15 minutes would render the SRAM and SDRAM cleaned.
- Serial ROM for FPGA boot. This ROM cannot be modified in the field.
- 8Mbytess SDRAM for F28xx data logging buffer. The SDRAM is not used by any other processor.
XDS510USB and C2000 XDS510LC USB:
Once you unplug the XDS510USB/XDS510LC USB cable, power to the unit is lost and the SRAM and SDRAM contents are gone. Leaving the unit unpowered for 15 minutes would render the SRAM and SDRAM cleaned.
- 8Mbytes External SDRAM (not present on C2000 XDS510LC USB)
- 256K Internal SRAM
- 16K EEPROM
The XDS510USB/XDS510LC includes an EEPROM which is a secure boot loader for the on board DA255 processor. This EEPROM is secured via TI boot loader encryption and NOT modified in the field. SD does not provide any SW or means to wipe this EEPROM in the field. In fact doing so would effectively render the XDS510USB/XDS510LC useless. Once wiped clean (erased) then the unit would have to be returned to factory to have the EEPROM replaced.
On power up, Flash boots to internal SRAM, external SRAM is data storage. Flash is not modified during normal operation but can be upgraded in the field when new firmware is required. Leaving the unit unpowered for 15 minutes would render the SRAM cleaned.
- 56K External SRAM
- 256K Internal SRAM
- 512K Flash
Leaving the host PC unpowered for 15 minutes would render the SDRAM cleaned.
- 8Mbytess SDRAM for F28xx data logging buffer. The SDRAM is not used by any other processor.
- 64bytes EEPROM for PCI enumeration.
When USB cable is unplugged the SDRAM and SRAM loose contents. The EEPROM contains the emulator boot code which is not modified in the field.
- 8Mbytes External SDRAM
- 384K Internal SRAM
- 16K EEPROM
When power is removed the SDRAM and SRAM loose contents. The 8M FLASH contains the emulator boot code. The EEPROM contains emulation configuration settings. The FLASH and EEPROM are not modified in the field under normal operation. There are utilities included in the distribution that do all both the FLASH and EEPROM to be updated in the field but have to be run outside of the debug environment.
- 32Mbytes External SDRAM
- 1M Internal SRAM
- 16K EEPROM
- 8M FLASH
XDS560v2 STM and XDS560v2 Traveler STM JTAG Emulators:
Here are a few options to scrub the memories. The 'Sd560v2Config' utility is needed for the following steps. Sd560v2Config utility is the XDS560v2 configuration utility and is installed with our driver installation (which is run during the CCS v4 and later software installation).:
- 256M DDR2
- 64M NAND
- 32K EEPROM
- 210K On-Chip RAM main cpu
- 8K On-Chip ROM main cpu
- Clean RAM: Power Cycle the emulator pod or us the 'Sd560v2Config' utility to reboot the emulator pod. In Sd560v2Config utility, click the "Dtc Conf" tab and select 'boot' from the COMMAND dropdown menu. Click 'RUN DTC_CONF'.
- Clean NAND: Reload factory firmware image using the Sd560v2Config utility. Click the "Dtc Conf" tab and select 'Update' from the COMMAND dropdown menu. Click 'RUN DTC_CONF'.
- Clean EEPROM: Use the Sd560v2Config Utility. Click the "Dtc Conf" tab and select 'restore' from the COMMAND dropdown menu. Click 'RUN DTC_CONF'.
XDS200, XDS220, and XDS220ISO JTAG Emulators:
The SRAM and SDRAM contents are lost when USB and/or external power input is removed. The SPI Flash contains boot firmware and operation parameters. These can be restored to factory defaults using the xds2xx_conf utility included with the product.
- 8Mbyte SPI Flash for boot, non-volatile
- 8Mbyte SDRAM for emulation execution, volatile
- 128K Bytes SRAM on-chip for emulation execution, volatile