Free tools Windows power users keep installed
One-click scans. No signup required.
Virtual prototypes can let automotive software teams begin MCU-dependent integration before target silicon is ready, then inspect software-to-peripheral behavior with more visibility and control than a conventional function trace provides. In Victor Reyes’s 2014 AUTOSAR use case, the value is not a measured schedule saving or a replacement for testing on hardware; it is a way to bring up and debug a layered software stack earlier, using simulated hardware and targeted stimulus.
Why AUTOSAR bring-up is difficult
AUTOSAR organizes vehicle software into layers, but that structure also creates dependencies that must work together before an application can interact with an MCU peripheral. Reyes describes software integration and bring-up as critical-path work: application behavior depends on generated communication glue, operating-system services, communication services, and the microcontroller abstraction below it.
The 2014 article presents virtual prototyping as a way to begin that integration while target silicon is unavailable. It describes capabilities and an illustrative workflow, not an independent product evaluation, a performance benchmark, or evidence of a particular schedule improvement.
The layers involved
- Application software components (SWCs): encapsulate control functionality.
- Runtime Environment (RTE): generated glue that implements configured mappings and logical communication among software components and the underlying system.
- Basic Software (BSW): infrastructure that includes Services, ECU Abstraction, the Microcontroller Abstraction Layer (MCAL), and Complex Drivers.
In the article’s account, Services include the operating system and communication stack. ECU Abstraction provides a layer between software and ECU-specific hardware details. MCAL supplies standard APIs for accessing MCU resources and registers. Complex Drivers provide a route for specialized or timing- and resource-critical functionality that does not fit the standard abstraction path.
#1 Best Overall
This is Reyes’s 2014 explanation of AUTOSAR architecture, not a substitute for current AUTOSAR specifications. Teams should check the applicable specification and configuration for their project rather than assume every implementation follows the historical description identically.
What virtual prototyping changes
A virtual prototype models the processor and relevant system behavior in software, allowing some hardware-dependent development to start before physical MCU silicon is ready. The key distinction in this use case is not simply whether code can run: it is whether engineers can observe and control the modeled system closely enough to understand the interaction between AUTOSAR software and peripherals.
| Approach | When it helps | Visibility and trade-off |
|---|---|---|
| Wait for MCU silicon | When work must run on the physical target. | Provides access to real hardware; target-dependent integration cannot begin until the device is available. |
| Hardware prototype board | When a physical platform is available and suitable for the task. | Offers a hardware-based development path; the article contrasts virtual prototypes on their ability to expose and control internal state, but reports no measured head-to-head results. |
| Virtual prototype | For earlier software bring-up and debugging modeled hardware interactions. | Can expose software execution alongside peripheral and register state; its usefulness depends on the fidelity and scope of the model. |
The table summarizes the approaches as framed by the article; it is not a current product comparison. A virtual prototype can move some integration work earlier, but the article does not establish that it eliminates later target-hardware testing or validates every physical behavior.
Rank #2
How a CAN interaction becomes debuggable
Reyes’s CAN example shows the sort of cross-layer evidence a virtual prototype can bring together. A message sent by software is not just a function call: it passes through code and controller state, and the useful debugging question is where the intended data or state diverges from what the controller transmits.
Recommended Free Tools
- Follow the software: inspect source-level activity and the corresponding instruction trace to see what executed.
- Check the controller interface: examine memory-mapped registers and mailbox data to verify what software configured and supplied.
- Inspect controller-side state: follow the modeled CAN controller and its bus state as the transmission proceeds.
- Confirm the outcome: compare the transmitted frame with the software’s intended message.
The article’s example frame uses CAN ID 555 (hexadecimal 0x22b) and the payload “Hello.” The value of the trace is the correlation: software execution, register and mailbox contents, controller state, and the outgoing frame can be examined as parts of one event rather than treated as unrelated symptoms.
How to add controlled CAN stimulus
The article says model commands can inject CAN messages into the simulation. Scripts can coordinate that stimulus with software execution, simulated time, or hardware breakpoints, which makes it possible to reproduce an event at a chosen point in a bring-up sequence.
- Choose the CAN message and the point in simulated execution where it should arrive.
- Use the model’s command interface to inject the message; Reyes’s example injects CAN ID 720 with a two-byte payload at a specified simulated time.
- Coordinate the injection with the software using a script, such as by relating it to simulation time or a hardware breakpoint.
- Inspect the resulting task, software, and peripheral activity around the event.
The article does not state the two payload-byte values or give a reusable command syntax, so those details should not be inferred from the example. For scenarios with feedback between the plant and ECU, it describes connecting the virtual prototype to external ASIC or plant models built with tools such as Simulink or Saber, or to a rest-bus simulation tool such as Vector CANoe. These are historical examples named by the article, not confirmation of present-day compatibility.
Why AUTOSAR-aware monitors can clarify a function trace
A raw function-call trace can contain too much low-level activity to make the operating-system and AUTOSAR sequence easy to recognize. Reyes proposes monitors that surface higher-level events—tasks, interrupt service routines (ISRs), RTE events, and service APIs—alongside the underlying execution.
The article’s example follows a timer-triggered task that sends a message, is preempted, and later resumes in relation to an event wake-up and receive behavior. In that sequence, a useful monitor should help an engineer identify which task ran, when the timer interrupt occurred, where the message send fits, what caused preemption, and when the receiving task became active. The point is to make the execution understandable in AUTOSAR terms, not merely to produce a larger trace.
Rank #4
| Trace approach | What it exposes | Best fit |
|---|---|---|
| Standard function and instruction trace | Detailed execution at software-function and instruction level. | Following a specific path or correlating code with low-level state. |
| AUTOSAR-aware monitors | Higher-level task, ISR, RTE-event, and service-API activity, as described by Reyes. | Understanding scheduling, event, and communication behavior across the software stack. |
These are complementary views in the article’s approach: higher-level events help locate the behavior of interest, while detailed execution and peripheral state help investigate it.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.What multicore debugging adds
Reyes describes AUTOSAR 4.0 as including methods for multicore development and distributing execution across cores. His historical description says each core has an RTE and OS copy, while BSW access is limited to one core, with inter-OS-application communication connecting the relevant software. These details are specific to the article’s account of AUTOSAR 4.0; verify current specifications and project configuration before applying them to a present-day system.
For debugging, the article’s virtual-prototype claim is that the simulated system can be paused synchronously—including cores, peripherals, and connected plant models—so engineers can inspect them at the same simulated moment. This is useful in principle when the question depends on the relationship between events across cores and modeled hardware. The article describes this capability but supplies no independent test or comparative result.
PC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11Crashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minuteBest Value
Where this use case fits in a development plan
The workflow is most relevant when integration is blocked by unavailable silicon or when a peripheral interaction is difficult to understand from software logs alone. It suggests a practical sequence: establish the AUTOSAR layers and configured interfaces, bring up the software against the modeled MCU, add targeted stimulus, then correlate software execution with peripheral state. If the scenario depends on feedback from a plant or broader bus environment, an external model may be more appropriate than a simple scripted message.
Reyes’s article, “Dealing with automotive software complexity with virtual prototyping – Part 2: An AUTOSAR use case,” was published on Embedded.com on May 27, 2014. It identifies Victor Reyes as a Synopsys Inc. Technical Marketing Manager and says the series was excerpted from Better Software. Faster! Its examples explain an engineering approach; they should not be read as a current product catalog, current integration compatibility list, or independent validation of vendor claims.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




