RadioBanter

RadioBanter (https://www.radiobanter.com/)
-   Homebrew (https://www.radiobanter.com/homebrew/)
-   -   Software Defined Radio DSP choice / sizing (https://www.radiobanter.com/homebrew/120849-software-defined-radio-dsp-choice-sizing.html)

[email protected] June 22nd 07 01:44 AM

Software Defined Radio DSP choice / sizing
 
I'm working on a SDR design using the AD9874 to
digitize the IF producing 280 Ksamples/sec and
am trying to size the DSP. I'm leaning towards
the ADSP-BF532 which is a fixed point DSP rated
at 400 MIPS / 800 MMACS and is available in a LQFP
package. I'd like to be able to handle everything
from decoding standard shortwave SSB signals to
broadcast FM stereo signals (including RDS).

1) Any pointers to information which can be used
to size the DSP in terms of MIPS, program RAM,
and data RAM? Something like a minimum of X MIPS
are needed to do a reasonable job handling
broadcast FM stereo signals (which I'm assuming
require more MIPS than SSB) would be useful
to know.

2) Anyone have a specific DSP they favored for
this type of application? Keep in mind I
need the DSP to be in a package I can handle
using home equipment. It would be nice if the
DSP was flexible enough so that it can be used
for general purpose things such as controlling
the keyboard and LCD instead of adding a
microcontroller.

I'm not looking to use a FPGA at this time.

-- John
-------------------------------------------------------------------------
| Feith Systems | Voice: 1-215-646-8000 | Email:
|
| John Wehle | Fax: 1-215-540-5495
| |
-------------------------------------------------------------------------


msg June 22nd 07 03:16 AM

Software Defined Radio DSP choice / sizing
 
wrote:
I'm working on a SDR design using the AD9874 to
digitize the IF producing 280 Ksamples/sec and
am trying to size the DSP.

snip

2) Anyone have a specific DSP they favored for
this type of application? Keep in mind I
need the DSP to be in a package I can handle
using home equipment. It would be nice if the
DSP was flexible enough so that it can be used
for general purpose things such as controlling
the keyboard and LCD instead of adding a
microcontroller.


Can your design live with fewer MIPS and a lower sample
rate (downconvert the IF)? I'm working on a design
using a old DSP sound card which will talk to my mcu in
the radio; the card has a TSM320 DSP, a great (free)
toolchain, lots of sample code, and no need to fab a
pcb. Of course its resources are an order of magnitude
less than you've specified but it will still do filtering
and demodulation.

If this approach is of any use, I'll send you the toolchain
and docs ;)

Regards,

Michael

Tim Wescott June 22nd 07 06:43 AM

Software Defined Radio DSP choice / sizing
 
On Thu, 21 Jun 2007 17:44:13 -0700, john wrote:

I'm working on a SDR design using the AD9874 to
digitize the IF producing 280 Ksamples/sec and
am trying to size the DSP. I'm leaning towards
the ADSP-BF532 which is a fixed point DSP rated
at 400 MIPS / 800 MMACS and is available in a LQFP
package. I'd like to be able to handle everything
from decoding standard shortwave SSB signals to
broadcast FM stereo signals (including RDS).

1) Any pointers to information which can be used
to size the DSP in terms of MIPS, program RAM,
and data RAM? Something like a minimum of X MIPS
are needed to do a reasonable job handling
broadcast FM stereo signals (which I'm assuming
require more MIPS than SSB) would be useful
to know.

2) Anyone have a specific DSP they favored for
this type of application? Keep in mind I
need the DSP to be in a package I can handle
using home equipment. It would be nice if the
DSP was flexible enough so that it can be used
for general purpose things such as controlling
the keyboard and LCD instead of adding a
microcontroller.

I'm not looking to use a FPGA at this time.

1. I generally do this by prototyping the algorithms using Scilab, or
designing them on paper, then figuring out the number of operations (for
MIPS) and data storage requirements. You'll probably find that the FM
demodulation takes the most processor time, unless you're decoding
multiple SSB channels for some odd reason.

2. I make a conscious effort to not fall in love with any particular
processor. Look at a few different choices in your target word
size and data type, and try to get a feel for how much time it'll take to
run your algorithms.

