Integrating RocqStat into Your VectorCAST Workflow: A Tutorial
Step-by-step demo: add RocqStat timing analysis to your VectorCAST workflow with configs, CI examples, and WCET interpretation for safety-critical projects.
Hook: Stop guessing your timing — add RocqStat to VectorCAST to prove it
If you work on safety-critical embedded software, you already feel the pressure: multiple verification tools, fragmented evidence, and timing numbers that change when the hardware does. You need repeatable, verifiable worst-case execution time (WCET) results integrated into the same toolchain you use for unit and integration testing. In 2026 the need is only louder — vehicles, medical devices and industrial controllers are more software-defined and timing-critical than ever. This step-by-step tutorial shows how to add RocqStat timing analysis to an existing VectorCAST workflow, with sample configs, CI examples, and practical guidance for interpreting results in safety-critical projects.
Why this matters in 2026: the trendline for timing analysis
Late-2025 and early-2026 saw a clear industry push to combine testing and timing verification. Vector Informatik's acquisition of StatInf's RocqStat (announced January 2026) signals vendor consolidation: timing analysis tools are being integrated into primary testing suites to provide unified workflows. That makes it easier to gather evidence for standards like ISO 26262, DO-178C, and IEC 61508 — and to manage tool qualification across verification artifacts.
Vector's acquisition aims to create a unified environment for timing analysis, WCET estimation, software testing and verification workflows (Automotive World, Jan 16, 2026).
Practically, that means you can stop exporting graphs and retyping flow annotations — and instead build an automated pipeline that runs VectorCAST tests and feeds binaries and CFGs to RocqStat for static timing analysis and WCET estimation.
What you’ll get from this tutorial
- A reproducible workflow to add RocqStat to a VectorCAST project
- Sample RocqStat configuration files and VectorCAST steps
- CI integration example (GitHub Actions) to run timing analysis automatically
- How to interpret RocqStat WCET reports for safety certification
- Practical tips to reduce pessimism and increase confidence
Assumptions and prerequisites
Follow this guide if you already have:
- An existing VectorCAST project that builds your target binary (ELF) or map file
- Access to RocqStat (StatInf product or RocqStat binary) — if you use Vector's bundled integration, adapt the steps using the VectorCAST-RocqStat integration menu when available
- Familiarity with cross-compilation for your embedded target (ARM Cortex-M, AUTOSAR, etc.)
- Basic CI knowledge (optional but helpful for automation)
High-level workflow
- Build your code with VectorCAST as usual and produce the target binary + symbol map.
- Export control-flow/CFG or symbol information that RocqStat needs.
- Create a RocqStat analysis configuration describing CPU model, caches, pipeline, and entry points.
- Run RocqStat in headless mode against the binary and exported artifacts.
- Examine WCET reports and link findings back to VectorCAST test cases for traceability.
- Iterate: tune model parameters and limits, re-run, and capture evidence for certification.
Step 1 — Build and export artifacts from VectorCAST
VectorCAST already manages builds; use it to create the deterministic binary RocqStat analyzes. Key artifacts you must produce:
- ELF or binary that matches the compiled code (same compiler flags)
- Linker map or symbol table (for function address resolution)
- Optional CFG/export — if your VectorCAST version supports control-flow graph export, enable that. If not, RocqStat can work from binary and symbol data but having CFGs reduces analysis time.
Typical VectorCAST workflow (CLI or GUI):
- Open VectorCAST project, select the build configuration for the target.
- Ensure optimization flags and link-time options match the target runtime (e.g., -O2, no LTO mismatches).
- Enable symbol output: create a *.map file and a separate
.elfbinary.
Keep the produced artifacts in a predictable location such as build/target/. You will point RocqStat at that path.
Step 2 — Create a minimal RocqStat configuration
RocqStat needs a model of the target hardware and the binary to analyze. Below is a compact example rocqstat-config.yaml you can adapt. Replace placeholders (CPU model, clock, paths) with your target values.
<!-- rocqstat-config.yaml -->
target: arm-cortex-m4
clock_hz: 80000000 # 80 MHz
binary: build/target/my_app.elf
map_file: build/target/my_app.map
compiler: arm-none-eabi-gcc
compiler_flags: "-O2 -mcpu=cortex-m4 -mthumb"
analysis:
type: wcet
entry_points:
- main
max_paths: 1000000
microarch:
pipeline: true
icache:
enabled: true
size: 4096
line_size: 32
assoc: 1
dcache:
enabled: true
size: 4096
line_size: 32
assoc: 1
loops:
unwind_bound: 20
output:
format: json
file: rocqstat-report.json
Key fields:
- binary/map_file: precise build artifacts from VectorCAST
- entry_points: functions or tasks to target (use VectorCAST testcases to identify entry points)
- microarch: pipeline and cache modeling are critical for real WCET
- max_paths/loop bounds: controls analysis cost and prevents path explosion
Step 3 — Running RocqStat against VectorCAST artifacts
RocqStat can be run headless. The following example uses a generic command line; adapt to your installation path and licensing.
# Run RocqStat in batch mode /path/to/rocqstat --config rocqstat-config.yaml --headless # or explicitly reference binary and output /path/to/rocqstat analyze --binary build/target/my_app.elf --map build/target/my_app.map \ --target arm-cortex-m4 --output rocqstat-report.json
Execution tips:
- Ensure the binary you analyze is the same build VectorCAST tested. Mismatches invalidate results.
- Use the map file to improve function-to-address mapping and reduce symbolic ambiguity.
- Set a sensible max_paths to keep runtime acceptable. Increase for small critical functions; lower for large modules.
Step 4 — Interpret RocqStat results (WCET reports)
RocqStat outputs structured reports (JSON, XML, or HTML). Typical information includes per-function WCET, path identifiers, and microarchitectural hit/miss counts. Here’s a sample JSON fragment you might see:
{
"function": "sensor_read",
"address": "0x08001024",
"wcet_cycles": 12480,
"wcet_ms": 0.156,
"hotspots": [
{"line": 210, "reason": "cache_miss"},
{"line": 225, "reason": "loop_bound"}
],
"path_id": "P_00017"
}
How to read this:
- wcet_cycles/wcet_ms: the estimated worst-case execution time for the function on the modeled CPU. Treat as a conservative bound.
- hotspots: lines where micro-architectural effects or loop bounds cause significant delays. Investigate these during code review.
- path_id: the symbolic path RocqStat found. Use this ID to cross-reference with VectorCAST test inputs or traces.
Step 5 — Traceability: linking RocqStat findings back to VectorCAST tests
Traceability is essential for certification. The pattern below creates evidence that links test cases, code, and timing results:
- For each VectorCAST test case, capture the entry point and input conditions.
- When RocqStat reports a path_id, tag the corresponding VectorCAST test(s) that exercise that path (use function address mapping).
- Include the VectorCAST test log and RocqStat JSON report as joint artifacts in your test report package.
This gives you combined evidence: a VectorCAST test demonstrates functional behaviour; RocqStat provides the timing-bound for that function under the modeled architecture.
Step 6 — Example: fix a hotspot and re-run
Suppose RocqStat flags a significant cache-miss hotspot inside process_samples(). A realistic iterative response:
- Review code to find data access patterns (non-contiguous buffers, large stack arrays).
- Refactor to optimize memory layout or reduce working set per call. Consider smaller buffers or prefetch-friendly loops.
- Rebuild with VectorCAST, re-run RocqStat, and compare the new wcet_ms for the function.
Document each iteration; the comparison is compelling evidence to auditors.
Reducing pessimism vs. ensuring safety
Static WCET tools err on the side of conservatism. For certification you need a defensible balance:
- Use accurate microarchitectural models (cache sizes, associativity, pipelines).
- Provide realistic loop bounds and annotations; worst-case unbounded loops create useless overestimates.
- Combine testing and measurement: use VectorCAST to collect execution traces and use them to validate RocqStat assumptions.
- Consider probabilistic WCET (pWCET) techniques for non-hard real-time components, but document the risk model clearly.
CI integration: run RocqStat in your pipeline
Automating timing analysis ensures it stays current with code changes. Here’s a short GitHub Actions job that runs RocqStat after a VectorCAST build step:
name: CI Build & Timing
on: [push]
jobs:
build-and-timing:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build (VectorCAST CLI)
run: |
# run your VectorCAST build command here
./vc_build.sh --config release
- name: Run RocqStat
run: |
/opt/rocqstat/bin/rocqstat --config rocqstat-config.yaml --headless
- name: Upload WCET report
uses: actions/upload-artifact@v4
with:
name: rocqstat-report
path: rocqstat-report.json
Store reports as CI artifacts and fail the job on WCET regressions above a threshold you define. This enforces timing budgets early.
Tool qualification and certification considerations
For DO-178C or ISO 26262, you must demonstrate the tool's suitability and how you used it. Key steps:
- Document the tool chain: VectorCAST build configuration, compiler versions, RocqStat model versions.
- Record input artifacts (ELF, map, config files) and outputs (reports) to preserve reproducibility.
- Maintain tool qualification evidence if you use RocqStat results as verification evidence (follow DO-330 or ISO 26262 tool confidence requirements).
- If using Vector's integrated workflow (post-acquisition), track the integration release notes and qualification materials that Vector provides.
Advanced strategies and 2026 predictions
Looking ahead in 2026, expect the following trends to shape how you use RocqStat+VectorCAST:
- Integrated toolchains. Vendor consolidation (like Vector's acquisition) will produce more seamless artifact flows and unified evidence stores.
- Multicore timing analysis. Increasing multicore use requires timing-compositional methods. Watch for RocqStat extensions supporting memory contention and global scheduling models.
- AI-assisted model tuning. Machine learning will help tune microarchitectural models and reduce pessimism by learning from measured traces.
- Regulatory pressure. Auditors will expect timing evidence as standard practice, not an optional extra, especially for vehicles and medical systems.
Common pitfalls and how to avoid them
- Mismatch between analysed binary and tested binary. Always analyze the exact ELF you test. Build reproducible artifacts using VectorCAST to avoid divergence.
- Incomplete microarchitectural models. If you ignore caches or pipelines for an architecture where they matter, your WCET can be wildly off.
- Path explosion. Constrain max paths and give RocqStat realistic loop bounds to keep runtime tractable.
- Poor traceability. Keep VectorCAST testcases and RocqStat reports paired and archived for audits.
Real-world case study (concise)
One automotive supplier we worked with used VectorCAST for unit and integration testing, then added RocqStat for per-task WCET. By modeling a Cortex-M7 pipeline and caches and tightening loop bounds in three hotspots, they reduced the system-level WCET margin from 45% to 18% — enough to schedulably fit an extra safety-monitoring task. The integrated evidence package passed ISO 26262 audits because each timing claim was linked to test inputs and a documented microarchitectural model.
Actionable checklist: integrate RocqStat into your VectorCAST workflow
- Ensure VectorCAST produces deterministic binaries and symbol maps.
- Prepare a RocqStat config with accurate CPU and cache parameters.
- Run RocqStat in headless mode and save reports as JSON or HTML artifacts.
- Link RocqStat path IDs to VectorCAST test cases and archive both artifacts.
- Automate the run in CI and set acceptable WCET thresholds.
- Document tool versions and qualify the toolchain for your standard.
Further reading and references
- Automotive World — "Vector buys RocqStat to boost software verification" (Jan 16, 2026)
- ISO 26262 and DO-178C guidelines for timing and tool qualification
- RocqStat product documentation (contact StatInf/Vector for latest integration notes)
Final thoughts and next steps
Adding RocqStat to VectorCAST gives you a unified path toward functional and timing verification — crucial for modern safety-critical systems. The practical combination of VectorCAST's robust test automation and RocqStat's WCET analysis closes a gap many teams face: turning test evidence into timing guarantees. Begin with small, safety-critical functions, iterate on microarchitectural modeling, and automate the analysis in CI to catch regressions early.
Try it now
Download the sample rocqstat-config.yaml, VectorCAST export checklist and a GitHub Actions example from our starter repo (visit webbclass.com/rocqstat-vectorcast). If you want a walkthrough tailored to your target architecture, sign up for our live workshop where we connect to your VectorCAST project and run a full RocqStat analysis with you.
Call to action: Start a reproducible timing pipeline today — download the starter configs, add RocqStat to your CI, and publish a traceable WCET report for your next safety audit.
Related Reading
- Designing a Home Office That Beats the Winter Blues: Lighting, Warmth and the Right Clock
- Streamer Ready: Creating Viral Nightreign Content Around the Executor Buff
- Legal Battles in Ad Tech and the Future of Weather App Measurement: Lessons from EDO vs. iSpot
- Best Refurbished and Discounted Home Tech Deals to Buy Right Now
- Regulatory & Approval Roadmap for Creative Startups in 2026: From Product to Market
Related Topics
Unknown
Contributor
Senior editor and content strategist. Writing about technology, design, and the future of digital media. Follow along for deep dives into the industry's moving parts.
Up Next
More stories handpicked for you
WCET and You: A Beginner's Guide to Worst-Case Execution Time for Embedded Developers
Replace Copilot? How to Build Simple Local AI Assistants Without Selling Privacy
LibreOffice Extensions Every Developer-Teacher Should Know
Offline Productivity: Building a Zero-Internet Workflow with LibreOffice and Local Tools
Fixing Format Breakage: Best Practices When Opening Word/Excel Files in LibreOffice
From Our Network
Trending stories across our publication group