Pulse-width modulation
AssigneeCirrus Logic, Inc.
InventorToru Ido
Life of this patent
Estimating the term…
Abstract
This application relates to digital PWM modulation. A PWM modulator (400, 1100) has a PWM generator (402) configured to receive pulse width data (PWidth) and to output a PWM signal (SPWM) comprising a plurality of repeating PWM cycle periods, in which the duration of any pulse of the PWM signal in each PWM cycle period is based on the pulse width data. The PWM generator is configured to synchronise the PWM cycle periods, and the start and end of any PWM pulse, to a received first clock signal. The PWM generator is operable to generate pulses that have a positional error from a centred position within the PWM cycle period and a pulse position controller (403) is configured to control the position of a pulse in a PWM cycle period so as to at least partly compensate for the positional error of one or more preceding pulses.
Claims19
A PWM (pulse-width-modulation) modulator comprising:
- a PWM generator configured to receive pulse width data and to output a PWM signal comprising a plurality of repeating PWM cycle periods, in which the duration of any pulse of the PWM signal in each PWM cycle period is based on the pulse width data,
- wherein the PWM generator is configured to receive a first clock signal and to synchronise the PWM cycle periods and the start and end of any pulse of the PWM signal to the first clock signal;
- wherein the PWM generator is operable to generate pulses that have a positional error from a centred position within the PWM cycle period;
- wherein the pulse-width modulator comprises a pulse position controller configured to control the position of a pulse in a PWM cycle period so as to at least partly compensate for the positional error of one or more preceding pulses;
- wherein the pulse position controller is configured to receive the pulse width data and comprises:
- an error block for determining a positional error for a pulse based on the pulse width data;
- a loop filter for filtering the positional error;
- and
- a quantizer configured to output pulse position data for controlling the position of the pulse in the PWM cycle period based on the output of the loop filter, wherein the pulse position data comprises data indicating a shift in pulse position from the centred position within the PWM cycle period,
- wherein the error block comprises a multiplier for multiplying a feedback signal of the pulse position data with the pulse width data to generate the positional error.
A PWM modulator operable to generate a digital PWM signal wherein signal transitions in the PWM signal are synchronised to a first clock signal, wherein the PWM modulator comprises a pulse position controller configured to monitor any positional error arising from pulses in a PWM cycle period not being centred within the PWM cycle period and to control the position of a pulse in a subsequent PWM cycle period to compensate for said error;
- wherein the pulse position controller is configured to receive pulse width data and comprises:
- an error block for determining the positional error for a pulse based on the pulse width data;
- a loop filter for filtering the positional error;
- and
- a quantizer configured to output pulse position data for controlling the position of the pulse in the subsequent PWM cycle period based on the output of the loop filter, wherein the pulse position data comprises data indicating a shift in pulse position from the centred position within the PWM cycle period;
- and
- wherein the error block comprises a multiplier for multiplying a feedback signal of the pulse position data with the pulse width data to generate the positional error.
A pulse position controller for controlling the position of a pulse of a PWM signal in a PWM cycle period, the pulse position controller being configured to receive pulse width data and comprising:
- an error block for determining a positional error for a pulse based on the pulse width data;
- a loop filter for filtering the positional error;
- and
- a quantizer configured to output pulse position data for the controlling the position of the pulse in the PWM cycle period based on the output of the loop filter;
- wherein the pulse position data comprises data indicating a shift in pulse position from the centred position within the PWM cycle period;
- and
- wherein the error block comprises a multiplier for multiplying a feedback signal of the pulse position data with the pulse width data to generate the positional error.
A digital PWM pulse generator comprising:
- a first input for receiving pulse width data;
- a second input for receiving pulse position data;
- a clock input for receiving a first clock signal;
- an output for outputting a PWM signal comprising a series of pulses in PWM cycle periods, where PWM cycle period and the start and end of the pulses are synchronised to the first clock signal;
- wherein the duration of a pulse in a PWM cycle period is defined by the pulse width data and the position of the pulse in the PWM cycle period is defined by the pulse position data;
- wherein the digital PWM pulse generator is configured to receive first and second pulse width data and to output respective first and second PWM signals.
A PWM (pulse-width-modulation) modulator comprising:
- a PWM generator configured to receive pulse width data and to output a PWM signal comprising a plurality of repeating PWM cycle periods, in which the duration of any pulse of the PWM signal in each PWM cycle period is based on the pulse width data,
- wherein the PWM generator is configured to receive a first clock signal and to synchronise the PWM cycle periods and the start and end of any pulse of the PWM signal to the first clock signal;
- wherein the PWM generator is operable to generate pulses that have a positional error from a centred position within the PWM cycle period;
- wherein the pulse-width modulator comprises a pulse position controller configured to control the position of a pulse in a PWM cycle period so as to at least partly compensate for the positional error of one or more preceding pulses;
- wherein the pulse position controller is configured to output pulse position data to the PWM generator and wherein the PWM generator is configured to generate the pulse in the PWM cycle period at a position based on the pulse position data and for a duration based on the pulse width data;
- and
- wherein the PWM modulator comprises:
- a threshold generator for generating first and second threshold values based on the pulse width data and the pulse position data;
- a counter clocked by said first clock signal to generate a count value;
- and
- at least one comparator responsive to said first and second threshold values and said count value to determine when to start and stop a pulse within the PWM cycle period.
A PWM (pulse-width-modulation) modulator comprising:
- a PWM generator configured to receive pulse width data and to output a PWM signal comprising a plurality of repeating PWM cycle periods, in which the duration of any pulse of the PWM signal in each PWM cycle period is based on the pulse width data,
- wherein the PWM generator is configured to receive a first clock signal and to synchronise the PWM cycle periods and the start and end of any pulse of the PWM signal to the first clock signal;
- wherein the PWM generator is operable to generate pulses that have a positional error from a centred position within the PWM cycle period;
- wherein the pulse-width modulator comprises a pulse position controller configured to control the position of a pulse in a PWM cycle period so as to at least partly compensate for the positional error of one or more preceding pulses;
- wherein the pulse position controller is configured to receive the pulse width data and comprises:
- an error block for determining a positional error for a pulse based on the pulse width data;
- a loop filter for filtering the positional error;
- and
- a quantizer configured to output pulse position data for the controlling the position of the pulse in the PWM cycle period based on the output of the loop filter,
- wherein the PWM generator is configured to receive first and second pulse width data and to output respective first and second PWM signals;
- wherein the error block is configured to determine pulse positional error based on the first width data and second pulse width data;
- and
- wherein the quantizer is a vector quantizer configured to output first pulse position data for the controlling the position of a pulse in the PWM cycle period of the first PWM signal and second pulse position data for the controlling the position of a pulse in the PWM cycle period of the second PWM signal.
Dependencies are inferred from the claim text.