1 & 2. _Don't_ forget the 'regular processor' stuff when you're sizing
memory and processor bandwidth! Wouldn't you feel silly if you had 20
times the RAM you needed for your DSP, but didn't have the buffer space
necessary for your TCP/IP stack, or if your algorithm took up 500 words of
memory but you ran out of space for menu lines in ROM? Generally with
these mixed-target DSP projects you can expect 1% of the code to take 95%
of the consumed processing power; you need to make sure you have the code
space for the other stuff.

--
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

John Ferrell June 22nd 07 02:51 PM

Software Defined Radio DSP choice / sizing
 
On Thu, 21 Jun 2007 17:44:13 -0700, wrote:

I'm working on a SDR design using the AD9874 to
digitize the IF producing 280 Ksamples/sec and

I am way behind you guys on the DSP-SDR subject but I appreciate every
scrap of information you share.

I am currently trying to puzzle out the strategy used in acquiring
data from a sound card.

I have successfully built the Softrock Lite 40 meter receiver and am
ever so slowly working on a Softrock RXTX Ver 6.2 40 M transceiver.

John Ferrell W8CCW
"Life is easier if you learn to
plow around the stumps"

Vladimir Vassilevsky June 22nd 07 03:58 PM

Software Defined Radio DSP choice / sizing
 


wrote:

I'm working on a SDR design using the AD9874 to


Fair performance is guaranteed.

digitize the IF producing 280 Ksamples/sec and
am trying to size the DSP.


Get the biggest one. Like Intel P4.

I'm leaning towards
the ADSP-BF532 which is a fixed point DSP rated
at 400 MIPS / 800 MMACS


800 MMACS is a pure marketing. The 400 MIPS is closer to the reality.

and is available in a LQFP
package. I'd like to be able to handle everything
from decoding standard shortwave SSB signals to
broadcast FM stereo signals (including RDS).


I like your optimism.

1) Any pointers to information which can be used
to size the DSP in terms of MIPS, program RAM,
and data RAM? Something like a minimum of X MIPS
are needed to do a reasonable job handling
broadcast FM stereo signals (which I'm assuming
require more MIPS than SSB) would be useful
to know.


* It depends
* The barebone DSP functionality will take about 20...30 kbytes of the
program memory and several kbytes of the data memory.
* For the single channel processing, the workload should not exceed
about 100 MIPS.

2) Anyone have a specific DSP they favored for
this type of application?


It doesn't matter. Whatever DSP you wil take, you will be screwed many
times.

Keep in mind I
need the DSP to be in a package I can handle
using home equipment.


:))))))

It would be nice if the
DSP was flexible enough so that it can be used
for general purpose things such as controlling
the keyboard and LCD instead of adding a
microcontroller.


The general purpose stuff can easily boost the program size over the DSP
internal memories.

I'm not looking to use a FPGA at this time.


Why don't you start learning DSP with something simple like FIR or IIR
filter?


Vladimir Vassilevsky

DSP and Mixed Signal Design Consultant

http://www.abvolt.com

Richard Owlett June 22nd 07 07:49 PM

Software Defined Radio DSP choice / sizing
 
Vladimir Vassilevsky wrote:


Why don't you start learning DSP with something simple like FIR or IIR
filter?


Vladimir Vassilevsky

DSP and Mixed Signal Design Consultant

http://www.abvolt.com


Probably because he finds a "Software Defined Radio" to be fascinating.
I know that's my motivation for applying fft's to speech and GPS errors.
I'd lay odds that the majority of scientific/technical progress is due
to amateurs. { please check your etymology before opening fire ;

Think about bio's of ancient Greek philosophersetymology;, membership
of Royal Society(astronomers particularly came to mind), Einstein,
Goddard, Avins, Lyons, Allnor ... thru eons of grad students and even
some professors with Phd's.

[email protected] June 23rd 07 12:47 AM

Software Defined Radio DSP choice / sizing
 
On Jun 22, 10:58 am, Vladimir Vassilevsky
wrote:
wrote:
I'm working on a SDR design using the AD9874 to


Fair performance is guaranteed.


Do you mean "fair" as in good performance or as in marginal
performance?

If you mean good performance, then I quite happy to hear it's
guaranteed. :-)



Vladimir Vassilevsky June 23rd 07 01:23 AM

Software Defined Radio DSP choice / sizing
 


wrote:

