John said:
'Tanh' is an unmistakable sign of 'long-tailed pair'.
I'm using diodes at present. My search is for something that is
theoretically and practically 'better' than diodes, in the sense of more
compression range for less subjectively-assessed non-linearity
distortion (i.e. mostly low-order is preferable to a flat harmonic
spectrum or, even worse, more high-order).
You have stated that it is perhaps desirable to limit the distortion term(s) in
the instantaneous compressor (limiter) to only third order with the precept that
distortion will at the least be less objectionable. This is possible to a
point. The polynomial concept recalls the commonplace linear radio PA
terminology of "strong non-linearity" and "weak non-linearity. When a "linear"
device is driven into saturation or cutoff, then it is said to be exhibiting
strong non-linearity. Since no device is perfectly linear, the *approach* to
the hard on-off state is referred to the weak non-linearity region.
For the weak region of non-linearity, the standard polynomial model is used.
Because the question in this case invloves only speech frequencies, we can
comfortably ignore memory effects and avoid the nasty Volterra analysis and
kernal generation that would otherwise be needed. More commonly, the problem is
backwards from the present: we would be hoping to generate a memoryless
polynomial model of the imperfect amplifier and inverse it for the purpose of
predistortion cancellation of the non-linear terms in the polynomial model.
Here we hope to *generate* a third order polynomial distortion into the
amplifier.
The following example polynomial expresses the idea:
y = 3*x - x^3, |x| < 1
The gain of the example circuit is three for small signals (coefficient of the
linear term: the whole idea can be scaled, but is normalized here). The domain
limits of +/-1 are where the slope of the transfer function us zero. In
practice this is precisely the boundary where a practical circuit transitions
from weak non-linearity to strong-nonlinearity. IOW, it is hard clipping where
|x| > 1. This is what was meant in a previous comment about polynomial
representation as "possible up to a point." So the actual transfer function
shall more completely be as follows:
{3*x - x^3, |x| < 1
y = { 1 , x > 1
{-1 , x < -1
The practical limit of clamping can ultimately not be avoided (nor would we want
to avoid it given the x^3 term), it can only be traded off regarding the various
specification constraints. To the extent the circiut has fidelity to the
polynomial model, then for all input levels between -1 and +1, *only* third
order distortion product will be present. Thus the clipping is "soft" till it
*smoothly* (no undefined first derivatives) moves into the hard clipping region.
Since the basic normalized model is known, the next question is simple and
inexpensive implementation. Multipliers can be configured to provide the cubic
function explicitly. However, with there is no obvious intuition regarding the
*necessary* smooth transition from cubic polynomial to hard limiting. Moreover,
it is questionable how "simple" the idea of using multipliers is anyway. A
simplistic implementation that comes to mind is to attempt a basic piecewise
circuit of diodes. The "last" diodes to turn on would clamp to the the
normalized +/-1 values. Piecewise diode compression is common, likely because
it is straightforward and "always works."
The y = K*tanh(x) idea has also been proposed. The series expansion is:
tanh(x) = x - x^3/3 + 2*x^5/15 - 17*x^7/315 + ..., -pi/2<x<pi/2
Obviously distortion terms of higher order than three exist. This may or may
not be a problem when practical considerations are made. I wonder if a
combination of tanh and cleverly placed/biased diodes might offer the most
elegant solution that has high compliance to third order only performance.
It is interesting to note that the first two terms of my third order equation
and the tanh equation are identical (just multiply my equation by 1/3). This
was not intentional -- I only noticed afterwards. In that sense, the tanh is a
pretty good approximation right out of the gate.
The MATLAB plot is interesting:
Just start to bend tanh curve with diodes as it approachs the +/-1 saturation
points and you got it (since the two curves lay right on top of each other
otherwise). I also wonder if the natural saturation of the tanh could be
coordinated to do it *without* the diodes. Maybe...
~~~~~~~~~~~~~~~~~~~
With regard to the other question of *increasing* articulation index from
straight linear performance given a system that is otherwise non-peak power
limited, I think this is quite dubious. Two-way radios that use the clipping
don't do it because it makes it better at the "exciter." They do it because of
peak transmitter power limitations and noise at the receiver.