Initial version of donated sources by Avertec, 3.4p5.
[tas-yagle.git] / distrib / sources / tas / trc / trc.h
1 /****************************************************************************/
2 /* */
3 /* Chaine de CAO & VLSI Alliance */
4 /* */
5 /* Produit : TRC Version 1.01 */
6 /* Fichier : trc.h */
7 /* */
8 /* (c) copyright 1997-1998 Laboratoire LIP6 equipe ASIM */
9 /* Tous droits reserves */
10 /* Support : e-mail alliance-support@asim.lip6.fr */
11 /* */
12 /* Auteur(s) : Gregoire AVOT */
13 /* */
14 /****************************************************************************/
15
16 #ifndef TRCH
17 #define TRCH
18
19 #include <stdio.h>
20 #include <string.h>
21 #include <stdlib.h>
22 #include <math.h>
23 #include <ctype.h>
24 #include <time.h>
25 #include <limits.h>
26 #include <stdarg.h>
27 #ifdef Solaris
28 #include <ieeefp.h>
29 #endif
30 #include <alloca.h>
31 #ifdef Linux
32 #include <values.h>
33 #else
34 #include <float.h>
35 #endif
36
37 #include AVT_H
38 #include MUT_H
39 #include MLO_H
40 #include RCN_H
41 #include TRC_H
42 #include TLC_H
43 #include ELP_H
44 #include API_H
45 #include STM_H
46
47 #define RCX_VSSNI 0x52435811
48 // Défini un signal qu'on ne connait pas mais qu'on considère comme toujours
49 // actif.
50
51 #define RCX_LOCONINS 0x52435817
52 // Champs user des losig dans les instances. Pointe vers un connecteur externe.
53
54 #define RCX_LOCONONEPNODE 0x52435818
55 // Indique qu'il ne faut considérer que le premier pnode sur ce locon
56
57 /*************************************** FLAG *********************************/
58
59 #define MODELRCN ((long) 0) // Le champ view contient une vue RCN.
60 #define RCXCTCDONE ((long) 1) // Le test d'existance des CTC est fait.
61 #define SAVESIG ((long) 2) // Ce signal doit etre sauvegardé.
62 #define RCXERROR ((long) 3) // On ne sait pas calculer des TP sur le signal
63 #define RCXNODELAY ((long) 5) // On a pas de délai.
64 #define RCXHASLOOP ((long) 6) // Le réseau RC contient des boucles.
65 #define RCXHASNOLOOP ((long) 7) // Le réseau RC ne contient pas de boucles.
66 #define RCXCTKBASIC ((long) 8) // Utilise un model simple et robuste.
67 #define RCXHASNOGCTC ((long) 9) // Il n'y a pas de ctc globales sur la vue RCN.
68 #define RCXLOADCAPA ((long)10) // La charge doit être une simple capa.
69 #define RCXLOADPI ((long)11) // La charge doit être une cellule en pi.
70 #define RCXBREAKLOOP ((long)12) // Il faut casser les boucles sur le réseau RC.
71 #define RCXNOCTC ((long)13) // Il faut forcer les ctc à la masse.
72 #define RCXNOWIRE ((long)14) // Il ne faut pas prendre en compte les RC.
73 #define RCXTREATEDNI ((long)15) // On a passé le checkcrosstalk sur ce siganl.
74 #define RCXIGNORE ((long)16) // Le signal a été évalué par Genius. On y touche pas
75 #define RCXMLTDRIVER ((long)17) // Il y a plusieurs cones driver.
76 #define RCXFORCERC ((long)18) // Il y a plusieurs cones driver.
77
78 #define SETFLAG(m,b) (m = m | (1<<b))
79 #define CLEARFLAG(m,b) (m = m &(~(1<<b)))
80 #define GETFLAG(m,b) (m & (1<<b))
81
82 /******************************************************************************/
83
84 #define RCXFILEEXTENTION "rcx"
85
86
87 #define RCXFILECAR_GND ((char)'G')
88 #define RCXFILECAR_NI ((char)'N')
89 #define RCXFILECAR_XTALK ((char)'X')
90
91
92 // Si cette variable existe, effectue des tests de conformité des structures
93 // de données.
94
95 #define RCX_CHECK
96
97 #include "trc_prsrcx.h"
98 #include "trc_drvrcx.h"
99 #include "trc_rcx.h"
100 #include "trc_util.h"
101 #include "trc_rcxloins.h"
102 #include "trc_hier.h"
103 #include "trc_fifo.h"
104 #include "trc_delay.h"
105 #include "trc_awepolynomes.h"
106 #include "trc_awematrice.h"
107 #include "trc_awe.h"
108 #include "trc_cache.h"
109 #include "trc_noise.h"
110 #include "trc_delayloop.h"
111 #include "trc_capa.h"
112 #include "trc_spice.h"
113 #include "trc_rcxi.h"
114 #include "trc_awe_generalized_moment.h"
115 #include "trc_piload_generalized.h"
116
117 extern trc_fifo *FIFOAWE ;
118
119 #endif