/// <summary> /// Passes DST, ALUResult, and Control Vector /// </summary> /// <param name="buff"></param> public void Pass(MEMWBBuffer buff) { buff.Instr = this.Instr; buff.DEST = this.DEST; Array.Copy(this.ALUResult, buff.ALUResult, 4); buff.vector = this.vector; }
/// <summary> /// Causes the buffer to push all the data to the next stage. Needs the target buffer to work. /// </summary> /// <param name="Next"></param> public void Flush(MEMWBBuffer Next) { Next.Instr = this.Instr; Array.Copy(this.ReadData, Next.ReadData, 4); Array.Copy(this.ALUResult, Next.ALUResult, 4); Next.DEST = this.DEST; Next.vector = this.vector; }