diff --git a/DRAMSys/library/src/controller/refresh/RefreshManagerAllBank.cpp b/DRAMSys/library/src/controller/refresh/RefreshManagerAllBank.cpp index 74ab3648..7ead6aec 100644 --- a/DRAMSys/library/src/controller/refresh/RefreshManagerAllBank.cpp +++ b/DRAMSys/library/src/controller/refresh/RefreshManagerAllBank.cpp @@ -170,12 +170,7 @@ sc_time RefreshManagerAllBank::start() if (activatedBanks > 0) nextCommand = Command::PREA; else - { - if (flexibilityCounter > maxPulledin) - nextCommand = Command::REFA; - else - nextCommand = Command::RFMAB; - } + nextCommand = Command::RFMAB; timeToSchedule = checker->timeToSatisfyConstraints(nextCommand, &refreshPayload); return timeToSchedule; @@ -208,20 +203,15 @@ void RefreshManagerAllBank::updateState(Command command) } else { - if (sc_time_stamp() < timeForNextTrigger) // RFM through REFA + if (state == State::Pulledin) flexibilityCounter--; else - { - if (state == State::Pulledin) - flexibilityCounter--; - else - state = State::Pulledin; + state = State::Pulledin; - if (flexibilityCounter == maxPulledin) - { - state = State::Regular; - timeForNextTrigger += memSpec->getRefreshIntervalAB(); - } + if (flexibilityCounter == maxPulledin) + { + state = State::Regular; + timeForNextTrigger += memSpec->getRefreshIntervalAB(); } } break;