Async FIFO Verification, Part 1: The Design, Gray Pointers and a Starter UVM Bench
Async FIFO verification, part 1: Gray-coded pointers, the full and empty flags, a verification plan and a starter UVM bench with real VCS logs.
Related learning paths
Async FIFO verification, part 1: Gray-coded pointers, the full and empty flags, a verification plan and a starter UVM bench with real VCS logs.
A UVM scoreboard mismatch has 6 likely causes, and only one is the design. A 5-minute triage, plus 5 planted bugs with real VCS logs to practise on.
We gave AI a one-page spec and asked for a UVM testbench. Its first draft caught 4 of 4 hidden bugs on VCS. Our hand-written bench caught 2. Prompt, logs and files inside.
A practical 2026 guide to AXI protocol verification: the five channels, handshakes, IDs and ordering, a working UVM agent with SVA and coverage, AXI4 vs AXI5 including Issue L, and ACE and CHI coherency basics.
Learn Portable Stimulus (PSS) with runnable DMA and UART examples, what is new in PSS 3.0, and how AI tools help write PSS models. Explained in plain words.
A repeatable verification debug method: the five-door order, UVM and SystemVerilog tips, waveform tracing, regression triage, and an AI-assisted debug flow.
In short: AI-assisted verification uses machine learning and large language models to speed up the slow, repetitive parts of chip verification. Your value as a verification engineer is moving toward building and owning that checker. Introduction and why this matters now Verification already takes the biggest share of an SoC schedule. Designs keep growing faster…
In the fast-moving business of chip design, where logic and silicon come together to power the devices we rely on every day, a group of quiet problem solvers does the careful work behind the scenes: ASIC verification engineers. These are the people who chase down bugs before a chip ever reaches production, testing every path…
In short: Designs need many clock frequencies from one reference. Division is simple but only gives integer ratios below the reference and can pile up jitter across a long chain. Multiplication, usually via a PLL, reaches higher frequencies, supports non-integer ratios, and often has lower jitter, which is why it suits high-speed links, CPU cores,…
In short: Formal and functional verification are partners. Formal uses mathematics to prove a property holds for every possible case, which fits small control logic and safety-critical corners. Functional runs simulations across many realistic scenarios and scales to a full system, but it can only sample the state space. Strong teams use formal for the…