Order Tray | Contact Us | Home | SIG Lists

[dsp] PWM/phase relationship

David Willmore willmore at optonline.net
Wed Jan 25 20:32:56 UTC 2006


I have something that's bugging me, but I don't have
a strong enough background in DSP to put it in the
proper terms--so I can further analyze it.  What I
want to do is sample an analog signal and convert
that periodically sampled (quantized) amplutude into
a PWM signal--at a few times the BW of the sampled

So, say, the input is analog voice and I sample it
at 19.53KHz (20MHz/1024) with a 10 bit A/D and put
it into the modulation register of a 10 bit PWM
with a period of that same value--19.53KHz.

My concern is that with 'single sided' PWM, I'm
going to get a phase shift which will vary with
the amplitude of the modulating signal.  Since
the 'phase center' of the PWM signal will be
one half of the duty cycle--thus it will move with
the modulating value.  This strikes me as a bad
thing.  Ideally, I'd go to 'double sided' or
'centered' PWM which keeps the phase center
stationary.  I may be able to do evil/clever tricks
to the PWM unit (the normal CCP module of a 16F PIC)
to make double sided--run one cycle in inverted mode--
off before the 'duty cycle' break point and reconfigure
to on after for the next cycle.  I'll have to look
deep at the manual to see how practical that will 

Assuming I don't/can't do that, can someone explain
to me 1) is this phase shifting vs amplitude effect
truely real (or am I just seeing things) and 2) what
effect will it have on human voice.   I think I'm
going to proto up a unit to listen to it with.

My gut also tells me that the higher the sampling
frequency, the lesser this effect will be as the
total amount of shifting (in a time sense) will
be lessened, but how much will that effect the
intelligability of the voice signal 'payload'.

All of this is for a 'next gen' laser communicator--
inspired by my first laser contacts in this last
VHF contest. :)

Thanks to everyone who even reads this far--regardless
of any adivce you may have.:)

David n0ymv

More information about the dsp mailing list