The IC versus VBE of modern transistors has some excellent log characteristics, as we have discussed.* If you ground a transistor's base and compensate for its VBE with a matching VBE, you can do some good logging over a wide range, from 1 mA to 1 pA, and really quite accurate from 100 pA to 100 µA.
That's six decades where the limitation of REE' on the high end is the major limitation. Input leakage currents on the low end are not really a limitation, these days, as good CMOS amplifiers have IIN smaller than 1/1000 of the 100-pA signal. Of course, this works best around room temperature. The compensating resistor RX (1-kΩ wirewound resistor at +3500 ppm/°C) works fairly well for a moderate temperature range, and it works best around room temperature. Figure 1 shows a standard log ratio circuit, found in AN-29 and in many books. Its output is –1 V per decade for inputs larger than 0.2 µA
However, there are definite limitations in speed of response. A large input current requires a large feedback capacitor, such as 500 pF, because the transistor adds so much gain to the loop that it ruins the loop stability. When IIN is as large as 1 mA, the transistor has a gain of 800—too much gain to add to an op amp. (Op amps are happy with attenuation in the feedback loop, but they don't like gain added.) So we have to add a large CF, such as 500 pF, to make the loop stable at high frequencies.
Now when IIN is decreased down to 1µA the loop is very stable and very slow. The 500 pF is much too big. The bandwidth falls below 1 kHz. A feedback capacitance of 2 pF would be plenty. Some of our customers needed a logger with good audio bandwidth over a wide range of input currents. What to do?
I remembered that some engineers back in the 1960s had this problem and used some diodes to solve it. But I never saw how they did it. So I went back to the scene of the crime. All I needed was a feedback capacitance that was big when the signal was big, and small when the signal was small.
I figured out that the circuit of Figure 2 might do it. All I had to do was build it up and try it out. Do a cut-and-fit on the capacitance sizes. Sure enough, it worked quite well. The effective feedback capacitance increases as the output goes more negative, and the diodes start to conduct. I used a fairly spacious layout, so the stray feedback capacitance (C0) was only 1 or 2 pF, due mostly to the amplifier's socket and the 1N914. If you made a really good layout, you could get the strays even lower than that and get fast response below 1/10µA.
I kept a bandwidth of 12 kHz, from 1/4 µA up to 0.4 mA. I didn't really try hard to optimize it further. I stopped, as it was working entirely well enough for me. It did overshoot a bit, but it did not ring at any signal level. You have my permission to optimize it as needed. You might use three or four diode-R-C networks to cover a wider range or to get cleaner response at all levels. So there's an old trick that hasn't been seen for about 40 years, but when we have to reconstruct it, it works pretty well.
* "What's All This Logarithmic Stuff, Anyhow?" Electronic Design, June 14, 1999, p. 111; ED Online 6068 at www.elecdesign.com