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
|
.PS
# `fetDPV.m4'
cct_init(svg_font(Times,11bp__))
textht = 0.1
define(`rmove',0.75)
dnl `IRF4905(linespec,R)'
define(`IRF4905',
`[ ifelse(`$1',,,`eleminit_(`$1')')
Q: mosfet(,`$2',dMdPzEDSQdB,) ifelse(`$1',,`
S: Q.tr_xy(-4,-2); line from Q.tr_xy(-2,-2) to S
D: Q.tr_xy( 4,-2); line from Q.tr_xy(2,-2) to D',
`with .Diode.c at last line.c
S: last line.start; D: last line.end; line from S to D ')
G: Q.G
circle rad 5*dimen_/10 at Q.tr_xy(0,1) ]')
{move left 20bp__}
Row1: [ J: j_fet
{ "svg_tt(`j_fet')" at J.s+(0,-0.05) below
"svg_it(G)" at J.G rjust
"svg_it(S)" at J.S rjust
"svg_it(D)" at J.D ljust }
J: j_fet(right_ dimen_,,P,E) with .w at J.e+(0.5,0)
{ "svg_tt(`j_fet(right_')" at J.s+(0,-4bp__) below "svg_tt(`dimen_,,P,E)')"
"svg_it(G)" at J.G rjust above
"svg_it(S)" at J.S rjust
"svg_it(D)" at J.D ljust }
J: e_fet with .w at J.e+(0.5,0)
{ "svg_tt(` e_fet')" at J.s+(0,-0.05) below
"svg_it(G)" at J.G rjust
"svg_it(S)" at J.S rjust
"svg_it(D)" at J.D ljust }
J: e_fet(,,P) with .w at J.e+(0.6,0)
{ "svg_tt(` e_fet(,,P)')" at J.s+(0,-0.05) below
"svg_it(G)" at J.G rjust
"svg_it(S)" at J.S rjust
"svg_it(D)" at J.D ljust }
J: e_fet(,,P,S) with .w at J.e+(0.8,0)
{ "svg_tt(` e_fet(,,P,S)')" at J.s+(0,-0.05) below
"svg_it(G)" at J.G rjust
"svg_it(S)" at J.S rjust
"svg_it(D)" at J.D ljust }
J: c_fet with .w at J.e+(0.7,0)
{ "svg_tt(` c_fet')" at J.s+(0,-0.05) below
"svg_it(G)" at J.G rjust
"svg_it(S)" at J.S rjust
"svg_it(D)" at J.D ljust }
J: c_fet(,,P) with .w at J.e+(0.7,0)
{ "svg_tt(` c_fet(,,P)')" wid 72bp__ at J.s+(0,-0.05) below
"svg_it(G)" at J.G rjust
"svg_it(S)" at J.S rjust
"svg_it(D)" at J.D ljust }
]
Row2: [
J: d_fet
{ "svg_tt(`d_fet')" at J.s+(0,-0.05) below
"svg_it(G)" at J.G rjust
"svg_it(S)" at J.S rjust
"svg_it(D)" at J.D ljust }
J: d_fet(,,P) with .w at J.e+(0.5,0)
{ "svg_tt(`d_fet(,,P)')" at J.s+(0,-0.05) below
"svg_it(G)" at J.G rjust
"svg_it(S)" at J.S rjust
"svg_it(D)" at J.D ljust }
J: d_fet(,,P,S) with .w at J.e+(0.8,0)
{ "svg_tt(`d_fet(,,P,S)')" at J.s+(0,-0.05) below
"svg_it(G)" at J.G rjust
"svg_it(S)" at J.S rjust
"svg_it(D)" at J.D ljust }
J: g_fet with .w at J.e+(0.6,0)
{ "svg_tt(`g_fet')" at J.s+(0,-0.05) below
"svg_it(G)" at J.G rjust
"svg_it(S)" at J.S rjust
"svg_it(D)" at J.D ljust }
J: g_fet(up_ dimen_,,P) with .w at J.e+(0.6,0)
{ "svg_tt(`g_fet(up_')" at last [].s below
"svg_tt(` dimen_,,P)')" at last [].s + (0,-12bp__) below
"svg_it(G)" at last [].G rjust
"svg_it(S)" at last [].S + (0,2bp__) ljust
"svg_it(D)" at last [].D + (0,2bp__) ljust below }
right_
M1: mosfet(,,dBSDFQM1,E) with .w at J.e+(0.6,0)
"svg_it(G0)" at M1.G0 above rjust
"svg_it(G1)" at M1.G1 above ljust
{"svg_tt(`mosfet(,,dBSDFQM1,E)')" wid 1.45 \
with .nw at last [].sw+(0,-0.2) }
M2: mosfet(,,dBSDFQuM1) with .nw at M1.ne+(0.6,0)
"svg_it(G0)" at M2.G0 above ljust
"svg_it(G1)" at M2.G1 above rjust
{"svg_tt(`...(,,dBSDFQuM1')" wid 1.25 \
with .n at last [].s+(0,-0.05) }
] with .nw at Row1.sw+(0,-10bp__) # Row2
Row3: [
linewid = linewid*1.2
Q1: mosfet(,,dGSDF,)
{"svg_tt(`mosfet(,,dGSDF,)')" wid 1.25 \
with .nw at last [].sw+(-0.2,-0.05)
thinlines_
arrow <- down .05 left .15 from (Q1.G.x,Q1.G.y-0.05)
"svg_tt(dG)" rjust
arrow <- down .10 left .30 from Q1.Channel.start+(.15,0)
"svg_tt(F)" rjust
arrow <- down .05 left .15 from (Q1.S.x,Q1.S.y+0.05)
"svg_tt(S)" rjust
arrow <- down .05 right .15 from (Q1.D.x,Q1.D.y+0.05)
"svg_tt(D)" ljust
thicklines_ }
move right_ rmove
Q2: mosfet(,,uHSDF,)
{"svg_tt(`...(,,uHSDF,)')" at last [].s+(0,-0.2) below
thinlines_
arrow <- down .05 left .15 from (Q2.G.x,Q2.G.y-0.05)
"svg_tt(uH)" rjust
thicklines_ }
move right_ rmove
Q3: mosfet(,,dMEDSQuB,)
{"svg_tt(`...(,,dMEDSQuB,)')" at last [].s+(0,-0.05) below
thinlines_
arrow <- down .05 left .15 from (Q3.G.x,Q3.G.y-0.05)
"svg_tt(dM)" rjust
arrow <- down .13 left .30 from Q3.Channel.start+(.12,0)
"svg_tt(E)" rjust
arrow <- down .05 left .10 from Q3.S+(.06,0)
"svg_tt(Q)" rjust
arrow <- down .08 right .24 from (Q3.B.x,Q3.B.y+0.175)
"svg_tt(uB)" ljust
thicklines_ }
move right_ rmove
Q4: mosfet(,,uMEDSuB)
{"svg_tt(`...(,,uMEDSuB,)')" at last [].s+(0,-0.2) below
"svg_it(G)" at last [].G rjust
"svg_it(S)" at last [].S rjust
"svg_it(D)" at last [].D ljust
"svg_it(B)" at last [].B below
}
move right_ rmove
Q5: mosfet(,,ZSDFdT,)
{"svg_tt(`...(,,ZSDFdT)')" at last [].s+(0,-0.05) below
thinlines_
arrow <- down .08 left .08 from (Q5.S.x,Q5.S.y+0.12)
"svg_tt(Z)" rjust
arrow from last arrow.end to Q5.Channel.c+(0.05,0)
arrow from last arrow.start to (Q5.D.x,Q5.D.y+.05)
arrow <- down .08 right .24 from (Q5.G.x,Q5.G.y-0.02)
"svg_tt(dT)" ljust
thicklines_ }
move right_ rmove+0.1
up_
Q6: IRF4905 with .c at Here
{"svg_tt(`IRF4905')" at Q6.s+(0,-0.15) below
"svg_it(G)" at Q6.G rjust
"svg_it(D)" at Q6.D ljust above
"svg_it(S)" at Q6.S ljust below
}
] with .nw at Row2.sw + (0,-10bp__)
command "</g>" # end font
.PE
|