I am building high-speed (10-20ns on BC847-class transistors) digital "buffer"/"inverter" out of BJTs. Scheme is attached.

While I can prevent saturation of low-side BJT by adding Schottky diode, it's not going to work for high-side. Any hints except decreasing resistance of base-resistor?

enter image description here

  • 3
    \$\begingroup\$ Inputs? Outputs? Power Rails? - Clean up your schematic, then ask again. \$\endgroup\$ Commented Jun 6, 2011 at 7:09
  • 7
    \$\begingroup\$ Yes, please clean up the schematic. Put the input on the left, output on the right, power rail at top, ground at bottom, and get rid of all those pointless dots that aren't actually at junctions. \$\endgroup\$ Commented Jun 6, 2011 at 12:35
  • 1
    \$\begingroup\$ those transistors will get toasty if you allow the input to float. \$\endgroup\$
    – markrages
    Commented Jun 6, 2011 at 23:57

2 Answers 2


Anti-saturation diodes are connected in parallel to the C-B-diode of the transistor that is to be kept from saturation. You are doing this correctly at the npn (anode at base and cathode at collector), and it should be done exactly the same way at the pnp, just that the diode is the other way round in this transistor: cathode at base, anode at collector.

I am not really sure how you chose your base resistors. I assume you have a supply voltage of 5 V and a rectangular base drive signal (0 V, 5 V). I would suggest you use identical values for both base resistors. With 5 k\$\Omega\$, it is likely that the high value of the base resistor does more harm than an anti-sat-diode would do good. Something in the range of 200...500 \$\Omega\$ for each resistor seems better to me.

If you want to push the speed even further, you can try paralleling the base resistors with small (approx. 22 pF) capacitors. The trick about finding the right value for the capacitor would be to make it somewhat equal to the effective capacitance at the base, thus forming a 1:1 voltage divider for the high frequency part of the rising or falling voltage edge.

Edit #1:

Here is the schematic I used to check with LT Spice. The input signal (rectangular, 0 V and 5 V) is fed into three similar BJT inverters, each using a complementary BC847 and BC857 pair. The one on the left has no special tricks to speed it up, the one in the middle uses Schottky diodes for anti-saturation and the one on the right also features a high-speed bypass along each base resistor (22 pF). The output of each stage has an identical load of 20 pF, which is a typical value for some trace capacitance and a subsequent input.


The traces show the input signal (yellow), the slow response of the circuit on the left (blue), the response with anti-saturation diodes (red) and the response of the circuit that also uses capacitors (green).


You can clearly see how the propagation delay gets less and less. The cursors are set at 50 % of the input signal and at 50 % of the fastest circuit's output and indicate a very small difference of 3 ns only. If I find the time, I might also hack the circuit and add real scope pictures. Careful layout will definitely be necessary to achieve sub-10 ns delay times in reality.

Edit #2:

The breadboard works nicely and shows a delay of < 10 ns on my 150 MHz scope. Pictures will follow later this week. Had to use my good probes, because the cheapo ones showed not much more than ringing...

Edit #3:

Ok, here's the breadboard:

Breadboard of Inverter with BJT pair and anti-saturation diodes

A 1 MHz square wave with 5 V (pkpk) enters the board from the left through the BNC connector and gets terminated into 50 \$\Omega\$ (two paralleled 100 \$\Omega\$ resistors, upper one hidden by probe). Base resistors are 470 \$\Omega\$, capacitors are 30 pF, Schottky diodes are BAT85, transistors are BC548/BC558. The supply is bypassed with 100 nF (ceramic) and a small electrolytic capacitor (10 \$\mu\$F).

The first screenshot shows the input and output waveforms at 100 ns/div and with 2 V/div for both traces. (Scope is a Tektronix 454A.)

Inverter Oscillogram, 100 ns

The second and third screenshot show the transitions from low to high and from high to low at the input with 2 ns/div (20 ns time base with additional 10 x horizontal magnification). The traces are now centered vertically on the screen for an easier display of the propagation delay with 1 V/div. The symmetry is very good and shows a difference of < 4 ns between input and output.

Inverter Oscillogram, 2 ns, LH Inverter Oscillogram, 2 ns, HL

I would argue that we can actually trust the simulated results.

The rise and fall times are very likely faster in reality and just limited by the scope's rise time, but I can think of no reason why the delay between the two signals should not be displayed correctly.

There is one thing to pay attention to: With every low-to-high and high-to-low transition, the two transistors tend to cross-conduct very briefly. At higher frequencies of the input signal (approx. > 2 MHz), the inverter circuit starts to take a lot of current and does weird things...

  • 3
    \$\begingroup\$ What a perfect answer, that works perfectly now :-) 5k was there just because I found that there is a balance between capacitance charge speed & saturation slow-down. Now lower values gives better performance, Thanks alot :-) \$\endgroup\$ Commented Jun 6, 2011 at 16:22
  • \$\begingroup\$ You added even more awesomeness :-) I am printing PCB at the moment for this test... \$\endgroup\$ Commented Jun 7, 2011 at 0:09
  • 3
    \$\begingroup\$ Your 3rd update makes your answer just unbeatable. Starting +500 bounty just for you :-) \$\endgroup\$ Commented Jun 19, 2011 at 2:29
  • \$\begingroup\$ I'm flattered. But hey, the question was cool, and when there's a reason for hacking a breadboard, I'm all in for the fun anyway, time permitting. Especially when standard parts are involved that I can take from my drawers of junk boards. Also, breadboarding even simple circuits is probably one of the nicest ways to not forget Jim Williams, the greatest breadboard hacker of all times: edn.com/article/… Sad, sad, news... This is one of his nicest pieces: cds.linear.com/docs/Application%20Note/AN128f.pdf \$\endgroup\$
    – zebonaut
    Commented Jun 20, 2011 at 17:44
  • \$\begingroup\$ Just finished my PCB for that - push-pull + 2 T-triggers... Getting 15-20ns fronts... But got problem with edge detection - electronics.stackexchange.com/questions/15979/… - maybe you'll have some clues... \$\endgroup\$ Commented Jun 25, 2011 at 18:20

You're not going to get 10-20 ns performance from discrete parts like that. As Zebonaut said, the Schottky diode is in the wrong place for Q9. These always go between collector and base.

There is no way this is going to work at the speed you want with 5KOhms in the signal path. Consider that the time constant of 5KOhms and 10pF is 50ns. In practice there will be some series inductance and other things to slow down the signals too. You will have to use much lower resistances to get anywhere near 10ns switching speed. What is the capacitance of the Schottky diodes? Note that this gets multiplied into the base. The effective capacitance the the resistor has to drive is likely significantly more than 10pF.

Unless you have experience designing RF circuits, including layout, those kinds of speeds are the domain of integrated chips.

  • \$\begingroup\$ Yeah, these speedup capacitors are also great, too sad can't accept multiple answers... \$\endgroup\$ Commented Jun 6, 2011 at 16:24
  • \$\begingroup\$ Wouldn't the capacitance of the Schottky diodes get added to the base capacitance? (You say: "multiplied"). \$\endgroup\$
    – zebonaut
    Commented Jun 8, 2011 at 20:56
  • 1
    \$\begingroup\$ The capacitance would only be added if the other end of the Schottkey were at a fixed potential. Since the voltage at the other end is inverted, more current will flow thru the capacitor, thereby making the capacitor appear larger. \$\endgroup\$ Commented Jun 8, 2011 at 21:18
  • \$\begingroup\$ it's Schottky, not Schottkey \$\endgroup\$
    – stevenvh
    Commented Jun 11, 2011 at 7:38

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.