On Jun 22, 10:58 am, Vladimir Vassilevsky
wrote:

wrote:

I'm working on a SDR design using the AD9874 to


Fair performance is guaranteed.



Do you mean "fair" as in good performance or as in marginal
performance?


I mean this toy will work however the performance of the classic analog
receiver of the communication class is much better.

Vladimir Vassilevsky

DSP and Mixed Signal Design Consultant

http://www.abvolt.com

[email protected] June 23rd 07 02:44 AM

Software Defined Radio DSP choice / sizing
 
On Jun 22, 8:23 pm, Vladimir Vassilevsky
wrote:
I mean this toy will work


I'm willing to accept some tradeoffs for the sake
of simplifying the design (i.e. the AD9874 integrates
an ADC and digital filter which is convenient though
less flexible then a ADC coupled with a FPGA).

however the performance of the classic analog
receiver of the communication class is much better.


That seems to imply some type of fundamental limitation
exists with using the AD9874. Care to be more specific?
For example the AD9874 spec claim 95 dB dynamic range,
there are certainly radios which claim a higher dynamic
range. However I'm imagining that a 95 dB dynamic range
should work for a lot of signals.


Paul Keinanen June 23rd 07 11:17 AM

Software Defined Radio DSP choice / sizing
 
On Thu, 21 Jun 2007 17:44:13 -0700, wrote:

I'm working on a SDR design using the AD9874 to
digitize the IF producing 280 Ksamples/sec and
am trying to size the DSP. I'm leaning towards
the ADSP-BF532 which is a fixed point DSP rated
at 400 MIPS / 800 MMACS and is available in a LQFP
package. I'd like to be able to handle everything
from decoding standard shortwave SSB signals to
broadcast FM stereo signals (including RDS).



I am not familiar with that specific component, but does it really
contain a decent S&H circuit for decimation ?

Even with a proper S&H (ten nanosecond sampling and several
microsecond hold times) for decimation, the 280 Ksamples/s sounds a
bit low for FM broadcast detection. The higher order (Bessel function)
sidebands are still quite strong with the modulation indexes used, so
truncating the bandwidth to the 100-140 kHz range might not be a good
idea.

If you after all want to include broadcast FM reception, I would
suggest that you do the reception in analog way and only go to digital
after the ratio detector, when 150 kHz sampling rate might be
sufficient for stereo and RDS separation.

For the other modulation modes, I would suggest using a high 1st IF
(40-80 MHz) with a proper roofing filter combined with a few IF stages
and AGC. This signal might then be decimated directly (or after
converting to 455 kHz for steeper filters) and processed at sampling
rates well below 100 Ksamples/s.

With the roofing filter and the AGC in the first IF, the ADC should be
able to handle large signal variations, as long as the offending
signal is not within the roofing filter bandwidth.

Paul OH3LWR


Jerry Avins June 23rd 07 04:42 PM

Software Defined Radio DSP choice / sizing
 
Paul Keinanen wrote:

...

Even with a proper S&H (ten nanosecond sampling and several
microsecond hold times) for decimation, the 280 Ksamples/s sounds a
bit low for FM broadcast detection. The higher order (Bessel function)
sidebands are still quite strong with the modulation indexes used, so
truncating the bandwidth to the 100-140 kHz range might not be a good
idea.


...

The IF passband of an FM receiver needs to be at least 200 KHz for good
quality and -- counterintuitive to me -- I'm told that the capture ratio
improves as the bandwidth increases. Back in the 50s, one premium
receiver -- the first I knew of to use semiconductor diodes in the
detector -- had a half-MHz IF.

Jerry
--
Engineering is the art of making what you want from things you can get.
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯

[email protected] June 23rd 07 07:56 PM

Software Defined Radio DSP choice / sizing
 
On Jun 23, 6:17 am, Paul Keinanen wrote:
Even with a proper S&H (ten nanosecond sampling and several
microsecond hold times) for decimation, the 280 Ksamples/s sounds a
bit low for FM broadcast detection.


The IF is 1.7 MHz which is sampled using a 13.6 MHz clock by the
AD9874
and decimated by a factor of 48 to produce the 280 Ksamples/s output.

Looking at:

http://en.wikipedia.org/wiki/Fm_broadcasting

