Embedded Debuggers

Nov. 5, 2001
Debugger ...
DebuggerCrossView ProuVision2Multi 2000 CompanyAltium Ltd.Keil Software Inc.Green Hills Software Inc.Web sitewww.tasking.comwww.keil.comwww.ghs.comProcessors8051, 251, C166/XC166, ST10/Super10, MIPS, 68k, PowerPC, XA, SLE88, M16C, DSP56k, TriCore, Crystal CS48xx, StarCore, CARMEL, MediaStreamAll 8051, 251, and C16x/ST10PowerPC, MIPS, ARM, x86/Pentium, SPARC, 68K, V800, ColdFire, SH, StarCore, MCORE, i960, ST100, TriCore, LexraInterfacesEthernet, RS-232, CANRS-232, JTAG, OCDSEthernet, RS-232, USB, JTAG, BDM, OnCE, EJTAGBDM/JTAGPC parallel port to on-board
JTAG I/F, Abatron BDI2000, Macraigor
Infineon, Cygnal, TriscendGreen Hills Probe, Agilent, VisionProbe, EPI Jeeni, MultiICEHardware tracingSTMicroelectronics ST10 emulatornoneAgilentICEHitex dProbe, Signum, STMicroelectronics ST10 Ciebo, Hitex, PhytonAgilent, TektronixSimulatoryesyesyesLanguagesC, C++, AssemblyC, Assembly, PLMC, C++, EC++, Ada95, FortranRTOSnumerousRTX51, RTX51 Tiny, RTX166, RTX166 TinyIntegrity, ThreadX, OSE, VxWorks, ChorusOS, NucleusPlus, RTXCHost OSWindows95/98/ME/NT/2000, PC/Linux, Sun/Solaris, HP-UXWindows 98/NT/2000Windows, Solaris, LinuxOtherMultiCore Debug System Open AGSI/AGDI architectureMultiprocessor and multicore supportuVision2 Keil's uVision2's strength lies in the microcontroller arena. It supports the 8051 and C16x/ST10 architectures. Unlike debuggers designed for higher-end systems, uVision2 works equally well on targets that lack a real-time operating system (RTOS) in addition to operating with microcontroller RTOSs like Keil's own RTX51.

The debugger supports target-based debugging using a resident monitor program. UVision2 also incorporates a simulator that supports most built-in microcontroller-based peripherals. Third-party emulators are supported, such as Triscend's Fastchip development environment, which utilizes Macraigor's JTAG emulation probes.

Debugging can be enhanced using a C macro language. Dual memory and watchpoint windows simplify system analysis.

The company integrates performance-analysis tools with the uVision2 debugger. The debugger additionally works with Keil's code-coverage support. And, Keil keeps the development tools simple by steering clear of little-used features like integrated multiprocessor debugging.

CrossView Pro The Tasking CrossView Pro debugger speeds debugging by helping identify elusive as well as simple bugs, and by determing application bottlenecks. The same user interface supports a wide range of 8-, 16-, and 32-bit processors, and DSPs. Tasking supports multiprocessor and multicore debugging by using its MultiCore Debug System (MDS). The MDS provides a single interface to synchronize target execution based on a user-defined debug topology. Using it, developers can specify and view the interactions between the multiple cores/processors. It also supports easy integration of third-party products.

Multiple and customizable viewing windows let developers view data when, where, and how they need it. Probe points are used to set breakpoints based on a sequence of events for nonintrusive debugging. Profiling identifies bottlenecks. Code coverage tracks all memory access so developers can determine if there are any areas of unexecuted code. Graphical data analysis reduces large sets of input and output data streams into visual diagrams so developers can quickly detect gross errors.

Multi 2000 The heart of Green Hills Software's Multi 2000 integrated development environment (IDE) is the Multi source-level debugger suitable for single-processor, multiprocessor, and multicore debugging even in a heterogeneous processor environment. The debugger is RTOS-aware and supports process- and system-level debugging, suiting it for developing large embedded systems.

Version 3.5 features Project Wizard, which simplifies the getting-started process out-of-the-box. Multi 3.5 also introduces a Target Connection Wizard that makes it easy to define the debug connection between the host debugger and embedded target system. Through the Wizard, users can select the target processor, the type of target connection (i.e., simulator, ICE, emulation probe, ROM monitor, on-chip debug), and the physical connection media (Ethernet, USB, or RS-232C). Different connections can be used with multiprocessors. The Multi debugger also features incremental debug capability and a graphical memory viewer.

