FIELD OF THE INVENTION

[0001]
This invention relates to mixedsignal converters of the sigmadelta noiseshaping type and, more particularly, to mixedsignal converters that employ a multibit digital representation of the signal.
BACKGROUND OF THE INVENTION

[0002]
Recently, sigmadelta, or noiseshaping, mixedsignal converters have come into widespread use. This type of converter uses a relatively coarse quantizer, usually a single bit, embedded in a feedback loop. The feedback loop causes the large quantization noise of the quantizer to become shaped in the frequency domain such that the noise over a small range of the spectrum is very low. The outofband noise is then removed by a digital filter in the case of an analogtodigital converter, or an analog filter in the case of a digitaltoanalog converter. Sigmadelta converters exhibit excellent linearity and low quantization noise.

[0003]
An important feature exploited by noiseshaping mixedsignal converters is oversampling of the signal. This provides bandwidth into which the quantization noise can be transferred, and subsequently filtered, if desired. This procedure improves the resolution of the digital representation of the signal, but only within a relatively small signal bandwidth compared with the sampling frequency. Because these converters are typically designed to have a very high input resolution (often 20 or more bits, or one part in 1E+6) within their bandwidth specification, they are susceptible to imperfections, mismatch among circuit elements and thermal noise. Therefore, techniques that relax the design tolerances on specific electronic components are useful.

[0004]
One of the primary obstacles in the design of noiseshaping mixedsignal converters is the problem of removing the large amount of outofband noise that is introduced by the digital modulator. Generally, this noise may be filtered, but the switched capacitor filter circuits typically used to accomplish this task are relatively expensive to build and may introduce nonlinear distortions. An alternative is to use multibit quantization, in which the digital word consists of more than a single bit. This approach can reduce the quantization noise directly.

[0005]
An important element in multibit noiseshaping mixedsignal converters is the digitaltoanalog converter (DAC) circuitry. In multibit digitaltoanalog (D/A) converters, the DAC structure forms the desired output, whereas in multibit analogtodigital (A/D) converters, the DAC constitutes an important element in the feedback loop. Typically, the DAC structure is configured by using a number N of nominally identical elements, each of which is a 1bit DAC and provides a unit contribution (either 0 or 1) to a summing junction. The summed output forms the multibit DAC output.

[0006]
Because of actual circuit nonidealities, such as mismatches between capacitors in an array of N capacitors in a switched capacitor array, the beneficial effects of the multibit feedback are lost due to the inherent nonlinearity caused by the mismatch. This nonlinearity directly leads to increased quantization noise and harmonic distortion within the signal bandwidth and can significantly degrade the performance of the converter.

[0007]
A number of methods have been proposed and implemented for counteracting the effects of such mismatches. Many of these methods involve a form of randomization or rotation of the bits that specify which of the individual DACs are to be selected and which are to be deselected in a given clock cycle in an effort to even out, or to average, mismatches. Examples are disclosed in L. R. Carley, “A NoiseShaping Coder Topology for 15+ Bit Converters,” IEEE J. Solid State Circuits, SC24, No. 2, pages 267273, April 1989; U.S. Pat. No. 5,406,283 issued Apr. 11, 1995 to Leung; and U.S. Pat. No. 5,856,799 issued Jan. 5, 1999 to Hamasaki et al. The main drawback of the disclosed methods is that they typically require many clock cycles to achieve the desired averaging, especially when the number of elements is large. This results in low frequency noise and may thereby degrade the performance in the passband of the converter.

[0008]
U.S. Pat. No. 5,986,595 issued Nov. 16, 1999 to Lyden et al. attempts to address this problem by replacing the rotations with a more sophisticated sorting procedure that requires extra complexity in the circuitry. U.S. Pat. No. 5,684,482 issued Nov. 4, 1997 to Galton extends these ideas to handle the case of increased shaping order, but at the cost of introducing more complex switching logic as well as a nonlocal memory, which can be costly to implement in circuit layout. Moreover, Galton's method works only for the case where the number of elements is equal to an integer power of 2.

[0009]
U.S. Pat. No. 5,404,142 issued Apr. 4, 1995 to Adams et al. discloses a datadirected scrambling technique that relieves the burden of tight analog component matching. The quantized noiseshaped word is first converted to a “thermometer code”, where for an Nbit quantized word, 2^{N }equallyweighted elements are used. In the thermometer code, the number of output bits set to one is equal to the input value. The fact that the output bits are equallyweighted allows dynamic mapping of digital input bits to analog elements of the digitaltoanalog converter. By using an array of swapping elements whose state is controlled by the data itself, errors caused by analog mismatches can be manipulated, thereby shaping the noise in the output spectrum. Therefore, most of the noise energy can be moved out of the band of interest.