I see that FM audio goes from 0 to 53 KHz and RDS is at 57 KHz.
The AD9874 decimation filter should prevent any signal from aliasing
into the bandwidth of interest and the resulting sample rate is
above Nyquist.

I'm missing something ... assuming no aliasing problems why is
a higher sampling rate necessary for recovering the audio and RDS?

-- John


John[_5_] June 23rd 07 08:02 PM

Software Defined Radio DSP choice / sizing
 
On Jun 23, 11:42 am, Jerry Avins wrote:
Paul Keinanen wrote:

...

Even with a proper S&H (ten nanosecond sampling and several
microsecond hold times) for decimation, the 280 Ksamples/s sounds a
bit low for FM broadcast detection. The higher order (Bessel function)
sidebands are still quite strong with the modulation indexes used, so
truncating the bandwidth to the 100-140 kHz range might not be a good
idea.


...

The IF passband of an FM receiver needs to be at least 200 KHz for good
quality and -- counterintuitive to me -- I'm told that the capture ratio
improves as the bandwidth increases. Back in the 50s, one premium
receiver -- the first I knew of to use semiconductor diodes in the
detector -- had a half-MHz IF.

Jerry
--
Engineering is the art of making what you want from things you can get.
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯


Assuming cochannel signals with small power difference, as the BW
increases the weaker
one will hit threshold (knee in the SNRout vs SNRin curve) first. Does
that explain it?

John


Randy Yates June 23rd 07 08:16 PM

Software Defined Radio DSP choice / sizing
 
writes:

On Jun 23, 6:17 am, Paul Keinanen wrote:
Even with a proper S&H (ten nanosecond sampling and several
microsecond hold times) for decimation, the 280 Ksamples/s sounds a
bit low for FM broadcast detection.


The IF is 1.7 MHz which is sampled using a 13.6 MHz clock by the
AD9874
and decimated by a factor of 48 to produce the 280 Ksamples/s output.

Looking at:

http://en.wikipedia.org/wiki/Fm_broadcasting

I see that FM audio goes from 0 to 53 KHz and RDS is at 57 KHz.
The AD9874 decimation filter should prevent any signal from aliasing
into the bandwidth of interest and the resulting sample rate is
above Nyquist.

I'm missing something ... assuming no aliasing problems why is
a higher sampling rate necessary for recovering the audio and RDS?


You're looking at the audio baseband bandwidth, i.e., the signal after
being FM demodulated. From your description the signal you're getting
has not yet been FM-demodulated. Thus you need to account for the +/-
75 kHz peak deviation of the FM signal, at a minimum. If you can
swallow up the whole 200 kHz, you gain slightly better performance due
to the admission of more the bessel function sidebands, as others have
noted.
--
% Randy Yates % "Maybe one day I'll feel her cold embrace,
%% Fuquay-Varina, NC % and kiss her interface,
%%% 919-577-9882 % til then, I'll leave her alone."
%%%% % 'Yours Truly, 2095', *Time*, ELO
http://home.earthlink.net/~yatescr

[email protected] June 25th 07 03:12 AM

Software Defined Radio DSP choice / sizing
 
On Fri, 22 Jun 2007 13:51:36 GMT, John Ferrell
wrote:

On Thu, 21 Jun 2007 17:44:13 -0700, wrote:

I'm working on a SDR design using the AD9874 to
digitize the IF producing 280 Ksamples/sec and

I am way behind you guys on the DSP-SDR subject but I appreciate every
scrap of information you share.

I am currently trying to puzzle out the strategy used in acquiring
data from a sound card.


Using C++, it's not that hard. This page of my website,
http://sdeyoreo.tripod.com/id5.html gives the steps and code to
capture sound and fill an array with the samples from the soundcard.
Fell free to ask me more if you want.

I have successfully built the Softrock Lite 40 meter receiver and am
ever so slowly working on a Softrock RXTX Ver 6.2 40 M transceiver.

John Ferrell W8CCW
"Life is easier if you learn to
plow around the stumps"



Alex Gibson June 25th 07 05:49 AM

Software Defined Radio DSP choice / sizing
 

wrote in message
ups.com...
I'm working on a SDR design using the AD9874 to
digitize the IF producing 280 Ksamples/sec and
am trying to size the DSP. I'm leaning towards
the ADSP-BF532 which is a fixed point DSP rated
at 400 MIPS / 800 MMACS and is available in a LQFP
package. I'd like to be able to handle everything
from decoding standard shortwave SSB signals to
broadcast FM stereo signals (including RDS).

