scope-pattern-attestation

Verify behavioral pulse patterns on real silicon IO via oscilloscope SCPI captures.

26|8|Updated Jun 13, 2026
One-click install
npx skills add https://github.com/vibeic/vibe-ic --skill scope-pattern-attestation-vibeic
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: scope-pattern-attestation
Source: https://github.com/vibeic/vibe-ic/tree/main/vibe-ic-marketplace/plugins/vibe-ic/skills/scope-pattern-attestation
Command: npx skills add https://github.com/vibeic/vibe-ic --skill scope-pattern-attestation-vibeic

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Simulation and static RTL checkers can both pass while the actual chip still exhibits a forbidden timing pattern, such as periodic wake pulses that should have stopped after a state transition. This Skill closes that gap by probing the real IO line with an oscilloscope and running deterministic pattern checks on the captured waveform. ## Core Features & Use Cases - Hardware attestation via SCPI: Captures scope traces through the MCP-EDA server and runs deterministic programs that decide PASS/FAIL on pulse period, width, and frame decode. - Forbidden and required pattern checks: Detects absence of forbidden periodic pulses, presence of required reply preambles, response byte decoding, and long-frame decoding. - CI-friendly mock mode: Replays a previously captured waveform CSV with --mock-samples-csv so regressions run without USB hardware. - Use Case: A static checker flags a wake-timer freeze defect in wake_ctrl.v. After sim and static checks pass, you probe the IO line with a Keysight DSO-X 3014T, capture 50 ms of waveform, and the program confirms whether the 5 ms periodic pulses have actually stopped on silicon. ## Quick Start Ask the agent to run a scope check on the IO line to verify the wake pulse really stops after the state transition, using the captured trace or live hardware.

Frequently Asked Questions about scope-pattern-attestation

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I verify a pulse pattern on real hardware with an oscilloscope?▼

Probe the IO line with a scope channel, trigger the IC into the suspected state, then run scope_periodic_pulse_check.py with the expected period and pulse-width bounds. The program captures the trace via SCPI and returns a deterministic PASS or FAIL verdict.

How do I run oscilloscope pattern checks in CI without hardware?▼

Use the --mock-samples-csv option with a previously captured waveform CSV file. The same deterministic analysis runs on the recorded samples, so regressions execute without any USB scope attached.

Which oscilloscopes are supported for SCPI capture?▼

Defaults target the Keysight DSO-X 3014T over USBTMC with vendor ID 2a8d. Other USBTMC scopes work with --vid and --pid overrides, though some vendors use slightly different SCPI waveform block-header conventions that should be validated first.

Why does the scope capture return exit code 2?▼

Exit code 2 means an argument, scope, or capture error occurred. The most common cause is that the IC was never put into the suspected-bad state, so the single-shot trigger never fired and no waveform was captured.

What are the limitations of oscilloscope pattern attestation?▼

It checks one IO channel at a time, requires the pattern to be actively occurring during capture, and only detects digital pulse patterns. Analog characterization and pre-silicon verification still require simulation and static analysis tools.