[hpsdr] Mercury sampling rate

Nico Palermo nicopal at microtelecom.it
Sat Apr 12 10:43:54 PDT 2008


Hi Alex, Alberto, Phil and others,

for those who may be interested, the Perseus software uses the same
technique described by Alex. The data stream coming from the receiver
hardware at 125, 250, 500 or 1000 KS/s is decimated by means of a
configurable cascade of half-band filters/decimators to a lower sample
rate (from 31.25 KS/s down to less than 1 KS/s, depending on the selected
bandwidth). Signal filtering, AGC, demodulation and other operations are
performed at this lower sampler and then the result is reinterpolated by a
cascade of another half-band filters/interpolators to an audio output rate
of 31.25 KS/s.
I've never attempted to compare in detail how efficient in terms of
complexity (aka CPU usage) is this decimation/interpolation processing
against other techniques, but it looks like that it is not worse than
algorithms based on fast-convolution and, at least, the Perseus software
uses almost the same (or maybe even little less) CPU used by Winrad under
the same circumstances.

73
Nico Palermo
IV3NWV

> ***** High Performance Software Defined Radio Discussion List *****
>
> Hi Alberto and others,
>
> Resampling by a factor that is an integer power of two can be implemented
> more efficiently than resampling by an arbitrary rational factor, using a
> so-called octave resampler. This resampler is based on a half-band filter,
> that is, a filter whose cutoff frequency is exactly 1/2 of the Nyquist
> frequency. The even coefficients of a properly designed half-band filter
> are
> zeros and thus the number of required multiplications is reduced by a
> factor
> of 2. The source code of my octave resampler used in Rocky, Faros and CW
> Skimmer is available at (http://www.dxatlas.com/dev). This resampler is
> used
> to quickly convert between the 3/6/12/24/48/96/192 kHz sampling rates. The
> only place in my software where a rational-factor polyphase resampler is
> used is the interface with SDR-IQ because this radio has a non-standard
> sampling rate.
>
> All modern soundcards, including the on-board ones, support the sampling
> rate of 48 kHz. The choice of a standard sampling rate in Mercury was a
> smart decision that can result in more efficient signal processing in the
> software.
>
> 73 Alex VE3NEA
>
>
>
>
>
>
>
> ----- Original Message -----
>
>> ***** High Performance Software Defined Radio Discussion List *****
>>
>> Phil Harman wrote:
>>>
>>> We sample at 122.88MHz since that divides evenly to standard sound card
>>> frequencies.  This does need updating since we will be able to achieve
>>> 2MHz of displayed bandwidth using the current USB2 interface to the PC.
>>>
>>> 73's Phil...VK6APH
>>
>> May I ask the rationale behind that ? The data sampled by the ADC are of
>> course not meant to be passed through a sound
>> card after the decimation... they are already digital. And for the
>> output
>> you need always to use a fractional resampler
>> as you cannot have any guarantee that the sampling rate of the output
>> sound card is an *exact* submultiple of the
>> downsampled rate. And, once you have accepted the need of a fractional
>> resampler, then any ADC clock frequency can be
>> used.
>>
>> Or maybe I am missing part of the picture ?
>>
>> 73  Alberto  I2PHD
>
>
> _______________________________________________
> HPSDR Discussion List
> To post msg: hpsdr at hpsdr.org
> Subscription help: http://lists.hpsdr.org/listinfo.cgi/hpsdr-hpsdr.org
> HPSDR web page: http://hpsdr.org
> Archives: http://lists.hpsdr.org/pipermail/hpsdr-hpsdr.org/
>



 1208022234.0


More information about the Hpsdr mailing list