Allow responses to be sent back-to-back

This commit is contained in:
2025-01-24 14:56:53 +01:00
parent ba94d9fd84
commit 581794b970
2 changed files with 3 additions and 13 deletions

View File

@@ -659,12 +659,7 @@ void Controller::manageResponses()
{ {
transToRelease.payload = &parentTrans; transToRelease.payload = &parentTrans;
tlm_phase bwPhase = BEGIN_RESP; tlm_phase bwPhase = BEGIN_RESP;
sc_time bwDelay; sc_time bwDelay = SC_ZERO_TIME;
if (transToRelease.arrival ==
sc_time_stamp()) // last payload was released in this cycle
bwDelay = memSpec.tCK;
else
bwDelay = SC_ZERO_TIME;
sendToFrontend(*transToRelease.payload, bwPhase, bwDelay); sendToFrontend(*transToRelease.payload, bwPhase, bwDelay);
transToRelease.arrival = scMaxTime; transToRelease.arrival = scMaxTime;
@@ -680,12 +675,7 @@ void Controller::manageResponses()
{ {
transToRelease.payload = nextTransInRespQueue; transToRelease.payload = nextTransInRespQueue;
tlm_phase bwPhase = BEGIN_RESP; tlm_phase bwPhase = BEGIN_RESP;
sc_time bwDelay; sc_time bwDelay = SC_ZERO_TIME;
if (transToRelease.arrival ==
sc_time_stamp()) // last payload was released in this cycle
bwDelay = memSpec.tCK;
else
bwDelay = SC_ZERO_TIME;
sendToFrontend(*transToRelease.payload, bwPhase, bwDelay); sendToFrontend(*transToRelease.payload, bwPhase, bwDelay);
transToRelease.arrival = scMaxTime; transToRelease.arrival = scMaxTime;