Ronja Twibright Labs

First Mundaka Design Attempts

2N3904 and BC547C Emitter Capacitance

Drawing
  PostScriptPostScript + Gzip PDF
Color Dark emitter_cap_01.ps emitter_cap_01.ps.gz emitter_cap_01.pdf
Light emitter_cap_00.ps emitter_cap_00.ps.gz emitter_cap_00.pdf
Small emitter_cap_02.ps emitter_cap_02.ps.gz emitter_cap_02.pdf
B/W Dark emitter_cap_11.ps emitter_cap_11.ps.gz emitter_cap_11.pdf
Light emitter_cap_10.ps emitter_cap_10.ps.gz emitter_cap_10.pdf
Small emitter_cap_12.ps emitter_cap_12.ps.gz emitter_cap_12.pdf
emitter_cap.sch (gschem)

First I wanted to know how big the emitter capacitance of the transistor under current is.

Drawing
Postscript / PDF / EPS / BIG png / .gnuplot (Gnuplot)

It seems to depend a lot on the transistor type and less on beta and Ft. BC547C seems to be totally unusable with -48i mOhm @100MHz which is 33nF!!! Worst case 2N3904 (beta=80, fT=300 MHz) has impedance of -7i Ohm @100 MHz which is 227pF.

Let's assume 3 limiting stage and one MOSFET amplifier, together they have bandwidth of 16MHz @ -3dB. Each stage should have -0.75dB at 16 MHz. That means for 227pF we need a 30 Ohm resistor.

Long Tail Pair With 30 Ohm Resistors

Drawing
  PostScriptPostScript + Gzip PDF
Color Dark cell_01.ps cell_01.ps.gz cell_01.pdf
Light cell_00.ps cell_00.ps.gz cell_00.pdf
Small cell_02.ps cell_02.ps.gz cell_02.pdf
B/W Dark cell_11.ps cell_11.ps.gz cell_11.pdf
Light cell_10.ps cell_10.ps.gz cell_10.pdf
Small cell_12.ps cell_12.ps.gz cell_12.pdf
cell.sch (gschem)

Let's build a long tail pair with 30 Ohm to counter the 227pF input capacitance.

Drawing
Postscript / PDF / EPS / BIG png / .gnuplot (Gnuplot)

I had a serious error here. There was accidentally another copy of current controlled current source (CCCS) which was exactly overlapping the another one and it was visible only in mangled refdes. This showed -4dB instead of 8dB. The following headings: Back To The Basics, Sensitivity To Transistor Parameters and Cell Input Impedance were written with wrong assumption that this stage actually doesn't amplify!

Back To The Basics (written with wrong assumption)

Drawing
  PostScriptPostScript + Gzip PDF
Color Dark basic_cell_01.ps basic_cell_01.ps.gz basic_cell_01.pdf
Light basic_cell_00.ps basic_cell_00.ps.gz basic_cell_00.pdf
Small basic_cell_02.ps basic_cell_02.ps.gz basic_cell_02.pdf
B/W Dark basic_cell_11.ps basic_cell_11.ps.gz basic_cell_11.pdf
Light basic_cell_10.ps basic_cell_10.ps.gz basic_cell_10.pdf
Small basic_cell_12.ps basic_cell_12.ps.gz basic_cell_12.pdf
basic_cell.sch (gschem)

What's the problem with the basic long tail pair without any resistors?

Drawing
Postscript / PDF / EPS / BIG png / .gnuplot (Gnuplot)

The problem is that the current gain gets bigger for lower frequencies which distorts the signal significantly, it acts like an integrator. At 16MHz we have 18.5dB of gain. If we could cleanly cut off the excess gain at lower frequencies, we would get an amplifier with 19.25dB gain and -0.75dB bandwidth of 16 MHz.

One approach is put a resistor into the emitter. That will limit the maximum gain. Unfortunately the achieved gain of 1.3dB is laughable.

Another one is put a capacitor into the emitter which acts similar to a resistor that increases with decreasing frequency. Unfortunately interaction of the capacitor with the guts of the transistor produces a resonant behaviour. I tried to change the value and the peak was rising suggesting oscillation is close.

