Sva assertions
Skill a5c-ai/babysitter/library/specializations/fpga-programming/skills/sva-assertions
Specialized skill for creating and debugging SystemVerilog assertions for FPGA verificationFrom its SKILL.md
npx -y skills add a5c-ai/babysitter --skill sva-assertionsAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
SKILL.md
1.9 KB, 314 tokens by cl100k_base, as published. Nobody here has run it
SVA Assertions Skill
Overview
Expert skill for SystemVerilog Assertions (SVA) development, enabling formal property specification and verification for FPGA designs.
Capabilities
- Write concurrent and immediate assertions
- Create property specifications and sequences
- Implement coverage properties (cover property)
- Create assume properties for formal verification
- Debug assertion failures with cause analysis
- Generate assertion bind files
- Optimize assertion performance
- Integrate assertions with formal tools
Target Processes
- sva-development.js
- constrained-random-verification.js
- uvm-testbench.js
- verilog-systemverilog-design.js
Usage Guidelines
Assertion Types
- Immediate Assertions: Use for procedural checks within always blocks
- Concurrent Assertions: Use for temporal properties across clock cycles
- Cover Properties: Use for functional coverage collection
- Assume Properties: Use for formal verification constraints
Best Practices
- Use
$rose,$fell,$stablefor edge detection - Apply
disable ifffor reset handling - Use
|->for overlapping implication,|=>for non-overlapping - Create reusable sequences for common patterns
- Add meaningful labels to all assertions
Performance Optimization
- Limit sequence length for simulation efficiency
- Use local variables in sequences sparingly
- Group related assertions in bind files
- Consider assertion synthesis for emulation
Dependencies
- SVA parser
- Formal verification tool awareness
- IEEE 1800-2017 SystemVerilog standard knowledge
What ships with it: 1 file
816 B alongside SKILL.md
- README.md816 B