Abstract:
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 respective edge transitions of the controlling signals provided to the respective sets of switches. The PWMs may count down to zero from the next PWM duty-cycle value when a new data sample is detected, beginning a new count for each new sample, with the PWM 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 decode value may be adjusted to determine when the PWM should initialize to the next data sample.

Description:
PRORITY CLAIM 
       [0001]    This application 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 INVENTION 
       [0002]    The present invention relates generally to signal processing, and more particularly to attenuating noise and cross-talk in an audio system. 
       DESCRIPTION OF THE RELATED ART 
       [0003]    Signal 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. 
         [0004]    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. 
         [0005]    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. 
         [0006]    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. 
         [0007]    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 INVENTION 
       [0008]    Various 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. 
         [0009]    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. 
         [0010]    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. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0011]    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: 
           [0012]      FIG. 1  illustrates various exemplary systems or devices which may use the techniques described herein; 
           [0013]      FIG. 2  is a block diagram of a portion of a system including a multi-channel audio subsystem that may be operated according to various embodiments; 
           [0014]      FIG. 3  is an exemplary block diagram of a multi-channel audio subsystem that may be operated according to various embodiments; 
           [0015]      FIG. 4  shows the partial block diagram of a multi-channel audio system highlighting the role of pulse-width modulation (PWM) in the audio system; 
           [0016]      FIG. 5  provides an exemplary waveform representation of the aligning of respective rising and falling edges of a pair of PWM signals from a respective pair of half-bridge circuits, at the zero signal source level; 
           [0017]      FIG. 6  shows a more detailed partial block diagram of one prior art implementation of the audio signal processor, PWM controller and PWM circuits of  FIG. 4 ; 
           [0018]      FIG. 7  shows a waveform diagram illustrating the PWM signals PWM_OUTP and PWM_OUTN, and the audio signal near the zero crossing, for the implementation of  FIG. 6 ; 
           [0019]      FIG. 8  shows one example of a simplified typical prior art digital PWM equivalent circuit; 
           [0020]      FIG. 9  shows one possible digital implementation of the simplified typical prior art digital PWM equivalent circuit of  FIG. 8 ; 
           [0021]      FIG. 10  shows the partial block diagram of an audio subsystem, in which a high frequency counter and decode circuit is used to derive the clock signals for a Digital Audio Processor and PWM pre-processor circuits; 
           [0022]      FIG. 11  shows one embodiment of a digital PWM circuit implemented with a decrementor; 
           [0023]      FIG. 12  shows a timing diagram of the input and output signals corresponding to the digital PWM circuit of  FIG. 11 ; 
           [0024]      FIG. 13  shows a waveform diagram illustrating a generic channel PWM output at 0° offset for an audio subsystem built according to the embodiments of  FIG. 10  and  FIG. 11 ; and 
           [0025]      FIG. 14  shows a waveform diagram illustrating the left channel PWM outputs at 90° offset relative to the right channel PWM outputs for a multi-channel audio subsystem built according to the embodiments of  FIG. 10  and  FIG. 11 . 
       
    
    
       [0026]    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 EMBODIMENTS 
       [0027]      FIG. 1  illustrates exemplary systems, which may utilize the techniques described herein. More specifically,  FIG. 1  illustrates exemplary systems, which may utilize an audio subsystem, (which may include an amplifier such as a Class D amplifier), featuring various improvements. As shown, embodiments of the techniques disclosed herein may be used in any one ore more of various systems which involve the amplification of signals. For example, embodiments of the invention may be used in various systems that operate to amplify audio signals for provision to a loudspeaker for audible presentation. As shown, the exemplary systems may include a display device  102 ; an audio system  104 , such as a stereo amplified docking station for a portable music player, CD player, etc.; or a telephone  106  and  108 , such as a smart phone, e.g., an iPHONE™ or other similar type of smart phone. It is noted that the various terms or designations for circuits as they appear herein, such as “driver”, “delay”, etc. are merely names or identifiers used to distinguish among the different circuits, and these terms are not intended to connote any specific meaning. 
         [0028]      FIG. 2  illustrates an Audio subsystem  120  which may be present in the systems of  FIG. 1 . In one set of embodiments, audio subsystem  120  may be an amplifier subsystem, which may more specifically be a class D amplifier subsystem. In one or more of the devices of  FIG. 1 , at least one Audio subsystem  120  may be present in the audio output section of the device, and more specifically in the amplifier portion of the audio section of the device. As shown in  FIG. 2 , a multiple channel (e.g. stereo) audio input signal  118  may be received at an input to the Audio subsystem  120 . The Audio subsystem  120  receives the multiple channel audio input signal(s)  118  and operates to amplify the received audio input signal(s) to produce amplified multi-channels of audio output signals  122  and  123 . The amplified audio output signals  122  and  123  may then be provided to loudspeakers  124  and  125 , respectively, for audible presentation. 
         [0029]      FIG. 3  is an exemplary block diagram of an audio subsystem (which, in some embodiments, may be one implementation of a Class D amplifier), according to one embodiment. As shown in  FIG. 3 , the audio subsystem comprises an input that receives stereophonic digital audio data commonly referred to as either left and right channels or A and B channels, which in this embodiment is an N-bit pulse code modulated (PCM) input signal. In one embodiment, the N bits of PCM digital audio data are received over an industry standard digital serial interface, such as the Integrated Interchip Sound bus, also referred to as the I 2 S bus, or they may also be received directly from a parallel port type interface. In an embodiment where the digital audio data is received from a Compact Disc (CD), the received digital audio data may comprise 16 bits of data. In this embodiment, the 16 bits are represented within the most significant bits of a data field that is 24 bits wide (that is, in this case N=24), along with 8 zeroes that are “padded” (or inserted) into the least significant bits. 
         [0030]    The 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 . 
         [0031]    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 PWM 0  and PWM 1 . 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. 
         [0032]    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 PWM 0  and PWM 1  (for the left channel) and PWM 2  and PWM 3  (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 PWM 0  and PWM 1 , and PWM 2  and PWM 3  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. 
         [0033]    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 . 
         [0034]      FIG. 4  shows the partial block diagram of an audio system highlighting the role of the PWM in generating the output. The number of bits for audio signal processor  202  and PWM controller  212  are shown for illustrative purposes only, and alternate embodiments may include different numbers of bits. As shown in the audio subsystem in  FIG. 4 , a class-D type amplifier (one possible implementation of which is also shown in  FIG. 3 ) is configured as a class-BD amplifier, where a stereo audio signal is pulse-width modified into two pairs of signals, with a positive representation PWM_OUTP and a negative representation PWM_OUTN in each pair, which are used to drive two respective half-bridge FET circuits  244  and  246 , and  245  and  247 . Each pair of half-bridge circuits, half-bridge positive  244  and half-bridge negative  246 , and half-bridge positive  245  and half-bridge negative  247  may be connected to form respective effective full-bridge circuits to the respective loads (in this case speakers  124  and  125 , respectively) where the half-bridge circuits use a set of switches in a totem pole (make-and-break) configuration. 
         [0035]      FIG. 5  provides an exemplary waveform representation of the respective rising and falling edges of the PWM signals from a half-bridge A and a half-bridge B, as the respective edges align with respect to each other at the zero signal source level. For example, signal A might represent the output of half-bridge  244 , and signal B might represent the output of half-bridge  246 . The potential adverse effects of this edge alignment are discussed in further detail below. 
         [0036]    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  FIG. 4  are turned on at a near simultaneous event which may occur when stereophonic channels are both near zero input levels. The audio signal processor  202 , PWM controller  212 , and one pair of PWM circuits from  FIG. 4  may also be represented as shown in the system block diagram of  FIG. 6 , where the audio input signal is detected at I 2 S interface  702 , goes through digital audio processor and interpolator  704 , and processed in PWM preprocessor  706  prior to being converted into pulse-width modulated signals PWM_OUTP and PWM_OUTN through PWM drivers  710  and  712 , respectively. 
         [0037]    In the embodiment shown in  FIG. 6 , PWM preprocessor  706  includes a delta-sigma modulator  703  and noise shaper  705  used to provide respective digital signals based on the original audio signal to PWM drivers  710  and  712 .  FIG. 7  shows a waveform diagram illustrating the PWM signals PWM_OUTP and PWM_OUTN, and the original audio input signal near the zero crossing. As shown in  FIG. 7  (and similar to  FIG. 5 ), the audio input signal of a bipolar representation (positive and negative amplitude) nears a point where the audio signal crosses zero. At this cross-section, the edges of the PWM signals PWM_OUTP and PWM_OUTN are near coincident, as also shown in  FIG. 7  with rising edges  802  and falling edges  804  of the PWM_OUTP and PWM_OUTN signals, respectively. This close proximity of rising edges may cause corruption on the lagging edge within the power stage. This corruption occurs as the power stage exhibits the greatest amount of noise when the HS FET is turned on. If the lagging PWM signal is presently provided to the gate drive circuitry, its level may be corrupted by the noise from turning on the HS FET of the leading PWM signal. 
       Attenuating Cross-Talk in an Audio System by Offsetting Outputs In Phase 
       [0038]    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. 
         [0039]    One example of a simplified typical prior art digital PWM equivalent circuit is shown in  FIG. 8 . The PWM generator shown in  FIG. 8  generates a pulse train whose width is proportional to the input signal PWM_IN. A sawtooth waveform, which may be generated using a counter, is provided to one set of inputs of a comparator  402 . In the example of  FIG. 8 , the inputs are 8-bit signals. When the value of the input PWM_IN is less than the value of the sawtooth wave, the output PWM_OUT is low (i.e. there is no pulse output). When the value of the input PWM_IN is greater than the value of the sawtooth wave, the output PWM_OUT high (i.e. a pulse is output by the output staying high until the value of the input PWM_IN is again less than the value of the sawtooth wave). The PWM circuit (driver) shown in  FIG. 8  may be one implementation of PWM drivers  232 ,  233 ,  234 , and  235  shown in  FIG. 3 , to generate any of the output signals PWM_OUTN and PWM_OUTP. 
         [0040]      FIG. 9  shows one possible digital implementation of the simplified typical prior art digital PWM equivalent circuit of  FIG. 8 . Again, the circuit shown in  FIG. 9  may be one implementation for PWM drivers  232 ,  233 ,  234 , and  235 , one instance being used for generating PWM_OUTN, and the other instance used for generating PWM_OUTP. In this implementation, the data input into a latch  524  is the output of arithmetic logic unit (ALU)  522 , which increments the present value output by latch  524 . Latch  524  is clocked with a PMW_CLK clock signal to thereby generate an input representative of a sawtooth waveform, which has a value of zero every 256 th  cycle of PWM_CLK. Comparator  526  compares the present value of the sawtooth waveform with the present value of the PWM_IN signal to generate the PWM output waveform PWM_OUT. The PWM output waveform (signal) PWM_OUT will be asserted (i.e. have a ‘high’ value) when the value of PWM_IN is greater than or equal to the value of the output of latch  524 . Conversely, PWM_OUT will be deasserted (i.e. have a ‘low’ value) when the value of PWM_IN is lower than the value of the output of latch  504 . 
         [0041]    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.  FIG. 10  shows the partial block diagram of a stereophonic audio subsystem  600 , which receives a serial data stream SDAT at an I 2 S interface and generates corresponding respective PWM outputs per stereo channels. With reference to the audio subsystem shown in  FIG. 3 , functional blocks  602 ,  604 - 610 , and  615 - 621  in audio subsystem  600  may be considered parts of audio signal processor  202  for both the right channel and left channel, respectively, and PWM blocks  612  and  623  may be considered part of digital PWM block  204 , again for both the right channel and left channel, respectively. The remaining components may be considered part of both audio signal processor  202  and digital PWM block  204 , as they operate on the system level to delay the processing of the PWM_OUTP signals in time relative to PWM_OUTN signals, and vice-versa. Thus, audio subsystem  600  may be implemented in audio signal processor  202  and digital PWM block  204  for each output signal, one instance each for PWM_OUTP and PWM_OUTN for each channel, as shown. 
         [0042]    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_I 2 S 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. 
         [0043]    Any of the generator sub-blocks PWM 1  and PWM 2  within PWM generator blocks  612  and  623  in audio subsystem  600  of  FIG. 10  may be implemented as shown in  FIG. 11 , which shows one embodiment of a digital PWM circuit  720  implemented with a decrementor constructed using an ALU  722 , multiplexer  724 , and latch  726 . The decrementor starts to count down from the value of PWM_IN when a new data sample (audio input) is detected. PWM_RDY is the signal indicating a new sample has been detected, and is provided as one of the select signals to multiplexer  724 . The other select signal is the output of comparator  728 , which is asserted when the output of latch  726  is (reaches) zero (0), and deasserted otherwise, i.e. when the output of latch  726  is nonzero. The combination of PWM_RDY with the output of comparator  728  is used to select the value provided as the input to latch  726 . When PWM_RDY is deasserted—indicating that no new data sample has been detected, and the output of comparator  728  is asserted—indicating that the output latch  726  is zero, a default value of zero (0) is selected in multiplexer  724  to be provided to latch  726 . Thus, the output PWM_OUT remains zero at least until a new data sample is detected, once the output of latch  726  reaches zero. 
         [0044]    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  FIG. 11  is therefore a pulse that is low when the counter is zero and high when the counter is non-zero, as a result of the output of comparator  728  being inverted. 
         [0045]      FIG. 12  shows a timing diagram of the input signals and output signals of circuit  720  of  FIG. 11  to highlight operation of circuit  720 . The signal “PWM_Counter” shown in  FIG. 12  corresponds to the output of latch  726 . As seen in  FIG. 12 , when the PWM_RDY signal is deasserted, and the PWM_Counter signal, output of latch  726 , is also equal to zero (resulting in the output of comparator  728  being asserted), the PWM output is also zero. When a new data sample is detected, the PWM_RDY is asserted for one cycle of the clock signal PWM_CLK, resulting in the output of latch  726  being set to the value PWM_IN on the next clock edge. Subsequently, the count output is decremented by 1 each clock cycle of PWM_CLK until the count value reaches 0. During this time period, the PWM output is asserted, producing a pulse width that corresponds to the value of PWM_IN, deasserted once the count reaches 0, and remaining at the value of 0 until a new sample is detected and the PWM_RDY signal is once again asserted. 
         [0046]      FIG. 13  shows a waveform diagram illustrating the PWM output at zero degree (0°) offset synchronous to an audio frame within a PWM PERIOD in a system such as audio subsystem  600  of  FIG. 10 , using the implementation of PWM driver  720  shown in  FIG. 11  to generate the PWM output signals. When considering the audio subsystem  600  shown in  FIG. 10 , the signal diagram in  FIG. 13  may correspond to each output from PWM blocks  612  and  623 , assuming that each PWM block had different PWM_IN signals to reconstruct audio signals for the right and left stereo channels, driving differential outputs, PWM_OUTP and PWM_OUTN. 
         [0047]      FIG. 14  shows a waveform diagram illustrating an example where the left channel differential PWM outputs (showing only the PWM_OUTP signal) have been delayed by 90 degree (90°) offset with respect to the right channel differential PWM outputs (again, showing only the PWM_OUTP signal) within the PWM_PERIOD for the same system setup as the waveforms in  FIG. 13 . Delaying the data ready signal PWM_RDY to the PWM driver (e.g. PWM driver  612 ) by decoding the counter 90-degrees offset in time may generate the signals shown in  FIG. 14 , where the signals explicitly labeled “new delay” denote the new signals relative to the right channel PWM output which is not delayed and set to the default 0° offset. The delayed PWM period is indicated as “PWM_PERIOD_d”. 
         [0048]    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.