Following deals with Imperas and Percepio, UltraSoC has released an integrated development environment (IDE) aimed at debug, run control, performance tuning and runtime analytics during SoC development.
Based on the Eclipse platform, UltraDevelop 2 is intended to provide a way to visualize what is happening on complex multicore SoCs using data gathered by UltraSoC’s on-chip monitoring infrastructure. In principle, it will let engineers view and analyze the interlinked behavior of hardware, firmware, and software.
The company has developed a number of data-science extensions, providing capabilities such as anomaly detection, heat mapping and root-cause analysis. Visualization capabilities based on Percepio’s Tracealyzer provide engineers with an integrated view of the operation of hardware and high-level software execution. The inclusion of Imperas’ MPD debugger enables support for today’s multi-core, multi-threaded platforms, including devices that combine cores based on different CPU architectures into complex heterogeneous systems.
As well as providing traditional debug control over processor cores, which can have different architectures, the IDE provides protocol aware monitoring of hardware structures within the SoC. Engineers can view the behavior of hardware structures such as memory controllers and interconnects.
Rich Wawrzyniak, principal analyst for ASIC and SoC at Semico Research, said: “While simulation and emulation have progressed, integration and validation have not. Development teams are crying out for technologies that help them manage that complexity, and that means giving them the capability to view their designs in real-time, interactively, and at just the level of detail they require. 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.”
The tools include a library of debug adapters to enable real-time run control of more than 20 processor core architectures from multiple vendors, including Arm and MIPS as well as the RISC-V cores developed by Andes, Esperanto, and SiFive. Within the Eclipse environment, teams can choose to deploy third-party tools from existing UltraSoC partners such as Lauterbach.
UltraDevelop 2 users can extend these capabilities, customize the framework and configure test systems via a range of modules scripted using Python. The inclusion of Percepio’s Tracealyzer within UltraDevelop 2 brings data-analytics and visualization capabilities to the UltraDevelop suite. Integrating Imperas’ MPD lets UltraDevelop 2 users simultaneously debug multiple application processors in a platform. Peripherals can be debugged at the same time as the application, letting the developer see the peripherals operating in the context of the platform and the application code. The integration is part of a wide-ranging partnership between the two companies, announced in June 2018, that will deliver further combinations of embedded analytics and virtual platform technologies.
For the IDE, UltraSoC has used the OpenOCD project and added custom extensions to provide debug support through its on-chip monitoring and analytics hardware. The results are being released back to the open source community for further development.
UltraDevelop 2 will be available to qualified customers in Q1 2019, with general availability shortly afterwards.