compiler.c File Reference


Detailed Description

Compiler definitions.

Author:
Christian Holm Christensen <cholm@nbi.dk>
Date:
Wed Jan 26 14:43:44 2005

#include <altrocc/compiler.h>
#include <errno.h>
#include <string.h>
#include <stdarg.h>
#include <stdio.h>
#include <stdlib.h>

Defines

#define LABEL_SIZE   256
#define FMD_ADDR   5

Enumerations

enum  RCU_Code {
  RCU_JUMP, RCU_RS_STATUS, RCU_RS_TRCFG, RCU_RS_TRCNT,
  RCU_dummy4, RCU_dummy5, RCU_CHRDO, RCU_PMREAD,
  RCU_PMWRITE, RCU_END, RCU_WAIT, RCU_TRIGGER
}
enum  ALTRO_Code {
  ALTRO_K1, ALTRO_K2, ALTRO_K3, ALTRO_L1,
  ALTRO_L2, ALTRO_L3, ALTRO_VFPED, ALTRO_PMDTA,
  ALTRO_ZSTHR, ALTRO_BCTHR, ALTRO_TRCFG, ALTRO_DPCFG,
  ALTRO_BFNPT, ALTRO_PMADD, ALTRO_dummy_0e, ALTRO_dummy_0f,
  ALTRO_ERSTR, ALTRO_ADEVL, ALTRO_TRCNT, ALTRO_dummy_13,
  ALTRO_dummy_14, ALTRO_dummy_15, ALTRO_dummy_16, ALTRO_dummy_17,
  ALTRO_WPINC, ALTRO_RPINC, ALTRO_CHRDO, ALTRO_SWTRG,
  ALTRO_TRCLR, ALTRO_ERCLR
}
enum  BC_Code {
  BC_dummy_0, BC_T_TH, BC_AV_TH, BC_AC_TH,
  BC_DV_TH, BC_DC_TH, BC_T, BC_AV,
  BC_AC, BC_DV, BC_DC, BC_L1CNT,
  BC_L2CNT, BC_SCLKCNT, BC_DSTBCNT, BC_TSMWORD,
  BC_USRATIO, BC_CSR0, BC_CSR1, BC_CSR2,
  BC_CSR3, BC_FMD, BC_CNTLAT, BC_CNTCLR,
  BC_CSR1CLR, BC_ALRST, BC_BCRST, BC_STCNV,
  BC_SCEVL, BC_EVLRDO, BC_STTSM, BC_ACQRDO
}
enum  FMD_Code {
  FMD_BIAS, FMD_VFP, FMD_VFS, FMD_CAL_LVL,
  FMD_SHIFT_CLK, FMD_SAMPLE_CLK, FMD_HOLD_DELAY, FMD_L1_TIMEOUT,
  FMD_L2_TIMEOUT, FMD_RANGE, FMD_CMD, FMD_dummy_11,
  FMD_L0, FMD_L1, FMD_dummy_14, FMD_dummy_u
}

Functions

