Diamond buffers are kind of cool, emitter feedback makes them linear and they don't have much phase shift, but they kind of suck balls whenever you want to actually move appreciable current with them which unfortunately is exactly what you'd want to do with a buffer. I came up with this thing that uses a sort of MOSFET-BJT Sziklai pair input-thing to drive boosting transistors to pump more dynamic current into the output follower's bases to speed up the transitions. This is the sim of it pushing a 100MHz square wave into a load using jellybean transistors: http://imgur.com/a/bM8hl Fast recovery didoes from the bases of the boosting transistors to ground and Vcc seem to speed up the transitions a lot. Version 4 SHEET 1 1804 1564 WIRE -16 -592 -16 -672 WIRE 160 -592 -16 -592 WIRE 320 -592 160 -592 WIRE 480 -592 320 -592 WIRE 624 -592 480 -592 WIRE 896 -592 624 -592 WIRE -16 -480 -16 -592 WIRE 320 -480 320 -592 WIRE 160 -464 160 -592 WIRE 480 -464 480 -592 WIRE 624 -352 624 -592 WIRE -16 -320 -16 -400 WIRE 160 -320 160 -400 WIRE 160 -320 -16 -320 WIRE 320 -304 320 -400 WIRE 480 -304 480 -400 WIRE 480 -304 320 -304 WIRE 560 -304 480 -304 WIRE -16 -256 -16 -320 WIRE 896 -160 896 -592 WIRE -576 -112 -576 -144 WIRE -16 -112 -16 -176 WIRE 624 -112 624 -256 WIRE 624 -112 -16 -112 WIRE 704 -112 624 -112 WIRE 832 -112 768 -112 WIRE -16 -32 -16 -112 WIRE -576 -16 -576 -32 WIRE -576 -16 -688 -16 WIRE -64 -16 -224 -16 WIRE -576 16 -576 -16 WIRE 896 16 896 -64 WIRE -688 32 -688 -16 WIRE 320 96 320 -304 WIRE -576 144 -576 96 WIRE -16 144 -16 64 WIRE 160 144 -16 144 WIRE 256 144 160 144 WIRE 896 176 896 16 WIRE 544 192 320 192 WIRE 160 208 160 144 WIRE -16 336 -16 144 WIRE 160 336 160 272 WIRE 160 336 -16 336 WIRE 320 336 160 336 WIRE 544 384 544 192 WIRE 896 384 896 256 WIRE 896 384 544 384 WIRE 992 384 896 384 WIRE 1152 384 1072 384 WIRE 1312 384 1232 384 WIRE 1472 384 1392 384 WIRE 1600 384 1472 384 WIRE 1696 384 1600 384 WIRE -416 400 -576 400 WIRE -224 400 -224 -16 WIRE -224 400 -416 400 WIRE 160 432 -16 432 WIRE 320 432 896 16 WIRE 320 432 160 432 WIRE -576 448 -576 400 WIRE -416 448 -416 400 WIRE 160 496 160 432 WIRE 1472 512 1472 384 WIRE 1600 512 1600 384 WIRE 896 528 896 384 WIRE 544 560 544 384 WIRE 544 560 320 560 WIRE -576 576 -576 528 WIRE -416 576 -416 528 WIRE -16 608 -16 432 WIRE 160 608 160 560 WIRE 160 608 -16 608 WIRE 256 608 160 608 WIRE 1472 704 1472 576 WIRE 1600 704 1600 592 WIRE -16 784 -16 608 WIRE 896 784 320 336 WIRE 896 784 896 608 WIRE -224 864 -224 400 WIRE -64 864 -224 864 WIRE 896 912 896 784 WIRE -16 960 -16 880 WIRE 624 960 -16 960 WIRE 704 960 624 960 WIRE 832 960 768 960 WIRE -16 1008 -16 960 WIRE 624 1072 624 960 WIRE 320 1120 320 656 WIRE 480 1120 320 1120 WIRE 560 1120 480 1120 WIRE -16 1152 -16 1088 WIRE 144 1152 -16 1152 WIRE -16 1216 -16 1152 WIRE 320 1216 320 1120 WIRE 144 1232 144 1152 WIRE 480 1232 480 1120 WIRE -16 1360 -16 1296 WIRE 144 1360 144 1296 WIRE 144 1360 -16 1360 WIRE 320 1360 320 1296 WIRE 320 1360 144 1360 WIRE 480 1360 480 1296 WIRE 480 1360 320 1360 WIRE 624 1360 624 1168 WIRE 624 1360 480 1360 WIRE 896 1360 896 1008 WIRE 896 1360 624 1360 WIRE -16 1472 -16 1360 FLAG 1696 384 Out IOPIN 1696 384 Out FLAG -16 1472 Vee FLAG -16 -672 Vcc FLAG -688 32 0 FLAG -576 -144 Vcc FLAG -576 144 Vee FLAG -416 576 0 FLAG -576 576 0 FLAG 1472 704 0 FLAG 1600 704 0 SYMBOL npn 832 -160 R0 WINDOW 3 67 65 Left 2 SYMATTR Value 2SCR514P SYMATTR InstName Q1 SYMBOL pnp 832 1008 M180 SYMATTR InstName Q2 SYMATTR Value 2SAR514P SYMBOL res 880 160 R0 SYMATTR InstName R1 SYMATTR Value 10 SYMBOL res 880 512 R0 SYMATTR InstName R2 SYMATTR Value 10 SYMBOL nmos -64 784 R0 SYMATTR InstName M1 SYMATTR Value RHP030N03 SYMBOL pmos -64 64 M180 SYMATTR InstName M2 SYMATTR Value RRS100P03 SYMBOL res -32 1200 R0 SYMATTR InstName R3 SYMATTR Value 47k SYMBOL res -32 -496 R0 SYMATTR InstName R4 SYMATTR Value 47k SYMBOL voltage -576 -128 R0 WINDOW 123 0 0 Left 2 WINDOW 39 0 0 Left 2 SYMATTR InstName V1 SYMATTR Value 5 SYMBOL voltage -576 0 R0 WINDOW 123 0 0 Left 2 WINDOW 39 0 0 Left 2 SYMATTR InstName V2 SYMATTR Value 5 SYMBOL res -432 432 R0 SYMATTR InstName R5 SYMATTR Value 100k SYMBOL voltage -576 432 R0 WINDOW 3 -190 227 Left 2 WINDOW 123 0 0 Left 2 WINDOW 39 0 0 Left 2 SYMATTR Value PULSE(-3 3 0 0.1n 0.1n 5n 10n) SYMATTR InstName V3 SYMBOL res 1088 368 R90 WINDOW 0 0 56 VBottom 2 WINDOW 3 32 56 VTop 2 SYMATTR InstName R6 SYMATTR Value 50 SYMBOL cap 1456 512 R0 SYMATTR InstName C1 SYMATTR Value 100p SYMBOL ind 1248 368 R90 WINDOW 0 5 56 VBottom 2 WINDOW 3 59 53 VTop 2 SYMATTR InstName L1 SYMATTR Value 100nH SYMBOL res 1584 496 R0 SYMATTR InstName R7 SYMATTR Value 50 SYMBOL res 1408 368 R90 WINDOW 0 0 56 VBottom 2 WINDOW 3 32 56 VTop 2 SYMATTR InstName R8 SYMATTR Value 1 SYMBOL pnp 256 656 M180 SYMATTR InstName Q3 SYMATTR Value 2N3906 SYMBOL npn 256 96 R0 SYMATTR InstName Q4 SYMATTR Value 2N3904 SYMBOL res 304 -496 R0 SYMATTR InstName R9 SYMATTR Value 100 SYMBOL pnp 560 -256 M180 SYMATTR InstName Q5 SYMATTR Value 2N3906 SYMBOL npn 560 1072 R0 SYMATTR InstName Q6 SYMATTR Value 2N3904 SYMBOL res 304 1200 R0 SYMATTR InstName R10 SYMATTR Value 100 SYMBOL schottky 144 208 R0 SYMATTR InstName D1 SYMATTR Value BAT54 SYMATTR Description Diode SYMATTR Type diode SYMBOL diode 496 -400 R180 WINDOW 0 24 64 Left 2 WINDOW 3 24 0 Left 2 SYMATTR InstName D4 SYMATTR Value RF05VA1S SYMBOL res -32 -272 R0 SYMATTR InstName R11 SYMATTR Value 4.7k SYMBOL cap 144 -464 R0 SYMATTR InstName C2 SYMATTR Value 5p SYMBOL res -32 992 R0 SYMATTR InstName R12 SYMATTR Value 4.7k SYMBOL cap 128 1232 R0 SYMATTR InstName C3 SYMATTR Value 5p SYMBOL FerriteBead 736 960 R90 WINDOW 0 -16 0 VBottom 2 SYMATTR InstName L3 SYMATTR Value 22n SYMATTR SpiceLine Ipk=0.5 Rser=0.044 Rpar=13 Cpar=1.6p mfg="Wurth Elektronik" pn="742 792 711 0" SYMBOL FerriteBead 736 -112 R90 WINDOW 0 -16 0 VBottom 2 SYMATTR InstName L2 SYMATTR Value 22n SYMATTR SpiceLine Ipk=0.5 Rser=0.044 Rpar=13 Cpar=1.6p mfg="Wurth Elektronik" pn="742 792 711 0" SYMBOL diode 496 1296 R180 WINDOW 0 24 64 Left 2 WINDOW 3 24 0 Left 2 SYMATTR InstName D3 SYMATTR Value RF05VA1S SYMBOL schottky 176 560 R180 WINDOW 0 24 64 Left 2 WINDOW 3 24 0 Left 2 SYMATTR InstName D2 SYMATTR Value BAT54 SYMATTR Description Diode SYMATTR Type diode TEXT -688 704 Left 2 !.tran 800u
Fast buffer idea
Started by ●May 14, 2017
Reply by ●May 14, 20172017-05-14
On Sun, 14 May 2017 13:50:19 -0400, bitrex <bitrex@de.lete.earthlink.net> wrote:>Diamond buffers are kind of cool, emitter feedback makes them linear and >they don't have much phase shift, but they kind of suck balls whenever >you want to actually move appreciable current with them which >unfortunately is exactly what you'd want to do with a buffer. > >I came up with this thing that uses a sort of MOSFET-BJT Sziklai pair >input-thing to drive boosting transistors to pump more dynamic current >into the output follower's bases to speed up the transitions. This is >the sim of it pushing a 100MHz square wave into a load using jellybean >transistors: > >http://imgur.com/a/bM8hl > >Fast recovery didoes from the bases of the boosting transistors to >ground and Vcc seem to speed up the transitions a lot.The output, even before the inductor, doesn't follow the input very well, and it's a heap of parts. Why not use a fast opamp? -- John Larkin Highland Technology, Inc lunatic fringe electronics
Reply by ●May 14, 20172017-05-14
John Larkin <jjlarkin@highlandtechnology.com> wrote:> On Sun, 14 May 2017 13:50:19 -0400, bitrex > <bitrex@de.lete.earthlink.net> wrote: > >>Diamond buffers are kind of cool, emitter feedback makes them linear and >>they don't have much phase shift, but they kind of suck balls whenever >>you want to actually move appreciable current with them which >>unfortunately is exactly what you'd want to do with a buffer. >> >>I came up with this thing that uses a sort of MOSFET-BJT Sziklai pair >>input-thing to drive boosting transistors to pump more dynamic current >>into the output follower's bases to speed up the transitions. This is >>the sim of it pushing a 100MHz square wave into a load using jellybean >>transistors: >> >>http://imgur.com/a/bM8hl >> >>Fast recovery didoes from the bases of the boosting transistors to >>ground and Vcc seem to speed up the transitions a lot. > > The output, even before the inductor, doesn't follow the input very > well, and it's a heap of parts. Why not use a fast opamp?What are your recommendations to handle a 100MHz square wave?
Reply by ●May 14, 20172017-05-14
On 05/14/2017 02:27 PM, John Larkin wrote:> On Sun, 14 May 2017 13:50:19 -0400, bitrex > <bitrex@de.lete.earthlink.net> wrote: > >> Diamond buffers are kind of cool, emitter feedback makes them linear and >> they don't have much phase shift, but they kind of suck balls whenever >> you want to actually move appreciable current with them which >> unfortunately is exactly what you'd want to do with a buffer. >> >> I came up with this thing that uses a sort of MOSFET-BJT Sziklai pair >> input-thing to drive boosting transistors to pump more dynamic current >> into the output follower's bases to speed up the transitions. This is >> the sim of it pushing a 100MHz square wave into a load using jellybean >> transistors: >> >> http://imgur.com/a/bM8hl >> >> Fast recovery didoes from the bases of the boosting transistors to >> ground and Vcc seem to speed up the transitions a lot. > > The output, even before the inductor, doesn't follow the input very > well, and it's a heap of parts. Why not use a fast opamp? >At least at the junction of R1 and R2, I think it follows it pretty good for being made up of mostly glorified relay switching BJTs! Trying to drive any kind of load with a simpler diamond topology using the same jellybeans at 100MHz and all you get is slop. That draws a ton of quiescent current. I don't think it's that many parts, you can have multiple transistors and diodes in the same package! It's just a lot of lines. Fast op-amps that can put out enough current to drive coax are pricey...
Reply by ●May 14, 20172017-05-14
On 05/14/2017 03:19 PM, Steve Wilson wrote:> John Larkin <jjlarkin@highlandtechnology.com> wrote: > >> On Sun, 14 May 2017 13:50:19 -0400, bitrex >> <bitrex@de.lete.earthlink.net> wrote: >> >>> Diamond buffers are kind of cool, emitter feedback makes them linear and >>> they don't have much phase shift, but they kind of suck balls whenever >>> you want to actually move appreciable current with them which >>> unfortunately is exactly what you'd want to do with a buffer. >>> >>> I came up with this thing that uses a sort of MOSFET-BJT Sziklai pair >>> input-thing to drive boosting transistors to pump more dynamic current >>> into the output follower's bases to speed up the transitions. This is >>> the sim of it pushing a 100MHz square wave into a load using jellybean >>> transistors: >>> >>> http://imgur.com/a/bM8hl >>> >>> Fast recovery didoes from the bases of the boosting transistors to >>> ground and Vcc seem to speed up the transitions a lot. >> >> The output, even before the inductor, doesn't follow the input very >> well, and it's a heap of parts. Why not use a fast opamp? > > What are your recommendations to handle a 100MHz square wave? > >Anything that has the slew rate to handle a full-swing 100MHz square wave and also drive a cable is gonna cost $$$...
Reply by ●May 14, 20172017-05-14
"bitrex" wrote in message news:vN0SA.45616$3M3.37466@fx16.iad...>Diamond buffers are kind of cool, emitter feedback makes them linear and >they don't have much phase shift, but they kind of suck balls whenever you >want to actually move appreciable current with them which unfortunately is >exactly what you'd want to do with a buffer.>I came up with this thing that uses a sort of MOSFET-BJT Sziklai pair >input-thing to drive boosting transistors to pump more dynamic current into >the output follower's bases to speed up the transitions. This is the sim of >it pushing a 100MHz square wave into a load using jellybean transistors:What are the design goals? If you want speed and low distortion, you should drop the mosfets, and the jelly bean transistors. Use the highest ft bipolara that you can find, like 10Ghz. The low gm of the mosfets really kill things. I haven't examined the effectiveness of the additional boost circuit, but it is important to make sure the basic design is optimised first. Typically, something like a 1:4 build up in current from the first bip follower to the second bip follower. In an asic design I might use the same current and use multiple devices in parallel. I would suggest trying an active current source to the input followers, to get the drive to the second follower, and remove the boost circuit. Use standard configurations, until you can prove that a bright idea is truly better. On the spice side, the setting looked f'uped. Why are you running so many cycles, so that the edge rates are ~10ns in a 200us plot! You should only have to run for 50ns. Also, the schematic has s/c diodes. I haven't run it yet, as it wont due to errors in the file you pasted. -- Kevin Aylward http://www.anasoft.co.uk - SuperSpice http://www.kevinaylward.co.uk/ee/index.html
Reply by ●May 14, 20172017-05-14
On Sun, 14 May 2017 19:19:41 GMT, Steve Wilson <no@spam.com> wrote:>John Larkin <jjlarkin@highlandtechnology.com> wrote: > >> On Sun, 14 May 2017 13:50:19 -0400, bitrex >> <bitrex@de.lete.earthlink.net> wrote: >> >>>Diamond buffers are kind of cool, emitter feedback makes them linear and >>>they don't have much phase shift, but they kind of suck balls whenever >>>you want to actually move appreciable current with them which >>>unfortunately is exactly what you'd want to do with a buffer. >>> >>>I came up with this thing that uses a sort of MOSFET-BJT Sziklai pair >>>input-thing to drive boosting transistors to pump more dynamic current >>>into the output follower's bases to speed up the transitions. This is >>>the sim of it pushing a 100MHz square wave into a load using jellybean >>>transistors: >>> >>>http://imgur.com/a/bM8hl >>> >>>Fast recovery didoes from the bases of the boosting transistors to >>>ground and Vcc seem to speed up the transitions a lot. >> >> The output, even before the inductor, doesn't follow the input very >> well, and it's a heap of parts. Why not use a fast opamp? > >What are your recommendations to handle a 100MHz square wave? >If the object is to buffer a logic level, some 13-cent TinyLogic gate, like an NL37WZ16US or something. If it needs to be linear, there are tons of opamps to consider: THS4222, AD8007, whatever. The posted circuit drives a lowpass filter to make a small sort of sine wave from a giant square-wave drive, so a single transistor buffer should work. Or maybe no buffer at all. -- John Larkin Highland Technology, Inc lunatic fringe electronics
Reply by ●May 14, 20172017-05-14
On 05/14/2017 03:28 PM, Kevin Aylward wrote:> "bitrex" wrote in message news:vN0SA.45616$3M3.37466@fx16.iad... > >> Diamond buffers are kind of cool, emitter feedback makes them linear >> and they don't have much phase shift, but they kind of suck balls >> whenever you want to actually move appreciable current with them which >> unfortunately is exactly what you'd want to do with a buffer. > >> I came up with this thing that uses a sort of MOSFET-BJT Sziklai pair >> input-thing to drive boosting transistors to pump more dynamic current >> into the output follower's bases to speed up the transitions. This is >> the sim of it pushing a 100MHz square wave into a load using jellybean >> transistors: > > What are the design goals? If you want speed and low distortion, you > should drop the mosfets, and the jelly bean transistors. Use the highest > ft bipolara that you can find, like 10Ghz. The low gm of the mosfets > really kill things.Sort of a poor-mans OPA663, to drive high-frequency pulses down a several meter length of RG-58 coax. Any suggestions for transistors? With Spice models? I figured it would make sense to see if the topology is at all valid with slower transistors first, because those fast parts are much more difficult to work with.> On the spice side, the setting looked f'uped. Why are you running so > many cycles, so that the edge rates are ~10ns in a 200us plot! You > should only have to run for 50ns.There are probably some initial conditions I need to set.> Also, the schematic has s/c diodes. > > I haven't run it yet, as it wont due to errors in the file you pasted.Ok, I'll fix it up and see if it can be optimized.
Reply by ●May 14, 20172017-05-14
On 05/14/2017 03:54 PM, John Larkin wrote:> The posted circuit drives a lowpass filter to make a small sort of > sine wave from a giant square-wave drive, so a single transistor > buffer should work. Or maybe no buffer at all.I doubt the load is a realistic "model" for a length of cable. I saw one on EDN but it looks pretty complicated, about 5 controlled sources in series. It'll take a while to read and understand how they came up with it...
Reply by ●May 14, 20172017-05-14
On Sun, 14 May 2017 16:02:13 -0400, bitrex <bitrex@de.lete.earthlink.net> wrote:>On 05/14/2017 03:54 PM, John Larkin wrote: > >> The posted circuit drives a lowpass filter to make a small sort of >> sine wave from a giant square-wave drive, so a single transistor >> buffer should work. Or maybe no buffer at all. > >I doubt the load is a realistic "model" for a length of cable. I saw one >on EDN but it looks pretty complicated, about 5 controlled sources in >series. It'll take a while to read and understand how they came up with >it...Is your object to drive a length of coax? If it's terminated, you can just ignore the cable entirely. Or poke in a Spice transmission line to explore mismatch consequences. -- John Larkin Highland Technology, Inc lunatic fringe electronics