Noise and Cross-Talk Attenuation in an Audio System by Offsetting Outputs in Phase
An amplifier may include two or more pulse-width modulators (PWMs) controlling respective sets of switches to produce an amplified version of a source signal. The clocking for the amplifier may be controlled to delay signal processing within the PWMs relative to one another in time, thereby providing an effective time offset between the absolute moment in time of the edge transition of the controlling signals to the respective sets of switches. The PWMs may include a decrementor that counts down to zero from the next PWM duty-cycle value when a new data sample is detected, beginning a new count when the next sample is present. The PWM output may correspond to the counter value, outputting a pulse when the counter value is nonzero. A “data-sample-ready” signal may be decoded from a master counter, which may be clocked based on the high speed PWM clock, and the delay mechanism may be based on adjusting the decode value to determine when the PWM should initialize to the next data sample.
This application is a continuation of U.S. patent application Ser. No. 13/595,276 titled “Attenuating Noise and Cross-Talk in an Audio System by Offsetting Outputs In Phase” filed Aug. 27, 2012, whose inventors are Douglas E. Heineman and Mark A. Alexander, now U.S. Pat. No. 8,847,682, which claims benefit of priority of U.S. provisional application Ser. No. 61/543,998 titled “Circuits and Methods Used in Audio Signal Processing”, filed Oct. 6, 2011, which is hereby incorporated by reference in its entirety as though fully and completely set forth herein.
FIELD OF THE INVENTIONThe present invention relates generally to signal processing, and more particularly to attenuating noise and cross-talk in an audio system.
DESCRIPTION OF THE RELATED ARTSignal processing represents a combined application of electrical/computer engineering and mathematical principles, primarily directed to the analysis of and operation on either discrete or continuous time signals. Signals of interest can include sound, images, time-varying measurement values and sensor data, for example biological data such as electrocardiograms, control system signals, telecommunication transmission signals such as radio signals, and many others. Signals are typically analog and/or digital electrical representations of time-varying or spatial-varying physical quantities. Types of signal processing include analog, discrete time, and digital.
Analog signal processing is performed on signals that have not been digitized, for example signals that are used in classical radio, telephone, radar, and television systems. Analog signal processing typically makes use of linear electronic circuits such as passive filters, active filters, additive mixers, integrators and various types of delay lines, as well as non-linear circuits such as frequency mixers and voltage-controlled amplifiers, voltage-controlled filters, voltage-controlled oscillators and phase-locked loops. Discrete time signal processing is performed on sampled signals that are defined at discrete points in time, and as such are quantized in time, but not in magnitude. Analog discrete-time signal processing is based on electronic devices such as sample and hold circuits, analog time-division multiplexers, analog delay lines and analog feedback shift registers, and may be considered a predecessor of digital signal processing.
Digital signal processing involves the processing of digitized discrete-time sampled signals. Processing is typically performed by general-purpose computers or digital circuits such as application specific integrated circuits (ASICs), field-programmable gate arrays, or specialized digital signal processors (DSPs). Digital signal processing mostly includes performing arithmetic operations such as fixed-point and floating-point operations, real-valued and complex-valued operations, multiplication and addition. Many of these operations are implemented through the use of circular buffers and look-up tables. Examples of digital signal processing algorithms include Fast Fourier transforms (FFT), finite impulse response (FIR) filters, infinite impulse response (IIR) filters, and adaptive filters such as the Wiener and Kalman filters.
Audio signal processing, sometimes referred to as audio processing, is the processing of electrical signals that correspond to auditory signals, or sound. Since audio signals may be electronically represented in either digital or analog format, audio signal processing may also take place in either the analog or digital domain. In analog audio signal processing, operations are performed directly on the electrical signals corresponding to the audio signals, while digital signal processing consists mostly of mathematical operations performed on digital representations of the electrical signals that correspond to respective audio signals. Typically, the digital representation of audio signals expresses the pressure waveform that characterizes the audio signal as a sequence of binary numbers. This permits signal processing using digital circuits such as microprocessors and computers, and while analog to digital conversion can be prone to loss, most modern audio systems use the digital approach because digital signal processing techniques are overall more powerful and efficient than signal processing in the analog domain.
Overall, since audio signals first need to be converted to electrical signals, digital audio processing systems include both analog and digital components in a full processing path that begins with the pressure waveforms that physically define the audio signal and ends with the digital representation of the corresponding electrical signals derived therefrom. Some of the most common components typically used in audio processing systems include pulse-width modulators, power limiters, start-up circuits, power regulators, comparators, amplifiers, oscillators, among others. The quality and operating precision of these components directly impacts the quality of audio signal processing systems, as designers have to continually overcome numerous difficult design challenges to meet required specifications and quality standards.
SUMMARY OF THE INVENTIONVarious embodiments are presented of improved audio signal processing circuits, systems, and methods. In one set of embodiments, multiple channels of audio signals are driven through an open-loop, class-D amplifier with two or more pulse-width modulators (PWMs) controlling respective sets of switches to produce an amplified audio output. The sets of switches controlled by a single-ended amplifier may be in a half-bridge circuit configuration in which a set of two switches, that is, a high side switch and a low side switch are used in a push-pull (totem pole) configuration. In some embodiments, the amplifier may electrically drive an output power stage in a full bridge configuration in which two half-bridge circuits are connected to form an effective full bridge circuit. The electrical disturbance created in a full bridge circuit and its peripheral support circuitry (such as the gate drive circuit) when all the high side switches turn on within a short period of time with respect to each other may distort the output of the amplifier. The noise that is thereby created may be considered an additive non-linearity. Therefore, the qualitative performance of the amplifier may be susceptible to zero crossing distortion when the PWM outputs of the amplifier attempt to simultaneously turn on the high side switches. The zero crossing distortion causes a distinct and measurable rise in the noise floor of the amplifier because the edge alignments are corrupted in time. Therefore, it is desirable to create a timing offset between the signals controlling the high-side switches to prevent simultaneous or near simultaneous edge alignments.
If two or more full- or half-bridge circuits are relatively close in proximity, for example on the same silicon die, the noise from one bridge circuit may couple into the adjacent bridge circuit. The issue of crosstalk between channels distorting or introducing noise into the other channel is made worse when both channels of audio are driving the bridge circuits in or near a zero-crossing state. Therefore, the non-linear noise and the crosstalk between the output channels in single-ended and differential output amplifiers may be attenuated by offsetting the audio processing between the audio channels in the amplifier to delay the PWM output of each channel relative to the other channel. The delay between the channels allows the electrical perturbations in the leading bridge circuit to diminish to levels that do not corrupt the delayed signal in the lagging bridge circuit. The clocking scheme in the system may be controlled to delay the processing of the PWM signals in time relative to one another. This provides the necessary and effective time offset between the absolute moment in time of the edge transition of the control signals that are provided to the respective sets of switches (or bridge circuits) of the different channels. Therefore, by controlling the clocking to delay the processing of the PWM signals relative to one another in time, an effective offset is produced between the timing of the rising edges of the respective PWM signals output by the PWM drivers, and an effective offset is produced between the timing of the falling edges of the respective PWM signals output by the PWM drivers.
The PWM driver circuit may be implemented with a decrementor or a counter which decreases its next value relative to its last value at a specified clocked frequency. The counter may be operated to stop the counting at zero, and not resume counting until the next sample is present. The PWM output pulse from the audio amplifier may follow the value of the counter, that is, it may correspond to the counter output. Accordingly, the PWM output may be kept low—that is, no pulse may be output—when the counter value (or output) is zero. Conversely, the PWM output may be kept high—that is, a pulse may be output—when the counter value (or output) is non-zero. The counter may be loaded with a new value representative of the next PWM duty-cycle value calculated from the digital audio processor and the delta-sigma modulator. This new PWM duty-cycle value may be loaded into the decrementor at the start of an audio frame or anytime during the PWM output period once a new data sample (audio input) is detected. In some embodiments, a new “data sample ready” signal is decoded from a master counter, which is clocked based on (from) the high speed PWM clock, and the delay mechanism is based on adjusting the decode value to determine when the PWM circuit (driver) should initialize to the next data sample. The counter is designed to be deterministic, and operate continuously without disruption.
A better understanding of embodiments of the present invention may be obtained when the following Detailed Description is considered in conjunction with the following drawings, in which:
While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and are herein described in detail. It should be understood, however, that the drawings and detailed description thereto are not intended to limit the invention to the particular form disclosed, but on the contrary, the intention is to cover all modifications, equivalents and alternatives falling within the spirit and scope of the present invention as defined by the appended claims.
DETAILED DESCRIPTION OF THE EMBODIMENTSThe audio subsystem comprises a digital signal processor, referred to as Audio Signal Processor ASP 202. The ASP 202 may be implemented in any of various ways, such as by a programmable digital signal processor, a general-purpose processor, an FPGA (Field Programmable Gate Array), or a custom ASIC (Application Specific Integrated Circuit), or a combination of the above. The ASP 202 may receive the input signal and generate output data that is configured for use in generating respective pulse trains that corresponds to the input signal. The ASP 202 receives the N-bit input signal, which may be 24 bits in one embodiment (as described above), and generates a corresponding 2M-bit output, which may be an 18-bit output (which may also be considered as two 9-bit streams representative of two input channels of audio signal) in the embodiment mentioned above. The output of the ASP 202 is provided to a Digital PWM (Pulse Width Modulator) block 204.
The ASP 202 operates to reduce the number of bits to match the word length requirement of the pulse width modulators (PWMs), referred to as PWM0 and PWM1. The PWM block 204 could be designed to receive and use N (e.g. 24) bits. However, in some implementations, 24 bits would require block 204 to have a very high clock rate, i.e., a phase locked loop (PLL) would be required to drive the PWMs at very high frequencies. For example, PWMs designed to operate with up to 24 bits of resolution may require a clock frequency in the hundreds of Gigahertz range, which may be impractical from a circuit implementation perspective. In one set of preferred embodiments, the Digital PWM block 204 may operate with a frequency in the 200-400 MHz range, which may place an upper limit on the number of bits that the PWMs can receive. In the currently illustrated embodiment, the Digital PWM block 204 receives 2M bits (e.g. 2×9 bits), and uses a master clock frequency in the range of 200 MHz. In an embodiment where the block 204 receives 2×10 bits, the clock rate may double to approximately 400 MHz. In the currently preferred embodiment, the Digital PWM block 204 typically operates at a clock rate less than 500 MHz for reduced power supply consumption.
In stereophonic amplifiers, i.e. amplifiers with a left channel and a right channel, configured with differential outputs, the Digital PWM block 204 comprises a PWM Controller 212, four PWM blocks labeled PWM0 and PWM1 (for the left channel) and PWM2 and PWM3 (for the right channel), and may contain other logic as well. The PWM Controller 212 calculates edge locations of the pulse train to be generated, and produces four (M−1)-bit (in this case 8-bit) outputs. In particular, each of the four (M−1)-bit outputs may represent respective edges of pulses to be generated. The four (M−1)-bit-outputs are used by individual pulse width modulators PWM0 and PWM1, and PWM2 and PWM3 to produce the final differential PWM outputs. In general, PWM block 204 may comprise a small signal-processing block that operates on the 2M-bit input data and separates the 2M-bit input data into two pairs of individual streams of M−1 bits each. These (M−1)-bit streams may be independent. More specifically, the (M−1)-bit streams may have some correlation to each other, but the actual data may differ on an instantaneous pulse-by-pulse basis, even if the 2M-bit input to PWM block 204 is representative of very low frequency in-band AC waveforms or static DC values.
Block 222 may comprise logic for handling dead time, as well as a MOSFET Power Output Stage and gate drivers for controlling the MOSFET Power Output Stage previously described as a full-bridge circuit. The MOSFET Power Output Stage portion of block 222 comprises high power switches, preferably MOSFETs (Metal Oxide Semiconductor Field Effect Transistors). The high power switches generate a high-power (amplified) replica of the received pulse train. The MOSFET Power Output Stage portion provides the amplified pulse train to low pass filter 224. As shown, the Output Stage provides a differential pair of output signals, referred to as OUTP and OUTN, which provide two differential pulses per PWM period. The low pass filter 224 operates to remove unwanted out-of-band spectral components, and provides the two outputs, referred to as OUTP_FILT and OUTN_FILT, to a load, e.g., to a loudspeaker 124.
The PWM drivers (output signals OUTP and OUTN) may cause unwanted noise coupling into each half-bridge near zero-crossings, and low signal levels (mute and near digital silence). The issue of noise coupling near low signal levels can be caused by non-linearities in the power stage, where a power stage is a set of circuits partially composed of pre-drivers, gate drivers and the half-bridge circuits. This noise coupling is further exasperated when the high-side FET in four half-bridge circuits as shown in
In the embodiment shown in
As previously mentioned, the signal-to-noise degradation in a multi-channel digital audio system may be reduced by reducing the crosstalk between the channels. In audio systems, the timing of the edges of the PWM data streams in the half-bridge or full-bridge power stages can influence noise in other channels through ground bounce or power supply sag. However, cross-channel noise may be reduced by offsetting the edges of the output channels in time. In many present day systems, this problem is addressed by adding delay to one of the channel outputs, through the use of delay cells, for example. However, these delay cells do not sustain uniform timing delays with respect to process variations in the manufacturing, and with respect to temperature fluctuations. The variations in delay cause functional differences in the noise reduction for those systems. Other solutions seek to alter the PWM audio data content by adding or subtracting codes to offset the timing between the channels. However, adding or subtracting an offset to/from the PWM data can possibly alter the audio signal if the new audio signal results in clipping. Furthermore, the hardware associated with introducing adders and saturation checks is undesirable.
One example of a simplified typical prior art digital PWM equivalent circuit is shown in
A novel digital PWM circuit may operate to delay the processing of the PWM output pulses in time. In one set of embodiments, an audio system may first process the audio data in a Digital Audio Processor, or Audio Signal Processor (ASP) and a PWM pre-processor (which may include a Delta-Sigma modulator and noise shaper) at a slower clock rate than the clock rate at which the signal is processed in the PWM generator. Therefore, the PWM generator may latch its input data at any time during the PWM period.
In audio subsystem 600, a high frequency counter 616 and decode circuit 618 are used to derive the clock signals used in the system. Clock signals CLK_I2S and CLK_ASP are used for block synchronization for signal data transfer and audio frame alignment for ASPs 604 and 615, and clock signal CLK_NST is used to clock the PWM pre-processor circuits, which include Delta-Sigma modulators 608 and 619, and noise shapers 610 and 621. The clock signals may be derived from a phase-locked loop (PLL) 614 that receives a reference clock signal SCLK. The same high-speed counter 616 and decode circuit 618 is used to generate channel specific data-ready signals PWM_RDY (LEFT) and PWM_RDY (RIGHT), which are used respectively by the PWM generators 623 and 612 to latch their respective input data. Therefore, by using the decode circuit 618 to derive respective data ready signals that are both later in time, audio subsystem 600 may delay the processing of the signals within the PWM generator (circuits) 612 and 623 from channel to channel, and therefore offset, in time, the channel signal outputs (PWM_OUTP and PWM_OUTN) of one channel relative to the channel signal outputs of the other channel.
Any of the generator sub-blocks PWM1 and PWM2 within PWM generator blocks 612 and 623 in audio subsystem 600 of
When a new data sample is detected, PWM_RDY is asserted for one cycle of the clock signal PWM_CLK, which results in the present value PWM_IN being selected in multiplexer 724, thereby providing the value PWM_IN to latch 726. Since the output of latch 726 is fed back to one of the inputs of ALU 722, the count start value becomes PWM_IN. In addition, since the output of latch 726 at this point is no longer zero, the output of comparator 728 becomes deasserted, and the output of ALU 722 is selected in multiplexer 724, which results in the output of ALU 722 being provided as the input into latch 726. ALU 722 is set up to decrement by 1 the value received at its top terminal, resulting in its output decreasing by 1 each subsequent cycle of clock signal PWM_CLK, until the output of ALU 722 reaches 0. Once a 0 (zero) input is provided to latch 726, and is clocked to the output of latch 726, the output of comparator 728 is asserted, resulting in a 0 value being selected in multiplexer 724, provided that PWM_RDY is deasserted. The counter therefore stops counting at zero until the next sample is present. The output of the circuit shown in
Although the embodiments above have been described in considerable detail, numerous variations and modifications will become apparent to those skilled in the art once the above disclosure is fully appreciated. It is intended that the following claims be interpreted to embrace all such variations and modifications.
Claims
1. A method for attenuating non-linear noise in an open-loop amplifier, the method comprising:
- receiving a source signal;
- generating a first control input signal and a second control input signal from the source signal, wherein the first control input signal and the second control input signal are together representative of the source signal;
- generating a first control output signal by processing the first control input signal, and generating a second control output signal by processing the second control input signal;
- providing an effective timing offset between respective edge transitions of the first control output signal and the second control output signal by delaying in time said processing the first control input signal relative to said processing the second control input signal; and
- generating an amplified version of the source signal by: controlling a first set of switches with the first control output signal; and controlling a second set of switches with the second control output signal.
2. The method of claim 1, wherein said delaying comprises:
- generating a first ready signal and a second ready signal; and
- not processing the first control input signal until the first ready signal is asserted, and not processing the second control input signal until the second ready signal is asserted.
3. The method of claim 2, further comprising:
- when asserting the first ready signal, asserting the first ready signal for a single cycle of a clock signal used for processing the first control input signal; and
- when asserting the second ready signal, asserting the second ready signal for a single cycle of a clock signal used for processing the second control input signal.
4. The method of claim 2;
- wherein said generating the first ready signal comprises generating the first ready signal based on a frame counter clocked with a first clock signal also used for processing the first control input signal; and
- wherein said generating the second ready signal comprises generating the second ready signal based on a frame counter clocked with a second clock signal also used for processing the second control input signal.
5. The method of claim 4, wherein said generating the first ready signal comprises adjusting a first decode value derived from the frame counter to determine when to assert the first ready signal; and
- wherein said generating the second ready signal comprises adjusting a second decode value derived from the frame counter to determine when to assert the second ready signal.
6. The method of claim 1;
- wherein said processing the first control input signal comprises: counting down from a present value of the first control input signal; and asserting the first control output signal until said counting reaches zero; and
- wherein said processing the second control input signal comprises: counting down from a present value of the second control input signal; and asserting the second control output signal until said counting reaches zero.
7. An amplifier comprising:
- an input interface configured to receive a source signal;
- a first set of control switches and a second set of control switches configured to produce an amplified version of the source signal;
- a preprocessor configured to generate a first control input value and a second control input value based on the source signal, wherein the first control input value and the second control input value are together representative of a sample of the source signal;
- driver circuitry configured to: generate a first control output signal by processing the first control input value; generate a second control output signal by processing the second control input value; and create an amplified version of the source signal by controlling a first set of switches with the first control output signal, and controlling a second set of switches with the second control output signal; and
- delay circuitry configured to provide an effective timing offset between respective edge transitions of the first control output signal and the second control output signal by instructing the driver circuitry to delay in time the processing of the first control input value relative to the processing of the second control input value.
8. The amplifier of claim 7, wherein the delay circuit is configured to generate a first ready signal and a second ready signal, and provide the first ready signal and the second ready signal to the driver circuitry; and
- wherein the driver circuitry is configured to not process the first control input value until the first ready signal is asserted by the delay circuitry, and not process the second control input value until the second ready signal is asserted by the delay circuitry.
9. The amplifier of claim 8, wherein the driver circuitry is configured to process the first control input value and the second control input value according to a first clock signal;
- wherein the delay circuitry is configured to assert the first ready signal and the second ready signal for a single cycle of the first clock signal.
10. The amplifier of claim 8, wherein the driver circuitry is configured to process the first control input value and the second control input value according to a first clock signal;
- wherein the delay circuitry comprises: a frame counter clocked with the first clock signal; and a counter decode circuit configured to receive a count value from the frame counter and generate the first ready signal and the second ready signal according to the count value.
11. The amplifier of claim 10, wherein the counter decode circuit is configured to derive a decode value from the count value, and adjust the decode value to specify when to assert the first ready signal and the second ready signal.
12. The amplifier of claim 8, wherein the driver circuitry comprises two stages respectively configured to:
- receive the first input control value and the second input control value as respective input values;
- receive the first ready signal and the second ready signal as respective count enable signals; and
- generate the first control output signal and the second control output signal as respective outputs;
- wherein each of the two stages is configured to: begin counting down from the input control value to zero when the count enable signal is asserted; assert the output until zero is reached; and deassert the output once zero is reaches.
13. The amplifier of claim 7, wherein the driver circuitry comprises pulse-width modulation (PWM) circuitry, wherein the first control input value and the second control input value correspond to duty-cycle values, and the first control output signal and the second control output signal are PWM signals.
14. The amplifier of claim 7, further comprising the first set of switches and the second set of switches.
15. The amplifier of claim 14, wherein the first set of switches and the second set of switches comprise CMOS (Complementary Metal-Oxide Semiconductor) devices.
16. The amplifier of claim 7, wherein the source signal is an audio signal.
17. An amplifier comprising:
- a first processing element configured to generate a first control value and a second control value from a sampled value of a source signal;
- a second processing element configured to: generate a first control output signal by processing the first control value; generate a second control output signal by processing the second control value; and create an amplified version of the source signal by controlling a first set of switches with the first control output signal, and controlling a second set of switches with the second control output signal; and
- a third processing element configured to provide an effective timing offset between respective edge transitions of the first control output signal and the second control output signal by instructing the second processing element to delay in time the processing of the first control value relative to the processing of the second control value.
18. The amplifier of claim 17, wherein the third processing element is configured to generate a first ready signal and a second ready signal; and
- wherein the second processing element is configured to not process the first control value until the first ready signal is asserted, and not process the second control value until the second ready signal is asserted.
19. The amplifier of claim 18, wherein the second processing element is configured to process the first control value and the second control value according to a first clock signal;
- wherein the third processing element is configured to assert the first ready signal and the second ready signal for a single cycle of the first clock signal.
20. The amplifier of claim 18, wherein the second processing element is configured to process the first control value and the second control value according to a first clock signal;
- wherein the third processing element comprises: a frame counter clocked with the first clock signal; and a counter decode circuit configured to receive a count value from the frame counter and generate the first ready signal and the second ready signal according to the count value.
21. The amplifier of claim 20, wherein the counter decode circuit is configured to derive a decode value from the count value, and adjust the decode value to determine a first point in time at which to assert the first ready signal, and a second point in time at which to assert the second ready signal.
22. The amplifier of claim 18, wherein the second processing element is further configured to:
- begin a first count from the first control value to zero when the first ready signal is asserted;
- begin a second count from the second control value to zero when the second ready signal is asserted;
- assert the first control output signal until the first count reaches zero;
- assert the second control output signal until the second count reaches zero;
- deassert the first control output signal once the first count reaches zero; and
- deassert the second control output signal once the second count reaches zero.
23. The amplifier of claim 17, wherein the second processing element comprises:
- a first pulse-width modulation (PWM) circuit configured to receive the first control value which corresponds to a first duty-cycle value, and generate the first control output signal which is a PWM signal according to the first duty-cycle value; and
- a second PWM circuit configured to receive the second control value which corresponds to a second duty-cycle value, and generate the second control output signal which is a PWM signal according to the second duty-cycle value.
24. The amplifier of claim 17, further comprising the first set of switches and the second set of switches.
25. The amplifier of claim 24, wherein the first set of switches and the second set of switches comprise CMOS (Complementary Metal-Oxide Semiconductor) devices.
26. The amplifier of claim 17, wherein the source signal is an audio signal.
Type: Application
Filed: Sep 18, 2014
Publication Date: Mar 5, 2015
Inventors: Douglas E. Heineman (Lakeway, TX), Mark A. Alexander (Austin, TX)
Application Number: 14/490,459
International Classification: H03G 3/30 (20060101); H03G 1/04 (20060101);