Subversion Repositories Vertical

Rev

Rev 2 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 mjames 1
/*
11 mjames 2
 * $Header: c:\\cygwin\\cvsroot/Vert03/vertlib/printout.h,v 1.1.1.1 2003/11/04 23:34:57 mjames Exp $
2 mjames 3
 *
4
 * $Log: printout.h,v $
5
 * Revision 1.1.1.1  2003/11/04 23:34:57  mjames
6
 * Imported into local repositrory
7
 *
8
 * Revision 1.10  2002/09/09 10:10:49  mjames
9
 * Moved pin remapping function to pin ident editing function from
10
 * sorting pin name routine.
11
 *
12
 * Revision 1.9  2002/08/06 12:52:27  mjames
13
 * Merge in from latest version
14
 *
15
 * Revision 1.9  2002/04/10 14:29:10  mjames
16
 * Moved setting debug level to cmdutil.c
17
 *
18
 * Amended print external command to list all net names on socket pins
19
 * whether routed or not.
20
 *
21
 * Revision 1.8  2001/12/24 21:18:28  mjames
22
 * Declare ensure_reservation externally
23
 *
24
 * Revision 1.7  2001/10/31 22:20:14  mjames
25
 * Tidying up problematical comments caused by CVS
26
 * 'intelligent' comment guessing
27
 *
28
 * Revision 1.6  2001/10/11 16:10:16  mjames
29
 * Corrections to the SWAP command, and printout so that
30
 * WRITE net now outputs all chips in the design so that their generics
31
 * can be passed forward to the next phase.
32
 *
33
 * Revision 1.5  2001/07/09 15:38:55  mjames
34
 * Placed the version string in an independent file to save time on building
35
 * all of the variants of Vertical
36
 *
37
 * Revision 1.4  2001/06/06 12:10:18  mjames
38
 * Move from HPUX
39
 *
40
 * Revision 1.3  2001/02/01 21:41:45  mjames
41
 * Made the code begin to compile without TCL/TK
42
 *
43
 * Revision 1.2  2000/10/21 20:41:30  mjames
44
 * Added the 'write flatten' command that only lists the wires
45
 * created by making jumpered connections rather than listing
46
 * the jumpers themselves
47
 *
48
 * Revision 1.1.1.1  2000/10/19 21:58:39  mjames
49
 * Mike put it here
50
 *
51
 *
52
 * Revision 1.42  2000/10/04  10:37:12  10:37:12  mjames (Mike James)
53
 * Modified for Vertical2 : support COMPONENTS and SIGNALS
11 mjames 54
 *
2 mjames 55
 * Revision 1.42  2000/10/04  10:37:12  10:37:12  mjames (Mike James)
56
 * Part of Release PSAVAT01
11 mjames 57
 *
2 mjames 58
 * Revision 1.41  2000/10/02  11:04:18  11:04:18  mjames (Mike James)
59
 * new_vhdl
11 mjames 60
 *
2 mjames 61
 * Revision 1.40  2000/09/27  14:42:24  14:42:24  mjames (Mike James)
62
 * Part of Release Sep_27_ST_2000
11 mjames 63
 *
2 mjames 64
 * Revision 1.39  2000/09/21  10:15:55  10:15:55  mjames (Mike James)
65
 * Part of Release Sep21Alpha
11 mjames 66
 *
2 mjames 67
 * Revision 1.38  2000/09/21  09:47:29  09:47:29  mjames (Mike James)
68
 * Added code to deal with pin equivalents
11 mjames 69
 *
2 mjames 70
 * Revision 1.37  2000/08/25  09:57:20  09:57:20  mjames (Mike James)
71
 * Part of Release Aug25_alpha
11 mjames 72
 *
2 mjames 73
 * Revision 1.36  2000/08/16  08:57:36  08:57:36  mjames (Mike James)
74
 * Part of Release CD01_Aug2000
11 mjames 75
 *
2 mjames 76
 * Revision 1.35  2000/08/14  14:45:16  14:45:16  mjames (Mike James)
77
 * Part of Release Aug_14_2000
11 mjames 78
 *
2 mjames 79
 * Revision 1.34  2000/08/11  08:30:37  08:30:37  mjames (Mike James)
80
 * Part of Release Aug_11_2000
11 mjames 81
 *
2 mjames 82
 * Revision 1.33  2000/08/09  10:31:53  10:31:53  mjames (Mike James)
83
 * Part of Release Aug__9_2000
11 mjames 84
 *
2 mjames 85
 * Revision 1.32  2000/05/31  11:43:05  11:43:05  mjames (Mike James)
86
 * Part of Release May_31_2000
11 mjames 87
 *
2 mjames 88
 * Revision 1.31  2000/05/08  17:01:43  17:01:43  mjames (Mike James)
89
 * Part of Release May__8_2000
11 mjames 90
 *
2 mjames 91
 * Revision 1.30  2000/05/08  16:59:36  16:59:36  mjames (Mike James)
92
 * Part of Release May__8_2000
11 mjames 93
 *
2 mjames 94
 * Revision 1.29  2000/05/08  16:57:13  16:57:13  mjames (Mike James)
95
 * Part of Release May__8_2000
11 mjames 96
 *
2 mjames 97
 * Revision 1.28  2000/03/08  16:19:25  16:19:25  mjames (Mike James)
98
 * New version including PC
11 mjames 99
 *
2 mjames 100
 * Revision 1.25  2000/01/20  15:58:53  15:58:53  mjames (Mike James)
101
 * Part of Release R22
11 mjames 102
 *
2 mjames 103
 * Revision 1.24  99/12/22  11:15:34  11:15:34  mjames (Mike James)
104
 * Part of Release Dec_22_1999
11 mjames 105
 *
2 mjames 106
 * Revision 1.23  99/11/23  13:53:46  13:53:46  mjames (Mike James)
107
 * Added Verliog support and removed VHDL functions to a separate file
11 mjames 108
 *
2 mjames 109
 * Revision 1.21  98/07/14  13:25:55  13:25:55  mjames (Mike James)
110
 * Altered device printout to meet new requirements
11 mjames 111
 *
2 mjames 112
 * Revision 1.20  98/06/15  14:19:17  14:19:17  mjames (Mike James)
113
 * Added template printout functionality
11 mjames 114
 *
2 mjames 115
 * Revision 1.19  98/03/16  11:38:21  11:38:21  mjames (Mike James)
116
 * Added generics to printout listings
11 mjames 117
 *
2 mjames 118
 * Revision 1.18  98/02/11  11:27:04  11:27:04  mjames (Mike James)
119
 * Checked in for version 6.2a
11 mjames 120
 *
2 mjames 121
 * Revision 1.17  98/01/13  11:33:52  11:33:52  mjames (Mike James)
122
 * Added the bility to use a VHDL template file
123
 * containing $ENT$ and $ARCH$ in the position where one
124
 * wants the entity and architecture to be given.
11 mjames 125
 *
2 mjames 126
 * Revision 1.16  97/04/23  08:44:43  08:44:43  mjames (Mike James)
127
 * CHecked in for release rel23041997
11 mjames 128
 *
2 mjames 129
 * Revision 1.15  96/12/13  08:44:16  08:44:16  mjames (Mike James)
130
 * Update to v5.1, added Write ID , exact routing
11 mjames 131
 *
2 mjames 132
 * Revision 1.14  96/07/19  14:38:58  14:38:58  mjames (Mike James)
133
 * Update to give to PRL
134
 *
135
 * Revision 1.13  1996/07/12  15:52:12  mjames
136
 * Sorted out things like Alias and Jumpers
137
 * Work Correctly
138
 * Print COrrectly
139
 *
140
 * Revision 1.12  96/06/04  11:58:20  11:58:20  mjames (Mike James)
141
 * Added a lot of stuff to do with internal/external sockets,
142
 * Net renaming. Net jumpering by node ID as well as net name
143
 *
144
 * Revision 1.11  96/05/29  11:01:38  11:01:38  mjames (Mike James)
145
 * ,
146
 *
147
 * Revision 1.10  96/03/29  14:47:14  14:47:14  mjames (Mike James)
148
 * Added VHDL netlist writing to the capabilities of ACFREAD
149
 *
150
 * Revision 1.9  96/03/18  13:51:24  13:51:24  mjames (Mike James)
151
 * Real Revision 2.1
152
 *
153
 * Revision 1.6  96/02/13  09:13:37  09:13:37  mjames (Mike James)
154
 * Updated to be version 2.0 with net joining
155
 *
156
 * Revision 1.5  96/02/09  10:51:04  10:51:04  mjames (Mike James)
157
 * Added different behaviour for 'write id' and 'write name'
158
 * 'write id' now writes all pins including unused ones
159
 * 'write name' only writes used pins in the ACF file
160
 *
161
 *  .
162
 *
163
 *
164
 * Revision 1.4  96/02/08  15:28:38  15:28:38  mjames (Mike James)
165
 * First release
166
 *
167
 * Revision 1.3  96/02/07  16:01:39  16:01:39  mjames (Mike James)
168
 * Added correct RCS header
169
 *
170
 * Revision 1.2  96/02/07  15:50:54  15:50:54  mjames (Mike James)
171
 * Added RCS ident message
172
 *
173
 * Revision 1.1  96/01/10  13:15:16  13:15:16  mjames (Mike James)
174
 * Initial revision
175
 *  */
