Debugging a helix virtualisation platform via JTAG access
Manufacturer of micro-processor development tools, Lauterbach, has announced the support of Wind River Helix Virtualisation Platform (Helix Platform) with its TRACE32 JTAG debug tools. Helix Platform is an edge compute software foundation that runs multiple operating systems and consolidates mixed-criticality applications in a single platform, simplifying, securing, and future-proofing designs for various markets.
TRACE32 supports JTAG-debugging of such heterogeneous systems, giving access to all guests at the same time. The support is available for ARMv8 architectures, currently released for Renesas R-Car H3, R-Car M3 and Xilinx Zynq Ultrascale+.
As a Wind River partner, Lauterbach has committed itself to support the company's platforms as soon as they become generally available. To this end, working in close cooperation with Wind River, Lauterbach extended its product TRACE32 to include a comprehensive debug environment tailored to Helix Platform.
Helix Platform delivers the VxWorks RTOS, Wind River Linux, and a type-1 hypervisor together as a foundation to allow applications to independently execute at different safety and security criticalities ensuring real-time, deterministic behaviours are not affected by other functionality on the platform. Helix Platform also provides the capability to run any operating system unmodified as a guest giving developers the ability to innovate in addition to re-using legacy software preserving software investment.
Debugging a virtualised system such as Helix Platform with several OSes in different partitions with a hardware debugger is a complex undertaking. The debugger (and the developer) need to know which partition is active and how to access a currently inactive partition in order to be able to access variables or set breakpoints anywhere in the system.
Lauterbach extended its TRACE32 debugger to be able to detect all virtual machines created in Helix Platform and their memory configuration. The debugger can access not only the virtualisation layer but also all guest OS environments and the applications running in the guests, whether they are currently active in a core or not. TRACE32 has an advanced virtual addressing scheme allowing it to uniquely identify any address within any VM. Symbols of functions or variables are bound to this unique address enabling developers to access everything in the system at the same time simply by accessing the debug symbols.
Helix Platform’s virtual machines each contain a guest OS, such as VxWorks or Linux. Using TRACE32, the developer can view multiple task lists and other OS objects in each VM, providing simultaneous visibility to all guests even if they are running multiple instances of the same guest operating system. These TRACE32 JTAG debug capabilities are ideal for safety- and security-certified critical systems that need to limit access to I/O ports, and to test actual production hardware platform, not test hardware, for certification credit.
Using Lauterbach‘s TRACE32 together with Wind River‘s Helix Platform allows the developer to debug any code in the system at any time giving full access to all parts including the hypervisor and all guests. This feature is immediately available and is provided with the standard software delivery of TRACE32.