Software Test Toolbox
With VLAB 2.5, the VLAB product family introduces a new Software Test Toolbox, which provides a complete solution for virtualized verification and validation of complex embedded software and systems. This toolbox helps VLAB users to:
- Create and operate a virtualized verification and validation testbench
- Create and manage a regression suite of tests
- Describe test scenarios using a simple and intuitive VLAB Python API
- Call, stub or intercept any target software function
- Select test cases, execute them in parallel on a single host or distribute over multiple hosts
- Measure requirements coverage as well as statement (C0), branch (C1), and MC/DC target code coverage and collate results across the regression
- Generate requirements traceability matrix and identify untested or unsatisfied requirements
- Compare actual and reference behaviour expected, via either a specification model or “golden” traces
- Check properties of the system behaviour and flag any violations of those properties
- Integrate with continuous Integration frameworks and tools, such as Jenkins CI
Software Debug APIs and IDE
VLAB 2.5 adds several improvements to the target software debug capabilities of the Software Debug Toolbox:
- Memory variables and data structures can be accessed programmatically via Python APIs
- Users can now choose between source and disassembly view of the target software in a simulation debug session
VLAB Software Debug Client – source and disassembly views of target software
VLAB 2.5 brings significant improvements in the performance and usability of the FPGA Co-simulation Toolbox. A new co-simulation mode uses event based communication and synchronization between RTL IP on the FPGA and a VLAB virtual prototype, to enable extended scaling of the accuracy and performance of the hybrid emulation. Improvements in the clocking and instrumentation infrastructure result in simplification of the RTL integration and implementation flow on the FPGA side and reduction in user effort.
VLAB 2.5 introduces support for the Functional Mockup Interface (FMI) standard, enabling the creation of complex multi-domain simulations. This opens up VLAB to integrate and interact with models and simulations using over 90 existing tools covering wide spectrum of applications.
The addition of a comprehensive view and tracing of a SystemC simulation enables model and VP developers to better debug complex functional and performance issues in a simulation. This new feature offers visibility into SystemC kernel level events, processes, and channel updates. SystemC kernel behavior over time can be traced into any of the supported formats, used in breakpoint conditions, and visualized as any other simulation data.
Host Compilation Support
VLAB 2.5 simplifies the integration of host-compiled code into a virtual platform environment. In particular, VLAB users can now easily replace target applications running on a core model with a host-compiled version of the same application.
VLAB users who would like to reuse model components from the popular QEMU emulator framework can now do so with VLAB 2.5 by porting QEMU models as standard SystemC and VLAB models. Unlike other comparable solutions, support for the most recent QEMU version is available, opening up the broad and mature set of current QEMU models for re-use by VLAB users in an industry standard framework such as SystemC.
VLAB 2.5 enables the connection of a calibration tool such as ETAS INCA to a virtual ECU running in VLAB. This enables a number of new use cases for virtualization, including virtual ECU calibration test and system level safety analysis.
VLAB 2.5 adds a new Terminal Pane that simplifies interacting with target software providing an interactive user interface.
There is also a new Code Coverage pane in VLAB 2.5 to present code coverage results.
VLAB Terminal Panes
VLAB statement coverage annotated target source
VLAB code coverage analysis results
VLAB function profiling results
Many other usability improvements have been made across the VLAB IDE.
New OS support and model build toolchains
VLAB 2.5 adds support for latest toolchains for VLAB model builds, including gcc 4.9.x on Linux and Microsoft Visual Studio 2015 on Windows. Windows 10 support has also been added.
VLAB function profiling integrated with QCachegrind
VLAB target software variable tracing integrated with GTKWave
VLAB 2.5 brings many performance and stability improvements across the range of features and toolboxes over the previous version.