Skip to content
STIMSMITH

Instruction Fetch Matching

Concept

Instruction Fetch Matching is a co-simulation technique for keeping an RTL processor core and an instruction set simulator aligned when the RTL core pre-fetches instructions that may later be discarded by jumps or traps. The method records RTL-fetched instructions in a pending queue with their program counters, then matches ISS fetch requests against both the ISS PC and the last completed RTL instruction, reporting a mismatch when no corresponding pending instruction exists.

First seen 5/25/2026
Last seen 5/29/2026
Evidence 3 chunks
Wiki v1

WIKI

Overview

Instruction Fetch Matching—described in the evidence as instruction stream or instruction fetch matching—is used to feed the same on-the-fly generated instruction stream to a pipelined RTL core and an instruction set simulator (ISS). This is necessary because the RTL core can pre-fetch instructions ahead of execution, while the ISS fetches according to the instructions it has actually executed. As a result, jumps, traps, and short backward jumps can cause the RTL core and ISS to observe different apparent fetch sequences unless special matching is performed. [Purpose and problem]

Why simple PC matching is insufficient

READ FULL ARTICLE →

NEIGHBORHOOD

No graph connections found for this entity yet. It may appear in future ingestion runs.

explore full graph →

RELATIONSHIPS

2 connections
instruction fetch matching algorithm ← implements 100% 2e
The instruction fetch matching algorithm implements the instruction fetch matching concept to synchronize RTL core and ISS.
Co-Simulation Testbench part of → 90% 2e
The co-simulation testbench includes instruction fetch matching as a component.

CITATIONS

7 sources
7 citations — click to expand
[1] Purpose and problem
[2] Prefetch and control-flow divergence
[3] Pending queue
[4] Algorithm behavior
[5] Avoiding circular validation
[6] Co-simulation role
[7] Core adapter and test controller