176
/* control flags controlling printout options */
11 mjames 177
#define PRINT_ALL           1
178
#define PRINT_TYPE          2 
179
#define PRINT_USABLE        4 /* if net is routable print its identifier */
180
#define PRINT_EXPAND_BUS    8 /* explode VHDL buses */
181
#define PRINT_GENERIC      16 /* list generic values */
182
#define PRINT_GROUP        32 /* print pin groups  */
183
#define PRINT_ROUTE_FLAGS  64 /* printout routing group flags  */
2 mjames 184
#define PRINT_AS_UNROUTED 128 /* printout pins as unrouted (Write fit)   */
11 mjames 185
#define PRINT_EQUIVALENT_PINS 256 /* Print pins that are equivalent : used in
186
                                    jumpering and pass through   */
187
#define NO_PRINT_PINS    512  /* print no pin information whatsoever */
188
#define PRINT_NET_NAMES 1024  /* print net name assignment on pins even if not routed here */
2 mjames 189
 
11 mjames 190
#define FLATTEN_JUMPERS  0
2 mjames 191
#define PRESERVE_JUMPERS 1
192
 
11 mjames 193
extern char * check_null_str(char * s );
194
extern void print_header(FILE * f,char * tool);
2 mjames 195
 
11 mjames 196
extern void print_VLOG_header(FILE * f,char * tool);
2 mjames 197
 