DebuggerXRAYXDBTornado IICompanyMentor Graphics Corp.Intel Corp.Wind River Systems Inc.Web sitewww.mentorgraphics.comwww.cad-ul.comwww.windriver.comProcessorsMIPS, ARM, PowerPC, 68K, ColdFirex86, PentiumPowerPC, MIPS, ARM, x86/Pentium, CPU 32, 68K, ColdFire, Sun SPARC, Intel i960InterfacesEthernet, RS-232, ParallelEthernet, RS-232Ethernet, RS-232, CustomBDM/JTAGMacraigor - Raven, Wiggler; EPI, MAJIC, MAJIC+, JEENI, ARM, MultiICEOCDemon, CodeTAP, HP E3491AAgilent, VisionProbe, Jeeni, MultiICEHardware tracingAgilent Trace Port Analyzer; EPI, MAJIC+noneAgilentICEsee BDM/JTAG and TraceDProbeP5, SuperTAPAgilent, TektronixSimulatoryesyesyesLanguagesC, C++, AssemblyC, C++, EC++C, C++, Assembly, JavaRTOSVRTX, OSEATI NucleusPlus, pRISM+, pSOS, Linux, RTLinux, RMOS, US SoftwareSuperTask!VxWorks, VxWorks AEHost OSWindows95/98/ME/NT/2000, Sun SolarisWindows95/98/ME/NT/2000, Sun SolarisWindows95/98/ME/NT/2000, UnixOthermultiprocessor support, external hardware triggerCodeCoverage, PostMortemsupports VxWorks HA Framework, CodeTEST code coverage, CodeTEST dynamic memory monitorXRAY Deeply embedded system-on-a-chip (SoC) 32- and 64-bit applications are prime candidates for Mentor Graphics' XRAY debugger. It not only provides embedded debugging and simulator support, but also links to hardware and software coverification systems used to design SoCs.

XRAY handles complex, multicore, and multiprocessor embedded system designs. The Connection Manager lets different connections be used between XRAY and each processor. For example, one SoC-based processor may utilize a JTAG interface while another utilizes a serial link and a ROM monitor. Complex breakpoints can be used across processors. RTOS-aware support lets background watchdog tasks continue running while XRAY halts and examines another task.

XRAY has a C-like macro language for customized debugging sessions. Macros can be used with breakpoints. They can also be included in script files. In addition, debug sessions can be recorded. A session record, or journal, can be played back later, making it easier to return to a prior state under many circumstances.

Tornado II VxWorks developers can use other development tools, although most turn to Wind River's own Tornado II IDE, including the Tornado II debugger. Tornado II supports the range of VxWorks operating systems, including VxWorks AE and the VxWorks High Availability (HA) Framework.

VxWorks has found a home in small and large embedded projects. Tornado II works well in team development environments with support for popular source-code control systems, like ClearCase, SCCS, RCS, PVCS, and MS Visual SourceSafe.

Tornado II comes with its own debugging tools, like WindView, a time trace tool for VxWorks tasks. Also, it comes integrated with VxSim-Lite simulator. The full VxSim is an option that provides more extensive simulation support. Tornado II is accompanied by its own Tool Control Language (Tcl). This provides front-end customization for the debugger and IDE. And, tight integration with VxWorks lets Wind River include various wizards in Tornado II that speed configuration and project creation.

XDB Embedded systems increasingly house more Intel x86-based processors. CAD-UL's XDB debugger helps get applications for these embedded systems running.

XDB incorporates a number of useful and sometimes unique features, such as the CodeCoverage and XDB PostMortem modules. CodeCoverage support requires no source-code instrumentation. It also supports profiling.

Typically, an XDB ROM monitor is employed on the target machine. After adding the XDB PostMortem module, developers can check out recorded information after a system crash. Moreover, XDB PostMortem can e-mail the information if the system is properly equipped with e-mail support.

The XDB simulator supports device simulation. Plus, the debugger handles Embedded C++ (EC++)-based tools in addition to C, C++, and Assembly. RTOS-aware, XDB supports a wide range of RTOS products.

Third-party support includes the Universal Debug Interface (UDI). It lets developers create application- or tool-specific modules that work with XDB. Also, it permits GUI customization.