[0010]
In the technique disclosed by Adams et al., each of the switching units, called a “2×2 swapper cell,” has two inputs and two outputs, and these units are arranged in a “butterfly architecture” similar to one commonly used in Fast Fourier Transform (FFT) algorithms. To further reduce the pattern tones, a randomizing preshifter can be used, as in the AD1853, a stereo multibit sigmadelta DAC sold by Analog Devices, Inc. The advantages of this method include its simple logic, which is local, and requires only 1bit memories, and its efficiency: only (N/2) log_{2 }N switching units are required for a thermometer encoder with N input levels. However, one restriction of this method is that it works only when the number of input levels is equal to an integer power of 2.

[0011]
Accordingly, it is desirable to provide scrambling methods and apparatus for noiseshaping mixedsignal converters wherein one or more of the above drawbacks are overcome. For example, relaxing the constraint that the number of input levels to the multibit DAC has to be an integer power of 2 will allow more flexible designs when the desired accuracy calls for more elements but there is not enough chip area or power available to double the number of elements.
SUMMARY OF THE INVENTION

[0012]
According to an aspect of the invention, a scrambling system comprises a rotator and a datadirected scrambler that can be used for arbitrary choices of N, the number of input levels. The rotator comprises an array of rotator cells, and the datadirected scrambler includes swapper cells and direct connections in appropriate places. An Nlevel equallyweighted digital signal is input to the rotator cells. The N outputs of the rotator cells are connected to the N inputs of the datadirected scrambler, and the N outputs of the datadirected scrambler are the final scrambled output. The operation of the scrambling system is controlled by a clock signal. At each successive clock cycle, the number of steps by which the inputs are shifted by the rotator may change by a given number. In addition, on each clock cycle, each swapper cell connects its two inputs to its two outputs, either directly or reversely, depending on the state of the two inputs and an additional state bit that represents the integrated difference of past swapper outputs.

[0013]
Accordingly, apparatus is provided, in accordance with a first aspect of the invention, for processing N equallyweighted digital signals, where N is not an integer power of 2. The apparatus comprises a rotator for rotating the N equallyweighted digital signals in a sequence of rotator states in respective clock cycles to provide N rotated digital signals, and a datadirected scrambler having N inputs and N outputs for datadirected scrambling of the rotated digital signals to distribute the N equallyweighted digital signals to each of the N outputs of the scrambler such that the usage of the N outputs is dynamically balanced over a relatively small number of clock cycles. This allows one to manipulate the errors in the power spectrum.

[0014]
The rotator may comprise circuit elements for advancing through a predetermined number of rotator states, wherein the N inputs of the rotator are shifted by a different number of steps with respect to the N outputs of the rotator in each of the rotator states. The circuit elements of the rotator may comprise rotator cells for performing a selected shift in response to a control signal and a sequencer for generating the control signal in response to a clock signal. The number N of digital signals may be of the form M×2^{k}, where M is an odd integer and k is an integer. The rotator may have M rotator states. The N inputs of the rotator may be rotated (or shifted, modulo N) by 0, N/M, 2N/M, . . . (M−1) N/M steps in respective rotator states. Preferably, the predetermined number of rotator states is selected such that the frequency with which the rotator states are repeated is outside the signal band of the digital signals.

[0015]
The rotator may comprise two or more sets of rotator cells connected in series between the N inputs and the N outputs of the rotator. Each of the sets of rotator cells passes its inputs directly to its outputs or shifts, modulo N, its inputs by a predetermined number of steps in response to a control signal. The rotator may further comprise a sequencer for providing control signals to the sets of rotator cells in response to a clock signal.

[0016]
The datadirected scrambler may comprise one or more swapper cells and one or more direct connections interconnected to provide mutually exclusive selectable signal paths from the N inputs to the N outputs. Each of the swapper cells may comprise two input terminals to receive respective inputs and two output terminals to produce corresponding outputs, circuitry responsive to a select signal for connecting the two input terminals to the two output terminals, either directly or reversely, and logic for generating the select signal. The logic may comprise logic circuitry for storing the integrated difference of past swapper cell output signals, for determining a new value of the select signal based on the current two input values to the swapper cell and the stored integrated difference, and for updating the value of the stored integrated difference.

[0017]
The datadirected scrambler may comprise two or more sets of elements connected in series between the N inputs and the N outputs of the datadirected scrambler. Each of the sets of elements may comprise swapper cells, or a combination of swapper cells and direct connections. The swapper cells may be connected in an FFTlike partial butterfly configuration. Direct connections are utilized in place of a swapper cell in each location of the partial butterfly configuration that does not require a swapper cell for swapping inputs to that location. Each of the swapper cells comprises circuitry responsive to a select signal for connecting two input terminals to two output terminals, either directly or reversely, and logic for generating the select signal.

[0018]
According to another aspect of the invention, a method is provided for processing N equallyweighted digital signals, where N is not an integer power of two. The method comprises the steps of rotating the N equallyweighted digital signals in a sequence of rotator states in respective clock cycles to provide N rotated digital signals, and datadirected scrambling of the N rotated digital signals in a datadirected scrambler having N inputs and N outputs to distribute the N equallyweighted digital signals to each of the N outputs of the scrambler such that the usage of the N outputs is dynamically balanced over a relatively small number of clock cycles.