1) Any pointers to information which can be used
to size the DSP in terms of MIPS, program RAM,
and data RAM? Something like a minimum of X MIPS
are needed to do a reasonable job handling
broadcast FM stereo signals (which I'm assuming
require more MIPS than SSB) would be useful
to know.

2) Anyone have a specific DSP they favored for
this type of application? Keep in mind I
need the DSP to be in a package I can handle
using home equipment. It would be nice if the
DSP was flexible enough so that it can be used
for general purpose things such as controlling
the keyboard and LCD instead of adding a
microcontroller.

I'm not looking to use a FPGA at this time.

-- John


Can you use one of the blackfin stamp boards ?
http://blackfin.uclinux.org/gf/project/stamp

Digikey sells the BF537 stamp board for US$226
http://www.digikey.com/scripts/DkSea...440505&Site=US

http://www.analog.com/en/prod/0,2877...DSTAMP,00.html

Could always try and make a network interface for controlling the radio.


I'm just starting to look at what I need for getting a similar set up but
A.M
and ssb only for students to use in a lab to introduce them to the bascs of
sdr.

The lecturers want the students to program different modules ,
different types of modulation , encoding and decoding, set different
sampling rates etc They want the students to be able use both c and matlab.

Looks like we'll be using a c6713 dsk as the base
(thanks to TI providing free software)
I just get to assemble/build/integrate what gets specified.

Someone in the faculty has a couple of lyrtech signalwave boards
which they aren't using(been sitting in their filling cabinet for a few
years), have to see if we can prise them off them.
Then see what it costs to get support (need the up to date software).
http://www.lyrtech.com/DSP-developme...signalwave.php




Alex




Paul Keinanen June 25th 07 11:52 AM

Software Defined Radio DSP choice / sizing
 
On Sat, 23 Jun 2007 11:56:21 -0700, wrote:


The IF is 1.7 MHz which is sampled using a 13.6 MHz clock by the
AD9874
and decimated by a factor of 48 to produce the 280 Ksamples/s output.


With 1.7 MHz IF you are going to have to construct your own LC band
pass filters in front of the AD9874, if 1.7 MHz is the first IF.

If this is the second IF and you have proper filtering (ceramic or
crystal) at the first IF, say 10.7 MHz, a very simple filter at 1.7
MHz should be sufficient. Due to not so spectacular performance of
that chip, I would suggest using a selectable IF filter at 10,7 MHz
(or whatever the first IF is), to even roughly match the required
bandwidth of the transmission.

If the IF filter would be 110-280 kHz wide to allow broadcast FM
reception, using such receiver in Europe to receive the 7.0-7.1 MHz
amateur band when there are very high power international broadcasters
starting at 7.1 MHz, might give quite disappointing results, since
those strong broadcast signals would control the AGC reducing
sensitivity and you still would get a lot of intermodulation products.

It also appears that the quoted dynamic range applies only to certain
AGC settings.

The use of 1.7 MHz IF with a very wide input filter may be problematic
at least in countries that are still using the AM broadcast band
actively, with very strong signals up to 1.6 MHz. On the other hand,
local 1.8 MHz amateur radio signals may be quite strong. In any
superheterodyne receiver, there is always a risk for signal
break-through from the environment to the IF stage at that frequency
range. For this reason, common IF frequencies, such as 10.7 MHz and
455 kHz, are usually excluded from transmitter frequency assignments.

Looking at:

http://en.wikipedia.org/wiki/Fm_broadcasting

I see that FM audio goes from 0 to 53 KHz and RDS is at 57 KHz.


While the modulation index for the RDS signal is quite low, thus
producing only the first order Bessel sidebands at +/- 57 kHz from the
carrier, the stereo difference signal S can have a quite high
modulation index, thus producing the first pair of Bessel sidebands
below +/-53 kHz from the carrier but also producing some significant
second order Bessel sidebands below +/-106 kHz and possibly even the
third order at +/-159 kHz.

Of course, this requires that there is a strong high pitch tone only
in one audio channel to get a huge difference signal.

Paul OH3LWR



All times are GMT +1. The time now is 04:55 AM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
RadioBanter.com