I selected the C to create a peak at the edge frequency of 16MHz.

However combining the C from previous try with a custom resistance in parallel yields a surprisingly good behaviour, amplification of 12.3dB with a nicely flat characteristics and gentle phase changes. The question is how sensitive this spectral response is to transistor parameters like beta, fT and emitter capacitance. We are maybe playing with fire here, we are probably using impedance gyration to work for us to speed up an otherwise lazy transistor. We are maybe asking for oscillations.

This is similar to designing a speaker with a bassreflex.

Sensitivity To Transistor Parameters (written with wrong assumption)

Drawing
  PostScriptPostScript + Gzip PDF
Color Dark spread_01.ps spread_01.ps.gz spread_01.pdf
Light spread_00.ps spread_00.ps.gz spread_00.pdf
Small spread_02.ps spread_02.ps.gz spread_02.pdf
B/W Dark spread_11.ps spread_11.ps.gz spread_11.pdf
Light spread_10.ps spread_10.ps.gz spread_10.pdf
Small spread_12.ps spread_12.ps.gz spread_12.pdf
spread.sch (gschem)

Is the frequency curve going to be sensitive to varying transistor parameters?

Drawing
Postscript / PDF / EPS / BIG png / .gnuplot (Gnuplot)

Whereas the worst case 2N3904 has 3/4 dB overshoot, the best case has 2dB overshoot. Let's try to tweak the capacitor and resistor parameters so the charactersitic gets closer to ideal.

By decreasing the capacitance and adjustingthe resistor the overshoot of the frequency curve gets to 0.75dB in the worse case and the minimum gain goes down to 10 dB.

Cell Input Impedance (written with wrong assumption)

Drawing
  PostScriptPostScript + Gzip PDF
Color Dark cell_input_01.ps cell_input_01.ps.gz cell_input_01.pdf
Light cell_input_00.ps cell_input_00.ps.gz cell_input_00.pdf
Small cell_input_02.ps cell_input_02.ps.gz cell_input_02.pdf
B/W Dark cell_input_11.ps cell_input_11.ps.gz cell_input_11.pdf
Light cell_input_10.ps cell_input_10.ps.gz cell_input_10.pdf
Small cell_input_12.ps cell_input_12.ps.gz cell_input_12.pdf
cell_input.sch (gschem)

How is the input impedance of the cell going to look like?

Drawing
Postscript / PDF / EPS / BIG png / .gnuplot (Gnuplot)

Unfortunately the input impedance at 1MHz is 6.5kO. To get the current signal from the previous stage semi-efficiently into the next one (with a loss of -6dB), we would need a 6.5kO collector resistor. 6.5kOhm*5mA=32.5Volt. That's way too much voltage swing.

Pimping up the voltage mode cell

Drawing
  PostScriptPostScript + Gzip PDF
Color Dark cellpimp_01.ps cellpimp_01.ps.gz cellpimp_01.pdf
Light cellpimp_00.ps cellpimp_00.ps.gz cellpimp_00.pdf
Small cellpimp_02.ps cellpimp_02.ps.gz cellpimp_02.pdf
B/W Dark cellpimp_11.ps cellpimp_11.ps.gz cellpimp_11.pdf
Light cellpimp_10.ps cellpimp_10.ps.gz cellpimp_10.pdf
Small cellpimp_12.ps cellpimp_12.ps.gz cellpimp_12.pdf
cellpimp.sch (gschem)

Since I unnecessarily developed here a way how to pimp up the current amplifier why not try this method on the voltage mode amplifier?

The weird value of 42 Ohm was selected because of transistor mismatch. The DC gain of 2N3904 varies from 80 to 300 @2.5mA. That's a ratio of 1:3.75. Natural logarithm 1.32. With 26mV per e-times it makes 34mV difference in base voltages. If we want imbalance 1:20 then the drop on the balancing resistors must be 690mV. With 2.5mA current per balancing resistor it makes 270 Ohm. With a 100 Ohm resistor it makes the desired response. The resulting total resistance for the simulation is then 42 Ohm.