[0019]
According to a further aspect of the invention, apparatus is provided for processing N equallyweighted digital signals, where N is not an integer power of 2. The apparatus comprises a routing circuit, responsive to control signals and having N inputs and N outputs, for distributing the N equallyweighted digital signals to each of the N outputs such that the usage of the N outputs is dynamically balanced over a relatively small number of clock cycles, and a controller for generating the control signals in response to the digital signals and a sequencing signal.

[0020]
According to a further aspect of the invention, a digitaltoanalog converter is provided. The digitaltoanalog converter comprises a code converter for converting a digital input to N equallyweighted digital signals, where N is not an integer power of 2, a rotator for rotating the N equallyweighted digital signals in a sequence of rotator states in respective clock cycles to provide N rotated digital signals, a datadirected scrambler having N inputs and N outputs for datadirected scrambling of the rotated digital signals to distribute the N equallyweighted digital signals to each of the N outputs of the scrambler such that the usage of the N outputs is dynamically balanced over a relatively small number of clock cycles, a digitaltoanalog converter including N equallyweighted digitaltoanalog converter elements for converting the scrambled digital signals to analog outputs, and a summing circuit for summing the outputs of the digitaltoanalog converter elements to produce an analog output that represents the digital input.

[0021]
According to a further aspect of the invention, an analogtodigital converter is provided. The analogtodigital converter comprises a summing unit for subtracting a feedback signal from an analog input signal and providing a summing unit output, a loop filter for receiving the summing unit output and providing a filter output signal, a multibit quantizer for providing a digital output in response to the filter output signal, and a digitaltoanalog converter responsive to the digital output for providing the feedback signal to the summing unit. The digitaltoanalog converter may be configured as described above. The digital output of the multibit quantizer represents the analog input signal.
BRIEF DESCRIPTION OF THE DRAWINGS

[0022]
For a better understanding of the present invention, reference is made to the accompanying drawings, which are incorporated herein by reference and in which:

[0023]
[0023]FIG. 1 is a block diagram of a prior art multibit noiseshaping analogtodigital converter with an encoder and a scrambler in the feedback path;

[0024]
[0024]FIG. 2 is a schematic block diagram of an eightinput butterfly scrambler;

[0025]
[0025]FIG. 3A is a schematic diagram of a switching circuit used in the scrambler of FIG. 2;

[0026]
[0026]FIG. 3B is a table that illustrates the states of the switching circuit shown in FIG. 3A;

[0027]
[0027]FIG. 4 is a block diagram of an embodiment of a datadirected swapper cell;

[0028]
[0028]FIG. 5 is a schematic diagram of a sixinput butterfly scrambler;

[0029]
[0029]FIG. 6 is a block diagram of a scrambling system in accordance with an embodiment of the invention;

[0030]
[0030]FIG. 7 is a schematic diagram of a sixinput rotator having three rotator states;

[0031]
FIGS. 8A8C illustrate the rotator states of the rotator shown in FIG. 7;

[0032]
[0032]FIG. 9 is a schematic diagram of a twocolumn rotator having six inputs and three rotator states;

[0033]
[0033]FIG. 10A is a schematic block diagram of a set of rotator cells for implementing onehalf of a sixinput rotator having three rotator states;

[0034]
[0034]FIG. 10B is a table that illustrates the rotator states of the rotator cells shown in FIG. 10A;

[0035]
[0035]FIG. 11 is a schematic diagram of a rotatorcorrected sixinput scrambling system;

[0036]
[0036]FIG. 12 is a schematic diagram of a rotatorcorrected twelveinput scrambling system;

[0037]
[0037]FIG. 13 is a schematic block diagram of a multibit noiseshaping analogtodigital converter with a rotated and scrambled thermometer encoded output in accordance with an embodiment of the invention;

[0038]
FIGS. 14A14E are power spectra for various configurations of a multibit noiseshaping analogtodigital converter, wherein power in dB is plotted as a function of the logarithm of frequency and the number of quantization levels N=24; FIG. 14A shows the case of no scrambling; FIG. 14B shows the case of scrambling without rotating; FIG. 14C shows the case of scrambling with rotating by one step per clock cycle; FIG. 14D shows the case of scrambling with rotating by N/M steps per clock cycle with M=3; FIG. 14E shows the ideal case with perfect components, where neither scrambling nor rotation is necessary;

[0039]
[0039]FIG. 15 shows power spectra for a preferred embodiment of the analogtodigital converter shown in FIG. 13, for different numbers of quantization levels;

[0040]
[0040]FIG. 16 is a graph of high frequency noise level in dB as a function of N, the number of quantization levels;

[0041]
[0041]FIG. 17 is a graph of bandwidth, for a given specification of signaltonoise ratio, as a function of N, the number of quantization levels;

