Evolution of SVALint: Open-Source Guardrails for AI-Generated Verification
As a small but dedicated contributor to the open-source EDA community, we want to share the journey of how SVALint evolved from a localized parser experiment into an essential guardrail for modern AI-assisted verification.
From Experiment to Ecosystem: The SVALint Journey
Our work on SVALint began in early 2023, we began experimenting with the early stages of slang and PySlang. That work led to PySlint, and eventually, we built out a custom linting infrastructure specifically focused on SystemVerilog testbench (including SVA).
We took those early iterations to the community, gathering invaluable feedback at:
- DVCon Europe 2023, Testbench Linting – open-source way PySlint (https://dvcon-proceedings.org/wp-content/uploads/92146.pdf)
- LatchUp 2023 in Santa Barbara (https://www.youtube.com/watch?v=abTsJTOIQkM)
- Verification Futures 2023, Reading (https://www.tessolve.com/wp-content/uploads/2023/06/13-Srinivasan-VenkataramananDeepa-Palaniappan-VF_2023_AsFigo_Opensource_Verif_May25.pdf)
The consensus from the open-source community was clear: a linter is only as useful as its ability to adapt to diverse environments. This explains why traditional EDA vendors are unable to sell such a product for decades!
By 2025, as we began deploying SVALint at customer sites, we ported the backend to support Google’s Verible. Later that same year, responding directly to customer requests, we re-architected the code to support commercial tools such as Verdi, Verisium, and others. In early 2026, we reached a major accessibility milestone, releasing the tool via PyPI so that integrating it is now as simple as running
pip install svalint.
The AI Reality Check: Generation Without Validation is a Liability
Recently, we noticed a fascinating trend among our users: SVALint was increasingly being deployed not just to check human code, but to act as a frontline defense against Large Language Models (LLMs).
The new wave of AI-for-EDA startups is making incredible leaps in rapid code generation, but they often severely underestimate the necessity of structural and stylistic guardrails. LLMs can write textbook-perfect SVA in a vacuum, but hardware verification doesn't happen in a vacuum. Customers were finding that AI models frequently generated code that simply couldn't merge with their existing codebases due to systemic integration failures:
- Proprietary Context: LLMs lack context for a team’s internal macro wrappers, reusable properties, and specific error-messaging conventions.
- Target Tool Limitations: Different tools support different subsets of SVA. AI-generated assertions often fail when fed into different simulators. This is where SVALint shines—it acts as a filter to ensure AI output perfectly conforms to the specific SVA subsets supported by simulators including open-source Verilator, allowing teams to leverage LLMs without breaking their toolchains.
Without a localized guardrail, unverified AI code creates massive integration headaches. We love what the AI generation tools are doing, but SVALint provides the necessary reality check before that code is ever committed.
Build Your Own Linter (BYOL)
This integration gap is exactly why we champion the Build Your Own Linter (BYOL) philosophy.
SVALint provides a flexible, open-source framework where teams can swap out the underlying parser (be it slang, Verible, or commercial tools) and inject their own custom rulesets. Instead of rigid, top-down enforcement, SVALint acts as a translation layer. It forces AI-generated SVA to respect local macros, package structures, and specific simulator constraints at the desktop level.
By establishing this open, adaptable infrastructure, the goal is to give verification teams the tools they need to embrace automation securely—ensuring that whatever the AI generates, it still speaks the exact language of your local codebase.
Comments
Post a Comment