WO2014113028A1 - Cascaded viterbi bitstream generator - Google Patents
Cascaded viterbi bitstream generator Download PDFInfo
- Publication number
- WO2014113028A1 WO2014113028A1 PCT/US2013/022321 US2013022321W WO2014113028A1 WO 2014113028 A1 WO2014113028 A1 WO 2014113028A1 US 2013022321 W US2013022321 W US 2013022321W WO 2014113028 A1 WO2014113028 A1 WO 2014113028A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- bitstream
- bitstream generator
- generator stage
- stage
- candidates generated
- 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.)
- Ceased
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/3015—Structural details of digital delta-sigma modulators
- H03M7/302—Structural details of digital delta-sigma modulators characterised by the number of quantisers and their type and resolution
- H03M7/3022—Structural details of digital delta-sigma modulators characterised by the number of quantisers and their type and resolution having multiple quantisers arranged in cascaded loops, each of the second and further loops processing the quantisation error of the loop preceding it, i.e. multiple stage noise shaping [MASH] type
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0059—Convolutional codes
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/23—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using convolutional codes, e.g. unit memory codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/39—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
- H03M13/41—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
Definitions
- Delta-sigma ( ⁇ ) modulation is a well-known technique for converting (i.e., encoding) analog signals into digital signals, or converting higher-resolution digital signals into lower-resolution digital signals.
- Delta-sigma modulators or converters essentially employ oversampling to reduce the in-band power of quantization noise, and use feedback to shape this noise and move it out-of-band.
- the intrinsic tolerance of delta-sigma converters to analog circuitry inaccuracy renders them very well-suited for the on-chip design of high-resolution interfaces in mixed- signal application-specific integrated circuits (ASICs).
- Delta-sigma modulators of various types have been used for analog-to-digital and digital-to-analog conversion over the last several decades. Moreover, delta-sigma modulators have been used in high-efficiency switching power amplifiers (SWPAs), including, for example, class-D SWPAs, commonly used for digital audio applications, and class-S SWPAs, commonly used for radio-frequency (RF) applications.
- SWPAs switching power amplifiers
- class-D SWPAs commonly used for digital audio applications
- RF radio-frequency
- cascaded delta-sigma modulators which are constructed by cascading a chain of stable, lower-order (usually one-bit) modulators to build a stable higher-order modulator.
- Embodiments of the invention provide techniques for forming a stable higher-order (e.g., greater than two) bitstream generator using a plurality of cascaded lower-order bitstream generators.
- a bitstream generator includes at least first and second bitstream generator stages connected in a cascaded arrangement.
- the first bitstream generator stage includes a first adder adapted to receive an input signal supplied to the bitstream generator and operative to generate a first error signal indicative of a difference between the input signal and a first bitstream candidate that represents a closest approximation to the input signal among a plurality of bitstream candidates generated by the first bitstream generator stage.
- the second bitstream generator stage includes a second adder adapted to receive the first error signal generated by the first adder and operative to generate a second error signal indicative of a difference between the first error signal and a second bitstream candidate that represents a closest approximation to the input signal among a plurality of bitstream candidates generated by the second bitstream generator stage.
- the bitstream generator further includes a third adder adapted to receive the first and second bitstream candidates generated by the first and second bitstream generator stages, respectively, and operative to generate an output signal that more closely approximates the input signal compared to the first bitstream candidate.
- a method for forming a stable higher-order bitstream generator using a plurality of lower-order bitstream generators includes steps of: providing at least first and second bitstream generator stages; connecting the first and second bitstream generator stages in a cascaded arrangement, the first bitstream generator stage including a first adder adapted to receive an input signal supplied to the bitstream generator and operative to generate a first error signal indicative of a difference between the input signal and a first bitstream candidate that represents a closest approximation to the input signal among a plurality of bitstream candidates generated by the first bitstream generator stage, the second bitstream generator stage including a second adder adapted to receive the first error signal generated by the first adder and operative to generate a second error signal indicative of a difference between the first error signal and a second bitstream candidate that represents a closest approximation to the input signal among a plurality of bitstream candidates generated by the second bitstream generator stage; and adding the first and second bitstream candidates generated by the first and second
- FIG. 1A is a block diagram depicting an exemplary single-loop delta-sigma bitstream generator
- FIG. IB is a block diagram depicting a linearized model of the illustrative bitstream generator shown in FIG. 1A;
- FIG. 2 is a block diagram depicting an exemplary third-order delta-sigma modulator formed using a plurality of cascaded stable one-bit, single-loop delta-sigma modulators;
- FIG. 3A is a block diagram depicting an illustrative one-bit, single-loop Viterbi bitstream generator
- FIG. 3B is a block diagram depicting an exemplary alternative representation of the illustrative one-bit, single-loop Viterbi bitstream generator shown in FIG. 3A;
- FIG. 4 is a block diagram depicting at least a portion of an exemplary cascaded Viterbi bitstream generator, according to an embodiment of the invention.
- FIG. 5 is a block diagram depicting at least a portion of an exemplary cascaded Viterbi bitstream generator, according to another embodiment of the invention.
- FIGS. 6 through 10 are waveforms depicting exemplary simulation results for the illustrative cascaded Viterbi bitstream generator shown in FIG. 4.
- Embodiments of the invention will be described herein in the context of illustrative delta-sigma modulators and Viterbi bitstream generators. It should be understood, however, that embodiments of the invention are not limited to these or any other particular bitstream generators. Rather, embodiments of the invention are more broadly related to techniques for forming a stable Viterbi bitstream generator using a plurality of cascaded single-loop bitstream generators. In this regard, embodiments of the invention provide techniques for forming stable higher-order (e.g., greater than two) bitstream generators. Moreover, it will become apparent to those skilled in the art given the teachings herein that numerous modifications can be made to the illustrative embodiments shown that are within the scope of the claimed invention. That is, no limitations with respect to the embodiments shown and described herein are intended or should be inferred.
- FIG. 1A is a block diagram depicting an exemplary single-loop delta-sigma modulator 100.
- the delta-sigma modulator 100 includes an adder 102, a loop filter 104, or alternative filter circuit, and a bit-quantizer 106 (or alternative truncator, comparator, slicer, etc.).
- the adder 102 comprises a first input adapted to receive an input signal, x ⁇ , and a second input adapted to receive a bitstream candidate, yi.
- the adder 102 is operative to generate an output signal, x 2 , which is equal to x ⁇ - yi.
- the loop filter 104 is adapted to receive, as an input, the signal x 2 from the adder 102 and to generate, as an output, a signal x 3 which is supplied to a first input of the bit-quantizer 106.
- a second input of the bit-quantizer 106 is adapted to receive an error signal, e ⁇ .
- the error signal ei is the truncation (or quantization) error of the bit-quantizer 106 and it is given by the difference between the output and input of the bit-quantizer.
- the bit-quantizer 106 is operative to generate the output yi, which is indicative of a bitstream candidate that most closely approximates the sampled input signal as a function of the error signal e ⁇ and previous bitstream candidates.
- FIG. IB is a block diagram depicting an exemplary single-loop delta-sigma modulator 150.
- the delta-sigma modulator 150 is a linearized model of the illustrative delta- sigma modulator 100 shown in FIG. 1A.
- the bit-quantizer 106 is implemented using an adder 108 having a first input adapted to receive signal x 3 generated by loop filter 104, and a second input adapted to receive truncation error signal e ⁇ .
- Output signal y ⁇ generated by the adder 108, as in FIG. 1A, represents a bitstream candidate that closely approximates the sampled input signal x ⁇ in the frequency band of interest where x ⁇ has its energy concentrated.
- the output signal y ⁇ represented in the z-domain as Y ⁇ , can be determined as follows:
- Y x STF ⁇ X x + NTF ⁇ E Note, that the STF and NTF are based on a linearized model of the delta-sigma modulator 150, which is merely an approximation and does not accurately describe the non-linear modulator under all circumstances.
- cascaded delta-sigma modulators which are constructed by cascading multiple stable, lower-order modulators (usually one-bit) to build a stable higher- order modulator (see, e.g., Steven R. Norsworthy, Richard Schreier, and Gabor C. Temes, "Delta-Sigma Data Converters: Theory, Design, and Simulation," IEEE Press, 1997, the disclosure of which is incorporated herein by reference).
- An output of a cascaded modulator, fabricated from one-bit modulators forms a multiple-bit bitstream, as will be described in conjunction with FIG. 2.
- FIG. 2 is a block diagram depicting an exemplary third-order delta- sigma modulator 200 formed using a plurality of cascaded stable one-bit, single-loop delta- sigma modulators.
- the delta-sigma modulator 200 employs a multi-stage noise shaping (MASH) architecture, and thus can be referred to as a MASH-III digital delta-sigma modulator.
- MASH multi-stage noise shaping
- Delta-sigma modulator 200 includes three stages, 202, 204 and 206, each stage comprising a low-order noise-shaping filter and a bit-quantizer (e.g., a comparator or slicer), whose respective outputs are combined, using, for example, a first adder 208, so that the low- order filters operate in cascade to provide a higher-order noise-shaping filter.
- a bit-quantizer e.g., a comparator or slicer
- a first stage 202 includes a second adder 210, an amplifier ai coupled with the second adder, a first filter 212 coupled with an output of amplifier ⁇ , a first bit-quantizer 214 coupled with an output of the first filter, and a first delay element 216 coupled with an output of the first bit-quantizer
- Adder 210 includes a first input adapted to receive an input signal, u, supplied to the bitstream generator 200, and a second input for receiving a bitstream candidate, v ls generated by bit-quantizer 214.
- the adder 210 is operative to generate an output signal which is equal to the input signal u minus the bitstream candidate v ⁇ .
- the signal generated by adder 210 is fed to an input of amplifier a ls which in this example has a gain of one (i.e., unity gain).
- the bit-quantizer 214 is operative to receive the signal generated by the filter 212 and a first error signal, e ⁇ , and to generate the bitstream candidate v ⁇ which is supplied to delay element 216.
- the delay element 216 has a delay of z ⁇ 2 associated therewith, using z-domain representation.
- the first error signal e ⁇ is generated by a third adder 218 which is operative to subtract the signal generated by filter 212 from the bitstream candidate v ⁇ .
- the first error signal e ⁇ is supplied as an input to the second stage 204.
- the second stage 204 includes a fourth adder 220, an amplifier a 2 coupled with the fourth adder, a second filter 222 coupled with an output of amplifier a 2 , a second bit- quantizer 224 coupled with an output of the second filter, and a third digital filter 226 coupled with an output of the second bit-quantizer.
- Adder 220 includes a first input adapted to receive the first error signal e ⁇ , and a second input for receiving a bitstream candidate, v 2 , generated by bit-quantizer 224.
- the adder 220 is operative to generate an output signal which is equal to the input signal e ⁇ minus the bitstream candidate v 2 .
- the signal generated by adder 220 is fed to an input of amplifier a 2 , which in this example has a gain of one.
- the bit-quantizer 224 is operative to receive the signal generated by the filter 222 and a second error signal, e 2 , and to generate the bitstream candidate v 2 which is supplied to filter 226.
- the filter 226 has a transfer function of z -1 ⁇ (1— z -1 ) associated therewith, using z-domain representation.
- the second error signal e 2 is generated by a fifth adder 228 which is operative to subtract the signal generated by filter 222 from the bitstream candidate v 2 .
- the second error signal e 2 is supplied as an input to the third stage 206.
- the third stage 206 includes a sixth adder 230, an amplifier a 3 coupled with the sixth adder, a fourth filter 232 coupled with an output of amplifier a 3 , a third bit- quantizer 234 coupled with an output of the fourth filter, and a fifth digital filter 236 coupled with an output of the third bit-quantizer.
- Adder 230 includes a first input adapted to receive the second error signal e 2 , and a second input for receiving a bitstream candidate, v 3 , generated by bit-quantizer 234. The adder 230 is operative to generate an output signal which is equal to the input error signal e 2 minus the bitstream candidate v 3 .
- the signal generated by adder 230 is fed to an input of amplifier a 3 , which in this example has a gain of one.
- the bit-quantizer 234 is operative to receive the signal generated by the filter 232 and a third error signal, e 3 , and to generate the bitstream candidate 3 which is supplied to filter 236.
- the filter 236 has a transfer function of (1— z - 1 ) 2 associated therewith, using z-domain representation.
- the truncation error (i.e., quantization error) of the bit-quantizer 234, represented by signal e 3 can be obtained by subtracting the output of 234 from the input of 234.
- adder 208 includes a first input adapted to receive a first signal generated by delay element 216 in the first stage 202, a second input adapted to receive a second signal generated by filter 226 in the second stage 204, and a third input adapted to receive a third signal generated by filter 236 in the third stage 206.
- the adder 208 is operative to generate an output signal, v, of the bitstream generator 200 which is equal to a sum of the first and third signals from the first stage 202 and third stage 206, respectively, minus the second signal from the second stage 204.
- bitstream candidates v ls V2 and v 3 represented in the z- domain as V ⁇ , V2 and V3, respectively, can be determined using the following derivation:
- V 1 (U - V 1 - a 1 - ⁇ - 1 + E 1
- V ⁇ l - z " 1 ) a z ⁇ x ⁇ U - z " 1 ⁇ V + (1 - z ⁇ 1 E 1
- Equation (3) reduces to the following expression for determining the bitstream candidate v ⁇
- V 1 z " 1 ⁇ U + (1 - z ⁇ 1 E 1 (4)
- bitstream candidates 2 and v 3 can be determined using the following expressions in the z-domain, assuming gains «2 and a 3 of amplifiers a 2 and a 3 , respectively, are also equal to one:
- V 2 z " 1 ⁇ E 1 + (l - z " 1 ) ⁇ (5)
- V 3 z "1 - E 2 + (l - z "1 ) ⁇ (6)
- the modulator output signal, v can be determined using the following derivation, in z-domain representation:
- V z ⁇ 2 - V 1 + z "1 ⁇ (1 - z- ⁇ C-l) ⁇ V 2 + (1 - z "1 ) 2 ⁇ V 3
- V z ⁇ 3 ⁇ U + (1 - z "1 ) 3 ⁇ E 3 (7)
- the output signal v is indicative of a third-order, one-bit delta-sigma modulator.
- the cascaded output shows only contributions from the truncation error 3 ⁇ 4 of the third stage, while the truncation error 3 ⁇ 4 of the second stage and the truncation error ej of the first stage are cancelled. Therefore, the cascaded delta-sigma modulator effectively eliminates the truncation error of the first one or more stages and improves noise shaping of the truncation error of the last stage.
- Delta-sigma modulators can be implemented using Viterbi decoders as truncators.
- FIG. 3A a block diagram depicts an illustrative one-bit, single-loop Viterbi bitstream generator 300.
- the bitstream generator 300 comprises an adder 302, a loop filter 304, a sorter 306, and a Viterbi decoder 308, connected in a closed-loop feedback configuration.
- Each of the output signals si through s N is passed through the filter 304, having a transfer function H(z), to generate a plurality of corresponding error signals, e ⁇ through e N , referred to collectively herein as error e.
- each of the error signals e ⁇ through represents a difference between the input signal x and a corresponding one of the bitstream candidates yci through ycN, respectively.
- These error signals are then sorted in order of magnitude of error by the sorter 306.
- the Viterbi decoder 308 uses this error signal to control how the bitstream candidates are generated.
- a "best" bitstream candidate 310, indicative of a bitstream candidate having a smallest error among a prescribed number of previously stored candidates, is selected as the output signal y of the modulator 300.
- An output signal Y of the modulator 300, in z-domain representation, can be determined using the following derivation:
- the error signal E is assumed to be white and uncorrected with input signal X.
- FIG. 3B is a block diagram depicting an exemplary one-bit, single-loop Viterbi bitstream generator 350.
- the bitstream generator 350 is merely an alternative representation of the illustrative bitstream generator 300 shown in FIG. 3A.
- the N-wire wide signals shown in FIG. 3A are merely combined into N-wire wide signal busses in FIG. 3B.
- a Viterbi decoder can be implemented using various known algorithms.
- One possibility is to use a full-trellis implementation of the Viterbi algorithm (see, e.g., Andrew Viterbi, "Error Bounds for Convolutional Codes and an Asymptotically Optimum Decoding Algorithm," IEEE Transactions on Information Theory, Vol. 13, No. 2, pp. 260-269, Apr. 1967, the disclosure of which is incorporated by reference herein in its entirety).
- An alternative possibility is to use a sub-optimal algorithm such as an M-algorithm (see, e.g., R.- K. Gopalan and O.M.
- the M-algorithm trades signal-to-noise (SNR) performance of the encoded signal with complexity of the digital hardware implementation. With an increased number of M states used in the M- algorithm, both the SNR performance and the digital hardware complexity of the Viterbi bitstream generator improve.
- SNR signal-to-noise
- the stability of a delta-sigma modulator or a Viterbi bitstream generator depends on one or more factors, such as, for example:
- H(z) An order of a transfer function, H(z), of the digital loop filter in the delta-sigma modulator or Viterbi bitstream generator.
- H(z) An order of a transfer function, H(z), of the digital loop filter in the delta-sigma modulator or Viterbi bitstream generator.
- a higher order H(z) exhibits more fragile stability than a lower order H(z).
- the sharper the frequency response of H(z) the longer it takes the impulse response h(t) to effectively settle in the time domain; therefore, a larger value is needed for M when the Viterbi bitstream generator is implemented via the M-algorithm
- a higher order H(z) also exhibits better SNR performance than a lower order H(z), and, furthermore, a sharper H(z) exhibits better SNR performance than a less sharp H(z).
- the stability of the Viterbi bitstream generator also depends on an implementation of the Viterbi decoder. Since the digital hardware complexity of a full-trellis Viterbi decoder is usually impractical when used as a bitstream generator, the M-algorithm implementation provides a good compromise between SNR performance and hardware complexity. Hence, there is a tradeoff between SNR performance, hardware complexity and stability when designing bitstream generators.
- embodiments of the invention provide a cascaded Viterbi bitstream generator architecture.
- the cascaded Viterbi bitstream generator architecture employs a plurality of stable lower-order bitstream generators to fabricate a stable higher-order bitstream generator.
- the cascaded Viterbi bitstream generator in accordance with embodiments of the invention preserves the robust stability of the first stage and keeps the high SNR performance of the second stage via the beneficial cascading architecture.
- FIG. 4 is a block diagram depicting at least a portion of an exemplary cascaded Viterbi bitstream generator 400, according to an embodiment of the invention.
- the bitstream generator 400 comprises two single-loop bitstream generators, 402 and 404, connected in a cascade configuration. While two single-loop bitstream generators are shown in FIG. 4, it is to be appreciated that embodiments of the invention are not limited to any specific number of cascaded single-loop bitstream generator stages employed. Rather, techniques according to embodiments of the invention can be extended in a similar manner to cascade more than two low-order and stable Viterbi bitstream generators, as will become apparent to those skilled in the art given the teachings herein.
- a first single-loop bitstream generator stage 402 includes an adder 406, a loop filter 408, a sorter (SORT 1) 410, and a Viterbi decoder (VITERBI 1) 412, connected in a closed-loop feedback configuration. It is to be understood that one or more functional blocks in the first bitstream generator stage 402 may be combined into a single functional block and/or integrated with one or more other blocks. Furthermore, it is to be appreciated that one or more functional blocks in the first bitstream generator stage 402 may be implemented in hardware, in software, or in a combination of hardware and software (e.g., firmware), according to embodiments of the invention.
- the bitstream candidate signal y C u represents a quantized estimate of the input signal x ⁇ .
- Signal x 2 which represents an error between the input signal x ⁇ and the quantized estimate of the input signal, is then passed through loop filter 408 having a transfer function Hl(z).
- the loop filter 408 is operative to receive the signal x- ⁇ and to generate a filtered error signal, e ⁇ .
- the filtered error signal e ⁇ is fed to the sorter 410 which arranges the bitstream candidates as a function of a magnitude of error and selects a bitstream candidate, yi, having a minimum error value among the candidates.
- a second single-loop bitstream generator stage 404 includes an adder 416, a loop filter 418, a sorter (SORT 2) 420, and a Viterbi decoder (VITERBI 2) 422, connected in a closed-loop feedback configuration.
- SORT 2 sorter
- VITERBI 2 Viterbi decoder
- the bitstream candidate signal yen represents a more accurate quantization of the error compared to the bitstream candidate signal y C u-
- Signal x 3 which represents a difference between signal x 2 and the bitstream candidate signal yen, is then passed through loop filter 418 having a transfer function H2(z).
- the loop filter 418 is operative to receive the signal x 3 and to generate a filtered error signal, e 2 .
- the filtered error signal e 2 is fed to the sorter 420 which arranges bitstream candidates as a function of a magnitude of error and selects a bitstream candidate, j3 ⁇ 4, having a minimum error value among the candidates.
- the Viterbi decoder 412 can be combined with the sorter 410, according to embodiments of the invention, to implement a Viterbi decoder that incorporates a sorting function therein.
- a global output signal, y, generated by the cascaded Viterbi bitstream generator 400 is produced by combining the respective outputs from the individual single-loop bitstream generator stages 402 and 404.
- the output signal y beneficially provides a more accurate approximation to the input signal x ⁇ than the individual bitstream signal y ⁇ output by the first bitstream generator stage 402.
- the output signal y of the cascaded Viterbi bitstream generator 400, in z-domain representation, is calculated using the following derivation, where capital letters are used to denote corresponding signals in the z-domain:
- the output 7 of the cascaded Viterbi bitstream generator 400 includes only the noise-shaped truncation error terms from the second stage— E 2 , and the noise-
- the transfer function Hl(z) of filter 408 in the first stage 402 is designed, in accordance with an embodiment of the invention, having good stability for full- scale amplitude input signals, but with modest signal-to-noise ratio (SNR) performance (e.g., about 30 to 50 dB).
- the second stage 404 quantizes the noise-shaped error term of the first stage 402, namely,— E x , which has relatively small power (e.g., about -40 to -30 decibels
- the transfer function H2(z) of filter 418 in the second stage 404 should be designed having good stability for small input signals (e.g., about -40 to -30 dBFS), but should exhibit very good SNR performance (e.g., about 60 to 80 dB).
- Such a Viterbi bitstream generator with very good SNR performance (e.g., about 60 to 80 dB) for small input signals (e.g., about -40 to -30 dBFS) would have poor stability for large input signals (e.g., about -10 to 0 dBFS).
- the first stage 402 trades SNR performance for large input signal stability
- the second stage 404 trades large input signal stability for SNR performance.
- the resulting cascaded output 7 exhibits the full-scale (i.e., about 0 dBFS) stability of the first stage 402 and the very good SNR performance of the second stage 404, therefore keeping the best characteristics of each stage, cancels the undesired high truncation error terms of the first stage (— ⁇ E ), and outputs the low truncation error terms of the second stage (— E 2 ), as shown above in equation (9).
- FIG. 5 is a block diagram depicting at least a portion of an exemplary cascaded Viterbi bitstream generator 500, according to another embodiment of the invention.
- Bitstream generator 500 essentially extends principles utilized in the illustrative bitstream generator 400 shown in FIG. 4 by cascading a third single-loop bitstream generator stage 502 to the first and second single-loop bitstream generator stages 402 and 404, respectively, described above in conjunction with FIG. 4.
- a third single-loop bitstream generator stage 502 includes an adder 506, a loop filter 508, a sorter (SORT 3) 510, and a Viterbi decoder (VITERBI 3) 512, connected in a closed-loop feedback configuration.
- Signal x 4 which represents a difference between signal x 3 and the bitstream candidate signal y C n, is then passed through loop filter 508 having a transfer function H3(z).
- the loop filter 508 is operative to receive the signal x 4 and to generate a filtered error signal, ei.
- the filtered error signal is fed to the sorter 510 which is operative to arrange bitstream candidates as a function of a magnitude of error, and to select a bitstream candidate, ys, having a minimum error value among the stored candidates.
- An output signal, y, generated by the cascaded Viterbi bitstream generator 500 is produced by combining the respective outputs from the individual single-loop bitstream generator stages 402, 404 and 502.
- the output signal y generated by the bitstream generator 500 which includes three cascaded single-loop bitstream generator stages, beneficially provides a more accurate approximation to the input signal i than the individual bitstream signal output y ⁇ generated by the first bitstream generator stage 402.
- the output signal y generated by the bitstream generator 500 shown in FIG. 5, which includes three cascaded single-loop bitstream generator stages, generally provides a beneficially more accurate approximation to the input signal x ⁇ compared to the Viterbi bitstream generator 400 shown in FIG. 4, which includes two cascaded single-loop bitstream generator stages.
- the number of cascaded single-loop bitstream generator stages in the Viterbi bitstream generator can be advantageously controlled to produce a required level of accuracy of the output signal, according to embodiments of the invention.
- the output signal y of the cascaded Viterbi bitstream generator 500, in z-domain representation, is calculated using the following derivation, where, as in the expressions above, capital letters are used to denote corresponding signals in the z-domain: 1
- the output 7 of the cascaded Viterbi bitstream generator 500 includes only the noise-shaped truncation error terms from the third
- FIGS. 6 through 10 depict MATLAB ® simulation results for the illustrative cascaded Viterbi bitstream generator 400 shown in FIG. 4.
- the exemplary waveforms shown in FIGS. 6- 10 were obtained using a sampling frequency of 4.17792 gigahertz (GHz).
- the input signal (xi) was chosen to be a 40- megahertz (MHz) wide composite modulated signal with eight carriers, each modulated by 5- MHz wideband code division multiple access (WCDMA) signals.
- WCDMA wideband code division multiple access
- the composite modulated signal has undergone a crest- factor reduction (CFR) to 6.5 dB.
- CFR crest- factor reduction
- the performance improvement in excess of 10 dB due to cascading is shown in FIGS. 9 and 10.
- At least a portion of the techniques according to embodiments of the present invention may be implemented in an integrated circuit.
- identical die are typically fabricated in a repeated pattern on a surface of a semiconductor wafer.
- Each die includes a device described herein, and may include other structures and/or circuits.
- the individual die are cut or diced from the wafer, then packaged as an integrated circuit.
- One skilled in the art would know how to dice wafers and package die to produce integrated circuits. Any of the exemplary circuits illustrated in the accompanying figures, or portions thereof, may be part of an integrated circuit. Integrated circuits so manufactured are considered part of embodiments of the invention.
- An integrated circuit in accordance with embodiments of the invention can be employed in essentially any application and/or electronic system in which digital coding and/or modulation/demodulation is utilized.
- Suitable systems for implementing embodiments of the invention may include, but are not limited, to power amplifiers (e.g., SWPAs), transmitters, receivers, signal generators, communication networks, electronic instruments (e.g., measurement equipment), etc. Systems incorporating such integrated circuits are considered part of embodiments of the invention. Given the teachings of embodiments of the invention provided herein, one of ordinary skill in the art will be able to contemplate other implementations and applications of the embodiments of the invention.
- Embodiments of the invention are referred to herein, individually and/or collectively, by the term "embodiment” merely for convenience and without intending to limit the scope of this application to any single embodiment or inventive concept if more than one is, in fact, shown.
- the term "embodiment” merely for convenience and without intending to limit the scope of this application to any single embodiment or inventive concept if more than one is, in fact, shown.
- this disclosure is intended to cover any and all adaptations or variations of various embodiments. Combinations of the above embodiments, and other embodiments not specifically described herein, will become apparent to those of skill in the art given the teachings herein.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Algebra (AREA)
- Mathematical Optimization (AREA)
- Probability & Statistics with Applications (AREA)
- Pure & Applied Mathematics (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
A bitstream generator includes at least first and second bitstream generator stages connected in a cascaded arrangement. The first bitstream generator stage includes a first adder which receives an input signal and generates a first error signal indicative of a difference between the input signal and a first bitstream candidate representing a closest approximation to the input signal among multiple bitstream candidates generated by the first bitstream generator stage. The second bitstream generator stage includes a second adder which receives the first error signal and generates a second error signal indicative of a difference between the first error signal and a second bitstream candidate representing a closest approximation to the input signal among multiple bitstream candidates generated by the second bitstream generator stage. A third adder in the bitstream generator receives the first and second bitstream candidates and generates an output signal more closely approximating the input signal.
Description
CASCADED VITERBI BITSTREAM GENERATOR
Background
[0001] Delta-sigma (ΔΣ) modulation, sometimes referred to as sigma-delta (ΣΔ) modulation, is a well-known technique for converting (i.e., encoding) analog signals into digital signals, or converting higher-resolution digital signals into lower-resolution digital signals. Delta-sigma modulators (or converters) essentially employ oversampling to reduce the in-band power of quantization noise, and use feedback to shape this noise and move it out-of-band. The intrinsic tolerance of delta-sigma converters to analog circuitry inaccuracy renders them very well-suited for the on-chip design of high-resolution interfaces in mixed- signal application-specific integrated circuits (ASICs).
[0002] Delta-sigma modulators of various types have been used for analog-to-digital and digital-to-analog conversion over the last several decades. Moreover, delta-sigma modulators have been used in high-efficiency switching power amplifiers (SWPAs), including, for example, class-D SWPAs, commonly used for digital audio applications, and class-S SWPAs, commonly used for radio-frequency (RF) applications.
[0003] It is well-known that higher-order (e.g., an order greater than two) one-bit, single- loop delta-sigma modulators suffer from instabilities. To address this shortcoming, cascaded delta-sigma modulators have been proposed which are constructed by cascading a chain of stable, lower-order (usually one-bit) modulators to build a stable higher-order modulator. The output of a cascaded modulator, fabricated from one-bit modulators, forms a multiple-bit bitstream.
[0004] More recently, delta-sigma modulators using Viterbi decoders as quantizers with memory were introduced for digital audio applications. (See, e.g., H. Kato, "Trellis Noise- shaping Converters and 1-bit Digital Audio," Proceedings of the AES 112th Convention, Munich, preprint 5615, May 10-13, 2002, and P. Harpe, "Trellis-type Sigma-delta Modulators for Super Audio CD Applications," Research Report, Philips Research, January 29, 2003, the disclosures of which are incorporated herein by reference in their entireties for all purposes.) As regular (i.e., memory-less or non-Viterbi) higher-order one-bit, single-loop delta-sigma modulators are known to suffer from instabilities, higher-order one-bit, single- loop Viterbi bitstream generators are also more prone to instabilities than lower-order one-bit, single-loop Viterbi bitstream generators.
Summary
[0005] Embodiments of the invention provide techniques for forming a stable higher-order (e.g., greater than two) bitstream generator using a plurality of cascaded lower-order bitstream generators.
[0006] In accordance with an embodiment of the invention, a bitstream generator includes at least first and second bitstream generator stages connected in a cascaded arrangement. The first bitstream generator stage includes a first adder adapted to receive an input signal supplied to the bitstream generator and operative to generate a first error signal indicative of a difference between the input signal and a first bitstream candidate that represents a closest approximation to the input signal among a plurality of bitstream candidates generated by the first bitstream generator stage. The second bitstream generator stage includes a second adder adapted to receive the first error signal generated by the first adder and operative to generate a second error signal indicative of a difference between the first error signal and a second bitstream candidate that represents a closest approximation to the input signal among a plurality of bitstream candidates generated by the second bitstream generator stage. The bitstream generator further includes a third adder adapted to receive the first and second bitstream candidates generated by the first and second bitstream generator stages, respectively, and operative to generate an output signal that more closely approximates the input signal compared to the first bitstream candidate.
[0007] In accordance with an embodiment of the invention, a method for forming a stable higher-order bitstream generator using a plurality of lower-order bitstream generators includes steps of: providing at least first and second bitstream generator stages; connecting the first and second bitstream generator stages in a cascaded arrangement, the first bitstream generator stage including a first adder adapted to receive an input signal supplied to the bitstream generator and operative to generate a first error signal indicative of a difference between the input signal and a first bitstream candidate that represents a closest approximation to the input signal among a plurality of bitstream candidates generated by the first bitstream generator stage, the second bitstream generator stage including a second adder adapted to receive the first error signal generated by the first adder and operative to generate a second error signal indicative of a difference between the first error signal and a second bitstream candidate that represents a closest approximation to the input signal among a
plurality of bitstream candidates generated by the second bitstream generator stage; and adding the first and second bitstream candidates generated by the first and second bitstream generator stages, respectively, to thereby generate an output signal of the bitstream generator that more closely approximates the input signal compared to the first bitstream candidate.
[0008] Embodiments of the invention will become apparent from the following detailed description thereof, which is to be read in connection with the accompanying drawings.
Brief Description of the Drawings
[0009] The following drawings are presented by way of example only and without limitation, wherein like reference numerals (when used) indicate corresponding elements throughout the several views, and wherein:
[0010] FIG. 1A is a block diagram depicting an exemplary single-loop delta-sigma bitstream generator;
[0011] FIG. IB is a block diagram depicting a linearized model of the illustrative bitstream generator shown in FIG. 1A;
[0012] FIG. 2 is a block diagram depicting an exemplary third-order delta-sigma modulator formed using a plurality of cascaded stable one-bit, single-loop delta-sigma modulators;
[0013] FIG. 3A is a block diagram depicting an illustrative one-bit, single-loop Viterbi bitstream generator;
[0014] FIG. 3B is a block diagram depicting an exemplary alternative representation of the illustrative one-bit, single-loop Viterbi bitstream generator shown in FIG. 3A;
[0015] FIG. 4 is a block diagram depicting at least a portion of an exemplary cascaded Viterbi bitstream generator, according to an embodiment of the invention;
[0016] FIG. 5 is a block diagram depicting at least a portion of an exemplary cascaded Viterbi bitstream generator, according to another embodiment of the invention; and
[0017] FIGS. 6 through 10 are waveforms depicting exemplary simulation results for the illustrative cascaded Viterbi bitstream generator shown in FIG. 4.
[0018] It is to be appreciated that elements in the figures are illustrated for simplicity and clarity. Common but well-understood elements that may be useful or necessary in a
commercially feasible embodiment may not be shown in order to facilitate a less hindered view of the illustrated embodiments.
Detailed Description
[0019] Embodiments of the invention will be described herein in the context of illustrative delta-sigma modulators and Viterbi bitstream generators. It should be understood, however, that embodiments of the invention are not limited to these or any other particular bitstream generators. Rather, embodiments of the invention are more broadly related to techniques for forming a stable Viterbi bitstream generator using a plurality of cascaded single-loop bitstream generators. In this regard, embodiments of the invention provide techniques for forming stable higher-order (e.g., greater than two) bitstream generators. Moreover, it will become apparent to those skilled in the art given the teachings herein that numerous modifications can be made to the illustrative embodiments shown that are within the scope of the claimed invention. That is, no limitations with respect to the embodiments shown and described herein are intended or should be inferred.
[0020] As a preliminary matter, for purposes of clarifying and describing embodiments of the invention, the following table provides a summary of certain acronyms and their corresponding definitions, as the terms are used herein:
Table of Acronym Definitions
[0021] FIG. 1A is a block diagram depicting an exemplary single-loop delta-sigma modulator 100. The delta-sigma modulator 100 includes an adder 102, a loop filter 104, or alternative filter circuit, and a bit-quantizer 106 (or alternative truncator, comparator, slicer, etc.). The adder 102 comprises a first input adapted to receive an input signal, x\, and a second input adapted to receive a bitstream candidate, yi. The adder 102 is operative to
generate an output signal, x2, which is equal to x\ - yi. The loop filter 104 is adapted to receive, as an input, the signal x2 from the adder 102 and to generate, as an output, a signal x3 which is supplied to a first input of the bit-quantizer 106. A second input of the bit-quantizer 106 is adapted to receive an error signal, e\. The error signal ei is the truncation (or quantization) error of the bit-quantizer 106 and it is given by the difference between the output and input of the bit-quantizer. The bit-quantizer 106 is operative to generate the output yi, which is indicative of a bitstream candidate that most closely approximates the sampled input signal as a function of the error signal e\ and previous bitstream candidates.
[0022] FIG. IB is a block diagram depicting an exemplary single-loop delta-sigma modulator 150. The delta-sigma modulator 150 is a linearized model of the illustrative delta- sigma modulator 100 shown in FIG. 1A. In this example, the bit-quantizer 106 is implemented using an adder 108 having a first input adapted to receive signal x3 generated by loop filter 104, and a second input adapted to receive truncation error signal e\. Thus, the bitstream candidate fed back to adder 102 will be a sum of the error signal e\ and the signal x3 (i.e., y\ = e\ + x3) for a given sample period. Output signal y\ generated by the adder 108, as in FIG. 1A, represents a bitstream candidate that closely approximates the sampled input signal x\ in the frequency band of interest where x\ has its energy concentrated.
[0023] The output signal y\, represented in the z-domain as Y\, can be determined as follows:
Y1 = (X — Υ1) · Η + Ex, (1) where H is the transfer function of the modulator's loop filter 104. Rearranging terms in equation (1) yields the following derivation:
Yx ■ (1 + H) = X ■ H + E
Y1 =— - X1 +— - E1 (2)
l+H 1+H v '
In equation (2) above, a signal transfer function (STF) of the delta-sigma modulator 150 can be defined as STF = , and a noise transfer function (NTF) of the delta-sigma modulator can be defined as NTF = . Using these definitions for STF and NTF, the output signal Y\
1 - -H
can be expressed as follows:
Yx = STF■ Xx + NTF■ E
Note, that the STF and NTF are based on a linearized model of the delta-sigma modulator 150, which is merely an approximation and does not accurately describe the non-linear modulator under all circumstances.
[0024] As previously stated, it is well known that higher-order (e.g., greater than two) one- bit, single-loop delta-sigma modulators suffer from instabilities. To address this shortcoming, cascaded delta-sigma modulators have been proposed which are constructed by cascading multiple stable, lower-order modulators (usually one-bit) to build a stable higher- order modulator (see, e.g., Steven R. Norsworthy, Richard Schreier, and Gabor C. Temes, "Delta-Sigma Data Converters: Theory, Design, and Simulation," IEEE Press, 1997, the disclosure of which is incorporated herein by reference). An output of a cascaded modulator, fabricated from one-bit modulators, forms a multiple-bit bitstream, as will be described in conjunction with FIG. 2.
[0025] Specifically, FIG. 2 is a block diagram depicting an exemplary third-order delta- sigma modulator 200 formed using a plurality of cascaded stable one-bit, single-loop delta- sigma modulators. The delta-sigma modulator 200 employs a multi-stage noise shaping (MASH) architecture, and thus can be referred to as a MASH-III digital delta-sigma modulator. Delta-sigma modulator 200 includes three stages, 202, 204 and 206, each stage comprising a low-order noise-shaping filter and a bit-quantizer (e.g., a comparator or slicer), whose respective outputs are combined, using, for example, a first adder 208, so that the low- order filters operate in cascade to provide a higher-order noise-shaping filter.
[0026] More particularly, a first stage 202 includes a second adder 210, an amplifier ai coupled with the second adder, a first filter 212 coupled with an output of amplifier Ά\ , a first bit-quantizer 214 coupled with an output of the first filter, and a first delay element 216 coupled with an output of the first bit-quantizer Adder 210 includes a first input adapted to receive an input signal, u, supplied to the bitstream generator 200, and a second input for receiving a bitstream candidate, vls generated by bit-quantizer 214. The adder 210 is operative to generate an output signal which is equal to the input signal u minus the bitstream candidate v\. The signal generated by adder 210 is fed to an input of amplifier als which in this example has a gain of one (i.e., unity gain). A signal generated by amplifier ai is fed to an input of the filter 212 which, in this example, has a transfer function H(z = -—— . The bit-quantizer 214 is operative to receive the signal generated by the filter 212 and a first error signal, e\, and to generate the bitstream candidate v\ which is supplied to delay element 216.
The delay element 216 has a delay of z~2 associated therewith, using z-domain representation. The first error signal e\ is generated by a third adder 218 which is operative to subtract the signal generated by filter 212 from the bitstream candidate v\. The first error signal e\ is supplied as an input to the second stage 204.
[0027] The second stage 204 includes a fourth adder 220, an amplifier a2 coupled with the fourth adder, a second filter 222 coupled with an output of amplifier a2, a second bit- quantizer 224 coupled with an output of the second filter, and a third digital filter 226 coupled with an output of the second bit-quantizer. Adder 220 includes a first input adapted to receive the first error signal e\, and a second input for receiving a bitstream candidate, v2, generated by bit-quantizer 224. The adder 220 is operative to generate an output signal which is equal to the input signal e\ minus the bitstream candidate v2. The signal generated by adder 220 is fed to an input of amplifier a2, which in this example has a gain of one. A signal generated by amplifier a2 is fed to an input of the filter 222 which, in this example, has a transfer function H(z) = -—— . The bit-quantizer 224 is operative to receive the signal generated by the filter 222 and a second error signal, e2, and to generate the bitstream candidate v2 which is supplied to filter 226. The filter 226 has a transfer function of z-1■ (1— z-1) associated therewith, using z-domain representation. The second error signal e2 is generated by a fifth adder 228 which is operative to subtract the signal generated by filter 222 from the bitstream candidate v2. The second error signal e2 is supplied as an input to the third stage 206.
[0028] Likewise, the third stage 206 includes a sixth adder 230, an amplifier a3 coupled with the sixth adder, a fourth filter 232 coupled with an output of amplifier a3, a third bit- quantizer 234 coupled with an output of the fourth filter, and a fifth digital filter 236 coupled with an output of the third bit-quantizer. Adder 230 includes a first input adapted to receive the second error signal e2, and a second input for receiving a bitstream candidate, v3, generated by bit-quantizer 234. The adder 230 is operative to generate an output signal which is equal to the input error signal e2 minus the bitstream candidate v3. The signal generated by adder 230 is fed to an input of amplifier a3, which in this example has a gain of one. A signal generated by amplifier a3 is fed to an input of the filter 232 which, in this example, has a transfer function H(z) = The bit-quantizer 234 is operative to receive the signal generated by the filter 232 and a third error signal, e3, and to generate the bitstream
candidate 3 which is supplied to filter 236. The filter 236 has a transfer function of (1— z- 1) 2 associated therewith, using z-domain representation. The truncation error (i.e., quantization error) of the bit-quantizer 234, represented by signal e3, can be obtained by subtracting the output of 234 from the input of 234.
[0029] As previously described, the respective output signals generated by each of the modulator stages 202, 204 and 206 are combined by adder 208. Specifically, adder 208 includes a first input adapted to receive a first signal generated by delay element 216 in the first stage 202, a second input adapted to receive a second signal generated by filter 226 in the second stage 204, and a third input adapted to receive a third signal generated by filter 236 in the third stage 206. The adder 208 is operative to generate an output signal, v, of the bitstream generator 200 which is equal to a sum of the first and third signals from the first stage 202 and third stage 206, respectively, minus the second signal from the second stage 204.
[0030] With reference to FIG. 2, the bitstream candidates vls V2 and v3 , represented in the z- domain as V\, V2 and V3, respectively, can be determined using the following derivation:
V1 = (U - V1 - a1 - ^-1 + E1
V^l - z" 1) = a z~x ■ U - z" 1 ■ V + (1 - z~1 E1
Vi(l - z" 1 + ttiZ" 1) = axz~x■ U + (1 - z~1)E1
= ai?" 1 . u + ∑ l— . E (3) where a\ represents the gain of amplifier ai in the first stage 202, E\ represents the error signal e\ in the z-domain, and U represents the input signal u in the z-domain. Assuming a\ is equal to one (i.e., unity gain amplifier), equation (3) above reduces to the following expression for determining the bitstream candidate v\
V1 = z " 1 ■ U + (1 - z~1 E1 (4)
[0031] In a similar manner, bitstream candidates 2 and v3 can be determined using the following expressions in the z-domain, assuming gains «2 and a3 of amplifiers a2 and a3, respectively, are also equal to one:
V2 = z" 1■ E1 + (l - z" 1)^ (5)
V3 = z"1 - E2 + (l - z"1)^ (6)
[0032] Using equations (4) through (6) above, and incorporating the respective contributions of the delay element 216 and the digital filters 226 and 236, the modulator output signal, v, can be determined using the following derivation, in z-domain representation:
V = z~2 - V1 + z"1■ (1 - z-^C-l)■ V2 + (1 - z"1)2■ V3
V = z~3■ U + (1 - z"1)3■ E3 (7)
It is evident from equation (7) that the output signal v is indicative of a third-order, one-bit delta-sigma modulator. Note, that the cascaded output shows only contributions from the truncation error ¾ of the third stage, while the truncation error ¾ of the second stage and the truncation error ej of the first stage are cancelled. Therefore, the cascaded delta-sigma modulator effectively eliminates the truncation error of the first one or more stages and improves noise shaping of the truncation error of the last stage.
[0033] Delta-sigma modulators (or, more generally, bitstream generators) can be implemented using Viterbi decoders as truncators. With reference now to FIG. 3A, a block diagram depicts an illustrative one-bit, single-loop Viterbi bitstream generator 300. In bitstream generator 300, the truncator is implemented as a Viterbi decoder which provides bitstream candidates yci through yCN- These bitstream candidates j¾i through J¾N are subtracted from an input x supplied to the modulator to generate corresponding sum signals si through signals si through sN are then filtered by a loop filter which generates corresponding filtered error signals e\ through eN- Each bitstream candidate yt produces a corresponding filtered error signal e i = 1...N. These filtered error signals e\ through are sorted by a sorter and the best bitstream candidate of the plurality of candidates, yc, is selected as an output y of the bitstream generator.
[0034] More particularly, the bitstream generator 300 comprises an adder 302, a loop filter 304, a sorter 306, and a Viterbi decoder 308, connected in a closed-loop feedback configuration. The adder 302 is operative to combine bitstream candidates, y\ through N, generated by the Viterbi decoder 308 with an input signal, x, supplied to the modulator 300, and to generate respective output signals, s\ through SN, with each output signal being indicative of a subtraction of a corresponding bitstream candidate from the input signal x, where N is an integer greater than one (e.g., s\ = x - yci, = x -ycN>-
[0035] Each of the output signals si through sN is passed through the filter 304, having a transfer function H(z), to generate a plurality of corresponding error signals, e\ through eN, referred to collectively herein as error e. Thus, each of the error signals e\ through represents a difference between the input signal x and a corresponding one of the bitstream candidates yci through ycN, respectively. These error signals are then sorted in order of magnitude of error by the sorter 306. The Viterbi decoder 308 uses this error signal to control how the bitstream candidates are generated. A "best" bitstream candidate 310, indicative of a bitstream candidate having a smallest error among a prescribed number of previously stored candidates, is selected as the output signal y of the modulator 300.
[0036] An output signal Y of the modulator 300, in z-domain representation, can be determined using the following derivation:
(X— YQ) ■ H = E; Y = YC , where E is minimum
Y = X— E ■ -
H
Y = X■ STF - E ■ NTF (8)
In equation (8) above, an STF of the modulator 300 is assumed to be equal to one (i.e., STF = 1), and an NTF is assumed to be equal to 1/H. The error signal E is assumed to be white and uncorrected with input signal X.
[0037] FIG. 3B is a block diagram depicting an exemplary one-bit, single-loop Viterbi bitstream generator 350. The bitstream generator 350 is merely an alternative representation of the illustrative bitstream generator 300 shown in FIG. 3A. The N-wire wide signals shown in FIG. 3A are merely combined into N-wire wide signal busses in FIG. 3B.
[0038] A Viterbi decoder can be implemented using various known algorithms. One possibility is to use a full-trellis implementation of the Viterbi algorithm (see, e.g., Andrew Viterbi, "Error Bounds for Convolutional Codes and an Asymptotically Optimum Decoding Algorithm," IEEE Transactions on Information Theory, Vol. 13, No. 2, pp. 260-269, Apr. 1967, the disclosure of which is incorporated by reference herein in its entirety). An alternative possibility is to use a sub-optimal algorithm such as an M-algorithm (see, e.g., R.- K. Gopalan and O.M. Collins, "An Optimization Approach to Single-Bit Quantization," IEEE Transactions on Circuits and Systems - Part I, Vol. 56, Issue 2, pp. 2655-2668, Dec. 2009, the disclosure of which is incorporated by reference herein in its entirety). The M-algorithm trades signal-to-noise (SNR) performance of the encoded signal with complexity of the
digital hardware implementation. With an increased number of M states used in the M- algorithm, both the SNR performance and the digital hardware complexity of the Viterbi bitstream generator improve.
[0039] The stability of a delta-sigma modulator or a Viterbi bitstream generator depends on one or more factors, such as, for example:
An order of a transfer function, H(z), of the digital loop filter in the delta-sigma modulator or Viterbi bitstream generator. A higher order H(z) exhibits more fragile stability than a lower order H(z).
A frequency response of H(z), which can be characterized by the out-of-band gain of H(z) and by the sharpness of the frequency response of H(z). The sharper the frequency response of H(z), the noise shaping is said to be more aggressive and the delta-sigma modulator or Viterbi bitstream generator is more prone to instability (i.e., it has a fragile stability). Also, the sharper the frequency response of H(z), the longer it takes the impulse response h(t) to effectively settle in the time domain; therefore, a larger value is needed for M when the Viterbi bitstream generator is implemented via the M-algorithm
[0040] In general, a higher order H(z) also exhibits better SNR performance than a lower order H(z), and, furthermore, a sharper H(z) exhibits better SNR performance than a less sharp H(z).
[0041] The stability of the Viterbi bitstream generator also depends on an implementation of the Viterbi decoder. Since the digital hardware complexity of a full-trellis Viterbi decoder is usually impractical when used as a bitstream generator, the M-algorithm implementation provides a good compromise between SNR performance and hardware complexity. Hence, there is a tradeoff between SNR performance, hardware complexity and stability when designing bitstream generators.
[0042] As previously stated, one disadvantage of a high-order one-bit, single-loop bitstream generator such as 300 (or 350) is that it suffers from instabilities. To address this shortcoming, embodiments of the invention provide a cascaded Viterbi bitstream generator architecture. The cascaded Viterbi bitstream generator architecture according to embodiments of the invention employs a plurality of stable lower-order bitstream generators to fabricate a stable higher-order bitstream generator. As will be described in further detail
below, the cascaded Viterbi bitstream generator in accordance with embodiments of the invention preserves the robust stability of the first stage and keeps the high SNR performance of the second stage via the beneficial cascading architecture.
[0043] FIG. 4 is a block diagram depicting at least a portion of an exemplary cascaded Viterbi bitstream generator 400, according to an embodiment of the invention. The bitstream generator 400 comprises two single-loop bitstream generators, 402 and 404, connected in a cascade configuration. While two single-loop bitstream generators are shown in FIG. 4, it is to be appreciated that embodiments of the invention are not limited to any specific number of cascaded single-loop bitstream generator stages employed. Rather, techniques according to embodiments of the invention can be extended in a similar manner to cascade more than two low-order and stable Viterbi bitstream generators, as will become apparent to those skilled in the art given the teachings herein.
[0044] More particularly, a first single-loop bitstream generator stage 402 includes an adder 406, a loop filter 408, a sorter (SORT 1) 410, and a Viterbi decoder (VITERBI 1) 412, connected in a closed-loop feedback configuration. It is to be understood that one or more functional blocks in the first bitstream generator stage 402 may be combined into a single functional block and/or integrated with one or more other blocks. Furthermore, it is to be appreciated that one or more functional blocks in the first bitstream generator stage 402 may be implemented in hardware, in software, or in a combination of hardware and software (e.g., firmware), according to embodiments of the invention.
[0045] The adder 406 is operative to combine a bitstream candidate signal, yCu, generated by the Viterbi decoder 412 with an input signal, x\, supplied to the bitstream generator 400, and to generate a combined output signal, 2, indicative of a subtraction of the bitstream candidate signal yen from the input signal x\ (i.e., X2 = x\ - yen)- The bitstream candidate signal yCu represents a quantized estimate of the input signal x\. Signal x2, which represents an error between the input signal x\ and the quantized estimate of the input signal, is then passed through loop filter 408 having a transfer function Hl(z). The loop filter 408 is operative to receive the signal x-ι and to generate a filtered error signal, e\. The filtered error signal e\ is fed to the sorter 410 which arranges the bitstream candidates as a function of a magnitude of error and selects a bitstream candidate, yi, having a minimum error value among the candidates. Thus, the sorter 410, in conjunction with the Viterbi decoder 412, is operative to select a bitstream candidate, among a plurality of candidates yen (i = 1 through
N, where N is an integer), which has a smallest error value ("BEST" candidate) and therefore represents a closer approximation to the input signal x\ compared to other bitstream candidates processed by the first single-loop bitstream generator stage 402.
[0046] Similarly, a second single-loop bitstream generator stage 404 includes an adder 416, a loop filter 418, a sorter (SORT 2) 420, and a Viterbi decoder (VITERBI 2) 422, connected in a closed-loop feedback configuration. The adder 416 is operative to combine a bitstream candidate signal, yen, generated by the Viterbi decoder 422 with an input signal, which in this case is the error signal x2 generated by the adder 406 in the first bitstream generator stage 402, and to generate a combined output signal, x3, indicative of a subtraction of the bitstream candidate signal yCn from the input signal x2 (i.e., x3 = 2 - yen)- The bitstream candidate signal yen represents a more accurate quantization of the error compared to the bitstream candidate signal yCu-
[0047] Signal x3, which represents a difference between signal x2 and the bitstream candidate signal yen, is then passed through loop filter 418 having a transfer function H2(z). The loop filter 418 is operative to receive the signal x3 and to generate a filtered error signal, e2. The filtered error signal e2 is fed to the sorter 420 which arranges bitstream candidates as a function of a magnitude of error and selects a bitstream candidate, j¾, having a minimum error value among the candidates. The sorter 420, in conjunction with the Viterbi decoder 422, is operative to select a bitstream candidate, among a plurality of candidates yen (i = 1 through N), having a smallest error value ("BEST" candidate) and therefore represents a closer approximation to the signal x2 compared to other bitstream candidates processed by the second single-loop bitstream generator stage 404.
[0048] It is to be appreciated that, although shown as separate functional modules for clarity purposes, it is contemplated that one or more modules in the cascaded Viterbi bitstream generator 400 can be combined together and/or integrated with one or more other modules, with the resulting module(s) incorporating the respective functions of the combined modules. For example, the Viterbi decoder 412 can be combined with the sorter 410, according to embodiments of the invention, to implement a Viterbi decoder that incorporates a sorting function therein.
[0049] A global output signal, y, generated by the cascaded Viterbi bitstream generator 400 is produced by combining the respective outputs from the individual single-loop bitstream generator stages 402 and 404. To accomplish this, the cascaded bitstream generator 400
includes an adder 424, or alternative combination circuitry, operative to add the bitstream signal j¾ generated by the second bitstream generator stage 404 from the bitstream signal y\ generated by the first bitstream generator stage 402 (i.e., y = y\ + yi). The output signal y beneficially provides a more accurate approximation to the input signal x\ than the individual bitstream signal y\ output by the first bitstream generator stage 402.
[0050] The output signal y of the cascaded Viterbi bitstream generator 400, in z-domain representation, is calculated using the following derivation, where capital letters are used to denote corresponding signals in the z-domain:
(¾ — Yen) 1 = Ε ,
where Y\ = Yen \ E\ = minimum, which leads to
Y = X1 - - E2 (9)
In equation (9) above, the output 7 of the cascaded Viterbi bitstream generator 400 includes only the noise-shaped truncation error terms from the second stage— E2 , and the noise-
H2.
- shaped truncation error terms from the first stage, namely,—■ E1, are beneficially cancelled (or at least reduced).
[0051] The above derivations provide guidance on how to design the digital filter transfer functions HI and H2, as described in further detail below with reference to the exemplary Viterbi bitstream generator 400 shown in FIG. 4. Illustrative examples of these transfer functions can be deduced from MATLAB® (a registered trademark of The Math Works, Inc.) simulation results shown in FIGS. 6 through 10, according to embodiments of the invention.
[0052] Specifically, the transfer function Hl(z) of filter 408 in the first stage 402 is designed, in accordance with an embodiment of the invention, having good stability for full-
scale amplitude input signals, but with modest signal-to-noise ratio (SNR) performance (e.g., about 30 to 50 dB). The second stage 404 quantizes the noise-shaped error term of the first stage 402, namely,— Ex, which has relatively small power (e.g., about -40 to -30 decibels
H 1
relative to digital full scale (dBFS)) in the frequency band of interest. Therefore, the transfer function H2(z) of filter 418 in the second stage 404 should be designed having good stability for small input signals (e.g., about -40 to -30 dBFS), but should exhibit very good SNR performance (e.g., about 60 to 80 dB). Such a Viterbi bitstream generator with very good SNR performance (e.g., about 60 to 80 dB) for small input signals (e.g., about -40 to -30 dBFS) would have poor stability for large input signals (e.g., about -10 to 0 dBFS). Thus, the first stage 402 trades SNR performance for large input signal stability, while the second stage 404 trades large input signal stability for SNR performance. The resulting cascaded output 7 exhibits the full-scale (i.e., about 0 dBFS) stability of the first stage 402 and the very good SNR performance of the second stage 404, therefore keeping the best characteristics of each stage, cancels the undesired high truncation error terms of the first stage (—■ E ), and outputs the low truncation error terms of the second stage (— E2), as shown above in equation (9).
H2.
[0053] FIG. 5 is a block diagram depicting at least a portion of an exemplary cascaded Viterbi bitstream generator 500, according to another embodiment of the invention. Bitstream generator 500 essentially extends principles utilized in the illustrative bitstream generator 400 shown in FIG. 4 by cascading a third single-loop bitstream generator stage 502 to the first and second single-loop bitstream generator stages 402 and 404, respectively, described above in conjunction with FIG. 4.
[0054] With continued reference again to FIG. 5, like each of the first and second single- loop bitstream generator stages 402 and 404, respectively, previously described in conjunction with FIG. 4, a third single-loop bitstream generator stage 502 includes an adder 506, a loop filter 508, a sorter (SORT 3) 510, and a Viterbi decoder (VITERBI 3) 512, connected in a closed-loop feedback configuration. The adder 506 is operative to combine a bitstream candidate signal, yen, generated by the Viterbi decoder 512 with an input signal, which in this case is the error signal X3 generated by the adder 416 in the second bitstream generator stage 404, and to generate a combined output signal, x4, indicative of a subtraction of the bitstream candidate signal yea from the input signal x3 (i.e., x4 = X3 -yai).
[0055] Signal x4, which represents a difference between signal x3 and the bitstream candidate signal yCn, is then passed through loop filter 508 having a transfer function H3(z). The loop filter 508 is operative to receive the signal x4 and to generate a filtered error signal, ei. The filtered error signal is fed to the sorter 510 which is operative to arrange bitstream candidates as a function of a magnitude of error, and to select a bitstream candidate, ys, having a minimum error value among the stored candidates. The sorter 510, in conjunction with the Viterbi decoder 512, is operative to select a bitstream candidate, among a plurality of candidates yea (i = 1 through N, where N is an integer), having a smallest error value ("BEST" candidate) and therefore represents a closer approximation to the input signal x^ compared to other bitstream candidates processed by the third single-loop bitstream generator stage 502.
[0056] An output signal, y, generated by the cascaded Viterbi bitstream generator 500 is produced by combining the respective outputs from the individual single-loop bitstream generator stages 402, 404 and 502. To accomplish this, the bitstream generator 500 includes an adder 514, or alternative combination circuitry, operative to add the bitstream signals j¾ and 3 generated by the second and third bitstream generator stages 404 and 502, respectively, to the bitstream signal y\ generated by the first bitstream generator stage 402 (i.e., y = y\ + j¾ + 3). The output signal y generated by the bitstream generator 500, which includes three cascaded single-loop bitstream generator stages, beneficially provides a more accurate approximation to the input signal i than the individual bitstream signal output y\ generated by the first bitstream generator stage 402.
[0057] Moreover, the output signal y generated by the bitstream generator 500 shown in FIG. 5, which includes three cascaded single-loop bitstream generator stages, generally provides a beneficially more accurate approximation to the input signal x\ compared to the Viterbi bitstream generator 400 shown in FIG. 4, which includes two cascaded single-loop bitstream generator stages. Hence, the number of cascaded single-loop bitstream generator stages in the Viterbi bitstream generator can be advantageously controlled to produce a required level of accuracy of the output signal, according to embodiments of the invention.
[0058] The output signal y of the cascaded Viterbi bitstream generator 500, in z-domain representation, is calculated using the following derivation, where, as in the expressions above, capital letters are used to denote corresponding signals in the z-domain:
1
Yi = Xi Ei
HI
1
y2 = X2 ■ E2
H2
1
Y3 = x3 ■ E3
H3
_ 1
HI ■ Ei
1
X3 ■ E2
_ H2
Y = X1 - - E3 (10)
[0059] As apparent from equation (10) above, the output 7 of the cascaded Viterbi bitstream generator 500 includes only the noise-shaped truncation error terms from the third
1 1 stage,—■ E3 , and the noise-shaped truncation error terms from the first stage, namely,—■
1
Et, and from the second stage, namely,—■ E2 , are both beneficially cancelled.
[0060] By way of example only and without loss of generality, FIGS. 6 through 10 depict MATLAB® simulation results for the illustrative cascaded Viterbi bitstream generator 400 shown in FIG. 4. The exemplary waveforms shown in FIGS. 6- 10 were obtained using a sampling frequency of 4.17792 gigahertz (GHz). The input signal (xi) was chosen to be a 40- megahertz (MHz) wide composite modulated signal with eight carriers, each modulated by 5- MHz wideband code division multiple access (WCDMA) signals. The composite modulated signal has undergone a crest- factor reduction (CFR) to 6.5 dB. Spectra of the signals y\, j¾ (= i - yi), and y (= y\ + j¾) are shown in FIGS. 6, 7 and 8, respectively. The performance improvement in excess of 10 dB due to cascading is shown in FIGS. 9 and 10.
[0061] At least a portion of the techniques according to embodiments of the present invention may be implemented in an integrated circuit. In forming integrated circuits, identical die are typically fabricated in a repeated pattern on a surface of a semiconductor wafer. Each die includes a device described herein, and may include other structures and/or circuits. The individual die are cut or diced from the wafer, then packaged as an integrated circuit. One skilled in the art would know how to dice wafers and package die to produce
integrated circuits. Any of the exemplary circuits illustrated in the accompanying figures, or portions thereof, may be part of an integrated circuit. Integrated circuits so manufactured are considered part of embodiments of the invention.
[0062] An integrated circuit in accordance with embodiments of the invention can be employed in essentially any application and/or electronic system in which digital coding and/or modulation/demodulation is utilized. Suitable systems for implementing embodiments of the invention may include, but are not limited, to power amplifiers (e.g., SWPAs), transmitters, receivers, signal generators, communication networks, electronic instruments (e.g., measurement equipment), etc. Systems incorporating such integrated circuits are considered part of embodiments of the invention. Given the teachings of embodiments of the invention provided herein, one of ordinary skill in the art will be able to contemplate other implementations and applications of the embodiments of the invention.
[0063] The illustrations of embodiments of the invention described herein are intended to provide a general understanding of the structure of various embodiments, and they are not intended to serve as a complete description of all the elements and features of apparatus and systems that might make use of the structures described herein. Many other embodiments will become apparent to those skilled in the art given the teachings herein; other embodiments are utilized and derived therefrom, such that structural and logical substitutions and changes can be made without departing from the scope of this disclosure. The drawings are also merely representational and are not drawn to scale. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense.
[0064] Embodiments of the invention are referred to herein, individually and/or collectively, by the term "embodiment" merely for convenience and without intending to limit the scope of this application to any single embodiment or inventive concept if more than one is, in fact, shown. Thus, although specific embodiments have been illustrated and described herein, it should be understood that an arrangement achieving the same purpose can be substituted for the specific embodiment(s) shown; that is, this disclosure is intended to cover any and all adaptations or variations of various embodiments. Combinations of the above embodiments, and other embodiments not specifically described herein, will become apparent to those of skill in the art given the teachings herein.
[0065] The abstract is provided to comply with 37 C.F.R. § 1.72(b), which requires an abstract that will allow the reader to quickly ascertain the nature of the technical disclosure.
It is submitted with the understanding that it will not be used to interpret or limit the scope or meaning of the claims. In addition, in the foregoing Detailed Description, it can be seen that various features are grouped together in a single embodiment for the purpose of streamlining the disclosure. This method of disclosure is not to be interpreted as reflecting an intention that the claimed embodiments require more features than are expressly recited in each claim. Rather, as the appended claims reflect, inventive subject matter lies in less than all features of a single embodiment. Thus the following claims are hereby incorporated into the Detailed Description, with each claim standing on its own as separately claimed subject matter.
[0066] Given the teachings of embodiments of the invention provided herein, one of ordinary skill in the art will be able to contemplate other implementations and applications of the techniques of embodiments of the invention. Although illustrative embodiments of the invention have been described herein with reference to the accompanying drawings, it is to be understood that embodiments of the invention are not limited to those precise embodiments, and that various other changes and modifications are made therein by one skilled in the art without departing from the scope of the appended claims.
Claims
1. A bitstream generator, comprising:
at least first and second bitstream generator stages connected in a cascaded arrangement, the first bitstream generator stage including a first adder adapted to receive an input signal supplied to the bitstream generator and operative to generate a first error signal indicative of a difference between the input signal and a first bitstream candidate that represents a closest approximation to the input signal among a plurality of bitstream candidates generated by the first bitstream generator stage, the second bitstream generator stage including a second adder adapted to receive the first error signal generated by the first adder and operative to generate a second error signal indicative of a difference between the first error signal and a second bitstream candidate that represents a closest approximation to the input signal among a plurality of bitstream candidates generated by the second bitstream generator stage; and
a third adder adapted to receive the first and second bitstream candidates generated by the first and second bitstream generator stages, respectively, and operative to generate an output signal of the bitstream generator that more closely approximates the input signal compared to the first bitstream candidate.
2. The bitstream generator of claim 1, wherein the first bitstream generator stage further comprises a loop filter having an input adapted to receive the first error signal and operative to generate a filtered error signal.
3. The bitstream generator of claim 2, wherein the first bitstream generator stage further comprises a sorter coupled with an output of the loop filter, the sorter being operative to arrange the plurality of bitstream candidates generated by the first bitstream generator stage as a function of a magnitude of error and to select a bitstream candidate having a minimum error value among the plurality of bitstream candidates generated by the first bitstream generator stage.
4. The bitstream generator of claim 1 , wherein the first bitstream generator stage further comprises a Viterbi decoder operative to generate the plurality of bitstream candidates generated by the first bitstream generator stage, to store at least a subset of the plurality of
bitstream candidates generated by the first bitstream generator stage, and to select, from the plurality of bitstream candidates generated by the first bitstream generator stage, the first bitstream candidate having a magnitude of error which is lower than other bitstream candidates generated by the first bitstream generator stage.
5. The bitstream generator of claim 1, wherein the second bitstream generator stage further comprises a loop filter having an input adapted to receive the second error signal and operative to generate a filtered error signal.
6. The bitstream generator of claim 5, wherein the second bitstream generator stage further comprises a sorter coupled with an output of the loop filter, the sorter being operative to arrange the plurality of bitstream candidates generated by the second bitstream generator stage as a function of a magnitude of error and to select a bitstream candidate having a minimum error value among the plurality of bitstream candidates generated by the second bitstream generator stage.
7. The bitstream generator of claim 5, wherein a transfer function of the loop filter in the second bitstream generator stage is configured so as to substantially cancel noise- shaped truncation error generated by the first bitstream generator stage.
8. The bitstream generator of claim 1, wherein the second bitstream generator stage further comprises a Viterbi decoder operative to generate the plurality of bitstream candidates generated by the second bitstream generator stage, to store at least a subset of the plurality of bitstream candidates generated by the second bitstream generator stage, and to select, from the plurality of bitstream candidates generated by the second bitstream generator stage, the second bitstream candidate having a magnitude of error which is lower than other bitstream candidates generated by the second bitstream generator stage.
9. The bitstream generator of claim 1, further comprising a third bitstream generator stage, the third bitstream generator stage including a fourth adder adapted to receive the second error signal generated by the second adder and operative to generate a third error signal indicative of a difference between the second error signal and a third bitstream candidate that represents a closest approximation to an input signal supplied to the third
bitstream generator stage among a plurality of bitstream candidates generated by the third bitstream generator stage.
10. The bitstream generator of claim 9, wherein the third bitstream generator stage further comprises:
a loop filter having an input adapted to receive the third error signal and operative to generate a filtered error signal; and
a sorter coupled with an output of the loop filter, the sorter being operative to arrange the plurality of bitstream candidates generated by the third bitstream generator stage as a function of a magnitude of error and to select a bitstream candidate having a minimum error value among the plurality of bitstream candidates generated by the third bitstream generator stage.
11. The bitstream generator of claim 9, wherein the third bitstream generator stage further comprises a Viterbi decoder operative to generate the plurality of bitstream candidates generated by the third bitstream generator stage, to store at least a subset of the plurality of bitstream candidates generated by the third bitstream generator stage, and to select, from the plurality of bitstream candidates generated by the third bitstream generator stage, the third bitstream candidate having a magnitude of error which is lower than other bitstream candidates generated by the third bitstream generator stage.
12. The bitstream generator of claim 1, wherein each of the first and second bitstream generator stages comprises a single-loop Viterbi bitstream generator.
13. The bitstream generator of claim 1, wherein the second bitstream generator stage is configured such that noise-shaped truncation error generated by the first bitstream generator stage is cancelled.
14. The bitstream generator of claim 1, wherein the second bitstream generator stage is configured such that noise-shaped truncation error generated by the first bitstream generator stage is at least reduced.
15. The bitstream generator of claim 1, wherein at least a portion of the bitstream generator is fabricated in at least one integrated circuit.
16. An electronic system, comprising:
an integrated circuit including at least one bitstream generator, the at least one bitstream generator comprising:
at least first and second bitstream generator stages connected in a cascaded arrangement, the first bitstream generator stage including a first adder adapted to receive an input signal supplied to the bitstream generator and operative to generate a first error signal indicative of a difference between the input signal and a first bitstream candidate that represents a closest approximation to the input signal among a plurality of bitstream candidates generated by the first bitstream generator stage, the second bitstream generator stage including a second adder adapted to receive the first error signal generated by the first adder and operative to generate a second error signal indicative of a difference between the first error signal and a second bitstream candidate that represents a closest approximation to the input signal among a plurality of bitstream candidates generated by the second bitstream generator stage; and
a third adder adapted to receive the first and second bitstream candidates generated by the first and second bitstream generator stages, respectively, and operative to generate an output signal of the bitstream generator that more closely approximates the input signal compared to the first bitstream candidate.
17. The system of claim 16, wherein the first bitstream generator stage in the at least one bitstream generator further comprises a Viterbi decoder operative to generate the plurality of bitstream candidates generated by the first bitstream generator stage, to store at least a subset of the plurality of bitstream candidates generated by the first bitstream generator stage, and to select, from the plurality of bitstream candidates generated by the first bitstream generator stage, the first bitstream candidate having a magnitude of error which is lower than other bitstream candidates generated by the first bitstream generator stage.
18. The system of claim 16, wherein the first bitstream generator stage in the at least one bitstream generator further comprises a Viterbi decoder operative to generate the
plurality of bitstream candidates generated by the first bitstream generator stage, to store at least a subset of the plurality of bitstream candidates generated by the first bitstream generator stage, and to select, from the plurality of bitstream candidates generated by the first bitstream generator stage, the first bitstream candidate having a magnitude of error which is lower than other bitstream candidates generated by the first bitstream generator stage.
19. The system of claim 16, wherein the at least one bitstream generator comprises a third bitstream generator stage, the third bitstream generator stage including a fourth adder adapted to receive the second error signal generated by the second adder and operative to generate a third error signal indicative of a difference between the second error signal and a third bitstream candidate that represents a closest approximation to an input signal supplied to the third bitstream generator stage among a plurality of bitstream candidates generated by the third bitstream generator stage.
20. A method for forming a stable higher-order bitstream generator using a plurality of lower-order bitstream generators, the method comprising:
providing at least first and second bitstream generator stages;
connecting the first and second bitstream generator stages in a cascaded arrangement, the first bitstream generator stage including a first adder adapted to receive an input signal supplied to the bitstream generator and operative to generate a first error signal indicative of a difference between the input signal and a first bitstream candidate that represents a closest approximation to the input signal among a plurality of bitstream candidates generated by the first bitstream generator stage, the second bitstream generator stage including a second adder adapted to receive the first error signal generated by the first adder and operative to generate a second error signal indicative of a difference between the first error signal and a second bitstream candidate that represents a closest approximation to the input signal among a plurality of bitstream candidates generated by the second bitstream generator stage; and
adding the first and second bitstream candidates generated by the first and second bitstream generator stages, respectively, to thereby generate an output signal of the bitstream generator that more closely approximates the input signal compared to the first bitstream candidate.
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US14/380,880 US9385837B2 (en) | 2013-01-18 | 2013-01-18 | Cascaded viterbi bitstream generator |
| PCT/US2013/022321 WO2014113028A1 (en) | 2013-01-18 | 2013-01-18 | Cascaded viterbi bitstream generator |
| TW102129709A TW201431299A (en) | 2013-01-18 | 2013-08-19 | Cascaded viterbi bitstream generator |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/US2013/022321 WO2014113028A1 (en) | 2013-01-18 | 2013-01-18 | Cascaded viterbi bitstream generator |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2014113028A1 true WO2014113028A1 (en) | 2014-07-24 |
Family
ID=51209973
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/US2013/022321 Ceased WO2014113028A1 (en) | 2013-01-18 | 2013-01-18 | Cascaded viterbi bitstream generator |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US9385837B2 (en) |
| TW (1) | TW201431299A (en) |
| WO (1) | WO2014113028A1 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11366977B2 (en) * | 2015-08-24 | 2022-06-21 | UNIVERSITé LAVAL | System and method for detecting spikes in noisy signals |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5153593A (en) * | 1990-04-26 | 1992-10-06 | Hughes Aircraft Company | Multi-stage sigma-delta analog-to-digital converter |
| US20020030618A1 (en) * | 2000-07-31 | 2002-03-14 | Stmicroelectronics S.R.L. | Method of re-establishing the stability of a sigma-delta modulator and a circuit for implementing the method |
| US20020036578A1 (en) * | 2000-08-11 | 2002-03-28 | Derk Reefman | Method and arrangement for synchronizing a sigma delta-modulator |
| US20020159604A1 (en) * | 1996-11-27 | 2002-10-31 | Sony Corporation | Signal processors |
-
2013
- 2013-01-18 US US14/380,880 patent/US9385837B2/en active Active
- 2013-01-18 WO PCT/US2013/022321 patent/WO2014113028A1/en not_active Ceased
- 2013-08-19 TW TW102129709A patent/TW201431299A/en unknown
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5153593A (en) * | 1990-04-26 | 1992-10-06 | Hughes Aircraft Company | Multi-stage sigma-delta analog-to-digital converter |
| US20020159604A1 (en) * | 1996-11-27 | 2002-10-31 | Sony Corporation | Signal processors |
| US20020030618A1 (en) * | 2000-07-31 | 2002-03-14 | Stmicroelectronics S.R.L. | Method of re-establishing the stability of a sigma-delta modulator and a circuit for implementing the method |
| US20020036578A1 (en) * | 2000-08-11 | 2002-03-28 | Derk Reefman | Method and arrangement for synchronizing a sigma delta-modulator |
Non-Patent Citations (1)
| Title |
|---|
| HARPE ET AL.: "Efficient Trellis-type Sigma Delta Modulator", AUDIO ENGINEERING SOCIETY, March 2003 (2003-03-01), Retrieved from the Internet <URL:http://www.aes.org/e-lib/browse.cfm?elib=12575> [retrieved on 20130313] * |
Also Published As
| Publication number | Publication date |
|---|---|
| US9385837B2 (en) | 2016-07-05 |
| US20150074501A1 (en) | 2015-03-12 |
| TW201431299A (en) | 2014-08-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7432841B1 (en) | Delta-sigma analog-to-digital converter with pipelined multi-bit quantization | |
| CN102457282B (en) | Delta-sigma modulator and delta-sigma modulation method | |
| US9007247B2 (en) | Multi-bit sigma-delta modulator with reduced number of bits in feedback path | |
| US6304608B1 (en) | Multibit sigma-delta converters employing dynamic element matching with reduced baseband tones | |
| US6894632B1 (en) | Programmable analog-to-digital converter | |
| CN102163975B (en) | High-resolution delta-sigma digital-to-analog converter and method of operation thereof | |
| US8223051B2 (en) | Multi-bit sigma-delta modulator with reduced number of bits in feedback path | |
| US7453382B2 (en) | Method and apparatus for A/D conversion | |
| EP3158646A1 (en) | Interleaved modulator | |
| Chae et al. | A 12mW low-power continuous-time bandpass ΔΣ modulator with 58dB SNDR and 24MHz bandwidth at 200MHz IF | |
| US10020818B1 (en) | Systems and methods for fast delta sigma modulation using parallel path feedback loops | |
| US11870453B2 (en) | Circuits and methods for a noise shaping analog to digital converter | |
| JP2010171484A (en) | Semiconductor integrated circuit device | |
| CN103929184A (en) | Delta-sigma modulator based on digital-noise coupling technology | |
| CN103762980B (en) | High-stability sigma-delta modulator structure with improved noise suppression effect | |
| US6741197B1 (en) | Digital-to-analog converter (DAC) output stage | |
| US9385837B2 (en) | Cascaded viterbi bitstream generator | |
| US7212137B2 (en) | Delta sigma modulator with integral decimation | |
| Marin et al. | Considerations for high-speed configurable-bandwidth time-interleaved digital delta-sigma modulators and synthesis in 28 nm UTBB FDSOI | |
| KR101933596B1 (en) | Systems and methods for data conversion of signals using noise shaping | |
| Li et al. | Analysis and design of a multi-bit sigma-delta modulator for chromatography application | |
| Yesufu et al. | An algorithm for high precision delta-sigma digital-to-analog converters | |
| Quiquerez et al. | Advanced architectures for current memory sigma-delta modulators | |
| Afzal | Complexity and Power Reduction in Digital Delta-Sigma Modulators | |
| O'Brien et al. | High order mismatch noise shaping for bandpass DACs |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| WWE | Wipo information: entry into national phase |
Ref document number: 14380880 Country of ref document: US |
|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 13871985 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 13871985 Country of ref document: EP Kind code of ref document: A1 |

