IDE integrates multi-core debug, visualisation and data science/analytics suite
Technology from partners Imperas and Percepio is integrated into the UltraDevelop 2 integrated development environment (IDE) from UltraSoC.
The IDE combines debug, run control, and performance tuning with visualisation and data science capabilities for system-on-chip (SoC) development teams. The UltraDevelop tools suite delivers a holistic, system-level approach to SoC development and debug, allowing engineers to view and analyse the interlinked behaviour of hardware, firmware and software at any level of abstraction – and to interactively switch between views and tools.
UltraSoC’s data science extensions offer advanced capabilities such as anomaly detection, heat mapping and root cause analysis. Visualisation capabilities, based on Percepio’s Tracealyzer, provide engineers with an integrated view of the operation of hardware and high-level software execution. Imperas’ MPD debugger supports multi-core, multi-threaded platforms, including devices that combine cores based on different CPU architectures into complex heterogeneous systems.
Based on the industry-standard Eclipse platform, UltraDevelop 2 provides an integrated view that encompasses single step and breakpoint code execution status for multiple processors, instruction trace and real-time, protocol aware monitoring of hardware structures within the SoC. Engineers can simultaneously view the behaviour of hardware structures such as memory controllers and interconnects and the execution of software, across different cores, with different architectures. Designers working on simpler single-core debug tasks can access the same integrated debug capabilities, while using the open-source GDB debugger.
SoCs with heterogeneous multi-core are now commonplace, but integration and validation have not kept up with simulation and emulation. Rich Wawrzyniak, principal analyst for ASIC & SoC at Semico Research, said that development teams are crying out for technologies that help them manage complexity, which means the capability to view designs in real-time, interactively, and in detail. “Tools that can view the SoC as a whole, not just in vendor silos, can have significant impact on engineering productivity and, in turn, on time-to-market and engineering cost,” he said.
UltraDevelop 2 includes a library of debug adapters to enable real-time run control of more than 20 processor core architectures from multiple vendors, including Arm, MIPS and RISC-V (as implemented by Andes, Esperanto and SiFive). Within the unified Eclipse environment, teams can choose to deploy third-party tools from existing UltraSoC partners such as Lauterbach, with support for the underlying UltraSoC hardware capabilities or they can opt for a pre-integrated configuration supplied by UltraSoC.
A suite of modules facilitates detailed big data analysis of on-chip behaviour, including anomaly detection, heat mapping and root cause analysis. These include example applications and configurations for functional safety (for example the stringent verification and validation mandated by ISO26262 and other standards); cybersecurity (detecting vulnerabilities or unwanted interactions); and performance optimization (for example identifying inefficiencies in multi-threading software stacks, and hard-to-find states that lead to “long-tail” bugs in high-performance computing environments).
UltraDevelop 2 users can extend these capabilities, customize the framework and configure test systems via a range of scripted (Python) modules that give direct access to the data provided by UltraSoC on-chip monitors. These also provide configuration options and higher-level functionality such as terminal services.
The inclusion of Percepio’s Tracealyzer within UltraDevelop 2 brings powerful data analytics and visualisation capabilities. It ‘understands’ the meaning of high-level events within software or an RTOS, connecting related events and views, and complementing the information gathered via UltraSoC’s hardware monitors with an intuitive, visual perspective on system level operation. This integrates a very fast and compact database, allowing trace files of terabytes to be efficiently displayed, filtered or analysed.
UltraDevelop 2 will be available to qualified customers in Q1 2019, with general availability shortly after.