Class simtix::pipelined::FetchStage
ClassList > simtix > pipelined > FetchStage
Handle the instruction fetch. More...
#include <fetch_stage.h>
Public Functions
Type | Name |
---|---|
void | Fetch () Perform the fetch stage operations. |
FetchStage (PipelinedSMImpl * sm, const PipelinedSM::Param & p) Constructor of FetchStage . |
|
~FetchStage () = default |
Protected Attributes
Type | Name |
---|---|
PipelinedSMImpl *const | sm_ |
Protected Functions
Type | Name |
---|---|
void | IssuePendingFetchRequests () Issue pending fetch requests to instruction memory. |
void | ProcessReadyFetchRequests () Process fetch requests that are ready. |
Detailed Description
The FetchStage is responsible for retrieving instructions from memory, handling fetch requests, and forwarding them to the decode stage.
Public Functions Documentation
function Fetch
Perform the fetch stage operations.
This function is responsible for processing pending fetch response to decode stage and issuing pending fetch request to pending fetch response.
function FetchStage
Constructor of FetchStage .
explicit simtix::pipelined::FetchStage::FetchStage (
PipelinedSMImpl * sm,
const PipelinedSM::Param & p
)
Parameters:
sm
Pointer to the PipelinedSMImpl instance.p
Pipeline configuration parameters from pipeline.h.
function ~FetchStage
Protected Attributes Documentation
variable sm_
Protected Functions Documentation
function IssuePendingFetchRequests
Issue pending fetch requests to instruction memory.
Check for misaligned addresses, send fetch requests to the instruction memory, and handle access faults.
function ProcessReadyFetchRequests
Process fetch requests that are ready.
Process fetch requests that are in pending response. First check for address misalign and access fault. Then send the fetched instruction to the decode stage.
The documentation for this class was generated from the following file projects/simtix/src/simtix/sm/pipelined/fetch_stage.h