/*
 *  Copyright 2011 OpenSourceStewardshipFoundation.org
 *  Licensed under GNU General Public License version 2 
 */

#ifndef CONTEXT_UNIT_
#define CONTEXT_UNIT_

#include<stdbool.h>
//==============================  Structures  ==============================
struct
 { 
    bool ReadyForIF;
    bool InIF;
    bool DoneWithIF;
 }
IFState;

struct
 {
    bool ReadyForPipe;
    bool InPipe;
    bool DoneWithPipe;
 }
PipeState;

struct
{
    bool NotinLdSt;
    bool InLdSt;
}
LdStState;

struct
{
    struct IFState IF;
    struct PipeState PS;
    struct LdStState LS;
    
}
FsmState;

typedef struct
{
    int ContextId;
    int CurrentPc;
    int NewPc;
    int Instr;
    struct FsmState FS;
}
ContextUnit;

//==============================  Functions  ================================

//===========================================================================

#endif /**/



