CacheSim/simulator.h
2022-01-22 19:30:39 +08:00

26 lines
690 B
C++

#include "set.h"
#include <vector>
#include <tuple>
#include <iostream>
#include <math.h>
using CacheSim::Set;
using std::vector;
using std::tuple;
using std::string;
namespace CacheSim{
class Simulator
{
private:
short replacePolicy;
short setSize;
short tagSize;
int machineBits;
vector<Set> sets;
public:
Simulator(int machineBits, short setSize, short waySize, short tagSize, short replacePolicy);
tuple<bool, short, short> read(string address);
vector<bool> addressTranslate(string address);
short getValue(vector<bool> addrBits, string type);
};
}