34 lines
728 B
C++
34 lines
728 B
C++
/*
|
|
* BankwiseRefreshManager.h
|
|
*
|
|
* Created on: Mar 9, 2014
|
|
* Author: jonny
|
|
*/
|
|
|
|
#ifndef BANKWISEREFRESHMANAGER_H_
|
|
#define BANKWISEREFRESHMANAGER_H_
|
|
|
|
#include "IRefreshManager.h"
|
|
#include "common/dramExtension.h"
|
|
#include "RefreshManager.h"
|
|
|
|
namespace controller {
|
|
|
|
class BankwiseRefreshManager : public IRefreshManager
|
|
{
|
|
public:
|
|
BankwiseRefreshManager(std::vector<RefreshTiming> refreshTimings,
|
|
IInternalScheduler& internalScheduler);
|
|
virtual ~BankwiseRefreshManager();
|
|
|
|
virtual bool hasCollision(const CommandSchedule& schedule);
|
|
virtual void scheduleRefresh(sc_time time);
|
|
|
|
private:
|
|
std::vector<RefreshManager*> refreshManagerForBanks;
|
|
};
|
|
|
|
} /* namespace controller */
|
|
|
|
#endif /* BANKWISEREFRESHMANAGER_H_ */
|