Release Notes for Spectrum Digital C6000/C6400
Emulation Drivers
Spectrum Digital Inc
12502 Exchange Dr.
Suite 440
Stafford, Texas 77477
Web: http://www.spectrumdigital.com/
Ftp: ftp://ftp.spectrumdigital.com/pub/index.htm
Support: mailto:support@spectrumdigital.com
Phone: 281-494-4500
Fax: 281-494-5310
Processors Supported
TMS320C6X0X, TMS320C6X1X, TMS320C64xx (Rev 1.03 and Rev
1.10)
Operating Systems Supported
Windows NT-4 Service pack 6 or higher
Windows 2000 with service pack 2 or higher, service pack 3
recommended for improved USB support
Windows 98-SE
Windows XP, service pack 1 recommended for improved USB
support
Emulators Supported:
XDS510PP, SPI510, SPI515, XDS510PP_PLUS, SPI525, XDS510USB
Code Composer Version Supported:
Release 2.20-2.21
Product Release: 2.20.03
Release Date; Jan-2004
New Features
- Fix
C67xx/C62xx RTDX problem in release 2.20.02
- Update
XDS510USB drivers to improve code step performance
- Update
SDFlash binary to v1.60 for side-by-side support with C2000 tools
- Update
SDConfig to support changes in SDFlash v1.60
History
Release 2.20.02
- Include
XDS510USB driver as part of the install
Release 2.20
Installation
Installation is integrated with CCS. See CCS install instructions or Quick Start
included with your emulator. To install
from the Spectrum Digital ftp site download the latest drivers, unzip drivers
to temp directory and run the self-extracting installation. The XDS510USB .sys and .inf files are on the
root directory of your CD. They will
also be placed in the <INSTALL_DIR>\specdig\xds510usb directory during
the install. When you plug in the
XDS510USB emulator the Windows hardware wizard will attempt to install
low-level Windows drivers. If you have
the install CD let Windows automatically find the drivers. If installing from the ftp site then include
<INSTALL_DIR>\specdig\xds510usb in the search path.
Where To Find Things
Under the installation directory, <INSTALL_DIR> you
can find the following:
- docs\pdf
: Emulator user
guides and schematics.
- docs\releasenotes:
This file and other release
notes.
- drivers: Emulation
drivers, *.dvr files.
- drivers\import: CCS setup configuration
files.
- specdig\SDConfig: Spectrum Digital emulator
configuration utility.
- Specdig\SDFlash
Spectrum Digital flash
programming utility
- Specdig\xds510usb XDS510USB win32 .sys and .inf
file.
SDFlash
The SDFlash utility is included for programming
support. Device specific algorithm and
example files are not included in the base install. You can find these in one of three places for the specific device
you wish to program.
- On
the installation CD in zip format.
- On
the Spectrum Digital web/ftp site.
- On
the Texas Instruments web/ftp site.
Basic instructions on where to unzip the flash files are
documented in the “project_readme.txt” file located in the “specdig\sdflash\myprojects” directory.
SDConfig
In version 2.2x of CCS you have the ability to run
external emulator diagnostics during
“Reset Emulator” or during CC startup in the event of an error. All of the Spectrum Digital CCS
configuration files will point to SDConfig utility. When staring CCS if a serious error occurs you will get a dialog,
which has an additional button for diagnostics. If you select this button then the SDConfig utility will be
launched. At this point you can check
your port settings and test your emulator connection. Once your emulator connection is tested you exit SDConfig and
retry CCS.
Once CCS is launched you also have the same capability via
the “Reset Emulator” command under the Debug menu.
Known Problems
- If
you loose power on your target or emulator CCS will pop up the “Reset
Emulator” dialog box. If you
choose to reset the emulator then CCS will execute outstanding debug
commands that have been queued up as well as clear breakpoints and go
other target house keeping.
However, as power was lost these commands cannot complete and will
return an error code. These will
be reported as errors in the CCS output window. In some cases other dialog boxes may pop up. If this occurs you can select the
cancel button until you get to the “Reconnect Emulator” dialog box. At this point CCS has flushed its
command queue and released the emulator connection. You can reconnect or run the diagnostic
utility. This is a CCS 2.2
shortcoming, which TI is aware of.
See section “Emulator Reset and Multi-Core Issues” for more
details.
- Testing
has shown that CCS 2.2 will stall for long periods of time for no apparent
reason. If this occurs, disable
CodeMaestro under the “Options->Customize” menu. You should only disable CodeMaestro
when you first enter CCS with no debug windows open otherwise CCS will
generally hang and require the CCS task to be killed. If the stall problem goes away then
re-enable CodeMaestro. In most
cases this will clear the problem.
Reset Emulator and Multi-Core Issues
Testing has shown that the Reset Emulator function with
multi-core devices can have unexpected results. This problem is magnified by number of processor on the scan
chain and their current debug state. If
you want to do a Reset Emulator on a multi-core device then the following
sequence is suggested for best results:
- Halt
all processors.
- From
one of the debuggers select the “Reset Emulator”.
- When
you get to the “Reset Emulator” dialog box it is best to uncheck the “Save
Environment” box. Again, testing
has shown that if there is an error during the environment save then
chances of recovery are slim.
Select the “Continue” button.
During the reset process CCS will continue sending commands to the
processors if breakpoints are still in memory. This may generate errors but can be ignored. In general ignore all error message and
select OK or Cancel on any dialogs until you get to the “Reconnect
Emulator” dialog.
- Once
you are at the “Reconnect Emulator” dialog you have several options. It is best to uncheck both the “Restore Environment” and “Reload
Program” buttons. Again, testing
has shown that these two options are primary cause of inability to
recover. For Spectrum Digital
emulators you should have an option to “Run Diagnostic Utility”. This allows you the chance to run
SDConfig from CCS. This capability
can be enabled via cc_setup if not already enabled. At this point you can power cycle your
target and optionally run SDConfig.
When complete, exit SDConfig is executed and select the “Reconnect”
button.
- At
this point CCS should restart each debugger session and you should be back
on-line. If you are using an ARM9
based multi-core device then you may experience the traditional CCS
startup problem. This problem
occurs with the ARM9 device that execute unknown code from un-initialized
memory. Do not panic. At this point the emulator software has
detected this condition and installed a HW reset trap on ARM9. Simply depress the reset button on your
ARM9 target. The ARM9 device
should reset and stop at the reset vector. Now simply select the “Retry” button. CCS has to fail so that the user has a
chance to do the HW reset. This
problem is not likely to occur if ARM9 is running from initialized memory.
- In
general CCS will recover pretty well on multi-core or multi-device systems
if you do not have it save the environment and attempt to restore the
environment. Testing has also
shown that the state of CCS plug-ins following a Reset Emulator sequence
are unknown or undefined. Some
plug-ins recover without side effects, do not. The issues with plug-in recovery are not isolated to
multi-core or multi-device setups.
However the side effects do seem more noticeable to multi-core or
multi-device setups.
Things to avoid:
- Having
your targets running and select Reset Emulator. This seems to create worse case scenarios for CCS due to
queued up debug commands.
- Cycling
target power while target is running.
You should only cycle target power when you have the CCS “Reconnect
Emulator” dialog. At this point
CCS has pretty much gone to a happy state.
- Having
CCS save and restore your environment.
It is best to setup and save your environment while CCS and targets
are in a known good state. In
general CCS will restore a previous environment with higher level of
success then one that is saved during a Reset Emulator sequence. Generally having CCS restore a minimal
amount of debug state is best. You
can always reload your program and or state via GEL functions and CCS
commands. You have lot more
control and better success rate if you control the restore. If CCS encounters an error during
restore on one processor, say ARM9, then restoring the DSP state is
totally unpredictable. CCS will
attempt to restore state to ALL processors independent of errors on other
processors. This can lead to
significant instability in multi-core devices that require the MCU to
pre-initialize the DSP before CCS connects.
- Attempting
a Reset Emulator operation with CCS or 3rd party plug-ins
active. The exact behavior of CCS is currently unknown in this scenario
especially with 3rd party plug-ins. In many cases BIOS plug-ins recover properly while the
profiler plug-in does not.
Spectrum Digital has requested that TI clearly specify the behavior
of plug-ins for multi-core recovery.
- Do NOT
PANIC if you see lots of error message during a Reset Emulator
sequence. Just cycle through these errors until you get to the “Reconnect
Emulator” dialog. CCS is just
clearing queued up debug commands.