At ESC DESIGN West this week, Mentor Graphics Corp. took a major step toward erasing any remaining barriers between embedded SoC hardware and software development as well made it much easier to do both hardware and software performance analysis using a virtual emulation environment.
The platform by which the company expects to achieve this integration is the company’s new Embedded Sourcery CodeBench Virtual Edition tool suite, a native software environment for developing embedded systems pre- and post-silicon.
Now, said Kamran Shah, embedded software division director of marketing, software developers can remain in their core development environment and develop, debug, and optimize their complete software stack on virtual prototypes and emulation platforms, before and after first silicon.
“Software development and hardware development are deeply intertwined, yet intensely unique disciplines,” he said. While the tools and SystemC, TLM and electronic system level (ESL) hardware/software modeling environments created by EDA companies have gone a long way towards removing the barrier, that is not enough.
“Until now, asking a software designer to use a hardware design tool was like asking a plumber to install your sink with an electrician’s wire cutters,” said Shah.
In the development of the Sourcery CodeBench Virtual Edition , Mentor engineers, he said, worked hard to create a true native software environment that deeply leverages the company’s hardware design tool technology.
The starting point in this new environment, said Shah, is the Sourcery CodeBench development toolchain and integrated development environment (IDE) for embedded Linux development, a defacto standard reference operating system (OS) on all SoCs.
To this, the Sourcery CodeBench Virtual Edition incorporates the advanced pre-silicon technology available from Mentor’s hardware design tool flow deeply into the native software environment.
“This yields a significant time-to-market advantage for software development teams by eliminating the valuable time and effort spent learning unfamiliar traditional hardware design tools,” he said.
After acquiring CodeSourcery in 2010, Shah said the company modified it by embeddeding hardware intelligence directly into the native environment. By comparison, he said, the traditional EDA industry approach has seen limited success by attempting to modify hardware tools for use by software developers.
As powerful as it is in terms of lowering the barriers to hardware development to software designers, it is CodeBench VE’s ability to provide performance and power analysis early in the development of both hardware and software as well as a view into how the interaction between the two, long before final silicon is available.
This is done, he said, my making it possible to use the same native software development environment downstream in the design flow alongside virtual platform representations provided by systems companies and OEMs to design and develop embedded systems ahead of silicon availability. “Embedded developers can simply transition to actual hardware with the same Sourcery CodeBench native development environment,” he said.
By bringing software integration into the early pre-silicon phases, said Shah, not only is development time considerably shortened, but the early intervention helps ensure hardware is tuned and optimized to the end-application, and that the software is ported and integrated efficiently.
“Such deep visibility enables postsilicon bug tracking that is impossible to identify with physical boards,” he said, made possible by such capabilities as:
1 – Non-intrusive visibility and tracing for memory-mapped registers and deep hardware states, including CPU internals, memories, cache and fetch sequences;
2 – Tightly controlled system execution, such as stopping all system clocks instantly, and cross debugging hardware and software execution;
3 – Trace and debug of complex hardware/software interactions deterministically with the ability to set breakpoints on any software or hardware object wwSimulation APIs with semi-hosting and direct access to the target file system for host-target file transfers;
4 – API and backdoor access for testability and non-intrusive software code injection.
Included in the new offering is the Sourcery Analyzer tool to quickly visualize and analyze system data, said Shah, which provides application and kernel level insight and supports a broad array of time-stamped data formats such as the Linux Trace Toolkit (LTTng).
“By visually showing how processor cores and system resources are being used,” he said, “embedded developers can quickly identify performance bottlenecks in order to debug or decode these problems.
“By applying trace points anywhere in the application, developers can visually identify the critical section of software code impacting system performance.”
The Sourcery CodeBench Virtual Edition product is integrated with Mentor’s Vista platform for early abstract functional models of the hardware even before the SoC design is implemented at the register transfer level (RTL). The Vista platform supports industry standard SystemC/TLM 2.0 virtual prototypes and QEMU machine emulators.
The new Mentor Embedded Sourcery CodeBench Virtual Edition is available now for evaluation. To learn more developers can register on line for a webinar.