tab2vmem.h 867 Bytes
/*
 *  tab2vmem.h 
 */

#ifndef TAB2VMEM_INCLD
#define TAB2VMEM_INCLD

#define MAX_SIGNALS	512
#define MAX_CLOCKS	10
#define MAX_SIG_NAME	128
#define MAX_CLK_PHASES	10

typedef enum {
  VMEM_INPUT,
  VMEM_OUTPUT,
  VMEM_BIDIR,
  VMEM_VALID
} SignalNodeType;


typedef struct {
  char			sig_name[MAX_SIG_NAME];
  char			val_sig_name[MAX_SIG_NAME]; /* data valid */
  char			en_sig_name[MAX_SIG_NAME]; /* output enable sig name */
  int			msb;
  int			lsb;
  int			size;    /* bits */
  int			hex_dig; /* nibbles */
  int			edge;    
  int			strobe;  
  SignalNodeType	type;
  int			valid;   /* valid signal present */
  int			polarity;/* polarity of output enable sig, 0 = active low */
} SigDef;

typedef struct {
  char			sig_name[MAX_SIG_NAME];
  int			val[MAX_CLK_PHASES]; 
  int			time[MAX_CLK_PHASES]; 
  int			phases;  
} ClockDef;

#endif /* TAB2VMEM_INCLD */