GLAST/LAT > DAQ and FSW > FSW > Doxygen Index > PIG / V9-0-0

Constituent: pig_flying     Tag: sun-gcc


Interface   Data Structures   File List   Data Fields   Globals  

event.c File Reference

Implementation of the the event fabric configuration routines. More...

#include "PIG/PIG_msgs.h"
#include "state_p.h"
#include "pig_macro_p.h"
#include "LEM/msg_macros.h"
#include "LEM/defs.h"
#include "LEM/list.h"
#include <string.h>

Include dependency graph for event.c:


Functions

static void gem_ins (PIG_evt_cfg *cfg, PIG_ebmState *state)
 If indicated by the cfg structure, insert GEM to the event fabric.
static void epus_ins (PIG_evt_cfg *cfg, PIG_ebmState *state)
 Add the EPUs to the output mask.
static void sius_ins (PIG_evt_cfg *cfg, PIG_ebmState *state)
 Add the SIUs to the output mask.
static void tems_ins (PIG_evt_cfg *cfg, PIG_ebmState *state)
 Insert one or more tems into the event fabric.
static void acd_ins (PIG_evt_cfg *cfg, PIG_ebmState *state)
 Insert the AEM into the event fabric.
static void gem_ext (PIG_evt_cfg *cfg, PIG_ebmState *state)
 If indicated by the cfg structure, extract GEM from the event fabric.
static void epus_ext (PIG_evt_cfg *cfg, PIG_ebmState *state)
 Extract one or more EPUs from the event fabric.
static void sius_ext (PIG_evt_cfg *cfg, PIG_ebmState *state)
 Extract one or more SIUs from the event fabric.
static void tems_ext (PIG_evt_cfg *cfg, PIG_ebmState *state)
 Extract one or more TEMs from the event fabric.
static void acd_ext (PIG_evt_cfg *cfg, PIG_ebmState *state)
 Extract the ACD from the event fabric.
unsigned int PIG_get_ebmState (unsigned int *inputs, unsigned int *contributors, unsigned int *destinations)
 Return the EBM configuration masks.
unsigned PIG_insert_evt (LEM_micr *cr, PIG_evt_cfg *cfg)
 Insert one or more nodes into the event fabric.
unsigned PIG_extract_evt (LEM_micr *cr, PIG_evt_cfg *cfg)
 Extract one or more nodes from the event fabric.
unsigned PIG_verify_evt (LEM_micr *cr)
 This function is no longer supported, and returns an error.

Variables

static PIG_ebmState ebmState
 Cache of the EBM state registers.
static const unsigned epu_output [N_EPU] = {0x8, 0x10, 0x20}
 Masks for the three EPUs.
static const unsigned epu_input [N_EPU]
 Masks for the three EPUs.
static const unsigned siu_output [N_SIU] = {0x1, 0x2, 0x4}
 Masks for the three SIUs.
static const unsigned siu_input [N_SIU]
 Masks for the three SIUs.
static const unsigned tem_ebm_mask [N_TEM]
 Masks for the tems.

Detailed Description

Implementation of the the event fabric configuration routines.

Author:
James Swain - jswain@slac.stanford.edu

Function Documentation

void acd_ext PIG_evt_cfg cfg,
PIG_ebmState state
[inline, static]
 

Extract the ACD from the event fabric.

Parameters:
cfg Pointer to a PIG configuration structure
state Poitner to a structure holding the register state

void acd_ins PIG_evt_cfg cfg,
PIG_ebmState state
[inline, static]
 

Insert the AEM into the event fabric.

Parameters:
cfg Pointer to a PIG configuration structure
state Poitner to a structure holding the register state

void epus_ext PIG_evt_cfg cfg,
PIG_ebmState state
[inline, static]
 

Extract one or more EPUs from the event fabric.

Parameters:
cfg Pointer to a PIG configuration structure
state Pointer to a structure for caching the state of the EBM

void epus_ins PIG_evt_cfg cfg,
PIG_ebmState state
[inline, static]
 

Add the EPUs to the output mask.

Parameters:
cfg Pointer to a PIG configuration structure
state Pointer to a structure for caching the state of the EBM registers