[0042]
[0042]FIG. 18 is a graph of the required number of swapper cells as a function of N, the number of input levels; and

[0043]
[0043]FIG. 19 is a block diagram of a scrambling system in accordance with an alternate representation of the invention.
DETAILED DESCRIPTION

[0044]
A prior art multibit noiseshaping analogtodigital converter utilizing a datadirected scrambler, as disclosed in the aforementioned U.S. Pat. No. 5,404,142 to Adams et al., is described with reference to FIGS. 14. As shown in FIG. 1, an analog input is supplied through a summing circuit 10 to a loop filter 12. A multibit quantizer 14 converts the analog output of loop filter 12 to a digital output and supplies this digital output to a thermometer encoder 20. The thermometer encoder 20 supplies one bit for each quantization level, and the number of output bits set to one is equal to the input value. The outputs of the thermometer encoder 20 are equallyweighted. The equallyweighted output bits of thermometer encoder 20 are supplied to a scrambler 22. The equallyweighted input bits are dynamically mapped by scrambler 22 to its outputs such that the number of selected inputs is equal to the number of selected outputs on every clock cycle. Moreover, the usage of the outputs is dynamically balanced over a relatively small number of clock cycles. A clock 24 supplies a clock signal to scrambler 22. The outputs of scrambler 22 are supplied to a digitaltoanalog converter 30 including nominally equallyweighted DAC elements 32 and a summing circuit 34. The analog outputs of DAC elements 32 are summed by summing circuit 34, and the sum is subtracted from the analog input by summing circuit 10 to form a closed loop. In the configuration of FIG. 1, the number N of quantization levels in the multibit quantizer 14 is limited to an integer power of 2.

[0045]
A schematic block diagram of scrambler 22 is shown in FIG. 2 for the case N=8. Scrambler 22 includes datadirected swapper cells 40 connected in an FFTlike butterfly configuration. In the context of FFT, the topology of FIG. 2 is the flow graph of a radix2 decimation in frequency FFT algorithm, with inputs in bitreversed order and outputs in normal order.

[0046]
As shown in FIGS. 3A and 3B, each swapper cell 40 includes a switching circuit 50 that connects inputs A and B to outputs A and B, either directly or reversely, in response to a normal/swap control signal. As described in the aforementioned U.S. Pat. No. 5,404,142, the control signal is supplied by logic circuitry which responds to the states of the inputs of the swapper cell and the state of a difference signal developed as the integrated difference of prior swapper output signals. The functioning of the scrambler thus is controlled by the actual received data. This has the effect of shifting the noise due to an error in weighting to higher frequencies, out of the passband.

[0047]
An embodiment of swapper cell 40 is shown in FIG. 4. Swapper cell 40 includes switching circuit 50, exclusive OR gates 70 and 72 that receive inputs A and B, respectively, and flipflop 74 that receives the output of exclusive OR gate 72 and supplies an input to exclusive OR gate 70. The output of exclusive OR gate 70 provides the control signal to switching circuit 50.

[0048]
The scrambling technique shown in FIGS. 24 and described above is an efficient way of scrambling, since only (N/2) log_{2 }N rather than N^{2 }swapper cells are required if the number N of input bits is an integer power of 2. However, this scrambling technique is inapplicable if N is not an integer power of 2. In many applications, the required number N of quantization levels is not equal to an integer power of 2. Using the prior art approach, it is necessary to construct a mixedsignal converter with the number of quantization levels being the next higher integer power of 2. This results in additional circuitry that is not fully utilized. According to a feature of the present invention, this restriction on the number N of quantization levels is removed.

[0049]
When the number N of inputs is not an integer power of 2, the scrambling technique shown in FIG. 2 is no longer applicable. This case can be more readily understood if we conceptually insert n imaginary thermometer input bits so that N+n, the total number of real and imaginary thermometer input bits, is an integer power of 2. We may then employ a circuit that is a modification of the standard radix2 scrambler of FIG. 2, in which no swapper cells are used if the imaginary thermometer bits are involved. In that case, a direct connection is used.

[0050]
An example of a scrambler 150 for the case N=6 is shown in FIG. 5. By comparing FIGS. 2 and 5, it may be observed that inputs 16 and 17 are eliminated in the sixinput scrambler 150 of FIG. 5. Scrambler 150 uses a FFTlike partial butterfly configuration wherein direct connections are utilized in each location of the butterfly configuration that does not require swapping of the inputs to that location. Because of the smaller number of input signals, swapper cells 100, 102, 104, 106 and 108 in FIG. 2 are not required and can be eliminated. Swapper cells 102, 104, 106 and 108 in FIG. 2 are replaced by direct connections 112, 114, 116 and 118, respectively, in FIG. 5. Where the number of inputs is not an integer power of 2, the scrambler thus includes a number of swapper cells and a number of direct connections. The scrambler 150 of FIG. 5 includes swapper cells 120, 122, 124, 126, 128, 130 and 132, and direct connections 112, 114, 116 and 118. Referring to FIG. 5, it may be observed that direct connections 112, 114, 116 and 118 are used in each location of the FFTlike partial butterfly configuration that does not require swapper cells for swapping of inputs to that location. It will be understood that a number of different scrambler topologies produce equivalent results for a given value of N.

