public void init(FetchStage f) { if (!stall) { if (bubble) { icode = 0; ifun = 0; rA = 0; rB = 0; valC = 0; valP = 0; Ins = "bubble"; } else { icode = f.icode; ifun = f.ifun; rA = f.rA; rB = f.rB; valC = f.valC; valP = f.valP; Ins = f.Ins; } } }
public void Init(string inPath, string outPath = "output.txt") { Mem = new Memory(CodeStart + CodeMaxLen); StreamReader IStream = new StreamReader(inPath); BinaryReader reader = new BinaryReader(IStream.BaseStream); CodeLen = reader.Read(Mem.Data, CodeStart, CodeMaxLen); IStream.Close(); writer = File.CreateText(outPath); Circle = 0; CL = new ControlLogic(); CC = new ControlCode(); rf = new Registerfile(); f = new FetchStage(); d = new DecodeStage(); e = new ExecuteStage(); m = new MemoryStage(); F = new FetchRegister(); D = new DecodeRegister(); E = new ExecuteRegister(); M = new MemoryRegister(); W = new WritebackRegister(); F.predPC = CodeStart; rf.Data[ConstVar.RESP] = CodeStart; f.F = F; f.Mem = Mem; d.D = D; d.rf = rf; e.E = E; e.CC = CC; m.M = M; m.Mem = Mem; CL.set(D, d, E, e, M); }
public void init(FetchStage f) { if (!stall) predPC = f.predPC; }