I want to limit the differential signal to 2.2mVpp to not lose too much headroom for the transistors. That means collector resistors of 470 Ohm. With my usual 6.8k base resistor in paralle it makes 440 Ohm. That's the other weird value in the simulation.

Drawing
Postscript / PDF / EPS / BIG png / .gnuplot (Gnuplot)

The pimp up method seems to be very powerful. We can increase the gain from 8.4dB to 18.3dB. Here is a table of component values and achieved gains:

Base resistorEmitter resistorEmitter capacitorGain
30 Ohm0 Ohm0pF8.4dB
100 Ohm10 Ohm390pF12.9dB
220 Ohm18 Ohm390pF16.6dB
440 Ohm42 Ohm200pF17.4dB
470 Ohm39 Ohm220pF18.3dB
560 Ohm56 Ohm120pF17.4dB
1000 Ohm100 Ohm82pF17.9dB

Pimped Up Cell Stability

Drawing
  PostScriptPostScript + Gzip PDF
Color Dark pimpin_01.ps pimpin_01.ps.gz pimpin_01.pdf
Light pimpin_00.ps pimpin_00.ps.gz pimpin_00.pdf
Small pimpin_02.ps pimpin_02.ps.gz pimpin_02.pdf
B/W Dark pimpin_11.ps pimpin_11.ps.gz pimpin_11.pdf
Light pimpin_10.ps pimpin_10.ps.gz pimpin_10.pdf
Small pimpin_12.ps pimpin_12.ps.gz pimpin_12.pdf
pimpin.sch (gschem)

According to Why Circuits Oscillate Spuriously by Dennis L Feucht, Putting a RC network into the emitter of a common collector amplifier (which we still have, since the collector is nailed down to the voltage source) is a way how to possibly make it oscillate. I have to check if the input impedance has a negative resistance somewhere.

Drawing
Postscript / PDF / EPS / BIG png / .gnuplot (Gnuplot)

The simulation show what impedance a coil between the previous stage and our base sees. There is no negative resistance. The coil will not oscillate no matter how big it is.

Pimped Up Cell Bandwidth Sensitivity To Transistor Parameters

Drawing
  PostScriptPostScript + Gzip PDF
Color Dark pimpsens_01.ps pimpsens_01.ps.gz pimpsens_01.pdf
Light pimpsens_00.ps pimpsens_00.ps.gz pimpsens_00.pdf
Small pimpsens_02.ps pimpsens_02.ps.gz pimpsens_02.pdf
B/W Dark pimpsens_11.ps pimpsens_11.ps.gz pimpsens_11.pdf
Light pimpsens_10.ps pimpsens_10.ps.gz pimpsens_10.pdf
Small pimpsens_12.ps pimpsens_12.ps.gz pimpsens_12.pdf
pimpsens.sch (gschem)

What happens with the frequency and phase response when we replace the worst case 2N3904 with a normal 2N3904?

Drawing
Postscript / PDF / EPS / BIG png / .gnuplot (Gnuplot)

We see a 2dB hump occurs on the end of the response. With 3 stages this will create a 6dB hump which is probably not tolerable. Therefore I adjusted the emitter degeneration to not be so agressive. However it's a tradeoff against gain of course.

Bandwidth Sensitivity To Miller Effect

Drawing
  PostScriptPostScript + Gzip PDF
Color Dark miller_01.ps miller_01.ps.gz miller_01.pdf
Light miller_00.ps miller_00.ps.gz miller_00.pdf
Small miller_02.ps miller_02.ps.gz miller_02.pdf
B/W Dark miller_11.ps miller_11.ps.gz miller_11.pdf
Light miller_10.ps miller_10.ps.gz miller_10.pdf
Small miller_12.ps miller_12.ps.gz miller_12.pdf
miller.sch (gschem)

What happens with the frequency and phase response when we stop holding the collector at a constant potential and insert the working resistor? Miller effect will kick in.