DebuggerSeeCodeCode Composer StudioCodeWarriorCompanyMetaWare Inc.Texas InstrumentsMetrowerks Inc.Web sitewww.metaware.comwww.ti.comwww.metrowerks.comProcessorsARC, ARM, StrongARM, MIPS, PowerPC, and 568xxTI DSPs, picoJavaPowerPC, MIPS, ARM, x86/Pentium, NEC V8xx, 68K, ColdFire, ST7, HCxx, StarCore, MCORE, Motorola DSPInterfacesEthernet, RS-232RS-232, JTAGEthernet, RS-232, USBBDM/JTAGAgilent, Abatron, EPI, Macraigor Systems, and othersyesyesHardware tracingyesnoneyesICEyesyesyesSimulatoryesyesyesLanguagesC, C++, AssemblyC, C++, AssemblyJava, C, C++, EC++, AssemblyRTOSThreadX, Nucleus, MQXDSP/BIOSATI NucleusPlus, Linux, OSEK turbo, QNX Neutrino, RTCX, Precise/MQXHost OSWindows95/98/ME/NT/2000Windows 98/NT/2000, Sun SolarisWindows 95/98/ME/NT/2000OtherMultiprocessor supportMultiprocessor support, version control system, RTDX supportcode coverage, hierarchical profiler, multiprocessor support, version-control systemSeeCode Embedded and system-on-a-chip (SoC) software developers can utilize MetaWare's SeeCode to debug up to 256 processors in one debug session. This feature is provided by SeeCode's Coordinated Multi-Processor Debugging (CMD) facility.

SeeCode's object-oriented design makes CMD possible, and allows simulation of multiple peripherals by SeeCode's simulator. SeeCode can be used with a mix of simulated and real hardware.

The simulator has a number of useful enhancements unavailable on real hardware. One is the Instruction History Trace facility. It's possible to save multiple system states using the simulator or real hardware. Any display window can also be locked down to compare before and after states. SeeCode also supports processor-specific features, like ARC extensions from ARC.

SeeCode's Java-based interface is extensible. Just write some Java classes and add them to SeeCode. Also, a command-line interface can be used with SeeCode. Multiple interfaces can be employed in a multiprocessor debugging environment.

CodeWarrior The breadth of CodeWarrior's support makes it ideal for heterogeneous development environments that incorporate platforms ranging from 8- and 16-bit devices to Java-based applications running on 32-bit processors. CodeWarrior also is integrated with a number of RTOSs such as Linux, Precise Software Technologies' Precise/MQX, and QNX Neutrino.

The CodeWarrior debugger is a seamless component of the CodeWarrior IDE. The IDE supports the popular embedded development languages, including Java and C++. Plus, it supports Embedded C++, a compact subset of C++ designed for embedded environments. The compilers are part of CodeWarrior. Using its own scripting language, CodeWarrior can be extended. And, CodeWarrior supports Metrowerks' hierarchical profiler and code-coverage tools. The hierarchical profiler has a GUI that highlights hotspots and bottlenecks in source code. CodeWarrior can be integrated with version-control systems too for team-oriented source-code management.

Code Composer Studio Concentrating on Texas Instruments' DSP development? Then TI's Code Composer Studio is an obvious choice. It provides a complete IDE, including a debugger tailored for DSP application development. It also can be used with other development tools in mixed DSP/host processor environments.

TI's DSPs support the high-speed Real Time Data eXchange (RTDX) between a host processor and the DSP. Code Composer understands this interface and can track information that's exchanged. RTDX is used in conjunction with DSP/BIOS, TI's real-time software kernel. Code Composer also is integrated with DSP/BIOS.

Code Composer's simulator supports both DSP/BIOS and RTDX, letting application development proceed without the need for hardware. A number of real-time analysis and data-visualization tools are included. For example, one data-visualization tool presents information in memory as a graph. Code Composer's third party interface supports extension to this development environment. Code Composer also supports third-party compilers, including UML and VAB.

