Definition
Load Instruction
A load instruction is an instruction that reads a value from memory into a register.
In the classic five-stage pipeline, the load accesses memory during the memory access stage. The loaded value is written back to the register file in the write-back stage.
Variants
Blocking
Definition
Link to originalBlocking Load Instruction
A blocking load instruction is a load instruction that stalls the pipeline until the requested data returns from the memory system.
All later instructions are blocked, regardless of whether they depend on the loaded value. The pipeline cannot proceed past the load until the data arrives.
Non-Blocking
Definition
Link to originalNon-blocking Load Instruction
A non-blocking load instruction is a load instruction that does not stall the pipeline while waiting for data from the memory system.
Independent instructions that follow the load can issue and execute while the load is in flight. Only instructions that consume the loaded value must wait.