The approach

The loop that makes it
a product, not a prompt

Anyone can wrap an AI model around "write me some Verilog." The hard, defensible part is the closed loop: real simulation, reliable failure analysis, and repair that actually converges.

Data flow

How a run executes

Engineering agents coordinate; a deterministic engine does the real work. An orchestrator enforces a bounded iteration budget so every run terminates - and ends with the engineer reviewing the result.

Interpret spec
Design RTL
lint engine
Build testbench
simulation engine
↓   pass?  
Debug → fix design or testbench
re-simulate
↓   converged  
synthesis · PPA
Verification summary
Engineer reviews → accept · modify · reject
Why it's reliable

The principles behind the loop

Deterministic engine

The simulation and synthesis layer is plain, sandboxed tooling - not a model. Loop reliability lives here, with timeouts and safety checks on every run.

Self-scoring tests

Testbenches are generated to report their own pass/fail outcome, so a parser scores every run automatically - no human watching waveforms.

Fault-aware repair

On failure the loop localizes the issue and decides whether the design or the testbench is at fault before fixing the right one - and stops within a budget.

Inside a run

What the engineering agents do

A small set of focused roles, each handing off to the next - and to the deterministic engine that grounds them.

Interpret

Turns a natural-language or structured spec into a formal intent - interfaces, protocol, timing, and the corner cases that matter.

Design

Produces synthesizable RTL with a synthesizability critic, biased toward area or timing for your target and application.

Verify

Generates a self-checking testbench with directed and constrained-random cases, assertions, and a reference model.

Repair

Reads failing results, localizes the fault, and patches the right artifact - the genuinely hard, defensible part of the loop.

The moat

The eval harness is the asset

A benchmark suite of standard blocks with known-good references measures convergence rate and time-saved versus a baseline - and every run becomes a proprietary spec → RTL → bug → fix trace.

Measured progress

Convergence and bug-find rates on a fixed benchmark - the number that proves the loop works.

Compounding dataset

Each iteration logged from day one becomes training and evaluation data competitors don't have.

Bounded & safe

A max-iteration budget guarantees termination; the engine sandboxes and times out every simulation.

Run the loop yourself

Pick a block, give it a spec, and watch each stage stream live.

Open Playground See the suite