Drawing
Postscript / PDF / EPS / BIG png / .gnuplot (Gnuplot)

After turning the Miller effect on the bandwidth dropped to about 7MHz. So I tuned the emitter degeneration again. The minimum gain dropped from 13.2 to 11.7dB. This doesn't justify cascode because cascode has 5 transistors and without cascode there are only 3 transistors. Therefore the gain would have to drop under 13.2dB*3/5=8dB.

How is it with phase shift? Phase shift can move 5MHz against 10MHz, introducing deterministic jitter. If it shifts twice as many degrees @10MHz as @5MHz, then the waveforms are delayed, but not shifted against each other. The shifts are as follows:

Frequencydegrees 2N3904 worstdegrees 2N3904
5MHz127
10MHz2516

For 7 and 16 it's not exactly balanced. The 10MHz is shifted 2 degrees (2 10MHz degrees) against 5MHz. Since we'll have about 3 stages this is 6 degress @10MHz or 1.6ns. That's a good deterministic jitter I think.

The 0.5dB hump on Miller 2N3904 will result in a 1.5dB hump after 3 stages. I guss that's acceptable when the drop at 16MHz will be 3dB.

Miller Adjusted Cell Stability

Drawing
  PostScriptPostScript + Gzip PDF
Color Dark millerin_01.ps millerin_01.ps.gz millerin_01.pdf
Light millerin_00.ps millerin_00.ps.gz millerin_00.pdf
Small millerin_02.ps millerin_02.ps.gz millerin_02.pdf
B/W Dark millerin_11.ps millerin_11.ps.gz millerin_11.pdf
Light millerin_10.ps millerin_10.ps.gz millerin_10.pdf
Small millerin_12.ps millerin_12.ps.gz millerin_12.pdf
millerin.sch (gschem)

We have changed the magical element value in the emitter, we have to check for stability again.

Drawing
Postscript / PDF / EPS / BIG png / .gnuplot (Gnuplot)

It's still stable.

Miller Adjusted Cell Transient Response

Drawing
  PostScriptPostScript + Gzip PDF
Color Dark rx_experimental_01.ps rx_experimental_01.ps.gz rx_experimental_01.pdf
Light rx_experimental_00.ps rx_experimental_00.ps.gz rx_experimental_00.pdf
Small rx_experimental_02.ps rx_experimental_02.ps.gz rx_experimental_02.pdf
B/W Dark rx_experimental_11.ps rx_experimental_11.ps.gz rx_experimental_11.pdf
Light rx_experimental_10.ps rx_experimental_10.ps.gz rx_experimental_10.pdf
Small rx_experimental_12.ps rx_experimental_12.ps.gz rx_experimental_12.pdf
rx_experimental.sch (gschem)

To get a more accurate simulation I would have to replace the current sources with real ones built from transistors.

Drawing
Postscript / PDF / EPS / BIG png / .gnuplot (Gnuplot)

The limiting amplifier works properly.

Number of stages necessary

We will have a 75 Ohm cable and a 75 Ohm output resistor. That gives total loading of the last collector of 37.5 Ohm. On this I want to have 700mVpp. That means 18mA current. Let's assume the whole receiver is made of 5mA limitter stages and we want to have so many of them that the noise from the first one produces full range output. Shot noise at 5mA and 16 MHz is 160nA. Amplification must be 101dB. With 12dB per stage we need 8.4 stages to amplify and 1 to produce the shot noise. That means 10 stages! With estimated 3 transistors 15 resistors and 8 capacitors per stage that's 260 components and 550 pins to solder!

Let's try some better transistor that gives more decibels per stage.

I want a transistor that has higher Ft than 2N3904 (300 MHz) but not much higher because then it's difficult to keep it from oscillating. I also want cheap because there will be multiple stages lot of transistors. I looked at Distrelec and they have BF199, 799, BFR 92P, 93AW, 182, 175 and BFS17P. GME has BF199, 799, BFS17P. BF199 is very cheap and has SPICE model available from NXP. Let's take BF199.

An expected information missing here?