What is a VLAB VDM

A VLAB VDM is an all in software embedded computer running in VLAB on a host computer, as a virtual machine, for the purposes of development and test of target compiled user software.

VLAB VDMs are configurable to a range of different hardware system architecture specifications, including industry standard or proprietary specifications, and capable of loading and running software which is target compiled and built for these specific architectures. A VDM configuration also includes pre-built and pre-qualified low level operating software, such an OS/RTOS and BSP or SDK software package. These packages provide a rapid path for users to load, run, and test user space software, including middleware and applications software and entire software stacks, out of the box.

VLAB VDMs offer a range of IO interfaces, including for HMI, networking and serial IO, for connection to other VDMs (Virtual to Virtual), to the host (Virtual to Host), or to other third party test tools in software or in hardware.

VLAB VDMs provide a number of features expected of virtual machines, such as isolation between VDMs, checkpointing and snapshot/clone creation for exchange of VDMS between users, load balancing and reliable migration of a VDM from one host to another.

Optionally, VLAB VDMs may include built-in run time tools for introspection, inspection, and control of the state and of the ongoing execution of the target software and the virtual hardware, enabling advanced debug, tracing, profiling, test, and analysis only possible on a virtual machine.

Which VLAB VDM

Selection of a VLAB VDM starts with the Processor Architecture. With each Processor Architecture, the features and capabilities included are complimentary to the most common applications.

VDM Hardware Features
ARM PowerPC RISC-V RH850 TriCore
Cortex-A
V8-A
Cortex-M
V7-M
Cortex-R
V8-R
e500 e5000 e6500 RV32EC/IC G3/G4 TC3xx TC4xx
Configurable Hardware Features
Processor Type
# of Processor Clusters
# of Processors per Clusters VP
Topology VP
Memory Map VP
Interrupt Map VP
GPUs # and Type
Compute Accelerators
# and Type
IO # and Type VP
Peripheral Devices
# and Type
VP
GPU Configurations
OpenGL
OpenGL (ES)
CA Configurations
OpenCL
OpenGL
Cuda
HMI Devices
Input: Touchscreen, Mouse and Keyboard
Output: Console and Display
UART or VirtIO console terminals VP
Block Storage Devices
Flash/NVM, USB, eMMC/SD VP
Network IO (Virtual to Virtual or to Host)
Ethernet VP
USB
CAN VP
LIN VP
FlexRay VP
Onboard Devices
SPI VP
I2C/I3C VP
VDM Operating Software
Linux
FreeRTOS
Erika
QNX VP VP
VxWorks VP
Deos VP VP
PikeOS VP VP
uSAR VP VP VP VP VP

* VP indicates that the feature is available with the addition of a Virtual Platform Toolbox.

VLAB Edition Features
Express Suite
   Configure
   Run / Pause / Continue
   Snapshot save / restore / clone
   Multi-threaded simulation
   Interactive software debug
   Command-line interface
   Scripting and Automation
   Software Instrumentation
   Virtual Hardware instrumentation
   Scripted breakpoints and actions
   Tracing
   Software coverage analysis
   Software test tools
   Software profiling
   Fault injection and analysis
   Third party tool integrations
VLAB Features
Essentials Workstation Server Enterprise
   Multiple VDMs of the same architecture
   Multiple Architectures
   Multiple VDMs on the same host
   Multiple hosts
   Checkpointing VDMs
   Cloning VDMs
   Moving a VDM from one host to another
   Exporting and importing VDMs
   Remote access to a VDM
   Sharing a VDM between users
   VDM groups
   VDM data aggregation

 

Ready, Set, Go….

There is no large learning curve to using a VDM for the first time. In the same way that you would use a hardware board, a VDM is configured and set running, before loading and executing the unmodified, target compiled application software.

Interaction is available through keyboard, mouse, touch screen or displays connected to the VirtIO interfaces, as well as access to the console and file system.

Debugging application code is possible using the same debug clients that attach to hardware (e.g. GDB, Trace32 or Multi).

Unlike many hardware environments, the all in software VDM solution means that scripting, automation and inclusion into a Continuous Test and Integration system are all available.

Start using VDMs

Included in any VLAB Workstation, Teams or Server bundle, is a VLAB VDM. The flexibility of VLAB means you can start small and scale to meet your needs. If you are unsure what might be the best fit for you, then one of our team can optimise a solution.