13#include "CoreTypes.hpp"
14#include "FlushManager.hpp"
39 PARAMETER(uint32_t, num_to_rename, 4,
"Number of instructions to rename")
40 PARAMETER(uint32_t, rename_queue_depth, 10,
"Number of instructions queued for rename")
68 const uint32_t num_to_rename_per_cycle_;
69 uint32_t credits_dispatch_ = 0;
70 bool stop_checking_db_access_ =
false;
73 void sendInitialCredits_();
76 void creditsDispatchQueue_(
const uint32_t &);
79 void decodedInstructions_(
const InstGroup &);
82 void renameInstructions_();
85 void handleFlush_(
const FlushManager::FlushingCriteria & criteria);
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 Rename model.
static const 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.