DebuggerHard Hat Linux GDBZAPChipView For WindowsCompanyMonta Vista Inc.Cosmic SoftwareChipTools Inc.Web sitewww.mvista.comwww.cosmicsoftware.comwww.chiptools.comProcessorsMIPS, NEC, PMC-Sierra, PowerPC, ARM, StrongARM, Hitachi SH, x86Motorola 6809, 68HC0x, 68HC1x,68300, 680xx, STMicroelectronics ST7Intel 8x51-compatible and derivatives, Intel 80196/80296InterfacesEthernet, RS-232RS-232, BDMRS-232BDM/JTAGEmbedded ICE JTAG, Abatron BDI-2000, and othersyesP&E Microcomputer Systems ICD BDMHardware tracingARM ETM-9 and othersnonenoneICEEmbedded ICE JTAGHDS2 (for ST7)Ashling, Hitex, Isystem, Lauterbach, and NohauSimulatoryesyesyesLanguagesC, C++, Java, Assembly, and othersC, AssemblyC, PLM, AssemblyRTOSLinuxnoneSoftware Development Systems (SDS), API-compatible RTOSsHost OSLinux, Windows 98/NT/2000Windows 98/NT/2000Windows 3.x/95/98/NT/2000, Sun SPARC, HP9000OtherLinux Trace Tool, multiprocessor debugging, source-code control systemcode coverage, performance analysis profiling, code coverageZAP Cosmic Software concentrates on the Motorola microcontroller and processor arena supporting the Motorola 6809, 68HCxx, 68300, and 680xx architectures. A version also is available for the STMicroelectronics ST7 microcontroller. The ZAP debugger is an RTOS-aware product that supports the Software Development Systems (SDS) API for RTOS/debugger interaction.

The ZAP Simulator incorporates an interrupt configuration system to simulate microcontroller interrupts. Cycle level timing is available for tracking critical performance paths. Session record and playback works with the simulator and on real hardware.

Code coverage and performance analysis tools provide a by-file or function overview. Performance information can be displayed in a graphical format. The Chronogram feature provides a timeline of function calls. It presents information in a fashion similar to the Linux Trace Tool, but at a lower level.

ZAP and other Cosmic development tools such as C compilers can be integrated with third-party products like Premia's CodeWright Windows editor and project manager. Cosmic also has its own development environment called IDEA.

Hard Hat Linux GDB Monta Vista's Hard Hat Linux development environment utilizes the standard Linux gnu debugger (GDB) and data display debugger (DDD) and extends these with support for in-circuit emulation, JTAG, and BDM probes like Abatron's BDI 2000.

Monta Vista supports self-hosted and cross-platform debugging using GDB and DDD, which both support serial and Ethernet connections. Cross-platform debugging is handled through the gdbserver that runs on the host.

Hard Hat Linux also comes with the open-source Linux Trace Tool (LTT). It works with x86 and PowerPC hosts, and provides kernel-level tracing of Linux tasks. LTT gives developers a graphical display for analyzing processor utilization and resource allocation.

Hard Hat Linux's Java support is provided by IBM's VisualAge Micro Edition (VAME) and J9 Java virtual machine (JVM). VAME incorporates its own Java debugger, which supports the standard Java remote debug protocol. The Hard Hat GUI-based Target Configuration Tool (TCT) permits debug-kernel building. It also incorporates selected services like the J9 JVM and the Linux file system.

ChipView For Windows ChipTools concentrates on the microcontroller arena supporting the Intel 8x51 architecture (ChipView-x51), as well as 80196 and 80296 processors (ChipView-x96). The ChipView for Windows debugger is an RTOS-aware product that supports the Software Development Systems (SDS) application programming interface (API) for RTOS/debugger interaction.

The ChipView-x96 simulator supports 16- and 24-bit opcodes. Interrupts can be generated using the Virtual Hardware Setup interface.

The ChipView-x51 simulator provides more extensive services. Off-chip peripherals can be implemented as memory-mapped and simulated via I/O files or by custom ActiveX controls. The controls are connected to ChipView's virtual peripheral interface. Elapsed cycle times are continuously measured, allowing tests and timing of interrupt-driven routines. And, the ChipView-x51 simulator operates at near real-time speeds. Also, ChipView-x51 operates with most popular in-circuit emulators (ICEs). User-interface scripting is supported using VBScript and JScript.

Sponsored Recommendations

What are the Important Considerations when Assessing Cobot Safety?

April 16, 2024
A review of the requirements of ISO/TS 15066 and how they fit in with ISO 10218-1 and 10218-2 a consideration the complexities of collaboration.

Wire & Cable Cutting Digi-Spool® Service

April 16, 2024
Explore DigiKey’s Digi-Spool® professional cutting service for efficient and precise wire and cable management. Custom-cut to your exact specifications for a variety of cable ...

DigiKey Factory Tomorrow Season 3: Sustainable Manufacturing

April 16, 2024
Industry 4.0 is helping manufacturers develop and integrate technologies such as AI, edge computing and connectivity for the factories of tomorrow. Learn more at DigiKey today...

Connectivity – The Backbone of Sustainable Automation

April 16, 2024
Advanced interfaces for signals, data, and electrical power are essential. They help save resources and costs when networking production equipment.


To join the conversation, and become an exclusive member of Electronic Design, create an account today!