Consistent SVA naming conventions not just improve code quality, but also make FV setup more easily, for example:
- When designers need to convert a group of assume properties to assertion properties
- When designers need to disable or waive certain groups of properties
We show a sample SVA naming convention checklist below:
| SVA Naming Convention | Comment |
| Assertion property names should start with “P_” prefix | Assertion properties should hold true all the time, so use a dedicated prefix |
| Assume property names should start with “A_” prefix | |
| For assume property to constrain configuration registers and inputs, naming should start with “A_SW_” | |
| For assume property to constrain BLOCK input behavior, naming should start with “A_BLOCK_” | This is particularly useful if the assume properties are inside SVI. Assuming the SVI connects BLK1 to BLK2, either BLK1 or BLK2 can be DUT. When BLK1 is the DUT, then “A_BLK1_” properties should remain as assume properties, while “A_BLK2_” properties should be converted as assertion properties. Vice versa, when BLK2 is the DUT, then “A_BLK2_” properties should remain as assume properties, while “A_BLK1_” properties should be converted as assertion properties. |
| Cover property names should start with “C_” prefix |
As we are relying on Claude Code to write SVAs for our codebase, the SVA naming conversions are part of coding guidelines for our CLAUDE.md file.

Leave a comment