Skip to content

GLS · Topic

Adapting an RTL Testbench for Gate-Level Simulation

Why an RTL testbench breaks at gate level — hierarchical references, force/release, zero-delay assumptions and checker timing.

An RTL testbench usually depends on things a netlist no longer has. Hierarchical references reach into signals synthesis renamed or optimised away; checkers sample at instants that were safe with zero delay and are not once delays are annotated; force and release target nets that no longer exist. Adapting the testbench is not a workaround — it is the work of making the check valid against the thing actually being shipped.

Lessons in this topic(5)

Start hereWhy an RTL Testbench Breaks on the NetlistWhy an RTL Testbench Breaks on the Netlist
  1. 2Hierarchical References & Bind After Synthesis
  2. 3Timing-Aware Stimulus & Clock Generation
  3. 4Writing GLS-Friendly Checkers & Strobes
  4. 5Working Example: Adapting an FSM Testbench