11 mjames 198
extern void list_database(FILE * f,int flatten_jumpers);
2 mjames 199
 
11 mjames 200
extern void list_components(FILE * f);
2 mjames 201
 
11 mjames 202
extern void list_devices(FILE * f,int listflags);
2 mjames 203
 
11 mjames 204
extern void list_extern_devices(FILE * f);
2 mjames 205
 
11 mjames 206
extern void list_extern_sockets(FILE * f);
2 mjames 207
 
11 mjames 208
extern void list_joined(FILE * f);
2 mjames 209
 
11 mjames 210
extern void print_device(FILE * f,socket_t * dev,int options);
2 mjames 211
 
11 mjames 212
extern void print_ACF_entity(FILE * f,char * entityname);
2 mjames 213
 
11 mjames 214
extern void print_pin_renames(FILE * f);
2 mjames 215
 
11 mjames 216
extern void produce_frb(FILE * f);
2 mjames 217
 
11 mjames 218
extern void list_jumper(FILE * f);
2 mjames 219
 
11 mjames 220
extern void list_alias(FILE * f);
2 mjames 221
 
11 mjames 222
extern void list_nets(FILE *f,net_t * cnet , int flatten_jumpers);
2 mjames 223
 
11 mjames 224
extern void  list_net_structure(FILE * f, net_t * cnet,net_t * root_net,int alias_depth,int flatten_jumpers);