int yyparse ()
void RCUC_set_label (char *lab, int len)
long RCUC_find_label (const char *name)
const char * RCUC_find_label_by_address (u_int addr)
u_int RCUC_add_instruction (u_int instr, u_int lab)
u_int RCUC_current_address ()
void RCUC_print (const struct RCUC_set *instr, FILE *file, short nums, short labs)
u_int RCUC_RCU_encode (u_int instr)
u_int RCUC_Instr_encode (u_int c)
u_int RCUC_Data_encode (u_int d, u_int offset, u_int range)
u_int RCUC_LOOP_encode (u_int addr, u_int n)
u_int RCUC_JUMP_encode (u_int addr)
u_int RCUC_RCU_RS_STATUS_encode ()
u_int RCUC_RCU_RS_TRCFG_encode ()
u_int RCUC_RCU_RS_TRCNT_encode ()
u_int RCUC_RCU_CHRDO_encode ()
u_int RCUC_RCU_PMREAD_encode (u_int addr)
u_int RCUC_RCU_PMWRITE_encode (u_int addr, u_int broadcast)
u_int RCUC_END_encode ()
u_int RCUC_RCU_WAIT_encode (u_int delay)
u_int RCUC_RCU_TRIGGER_encode ()
u_int RCUC_OFFSET_resolve (int offset)
u_int RCUC_LABEL_resolve ()
u_int RCUC_ALTRO_2nd_encode (u_int instr)
u_int RCUC_ALTRO_encode (u_int instr)
u_int RCUC_ALTRO_read_encode (u_int instr)
u_int RCUC_ALTRO_write_encode (u_int instr)
u_int RCUC_BROADCAST_encode ()
u_int RCUC_LOCAL_encode (u_int chip, u_int ch)
u_int RCUC_CHANNEL_encode (u_int ch)
u_int RCUC_CHIP_encode (u_int chip)
u_int RCUC_ALTRO_K_read_encode (u_short which, u_int addr)
u_int RCUC_ALTRO_K_write_encode (u_short which, u_int addr, u_int data)
u_int RCUC_ALTRO_L_read_encode (u_short which, u_int addr)
u_int RCUC_ALTRO_L_write_encode (u_short which, u_int addr, u_int data)
u_int RCUC_ALTRO_VFPED_read_encode (u_int addr)
u_int RCUC_ALTRO_VFPED_write_encode (u_int addr, u_int data)
u_int RCUC_ALTRO_PMDTA_read_encode (u_int addr)
u_int RCUC_ALTRO_PMDTA_write_encode (u_int addr, u_int data)
u_int RCUC_ALTRO_ZSTHR_read_encode (u_int addr)
u_int RCUC_ALTRO_ZSTHR_write_encode (u_int addr, u_int off, u_int thr)
u_int RCUC_ALTRO_BCTHR_read_encode (u_int addr)
u_int RCUC_ALTRO_BCTHR_write_encode (u_int addr, u_int high, u_int low)
u_int RCUC_ALTRO_TRCFG_read_encode (u_int addr)
u_int RCUC_ALTRO_TRCFG_write_encode (u_int addr, u_int start, u_int end)
u_int RCUC_ALTRO_DPCFG_read_encode (u_int addr)
u_int RCUC_ALTRO_DPCFG_write_encode (u_int addr, u_int invert, u_int first_bl, u_int second_bl, u_int zero_sup)
u_int RCUC_ALTRO_FIRST_BASELINE_encode (u_int mode)
u_int RCUC_ALTRO_SECOND_BASELINE_encode (u_int pre, u_int post)
u_int RCUC_ALTRO_ZERO_SUPPRESSION_encode (u_int conf, u_int post, u_int pre)
u_int RCUC_ALTRO_BFNPT_read_encode (u_int addr)
u_int RCUC_ALTRO_BFNPT_write_encode (u_int addr, u_int pretrigger, u_int bufsize, u_int filter, u_int powersave)
u_int RCUC_ALTRO_PMADD_read_encode (u_int addr)
u_int RCUC_ALTRO_PMADD_write_encode (u_int addr, u_int data)
u_int RCUC_ALTRO_ERSTR_read_encode (u_int addr)
u_int RCUC_ALTRO_ADEVL_read_encode (u_int chip, u_int ch)
u_int RCUC_ALTRO_TRCNT_read_encode (u_int addr)
u_int RCUC_ALTRO_WPINC_cmd_encode (u_int addr)
u_int RCUC_ALTRO_RPINC_cmd_encode (u_int addr)
u_int RCUC_ALTRO_CHRDO_cmd_encode (u_int chip, u_int ch)
u_int RCUC_ALTRO_SWTRG_cmd_encode (u_int addr)
u_int RCUC_ALTRO_TRCLR_cmd_encode (u_int addr)
u_int RCUC_ALTRO_ERCLR_cmd_encode (u_int addr)
u_int RCUC_BC_encode (u_int instr)
u_int RCUC_BC_T_TH_read_encode (u_int addr)
u_int RCUC_BC_T_TH_write_encode (u_int addr, u_int data)
u_int RCUC_BC_AV_TH_read_encode (u_int addr)
u_int RCUC_BC_AV_TH_write_encode (u_int addr, u_int data)
u_int RCUC_BC_AC_TH_read_encode (u_int addr)
u_int RCUC_BC_AC_TH_write_encode (u_int addr, u_int data)
u_int RCUC_BC_DV_TH_read_encode (u_int addr)
u_int RCUC_BC_DV_TH_write_encode (u_int addr, u_int data)
u_int RCUC_BC_DC_TH_read_encode (u_int addr)
u_int RCUC_BC_DC_TH_write_encode (u_int addr, u_int data)
u_int RCUC_BC_T_read_encode (u_int addr)
u_int RCUC_BC_AV_read_encode (u_int addr)
u_int RCUC_BC_AC_read_encode (u_int addr)
u_int RCUC_BC_DV_read_encode (u_int addr)
u_int RCUC_BC_DC_read_encode (u_int addr)
u_int RCUC_BC_L1CNT_read_encode (u_int addr)
u_int RCUC_BC_L2CNT_read_encode (u_int addr)
u_int RCUC_BC_SCLKCNT_read_encode (u_int addr)
u_int RCUC_BC_DSTBCNT_read_encode (u_int addr)
u_int RCUC_BC_TSMWORD_read_encode (u_int addr)
u_int RCUC_BC_TSMWORD_write_encode (u_int addr, u_int data)
u_int RCUC_BC_USRATIO_read_encode (u_int addr)
u_int RCUC_BC_USRATIO_write_encode (u_int addr, u_int data)
u_int RCUC_BC_CSR_read_encode (u_int which, u_int addr)
u_int RCUC_BC_CSR_write_encode (u_int which, u_int addr, u_int data)
u_int RCUC_BC_CNTLAT_cmd_encode (u_int addr)
u_int RCUC_BC_CNTCLR_cmd_encode (u_int addr)
u_int RCUC_BC_CSR1CLR_cmd_encode (u_int addr)
u_int RCUC_BC_ALRST_cmd_encode (u_int addr)
u_int RCUC_BC_BCRST_cmd_encode (u_int addr)
u_int RCUC_BC_STCNV_cmd_encode (u_int addr)
u_int RCUC_BC_SCEVL_cmd_encode (u_int addr)
u_int RCUC_BC_EVLRDO_cmd_encode (u_int addr)
u_int RCUC_BC_STTSM_cmd_encode (u_int addr)
u_int RCUC_BC_ACQRDO_cmd_encode (u_int addr)
u_int RCUC_FMD_BIAS_read_encode (u_int addr)
u_int RCUC_FMD_BIAS_write_encode (u_int addr, u_int data0, u_int data1)
u_int RCUC_FMD_VFP_read_encode (u_int addr)
u_int RCUC_FMD_VFP_write_encode (u_int addr, u_int data0, u_int data1)
u_int RCUC_FMD_VFS_read_encode (u_int addr)
u_int RCUC_FMD_VFS_write_encode (u_int addr, u_int data0, u_int data1)
u_int RCUC_FMD_CAL_LVL_read_encode (u_int addr)
u_int RCUC_FMD_CAL_LVL_write_encode (u_int addr, u_int data0, u_int data1)
u_int RCUC_FMD_SHIFT_CLK_read_encode (u_int addr)
u_int RCUC_FMD_SHIFT_CLK_write_encode (u_int addr, u_int data0, u_int data1)
u_int RCUC_FMD_SAMPLE_CLK_read_encode (u_int addr)
u_int RCUC_FMD_SAMPLE_CLK_write_encode (u_int addr, u_int data0, u_int data1)
u_int RCUC_FMD_HOLD_DELAY_read_encode (u_int addr)
u_int RCUC_FMD_HOLD_DELAY_write_encode (u_int addr, u_int data0)
u_int RCUC_FMD_L1_TIMEOUT_read_encode (u_int addr)
u_int RCUC_FMD_L1_TIMEOUT_write_encode (u_int addr, u_int data0)
u_int RCUC_FMD_L2_TIMEOUT_read_encode (u_int addr)
u_int RCUC_FMD_L2_TIMEOUT_write_encode (u_int addr, u_int data0)
u_int RCUC_FMD_RANGE_read_encode (u_int addr)
u_int RCUC_FMD_RANGE_write_encode (u_int addr, u_int data0, u_int data1)
u_int RCUC_FMD_cmd_encode (u_int cmd, u_int addr)
u_int RCUC_FMD_CHG_DAC_cmd_encode ()
u_int RCUC_FMD_TRIGGER_cmd_encode ()
u_int RCUC_FMD_PULSER_MODE_cmd_encode (u_int enable)
u_int RCUC_FMD_L0_read_encode (u_int addr)
u_int RCUC_FMD_L1_read_encode (u_int addr)
u_int RCUC_FMD_encode (u_int instr)
void RCUC_lineno_increment ()
u_int RCUC_error (const char *format,...)
const char * RCUC_get_error ()
RCUC_setRCUC_compile (const char *filename, int trace, int output)
void RCUC_free (struct RCUC_set *s)

