-
Notifications
You must be signed in to change notification settings - Fork 6
/
marble_i2c.eps
363 lines (349 loc) · 16 KB
/
marble_i2c.eps
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
%!PS-Adobe-3.0 EPSF-3.0
%%Title: marble_i2c.eps
%%Creator: XCircuit v3.9 rev73
%%CreationDate: Thu May 28 14:42:35 2020
%%Pages: 1
%%BoundingBox: 68 68 736 509
%%DocumentNeededResources: font Helvetica Times-Roman
%%EndComments
%%BeginProlog
%
% PostScript prolog for output from xcircuit
% Version: 3.9
%
% Electrical circuit (and otherwise general) drawing program
%
% Written by Tim Edwards 8/5/93--4/12/16 ([email protected])
% The Johns Hopkins University (1993-2004)
% MultiGiG, Inc. (2004-2012)
% Open Circuit Design (2012-2016)
%
%%BeginResource: procset XCIRCproc 3.9 1
%
% supporting definitions --- these are the primary xcircuit types.
/XCIRCsave save def
/topmat matrix currentmatrix def
/fontslant { /slant exch def [1 0 slant 1 0 0]
exch findfont exch makefont dup length dict /ndict exch def
{ 1 index /FID ne { ndict 3 1 roll put } { pop pop } ifelse } forall
ndict definefont pop} def
/ul { count 0 gt { dup type /stringtype eq showflag 1 eq and { gsave
currentpoint topmat setmatrix 0 0 moveto 2 index stringwidth pop (_)
false charpath flattenpath pathbbox grestore exch pop 1 index
sub setlinewidth exch pop currentpoint 3 -1 roll add moveto 0
rlineto stroke moveto } if } if } def
/ol { count 0 gt { dup type /stringtype eq showflag 1 eq and { gsave gsave
currentpoint topmat setmatrix 2 index stringwidth pop 3 index
true charpath flattenpath pathbbox grestore exch pop
exch pop topmat setmatrix (_) true charpath pathbbox grestore
exch pop 1 index sub setlinewidth exch pop currentpoint
exch 4 1 roll exch sub add moveto pop 0 rlineto stroke
moveto } if } if } def
/stW { gsave currentpoint newpath moveto true charpath flattenpath
pathbbox pop exch pop sub grestore } def
/Ts {mark Tabs aload pop counttomark 1 add array astore /Tabs exch def Tabs
0 currentpoint pop put} def
/Tbn {mark Tabs aload pop counttomark dup 2 add 1 roll cleartomark 1 sub} def
/Tb { 0 1 Tbn {Tabs exch get dup currentpoint pop lt
{currentpoint exch pop moveto exit} {pop} ifelse } for } def
/Tf { Tbn -1 0 {Tabs exch get dup currentpoint pop gt
{currentpoint exch pop moveto exit} {pop} ifelse } for } def
/qS { (aa) stW (a a) stW sub 4 div 0 Kn } def
/hS { qS qS } def
/pspc 0 def
/cf0 { scalefont setfont } bind def
/Kn { dup kY add /kY exch def rmoveto } bind def
/ss { /fscale fscale 0.67 mul def currentfont 0.67 cf0 0 fscale0 fscale mul
0.33 mul neg Kn} def
/Ss { /fscale fscale 0.67 mul def currentfont 0.67 cf0 0 fscale0 fscale mul
0.67 mul Kn } def
/ns { 0 kY neg Kn /kY 0 def /fscale 1.0 def xfont0 1.0 cf0 } def
/MR { /twidth exch def } def
/CRx { } def
/CR { ns 0 /Bline Bline fscale0 neg add def Bline moveto CRx } def
/cf { dup type /realtype ne {1.0} if exch findfont exch kY 0 eq
{ 40 mul dup /fscale0 exch def cf0 /xfont0 currentfont def}
{fscale0 mul fscale mul cf0} ifelse } def
/ctmk { counttomark dup 2 add -1 roll pop } bind def
/label { gsave translate 0 0 moveto dup scale neg
/rotval exch def /twidth 100000 def /just exch def just 128 and
0 gt {/mshow {pop} def} {/mshow {show} def} ifelse just 16 and 0
gt {gsave rotval rotate 0 1 dtransform gsave pagemat setmatrix
idtransform exch grestore 1 0 dtransform gsave pagemat setmatrix
idtransform exch grestore dup abs 1e-9 lt {pop mul 0 gt} {3 1 roll
pop pop 0 lt} ifelse grestore {-1 /rotval rotval neg def /just just
dup 3 and 1 ne {3 xor} if def} {1} ifelse exch -1e-9 lt {-1 /rotval
rotval neg def /just just dup 12 and 4 ne {12 xor} if def} {1}
ifelse scale } if /showflag 0 def /fspc pspc def /Bline 0 def
/numlines 0 def /padding 0 array def /Tabs 0 array def
/fscale 1.0 def /kY 0 def gsave /CRx { linewid padding
aload pop numlines 1 add dup /numlines exch def array astore
/padding exch def /linewid 0 def } def dup 1 add copy dup 1 0
dtransform exch atan rotate {exch dup type /stringtype eq {gsave dup
gsave newpath 0 0 moveto true charpath flattenpath pathbbox pop exch
pop exch pop grestore currentpoint pop add dup /linewid exch def twidth
ge {grestore CR exch 1 add dup 2 add {CR} exch 1 roll exch} {grestore}
ifelse true charpath flattenpath} {dup type /arraytype eq {exec} {12
string cvs true charpath flattenpath} ifelse} ifelse} repeat
CRx /CRx {padding aload pop just 1280 and 0 gt {blockwid exch sub just
1024 and 0 gt {0.5 mul} if} {pop 0} ifelse 0 rmoveto numlines 1 sub
dup /numlines exch def array astore /padding exch def} def exch pop
pathbbox grestore 4 copy pop exch pop exch sub /blockwid exch def
3 -1 roll pop 3 1 roll just 1 and 0 gt {just 2 and
0 gt {exch pop neg fspc sub} {exch sub 0.5 mul neg} ifelse} {pop neg
fspc add} ifelse exch Bline exch just 4 and 0 gt {just 8 and 0 gt
{exch pop neg fspc sub} {add 0.5 mul neg} ifelse} {pop neg fspc add}
ifelse rotval rotate Kn currentpoint translate /showflag 1 def /Bline
0 def /Tabs 0 array def /fscale 1.0 def /kY 0 def CRx {dup type
/stringtype eq {mshow} {dup type /arraytype eq {exec} {12 string cvs
mshow} ifelse} ifelse} repeat grestore endclip} def
/pinlabel { 4 index 32 and 0 ne hlevel 0 eq or { /pspc 10 def label
/pspc 0 def } { pop pop pop pop pop {pop} repeat } ifelse } def
/pinglobal { pinlabel } def
/infolabel { pinlabel } def
/graphic { gsave 4 index cvx exec /DataSource get resetfile translate 0 0
moveto neg rotate dup scale cvx exec image grestore endclip} def
/scb { setrgbcolor } bind def /sce { defColor aload pop scb } bind def
/cRedef {/defColor currentcolor 3 array astore def} def
/begingate {dup type /dicttype ne {1 dict} if begin % default params
dup type /dicttype ne {1 dict} if begin % instanced params
/hlevel hlevel 1 add def /defColor currentcolor sce 3 array astore
def gsave sce translate 0 0 moveto neg rotate dup type /nametype
eq not { dup abs currentlinewidth exch div setlinewidth } { pop }
ifelse dup abs scale clipped 1 and 1 eq {/clipped clipped 1 add def}
if} bind def
/endgate { /hlevel hlevel 1 sub def grestore defColor aload pop cRedef
scb end end endclip} bind def
/hlevel 0 def
/endclip {clipped 1 and 1 eq {grestore /clipped clipped 1 sub def} if} def
/tmpa [1 0 0 1 0 0] def
/gar {8 8 true tmpa {<c0 c0 00 00 0c 0c 00 00>} imagemask} bind
{8 8 true tmpa {<30 70 60 02 03 07 06 20>} imagemask} bind
{8 8 true tmpa {<0c 1e 1e 0c c0 e1 e1 c0>} imagemask} bind
{8 8 true tmpa {<0f 0f 0f 0f f0 f0 f0 f0>} imagemask} bind
{8 8 true tmpa {<3f f3 e1 e1 f3 3f 1e 1e>} imagemask} bind
{8 8 true tmpa {<df cf 8f 9f fd fc f8 f9>} imagemask} bind
{8 8 true tmpa {<ff 3f 3f ff ff f3 f3 ff>} imagemask} bind 7 array astore def
/ppaint { gsave clip tmpa dup setmatrix pathbbox neg exch neg 4 2 roll
neg 4 -1 roll 2 copy gt {exch} if 8 div ceiling 8 mul 4 2 roll neg 2 copy
gt {exch} if 8 div ceiling 8 mul 3 -1 roll -8 5 -1 roll
{ 3 index exch 5 exch put dup -8 3 index { 3 index
exch 4 exch put 3 index exec } for } for pop pop pop pop grestore } bind def
/setstyles {
currentlinewidth mul setlinewidth /style exch def style 2048 and 0 gt
clipped 1 and 0 eq and {clip newpath /clipped clipped 1 add def} {
style 1 and 0 gt not {closepath} if
style 1024 and 0 gt {2 setlinecap 0 setlinejoin} if
style 2 and 0 gt {currentlinewidth 4 mul dup 2 array astore 0 setdash} if
style 4 and 0 gt {0.5 currentlinewidth 4 mul 2 array astore 0 setdash} if
gsave style 16 and 0 gt { style 224 and -5 bitshift style 256 and 0 gt {
7 exch sub 8 div dup 1 exch sub currentrgbcolor 3 array astore
{3 copy mul add 4 1 roll pop} forall pop pop setrgbcolor eofill}
{dup 7 lt {gar exch get ppaint} {pop eofill} ifelse} ifelse}
{style 256 and 0 gt {1 setgray eofill} if} ifelse grestore style 8 and 0 gt
style 512 eq or {newpath} {stroke} ifelse grestore endclip} ifelse} def
/addtoy {exch dup dup 2 mul 3 add 1 roll -1 1 { 4 1 roll dup 4 1 roll add
4 -1 roll 2 mul 1 add index 2 mul 2 add 2 roll} for pop} def
/addtoy1 {1 exch addtoy pop} def
/addtoy3 {3 exch addtoy pop} def
/addtoy4 {4 exch addtoy pop} def
/addtox {exch dup dup 2 mul 3 add 1 roll -1 1 { 4 1 roll dup 4 1 roll 3 -1 roll
add exch 4 -1 roll 2 mul 1 add index 2 mul 2 add 2 roll} for pop} def
/addtox1 {1 exch addtox pop} def
/addtox3 {3 exch addtox pop} def
/addtox4 {4 exch addtox pop} def
/polygon { gsave /num exch def moveto num 1 sub {lineto} repeat setstyles } def
/xcarc { gsave newpath arc setstyles } def
/elb { matrix currentmatrix 7 -1 roll 7 -1 roll translate 5 1 roll 4 -1 roll
3 index div 1 scale } def
/ele { 0 4 1 roll 0 4 1 roll } bind def
/ellipse { gsave elb newpath ele arc setmatrix setstyles } def
/pellip { elb ele arc setmatrix } def
/nellip { elb ele arcn setmatrix } def
/spline { gsave moveto curveto setstyles } def
/polyc { {lineto} repeat } bind def
/beginpath { gsave moveto } bind def
/endpath { setstyles } bind def
/bop { 1 setlinecap 2 setlinejoin 6 setmiterlimit 0 0 0 scb cRedef
/clipped 0 def} def
/psinsertion {/PSobj save def /showpage {} def /setpagedevice {pop} def bop
rotate translate dup scale} def
/end_insert {PSobj restore} def
/setpagemat {/pagemat matrix currentmatrix def} def
/inchscale {setpagemat 0.375 mul dup scale} def
/cmscale {setpagemat 0.35433071 mul dup scale} def
%%EndResource
%%EndProlog
% XCircuit output starts here.
%%BeginSetup
/generic::arrowhead {
% nonetwork
begingate
8 -28 beginpath
3 -18 3 -15 0 0 curveto
-3 -15 -3 -18 -8 -28 curveto
-2 -26 2 -26 8 -28 curveto
249
1.000 endpath
endgate
} def
/generic::dot {
% trivial
begingate
248 1.000 0 0 6 0.000 360.000 xcarc
1.000 0.000 0.000 scb
(x) {/Times-Roman cf} 2 29 -0.000 1.000 0 0 pinlabel
endgate
} def
%%EndSetup
%%Page: marble_i2c 1
%%PageOrientation: Portrait
/pgsave save def bop
1.0000 inchscale
2.6000 setlinewidth 960 80 translate
1 1.000 -592 432 -304 432 2 polygon
1.000 90.000 -288 432 generic::arrowhead
(FPGA) {/Helvetica cf} 2 17 0.000 0.800 -416 440 label
-1.000 270.000 -608 432 generic::arrowhead
0 1.000 -768 960 -768 736 -608 736 -608 960 4 polygon
(U2) {/Helvetica cf} 2 17 0.000 1.000 -688 976 label
(uC) {/Helvetica cf} 2 21 0.000 1.000 -688 848 label
(U1) {/Helvetica cf} 2 17 0.000 1.000 -688 528 label
0 1.000 -768 512 -768 352 -608 352 -608 512 4 polygon
1 1.000 -592 784 -512 784 -512 432 3 polygon
1.000 0.000 -512 432 generic::dot
-1.000 270.000 -608 784 generic::arrowhead
(PM) {/Helvetica cf} 2 17 0.000 0.800 -416 856 label
-1.000 270.000 -608 848 generic::arrowhead
0 1.000 -288 512 -288 112 -32 112 -32 512 4 polygon
(U5) {/Helvetica cf} 2 17 0.000 1.000 -160 528 label
(TCA9548) {/Helvetica cf} 2 21 0.000 1.000 -176 432 label
1 1.000 -16 480 176 480 2 polygon
-1.000 270.000 -32 480 generic::arrowhead
(FMC1) {/Helvetica cf} 2 17 0.000 0.600 80 488 label
(0) {/Helvetica cf} 2 23 0.000 0.800 -48 480 label
1 1.000 -16 432 176 432 2 polygon
-1.000 270.000 -32 432 generic::arrowhead
(1) {/Helvetica cf} 2 23 0.000 0.800 -48 432 label
(FMC2) {/Helvetica cf} 2 17 0.000 0.600 80 440 label
1 1.000 -16 384 176 384 2 polygon
-1.000 270.000 -32 384 generic::arrowhead
(2) {/Helvetica cf} 2 23 0.000 0.800 -48 384 label
(SFP1) {/Helvetica cf} 2 17 0.000 0.600 80 392 label
1 1.000 -16 336 176 336 2 polygon
-1.000 270.000 -32 336 generic::arrowhead
(3) {/Helvetica cf} 2 23 0.000 0.800 -48 336 label
(SFP4) {/Helvetica cf} 2 17 0.000 0.600 80 344 label
1 1.000 -16 288 176 288 2 polygon
-1.000 270.000 -32 288 generic::arrowhead
(4) {/Helvetica cf} 2 23 0.000 0.800 -48 288 label
(SFP3) {/Helvetica cf} 2 17 0.000 0.600 80 296 label
1 1.000 -16 240 176 240 2 polygon
-1.000 270.000 -32 240 generic::arrowhead
(5) {/Helvetica cf} 2 23 0.000 0.800 -48 240 label
(SFP2) {/Helvetica cf} 2 17 0.000 0.600 80 248 label
-1.000 270.000 -32 192 generic::arrowhead
(6) {/Helvetica cf} 2 23 0.000 0.800 -48 192 label
(APP) {/Helvetica cf} 2 17 0.000 0.600 80 200 label
1 1.000 -16 144 176 144 2 polygon
-1.000 270.000 -32 144 generic::arrowhead
(7) {/Helvetica cf} 2 23 0.000 0.800 -48 144 label
(HDMI) {/Helvetica cf} 2 17 0.000 0.600 80 152 label
(\(includes reset\)) {/Helvetica cf} 2 17 0.000 0.800 -432 400 label
(0xe0) {/Helvetica cf} 2 21 0.000 0.800 -176 368 label
0 1.000 32 1224 32 1112 192 1112 192 1224 4 polygon
(U28) {/Helvetica cf} 2 17 0.000 1.000 112 1240 label
(LM75) {/Helvetica cf} 2 21 0.000 1.000 112 1184 label
(0x96) {/Helvetica cf} 2 21 0.000 0.800 112 1136 label
0 1.000 32 1016 32 904 192 904 192 1016 4 polygon
(U29) {/Helvetica cf} 2 17 0.000 1.000 112 1032 label
(LM75) {/Helvetica cf} 2 21 0.000 1.000 112 976 label
(0x92) {/Helvetica cf} 2 21 0.000 0.800 112 928 label
0 1.000 352 1224 352 1112 576 1112 576 1224 4 polygon
(U27) {/Helvetica cf} 2 17 0.000 1.000 456 1240 label
(MAX6639) {/Helvetica cf} 2 21 0.000 1.000 464 1184 label
(0x58) {/Helvetica cf} 2 21 0.000 0.800 464 1136 label
0 1.000 352 1016 352 904 576 904 576 1016 4 polygon
(U35) {/Helvetica cf} 2 17 0.000 1.000 464 1032 label
(XRP7724) {/Helvetica cf} 2 21 0.000 1.000 464 976 label
(0x50) {/Helvetica cf} 2 21 0.000 0.800 464 928 label
0 1.000 448 776 448 664 608 664 608 776 4 polygon
(U43) {/Helvetica cf} 2 17 0.000 1.000 528 792 label
(INA219) {/Helvetica cf} 2 21 0.000 1.000 528 736 label
(0x84) {/Helvetica cf} 2 21 0.000 0.800 528 688 label
0 1.000 448 360 448 248 608 248 608 360 4 polygon
(U17) {/Helvetica cf} 2 17 0.000 1.000 528 376 label
(INA219) {/Helvetica cf} 2 21 0.000 1.000 528 320 label
(0x80) {/Helvetica cf} 2 21 0.000 0.800 528 272 label
0 1.000 768 568 768 456 992 456 992 568 4 polygon
(U34) {/Helvetica cf} 2 17 0.000 1.000 880 584 label
(PCA9555) {/Helvetica cf} 2 21 0.000 1.000 880 528 label
(0x44) {/Helvetica cf} 2 21 0.000 0.800 880 480 label
0 1.000 768 360 768 248 992 248 992 360 4 polygon
(U39) {/Helvetica cf} 2 17 0.000 1.000 880 376 label
(PCA9555) {/Helvetica cf} 2 21 0.000 1.000 880 320 label
(0x42) {/Helvetica cf} 2 21 0.000 0.800 880 272 label
1.000 90.000 32 1168 generic::arrowhead
1.000 90.000 352 1168 generic::arrowhead
1.000 90.000 352 960 generic::arrowhead
1.000 90.000 32 960 generic::arrowhead
1 1.000 336 1168 272 1168 272 848 -592 848 4 polygon
1 1.000 336 960 272 960 2 polygon
1 1.000 32 960 -48 960 2 polygon
1 1.000 16 1168 -48 1168 -48 848 3 polygon
1.000 0.000 -48 848 generic::dot
1.000 0.000 -48 960 generic::dot
1.000 0.000 272 960 generic::dot
1.000 90.000 768 512 generic::arrowhead
1.000 90.000 768 304 generic::arrowhead
1.000 90.000 448 304 generic::arrowhead
1.000 90.000 448 720 generic::arrowhead
1 1.000 752 720 688 720 688 192 -16 192 4 polygon
1 1.000 752 304 688 304 2 polygon
1 1.000 432 304 368 304 2 polygon
1 1.000 432 720 368 720 368 192 3 polygon
1.000 0.000 368 192 generic::dot
1.000 0.000 368 304 generic::dot
1.000 0.000 688 304 generic::dot
1.000 90.000 192 480 generic::arrowhead
1.000 90.000 192 432 generic::arrowhead
1.000 90.000 192 384 generic::arrowhead
1.000 90.000 192 336 generic::arrowhead
1.000 90.000 192 288 generic::arrowhead
1.000 90.000 192 240 generic::arrowhead
1.000 90.000 192 144 generic::arrowhead
(FPGA) {/Helvetica cf} 2 21 0.000 1.000 -688 432 label
(J3) {/Helvetica cf} 2 20 0.000 0.800 200 384 label
(J7) {/Helvetica cf} 2 20 0.000 0.800 200 240 label
(J6) {/Helvetica cf} 2 20 0.000 0.800 200 288 label
(J8) {/Helvetica cf} 2 20 0.000 0.800 200 336 label
(J5) {/Helvetica cf} 2 20 0.000 0.800 200 480 label
(J2) {/Helvetica cf} 2 20 0.000 0.800 200 432 label
(J15) {/Helvetica cf} 2 20 0.000 0.800 200 144 label
-1.000 270.000 -608 912 generic::arrowhead
1 1.000 -592 912 -288 912 2 polygon
(IPMB) {/Helvetica cf} 2 17 0.000 0.800 -416 920 label
(P1) {/Helvetica cf} 2 20 0.000 0.800 -264 912 label
1.000 90.000 -272 912 generic::arrowhead
(All I2C addresses shown in 8-bit) {/Helvetica cf} 2 16 0.000 1.000 -752 1184
label
(form with lsb \(R/W\) set to 0) {/Helvetica cf} 2 16 0.000 1.000 -752 1136
label
0 1.000 448 568 448 456 608 456 608 568 4 polygon
(U32) {/Helvetica cf} 2 17 0.000 1.000 528 584 label
(INA219) {/Helvetica cf} 2 21 0.000 1.000 528 528 label
(0x82) {/Helvetica cf} 2 21 0.000 0.800 528 480 label
1.000 90.000 448 512 generic::arrowhead
1 1.000 432 512 368 512 2 polygon
1.000 0.000 368 512 generic::dot
0 1.000 768 776 768 664 928 664 928 776 4 polygon
(Y6) {/Helvetica cf} 2 17 0.000 1.000 848 792 label
(Si570) {/Helvetica cf} 2 21 0.000 1.000 848 736 label
(??) {/Helvetica cf} 2 21 0.000 0.800 848 688 label
1 1.000 752 512 688 512 2 polygon
1.000 90.000 768 720 generic::arrowhead
1.000 0.000 688 512 generic::dot
pgsave restore showpage
%%Trailer
XCIRCsave restore
%%EOF