[0051]
The scrambler 150 of FIG. 5 may be implemented as two or more columns, or sets, each of which includes swapper cells, or a combination of swapper cells and direct connections. The embodiment of FIG. 5 includes sets 140, 142 and 144. Each set has N inputs and N outputs. In the embodiment of FIG. 5, set 140 receives inputs I0I5 and provides six outputs to set 142. Set 142 receives six inputs from set 140 and provides six outputs to set 144. Set 144 receives six inputs from set 142 and provides outputs O0O5. Set 140 includes swapper cells 120, 122 and 124; set 142 includes swapper cells 126 and 128 and direct connections 112 and 114; and set 144 includes swapper cells 130 and 132 and direct connections 116 and 118.

[0052]
The scrambler shown in FIG. 5 results in some outputs being used more frequently than others. This would lead to harmonic distortion if the scrambler was used in a noiseshaping analogtodigital converter of the type shown in FIG. 1. The present invention solves this problem by utilizing a rotator for rotating, or shifting, the inputs before scrambling. This results in the usage of the outputs of the scrambler being dynamically balanced over a relatively small number of clock cycles, but at the cost of introducing a periodic wave. The period of the wave is N clock cycles if the inputs are rotated by one step per clock cycle. In a noiseshaping analogtodigital converter of the type shown in FIG. 1, this will lead to a pronounced harmonic at frequency f_{s}/N, where f_{s }is the sampling frequency. This may degrade the performance in the signal band when N is comparable to the oversampling ratio. In such cases, instead of shifting by one step per clock cycle, it is preferable to shift by a larger number of steps per clock cycle so as to keep the period of the rotation relatively short and thereby to shift the harmonic distortion away from the signal band. This strategy has the additional advantage that the hardware is easier to build. For example, if N is of the form M×2^{k}, where M is an odd prime number and k is an integer, then rotating by N/M steps per clock cycle shifts the harmonic distortion to the frequency f_{s}/M This is far from the signal band for small M, for example, M=3 or M=5.

[0053]
A block diagram of a scrambling system in accordance with an embodiment of the invention is shown in FIG. 6. The scrambling system includes datadirected scrambler 150 and a rotator 152. A clock 154 supplies a clock signal 156 to datadirected scrambler 150 and to rotator 152. Rotator 152 receives equallyweighted digital input signals I0, I1 . . . I(N−1), where N is not an integer power of 2. Rotator 152 supplies N outputs to N inputs of datadirected scrambler 150. Datadirected scrambler 150 provides N outputs O0, O1, . . . O(N−1). The scrambling system processes the digital input signals such that the digital input signals are equally represented in outputs O0, O1, . . . O(N−1) in a relatively short time, such as a few clock cycles.

[0054]
The datadirected scrambler 150 may include a combination of swapper cells and direct connections in a butterflytype architecture as shown by way of example in FIG. 5 and described above. In particular, a datadirected scrambler having N inputs, where N is not an integer power of 2, can be configured as the conventional butterfly architecture of swapper cells, with swapper cells replaced with direct connections where appropriate due to the lack of input bits. Thus, the datadirected scrambler 150 includes a combination of swapper cells and direct connections in the butterfly architecture. The swapper cells may be implemented as described above in connection with FIGS. 3A, 3B, and 4.

[0055]
The rotator 152 advances through a predetermined number of rotator states in a repeating sequence. In each rotator state, the rotator outputs are shifted by a predetermined number of steps. The rotator 152 may be viewed as a barrel shifter that is preprogrammed to operate in a known sequence.

[0056]
A schematic diagram of an example of rotator 152 for the case of six inputs and three rotator states is shown in FIG. 7. The individual rotator states are shown in FIGS. 8A8C. A rotator topology for implementing the rotator of FIG. 7 is shown in FIG. 9. In this example, the jth input is mapped directly to the jth output at clock cycles 0, 3, 6, 9, . . . ; to the (j+2)th output at clock cycles 1, 4, 7, 10, . . . ; and to the (j+4)th output at clock cycles 2, 5, 8, 11, . . . , with the indices taken modulo N. However, this choice is for the purpose of illustration and is not the only possible choice of rotation step. There is much flexibility to accommodate other constraints for a particular application. It should be noted that when M is not a prime number but a composite, it is desirable to use an encoder consisting of a series of rotators, as described below, since this reduces the amount of hardware while retaining the same performance.

