PULSE WIDTH MODULATOR WITH REDUCED PULSE WIDTH
20230006679 · 2023-01-05
Assignee
Inventors
Cpc classification
H03K5/135
ELECTRICITY
H03L7/085
ELECTRICITY
International classification
Abstract
An integrated circuit includes a pulse width modulator. The pulse width modulator includes a multiplexer that receives a plurality of data delay signals. Each of the data delay signals is based on a data signal and a respective clock phase signal. The multiplexer includes a first multiplexer stage and a second multiplexer stage. The first multiplexer stage receives all of the data delay signals and has a relatively large delay. The second multiplexer stage receives to output signals from the first multiplexer stage and has a relatively small delay. The second multiplexer stage outputs a pulse width modulation signal that can have a pulse width corresponding to the offset between two adjacent clock phase signals.
Claims
1. A pulse width modulator, comprising: a phase locked loop configured to receive a clock signal and to output N phase signals; a data delay generator configured to receive the phase signals and a data input signal and to output N data delay signals each corresponding to the data input signal and delayed in accordance with a respective one of the phase signals; and a multiplexer configured to receive the N data delay signals, a first selection signal, and a second selection signal and to output a data pulse based on the first and second selection signals.
2. The pulse width modulator of claim 1, wherein the multiplexer includes: a first multiplexer stage configured to receive a first half of the data delay signals and to output a first midpoint signal based on the first selection signal; a second multiplexer stage configured to receive a second half of the data delay signals and to output a second midpoint signal based on the second selection signal.
3. The pulse width modulator of claim 2, wherein the multiplexer includes a third multiplexer stage configured to receive the first midpoint signal and the second midpoint signal and to output a data output pulse based on the first and second midpoint signals and the third selection signal.
4. The pulse width modulator of claim 3, wherein the clock signal has a period T, wherein the third multiplexer stage is configured to output the data output pulse with a width equal to T/N.
5. The pulse width modulator of claim 4, wherein the first and second multiplexer stages have identical internal delays.
6. The pulse width modulator of claim 5, wherein the third multiplexer stage has an internal delay less than the internal delay of the first and second multiplexer stages.
7. The pulse width modulator of claim 5, wherein the third multiplexer stage has an internal delay less than T/N.
8. The pulse width modulator of claim 7, wherein the first multiplexer stage receives the first selection signal locked to one of the phase signals having a delay equal to N*3/4 unit steps.
9. The pulse width modulator of claim 8, wherein the second multiplexer stage receives the second selection signal locked to one of the phase signals having a delay equal to N/4 unit steps.
10. The pulse width modulator of claim 9, wherein the third multiplexer stage receives the third selection signal lock to one of the phase signals having a delay equal to N−1 unit steps.
11. A method, comprising: receiving a clock signal with a phase locked loop; generating, with the phase locked loop, N phase signals each having different phases from each other and a same period T as the clock signal; receiving, with a data delay generator, a data input signal and the phase signals; generating, with the data delay generator, N data delay signals each corresponding to the data input signal and delayed in accordance with a respective one of the phase signals; receiving, with a multiplexer, the N data delay signals; receiving, with the multiplexer, a first selection signal, a second selection signal, and a third selection signal; and outputting, from the multiplexer, a data output pulse having a width based on the first, second, and third selection signals.
12. The method of claim 11, comprising: receiving a first half of the data delay signals and the first selection signal with a first multiplexer stage of the multiplexer; receiving a second half of the data delay signals and the second selection signal with a second multiplexer stage of the multiplexer, the second multiplexer stage having a same internal delay as the first multiplexer stage; receiving the third selection signal with a third multiplexer stage of the multiplexer; and generating, with the third multiplexer stage, a data output pulse having a width based on an output of the first multiplexer stage and an output of the second multiplexer stage and the third selection signal.
13. The method of claim 12, further comprising generating the data output pulse with a rising edge based on a rising or falling edge of the output of the first multiplexer stage or on a rising or falling edge of the output of the second multiplexer stage.
14. The method of claim 12, further comprising generating the data output pulse with a falling edge based on a rising or falling edge of the output of the first multiplexer stage or on a rising or falling edge of the output of the second multiplexer stage.
15. The method of claim 12, wherein a rising edge of the data output pulse is delayed from an edge of the output of one of the first multiplexer stage or the second multiplexer stage by an internal delay of the third multiplexer stage, wherein a falling edge of the data output pulse is delayed from an edge of the output of the other of the first multiplexer stage or the second multiplexer stage by the internal delay of the third multiplexer stage.
16. The method of claim 15, wherein the internal delay of the third multiplexer stage is less than T/N, where T is a period of the clock signal.
17. The method of claim 12, further comprising: controlling the first multiplexer stage with a first selection signal latched to one of the phase signals received by the second multiplexer; and controlling the second multiplexer stage with a second selected signal latched to one of the phase signals received by the first multiplexer, wherein the first and second selection signals are 180 degrees out of phase with each other.
18. A pulse width modulator, comprising: a phase locked loop configured to receive a clock signal having a period T and to generate N phase signals each having the period T of the clock signal and each offset in time from the clock signal by a respective integer number of unit steps, wherein a unit step is a period of time equal to T/N; a data delay generator configured to receive a data input signal and to generate, for each phase signal, a respective data delay signal corresponding to the data input signal delayed in accordance with the phase signal; a multiplexer configured to receive the data delay signals and a plurality of selection signals, wherein the multiplexer is configured output a data pulse having a rising edge triggered by a first selected data delay signal and a falling edge triggered by a second data delay signal based on the plurality of selection signals.
19. The pulse width modulator of claim 18, wherein the multiplexer includes: a first multiplexer stage configured to receive a first group of N/2 of the data delay signals and a first selection signal of the plurality of selection signals; a second multiplexer stage configured to receive a second selection signal of the plurality of selection signals a second group of N/2 of the data delay signals distinct from the first group; and a third multiplexer stage configured to receive, as inputs, an output of the first multiplexer and an output of the second multiplexer, and to provide the data pulse.
20. The pulse width modulator of claim 19, wherein the output of the first multiplexer stage is the first selected data delay signal, wherein the output of the second multiplexer is the second selected data delay signal.
Description
BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS
[0007] Reference will now be made by way of example only to the accompanying drawings. In the drawings, identical reference numbers identify similar elements or acts. In some drawings, however, different reference numbers may be used to indicate the same or similar elements. The sizes and relative positions of elements in the drawings are not necessarily drawn to scale. For example, the shapes of various elements and angles are not necessarily drawn to scale, and some of these elements may be enlarged and positioned to improve drawing legibility.
[0008]
[0009]
[0010]
[0011]
[0012]
[0013]
[0014]
DETAILED DESCRIPTION
[0015] In the following description, certain specific details are set forth in order to provide a thorough understanding of various disclosed embodiments. However, one skilled in the relevant art will recognize that embodiments may be practiced without one or more of these specific details, or with other methods, components, materials, etc.
[0016] Unless the context requires otherwise, throughout the specification and claims which follow, the word “comprise” and variations thereof, such as, “comprises” and “comprising” are to be construed in an open, inclusive sense, that is, as “including, but not limited to.” Further, the terms “first,” “second,” and similar indicators of sequence are to be construed as interchangeable unless the context clearly dictates otherwise.
[0017] Reference throughout this specification to “one embodiment” or “an embodiment” means that a particular feature, structure or characteristic described in connection with the embodiment is included in at least one embodiment. Thus, the appearances of the phrases “in one embodiment” or “in an embodiment” in various places throughout this specification are not necessarily all referring to the same embodiment. Furthermore, the particular features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.
[0018] As used in this specification and the appended claims, the singular forms “a,” “an,” and “the” include plural referents unless the content clearly dictates otherwise. It should also be noted that the term “or” is generally employed in its broadest sense, that is, as meaning “and/or” unless the content clearly dictates otherwise.
[0019]
[0020] The pulse width modulator 100 includes a phase locked loop 102. The phase locked loop 102 receives a clock signal CLK. The clock signal CLK has a frequency f and period T. The clock signal CLK can include a square wave form having rising and falling edges.
[0021] The pulse width modulator 100 receives the clock signal CLK and generates N phase signals P.sub.0-P.sub.N-1, where N is an integer. Each of the phase signals has the same form, frequency, and period of the clock signal CLK. Accordingly, the phase signals can be considered clock signals in form and function. Each of the phase signals is delayed from the clock signal by an integer number of unit steps. A single unit step has a value of T/N. The phase signal P.sub.0 is delayed by 0 unit steps and thus has no delay from the clock signal CLK. The phase signal P.sub.1 is delayed from the clock signal by a single unit step. The phase signal P.sub.2 is delayed from the clock signal by two unit steps. The final phase signal, P.sub.N-1 is delayed from the clock signal by N−1 unit steps. As an illustrative example, the phase signal P.sub.1 is delayed by a single unit step. This means that the rising edge of the phase signal P.sub.1 is delayed from the rising edge of the clock signal CLK by a single unit step, or by a length of time equal to T/N.
[0022] The pulse width modulator 100 includes a data delay generator 104. The data delay generator 104 is coupled to the phase locked loop 102. The data delay generator 104 receives each of the phase signals P.sub.0-P.sub.N-1 from the phase locked loop 102. The data delay generator 104 also receives a data input signal. The data input signal indicates that data has been received and that the pulse width modulator 100 should generate an output pulse corresponding to the value of the data signal that has been received and the value of the phase select signal PS.sub.<k:0>, as will be described in more detail below. In one embodiment, DATA IN may simply be an indicator that data has been received. The pulse width modulator may receive the actual data value separately.
[0023] The data delay generator 104 generates N data delay signals D.sub.0-D.sub.N-1. Each data delay signal D.sub.0-D.sub.N-1 is associated with a respective phase signal. The data delay signal D.sub.0 is associated with the phase signal P.sub.0. The data delay signal P.sub.1 is associated with the phase signal P.sub.1. The data delay signal D.sub.N-1 is associated with the phase signal P.sub.N-1.
[0024] The data delay generator 104 outputs the data delay signals with a timing based on the clock signal CLK, the phase signals, and the data input signal. In particular, when the data delay generator 104 receives the data input signal which is in sync with the rising edge of the clock signal, the data delay generator begins outputting the data delay signals upon the next rising edge of the clock signal CLK. Each data delay signal has a rising edge that is delayed from the rising edge of the clock signal by the value of the delay of the phase signal with which the data delay signal is associated. For example, when a data input signal is received, at the next rising edge of the clock signal the data delay generator will output the data delay signal D.sub.0. The rising edge of the data delay signal D.sub.0 coincides with the rising edge of the clock signal CLK because the phase signal P.sub.0 with which the data delay signal D.sub.0 is associated is in sync with the clock signal CLK. The rising edge of the data delay signal D.sub.1 is delayed from the rising edge of the clock signal by a single unit step because the phase signal P.sub.1 associated with the data delay signal D.sub.1 is delayed from the clock signal by a single unit step. The rising edge of the data delay signal D.sub.N-1 is delayed from the rising edge of the clock signal by N−1 unit steps because the associated phase signal P.sub.N-1 is delayed from the clock signal by N−1 unit steps.
[0025] The pulse width modulator 100 includes a multiplexer 106. The multiplexer 106 is coupled to the data delay generator 104. In particular, the multiplexer 106 receives each of the data delay signals D.sub.0-D.sub.N-1 from the data delay generator 104. The multiplexer 106 outputs a data output pulse having a width corresponding to the value of the data associated with the data input signal.
[0026] The multiplexer 106 receives a phase select signal PS.sub.<k:0>, or various selection signals generated from the phase select signal by selection logic not shown in
[0027] In one embodiment, the rising and falling edges of the data input signal are delayed by the amount represented by the decimal equivalent of the phase select signal PS.sub.<k:0> at that edge. Therefore, by varying the delays at the rising and falling edges of the data input, the output pulse width can be modulated.
[0028] Traditional multiplexers may not be able to output a data output pulse having a width corresponding to a single unit step. This is because the internal delay associated with a multiplexer may be larger than a single unit step. In traditional multiplexers, the result is that the minimum width of the output pulse is equal to the total delay of the multiplexer, which is longer than a single unit step.
[0029] The pulse width modulator 100 overcomes the drawbacks of traditional pulse width modulators by providing a multiplexer 106 that has identical delays for all data paths and that has a final stage that has a delay that is less than a single unit step. The multiplexer 106 of the pulse width modulator 100 includes high delay stages 108 and a low delay stage 110. The high delay stages 108 are in parallel with each other and collectively receive all of the data delay signals D.sub.0-D.sub.N-1 from the data delay generator 104.
[0030] In one example, the high delay stages 108 include a first high delay stage and a second high delay stage. The first high delay stage receives half of the data delay signals. The second high delay stage receives the other half of the data delay signals. The first and second high delay stages are in parallel with each other and are identical to each other. This means that the first and second high delay stages of the high delay stages 108 have identical delays. The first high delay stage outputs a first midpoint signal. The second high delay stage outputs a second midpoint signal. The first and second midpoint signals correspond to the respective data delay signal being output by the high delay stages.
[0031] The low delay stage 110 receives first midpoint signal and the second midpoint signal. In one example, the first midpoint signal controls the rising edge of the data output signal and the second midpoint signal controls the falling edge of the data output signal. However, either of the midpoint signals can control either edge of the data output signal, depending on the particular situation. The low delay stage has a delay that is smaller than a single unit step. The low delay stage 110 outputs a data pulse that has a delay smaller than a single unit step and is thus able to output the data pulses with a width of a single unit step, if the data value calls for such a small pulse.
[0032]
[0033] The first high delay stage 108a receives a selection signal S.sub.1<k-1:0>. The selection signal S.sub.1<k-1:0> determines the data delay signal that will be output from the high delay multiplexer 108a. In the example of
[0034] The second high delay stage 108b receives a selection signal S.sub.2<k-1:0>. The selection signal S.sub.2<k-1:0> determines the data delay signal that will be output from the high delay stage 108b. In the example of
[0035] The low delay stage 110 receives the midpoint signals from the first and second high delay stages 108a, 108b. The low delay stage 110 outputs a data output pulse having a width that represents a data value associated with the data input signal. The low delay stage 110 receives a selection signal S.sub.3′. The selection signal S.sub.3′ is the generated signal S.sub.3 with the added delay of the multiplexer. The selection signal S.sub.3 is latched to the phase signal P.sub.N-1. The rising and falling edges of the data can be triggered by either the first or second midpoint signal based on the polarity of S.sub.3′.
[0036]
[0037] The pulse width modulator 100 includes a data delay generator 104. The data delay generator 104 generates 32 data delay signals D.sub.0-D.sub.31. Each data delay signal D.sub.0-D.sub.31 is associated with a respective phase signal, substantially as described in relation to
[0038] The data delay generator 104 outputs the data delay signals with a timing based on the clock signal CLK, the phase signals, and the data input signal. In particular, when the data delay generator 104 receives the data input signal, the data delay generator begins outputting the data delay signals upon the next rising edge of the clock signal CLK. Each data delay signal has a rising edge that is delayed from the rising edge of the clock signal by the value of the delay of the phase signal with which the data delay signal is associated. For example, when a data input signal is received, at the next rising edge of the clock signal, the data delay generator will output the data delay signal D.sub.0. The rising edge of the data delay signal D.sub.0 coincides with the rising edge of the clock signal CLK because the phase signal P.sub.0 with which the data delay signal D.sub.0 is associated is in sync with the clock signal CLK. The rising edge of the data delay signal D.sub.1 is delayed from the rising edge of the clock signal by a single unit step because the phase signal P.sub.1 associated with the data delay signal D.sub.1 is delayed from the clock signal by a single unit step. The rising edge of the data delay signal D.sub.31 is delayed from the rising edge of the clock signal by 31 unit steps because the associated phase signal P.sub.31 is delayed from the clock signal by 31 unit steps.
[0039] The data delay circuit 104 includes a plurality of flip-flops. A first flip-flop 118 receives the data input signal on a data input terminal. The flip-flop 118 receives the phase signal P.sub.16 on a clock input terminal. The flip-flop 120, the flip-flop 121, the flip-flop 122, and the flip-flop 123 each receive on their data input terminals, the output of the flip-flop 118. The flip-flop 120 receives the phase signal P.sub.0 as a clock signal and generates the corresponding data delay signal D.sub.0. The flip-flop 121 receives the phase signal P.sub.1 as a clock signal and generates the corresponding data delay signal D.sub.1. The flip-flop 122 receives the phase signal P.sub.2 as a clock signal and outputs the corresponding data delay signal D.sub.2. The flip-flop 123 receives the phase signal P3 as a clock signal and outputs the corresponding data delay signal D3.
[0040] The flip-flops 124, 125, 126, and 127 receive on the data input terminals the outputs of the flip-flops 120, 121, 122, and 123 respectively. The flip-flops 124, 125, 126, and 127 receive as clock signals, phase signals P.sub.4-7, respectively, and output corresponding data delay signals D.sub.4-7, respectively. The flip-flops 138, 139, 140, and 141 receive as clock signals phase signals P.sub.28-P.sub.31, respectively, and output data delay signals D.sub.28-D.sub.31, respectively.
[0041] The flip-flops associated with data delay signals D.sub.8-D.sub.27 are not shown in
[0042]
[0043] The first high delay stage 108a receives a selection signal S.sub.1<3:0>. The selection signal S.sub.1<3:0> is a four bit input signal S.sub.1<3:0>. The selection signal S.sub.1<3:0> determines the data delay signal that will be output from the high delay multiplexer 108a. In the example of
[0044] The second high delay stage 108b receives a selection signal S.sub.2<3:0>. The selection signal S.sub.2<3:0> is a four bit input signal S.sub.2<3:0>. The selection signal S.sub.2<3:0> determines the data delay signal that will be output from the high delay stage 108b. In the example of
[0045] The first high delay stage 108a outputs a midpoint signal M.sub.U. M.sub.U corresponds to the data delay signal selected by S.sub.1<3:0>. The second high delay stage 108b outputs a midpoint signal M.sub.L. M.sub.L corresponds to the data delay signal selected by S.sub.2<3:0>.
[0046] The low delay stage 110 receives the midpoint signals M.sub.U, M.sub.L from the first and second high delay stages 108a, 108b. The low delay stage 110 outputs a data output pulse having a width that represents a data value associated with the data input signal. The low delay stage 110 receives a selection signal S.sub.3′. The selection signal S.sub.3′ is latched to the phase signal P.sub.31. The rising edge of the data output pulse may be triggered by the edge of either the midpoint signal M.sub.U output by the first high delay stage 108a or the edge of the midpoint signal M.sub.L. The falling edge of the data output pulse may be triggered by the edge of either the midpoint signal M.sub.L output by the second high delay stage 108b or the edge of the midpoint signal M.sub.U output by the first high delay stage 108a.
[0047]
[0048] A second flip-flop 154 receives the selection signal S.sub.1<3:0> on a data input terminal and the phase signal P.sub.8 on the clock input terminal and outputs the selection signal S.sub.2<3:0>. While a signal flip flop 154 is illustrated in
[0049] A third flip-flop 156 receives the phase select signal PS.sub.<4> on the data input terminal and the phase signal P.sub.31 on the clock input terminal and outputs the selection signal S.sub.3. Accordingly, the third flip-flop samples PS.sub.<4> at the rising edge of P31 and outputs the selection signal S.sub.3. The selection signal S.sub.3′ is generated from S.sub.3 by adding a delay value to S.sub.3, as will be explained in more detail below.
[0050] The phase select signals PS.sub.<3:0> and PS.sub.<4> indicate the data delay signals to be utilized in generating the data output pulse. The selection signals S.sub.1<3:0>, S.sub.2<3:0>, and S.sub.3 are provided to the multiplexer 106.
[0051]
[0052]
[0053] The phase select signal PS.sub.<4:0>initially has a binary value equivalent to 31. This means that the rising edge of the data output signal should be delayed 31 unit steps from the data input signal, plus a clock cycle. The selection logic 150 unpacks the phase select signal PS.sub.<4:0> and generates the selection signal S.sub.1<3:0>. The phase select signal PS.sub.<4:0> with a binary value equivalent to the decimal value 31 results in a selection signal S.sub.1<3:0> with a binary value equivalent to the decimal value 15. The selection signal S.sub.1<3:0> assumes the value 15 upon the rising edge of the phase signal P.sub.24. At the falling edge of the data input signal, the phase select signal PS.sub.<4:0> takes on the binary value equivalent to 0. After S.sub.1<3:0> takes on the value 15, the selection signal S.sub.2<3:0> is generated by sampling S.sub.1<3:0> at the rising edge of the phase signal P.sub.8. Accordingly, S.sub.2<3:0> takes on the binary value equivalent to 15 at the rising edge of P.sub.8.
[0054] The data delay signal D.sub.31 goes high 31 unit steps plus one clock cycle after the data input signal DATA IN initially goes high. The selection signal S2.sub.<3:0> with a value of 15 causes the second high delay multiplexer stage 108b to select the data delay signal D.sub.31 as output. The rising edge of D.sub.31 causes M.sub.U to transition from low to high after a delay of t1, where t1 the relatively high internal delay of the second high delay multiplexer stage 108b.
[0055] S.sub.1<3:0> transitions from 15 to 0 because the S.sub.1<3:0> selection logic (the flip flops 152) sample PS.sub.<3:0> at the next rising edge of P.sub.24. With S.sub.1<3:0> at the value 0, the first high delay multiplexer stage 108a selects the data delay signal D.sub.0 to be supplied at the output. The value of D.sub.0 is high at this transition point, so the value of M.sub.L is initially shown as high. The falling edge of D.sub.0 causes M.sub.L to transition from high to low after a delay of t1, where t1 is the relatively high internal delay of the first high delay stage 108a. The first and second high delay multiplexer stages 108a and 108b have identical internal delays of t1.
[0056] The selection signal S.sub.3′ controls the low delay multiplexer stage 108c. The selection signal S.sub.3′ is based on the selection signal S3. The selection signal S3 is generated by sampling PS.sub.<4:0> at the rising edge of P.sub.31. This causes S3 to go high at the first rising edge of P.sub.31. S3′ is equivalent to S3 plus the entire delay of the multiplexer 102. The delay of the multiplexer 102 is equivalent to t1+t2. Accordingly, S3′ goes high at the rising edge of P31 after a delay of t1+t2. One purpose of this delay is to ensure that the falling edge of S3′ will occur between the rising edge of M.sub.U and the falling edge of M.sub.L. The falling edge of S3′ occurs between the rising edge of M.sub.U and the falling edge of M.sub.L.
[0057] While S3′, the low delay multiplexer stage selects the output M.sub.U of the low delay multiplexer stage 108b. The rising edge of M.sub.U causes DATA OUT to go high after a delay of t2, where t2 is the internal delay of the low delay multiplexer stage 108c. Shortly after the rising edge of M.sub.U, S3′ goes low, causing the low delay multiplexer stage 108c to select the output M.sub.L of the high delay multiplexer stage 108a. M.sub.L is initially high so DATA OUT remains high until the falling edge of M.sub.L. The falling edge of M.sub.L causes DATA OUT to go low after the delay of t2. The width of the output data pulse is a single unit step. This is possible, in part, because t2 is smaller than a single unit step.
[0058] As can be seen in
[0059] The multiplexer 102 is capable of outputting data output pulses with widths corresponding to any number of unit steps between 1 and 32. The values of the phase select signal PS.sub.<4:0> determine the width of the output data pulse. Many other signal schemes can be utilized in according with principles of the present disclosure without departing from the scope of the present disclosure.
[0060]
[0061] In one embodiment, a pulse width modulator includes a phase locked loop configured to receive a clock signal and to output N phase signals and a data delay generator configured to receive the phase signals and a data input signal and to output N data delay signals each corresponding to the data input signal and delayed in accordance with a respective one of the phase signals. The pulse width modulator includes a multiplexer having a first multiplexer stage configured to receive a first half of the data delay signals and to output a first midpoint signal, a second multiplexer stage in parallel with the first multiplexer stage and configured to receive a second half of the data delay signals and to output a second midpoint signal, and a third multiplexer stage configured to receive the first midpoint signal and the second midpoint signal and to output a data output pulse based on the first and second midpoint signals.
[0062] In one embodiment, a method includes receiving a clock signal with a phase locked loop, generating, with the phase locked loop, N phase signals each having different phases from each other and a same period T as the clock signal, and receiving, with a data delay generator, a data input signal and the phase signals. The method includes generating, with the data delay generator, N data delay signals each corresponding to the data input signal and delayed in accordance with a respective one of the phase signals and receiving a first half of the data delay signals with a first multiplexer stage. The method includes receiving a second half of the data delay signals with a second multiplexer stage having a same internal delay as the first multiplexer stage and generating, with a third multiplexer stage, a data output pulse having a width based on an output of the first multiplexer stage and an output of the second multiplexer stage.
[0063] In one embodiment, a pulse width modulator includes a phase locked loop configured to receive a clock signal having a period T and to generate N phase signals each having the period T of the clock signal and each offset in time from the clock signal by a respective integer number of unit steps. A unit step is a period of time equal to T/N. The pulse width modulator includes a data delay generator configured to receive a data input signal and to generate, for each phase signal, a respective data delay signal corresponding to the data input signal delayed in accordance with the phase signal. The pulse width modulator includes a first multiplexer stage configured to receive, as inputs, a first group of N/2 of the data delay signals, a second multiplexer stage configured to receive, as inputs, a second group of N/2 of the data delay signals distinct from the first group, and a third multiplexer stage configured to receive, as inputs, an output of the first multiplexer and an output of the second multiplexer, and to provide a data pulse having a width based on the output of the first multiplexer stage and the output of the second multiplexer stage.
[0064] The various embodiments described above can be combined to provide further embodiments. These and other changes can be made to the embodiments in light of the above-detailed description. In general, in the following claims, the terms used should not be construed to limit the claims to the specific embodiments disclosed in the specification and the claims, but should be construed to include all possible embodiments along with the full scope of equivalents to which such claims are entitled. Accordingly, the claims are not limited by the disclosure.