|
Introduction
CodeSymphony is an
Eclipse-based integrated development environment for
PowerPC embedded hardware and software systems.
Combining Eclipse technology and the pre-built GNU C/C++
cross toolchain for Linux and Windows and GDB debugger
with Corelis high-speed
JTAG controllers, CodeSymphony
offers a full development platform to accelerate
development of software and applications for embedded
systems.
Eclipse IDE
Eclipse is a Java™-based,
Integrated Development Environment (IDE), a
vendor-neutral development platform, and application
framework for building software. The Eclipse platform
is exceptionally flexible because of its open,
extensible architecture that is based on plug-ins. With
this IDE, CodeSymphony provides for complete management
of your project using simple graphical tools and
wizards.
CodeSymphony also provides
code editing and build tools. The text editor uses
color coding to distinguish between comments, variable
types and code. The editor also has context sensitive
help so you immediately know what variables are required
in a function call as well as completion assistance in
writing your function calls. The text editor is
available in both the code generation and debug
perspective. The user can modify code while debugging,
and the program can be recompiled and debugged again,
all within CodeSymphony greatly reducing development
time.
GDB JTAG Debugger
CodeSymphony is available
with a GDBserver for using the LAN interface to the
embedded processor. For increased performance and
non-intrusive access to the processor CodeSymphony’s GDB
is also available with a high performance JTAG
controller. Corelis’ innovative JTAG emulator solution
provides a real-time, non-intrusive development and
debug environment for embedded processors using their
enhanced industry standard IEEE-1149.1 (JTAG)
boundary-scan test port. This interface allows for a
simple, yet robust, interface to the target processor.
The processors’ on-chip
boundary-scan logic allows complete, non-intrusive CPU
resource access through the JTAG port, even when the
processor ‘hangs’ or otherwise runs out of control. The
emulator/debugger communicates with the target exclusive
of serial ports or other peripheral resources.
Corelis has developed an
Eclipse plug-in that will automate the debugging process
within CodeSymphony. The plug-in automatically converts
the GDB commands to JTAG commands to allow GDB to
connect to the target. The developer can use the
CodeSymphony GUI to step, run, halt, and perform other
actions to move through the code.
CodeSymphony’s debugging
perspective allows the developer to view source code,
assembly code, variables (both local and global),
memory, and registers all at the same time. It also
provides full source-correlated debugging, allowing the
developer to display the source for a particular line of
assembly code and vice versa.
Supported features in
CodeSymphony are:
-
Start and Stop program execution
-
Set breakpoints in RAM
-
Single-step source or assembly code
-
Single-step into or over function calls
-
Single-step out of function calls
-
Display and modify processor registers
-
Display, modify, and fill memory
-
Display and modify all variables
-
Display current function call stack
-
"Type-over" modification in register, memory, and
variable views, where the user can simply type in a new
value over the old one
CodeSymphony can display
three types of variables: Local (to a function), Static
(to a file) and Global. Memory locations can be
displayed in hex or decimal at any
address. All variables are displayed with their type
(char, int, unsigned long, etc), and all arrays and
structures can be broken down into individual elements. |
|

CodeSymphony Eclipse Platform
(Click image to view full size image)

CodeSymphony Key Features

CodeSymphony Debugger Perspective
(Click image to view full size image)
|