[0057]
In the example of FIGS. 7 and 8A8C, rotator 152 has three rotator states. In a first rotator state shown in FIG. 8A, inputs I0I5 are connected directly to outputs O0O5, respectively (no shift). In a second rotator state shown in FIG. 8B, each input is shifted by two steps. Thus, input I0 is shifted to output O2, input I1 is shifted to output O3, etc. The final two inputs I4 and I5 are wrapped around and are shifted to outputs O0 and O1, respectively. In a third rotator state shown in FIG. 8C, each input is shifted by four steps. Thus, input I0 is shifted to output O4, input I1 is shifted to output O5, input I2 is shifted to output O0, etc. The rotator then returns to the first rotator state shown in FIG. 8A in a repeating sequence. It will be understood that the rotator may operate with an increasing number of steps, a decreasing number of steps or an arbitrary sequence.

[0058]
An algorithm for implementing rotator 152 with six inputs and three rotator states is shown in FIG. 9. Rotator 152 is implemented as two columns, or sets, including a first column 170 and a second column 172. Each of columns 170 and 172 maps its inputs directly to the respective outputs without any shift or shifts each input by N/M=2 steps. Together, columns 170 and 170 may rotate inputs I0I5 by 0, 2 or 4 steps, as shown in FIGS. 8A8C.

[0059]
An implementation of rotator 152 is described with reference to FIGS. 10A and 10B. As shown in FIG. 10A, a rotator cell 180 in column 170 receives inputs I0, I2 and I4 and supplies outputs to a rotator cell 182 in column 172. Rotator cell 182 provides outputs O0, O2 and O4. Each of rotator cells 180 and 182 shifts its inputs by zero steps (indicated by solid lines) or two steps (indicated by dashed lines) in response to control signals from a controller implemented as a sequencer 184. Two additional rotator cells (not shown), one in each column, having the same configuration are utilized for rotating inputs I1, I3 and I5 to provide outputs O1, O3 and O5. The sequencer 184 generates binary control signals in response to a clock in accordance with the table of FIG. 10B. In the table of FIG. 10B, DIRECT indicates a zero step shift (no shift) and SHIFT indicates a twostep shift. Sequencer 184 may be implemented as a threestate counter for a rotator having three rotator states. More generally, a controller controls the states of the rotator.

[0060]
The rotator 152 of FIG. 6 thus may be implemented as two or more columns, or sets, of rotator cells and a sequencer. Each set of rotator cells has N inputs and N outputs, and the sets of rotator cells are connected in series. Each set of rotator cells passes its inputs directly to its outputs (no shift) or shifts its inputs by a predetermined number of steps in response to a control signal provided by the sequencer. The sets of rotator cells provide a selected number of rotator states, and the sequencer advances through the rotator states in a periodic manner.

[0061]
When M is not a prime number but a composite, it is desirable to use an encoder consisting of a series of rotators, with each rotator carrying out the rotation for a factor of M, as this reduces the amount of hardware while retaining the same performance. For example, when M=15=3×5, using two rotators, one with three rotational steps and the other with five rotational steps, connected in series, is more efficient in terms of hardware requirements than using one rotator with 15 rotational steps.

[0062]
A sixinput scrambling system including a sixinput datadirected scrambler 150 and a sixinput rotator 152 having three rotator states is shown in FIG. 11. It will be understood that the invention can be utilized for different values of N, the number of inputs, where N is not an integer power of 2. While the invention is particularly efficient for the case N=M×2^{k}, with M being a small odd prime integer and k being an integer, the invention can be used for any choice of N.

[0063]
In the scrambler of FIG. 11, it may be observed that the swapper cells either swap or do not swap pairs of inputs. For this reason, rotator 152 preferably shifts inputs by an even number of steps (0, 2, 4, etc.) to avoid duplicating the function of scrambler 150 and to ensure that the usage of the outputs is dynamically balanced over a relatively small number of clock cycles.

[0064]
A twelveinput scrambling system including a twelveinput datadirected scrambler 250 and a twelveinput rotator 252 having three rotator states is shown in FIG. 12. In the embodiment of FIG. 12, N=12, M=3 and k=2. Scrambler 250 includes four columns, or sets, 260, 262, 264 and 266, each of which includes swapper cells or a combination of swapper cells and direct connections. In particular, sets 260 and 262 each include six swapper cells. Sets 264 and 266 each include four swapper cells and four direct connections. Rotator 252 shifts its inputs by 0, 4 and 8 steps in different rotator states, so that the usage of the outputs of scrambler 250 is dynamically balanced over a relatively small number of clock cycles.

[0065]
The number of rotator states is selected based, at least in part, on the band of the digital signals being converted. In particular, the number M of rotator states should be selected such that the rotator frequency f_{s}/M is outside the signal band of the digital signals being converted. This may vary depending on whether a lowpass filter or a bandpass filter is being utilized in the converter.

