13#include "CoreTypes.hpp"
14#include "FlushManager.hpp"
38 PARAMETER(uint32_t, num_to_decode, 4,
"Number of instructions to process")
39 PARAMETER(uint32_t, fetch_queue_size, 10,
"Size of the fetch queue")
52 static constexpr char name[] =
"decode";
76 void sendInitialCredits_();
77 void fetchBufferAppended_ (
const InstGroup &);
78 void receiveUopQueueCredits_(
const uint32_t &);
80 void handleFlush_(
const FlushManager::FlushingCriteria & criteria);
82 uint32_t uop_queue_credits_ = 0;
83 const uint32_t num_to_decode_;
File that defines Data[In,Out]Port<DataT>
A set of sparta::Parameters per sparta::ResourceTreeNode.
#define PARAMETER(type, name, def, doc)
Parameter declaration.
#define CREATE_SPARTA_HANDLER(clname, meth)
Basic Node framework in sparta device tree composite pattern.
File that defines the UniqueEvent class.
File that defines the Unit class, a common grouping of sets and loggers.
Parameters for Decode model.
static constexpr char name[]
Name of this resource. Required by sparta::UnitFactory.
DataInPort receives data from sender using a DataOutPort.
DataOutPort is used for transferring any data to another module.
Generic container of Parameters.
Node in a composite tree representing a sparta Tree item.
A type of Event that uniquely schedules itself on the schedule within a single time quantum....
The is the base class for user defined blocks in simulation.
sparta::EventSet unit_event_set_
The Unit's event set.
sparta::PortSet unit_port_set_
The Unit's Ports.
@ Tick
Most operations (combinational logic) occurs in this phase.
@ Flush
Phase where flushing of pipelines, etc can occur.