- A fully functional C and C++ Integrated Development
- Environment based on the popular Eclipse IDE platform.
- Support for project creation and managed build for all MIPS toolchains and standard Makefile builds including project templates
- Source navigation, various source knowledge tools, include browser, macro definition browser, etc…
- Code editor with syntax highlighting, folding and hyperlink navigation, source code refactoring and code generation
- Simultaneous multiple debug probe connections to multi-SoC, multi-core, multi-VPE with multi-OS task support.
- OS-aware debug support for Linux®, FreeRTOS, Nucleus™, ThreadX®, RIOT, Zephyr™, MyNewt and MEOS™.
- Ultra-fast debugging performance using intelligent, low latency probes e.g. < 1 sec single step even with multiple connections, VPEs, TCs & threads. > 1 MByte/sec binary load.
- Configurable, modern Eclipse based GUI.
- Extensive library of plugins to support version control, testing, continuous integration, and other productivity tools.
- Run external tools and user scripts at a key press.
- Free to use.
- Powerful system for all members of the SoC and application development team.
- Single environment for the entire development cycle.
- Mature solutions that minimize design risk and reduce time to market.
- Based on the popular Eclipse IDE platform and CDT development and debug tools.
- IP evaluation.
- SoC design.
- SoC bring-up.
- Application development.
- Code optimization.
The Codescape for Eclipse Development System
Codescape for Eclipse is an Integrated Development environment built on the popular Eclipse IDE platform that facilitates all stages of development alongside a low-level command-line console, built-in scripting, intelligent debug probes, emulators and simulators. For pre-hardware application development, Codescape for Eclipse works with the MIPS Instruction Accurate Simulator (IASim) and RTL Simulators. For silicon bring-up, application development, and testing on real hardware, Codescape for Eclipse can connect to MIPS’s range of debug probes supporting JTAG, cJTAG and EJTAG equipped targets or use virtual connections to Emulators or Cloud FPGA. Host connection via USB or Ethernet enables remote debugging across networks.
How the components fit together…
The Codescape for Eclipse User Interface
Codescape for Eclipse is driven from its own powerful Eclipse based GUI, running on Windows and Linux hosts. For fast, efficient debugging, it provides a host of useful debug views and features such as editable memory, drag and drop between views and real-time OS-aware debugging. For more advanced product development, Codescape for Eclipse has many state-of-the-art features such as a fully-annotated memory mapped peripheral inspector, real-time event tracing and support for multi-SoC, multi-core, multi-VPE and multi-OS task development and debugging.
What Can Codescape for Eclipse Debug ?
Codescape for Eclipse uses the powerful Codescape debug backend to support simultaneous multiple connections to multiple, heterogeneous, multi-core SoCs with hardware threads, virtual processors (VPEs), hardware thread contexts (TCs), and multiple software threads.
The MIPS Toolkit and Codescape for Eclipse provide support for semi-hosting functions from a target via a built-in API in the toolkit. Codescape for Eclipse allows you to set a root directory for semi-hosting operations so that programs running on a target can use relative address paths for file operations. No additional libraries or function calls are required. Semi-hosting operations supported include file operations such as fopen, fwrite, fread and fclose and outputs such as stdout, stderr and printf.
Debug Views & Editors
Codescape for Eclipse provides a host of useful debugging views to display data and control debugger features. Views can be pinned to specific threads, or the current thread, can be docked, floating or stacked in tabbed groups. Data can be dragged between regions and targets using intelligent, contextual drag-and-drop.
|Source Editor||Fully featured syntax highlighted editor.|
|Disassembly Viewer||Can show interleaved source and disassembly.|
|Register Viewer||A basic register viewer.|
|Callstack||Can unwind through interrupt handlers. Uses code reading and debug info.|
|Memory||Shows all types of memory (RAM, DSP, CORE etc.) in many different formats.|
|Breakpoint||Shows breakpoint state for all, current, or specific threads.|
|Triggers||Created simple or complex hardware triggers based on expressions.|
|Variables||Automatically populated with variables in the current scope.|
|Expressions||Watch and edit values of variables or complex expressions.|
|TargetRegister Editor||Populated with the core and peripheral registers. Bit fields shown/edited as mnemonics.|
|ICache||Displays the ICache in a raw or decoded format.|
|DCache||Displays the DCache in a raw or decoded format.|
|Profiler||Low impact PC capture.|
|MIPS Realtime Trace||Setup / Display MIPS iFlow/PD Trace data.|
The Codescape for Eclipse project wizard makes it very easy to create and configure a project in a step-by-step manner including selecting a MIPS toolchain, selecting a source code example (or none), selecting a multilib to match your target (as shown below), and optionally setting up a debug configuration for the project.
Eclipse CDT based C Development & Debugging
Codescape for Eclipse brings the power of the popular Eclipse CDT development environment to MIPS: Code browsing, Build management, SCM integration, Powerful debugging and Bug Track integration. Explore the rich third-party ecosystem of Eclipse plugins to bring even more power to your development environment.
Target Register Editor
The Target Register Editor gives a complete view into the CP0, GPR, and all peripheral registers on the target core. Register data is captured in an text file based XML database that is easily editable and extendable so you can add additional peripheral memory mapped registers. Register and field descriptions are hyper-linked so you can easily navigate between related resources.
The statistical profiler provides a non-invasive sample based profiling service to help identify hot spots in your code at module, function, line, and address resolutions. Multiple samplings can be compared to judge performance differences between different runs.
The Hardware Triggers view provides advanced control over instruction and data trigger resources.
Control and read performance counters on the target
View multi-core and multi-vp trace with interleaved or separate views for each core or vp with advanced filtering capabilities.
Codescape for Eclipse is free to use and is provided as part of the Codescape MIPS SDK.
For the range of MIPS debugger probes please click here.