[0066]
The rotatorcorrected scrambling system described above can be used as part of a multibit digitaltoanalog converter in a multibit noiseshaping converter, as shown in FIG. 13. The converter includes summing circuit 210, loop filter 212, multibit quantizer 214, thermometer encoder 220, rotator 152, datadirected scrambler 150, clock 154, and a digitaltoanalog converter 230 including DAC elements 232 and summing circuit 234. The analog outputs of DAC elements 232 are summed by summing circuit 234, and the sum is subtracted from the analog input by summing circuit 210 to form a closed loop. The thermometer encoder 220 provides N equallyweighted digital signals, where N is not an integer power of 2. Rotator 152 and datadirected scrambler 150 may be configured as described above.

[0067]
In the multibit sigmadelta loop, the thermometer encoder output bits represent the total input signal plus noiseshaped terms. FIGS. 14A14E show power spectra of the digital output for various configurations of the analogtodigital converter of FIG. 13. In FIGS. 14A14E, the number of quantization levels N=24=3×2^{3}, and the input is a sinusoidal signal at 1 kilohertz. If the components in an unoptimized multibit sigmadelta loop are ideal, the spectral density of noise is known to be given by

N(ƒ)=Δ{square root}{square root over (2/(3ƒ_{s}))}[2 sin(πf/f _{s})]^{p} (1)

[0068]
where Δ is the spacing in the quantizer 214, f_{s }is the sampling frequency and p is the shaping order of the loop filter. This ideal case is illustrated in FIG. 14E. However, the performance is much degraded by mismatch of components, heterogeneity and thermal noise. An implementation of the converter shown in FIG. 13 without rotator 152 and scrambler 150 leads to undesirable harmonic distortions in the signal band, as illustrated in FIG. 14A. If the datadirected scrambler 150 is utilized without a rotator, some, but not all, of the inband harmonic distortions are suppressed, as illustrated in FIG. 14B, because some DAC elements 232 are used more often than others. With a rotator that rotates one step per clock cycle, all of the original inband harmonic distortions can be suppressed, but a pronounced peak 250 at frequency f_{s}/N is introduced, as shown in FIG. 14C. In a preferred embodiment wherein the rotator rotates N/M steps per clock cycle, all of the original inband harmonic distortions are suppressed without introducing a pronounced peak at frequency f_{s}/N, as illustrated in FIG. 14D. A closer examination reveals that there is a peak at frequency f_{s}/M However, this peak lies far from the signal band and is therefore easily removable by conventional filtering.

[0069]
Using the rotatorcorrected scrambling system described herein in a multibit sigmadelta loop, a spectral density of noise comparable to the theoretical estimate of Equation (1) for the ideal case can be obtained in the signal band, except for thermal noise. Moreover, by varying N, the number of thermometer levels and the number of DAC elements, the quantizer spacing Δ is effectively varied, since Δ is proportional to 1/N. Thus, with the rotatorcorrected scrambling system, which permits arbitrary choice of N, the performance may be controlled in a scalable way. This is illustrated in FIG. 15, for the choices N=6, 32 and 192, with an input signal at 1 kilohertz. In FIG. 15, curve 300 corresponds to N=6, curve 302 corresponds to N=32 and curve 304 corresponds to N=192. If other values of N are selected, the noise level changes in an approximately continuous manner. As a result, the noise level scales with 1/N. This is illustrated in FIG. 16 where noise level in dB at 1 megahertz is plotted as a function of N. In FIGS. 16 and 17, “+” represents N=2^{k }(prior art), “▪” represents N=3×2^{k}, and “∘” represents N=5×2^{k}. The dashed line represents 1/N scaling. Meanwhile, the usable bandwidth scales with N^{1/p }for pthorder noiseshaping loop filters. This is illustrated in FIG. 17 for a secondorder sigmadelta loop. In FIG. 17, the bandwidth is plotted as a function of N, the number of quantization levels. The dashed line in FIG. 17 represents N^{1/2 }scaling. That all data points are close to this line indicates that the present invention achieves the same scaling performance as the prior art.

[0070]
The above example illustrates the application of the invention in a lowpass, unoptimized multilevel sigmadelta loop. However, the invention is not limited to this application and can be used in any circuit which uses multilevel feedback, such as circuits involving cascades of integrators or cascades of resonators.

[0071]
An advantage of the disclosed approach is that if a particular output weight is incorrect, most of the error occurs at high frequencies, and very little of the error occurs in the frequency band of interest. Also, since each output bit represents one input bit plus noiseshaped terms, an error in the output weight does not cause harmonic distortion. These advantageous properties are present in the prior art disclosed in U.S. Pat. No. 5,404,142. However, whereas the prior art is restricted to the case where the number of input bits, and thus the number of quantization levels, must be an integer power of 2, the present invention does not have this restriction. The number of input levels, and thus the number of quantization levels, can be any positive integer. The removal of this restriction leads to greater flexibility in the design of multibit A/D and D/A converters in the presence of physical constraints, such as nonideal components and limited chip area, and provides scalable performance.

[0072]
Another advantage of the invention is its simplicity, both at the conceptual level and at the implementation level. Simplicity at the conceptual level permits easy design, while simplicity at the implementation level translates into reduced chip area and lower cost.

