How to set the frequency of AD9560 PWM generator

Document created by analog-archivist Employee on Feb 23, 2016
Version 1Show Document
  • View in full screen mode

I am working on the design of the analog interface of a SmartCard
reader/tester/ encoder.

I am currently evaluating the AD9560 pulse width modulator. This product, (or
its equivalent AD9561) would be perfect for our PWM needs, except for the Rset:
this resistor implies that operation has to be done at a single frequency.
However, in my application, I would like to change the frequency from 500kHz to

Is it possible to replace Rset with a DAC or a digital potentiometer, for
example...? Which voltage or current range should I use with a DAC? NB: It is
important that the precision on the duty cycle remains under 2%.


Here are some ideas for setting the Rset resistance.

The purpose of Rset is to set the current, which charges an internal capacitor
to generate the internal voltage ramp. This ramp is the basis of the PWM
generator timing. Since the on-chip timing circuits vary from lot to lot and
can drift with temperature, an auto-calibration function adjusts the current
source so that the ramp duration is matched to the CLOCK input.

The attached diagrams show the simplified internal circuitry connected to the
Rset pin and a suggested way of connecting an external digital potentiometer.
The Rset node is sensitive to external capacitance, and since digital pots can
contribute significant parasitic capacitance, it is recommended that a fixed
resistor Ra be connected to pin 15, to isolate the device from external
capacitance. Choose Ra to be slightly less than Rset_min and choose Rb to be
slightly twice more than Rset max
requirement. Then, Rpot range should be 0 ohms to Rb's value.

The Rset only needs to set the current source to APPROXIMATELY the correct
value; the auto-calibration circuit will "fine-tune" the current source, so
that the datasheet specifications can be met. The guideline given in the
datasheet is that the nearest 1% resistor to the nominal value should be
chosen. So our "automatic" Rset should contribute an error no greater than the
nearest 1% resistor would. There are 96 standard values of 1% resistors in each
(10k,10.2k,10.5k ... 97.6k,100k...) So it is normally possible to choose a
resistor whose nominal value is within 1% to 1.2% of the exact value you
require. This resistor may in turn have a value within +/-1% of it's nominal
value. So we end up with a worst case error band of +/-2.2% at room temperature.

For your stated frequency range, the resistor values are as follows
500kHz => 115.9kOhms
30MHz => 1.687kOhms

The problem with all "variable resistance" ICs (DACs, digital pots) is that the
ABSOLUTE value of the resistors is not so accurate (you must reckon with +/-20%
to +/-40%). What allows the very high precision is the RELATIVE MATCHING of the
on-chip resistors. In your application you need the absolute value of the
resistor to be within 2% to allow the autocalibration to operate.

1. Digital potentiometer. Easy to use. You can use three in series to give you
the variation in gain that you're looking for. The attached application note
shows the considerations when combining several digital pots.

2. Using the variable resistance from a Multiplying DAC. This offers higher
resolution and a wider choice of parts than the digital potentiometer solution.
However, you need to be careful to keep certain nodes at the same potential or
else the DAC behaves non-linearly. It may be harder to select a DAC with the
absolute rsistance value you require. I have attached a full reference from our
CMOS DAC Application guide. Suitable DACs would be any CMOS Iout, multiplying
DAC. e.g. AD7524, AD7533, AD7943, AD7945, AD7948.