Fig 1. An op amp easily accomplishes addition, while a Gilbert cell handles the task of multiplication.caption of image
Fig 2. Two digital words are added by combining a series of full adder cells. When combined with shift registers, they make up the backbone of a digital multiplier.
Fig 3. Multiplexing two input densities results in an averaged density.
Fig 4. An XNOR gate functions as a density multiplier for bipolar references.
Fig 5. An AND gate functions as a density multiplier for a single reference.
“Density” represents an analog or digital value as the percentage of time during which a digital stream is high (see “Signal Processing In The Density Domain (Part 1)” at www.electronicdesign.com). A modulator converts an analog or digital signal into the density stream, while a filter converts a density stream into an analog or digital value.
Modulators are good for more than moving from one domain to another, though. They also offer a simple and cost-effective way to process signals. Signal processing requires a means of mixing signals, which is usually accomplished through addition or multiplication. Each particular domain places unique requirements on hardware complexity and accuracy.
The Analog Domain
For analog signal processing, the easiest route is addition. It basically involves an op-amp adder circuit (Fig. 1). With this type of adder, noise will determine the resolution. However, accuracy is determined by the tolerance of the selected resisters and op-amp parameters (gain bandwidth, offset voltage, etc.). Op-amp performance and resistor tolerance are functions of cost.
Analog multipliers generally exploit the exponential relationship of the voltage across a diode and the current flowing through it. Here, the popular Gilbert cell topology is favored (Fig. 1, again). Although this topology has good temperature-coefficient matching between transistor pairs, trimming must be used to remove offsets. Also, signals must be biased to achieve four-quadrant performance.
Signal processing in the analog domain requires analog components, making such designs susceptible to noise. Moreover, increased resolution comes at the cost of more expensive parts.
The Digital Domain
In the digital domain, signal-processing addition is built around the single-bit full adder (Fig. 2). For each stage, there are two values to add plus the carry from the previous adder. The outputs equal the sum of the inputs and a carry to pass to the next cell.
The circuit is very straightforward to implement. However, because “n” bits of resolution require “n” adder cells, size becomes prohibitive as bit width expands.
Multiplication requires individually adding the bits of each input with all the bits of the other inputs for a combination of n2 additions. Circuit complexity grows in proportion to the square of the number of bits of resolution.
Signal processing in the digital domain requires simple logic gates, which in turn creates noise-immune designs. The tradeoff for increased resolution is a greater amount of logic, though.
The Density Domain
Values in the density domain are limited to a range between RefLow and RefHigh. The relationship between the value and its density is represented by:
Adding two acceptable values could generate an answer that exceeds the range. However, if instead of adding the two signals are averaged, the output is guaranteed to be in range. However, by averaging the two added signals, the output is guaranteed to be in range.
With a density averager, the output represents an equal combination of the two inputs. A density-mixing matrix shows the generated density (Fig. 3). The output is high when both inputs are high, and it’s low when both inputs are low. When a single input is high, the output is high for only half the duration. Taking the weighted value in the density matrix results in:
There are two density multipliers: one for bipolar references (RefHigh = –RefLow = Ref), and one for a single reference (RefHigh = Ref, RefLow = 0). When using bipolar references, the relationship between a value and its density is given as:
Logic high represents positive, while logic low represents negative. Therefore, positive · positive = positive, negative · negative = positive, and positive · negative = negative.
The density multiplier for bipolar references is an XNOR gate (a density matrix shows the generated density) (Fig. 4). Adding up the weighted section of the matrix will result in:
Thus, two modulators and an XNOR gate can easily accomplish four-quadrant multiplication. When using a single reference, the relationship between a value and its density is given as:
Logic high represents positive, while logic low represents zero. Positive · positive = positive, and anything · zero = zero.
The density multiplier for a single reference is an AND gate (a density-mixing matrix shows the generated density) (Fig. 5). Adding up the weight section of the matrix results in:
Thus, two modulators and an AND gate can easily accomplish single-quadrant multiplication.
Like digital signal processing, signal processing in the density domain requires simple logic gates, and it’s relatively immune to noise. However, in this case, increased resolution doesn’t come at the cost of more logic. Rather, the resolution (or time) used to measure the density value will determine increases in resolution.
This is a big chunk of stuff to process and an excellent place to end this column. In my next column, I will discuss several different modulator and filter topologies—both digital and analog. Stay tuned!