[0073]
The present invention requires the use of a rotator. However, the hardware cost of the rotator is small, because there are only a few possible rotator configurations. For example, if N, the number of input levels is of the form N=M×2^{k }for some positive integer k and prime number M, then the rotator may rotate by 0, N/M, 2N/M, . . . (M−1) N/M. That is, there are only M possible rotator states. Using successive columns, each of which either maps all the inputs directly to the outputs without any rotation or rotates all the inputs by a step of N/M to the outputs (with output indices modulo N), the number of columns in the rotator can be bounded by the smallest integer larger than or equal to log_{2}M. In the example shown in FIGS. 79, with N=6 and M=3, only two rotator columns are required. The control signals for the rotator columns are derived from the system clock, as shown in FIG. 10B.

[0074]
In terms of the number of swapper cells required, the present invention is comparable to the prior art disclosed in U.S. Pat. No. 5,404,142, which achieves very efficient scrambling for the case where N is an integer power of 2. In this case, the number of swapper cells S(N) is given by

S(N)=(N/2) log_{2 } N (2)

[0075]
The present invention achieves a similar O (N log_{2 }N) scaling. In particular,

S(N)=(N/2) log_{2 }(N/3)+2N/3 for N=3×2^{k} (3)

S(N)=(N/2) log_{2 }(N/5)+N for N=5×2^{k} (4)

[0076]
This is illustrated in FIG. 18, where the required number of swapper cells is plotted as a function of N, the number of input levels. In FIG. 18, “+” represents N=2^{k }(prior art), “▪” represents N=3×2^{k}, and “∘” represents N=5×2^{k}.

[0077]
By replacing some swapper cells with direct connections, the scrambling technique disclosed in U.S. Pat. No. 5,404,142 has been generalized to cope with the case of an arbitrary number of inputs. This, together with a rotator, which is inexpensive because of its small number of possible rotator states, provides a way to realize multibit digitaltoanalog conversion for an arbitrary number of quantization levels, thereby gaining low outofband noise benefits, while retaining the excellent distortion characteristics of 1bit converters. This generalization permits scalable implementation, leading to greater flexibility in the design of multibit A/D and D/A converters in the presence of physical constraints, such as nonideal components and limited chip area. The performance of the rotatorcorrected scrambling technique described herein is comparable to the scrambling technique described in the aforementioned U.S. Pat. No. 5,404,142. In particular, analog matching requirements may be relaxed by as much as 30 dB compared to other approaches, such as the random scrambler technique disclosed in the aforementioned article by L. R. Carley. This allows very high resolution and scalable noiseshaping analogtodigital converters and digitaltoanalog converters to be implemented in modest cost CMOS processes.

[0078]
A block diagram of a scrambling system in accordance with an alternate representation of the invention is shown in FIG. 19. A routing circuit 350 receives equallyweighted digital inputs I0, I1, . . . , I(N−1) and provides digital outputs O0, O1, . . . , O(N−1). The routing circuit 350 uniformly distributes the N equallyweighted input signals to its N outputs over a relatively small number of clock cycles in response to control signals 352 provided by control logic 354. Control logic 354 generates control signals 352 in response to a sequencing signal, such as a clock signal, and the digital inputs I0, I1, . . . , I(N−1).

[0079]
The scrambling system of FIG. 19 performs the same function as the scrambling system shown in FIG. 6 and described above. By comparing the architectures of FIGS. 19 and 6, it may be observed that routing circuit 350 corresponds to rotator 152 and datadirected scrambler 150 of FIG. 6, with the control portions of rotator 152 and datadirected scrambler 150 incorporated into control logic 354. Thus, switching circuit 50 (FIG. 4) of each swapper cell and the direct connections of datadirected scrambler 150 are incorporated into routing circuit 350; and exclusive OR gates 70 and 72 and flipflop 74 (FIG. 4) of each swapper cell of datadirected scrambler 150 are incorporated into control logic 354. In addition, the rotator cells 180 and 182 (FIG. 10A) of rotator 152 are incorporated into routing circuit 350, and sequencer 184 (FIG. 10A) of rotator 152 is incorporated into control logic 354.

[0080]
The foregoing describes the correspondence between the scrambling systems of FIGS. 6 and 19. However, it will be understood that the scrambling system of FIG. 19 is not limited to the architecture shown in the example of FIG. 6.

[0081]
It should be understood that various changes and modifications of the embodiments shown in the drawings and described in the specification may be made within the spirit and scope of the present invention. Accordingly, it is intended that all matter contained in the above description and shown in the accompanying drawings be interpreted in an illustrative and not in a limiting sense. For example, the number of inputs may be arbitrarily selected in a scalable way, as suggested by FIGS. 16 and 17; and some or all aspects of the rotator and of the scrambler may be combined, as indicated in FIG. 19. The invention is limited only as defined in the following claims and the equivalents thereto.