VLAB Software Suite

VLAB Software Suite Components

Designed for the more experienced user who wants added functionality beyond what’s included in VLAB Express, VLAB Software Suite adds a full GUI debugging environment. This environment blends the symbolic debug of a desktop software debugger with the control and observability of a traditional embedded system mode debugger.

The VLAB Software Debug Server enables 3rd party debuggers to connect to the virtual machine platform as if the debugger were connected to a probe connected to a physical board.

As with the control and configuration elements exposed in VLAB Express, all aspects of the GUI debug environment are fully python scriptable enabling advanced test automation. This includes modification of symbolic states.

A common use case is to automate a complex test case and then connect up a favorite IDE to investigate failures.

VLAB Software Tools

Debug Tools

• Internal debugger primarily designed to support scripting access to debug functionality
• Adds target software events to the VLAB Trace Environment
• Source level debug of IP model code
• Heterogeneous multi-core support with synchronous or asynchronous debugging
• Run, interrupt, step, continue execution on any core
• Instruction, statement, and function tracing
• Set, enable, disable, remove SW watch and breakpoints with optional scripted actions
• Supported SW image formats: ELF, DWARF, binary
• Memory viewer pane: view and modify memory and memory mapped registers on any bus, including buses that are not visible to target SW
• Symbol table with type awareness
• View and modify SW variables and data structures
• Evaluate and watch C expressions over target SW state
• Annotated source code viewer with disassembly, breakpoints and SW analysis information
• Scripting capability suitable for deterministic issue reproduction and a regression test / CI environment
• Heterogeneous multi-core support
• Synchronous or asynchronous multi-core software debug for a broad set of use cases

Test Tools

• Verify target SW at unit, module, or integration level
• Validate target SW at system level
• Perform testbench creation and setup
• Manage test discovery, execution, and reporting
• Python APIs for test scenario creation
• Verification against reference/specification model
• Integration with third party test generation tools
• Property based verification and validation

Analysis and Profiling Tools

Software Profiling

VLAB provides detailed profiling information on target software at both statement and function level for any software to which the user has sufficient debug information. Data can be analyzed both through simple source annotation, VLAB Trace, and 3rd party tools that use the file formats produced by standard open source profiling tools.

• Statement level coverage, analysis and profiling
• Function tracing, coverage analysis and profiling
• Dynamic profiling control during simulation
• Use built-in or build your own, unique analysis and visualization modes
• Interactive SW profiling visualization and exploration
• SW variable and memory region access tracing

Coverage Analysis

VLAB supports verification and validation engineers who need to measure and report coverage metrics as well the needs of development and test engineers who need to understand the scope of their testing. The tool provides coverage metrics for statement, branch, and MC/DC coverage.

• Toolchain agnostic statement, function, branch and MC/DC coverage analysis
• Requires no build or binary modification
• Cumulative software coverage reports from multiple, parallel runs

VLAB Trace

The VLAB Trace is a set of APIs for creating, querying, and analyzing an event trace in an efficient and high-performance manner. In addition to the run time infrastructure VLAB trace also provides the ability to store the trace in VTF, VCD, or text file formats.

• Trace or execute a custom scripted action on any port or signal change, bus transaction, register access or IP activity
• Add custom tracing points to any C++ or Python code
• Advanced tracing format with metadata information, fast search and indexing, program access via VLAB APIs

VLAB Software Debug Server

• 3rd Party debug libraries enabling debug of software running on a VLAB VP from an external debugger
• Seamless integration with GDB, Eclipse, Lauterbach TRACE32*, Greenhills MULTI*, TI Code Composer Studio*, NXP CodeWarrior*

*Trademarks are the property of their respective owners.