1 /*******************************************************************************
\r
2 * (c) Copyright 2008 Actel Corporation. All rights reserved.
\r
4 * Manufacturing Test Data data structures.
\r
5 * This header files specified the layout of the various data structures used
\r
6 * to store manaufacturing test data within eNVM.
\r
8 * SVN $Revision: 700 $
\r
9 * SVN $Date: 2009-03-13 13:22:03 +0000 (Fri, 13 Mar 2009) $
\r
21 * Analog block specifications
\r
23 #define NB_OF_QUADS 6
\r
24 #define NB_OF_ABPS_PER_QUAD 2
\r
25 #define TOTAL_NB_OF_ABPS (NB_OF_QUADS * NB_OF_ABPS_PER_QUAD)
\r
26 #define NB_OF_ABPS_RANGES 4
\r
27 #define NB_OF_ANALOG_MODULES 3
\r
28 #define NB_OF_OBD_MODES 2
\r
29 #define NB_OF_QUADS_PER_MODULE 2
\r
30 #define NB_OF_CHOPPING_OPTIONS 2
\r
31 #define NB_OF_DIRECT_INPUTS_PER_ADC 4
\r
33 #define NB_OF_ADC_CHANNELS 13
\r
35 /*------------------------------------------------------------------------------
\r
36 * mtd_global_settings_t
\r
37 *------------------------------------------------------------------------------
\r
38 * This typedef specifies the layout of the data structure holding the
\r
39 * manufacturing test data global settings.
\r
41 typedef struct __mtd_global_settings_t
\r
46 uint16_t sram_repair[8];
\r
52 } mtd_global_settings_t;
\r
54 /*------------------------------------------------------------------------------
\r
56 *------------------------------------------------------------------------------
\r
57 * The following data structure is used to store ABPS trimming information.
\r
59 typedef struct __mtd_abps_trim_t
\r
62 uint8_t negtrim_per4_per3b_gtdec;
\r
66 /*------------------------------------------------------------------------------
\r
67 * mtd_calibration_mc_t
\r
68 *------------------------------------------------------------------------------
\r
69 * The following data structure is used to store M and C calibration
\r
72 typedef struct __mtd_calibration_mc_t
\r
76 } mtd_calibration_mc_t;
\r
79 /*------------------------------------------------------------------------------
\r
81 *------------------------------------------------------------------------------
\r
82 * The following data structure is used to hold the full set of manufacturing
\r
85 typedef struct __mtd_data_t
\r
87 mtd_global_settings_t global_settings;
\r
88 mtd_abps_trim_t abps_trimming[NB_OF_QUADS][NB_OF_ABPS_PER_QUAD][NB_OF_ABPS_RANGES];
\r
89 uint8_t odb_trimming[NB_OF_ANALOG_MODULES][NB_OF_OBD_MODES][NB_OF_CHOPPING_OPTIONS];
\r
90 mtd_calibration_mc_t abps_calibration[NB_OF_QUADS][NB_OF_ABPS_PER_QUAD][NB_OF_ABPS_RANGES];
\r
91 mtd_calibration_mc_t obd_calibration[NB_OF_ANALOG_MODULES][NB_OF_OBD_MODES][NB_OF_CHOPPING_OPTIONS];
\r
92 mtd_calibration_mc_t cm_calibration[NB_OF_QUADS];
\r
93 mtd_calibration_mc_t tm_calibration[NB_OF_QUADS];
\r
94 mtd_calibration_mc_t quads_direct_input_cal[NB_OF_QUADS][2];
\r
95 mtd_calibration_mc_t adc_direct_input_cal[NB_OF_ANALOG_MODULES][NB_OF_DIRECT_INPUTS_PER_ADC];
\r
96 uint16_t comparators_offsets[NB_OF_QUADS];
\r
97 uint32_t ccc_delays_cal;
\r