void gem_ext PIG_evt_cfg cfg,
PIG_ebmState state
[inline, static]
 

If indicated by the cfg structure, extract GEM from the event fabric.

Parameters:
cfg Pointer to a PIG configuration structure
state Pointer to a structure for caching the state of the EBM registers

void gem_ins PIG_evt_cfg cfg,
PIG_ebmState state
[inline, static]
 

If indicated by the cfg structure, insert GEM to the event fabric.

Parameters:
cfg Pointer to a PIG configuration structure
state Pointer to a structure for caching the state of the PDU/CRU registers

unsigned PIG_extract_evt LEM_micr *  cr,
PIG_evt_cfg cfg
 

Extract one or more nodes from the event fabric.

Parameters:
cfg Pointer to a PIG configuration structure
cr Pointer to a structure holding correctly aligned mutli-item command and response lists
Returns:
one of the PIG_msgs

unsigned PIG_get_ebmState unsigned int *  inputs,
unsigned int *  contributors,
unsigned int *  destinations
 

Return the EBM configuration masks.

Parameters:
inputs Source processor input enables
contributors EBM scheduler contributor enables
destinations Broadcast masks (round-robin, ...)
Return values:
PIG_INMUD Success

unsigned PIG_insert_evt LEM_micr *  cr,
PIG_evt_cfg cfg
 

Insert one or more nodes into the event fabric.

Parameters:
cfg Pointer to a PIG configuration structure
cr Pointer to a structure holding correctly aligned mutli-item command and response lists
Returns:
one of the PIG_msgs

unsigned PIG_verify_evt LEM_micr *  cr  ) 
 

This function is no longer supported, and returns an error.

Parameters:
cr Ignored
Returns:
PIG_NOSUP

void sius_ext PIG_evt_cfg cfg,
PIG_ebmState state
[inline, static]
 

Extract one or more SIUs from the event fabric.

Parameters:
cfg Pointer to a PIG configuration structure
state Pointer to a structure for caching the state of the EBM

void sius_ins PIG_evt_cfg cfg,
PIG_ebmState state
[inline, static]
 

Add the SIUs to the output mask.

Parameters:
cfg Pointer to a PIG configuration structure
state Pointer to a structure for caching the state of the EBM registers

void tems_ext PIG_evt_cfg cfg,
PIG_ebmState state
[inline, static]
 

Extract one or more TEMs from the event fabric.

Parameters:
cfg Pointer to a PIG configuration structure
state Pointer to a structure for caching the state of the EBM

void tems_ins PIG_evt_cfg cfg,
PIG_ebmState state
[inline, static]
 

Insert one or more tems into the event fabric.

Parameters:
cfg Pointer to a PIG configuration structure
state Pointer to a structure for caching the state of the EBM


Variable Documentation

epu_input [static]
 

Initial value:

 {EBM_MASK_EPU_0,
                                          EBM_MASK_EPU_1,
                                          EBM_MASK_EPU_2}
Masks for the three EPUs.

siu_input [static]
 

Initial value:

 {EBM_MASK_SIU_EXT,
                                          EBM_MASK_SIU_0,
                                          EBM_MASK_SIU_1}
Masks for the three SIUs.

tem_ebm_mask [static]
 

Initial value:

 {EBM_MASK_TEM_0,
                                             EBM_MASK_TEM_1,
                                             EBM_MASK_TEM_2,
                                             EBM_MASK_TEM_3,
                                             EBM_MASK_TEM_4,
                                             EBM_MASK_TEM_5,
                                             EBM_MASK_TEM_6,
                                             EBM_MASK_TEM_7,
                                             EBM_MASK_TEM_8,
                                             EBM_MASK_TEM_9,
                                             EBM_MASK_TEM_A,
                                             EBM_MASK_TEM_B,
                                             EBM_MASK_TEM_C,
                                             EBM_MASK_TEM_D,
                                             EBM_MASK_TEM_E,
                                             EBM_MASK_TEM_F}
Masks for the tems.


Generated on Thu Oct 26 13:56:31 2006 by  doxygen 1.4.4