Skip to main content...
S2 · Verilog RTL Design
30 min

Day 93: Bring-up: running rv32ui on the pipelined core

Running rv32ui on the pipelined core, checked against the ISS, is the moment ChipX's headline claim becomes true.

Bring-up: rv32ui on the pipelined core

Run the full rv32ui suite on the *pipelined* core in Verilator, comparing architectural state against the ISS after each retired instruction. Where the single-cycle core (Day 86) validated the datapath, this validates the *pipeline* — forwarding, stalls, and flushes — under real instruction sequences with real hazards. When it passes, ChipX's central claim ('pipelined RV32I passing riscv-tests') is true.

Failures now are hazard bugs

Because the single-cycle core already passed, any new failure on the pipeline is almost certainly a hazard bug: a missing forward, a mishandled load-use, a botched flush, or an x0 edge case. The ISS comparison points at the first diverging instruction; the hazard it involves tells you which control path to inspect. This is the payoff of building single-cycle first.

Ship for Day 93

The single-cycle core already passes rv32ui. If the pipelined core then fails a test, what is the most likely cause?

We use cookies

We use cookies to enhance your browsing experience, serve personalized content, and analyze our traffic. By clicking "Accept All", you consent to our use of cookies. Learn more

    Day 93: Bring-up: running rv32ui on the pipelined core | RBTechIconX