Corrected a long-standing error in which ending text with a literal
[xcircuit.git] / examples / diffamp_test3.ps
blob2bcaf1dda4d90082b43235a9aac80f19f0c43a23
1 %!PS-Adobe-3.0
2 %%Title: src/xcircuit-3.1.26/examples/diffamp_test2
3 %%Creator: Xcircuit v3.1
4 %%CreationDate: Tue Nov 11 12:51:34 2003
5 %%Pages: 2
6 %%BoundingBox: 178 218 434 574
7 %%DocumentNeededResources: font Helvetica font Times-Roman font Symbol 
8 %%EndComments
9 %%BeginProlog
11 %  PostScript prolog for output from xcircuit
12 %  Version: 2.4
14 %  Electrical circuit (and otherwise general) drawing program
16 %  Written by Tim Edwards 8/5/93--1/15/03  (tim@bach.ece.jhu.edu)
17 %  The Johns Hopkins University
19 %%BeginResource: procset XCIRCproc 2.4 3
20 % supporting definitions --- these are the primary xcircuit types.
22 /XCIRCsave save def
23 /topmat matrix currentmatrix def
25 /fontslant { /slant exch def [1 0 slant 1 0 0] 
26     exch findfont exch makefont dup length dict /ndict exch def
27     { 1 index /FID ne { ndict 3 1 roll put } { pop pop } ifelse } forall
28     ndict definefont pop} def
29 /ul { dup type /stringtype eq showflag 1 eq and { gsave 
30    currentpoint topmat setmatrix 0 0 moveto 2 index stringwidth pop (_)
31    false charpath flattenpath pathbbox grestore exch pop 1 index
32    sub setlinewidth exch pop currentpoint 3 -1 roll add moveto 0
33    rlineto stroke moveto } if } def
34 /ol { dup type /stringtype eq showflag 1 eq and { gsave gsave
35    currentpoint topmat setmatrix 2 index stringwidth pop 3 index
36    true charpath flattenpath pathbbox grestore exch pop
37    exch pop topmat setmatrix (_) true charpath pathbbox grestore
38    exch pop 1 index sub setlinewidth exch pop currentpoint
39    exch 4 1 roll exch sub add moveto pop 0 rlineto stroke
40    moveto } if } def
41 /stW { gsave currentpoint newpath moveto true charpath flattenpath
42         pathbbox pop exch pop sub grestore } def
43 /Ts {mark Tabs aload pop counttomark 1 add array astore /Tabs exch def Tabs
44         0 currentpoint pop put} def
45 /Tbn {mark Tabs aload pop counttomark dup 2 add 1 roll cleartomark 1 sub} def
46 /Tb { 0 1 Tbn {Tabs exch get dup currentpoint pop lt
47         {currentpoint exch pop moveto exit} {pop} ifelse } for } def
48 /Tf { Tbn -1 0 {Tabs exch get dup currentpoint pop gt
49         {currentpoint exch pop moveto exit} {pop} ifelse } for } def
50 /qS { (aa) stW (a a) stW sub 4 div 0 Kn } def
51 /hS { qS qS } def
52 /pspc 0 def
53 /cf0 { scalefont setfont } bind def
54 /Kn { dup kY add /kY exch def rmoveto } bind def
55 /ss { /fscale fscale 0.67 mul def currentfont 0.67 cf0 0 fscale0 fscale mul
56         0.33 mul neg Kn} def
57 /Ss { /fscale fscale 0.67 mul def currentfont 0.67 cf0 0 fscale0 fscale mul
58         0.67 mul Kn } def
59 /ns { 0 kY neg Kn /kY 0 def /fscale 1.0 def xfont0 1.0 cf0 } def
60 /CR { ns 0 /Bline Bline fscale0 neg add def Bline moveto } def
61 /cf { dup type /realtype ne {1.0} if exch findfont exch kY 0 eq
62         { 40 mul dup /fscale0 exch def cf0 /xfont0 currentfont def}
63         {fscale0 mul fscale mul cf0} ifelse } def
64 /ctmk { counttomark dup 2 add -1 roll pop } bind def
65 /label { gsave translate 0 0 moveto dup scale neg /rotval exch def
66         /just exch def just 16 and 0 gt {gsave rotval rotate 0 1 dtransform
67         gsave pagemat setmatrix idtransform exch grestore 1 0 dtransform
68         gsave pagemat setmatrix idtransform exch grestore dup abs 1e-9 lt
69         {pop mul 0 gt} {3 1 roll pop pop 0 lt} ifelse grestore {-1 /rotval
70         rotval neg def /just just dup 3 and 1 ne {3 xor} if def} {1} ifelse
71         exch -1e-9 lt {-1 /rotval rotval neg def /just just dup 12 and
72         4 ne {12 xor} if def} {1} ifelse scale } if /showflag 0 def
73         /fspc pspc def /Bline 0 def /Tabs 0 array def /fscale 1.0 def
74         /kY 0 def gsave dup 1 add copy 0 exch 1 0 dtransform exch atan rotate
75         {exch dup type /stringtype eq {true charpath flattenpath} {dup type
76         /arraytype eq {exec} {12 string cvs true charpath flattenpath} ifelse}
77         ifelse} repeat pop pathbbox grestore 3 -1 roll pop 3 1 roll just
78         1 and 0 gt {just 2 and 0 gt {exch pop neg fspc sub} {exch sub 0.5
79         mul neg} ifelse} {pop neg fspc add} ifelse exch Bline exch just 4
80         and 0 gt {just 8 and 0 gt {exch pop neg fspc sub} {add 0.5 mul neg}
81         ifelse} {pop neg fspc add} ifelse rotval rotate Kn currentpoint
82         translate /showflag 1 def /Bline 0 def /Tabs 0 array def /fscale
83         1.0 def /kY 0 def {dup type /stringtype eq {show} {
84         dup type /arraytype eq {exec} {12 string cvs show} ifelse} ifelse}
85         repeat grestore } def
86 /pinlabel { 4 index 32 and 0 ne hlevel 0 eq or { /pspc 10 def label
87         /pspc 0 def } { pop pop pop pop pop {pop} repeat } ifelse } def
88 /pinglobal { pinlabel } def
89 /infolabel { pinlabel } def
91 /scb { setrgbcolor } bind def  /sce { defColor aload pop scb } bind def
92 /cRedef {/defColor currentcolor 3 array astore def} def
93 /setdefaults { aload length 2 idiv {currentdict 2 index known
94         {pop pop} {def} ifelse} repeat } bind def
95 /begingate {dup type /dicttype ne {1 dict} if begin     % default params
96         dup type /dicttype ne {1 dict} if begin         % instanced params
97         /hlevel hlevel 1 add def /defColor currentcolor sce 3 array
98         astore def gsave sce translate 0 0 moveto neg rotate dup abs scale
99         } bind def
100 /endgate { /hlevel hlevel 1 sub def grestore defColor aload pop cRedef
101         scb end end} bind def
103 /hlevel 0 def
104 /tmpa [1 0 0 1 0 0] def
105 /gar {8 8 true tmpa {<c0 c0 00 00 0c 0c 00 00>} imagemask} bind
106 {8 8 true tmpa {<30 70 60 02 03 07 06 20>} imagemask} bind
107 {8 8 true tmpa {<0c 1e 1e 0c c0 e1 e1 c0>} imagemask} bind
108 {8 8 true tmpa {<0f 0f 0f 0f f0 f0 f0 f0>} imagemask} bind
109 {8 8 true tmpa {<3f f3 e1 e1 f3 3f 1e 1e>} imagemask} bind
110 {8 8 true tmpa {<df cf 8f 9f fd fc f8 f9>} imagemask} bind
111 {8 8 true tmpa {<ff 3f 3f ff ff f3 f3 ff>} imagemask} bind 7 array astore def
112 /ppaint { gsave clip tmpa dup setmatrix pathbbox neg exch neg 4 2 roll
113   neg 4 -1 roll 2 copy gt {exch} if 8 div ceiling 8 mul 4 2 roll neg 2 copy
114   gt {exch} if 8 div ceiling 8 mul 3 -1 roll -8 5 -1 roll
115   { 3 index exch 5 exch put dup -8 3 index { 3 index
116   exch 4 exch put 3 index exec } for } for pop pop pop pop grestore } bind def
117 /setstyles {
118   currentlinewidth mul setlinewidth /style exch def
119   style 1 and 0 gt not {closepath} if
120   style 2 and 0 gt {currentlinewidth 4 mul dup 2 array astore 0 setdash} if
121   style 4 and 0 gt {0.5 currentlinewidth 4 mul 2 array astore 0 setdash} if
122   gsave style 16 and 0 gt { style 224 and -5 bitshift style 256 and 0 gt {
123   7 exch sub 8 div dup 1 exch sub currentrgbcolor 3 array astore
124   {3 copy mul add 4 1 roll pop} forall pop pop setrgbcolor eofill}
125   {dup 7 lt {gar exch get ppaint} {pop eofill} ifelse} ifelse}
126   {style 256 and 0 gt {1 setgray eofill} if} ifelse grestore style 8 and 0 gt 
127   style 512 eq or {newpath} {stroke} ifelse grestore} def     
129 /polygon { gsave /num exch def moveto num 1 sub {lineto} repeat setstyles } def
130 /xcarc   { gsave newpath arc setstyles } def
131 /elb { matrix currentmatrix 7 -1 roll 7 -1 roll translate 5 1 roll 4 -1 roll
132         3 index div 1 scale } def
133 /ele { 0 4 1 roll 0 4 1 roll } bind def
134 /ellipse { gsave elb newpath ele arc setmatrix setstyles } def
135 /pellip  { elb ele arc setmatrix } def
136 /nellip  { elb ele arcn setmatrix } def
137 /spline  { gsave moveto curveto setstyles } def
138 /polyc   { {lineto} repeat } bind def
139 /beginpath { gsave moveto } bind def
140 /endpath { setstyles } bind def
141 /bop     { 1 setlinecap 0 setlinejoin 6 setmiterlimit 0 0 0 scb cRedef } def
142 /psinsertion {/PSobj save def /showpage {} def bop rotate translate dup scale} def
143 /end_insert {PSobj restore} def
144 /setpagemat {/pagemat matrix currentmatrix def} def
145 /inchscale  {setpagemat 0.375 mul dup scale} def
146 /cmscale    {setpagemat 0.35433071 mul dup scale} def
148 %%EndResource
149 %%EndProlog
151 % XCircuit output starts here.
153 /ampl_test {
154 % ampl_test is_schematic
155 begingate
156 1.000 0.000 0.000 scb
157 (Vinn) {/Helvetica cf} 2 23 0 1.00 -224 192 pinlabel
158 (Vinp) {/Helvetica cf} 2 23 0 1.00 -224 96 pinlabel
159 (Voutn) {/Helvetica cf} 2 20 0 1.00 -32 96 pinlabel
160 (Voutp) {/Helvetica cf} 2 20 0 1.00 -32 192 pinlabel
161 (Vcmref) {/Helvetica cf} 2 25 0 1.00 -160 256 pinlabel
162 (Vbias) {/Helvetica cf} 2 29 0 1.00 -160 32 pinlabel
164 1 1.00 -224 96 -192 96 2 polygon
165 1 1.00 -224 192 -192 192 2 polygon
166 1 1.00 -128 192 -32 192 2 polygon
167 1 1.00 -128 96 -32 96 2 polygon
168 (-) {/Symbol cf} 2 5 0 1.00 -141 106 label
169 (+) {/Symbol cf} 2 5 0 1.00 -141 186 label
170 1 1.00 -32 144 -192 224 -192 64 -32 144 4 polygon
171 (-) {/Symbol cf} 2 5 0 1.00 -173 186 label
172 (+) {/Symbol cf} 2 5 0 1.00 -173 106 label
173 1 1.00 -160 80 -160 32 2 polygon
174 1 1.00 -160 208 -160 256 2 polygon
175 endgate
176 } def
178 /gnd {
179 % trivial
180 begingate
181 1 1.00 0 0 0 -32 2 polygon
182 1 1.00 -32 -32 32 -32 2 polygon
183 1 1.00 -18 -46 18 -46 2 polygon
184 1 1.00 -4 -60 4 -60 2 polygon
185 1.000 0.000 0.000 scb
186 (GND) {/Times-Roman cf} 2 1 0 1.00 0 0 pinglobal
187 endgate
188 } def
190 /source {
191 % hidden
192 begingate
193 1 1.00 0 0 32 0.00 360.00 xcarc
194 1 1.00 0 32 0 64 2 polygon
195 1 1.00 0 -32 0 -64 2 polygon
196 endgate
197 } def
199 /Vsource {
200 <</value (5)  >> begingate
201 1.00 0 0 0 source
202 (+) {/Symbol cf} 2 5 0 1.00 0 18 label
203 (-) {/Symbol cf} 2 5 0 1.00 0 -18 label
204 1.000 0.000 0.000 scb
205 (v.p) {/Times-Roman cf} 2 9 0 1.00 0 64 pinlabel
206 (v.m) {/Times-Roman cf} 2 13 0 1.00 0 -64 pinlabel
207 0.180 0.545 0.341 scb
208 mark value (spice:V%i %pv.p %pv.m ) {/Times-Roman cf} ctmk 20 0 1.00 -96 -160 
209 infolabel
211 mark (V) {hS} value {/Times-Roman cf} ctmk 20 0 1.00 48 0 label
212 endgate
213 } def
215 /dot {
216 % trivial
217 begingate
218 248 1.00 0 0 6 0.00 360.00 xcarc
219 1.000 0.000 0.000 scb
220 (x) {/Times-Roman cf} 2 29 0 1.00 0 0 pinlabel
221 endgate
222 } def
224 /jumper {
225 % trivial
226 begingate
227 1 1.00 0 0 10 -90.00 90.00 xcarc
228 1 1.00 0 10 0 16 2 polygon
229 1 1.00 0 -10 0 -16 2 polygon
230 1.000 0.000 0.000 scb
231 (a) {/Times-Roman cf} 2 1 0 1.00 0 16 pinlabel
232 (a) {/Times-Roman cf} 2 13 0 1.00 0 -16 pinlabel
233 endgate
234 } def
236 /circle {
237 % trivial
238 begingate
239 1 1.00 16 0 6 0.00 360.00 xcarc
240 1 1.00 0 0 10 0 2 polygon
241 1.000 0.000 0.000 scb
242 (out) {/Times-Roman cf} 2 4 0 1.00 16 0 pinlabel
243 (out) {/Times-Roman cf} 2 7 0 1.00 0 0 pinlabel
244 endgate
245 } def
247 %%Page: diffamp_test 1
248 %%PageOrientation: Landscape
249 /pgsave save def bop
250 % 1203 848 offsets
251 90 rotate 40 -652 translate
252 1.0000 inchscale
253 2.6000 setlinewidth
255 1.00 0 1027 832 ampl_test
256 1.00 0 867 736 gnd
257 1.00 0 867 800 Vsource
258 1.00 0 1059 800 <</value (2.5) >> Vsource
259 1 1.00 1059 864 1059 1088 867 1088 3 polygon
260 1.00 0 1059 736 gnd
261 1 1.00 803 928 755 928 755 864 851 864 4 polygon
262 1 1.00 883 864 1059 864 2 polygon
263 1.00 0 1059 864 dot
264 1.00 270 867 864 jumper
265 1 1.00 803 1024 723 1024 2 polygon
266 -1.00 0 723 1024 circle
267 1 1.00 995 928 1043 928 2 polygon
268 1 1.00 995 1024 1043 1024 2 polygon
269 1.00 270 1059 1024 jumper
270 1.00 270 1059 928 jumper
271 1 1.00 1075 1024 1139 1024 2 polygon
272 1 1.00 1075 928 1139 928 2 polygon
273 1.00 0 1139 1024 circle
274 1.00 0 1139 928 circle
275 1.000 0.000 0.000 scb
276 (Vinse) {/Helvetica cf} 2 23 0 1.00 707 1024 pinlabel
277 (Voutp) {/Helvetica cf} 2 20 0 1.00 1155 1024 pinlabel
278 (Voutm) {/Helvetica cf} 2 20 0 1.00 1155 928 pinlabel
280 1411 624 beginpath
281 1411 1168 1 polyc
282 1379 1168 32 0.00 90.00  arc
283 515 1200 1 polyc
285 515 1168 32 90.00 180.00  arc
286 483 624 1 polyc
287 515 624 32 180.00 270.00  arc
288 1379 592 
289 1 polyc
290 1379 624 32 270.00 360.00  arc
291 1 1.00 endpath
292 (Differential amplifier:  test) {/Helvetica cf} 2 25 0 1.00 947 1232 label
293 pgsave restore showpage
295 /pMOS {
296 <</p_yps1 -32 /p_xps1 16 /p_rot1 0 /p_yps 32 /p_xps 16 /p_rot 0 /width 
297 (3)  /length (2)  >> begingate
298 1 1.00 -44 -28 -44 28 2 polygon
299 1 1.00 -60 0 -64 0 2 polygon
300 1 1.00 0 -64 0 -28 -32 -28 -32 28 0 28 0 64 6 polygon
301 1 1.00 -52 0 8 0.00 360.00 xcarc
302 1.000 0.000 0.000 scb
303 (S) {/Times-Roman cf} 2 9 0 1.00 0 64 pinlabel
304 (D) {/Times-Roman cf} 2 13 0 1.00 0 -64 pinlabel
305 (G) {/Times-Roman cf} 2 7 0 1.00 -64 0 pinlabel
306 0.180 0.545 0.341 scb
307 (spice:M%i %pD %pG %pS Vdd pmos W=%v"3" L=%v"2") {/Times-Roman cf} 2 4 0 1.00 
308 -196 -139 infolabel
309 (sim:p %pG %pS %pD) {/Times-Roman cf} 2 4 0 1.00 -196 -187 infolabel
311 mark width (W=) {/Times-Roman cf} ctmk 20 p_rot 1.00 p_xps p_yps label
312 mark length (L=) {/Times-Roman cf} ctmk 20 p_rot1 1.00 p_xps1 p_yps1 label
313 endgate
314 } def
316 /Resistor {
317 <</p_rot 0 /p_jst 20 /value (1.0)  /units (k)  >> begingate
318 1 1.00 0 64 0 36 2 polygon
319 1 1.00 0 -64 0 -36 2 polygon
320 1 1.00 0 -36 14 -30 -14 -18 14 -6 -14 6 14 18 -14 30 0 36 8 polygon
321 1.000 0.000 0.000 scb
322 (r.1) {/Times-Roman cf} 2 9 0 1.00 0 64 pinlabel
323 (r.2) {/Times-Roman cf} 2 13 0 1.00 0 -64 pinlabel
324 0.180 0.545 0.341 scb
325 mark units value (spice:R%i %pr.1 %pr.2 ) {/Times-Roman cf} ctmk 4 0 1.00 -208 
326 -160 infolabel
327 (sim:R %pr.1 %pr.2) {/Times-Roman cf} 2 4 0 1.00 -208 -208 infolabel
329 mark (W) {/Symbol cf} units {hS} value {/Times-Roman cf} ctmk p_jst p_rot 1.00 
330 32 0 label
331 endgate
332 } def
334 /nMOS {
335 <</p_rot1 0 /p_yps1 -32 /p_xps1 16 /p_rot 0 /p_yps 32 /p_xps 16 /width 
336 3  /length 2 >> begingate
337 1 1.00 0 -64 0 -28 -32 -28 -32 28 0 28 0 64 6 polygon
338 1 1.00 -44 -28 -44 28 2 polygon
339 1 1.00 -44 0 -64 0 2 polygon
340 1.000 0.000 0.000 scb
341 (G) {/Times-Roman cf} 2 7 0 1.00 -64 0 pinlabel
342 (S) {/Times-Roman cf} 2 13 0 1.00 0 -64 pinlabel
343 (D) {/Times-Roman cf} 2 9 0 1.00 0 64 pinlabel
344 0.180 0.545 0.341 scb
345 (spice:M%i %pD %pG %pS GND nmos W=%v"3" L=%v"2") {/Times-Roman cf} 2 4 0 1.00 
346 -244 -139 infolabel
347 (sim:n %pG %pS %pD) {/Times-Roman cf} 2 4 0 1.00 -244 -187 infolabel
349 mark width (W=) {/Times-Roman cf} ctmk 20 p_rot 1.00 p_xps p_yps label
350 mark length (L=) {/Times-Roman cf} ctmk 20 p_rot1 1.00 p_xps1 p_yps1 label
351 endgate
352 } def
354 /pmos4 {
355 <</p_rot1 0 /p_yps1 -32 /p_xps1 16 /p_rot 0 /p_yps 32 /p_xps 16 /width 
356 (3)  /length (2)  >> begingate
357 1 1.00 -44 -28 -44 28 2 polygon
358 1 1.00 -60 0 -64 0 2 polygon
359 1 1.00 0 -64 0 -28 -32 -28 -32 28 0 28 0 64 6 polygon
360 1 1.00 -52 0 8 0.00 360.00 xcarc
361 1.000 0.000 0.000 scb
362 (S) {/Times-Roman cf} 2 9 0 1.00 0 64 pinlabel
363 (D) {/Times-Roman cf} 2 13 0 1.00 0 -64 pinlabel
364 (G) {/Times-Roman cf} 2 7 0 1.00 -64 0 pinlabel
365 0.180 0.545 0.341 scb
366 mark length ( L=) width (spice:M%i %pD %pG %pS %pB pmos W=) {/Times-Roman cf} 
367 ctmk 4 0 1.00 -324 -139 infolabel
368 (sim:p %pG %pS %pD) {/Times-Roman cf} 2 4 0 1.00 -196 -187 infolabel
370 mark width (W=) {/Times-Roman cf} ctmk 20 p_rot 1.00 p_xps p_yps label
371 mark length (L=) {/Times-Roman cf} ctmk 20 p_rot1 1.00 p_xps1 p_yps1 label
372 1 1.00 -32 0 16 0 2 polygon
373 1.000 0.000 0.000 scb
374 (B) {/Times-Roman cf} 2 20 0 1.00 16 0 pinlabel
375 endgate
376 } def
378 /vdd {
379 % trivial
380 begingate
381 1 1.00 0 0 0 32 2 polygon
382 1 1.00 -32 32 32 32 2 polygon
383 (Vdd) {/Times-Roman cf} 2 17 0 0.90 0 38 label
384 1.000 0.000 0.000 scb
385 (Vdd) {/Times-Roman cf} 2 13 0 1.00 0 0 pinglobal
386 endgate
387 } def
389 /halfamp {
390 begingate
391 1.00 0 128 320 <</p_yps1 32 /p_yps 64 /width (525.6) /length (1.8) >> pMOS
392 -1.00 0 -16 320 <</p_xps1 48 /p_yps1 32 /p_xps 48 /p_yps 64 /width (294) /length 
393 (2.4) >> pMOS
394 1 1.00 64 320 -544 320 2 polygon
395 1.00 0 128 384 vdd
396 1.00 0 -16 384 vdd
397 1.00 0 128 -96 <</p_yps -32 /p_yps1 -64 /width 387 /length 1.2 >> nMOS
398 1 1.00 128 -32 128 256 2 polygon
399 1 1.00 48 0 128 0 2 polygon
400 1.00 0 128 0 dot
401 1 1.00 -16 -112 -16 -160 2 polygon
402 1.00 0 -16 -160 gnd
403 1.00 0 128 -160 gnd
404 1 1.00 64 -96 -448 -96 2 polygon
405 1 1.00 -16 -64 -16 -80 2 polygon
406 1.00 0 -16 -96 jumper
407 -1.00 270 -224 16 <</p_yps -160 /p_xps1 -80 /p_yps1 -160 /p_rot1 270 /p_rot 270 /p_xps 
408 -112 /width (73.2) /length (35.2) >> pmos4
409 1 1.00 -224 0 -224 -96 2 polygon
410 1 1.00 -288 16 -288 -96 2 polygon
411 1 1.00 -160 16 -160 -96 2 polygon
412 1 1.00 -224 80 -224 160 -16 160 3 polygon
413 1.00 0 -16 160 dot
414 1.00 0 -160 -96 dot
415 1.00 0 -224 -96 dot
416 1.00 0 -288 -96 dot
417 1.00 0 -448 -96 dot
418 1 1.00 -448 32 -448 -192 2 polygon
419 -1.00 0 -448 96 <</p_xps1 -160 /p_yps1 48 /p_xps -160 /p_yps 80 /width (294) /length 
420 (3) >> pmos4
421 1 1.00 -384 96 -352 96 2 polygon
422 1.00 0 -352 96 circle
423 1.00 0 -448 -256 <</p_xps1 32 /p_xps 32 /p_yps1 32 /p_yps 64 /width 21 /length 
424 3 >> nMOS
425 1.00 0 -448 -320 gnd
426 1 1.00 -464 96 -560 96 2 polygon
427 1 1.00 -448 160 -560 160 2 polygon
428 1 1.00 -16 64 -16 256 2 polygon
429 -1.00 0 -16 0 <</p_yps1 0 /width (588) /length (1.2) >> pMOS
430 endgate
431 } def
433 %%Page: ampl_test 2
434 %%PageOrientation: Landscape
435 /pgsave save def bop
436 % ampl_test is_symbol
437 % 2295 762 offsets
438 90 rotate -107 -503 translate
439 0.6472 inchscale
440 2.6000 setlinewidth
442 1.00 0 2039 1146 <</p_yps1 32 /p_yps 64 /width (336) /length (1.8) >> pMOS
443 1.00 270 2423 1290 <</p_jst 17 /p_rot 90 /value (300) >> Resistor
444 -1.00 0 3159 410 <</p_yps 0 /width 21 /length 3 >> nMOS
445 1.00 0 2935 410 <</p_yps1 16 /p_yps 48 /width 21 /length 3 >> nMOS
446 1 1.00 3223 410 3223 474 3159 474 3159 698 4 polygon
447 1.00 0 2935 762 <</p_xps1 -144 /p_yps1 -96 /p_xps -144 /p_yps -64 /width (126) /length 
448 (1.2) >> pmos4
449 1 1.00 2935 474 2935 698 2 polygon
450 -1.00 0 3159 762 <</p_xps1 -144 /p_yps1 -80 /p_xps -144 /p_yps -48 /width (126) /length 
451 (1.2) >> pmos4
452 1 1.00 2951 762 3143 762 2 polygon
453 1 1.00 2935 826 3159 826 2 polygon
454 1.00 0 3047 826 dot
455 1 1.00 3047 762 3047 1082 2 polygon
456 1.00 0 3047 1146 <</p_yps1 0 /width (336) /length (1.8) >> pMOS
457 1.00 0 3047 1210 vdd
458 1.00 0 2935 346 gnd
459 1.00 0 3159 346 gnd
460 1 1.00 2935 474 2855 474 2855 410 3 polygon
461 1 1.00 2871 410 1991 410 2 polygon
462 1.00 0 2039 826 dot
463 1 1.00 2039 762 2039 1082 2 polygon
464 1 1.00 2871 762 2839 762 2 polygon
465 1 1.00 3223 762 3255 762 2 polygon
466 1.00 0 3255 762 circle
467 1.00 180 2839 762 circle
468 1.00 0 2039 1210 vdd
469 1 1.00 2983 1146 1975 1146 2 polygon
470 1.00 0 2935 474 dot
471 1.00 0 2855 410 dot
472 1.00 0 3047 762 dot
473 1.00 0 2039 762 dot
474 1.00 0 3159 474 dot
475 1.00 270 2039 986 jumper
476 1.00 270 2615 1290 <</p_jst 17 /p_rot 90 /value (300) >> Resistor
477 1 1.00 2487 1290 2551 1290 2 polygon
478 1 1.00 2519 1290 2519 1258 2 polygon
479 1 1.00 2359 1290 2327 1290 2327 1258 3 polygon
480 1 1.00 2679 1290 2711 1290 2711 1258 3 polygon
481 1.00 0 2519 1290 dot
482 1.00 90 2327 1258 circle
483 1.00 90 2519 1258 circle
484 1.00 90 2711 1258 circle
485 1.00 0 2599 666 halfamp
486 1 1.00 1415 986 1207 986 2 polygon
487 -1.00 0 1143 986 <</p_yps1 0 /width (42) /length (1.8) >> pMOS
488 1 1.00 1223 986 1223 922 1143 922 3 polygon
489 1.00 0 1143 1050 vdd
490 1.00 0 1223 986 dot
491 1 1.00 1143 922 1143 634 2 polygon
492 -1.00 0 967 1146 <</p_yps1 0 /width (84) /length (1.8) >> pMOS
493 1 1.00 1031 1146 1975 1146 2 polygon
494 1 1.00 1047 1146 1047 1082 967 1082 967 634 4 polygon
495 1.00 0 967 1210 vdd
496 1.00 0 1143 506 gnd
497 1.00 0 967 506 gnd
498 1.000 0.000 0.000 scb
499 (Vinn) {/Helvetica cf} 2 20 0 1.00 2263 762 pinlabel
500 (Vinp) {/Helvetica cf} 2 23 0 1.00 1815 762 pinlabel
502 1 1.00 2727 858 2775 858 2 polygon
503 1.00 0 2775 858 circle
504 1.00 0 2727 858 dot
505 1.000 0.000 0.000 scb
506 (Voutn) {/Helvetica cf} 2 20 0 1.00 2791 858 pinlabel
508 1 1.00 1351 858 1303 858 2 polygon
509 -1.00 0 1303 858 circle
510 1.000 0.000 0.000 scb
511 (Voutp) {/Helvetica cf} 2 23 0 1.00 1287 858 pinlabel
513 1.00 0 1351 858 dot
514 1.00 0 967 1082 dot
515 1.00 0 1047 1146 dot
516 1.00 0 1143 922 dot
517 1.000 0.000 0.000 scb
518 (Voutp) {/Helvetica cf} 2 29 0 1.00 2327 1242 pinlabel
519 (Voutn) {/Helvetica cf} 2 29 0 1.00 2711 1242 pinlabel
520 (Vcmin) {/Helvetica cf} 2 29 0 1.00 2519 1242 pinlabel
521 (Vcmin) {/Helvetica cf} 2 29 0 1.00 2823 762 pinlabel
522 (Vcmref) {/Helvetica cf} 2 20 0 1.00 3271 762 pinlabel
524 -1.00 0 1479 666 halfamp
525 1.00 0 1143 570 <</p_yps1 16 /p_yps 48 /width 21 /length 16.5 >> nMOS
526 1.00 0 967 570 <</p_yps1 32 /p_yps 64 /width 21 /length 16.5 >> nMOS
527 1 1.00 1079 570 855 570 2 polygon
528 -1.00 0 855 570 circle
529 1.000 0.000 0.000 scb
530 (Vbias) {/Helvetica cf} 2 23 0 1.00 839 570 pinlabel
531 pgsave restore showpage
533 %%Trailer
534 XCIRCsave restore
535 %%EOF