Variables

FILE * yyin
int yydebug
RCUC_set instructions = { 0, 0, 0 }
int RCUC_use_stderr = 0
char RCUC_last_error [1024]
char current_label [256]
u_int altro_data = 0
char current_input [1024]
u_int current_lineno = 0


Define Documentation

#define FMD_ADDR   5
 

#define LABEL_SIZE   256
 


Enumeration Type Documentation

enum FMD_Code
 

Enumeration values:
FMD_BIAS 
FMD_VFP 
FMD_VFS 
FMD_CAL_LVL 
FMD_SHIFT_CLK 
FMD_SAMPLE_CLK 
FMD_HOLD_DELAY 
FMD_L1_TIMEOUT 
FMD_L2_TIMEOUT 
FMD_RANGE 
FMD_CMD 
FMD_dummy_11 
FMD_L0 
FMD_L1 
FMD_dummy_14 
FMD_dummy_u 


Function Documentation

u_int RCUC_ALTRO_2nd_encode u_int  instr  ) 
 

u_int RCUC_ALTRO_read_encode u_int  instr  ) 
 

u_int RCUC_ALTRO_write_encode u_int  instr  ) 
 

u_int RCUC_current_address  ) 
 

u_int RCUC_Data_encode u_int  d,
u_int  offset,
u_int  range
 

long RCUC_find_label const char *  name  )  [static]
 

const char* RCUC_find_label_by_address u_int  addr  )  [static]
 

const char* RCUC_get_error  ) 
 

u_int RCUC_Instr_encode u_int  c  )  [static]
 

void RCUC_print const struct RCUC_set instr,
FILE *  file,
short  nums,
short  labs
 

int yyparse  ) 
 


Variable Documentation

u_int altro_data = 0 [static]
 

char current_input[1024] [static]
 

current_label
 

Internal cache variable used by the lexical analyser to set the next label.

u_int current_lineno = 0 [static]
 

struct RCUC_set instructions = { 0, 0, 0 } [static]
 

char RCUC_last_error[1024] [static]
 

int RCUC_use_stderr = 0 [static]
 

int yydebug
 

FILE* yyin
 

Top of page Last update Fri Jul 21 19:48:34 2006
Copyright © 2004 Christian Holm Created by DoxyGen 1.3.5