7 const char MSS::name[] =
"mss";
15 mss_latency_(p->mss_latency)
17 in_mss_req_sync_.registerConsumerHandler
19 in_mss_req_sync_.setPortDelay(
static_cast<sparta::Clock::Cycle
>(1));
23 info_logger_ <<
"MSS construct: #" << node->
getGroupIdx();
33 void MSS::getReqFromBIU_(
const ExampleInstPtr & inst_ptr)
35 sparta_assert((inst_ptr !=
nullptr),
"MSS is not handling a valid request!");
40 ev_handle_mss_req_.schedule(mss_latency_);
44 sparta_assert(
false,
"MSS can never receive requests from BIU when it's busy!");
48 info_logger_ <<
"MSS is busy servicing your request......";
53 void MSS::handle_MSS_req_()
56 out_mss_ack_sync_.send(
true);
59 info_logger_ <<
"MSS is done!";
Set of macros for Sparta assertions. Caught by the framework.
#define sparta_assert(...)
Simple variadic assertion that will throw a sparta_exception if the condition fails.
#define SPARTA_EXPECT_FALSE(x)
A macro for hinting to the compiler a particular condition should be considered most likely false.
#define CREATE_SPARTA_HANDLER_WITH_DATA(clname, meth, dataT)
Node in a composite tree representing a sparta Tree item.
group_idx_type getGroupIdx() const
Gets the group index of this node.
Macros for handling exponential backoff.