DescriptionQ659
Q659DVFWASIC interview problem
Match transactions in strict order
TechniquesUVMScoreboardFIFOIn-order
DifficultyMedium
TopicReference Models
LanguageSystemVerilog
Requirements4 checkpoints
01
Problem
Implement the core of an in-order scoreboard. Expected and actual transactions arrive independently, but every actual transaction must match the oldest unmatched expected transaction.
Example input and output
Use this case to check your interpretationInput
push expected=(id=1,data=A), then (id=2,data=B); actual arrivals=(1,A), then (2,B)Output
two ordered matches; expected queue empty at finishExplanation
Each actual compares only with the cloned queue front and consumes exactly one expectation, so reversing the actual arrivals would fail immediately.
02
Requirements (4)
- Clone expected transactions before storing them so later producer edits cannot mutate scoreboard state.
- Report an actual transaction when no expected item is available.
- Compare against the queue front and consume exactly one expected entry per actual entry.
- At end of test, report any expected transactions that never arrived.
