http://s188.photobucket.com/albums/z...t=envelope.jpg I am using a real-time DSP chip and I get a modulated continous output which I am unsure if it a biproduct of the DAC process. If I sample at just fractionally above the Nyquist rate, I obtain a discrete sequence that is described (without loss of any generality) that is similar to the linked image. When this sequence is resynthesised at the output of the DAC, a modulated continuous waveform is obtained that is directly congruent with the shape of the discrete sequence. The interpolation doesn't seem to be able to resolve the reconstructed continuous time sinsuoid again. I am aware that the 'ideal' analytical interpolation is taken over an infinite summation and as such this is not physically realizable. Is this the effect that I am witnessing in this practical application? Any comments on this sort of sequence would be great. It has a discrete frequency of about 0.9 pi. Thanks... Brendan
DSP Implementation Woes
Started by ●January 30, 2008
Reply by ●January 30, 20082008-01-30
My apologies for the bad link....it is actually: http://s188.photobucket.com/albums/z65/liznbren/stuff/?action=view¤t=envelope.jpg Thanks.... Brendan
Reply by ●January 30, 20082008-01-30
>My apologies for the bad link....it is actually: > >http://s188.photobucket.com/albums/z65/liznbren/stuff/?action=view¤t=envelope.jpg > >Thanks.... >Brendan >> If I sample at just fractionally above the Nyquist rate,That is the problem right there, and what you are seeing is aliasing. Take a look at the applet on this page: http://cnx.org/content/m11448/latest/ Put in an input frequency of 4200 Hz, turn on the "Sample points", and turn off the "Input signal". You will see a similar result. To avoid aliasing you need to sample signals at or below the Nyquist rate.
Reply by ●January 30, 20082008-01-30
pompano wrote:>> My apologies for the bad link....it is actually: >> >> http://s188.photobucket.com/albums/z65/liznbren/stuff/?action=view¤t=envelope.jpg >> >> Thanks.... >> Brendan >> > >> If I sample at just fractionally above the Nyquist rate, > > That is the problem right there, and what you are seeing is aliasing. > > Take a look at the applet on this page: > http://cnx.org/content/m11448/latest/ > > Put in an input frequency of 4200 Hz, turn on the "Sample points", and > turn off the "Input signal". You will see a similar result. > > To avoid aliasing you need to sample signals at or below the Nyquist rate.Pompano, I think you confuse "below" and "above". In any case, observe that there are more than two samples per cycle of the sampled waveform. That part is OK. Brendan, Your discrepancy is only apparent. You must not simply plot the sample points and connect them. You need to feed the samples to a reconstruction filter and plot its continuous-time output. The reconstruction filter is a low-pass filter, and the more closely the sample clock approaches the minimum that theory allows, the more stringent are the requirements on it. When the rates are very different, a simple first-order hold (connecting the dots) suffices. You have chosen a rate ratio that requires a more sophisticated filter than that. Jerry -- Engineering is the art of making what you want from things you can get. �����������������������������������������������������������������������
Reply by ●January 30, 20082008-01-30
Jerry, Thanks for your response. Indeed, it was assumed that the DAC was NOT producing a FOH implementation and was using a fully fledged Sinc( ) interpolator (or as close to the ideal LPF as possible). However, it has come to my knowledge that this might indeed be the case for this DSP chip below a given sampling frequency. In which case the FOH implementation is totally insufficient for this situation. I will investigate this practicality tomorrow and see what happens if I push the chip to use the LPF implementation and see if at slightly below the Nyquist rate the output works as I would expect it to within a legitimate tolerance. Thanks again for your valued input! I'll keep you posted on the results. -Brendan
Reply by ●January 30, 20082008-01-30
>pompano wrote: >>> My apologies for the bad link....it is actually: >>> >>>http://s188.photobucket.com/albums/z65/liznbren/stuff/?action=view¤t=envelope.jpg>>> >>> Thanks.... >>> Brendan >>> >> >>> If I sample at just fractionally above the Nyquist rate, >> >> That is the problem right there, and what you are seeing is aliasing. >> >> Take a look at the applet on this page: >> http://cnx.org/content/m11448/latest/ >> >> Put in an input frequency of 4200 Hz, turn on the "Sample points", and >> turn off the "Input signal". You will see a similar result. >> >> To avoid aliasing you need to sample signals at or below the Nyquistrate.> >Pompano, > >I think you confuse "below" and "above". In any case, observe that there>are more than two samples per cycle of the sampled waveform. That part >is OK. > >Brendan, > >Your discrepancy is only apparent. You must not simply plot the sample >points and connect them. You need to feed the samples to a >reconstruction filter and plot its continuous-time output. > >The reconstruction filter is a low-pass filter, and the more closely the>sample clock approaches the minimum that theory allows, the more >stringent are the requirements on it. When the rates are very different,>a simple first-order hold (connecting the dots) suffices. You have >chosen a rate ratio that requires a more sophisticated filter than that. > >Jerry >-- >Engineering is the art of making what you want from things you can get. >����������������������������������������������������������������������� >Haha whoops! I definitely did confuse "above" and "below". Actually I somehow read "sample at just fractionally above the Nyquist rate" as the "signal Nyquist rate above the sampling Nyquist frequency". I guess that will teach (remind) me to read more carefully. In essence I confused the terms Nyquist rate and Nyquist frequency. Thanks for the clarification, Joe
Reply by ●January 30, 20082008-01-30
On Wed, 30 Jan 2008 12:01:21 -0800, brendan_online wrote:> http://s188.photobucket.com/albums/z...t=envelope.jpg > > I am using a real-time DSP chip and I get a modulated continous output > which I am unsure if it a biproduct of the DAC process. > > If I sample at just fractionally above the Nyquist rate, I obtain a > discrete sequence that is described (without loss of any generality) > that is similar to the linked image. When this sequence is resynthesised > at the output of the DAC, a modulated continuous waveform is obtained > that is directly congruent with the shape of the discrete sequence. The > interpolation doesn't seem to be able to resolve the reconstructed > continuous time sinsuoid again. > > I am aware that the 'ideal' analytical interpolation is taken over an > infinite summation and as such this is not physically realizable. Is > this the effect that I am witnessing in this practical application? > > > Any comments on this sort of sequence would be great. It has a discrete > frequency of about 0.9 pi. >As Jerry said, the closer you get to Nyquist the more stringent your filtering requirements are. The Nyquist rate is a theoretical upper limit of the "don't ever get close to this" sort, rather than the "nestle up as close as you can" sort. This article may help: http://www.wescottdesign.com/articles/Sampling/ sampling.html. -- Tim Wescott Control systems and communications consulting http://www.wescottdesign.com Need to learn how to apply control theory in your embedded system? "Applied Control Theory for Embedded Systems" by Tim Wescott Elsevier/Newnes, http://www.wescottdesign.com/actfes/actfes.html
Reply by ●January 31, 20082008-01-31
On 2008-01-31, brendan_online@hotmail.com <brendan_online@hotmail.com> wrote:> I push the chip to use the LPF implementation and see if at slightly > below the Nyquist rate the output works as I would expect it to within > a legitimate tolerance.If you sample at 100Hz and try to produce a 49Hz output, there will be an image at 51Hz. You have met the theoretical limit, but now you need an analog filter that passes enough 49Hz and blocks enough 51Hz to meet your needs. If you increase the sample rate to 200Hz, the image moves up to 151Hz and now you can use a much simpler filter. I'm not sure what you mean by "push the chip". Look up "reconstruction filter". -- Ben Jackson AD7GD <ben@ben.com> http://www.ben.com/
Reply by ●January 31, 20082008-01-31
Hi Ben, I was *told* that this chip supports several discrete clock frequencies....namely 8,16,24,32,44.1,96 KHz, and it doesn't use a Low- pass interpolation/reconstruction filter at the lower clock frequencies. My problems are occurring at 8KHz. The 'modulation' envelope is having an effect when trying to reconstruct a sinusoid at about 3.4KHz. It's not too dissatisfactory at this point, but by 3.6+ KHz there is alot of harmonic distortion from what I desire. In fact, at 8KHz the reconstruction looks of zero-order-hold type. So when I said 'push the chip', I simply meant to clock it up to 96KHz and see if the signal fidelity of a discrete sinusoid at a discrete frequency of about 0.8pi is any better. Thanks again, Brendan
Reply by ●January 31, 20082008-01-31
Okay let me state what I know about the hardware now. There is a fixed LPF of bandwidth 48KHz, as the maximum sampling frequency is 96KHz. This is fixed, even though the DSP chip support the clock frequencies that I previously listed. As such, the effects of the ZOH at the DAC are seldom mitigated, and one closes in the vicinity of the Nyquist frequency this 'beating' effect dominates. I think this explains it, or so. -Brendan