EP1704643A1 - Signal processing with look-ahead modulator noise quantization minimization - Google Patents
Signal processing with look-ahead modulator noise quantization minimizationInfo
- Publication number
- EP1704643A1 EP1704643A1 EP05705645A EP05705645A EP1704643A1 EP 1704643 A1 EP1704643 A1 EP 1704643A1 EP 05705645 A EP05705645 A EP 05705645A EP 05705645 A EP05705645 A EP 05705645A EP 1704643 A1 EP1704643 A1 EP 1704643A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- vector
- output
- delta
- vectors
- quantization error
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/3002—Conversion to or from differential modulation
- H03M7/3004—Digital delta-sigma modulation
- H03M7/3006—Compensating for, or preventing of, undesired influence of physical parameters
- H03M7/3011—Compensating for, or preventing of, undesired influence of physical parameters of non-linear distortion, e.g. by temporarily adapting the operation upon detection of instability conditions
Definitions
- the present invention relates to signal processing and more particularly relates to look- ahead delta-sigma modulators having quantization error based output selection to minimize quantization noise.
- FIG. 1 depicts a prior art signal processing system 100 having a look-ahead delta- sigma modulator 102.
- the signal source 102 provides an input signal to pre-processing components 104.
- Preprocessing components include an analog-to-digital converter ("ADC") and oversampling components to generate a k-bit, digital input signal x(n).
- ADC analog-to-digital converter
- x(n) generally represents a signal sampled at 44.1 kHz times an oversampling ratio, such as 64:1.
- Look-ahead modulator 106 quantizes input signal x(n) and shapes the quantization noise so that most of the quantization noise is moved out of the signal band of interest, e.g. approximately 0-20 kHz for audio applications.
- Each output signal y(n) (also referred to herein as an "output value”) generally has one of two values selected from the set ⁇ + ⁇ /2, - ⁇ /2 ⁇ with " ⁇ " representing the full swing of y(n). (For convenience, ⁇ /2 will be represented as +1, and - ⁇ /2 will be represented as - 1.).
- the output signal y(n) can be processed further and, for example, used to drive an audio sound system or can be recorded directly onto a storage medium.
- Figure 2 depicts a schematic representation of prior art look-ahead delta-sigma modulator 106 with a look-ahead depth of M.
- Table 1 describes an embodiment of the symbols used in Figure 2.
- the look-ahead depth M refers to the dimension of each delayed output candidate vector Yoi used to determine output signal y(n).
- a negative delayed output candidate vector - Y D i ⁇ ⁇ 0, 1 ,2, ... , N- 1 ⁇ and the input vector X t are inputs to noise shaping filter 202(i).
- each of the N delayed output candidate vectors contains a unique set of elements.
- Each noise-shaping filter 202(f) of look-ahead delta-sigma modulator 106 uses a common set of filter state variables for time t during the calculations of respective cost value vectors Cj.
- Filter 202 maintains the actual filter state variables used during the calculation of each y(n). The state variables are updated with the selected y(n) output value. Loop filter 202 processes X; and -Y; to produce an error value, which in this embodiment is referred to as cost value vector Cj. Cost value vector Cj , and, thus, each element of cost value vector Cj is a frequency weighted error value. In some embodiments of look-ahead delta-sigma modulator 106, input signal vector x and delayed output candidate vectors Y D , are also used as direct inputs to filter 202(i)
- Quantizer error and output generator 203 includes two modules to determine y(n).
- the cost function minimum search module 204 computes the cost value power, (2) , of each cost value vector Cj in accordance with Equation 1, and determines the minimum cost value power at time t.
- t M c i - ⁇ [ c t P Equation 1.
- t l
- the cost function minimum search module 204 of quantizer 203 attempts to minimize the energy out of loop filter 202. Minimizing the energy out of loop filter 202 effectively drives the input to a small value, which effectively results in a relatively high loop gain for look-ahead delta-sigma modulator 106 and, thus, modifies the noise shapping transfer function in an undesirable way.
- the y(n) selector module 206 selects y(n) as the leading bit of Yj where Cj (2) m j n represents the minimum cost value power.
- the second primary thread of look-ahead modulator research involves pulse width modulation ("PWM”) amplifiers based on delta-sigma modulators combined with digital PWM modulation stages.
- PWM pulse width modulation
- the principal researchers have been Peter Craven and John L. Melanson.
- U.S. Patent No. 5,784,017 entitled “Analogue and Digital Converters Using Pulse Edge Modulations with Non-Linear Correction” inventor Peter Craven (“Craven”), which is incorporated herein by reference in its entirety, Craven described the use of look-ahead in delta- sigma modulators.
- the purpose of Craven was to ensure stability in alternating edge modulation, an inherently difficult modulation mode to stabilize.
- the delta-sigma modulator is operating at a low oversampling ratio (typically 4-16), and quantization noise is a special problem.
- Figure 3A depicts a model of a models filter 202 as a composite of two (2) transfer functions H ⁇ (z) and H 2 (z).
- the feedback of output candidate vector Y DJ introduces quantization noise 302 into the feedback loop of look-ahead modulator 106 but not into the input of look- ahead modulator 106.
- loop filter 202 can be modeled as having two separate transfer functions, Hi (z) and H 2 (z).
- the noise transfer function (“NTF”) equals l/[l+z -1 *H 2 (z)].
- the signal transfer function (“STF”) equals H ⁇ (z)/[H-z _1 *H 2 (z)].
- HI and H2 are identical. In the general case, HI and H2 differ. The choice of implementation affects mainly the STF. For most purposes, the NTF is the critical design criteria, making the choice of HI less critical.
- Figure 3B represents a typical fifth (5 th ) order noise-shaping filter 300 with input x(n) and feedback y(n).
- Filter 300 represent one embodiment of filter 202 and can be applied to non- look-ahead and look-ahead delta-sigma modulators.
- the scale factors k and gain factors g are design choices.
- the ki scale factor provides a unity gain for the first integrator stage 302. Equation 2 represents the transfer function H ⁇ (z):
- Equation 3 represents the transfer function H 2 (z):
- Figures 3C and 3D depict the respective NTF and STF pole-zero plots of filter 300.
- the NTF is a high-pass function with multiple zeros in the signal band
- the STF is an all-pole low-pass function.
- Figure 4 depicts the transfer function of H 2 (z) when the NTF is set to be a seventh (7 th ) order Butterworth filter with added NTF zeros.
- the transfer function H 2 (z) 402 does not maintain a smooth transition as 0 dB is approached. Rather a spike 404 occurs, which represents noise. This noise will be in the near out-of-band frequency region, which is undesirable as it makes reproduction more difficult.
- a look-ahead delta-sigma modulator includes a digital filter to filter data derived from input signal data and respective elements of delayed output candidate vectors to generate filter output vectors, wherein the digital filter includes state variables that are updated via feedback of a selected output value.
- the look-ahead delta-sigma modulator further includes a quantization error generator, coupled to the digital filter to receive the filter output vectors, to determine a set of quantization error vectors from each set of M element modulator output candidate vectors and the filter output vectors, wherein M is greater than one and each element in the output candidate vectors is a potential output value of the delta- sigma modulator.
- the look-ahead delta-sigma modulator also includes an output generator to select from each set of quantization error vectors a quantization error vector associated with a modulator output candidate vector and to select an output from the associated modulator output candidate vector.
- a method of determining output values of a delta-sigma modulator using quantization error vectors includes filtering data derived from input signal data and respective elements of M-element delayed output candidate vectors to generate filter output vectors. The method further includes generating quantization error vectors for each set of M element modulator output candidate vectors and each set of M element filter output vectors, wherein M is greater than one and each element in the output candidate vectors is a potential output value of the delta-sigma modulator. The method also includes selecting from each set of quantization error vectors a quantization error vector associated with one of the modulator output candidate vectors and generating an output from the associated modulator output candidate vector.
- a signal processing system includes an M-depth delta-sigma modulator delta-sigma modulator to determine output values from respective sets of M element modulator output candidate vectors using quantization error vectors, wherein M is greater than one, each element in the output candidate vectors is a potential output value of the delta-sigma modulator.
- a method of determining an output signal using an M-depth delta-sigma modulator and quantization error vectors, wherein M is greater than one and each element in the output candidate vectors is a potential output value of the delta-sigma modulator includes processing an input signal vector and a set of delayed output candidate vectors. For each processed input signal vector and delayed output candidate vector, the method further includes computing a quantization error vector from the processed input signal vector and delayed output candidate vector and processing each quantization error vector to identify the output candidate vector that best matches the input signal vector. The method also includes selecting an output from the output candidate vector that best matches the input signal vector.
- a method of processing a signal using a delta-sigma modulator includes determining output values of an M-depth delta-sigma modulator from respective sets of M element modulator output candidate vectors and an M element modulator input vector using quantization error vectors, wherein M is greater than one, each element in the output candidate vectors is a potential output value of the delta-sigma modulator.
- Figure 1 depicts a signal processing system with a conventional look-ahead delta-sigma modulator.
- Figure 2 depicts example data used by the look-ahead delta-sigma modulator of Figure 1 to determine an output signal.
- Figure 3 A depicts a model of the look-ahead modulator of Figure 1 that includes a model of a noise shaping filter.
- Figure 3B represents a noise shaping filter of Figure 3A.
- Figure 3C represents a pole-zero plot of a noise transfer function of the filter of Figure 3B.
- Figure 3D represents a pole-zero plot of a signal transfer function of the filter of Figure 3B.
- Figure 4 depicts an example loop filter transfer function of the look-ahead modulator of Figure 1.
- Figure 5 depicts a signal processing system having a look-ahead delta-sigma modulator with quantizer input values representing quantization error.
- Figure 6 depicts a model of the look-ahead modulator of Figure 5.
- Figure 7 depicts an example loop filter transfer function of the look-ahead modulator of Figure 5.
- Figure 8 depicts a signal processing system having a look-ahead delta-sigma modulator with weighted quantization error vectors.
- Figures 9A-9F depict weighting windows with a downward weighting trend.
- Figure 10 depicts a signal processing system that includes a look-ahead modulator of Figure 5, an output device and process, and an output medium.
- Figure 11 depicts post-processing operations in an embodiment of the signal processing system of Figure 8.
- Equation 1 It has been proposed in conventional publications that the power output of a delta-sigma noise-shaping filter is a good metric for optimization, i.e. see Equation 1.
- Equation 1 has at least two disadvantages: (1) Equation 1 is non-monotonic in magnitude frequency response and (2) Equation 1 is not appropriate for more than two quantization levels.
- Equation 1 is non-monotonic in magnitude frequency response and (2) Equation 1 is not appropriate for more than two quantization levels.
- the approach of Equation 1 with look- ahead delta-sigma modulators can decrease the signal to noise ratio relative to conventional delta-sigma modulators.
- the signal processing systems described herein include a look-ahead delta-sigma modulator that processes multiple output candidate vectors and an input vector to determine a quantization error vector for each output candidate vector.
- the quantization error vector represents a difference between a cost value vector and an input candidate vector.
- Look-ahead delta-sigma modulator output values are selected using the quantization error vectors by, for example, determining the minimum power quantization error vector for each input vector X and selecting the output value from the input candidate vector associated with the minimum power quantization error vector.
- Quantization error vectors can also be weighted using a non-uniform weighting vector.
- the look-ahead delta-sigma modulators of the signal processing systems described herein include a loop filter with a noise transfer function (“NTF”) and a signal transfer function (“STF").
- NTF noise transfer function
- STF signal transfer function
- the filter is designed around optimizing the NTF quantity l/[l+z _1 *H 2 (z)] ("H 2 (z) is illustrated in Figure 6).
- Optimizing "l/[l+z "1 *H 2 (z)]” is effectively the same as minimizing z + H 2 (z).
- Minimizing z + H 2 (z) effectively minimizes a difference between the input and output values of the look-ahead delta-sigma modulator quantizer.
- the difference between the input and output values of the quantizer represent quantization error.
- the look-ahead delta-sigma modulators of the signal processing system described herein selects an output based on quantization error values.
- the look-ahead delta-sigma modulator output value is selected from Yj, where [Cj - Yi] (2) m j n represents the minimum quantization error power.
- Figure 5 depicts one embodiment of a digital signal processing system that includes a look-ahead delta-sigma modulator for selecting output values using quantization error.
- "Best" can be defined as closest matching in the signal band of interest.
- “Closest matching” can be defined, for example, in a power sense (lowest distance), in a minimum/maximum sense, in a psycho- acoustically weighted sense, other desired measure.
- the "best" output signal pattern Y[n] is the pattern Y[n] such that [H(X-Y D )- Y] has the lowest power.
- a "signal band of interest” is, for example, a frequency band containing a signal with data of interest. For example, an audio signal band of interest is approximately 0 Hz to 25 kHz.
- look-ahead delta-sigma modulator 500 represents an embodiment of a look-ahead delta-sigma modulator that uses quantization error to determine output values.
- look-ahead delta-sigma modulator 500 can be reduced using pruning or other computation reduction methods. Pruning techniques include eliminating or reducing processing of redundant cost value vectors and eliminating or reducing redundant arithmetic calculations.
- Look-ahead delta-sigma modulator 500 performs noise shaping on the input data, input vector X t and each negative delayed output candidate vector -Y D ⁇ , in accordance with respective loop filter 502(i) transfer function.
- the state variables used by each loop filter 502(i) are identical as depicted by loop filter 502 and connecting lines indicating the common use of the state variables 501.
- Multiple quantization error vectors are determined by changing the values of each output candidate vector. For example, for an M-depth output candidate vector Y l5 if each element of Y, has two possible values, then there are up to 2 2 possible output candidate vectors, Yi, Y 2 , Y 3 , and Y 4 .
- the number of output candidate vectors can be pruned by, for example, eliminating or reducing redundant arithmetic operations. Selection of output values for the look- ahead delta-sigma modulator can be based upon any of a number of techniques.
- loop filter 202 can be modeled as having two separate transfer functions, H ⁇ (z) and H 2 (z).
- the noise transfer function (“NTF”) equals l/[l+z _1 *H 2 (z)].
- the signal transfer function equals H 1 (z)/[l+z "1 *H 2 (z)].
- the filter 502(i) is designed around optimizing the NTF quantity l/[l+z _1 *H 2 (z)]. Optimizing "l/[l+z _1 *H 2 (z)]" is effectively the same as minimizing z + H 2 (z).
- look-ahead delta-sigma modulator 500 selects an output value y(n) using quantization error values.
- Search module 504 computes quantization error power (C . - Y t ) (2) by determining a sum of squares in accordance with Equation 4: -y t ) 2 Equation 4
- the y(n) selector module 508 selects y(n) as the leading bit of Y,. from [C, - Y ⁇ ] (2) m ⁇ n- [ - Y ⁇ ] (2:) m ⁇ n represents the minimum quantization error power.
- This example can be extrapolated to cover any look-ahead depth and number of output candidate sets. To maintain causality, only earlier quantization values are fed back to the filter.
- the feedback vector choices are the 16 possible sets of values for times 10, 11, 12 and 13.
- the filter output at time 12 will be a function of all output choices up to time 11, but not of the output choice for time 12.
- the filter output at time 13 will depend on choices up to time 12.
- the quantization error will depend on the current filter output and the current output candidate.
- the quantization error at time 13 therefore depends on the value of choices at times 10 throughl3.
- the four quantization errors used are those at times 10 throughl3. This differs from the behavior when using C to create the cost function. In that case, the four filter outputs used for the optimization will be 11 through 14, as 10 is unaffected by the choice of the current vector.
- the selector module 508 can produce r output values for each input by providing as an output the r leading bits of the output candidate vector having the minimum quantization error power value, where generally 1 ⁇ r ⁇ M (the depth of the output candidate vector) and, in one embodiment r equals 2.
- the r outputs are then fed back to the noise shaping filter 502 and the state variables are updated r times.
- minimum quantization error search and output generator 506 has a defined gain. Additionally, the demonstrated signal-to-noise ratio of look- ahead delta-sigma modulator 5O0 exhibits in some cases a lOdB improvement over conventional look-ahead delta-sigma modulators.
- Figure 7 depicts a comparison of the transfer function of H 2 (z) for look-ahead delta- sigma modulator 106 with l+z _1 H 2 (z) of delta-sigma modulator 500 when the NTF is set to be a seventh (7 th ) order Butterworth filter with added NTF zeros.
- the plot 702 obtained using look- ahead delta-sigma modulator 5O0 demonstrates a smooth transition where the spike 404 occurs.
- plot 702 demonstrates quantization noise shaping improvement by reducing noise in a signal bandwidth of interest (e.g. 0Hz - 25kHz) by look-ahead delta-sigma modulator 500 relative to conventional look-ahead delta-sigma modulators.
- look-ahead delta-sigma modulator 800 represents an embodiment of a look-ahead delta-sigma modulator using time weighted, frequency weighted error values and quantization error to determine output values.
- the look-ahead delta-sigma modulator 800 is identical to look-ahead delta-sigma modulator 500 except for minimum quantization error search and output generator 806.
- the non-uniform weighted minimum quantization error noise search module 804 minimizes the scalar, power of a weighted quantization error vector Cj - Yj, for i D ⁇ 0,1,2, ... , N-l ⁇ .
- Vector W represents one embodiment of a non-uniform weight vector.
- W » [C ( - Y ⁇ ] (2) mm represents the minimum weighted, quantizer input/output difference power.
- the y(n) selector module 808 selects y(n) as the leading bit of output candidate vector Y,.
- the non- uniform weight vector W includes, for example, at least one non-zero weight element that is different from another weight element value or at least one non-unity, non-zero weight value.
- Weighting the quantization error vector can be accomplished by determining the dot product of the quantization error vector and the time-domain weight vector.
- the look-ahead delta-sigma modulator 800 represents one embodiment of look-ahead delta-sigma modulators that weight quantization error vector elements with at least one non-zero, non-unity weight (i.e., not equal to 1).
- Non-uniform weighting can allow a delta- sigma modulator to obtain higher signal-to-noise ratios than conventional look-ahead delta-sigma modulators while maintaining linearity associated with the conventional look-ahead delta-sigma modulators.
- the elements of the non-uniform weight vector W are a matter of design choice and are generally chosen empirically to minimize output signal noise.
- the elements of the weight vector trend downward in the time-domain.
- weighting using selected nonuniform weights decreases the aliasing due to truncation of the sample set, and improves the signal-to-noise ratio of the look-ahead delta-sigma modulator 300.
- Figures 9A-9F depict various exemplary weight vectors applied by the non-uniform weighted minimum quantization error noise search module 804.
- Figure 4 depicts the weight vectors as windows that weight each set of cost value powers and depicts exemplary weighting windows with a downward weighting trend.
- any variety of windows can be used with look- ahead delta-sigma modulator 800. Exponential windows are generally the easiest to implement with Trellis delta-sigma modulators.
- a tapered weight vector applied before summing the power in the search module 804 solves the quality problem associated with unity weighting and improves both signal-to-noise ratio and the noise transfer shaping.
- Weighting windows similar to Figure 4C, having weight vector W [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, .92, .80, .70, .52, .24], perform well for a depth of 10.
- the window depicted in Figure 9C can be difficult to implement in a look-ahead system that re-uses prior cost computations, as Trellis and tree structures often do.
- An exponentially decaying window such as the window of Figure 9A can be exploited in these cases.
- Weight elements, w t , in a weight vector W can also be defined to be within particular ranges.
- the best window for a particular depth and application can be determined empirically.
- the Melanson Weighting Patent describes further embodiments and applications of weight vectors W
- signal processing system 1000 depicts one embodiment of a signal processing system that includes look-ahead modulator 500.
- Signal processing system 1000 is particularly useful for high-end audio applications such as super audio compact disk (“SACD") recording applications.
- Signal processing system 1000 processes an input signal 1004 generated by an input signal source 1003.
- the input signal 1004 may be digital or analog and may be from any signal source including signals generated as part of a recording/mixing process or other high end audio sources or from lower-end sources such as a compact disk player, MP3 player, audio/video system, audio tape player, or other signal recording and/or playback device.
- the input signal 1004 may be an audio signal, a video signal, an audio plus video signal, and/or other signal type.
- input signal 1004 undergoes some preprocessing 1006 prior to being modulated by look-ahead modulator 1002.
- pre-processing 1006 can involve an interpolation filter to oversample a digital input signal 1004 in a well-known manner.
- Pre-processing 1006 can include an analog-to-digital converter to convert an analog input signal 1004 into a digital signal.
- Pre-processing 1006 can also include mixing, reverberation, equalization, editing, out-of-band noise filtering and other filtering operations.
- pre-processing 1006 provides discrete input signals X[n] to look- ahead modulator 1102.
- Each discrete input signal x[n] is a K-bit signal, where K is greater than one.
- look-ahead modulator 500 processes input signals X[n] and candidates Y[n] to determine an output signal 1007.
- Output signal 1007 is, for example, a collection of one-bit output values. The output signal 1007, thus, becomes an encoded version of the input signal 1004.
- signal processing system 1000 typically includes postprocessing 1008 to post-process the output signal 1007 of look-ahead modulator 500.
- Postprocessing 1008 can include lossless data processing 1102.
- For SACD audio mastering there is a lossless data compression stage 1104, followed by a recording process 1106 that produces the actual pits that are burned into a master storage medium 1108.
- the master storage medium 1108 is then mechanically replicated to make the disks (or other storage media) 1112 available for widespread distribution.
- Disks 1112 are, for example, any variety of digital versatile disk, a compact disk, tape, or super audio compact disk.
- Playback/output devices 1010 read the data from the disks 1112 and provide a signal output in a format perceptible to users. Playback/output devices 1010 can be any output devices capable of utilizing the output signal 1007.
- the storage media 1108 and 1 112 include data encoded using signal modulation processes achieved using look-ahead modulator 500.
- look-ahead delta-sigma modulator 500 Many systems can implement look-ahead delta-sigma modulator 500.
- the weighting of look-ahead delta-sigma modulator 500 can be implemented using hardware and/or software.
Landscapes
- Physics & Mathematics (AREA)
- Nonlinear Science (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
A signal processing system includes a look-ahead delta-sigma modulator (500) that processes multiple output candidate vectors (Yi) and an input vector (Xi) to determine a quantization error vector for each output candidate vector. In one embodiment, the quantization error vector represents a difference between a cost value vector and an input candidate vector. Look-ahead delta-sigma modulator output values are selected using the quantization error vectors (Ci-Yi) by, for example, determining the minimum power quantization error vector for each input vector X and selecting the output value from the input candidate vector associated with the minimum power quantization error vector. Quantization error vectors can also be weighted using a non-uniform weighting vector.
Description
SIGNAL PROCESSING WITH LOOK-AHEAD MODULATOR NOISE QUANTIZATION MINIMIZATION John L. Melanson
Cross-reference to Related Application
(1) This application claims the benefit under 35 U.S.C. § 119(e) of (i) U.S. Provisional Application No. 60/537,285, filed January 16, 2004 and entitled "Look-Ahead Delta-sigma Modulators" and (ii) U.S. Provisional Application No. 60/539,132, filed January 26, 2004 and entitled "Signal Processing Systems with Look-Ahead Delta-Sigma Modulators". Both provisional applications include example systems and methods and are incorporated by reference in their entireties.
(2) This application claims the benefit under 35 U.S.C. § 120 of commonly assigned U.S. Patent application entitled "Signal Processing with a Look-ahead Modulator Having Time Weighted Error Values", Serial No. is 10/875,920, filed on June 22, 2004, inventor John L. Melanson (referred to herein as the "Melanson Weighting Patent"). The Melanson Weighting Patent describes example systems and methods for weighting look-ahead delta-sigma modulator error vectors and is hereby incorporated by reference in its entirety.
BACKGROUND OF THE INVENTION
Field of the Invention
(3) The present invention relates to signal processing and more particularly relates to look- ahead delta-sigma modulators having quantization error based output selection to minimize quantization noise.
DESCRIPTION OF THE RELATED ART
(4) A few signal processing systems implement look-ahead delta-sigma modulators in an attempt to obtain superior input/output signal fidelity by minimizing long term error. "Delta- sigma modulators" are also commonly referred to using other interchangeable terms such as "sigma-delta modulators", "delta-sigma converters", "sigma delta converters", and "noise
shapers". Figure 1 depicts a prior art signal processing system 100 having a look-ahead delta- sigma modulator 102.
(5) The signal source 102 provides an input signal to pre-processing components 104. Preprocessing components include an analog-to-digital converter ("ADC") and oversampling components to generate a k-bit, digital input signal x(n). For audio applications, x(n) generally represents a signal sampled at 44.1 kHz times an oversampling ratio, such as 64:1. Look-ahead modulator 106 quantizes input signal x(n) and shapes the quantization noise so that most of the quantization noise is moved out of the signal band of interest, e.g. approximately 0-20 kHz for audio applications. Each output signal y(n) (also referred to herein as an "output value") generally has one of two values selected from the set {+Δ/2, -Δ/2} with "Δ" representing the full swing of y(n). (For convenience, Δ/2 will be represented as +1, and -Δ/2 will be represented as - 1.). The output signal y(n) can be processed further and, for example, used to drive an audio sound system or can be recorded directly onto a storage medium.
(6) Figure 2 depicts a schematic representation of prior art look-ahead delta-sigma modulator 106 with a look-ahead depth of M. Table 1 describes an embodiment of the symbols used in Figure 2.
Table 1
(7) The look-ahead depth M refers to the dimension of each delayed output candidate vector Yoi used to determine output signal y(n). For time t, a negative delayed output candidate vector - YD i □ {0, 1 ,2, ... , N- 1 } and the input vector Xt are inputs to noise shaping filter 202(i). For a look-ahead depth of M and y(n) = {-1, +1}, and without pruning output candidates, each of the N delayed output candidate vectors contains a unique set of elements. Each noise-shaping filter 202(f) of look-ahead delta-sigma modulator 106 uses a common set of filter state variables for time t during the calculations of respective cost value vectors Cj. Filter 202 maintains the actual filter state variables used during the calculation of each y(n). The state variables are updated with the selected y(n) output value. Loop filter 202 processes X; and -Y; to produce an error value, which in this embodiment is referred to as cost value vector Cj. Cost value vector Cj , and, thus, each element of cost value vector Cj is a frequency weighted error value. In some embodiments of look-ahead delta-sigma modulator 106, input signal vector x and delayed output candidate vectors YD, are also used as direct inputs to filter 202(i)
(8) Quantizer error and output generator 203 includes two modules to determine y(n). The cost function minimum search module 204 computes the cost value power, (2), of each cost value vector Cj in accordance with Equation 1, and determines the minimum cost value power at time t. t=M ci - ∑ [c tP Equation 1. t=l
"c" represents a cost value for time t, t=l through M, in the cost vector Q. Thus, the cost function minimum search module 204 of quantizer 203 attempts to minimize the energy out of loop filter 202. Minimizing the energy out of loop filter 202 effectively drives the input to a
small value, which effectively results in a relatively high loop gain for look-ahead delta-sigma modulator 106 and, thus, modifies the noise shapping transfer function in an undesirable way.
(9) The y(n) selector module 206 selects y(n) as the leading bit of Yj where Cj(2) mjn represents the minimum cost value power.
(10) For example, if M = 2 and y e {- l,+l}, then N = 4, i D {0,1,2,3}, and Table 2 represents each of the Y output candidate vectors and Xt.
Table 2
(11) If s represents the minimum cost value power, then selector module 206 selects y(n) = 1 because the first bit in output candidate vector Y3 (the output candidate vector associated with
represents the minimum cost value power, then selector module 206 selects y(n) — 0 because the first bit in output candidate vector Y\ (the output candidate vector associated with C]^), equals 0.
(12) Conventional research in look-ahead modulators primarily involves two threads. The first are the works of Hiroshi Kato, "Trellis Noise-Shaping Converters and 1-bit Digital Audio," AES 112th Convention, 2002 May 10-13 Munich, and Hiroshi Kato, Japanese Patent JP, 2003- 124812 A, and further refinements described in Harpe, P., Reefman D., Janssen E., "Efficient Trellis-type Sigma Delta Modulator," AES 114th Convention, 2003 March 22-25 Amsterdam (referred to herein as "Harpe"); James A. S. Angus, "Tree Based Look-ahead Sigma Delta Modulators," AES 114th Convention, 2003 March 22-25 Amsterdam; James A.S. Angus, "Efficient Algorithms for Look- Ahead Sigma-Delta Modulators," AES 155th Convention, 2003 October 10-13 New York; Janssen E., Reefman D., "Advances in Trellis based SDM structures," AES 115th Convention, 2003 October 10-13 New York. This research targets solving the problems of 1-bit encoding of audio data for storage without using the steep anti-alias filters associated with pulse code modulation "PCM." The advent of super audio compact disc "SACD" audio storage, with its moderate oversampling ratios (32 or 64), motivated this work.
(13) The second primary thread of look-ahead modulator research involves pulse width modulation ("PWM") amplifiers based on delta-sigma modulators combined with digital PWM modulation stages. The principal researchers have been Peter Craven and John L. Melanson. In U.S. Patent No. 5,784,017 entitled "Analogue and Digital Converters Using Pulse Edge Modulations with Non-Linear Correction," inventor Peter Craven ("Craven"), which is incorporated herein by reference in its entirety, Craven described the use of look-ahead in delta- sigma modulators. The purpose of Craven was to ensure stability in alternating edge modulation, an inherently difficult modulation mode to stabilize. In the PWM case, the delta-sigma modulator is operating at a low oversampling ratio (typically 4-16), and quantization noise is a special problem.
(14) Conventional technology has not proposed a reasonable way to find the closest matching output signal sets for each time t directly given that without pruning there are 2M possible reasonable combinations to search and the length of output signals Y[n] for a 1 minute signal is 60*44100*64 (i.e., 60 seconds, 44.1 kHz sampling frequency, and 64:1 oversampling ratio). Trellis searches, tree searches, and pruning have all been proposed as solutions to reducing the computation.
(15) Figure 3A depicts a model of a models filter 202 as a composite of two (2) transfer functions Hι(z) and H2(z). The feedback of output candidate vector YDJ introduces quantization noise 302 into the feedback loop of look-ahead modulator 106 but not into the input of look- ahead modulator 106. Thus, loop filter 202 can be modeled as having two separate transfer functions, Hi (z) and H2(z). The noise transfer function ("NTF") equals l/[l+z-1*H2(z)]. The signal transfer function ("STF") equals Hι(z)/[H-z_1*H2(z)]. In some implementations, HI and H2 are identical. In the general case, HI and H2 differ. The choice of implementation affects mainly the STF. For most purposes, the NTF is the critical design criteria, making the choice of HI less critical.
(16) Figure 3B represents a typical fifth (5th) order noise-shaping filter 300 with input x(n) and feedback y(n). Filter 300 represent one embodiment of filter 202 and can be applied to non- look-ahead and look-ahead delta-sigma modulators. The scale factors k and gain factors g are design choices. In one embodiment, the ki scale factor provides a unity gain for the first integrator stage 302. Equation 2 represents the transfer function Hι(z):
Hι(z) = : : = : — Equation 2. ( 1 + z !)(l + ( 2 + gl)z ! +z 2)(l + ( 2 + g2)z l +z 2)
Equation 3 represents the transfer function H2(z):
TT / kl ( 1 + z 1)(k2 + k3 k3z 1 +(k4 + k5 k5z 1)(l + ( 2 + gl)z ! +z 2)) H2(z) = : z : - Equation ( 1 + z l)(l + ( 2 + gl)z l +z 2)(l + ( 2 + g2)z l +z 2) 3.
(17) Figures 3C and 3D depict the respective NTF and STF pole-zero plots of filter 300. The NTF is a high-pass function with multiple zeros in the signal band, and the STF is an all-pole low-pass function.
(18) Figure 4 depicts the transfer function of H2(z) when the NTF is set to be a seventh (7th) order Butterworth filter with added NTF zeros. By minimizing sum of squares of the cost function elements ct, the transfer function H2(z) 402 does not maintain a smooth transition as 0 dB is approached. Rather a spike 404 occurs, which represents noise. This noise will be in the near out-of-band frequency region, which is undesirable as it makes reproduction more difficult.
(19) Accordingly, although conventional look-ahead delta-sigma modulators demonstrate improved linearity over standard (non-look-ahead) delta-sigma modulators, as discussed in Harpe, page 5, Harpe also observes on page 5 that in all cases the signal-to-noise ratio of Trellis architecture look-ahead delta-sigma modulators is several dB worse when compared to standard delta-sigma modulators.
SUMMARY OF THE INVENTION
(20) In one embodiment of the present invention, a look-ahead delta-sigma modulator includes a digital filter to filter data derived from input signal data and respective elements of delayed output candidate vectors to generate filter output vectors, wherein the digital filter includes state variables that are updated via feedback of a selected output value. The look-ahead delta-sigma modulator further includes a quantization error generator, coupled to the digital filter to receive the filter output vectors, to determine a set of quantization error vectors from each set of M element modulator output candidate vectors and the filter output vectors, wherein M is greater than one and each element in the output candidate vectors is a potential output value of the delta- sigma modulator. The look-ahead delta-sigma modulator also includes an output generator to select from each set of quantization error vectors a quantization error vector associated with a modulator output candidate vector and to select an output from the associated modulator output candidate vector.
(21) In another embodiment of the present invention, a method of determining output values of a delta-sigma modulator using quantization error vectors includes filtering data derived from input signal data and respective elements of M-element delayed output candidate vectors to generate filter output vectors. The method further includes generating quantization error vectors for each set of M element modulator output candidate vectors and each set of M element filter output vectors, wherein M is greater than one and each element in the output candidate vectors is a potential output value of the delta-sigma modulator. The method also includes selecting from each set of quantization error vectors a quantization error vector associated with one of the modulator output candidate vectors and generating an output from the associated modulator output candidate vector.
(22) In a further embodiment of the present invention, a signal processing system includes an M-depth delta-sigma modulator delta-sigma modulator to determine output values from respective sets of M element modulator output candidate vectors using quantization error vectors, wherein M is greater than one, each element in the output candidate vectors is a potential output value of the delta-sigma modulator.
(23) In another embodiment of the present invention, a method of determining an output signal using an M-depth delta-sigma modulator and quantization error vectors, wherein M is greater than one and each element in the output candidate vectors is a potential output value of the delta-sigma modulator includes processing an input signal vector and a set of delayed output candidate vectors. For each processed input signal vector and delayed output candidate vector, the method further includes computing a quantization error vector from the processed input signal vector and delayed output candidate vector and processing each quantization error vector to identify the output candidate vector that best matches the input signal vector. The method also includes selecting an output from the output candidate vector that best matches the input signal vector.
(24) In another embodiment of the present invention, a method of processing a signal using a delta-sigma modulator includes determining output values of an M-depth delta-sigma modulator from respective sets of M element modulator output candidate vectors and an M element modulator input vector using quantization error vectors, wherein M is greater than one, each element in the output candidate vectors is a potential output value of the delta-sigma modulator.
BRIEF DESCRIPTION OF THE DRAWINGS
(25) The present invention may be better understood, and its numerous objects, features and advantages made apparent to those skilled in the art by referencing the accompanying drawings. The use of the same reference number throughout the several figures designates a like or similar element.
(26) Figure 1 (prior art) depicts a signal processing system with a conventional look-ahead delta-sigma modulator.
(27) Figure 2 (prior art) depicts example data used by the look-ahead delta-sigma modulator of Figure 1 to determine an output signal.
(28) Figure 3 A (prior art) depicts a model of the look-ahead modulator of Figure 1 that includes a model of a noise shaping filter.
(29) Figure 3B (prior art) represents a noise shaping filter of Figure 3A.
(30) Figure 3C (prior art) represents a pole-zero plot of a noise transfer function of the filter of Figure 3B.
(31) Figure 3D (prior art) represents a pole-zero plot of a signal transfer function of the filter of Figure 3B.
(32) Figure 4 (prior art) depicts an example loop filter transfer function of the look-ahead modulator of Figure 1.
(33) Figure 5 depicts a signal processing system having a look-ahead delta-sigma modulator with quantizer input values representing quantization error.
(34) Figure 6 depicts a model of the look-ahead modulator of Figure 5.
(35) Figure 7 depicts an example loop filter transfer function of the look-ahead modulator of Figure 5.
(36) Figure 8 depicts a signal processing system having a look-ahead delta-sigma modulator with weighted quantization error vectors.
(37) Figures 9A-9F depict weighting windows with a downward weighting trend.
(38) Figure 10 depicts a signal processing system that includes a look-ahead modulator of Figure 5, an output device and process, and an output medium.
(39) Figure 11 depicts post-processing operations in an embodiment of the signal processing system of Figure 8.
DETAILED DESCRIPTION
(40) There are at least two different interesting characteristics at issue with look-ahead delta- sigma modulators. The first is quantization error along with the desire to minimize the error and remove signal dependent quantization noise. As discussed in the Background section, most prior publications have shown an increase in in-band noise when using look-ahead modulators. The second issue involves loop stability. With greater loop stability, more aggressive noise shaping can be used to drive down the in-band noise. Look-ahead modulators can be designed using technology described herein to make better average choices in most circumstances, thereby reducing in-band noise without necessarily resorting to changing the loop filter.
(41) It has been proposed in conventional publications that the power output of a delta-sigma noise-shaping filter is a good metric for optimization, i.e. see Equation 1. However, Equation 1 has at least two disadvantages: (1) Equation 1 is non-monotonic in magnitude frequency response and (2) Equation 1 is not appropriate for more than two quantization levels. Unfortunately, as discussed in the Background section, the approach of Equation 1 with look- ahead delta-sigma modulators can decrease the signal to noise ratio relative to conventional delta-sigma modulators.
(42) Although conventional look-ahead delta-sigma modulators increase in-band noise for greater stability, the look-ahead delta-sigma modulator described herein can maintain superior stability while achieving the unexpected result of lower in-band noise relative to conventional look-ahead delta-sigma modulators and conventional non-look-ahead delta-sigma modulators. The signal processing systems described herein include a look-ahead delta-sigma modulator that processes multiple output candidate vectors and an input vector to determine a quantization error vector for each output candidate vector. In one embodiment, the quantization error vector represents a difference between a cost value vector and an input candidate vector. Look-ahead delta-sigma modulator output values are selected using the quantization error vectors by, for example, determining the minimum power quantization error vector for each input vector X and selecting the output value from the input candidate vector associated with the minimum power
quantization error vector. Quantization error vectors can also be weighted using a non-uniform weighting vector.
(43) The look-ahead delta-sigma modulators of the signal processing systems described herein include a loop filter with a noise transfer function ("NTF") and a signal transfer function ("STF"). When the loop filter is designed, the filter is designed around optimizing the NTF quantity l/[l+z_1*H2(z)] ("H2(z) is illustrated in Figure 6). Optimizing "l/[l+z"1*H2(z)]" is effectively the same as minimizing z + H2(z). Minimizing z + H2(z) effectively minimizes a difference between the input and output values of the look-ahead delta-sigma modulator quantizer. The difference between the input and output values of the quantizer represent quantization error. Thus, the look-ahead delta-sigma modulators of the signal processing system described herein selects an output based on quantization error values. In one embodiment, quantization error represents a difference between each filter output vector and each output candidate vector Yj, i = { 0, 1 , 2, ... N- 1 } . The look-ahead delta-sigma modulator output value is selected from Yj, where [Cj - Yi](2) mjn represents the minimum quantization error power.
(44) Figure 5 depicts one embodiment of a digital signal processing system that includes a look-ahead delta-sigma modulator for selecting output values using quantization error. In one embodiment, the look-ahead delta-sigma modulator 500 processes a discrete-time, over-sampled input signal pattern, X[n], and determines the best output signal pattern Y[n] to approximate X[n] in a signal bandwidth, X[n] = i, x2, x3, ... and Y[n] = yi, y2, y3, ... . "Best" can be defined as closest matching in the signal band of interest. "Closest matching" can be defined, for example, in a power sense (lowest distance), in a minimum/maximum sense, in a psycho- acoustically weighted sense, other desired measure. Thus, in one embodiment, the "best" output signal pattern Y[n] is the pattern Y[n] such that [H(X-YD)- Y] has the lowest power. A "signal band of interest" is, for example, a frequency band containing a signal with data of interest. For example, an audio signal band of interest is approximately 0 Hz to 25 kHz. It will be apparent to those of ordinary skill in the art that the signal processing system described herein can be adapted to determine the best, closest matching output signal pattern under varying constraints and are not limited to the constraints of "best" and "closest matching" set forth herein, but rather constraints can be defined to accomplish desired goals.
(45) Referring to Figure 5, look-ahead delta-sigma modulator 500 represents an embodiment of a look-ahead delta-sigma modulator that uses quantization error to determine output values. The look-ahead delta-sigma modulator 500 determines each filter output vector Cj for time t in
the same manner as look-ahead modulator 106 by applying a filter function to input vector Xt and each negative delayed output candidate vector -YDI, i = { 1, 2, ... , N), M = the look-ahead depth and N = 2M. The delay of delayed output candidate vector YDl is t+x, where x = 1 or other real number determined in accordance with design choices. The number of calculations performed by look-ahead delta-sigma modulator 500 can be reduced using pruning or other computation reduction methods. Pruning techniques include eliminating or reducing processing of redundant cost value vectors and eliminating or reducing redundant arithmetic calculations. Look-ahead delta-sigma modulator 500 performs noise shaping on the input data, input vector Xt and each negative delayed output candidate vector -YDι, in accordance with respective loop filter 502(i) transfer function. In one embodiment, the state variables used by each loop filter 502(i) are identical as depicted by loop filter 502 and connecting lines indicating the common use of the state variables 501. In one embodiment, loop filter 502(i) is identical to loop filter 202(i), i = {1, 2, ... , N}.
(46) Multiple quantization error vectors ( -Yi) are determined by changing the values of each output candidate vector. For example, for an M-depth output candidate vector Yl5 if each element of Y, has two possible values, then there are up to 22 possible output candidate vectors, Yi, Y2, Y3, and Y4. The number of output candidate vectors can be pruned by, for example, eliminating or reducing redundant arithmetic operations. Selection of output values for the look- ahead delta-sigma modulator can be based upon any of a number of techniques.
(47) Referring to Figures 5 and 6, loop filter 202 can be modeled as having two separate transfer functions, Hι(z) and H2(z). The noise transfer function ("NTF") equals l/[l+z_1*H2(z)]. The signal transfer function ("STF") equals H1(z)/[l+z"1*H2(z)]. When the loop filter 502(i) is designed, the filter 502(i) is designed around optimizing the NTF quantity l/[l+z_1*H2(z)]. Optimizing "l/[l+z_1*H2(z)]" is effectively the same as minimizing z + H2(z). Minimizing z + H2(z) effectively minimizes a difference between the input and output values of the look-ahead delta-sigma modulator quantizer. The difference between the input C, - Y, is one embodiment of quantization error. Thus, look-ahead delta-sigma modulator 500 selects an output value y(n) using quantization error values.
(48) Conventional look-ahead delta-sigma modulators use the minimum cost value power value, C,(2) mm as determined by Equation 1. This determination effectively drives the inputs to quantizer 203 to small values and, thus, effectively increases the loop gain of look-ahead delta- sigma modulator 106 and adversely modified the NTF.
(49) In one embodiment of look-ahead delta-sigma modulator 500, the look-ahead delta-sigma modulator 500 includes a minimum quantization error noise search module 504 that selects the minimum power quantization error for each quantization error vector, C, - Y i = { 1, 2, ..., N} . Search module 504 computes quantization error power (C. - Yt)(2) by determining a sum of squares in accordance with Equation 4: -yt)2 Equation 4
"c " represents a filter 202 output for time t, t=l through M, in the cost vector C, and yt represents an output candidate for time t in the cost vector Y,. The y(n) selector module 508 selects y(n) as the leading bit of Y,. from [C, - Yι](2) mιn- [ - Yι](2:)mιn represents the minimum quantization error power.
(50) For example, if M = 2 and y e {- l,+l}, then N = 4, i D {0,1,2,3}, and Table 3 represents each of the Y output candidate vectors and the input candidate vector Xt.
Table 3
(51) If (C3-Y3)(2) represents the minimum quantization error power value, then selector module 508 selects y(n) = 1 because the first bit in output candidate vector Y3 (the output candidate vector associated with (C3-Y3)(2), equals 1. If (C2-Y )(2) represents the minimum quantization error power value, then selector module 508 selects y(n) = 0 because the first bit in output candidate vector Y2 (the output candidate vector associated with (C2-Y2)(2)), equals 0. This example can be extrapolated to cover any look-ahead depth and number of output candidate sets. To maintain causality, only earlier quantization values are fed back to the filter. If the look-ahead depth is 4 and the current time is 10, for example, the feedback vector choices are the 16 possible sets of values for times 10, 11, 12 and 13. The filter output at time 12 will be a function of all output choices up to time 11, but not of the output choice for time 12. Similarly, the filter output at time 13 will depend on choices up to time 12. The quantization error will depend on the current filter output and the current output candidate. The quantization error at
time 13 therefore depends on the value of choices at times 10 throughl3. The four quantization errors used are those at times 10 throughl3. This differs from the behavior when using C to create the cost function. In that case, the four filter outputs used for the optimization will be 11 through 14, as 10 is unaffected by the choice of the current vector.
(52) Thus, if look-ahead modulator 500 looks ahead 10 decisions (i.e., depth M = 10) using one decision bit (i.e., y e {- L+l}) and advancing periodically in time, at each time point 1024 distances are calculated (assuming no pruning). If search module 504 is locating the best output value y at time t, then all possible {yo, yi ... y9} will be tried. On the next step, search module 504 will search for the best output value y at time t+1. In another embodiment, look-ahead modulator 500 can generate an output having multiple output values. For example, in one embodiment the selector module 508 can produce r output values for each input by providing as an output the r leading bits of the output candidate vector having the minimum quantization error power value, where generally 1 < r < M (the depth of the output candidate vector) and, in one embodiment r equals 2. The r outputs are then fed back to the noise shaping filter 502 and the state variables are updated r times.
(53) When minimizing the quantization error, minimum quantization error search and output generator 506 has a defined gain. Additionally, the demonstrated signal-to-noise ratio of look- ahead delta-sigma modulator 5O0 exhibits in some cases a lOdB improvement over conventional look-ahead delta-sigma modulators.
(54) Figure 7 depicts a comparison of the transfer function of H2(z) for look-ahead delta- sigma modulator 106 with l+z_1H2(z) of delta-sigma modulator 500 when the NTF is set to be a seventh (7th) order Butterworth filter with added NTF zeros. The plot 702 obtained using look- ahead delta-sigma modulator 5O0 demonstrates a smooth transition where the spike 404 occurs. Thus, plot 702 demonstrates quantization noise shaping improvement by reducing noise in a signal bandwidth of interest (e.g. 0Hz - 25kHz) by look-ahead delta-sigma modulator 500 relative to conventional look-ahead delta-sigma modulators.
(55) Referring to Figure 8, look-ahead delta-sigma modulator 800 represents an embodiment of a look-ahead delta-sigma modulator using time weighted, frequency weighted error values and quantization error to determine output values. The look-ahead delta-sigma modulator 800 is identical to look-ahead delta-sigma modulator 500 except for minimum quantization error search and output generator 806. The non-uniform weighted minimum quantization error noise search module 804 minimizes the scalar, power of a weighted quantization error vector Cj - Yj, for
i D {0,1,2, ... , N-l}. Search module 304 computes W'[C, - Y,J(2) in accordance with Equation 4: t=M W [Ci -Yi = ∑ wt(ct - yt)2 Equation 5 t=l
"ct - y " represent a quantization error value for time t, t=l through M, in the quantization error vector Q - Y^ wt represents a weight for time t in the weight cost function vector W. Vector W represents one embodiment of a non-uniform weight vector. "W»[C( - Yι](2) mm" represents the minimum weighted, quantizer input/output difference power. The y(n) selector module 808 selects y(n) as the leading bit of output candidate vector Y,. from W#[C, - Yι](2) m,n- The non- uniform weight vector W includes, for example, at least one non-zero weight element that is different from another weight element value or at least one non-unity, non-zero weight value. Weighting the quantization error vector can be accomplished by determining the dot product of the quantization error vector and the time-domain weight vector.
(56) In general, the look-ahead delta-sigma modulator 800 represents one embodiment of look-ahead delta-sigma modulators that weight quantization error vector elements with at least one non-zero, non-unity weight (i.e., not equal to 1). Non-uniform weighting can allow a delta- sigma modulator to obtain higher signal-to-noise ratios than conventional look-ahead delta-sigma modulators while maintaining linearity associated with the conventional look-ahead delta-sigma modulators.
(57) The elements of the non-uniform weight vector W are a matter of design choice and are generally chosen empirically to minimize output signal noise. In one embodiment, the elements of the weight vector trend downward in the time-domain. However, weighting using selected nonuniform weights, such as a downward trending weight vector, decreases the aliasing due to truncation of the sample set, and improves the signal-to-noise ratio of the look-ahead delta-sigma modulator 300.
(58) Figures 9A-9F (collectively "Figure 9") depict various exemplary weight vectors applied by the non-uniform weighted minimum quantization error noise search module 804. Figure 4 depicts the weight vectors as windows that weight each set of cost value powers and depicts exemplary weighting windows with a downward weighting trend. In Figure 4A, the depth equals 4 and the elements of the weight vector equal wt = l^"1"1. Thus, the window is exponential in nature. If wt = 1.5, the earliest cost value output would be weighted 3.375 times as much as the
last cost value output. As Figure 9 illustrates, any variety of windows can be used with look- ahead delta-sigma modulator 800. Exponential windows are generally the easiest to implement with Trellis delta-sigma modulators.
(59) A tapered weight vector applied before summing the power in the search module 804 solves the quality problem associated with unity weighting and improves both signal-to-noise ratio and the noise transfer shaping. Weighting windows similar to Figure 4C, having weight vector W = [1.0, 1.0, 1.0, 1.0, 1.0, .92, .80, .70, .52, .24], perform well for a depth of 10. The window depicted in Figure 9C can be difficult to implement in a look-ahead system that re-uses prior cost computations, as Trellis and tree structures often do. An exponentially decaying window such as the window of Figure 9A can be exploited in these cases. The results obtained using advantages of the rectangular window have empirically fallen short of empirical results obtained using the convex type of taper shown in Figure 9A. Weight elements, wt, in a weight vector W can also be defined to be within particular ranges. For example, a weight vector can be defined as W = [w0j w1( w , w3, ...], where wO, wl, and w2 have values within approximately +/- 5 % of each other and w3 is approximately 80% or less of w0, Wi, or w2. The best window for a particular depth and application can be determined empirically. The Melanson Weighting Patent describes further embodiments and applications of weight vectors W
(60) Referring to Figure 10, signal processing system 1000 depicts one embodiment of a signal processing system that includes look-ahead modulator 500. Signal processing system 1000 is particularly useful for high-end audio applications such as super audio compact disk ("SACD") recording applications. Signal processing system 1000 processes an input signal 1004 generated by an input signal source 1003. The input signal 1004 may be digital or analog and may be from any signal source including signals generated as part of a recording/mixing process or other high end audio sources or from lower-end sources such as a compact disk player, MP3 player, audio/video system, audio tape player, or other signal recording and/or playback device.
(61) The input signal 1004 may be an audio signal, a video signal, an audio plus video signal, and/or other signal type. Generally, input signal 1004 undergoes some preprocessing 1006 prior to being modulated by look-ahead modulator 1002. For example, pre-processing 1006 can involve an interpolation filter to oversample a digital input signal 1004 in a well-known manner. Pre-processing 1006 can include an analog-to-digital converter to convert an analog input signal 1004 into a digital signal. Pre-processing 1006 can also include mixing, reverberation, equalization, editing, out-of-band noise filtering and other filtering operations.
(62) In the digital domain, pre-processing 1006 provides discrete input signals X[n] to look- ahead modulator 1102. Each discrete input signal x[n] is a K-bit signal, where K is greater than one. As previously described in more detail, look-ahead modulator 500 processes input signals X[n] and candidates Y[n] to determine an output signal 1007. Output signal 1007 is, for example, a collection of one-bit output values. The output signal 1007, thus, becomes an encoded version of the input signal 1004.
(63) Referring to Figures 10 and 11, signal processing system 1000 typically includes postprocessing 1008 to post-process the output signal 1007 of look-ahead modulator 500. Postprocessing 1008 can include lossless data processing 1102. For SACD audio mastering, there is a lossless data compression stage 1104, followed by a recording process 1106 that produces the actual pits that are burned into a master storage medium 1108. The master storage medium 1108 is then mechanically replicated to make the disks (or other storage media) 1112 available for widespread distribution. Disks 1112 are, for example, any variety of digital versatile disk, a compact disk, tape, or super audio compact disk. Playback/output devices 1010 read the data from the disks 1112 and provide a signal output in a format perceptible to users. Playback/output devices 1010 can be any output devices capable of utilizing the output signal 1007. Thus, the storage media 1108 and 1 112 include data encoded using signal modulation processes achieved using look-ahead modulator 500.
(64) Many systems can implement look-ahead delta-sigma modulator 500. For example, the weighting of look-ahead delta-sigma modulator 500 can be implemented using hardware and/or software.
(65) Although the present invention has been described in detail, it should be understood that various changes, substitutions and alterations can be made hereto without departing from the spirit and scope of the invention as defined by the appended claims.
Claims
WHAT IS CLAIMED IS: 1. A look-ahead delta-sigma modulator comprising: a digital filter to filter data derived from input signal data and respective elements of delayed output candidate vectors to generate filter output vectors, wherein the digital filter includes state variables that are updated via feedback of a selected output value; a quantization error generator, coupled to the digital filter to receive the filter output vectors, to determine a set of quantization error vectors from each set of M element modulator output candidate vectors and the filter output vectors, wherein M is greater than one and each element in the output candidate vectors is a potential output value of the delta-sigma modulator; and an output generator to select from each set of quantization error vectors a quantization error vector associated with a modulator output candidate vector and to select an output from the associated modulator output candidate vector.
2. The delta-sigma modulator of claim 1 wherein the quantization error generator determines one quantization error vector for each output candidate vector.
3. The delta-sigma modulator of claim 1 further comprising a recording system to store output values generated by the output value generator.
4. The delta-sigma modulator of claim 1 further comprising a storage medium having the output values encoded thereon.
5. The delta-sigma modulator of claim 1 further comprising a storage medium having data derived from output values encoded thereon.
6. The delta-sigma modulator of claim 1 wherein the set of quantization error vectors determined by the error generator equals 2M.
7. The delta-sigma modulator of claim 1 wherein the set of quantization error vectors determined by the error generator is a non-redundant set and contains less than 2M quantization error vectors.
8. The delta-sigma modulator of claim 1 wherein each element of each modulator output candidate vector has two possible values.
9. The delta-sigma modulator of claim 1 wherein the delta-sigma modulator is a Trellis type delta-sigma modulator.
10. The delta-sigma modulator of claim 1 wherein the delta-sigma modulator is a tree-based delta-sigma modulator.
11. The delta-sigma modulator of claim 1 wherein a set of Y output values most closely represent a corresponding set of Y input values in a signal band of interest, wherein Y is a positive integer.
12. The delta-sigma modulator of claim 11 wherein each output value represents a leading bit of each modulator output candidate associated with each identified quantization error vector.
13. The delta-sigma modulator of claim 11 wherein the quantization error vector associated with the modulator output candidate vector from which the output value is selected is the quantization error vector having a minimum power in comparison to the remaining quantization error vectors in the set.
14. The delta-sigma modulator of claim 1 wherein the delta-sigma modulator is implemented using software.
15. The delta-sigma modulator of claim 1 further comprising: a quantizer, wherein an ith quantization error vector in the set of quantization error vectors comprises a difference between an ith digital filter output data vector and an ith modulator output candidate vector Yj, wherein the vector Cj represents an ith M- element vector derived from a difference between the look-ahead delta-sigma modulator input vector and an ith M-element delayed output candidate vector YQJ.
16. The delta-sigma modulator of claim 15 wherein the ith quantization error vector comprises cost value vector Cj - output candidate vector Yj.
17. The delta-sigma modulator of claim 1 wherein each cost value vector comprises a difference between an ith quantizer input vector and the ith modulator output candidate vector.
18. The delta-sigma modulator of claim 1 further comprising: a weighting module to non-uniformly weight each quantization error vector with a weight vector.
19. The delta-sigma modulator of 18 wherein the weight vector includes at least one non-zero weight element that is different from another non-zero weight element
20. The delta sigma modulator of claim 19 wherein magnitudes of each non-zero weight element of the weight vector trend downward as a lookahead depth of the error values increase.
21. The delta sigma modulator of claim 20 wherein the magnitudes of each non-zero weight element of the weight vector decrease linearly.
22. The delta sigma modulator of claim 20 wherein the magnitudes of each non-zero weight element of the weight vector decrease exponentially.
23. The delta sigma modulator of claim 20 wherein the weight vector that includes elements [w0, Wι; w2, w3, ...], wherein wO, wl, and w2 have magnitudes within approximately +/- 5 % of each other and w3 has a magnitude of approximately 80% or less of the magnitude of one of the previous elements.
24. The delta-sigma modulator of claim 1 wherein the output selected by the output generator comprises r output values, wherein r is any integer between 1 and M.
25. A method of determining output values of a delta-sigma modulator using quantization error vectors, the method comprising: (a) filtering data derived from input signal data and respective elements of M-element delayed output candidate vectors to generate filter output vectors; (b) generating quantization error vectors for each set of M element modulator output candidate vectors and each set of M element filter output vectors, wherein M is greater than one and each element in the output candidate vectors is a potential output value of the delta-sigma modulator; (c) selecting from each set of quantization error vectors a quantization error vector associated with one of the modulator output candidate vectors; and (d) generating an output from the associated modulator output candidate vector.
26. The method of claim 25 further comprising: determining a difference between the filter output vectors and output candidate vectors to generate the quantization error vectors; feeding back each output value to a filter that filters the data derived from input signal data and respective elements of the output candidate vectors; and updating state variables of the filter with the output values fed back to the filter.
27. The method of claim 25 further comprising generating one quantization error vector for each output candidate vector.
28. The method of claim 25 further comprising repeating (a), (b), and (c) for each of a plurality of input values to the delta-sigma modulator.
29. The method of claim 28 wherein a set of Y output values most closely represent a corresponding set of Y input values in a signal band of interest, wherein Y is a positive integer.
30. The method of claim 25 further comprising: recording data derived from the output values on storage media.
31. The method of claim 25 further comprising: recording the output values on a storage media.
32. The method of claim 25 wherein generating quantization error vectors comprises generating 2M quantization error vectors.
33. The method of claim 25 wherein generating quantization error vectors comprises generating a nonredundant set that contains less than 2M quantization error vectors.
34. The method of claim 25 wherein each element of each modulator output candidate vector has two possible values.
35. The method of claim 25 wherein the look-ahead delta-sigma modulator is a Trellis type delta-sigma modulator.
36. The method of claim 25 wherein the look-ahead delta-sigma modulator is a tree- based delta-sigma modulator.
37. The method of claim 36 wherein each output value represents a leading bit of each modulator output candidate vector associated with each selected identified quantization error vector.
38. The method of claim 36 wherein: generating each quantization error vector comprises: generating a first difference vector by determining a difference between one of the M element modulator output candidate vectors and one of the M element modulator input vectors; filtering the first difference vector; and generating a second difference vector by determining a difference between one of the M element modulator output candidate vectors and one of the M element first difference vectors.
39. The method of claim 38 wherein generating an output value from the associated modulator output candidate vector comprises identifying the quantization error vector having a lowest cumulative power in comparison to the remaining quantization error vectors.
40. The method of claim 25 wherein the look-ahead delta-sigma modulator is implemented using software.
41. The method of claim 25 wherein the delta-sigma modulator comprises a quantizer, each vector derived from a difference between look-ahead delta-sigma modulator input and output candidate vectors represents a cost value vector, and each cost value vector comprises a difference between an ith quantizer input vector and the i4 modulator output candidate vector.
42. The method of claim 41 wherein the i11 quantizer input vector comprises a filtered difference between the modulator input vector and the il modulator output candidate vector.
43. The method of claim 25 further comprising: weighting in the time-domain at least two elements of the quantization error vectors with different, non-zero weights.
44. The method of claim 43 wherein weighting in the time-domain at least two elements of the quantization error vectors comprises computing a dot product of each error vector and a weight vector.
45. The method of claim 43 wherein weighting in the time-domain at least two elements of the quantization error vectors comprises weighting with a weight vector having non- zero elements that trend downward as a lookahead depth of the error values increase.
46. The method of claim 43 wherein weighting in the time-domain at least two elements of the quantization error vectors comprises weighting with a weight vector having non- zero elements that decrease linearly.
47. The method of claim 43 wherein weighting in the time-domain at least two elements of the quantization error vectors comprises weighting with a weight vector having non- zero elements that decrease exponentially.
48. The method of claim 43 wherein weighting in the time-domain at least two elements of the quantization error vectors comprises weighting with a weight vector that includes elements [w0, Wi w2, w3, ...], wherein wO, wl, and w2 have magnitudes within approximately +/- 5 % of each other and w3 has a magnitude of approximately 80% or less of the magnitude of one of the previous elements.
49. The method of claim 43 wherein weighting in the time-domain at least two elements of the quantization error vectors comprises weighting with a weight vector having elements that remain the same for each set of M modulator output candidates.
50. The method of claim 25 wherein the generated output comprises r output values, wherein r is any integer between 1 and M.
51. A signal processing system comprising: an M-depth delta-sigma modulator delta-sigma modulator to determine output values from respective sets of M element modulator output candidate vectors using quantization error vectors, wherein M is greater than one, each element in the output candidate vectors is a potential output value of the delta-sigma modulator.
52. The signal processing system of claim 51 further comprising: a first difference module to determine difference vectors corresponding to a difference between an input vector and the set of delayed modulator output candidate vectors; and a digital filter to determine a filter output vector from each difference vector; and a second difference module to determine quantization error vectors, wherein the ith th quantization error vector corresponds to a difference between an i filter output vector and an ith modulator output candidate vectors. I 53. The signal processing system of claim 51 further comprising: a storage medium encoded with the output values. 54. A method of determining an output signal using an M-depth delta-sigma modulator and quantization error vectors, wherein M is greater than one and each element in the output candidate vectors is a potential output value of the delta-sigma modulator, the method comprising: processing an input signal vector and a set of delayed output candidate vectors; for each processed input signal vector and delayed output candidate vector, computing a quantization error vector from the processed input signal vector and delayed output candidate vector; processing each quantization error vector to identify the output candidate vector that best matches the input signal vector; and selecting an output from the output candidate vector that best matches the input signal vector. 55. The method of claim 54 wherein processing an input signal vector and a set of delayed output candidate vectors comprises: filtering a difference between the input signal vector and the set of delayed output candidate vectors. 56. A method of processing a signal using a delta-sigma modulator, the method comprising: determining output values of an M-depth delta-sigma modulator from respective sets of M element modulator output candidate vectors and an M element modulator input vector using quantization error vectors, wherein M is greater than one, each element in the output candidate vectors is a potential output value of the delta- sigma modulator.
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US53728504P | 2004-01-16 | 2004-01-16 | |
US53913204P | 2004-01-26 | 2004-01-26 | |
US10/875,920 US6879275B1 (en) | 2004-01-16 | 2004-06-24 | Signal processing with a look-ahead modulator having time weighted error values |
US58895104P | 2004-07-19 | 2004-07-19 | |
US10/900,877 US7196647B2 (en) | 2004-01-16 | 2004-07-28 | Signal processing with look-ahead modulator noise quantization minimization |
PCT/US2005/001093 WO2005074141A1 (en) | 2004-01-16 | 2005-01-13 | Signal processing with look-ahead modulator noise quantization minimization |
Publications (1)
Publication Number | Publication Date |
---|---|
EP1704643A1 true EP1704643A1 (en) | 2006-09-27 |
Family
ID=34831499
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP05705645A Withdrawn EP1704643A1 (en) | 2004-01-16 | 2005-01-13 | Signal processing with look-ahead modulator noise quantization minimization |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP1704643A1 (en) |
JP (1) | JP2007518376A (en) |
WO (1) | WO2005074141A1 (en) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2752284B2 (en) * | 1992-02-24 | 1998-05-18 | 三洋電機株式会社 | Bit compression circuit |
JP3636130B2 (en) * | 2001-10-15 | 2005-04-06 | アキュフェーズ株式会社 | Trellis type noise shaping modulator |
-
2005
- 2005-01-13 EP EP05705645A patent/EP1704643A1/en not_active Withdrawn
- 2005-01-13 WO PCT/US2005/001093 patent/WO2005074141A1/en active Application Filing
- 2005-01-13 JP JP2006549595A patent/JP2007518376A/en active Pending
Non-Patent Citations (1)
Title |
---|
SADOVSKÝ ET AL: "Optimisation of the transient repsonse of a digital filter", RADIOENGINEERING, 2000 * |
Also Published As
Publication number | Publication date |
---|---|
JP2007518376A (en) | 2007-07-05 |
WO2005074141A1 (en) | 2005-08-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7190294B2 (en) | Jointly nonlinear delta sigma modulators | |
US7084798B2 (en) | Look-ahead delta sigma modulators with quantizer input approximations | |
EP1704645A1 (en) | Signal processing with a look-ahead modulator having time weighted error values | |
JP5863830B2 (en) | Method for generating filter coefficient and setting filter, encoder and decoder | |
WO2003061136A1 (en) | Method and apparatus for generating a pulse width modulated signal | |
US7187312B2 (en) | Look-ahead delta sigma modulator having an infinite impulse response filter with multiple look-ahead outputs | |
US7081843B2 (en) | Overload protection for look-ahead delta sigma modulators | |
WO2003100983A1 (en) | Delta-sigma modulators with integral digital low - pass filtering | |
US7138934B2 (en) | Pattern biasing for look-ahead delta sigma modulators | |
JP2004508755A (en) | Audio signal processing with adaptive noise shaping modulation | |
US6879275B1 (en) | Signal processing with a look-ahead modulator having time weighted error values | |
US7196647B2 (en) | Signal processing with look-ahead modulator noise quantization minimization | |
JP3636130B2 (en) | Trellis type noise shaping modulator | |
US7148830B2 (en) | Look-ahead delta sigma modulator with pruning of output candidate vectors using quantization error minimization pruning techniques | |
EP1704643A1 (en) | Signal processing with look-ahead modulator noise quantization minimization | |
JP2006528858A (en) | Noise shaping apparatus and method with improved lossless compression and high audio quality for hi-fi audio | |
JP4061764B2 (en) | D / A converter | |
US7173550B1 (en) | Circuits, systems and methods for volume control in low noise 1-bit digital audio systems | |
JP2004247930A (en) | Delta sigma type multi-bit a/d converter, optical disk recorder/reproducer using the same, and downsampling method | |
EP1673869A1 (en) | Generating bit-streams with higher compression gains |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 20060728 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU MC NL PL PT RO SE SI SK TR |
|
17Q | First examination report despatched |
Effective date: 20070301 |
|
DAX | Request for extension of the european patent (deleted) | ||
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN |
|
18D | Application deemed to be withdrawn |
Effective date: 20090526 |