SoftRock and other SDR Radios SoftRockRadio.org - DSPRadio.org - - "Elegance through simplicity of design ".
  • Home

Close

 

 

Link to Personal and Site Information

 

User login

 
Submitted by k5nwa on Sun, 04/01/2007 - 21:17.

A nice beginning are some of the articles is the link below.

 In particular the "A Software Defined Radio for the Masses" articles by Gerald Youngblood found towards the bottom of the page. http://www.arrl.org/tis/info/sdr.html

Articles how Quadrature signals work.

http://www.dspguru.com/info/tutor/quadsig.htm

HP article on the basics of IQ digital data from/to a radio. http://www.home.agilent.com/agilent/redirector.jspx?action=ref&cname=AGI...

A free book on how DSP works, an excellent book.

http://www.dspguide.com/

Articles on DSP

http://www.doug-smith.net/downloads.htm

Math Simulation software SciLab, software for analyzing data and plotting the results, very capable, can work with .WAV files as data. http://www.scilab.org/

Modeler for SciLab

http://www.scicos.org/

SciLab Tricks and tips.

http://kiwi.emse.fr/SCILAB/sci-bot/book1.htm

SciLab Toolboxes

http://www.scilab.org/contrib/index_contrib.php?page=listdyn.php&order=d...

Octave another math modeler

http://www.gnu.org/software/octave/

 Talk and models by Phil Hartman from talk at Dayton, it uses Excel to model SDR software, a good source of equations for the programs mentioned above. http://www.hamsdr.com/dnld.aspx

 

Click on the selections below for additional material.

»

My (simplistic) Understanding of SDR Concept

Best I can figure (and even this is subject to correction - please feel free to do so wherever you find me in error) about the theory and operation of the Softrock receivers is:
1. Chunk of Spectrun Arrives at Antenna and is Filtered.
The antenna provides as much of the RF spectrum as is electronically possible. Incoming RF is run through a bandpass filter. This limits the chunk of spectrum upon which the SDR will operate.

2. The "Mixer".
The resultant "chunk" of spectrum is fed into each of two separate switches. In the softrock, this is the FST3253 Dual 4:1 Multiplexer/Demultiplexer Bus Switch (U7 in the RXTX V6.2).

3. The LO Signal.
Each of the two switches also receives one of two local oscillator signals that are identical, but are 90 degrees out off phase.

4. The Chunk is Down-Converted to AF.
a. Each switch, acting as a mixer would in a traditional direct conversion architecture, "mixes" the incoming RF spectrim "chunk" and local oscillator signals to produce (sum and) difference signals in the audio frequency baseband. The sum signals are normally well beyond the baseband's practical limits
b. The difference signals (above and below the zero difference) are in the same 90 degree phase relationship as are the corresponding local oscillator signals.

6. I and Q Outputs.
The resultant baseband (AF) signals are amplified and appear at the I (In-Phase) and Q Quadrature) outputs, identical to each other, but 90 degrees out of phase.

7. The "Software" Part of "Software Defined Radio".
a. The Soundcard digitizes the I and Q signals and the software takes over from there to demodulate, filter, massage, and all the other magic that happens in the black box (Rocky, Winrad, KGKSDR, etc.)
b. That black box magic is covered in some detail in a January 2007 Radcom article, "Watch your Is and Qs (Why I and Q signals are necessary in SDR", by Phil Harman VK6APH. The article can be found in the Softrock40 Yahoo Group (in Phil's files section in that group). In that excellent article, he explains how Digital Signals Processing demodulates and filters AM, L/USB, FM, and CW from the results of I and Q digitization.
c. Some of the charts he uses in that article are in a set of Excel spreadsheets and a Powerpoint Phil used to present the concepts at Dayton in 2006 (http://www.hamsdr.com/dnld.aspx?id=572).

I am still trying to get the software part between my ears. Hopefully, at least at a basic level, I have managed to get the hardware part straight. If not, maybe some of the smart folks out there can correct any misunderstandings and/or excessive oversimplifications I have made herein.

73 de Robby WB5RVZ

»

SDR Basics

On item #6 the outputs of I and Q are identical and 90 degrees different only if all the signals are on one side of the LO, if there are signals on both sides of the baseband then the signals will be different. Otherwise why bother having two receivers, just delay the output of the one receiver to create the second signal (That does not work).

I leads Q on the positive side, I lags Q on the negative side, so if one signal is at +10KHz and a second signal is at -15KHz will I and Q be identical? Nope.

Cecil
K5NWA

www.softrockradio.com www.qrpradio.com

»

Item #6

Cecil:
First, thank you for setting me straight on #6. Unfortunately, I am having difficulty in understanding what you said about how the I and Q have the above and below LO signals, respectively. Could you please elaborate (I am a simple person and need little words, big letters, and lots of pix ).

TX es 73 de robby wb5rvz

»

My Take on What RX V6.2 Is Doing

Cecil:
In getting ready for my presentation on SDR in November, I tried to do a "Softrock for Dummies" slide that illustrated what was going on in the SDR RX. I took the RX V6.2 schematic as the background for the slide and - with the help of Bill AE5BK - overlayed it with colored blocks identifying the LO, Mixer, etc. functions and also explaining why the need for the 4X crystal in the LO. I also went overboard by adding a MP3 rendition of the I and Q signals from one of the Field Day 40m IQ Wave files found on the Flex Radio site.

I hope what I have here is accurate enough. It has been and continues to be a wonderful learning experience.

Hopefully I will have successfully uploaded the zipped powerpoint and mp3 files to this site and you could critique it for me (both files must be downloaded to the same directory). I do not profess to be an expert; just inquisitive and still chugging along as I look 70 years in the face.

This just in! I couldn't upload the zip file to this entry/blog so I stuck it into my "Newbie's Journey" blog file list. Hopefully it will work.

Film at 11:00

Tx es 73
de Robby WB5RVZ

»

Item #6

I will try to have some photos/graph this weekend, information on this material is hard to come by.

Cecil
K5NWA

www.softrockradio.com www.qrpradio.com

»

... hard to find ...

"...information on this material is hard to come by..."
Tell me about it!

»

Information on SDR

Actually, the information you seek is quite easily found. Understanding it, however, is another matter.

The concepts of SDR (and of analog SSB generation methods) are easily explained using complex math. By 'complex' I don't mean the math itself, but rather math involving complex numbers.

Many radio amateurs lack the mathematical background to understand the signal processing literature. Unfortunately, complex math is at the heart of digital (and analog) signal processing. One needs this knowledge to fully understand SDR and it also helps explain why we do certain things in analog electronics.

In fact, what we try to do with analog electronics is get as close to the ideal mathematics as we can. For instance, the ideal mixer is a multiplier. This is easily implemented digitally on a PC or using a digital signal processor. In the analog world, we try to emulate a multiplier using a diode ring, or a transistor mixer etc.

Traditionally, hams copy circuitry from books without having to understand the underlying math simply because the circuits work. With SDR things are different because the math _is_ the circuit so to speak. In essence, SDR is a lot closer to what we'd ideally want to do.

The key to really understanding SDR and DSP is to understand complex numbers and the math involved. It's like learning electronics all over; you have to start from zero.

Once you know complex math, there is a great deal of material waiting to be discovered and it is easy to come by.

I hope this will inspire people to give complex math a try. Your journey starts here: http://en.wikipedia.org/wiki/Complex_number

Don't expect it to 'click' immediately and don't worry if you need to come back several times. Thats normal.

This is my 2 cents.. I hope you find it useful.

73,
Niels PE1OIT

»

Information on SDR

Of course you have to deal with complex math, but there is more to it than that, like in any field there are ways of implementing it so it has a chance to work in the real world, there are tricks and things to avoid.

I have lot's of books on theory but not one goes into the practical aspects of implementing the software. As an example, I have several books that discuss the role of FFT's but not one discusses how to implement the FFT on a continuous stream of data, I'm sure there are lots of books on the subject but not so easy when you can't even look at the book before you buy it. Recently I bought quite a few books on the subject and not one deals with this issue or how to filter data that is in the frequency domain, instead all they discuss is the traditional time domain filters.

Help, would be a book that deals with the peculiarities involved in creating SDR software that isn't obsessed with dealing only with digital data and it's non-related problems to the task at hand.

Cecil
K5NWA

www.softrockradio.com www.qrpradio.com

»

Information on SDR

Hi Cecil,

There are several ways to apply the FFT to a continuous stream of data. It depends on what you would like to achieve.

If you want to create a 'waterfall' you collect, say, 1024 samples of data, window it (to decrease spectral leakage) and apply the FFT, then take 10*log10(real*real+imag*imag) to get the log-magnitude, display the results. Repeat this forever (using each sample only once).

If you want to use the FFT to do filtering in the frequency-domain (as opposed to 'classic' filtering in the time-domain), you need to take a look at the Windowed OverLap and Add (WOLA) based methods.

Although filtering in the frequency-domain can be more efficient than filtering in the time-domain. For soundcard-based SDR, the extra effort is not worth it.

'Multirate signal processing' by Crochier and Rabiner has information WOLA processing. This is quite an advanced concept.

I'm making my own SDR software at the moment, and there aren't many peculiarities I can think of. Most of the things I'm fighting are software engineering things, like how to design the GUI so it is easy-to-use and intuitive.

In my opinion, the best way to get going is to modify existing open-source software, such as PowerSDR for windows or LINRAD for linux.

I think it would be impossible to write a book on the all the aspects of writing software for SDR. And some of the issues, like which programming language or operating system to use, are almost based on religion.

When I start a new piece of software I ask myself the following questions:

* Is it just for me, or do I want to everyone to use it.
* Is it for windows, for linux/MAC, or for both.
* What are the minimum hardware requirements.

My answers for my SDR program are:

* for everyone
* windows first and linux in the long run
* something like a 500MHz Pentium II and soundcard.

In effect, I need to spend quite some time making the software easy-to-use and fool-proof. Because I intend to support windows and linux I need to use libraries that are available on both platforms, such as:

* wxWidgets for the GUI and housekeeping.
* PortAudio for the soundcard support.

The minimum hardware means I need to take care of the efficiency of the program. For instance, a spectrum and waterfall aren't absolutely vital to the operation of the SDR program. A hickup in the audio is much more irritating than a hickup in the spectrum display/waterfall. Therefore, the audio processing gets done first, after which I check if there is enough time to update the spectrum/waterfall. If not, I skip the update.

Also, for efficiency I don't use C# or Java. I use C/C++.

The software engineering part is mostly based on experience which is very difficult to get from a book.

73,
Niels
PE1OIT

»

Woah!

Interesting discussion, guys, but most of it flew right over my greying temples. If I were to use an analogue, if we were dealing with a car, my situation is one of wanting to know more about how the internal combustion engine works and what it does with the fuel. So far in my quest for peeling off one or two topside layers of this onion, the kinds of answers I get are either:
(1) "Turn the key", "engage the transmission in Drive", "press on the gas pedal"; or
(2) "We begin with the first law of thermo dynamics. Given that ......... blah blah ad infinitum ....", dwelling upon the low-level and no doubt fascinating physics underpinning the miracle of internal combustion in a fashion that would give a PHD physicist a major thrill.

Is there not some higher-level compromise for the less erudite of us who would like to know a bit more then (1) and a hell of a lot less than (2)?

tx es 73 de robby wb5rvz

»

Specific questions.

Hi Robby,

There is a middle ground, but it will be different for everyone. It largely depends on the prior knowledge of the person.

Asking specific questions usually helps.

73,
Niels

»

Specific Questions

Niels:

1. I had stated:
"I and Q Outputs.
The resultant baseband (AF) signals are amplified and appear at the I (In-Phase) and Q Quadrature) outputs, identical to each other, but 90 degrees out of phase."

2. Cecil differed with that statement, saying:
"the outputs of I and Q are identical and 90 degrees different only if all the signals are on one side of the LO, if there are signals on both sides of the baseband then the signals will be different. Otherwise why bother having two receivers, just delay the output of the one receiver to create the second signal (That does not work).
I leads Q on the positive side, I lags Q on the negative side, so if one signal is at +10KHz and a second signal is at -15KHz will I and Q be identical? Nope."

My specific questions are:
1. From what Cecil says, I gather that the signals BELOW the LO frequency will show up in one of the two (I or Q) and those signals ABOVE the LO frequency will show up in the other output (Q or I). Is this true?
2. If 1. above is TRUE, then:
a. how does the hardware manage to parcel out the BELOW signals to one output and the ABOVE signals to the other?
b. in "if there are signals on both sides of the baseband then the signals will be different", exactly HOW do those signals differ?
3. If 1. above is NOT TRUE, then how do the respective the signal contents of I and Q differ other than phase?

tx es 73 de robby wb5rvz

»

Specific Questions

All signals appear on both I and Q signals, the difference between them is the phase of the signal components, in some signals I leads Q and other signals Q lead I depending on what frequency they are on. Because of the phase differences between I and Q signals the two signals have different apearance yet they both contain all the same signals.

The I and Q signals are combined to create a complex signal, then the FFT that is run on that data is able to find all the signals and their frequency components, both real and imaginary(negative frequencies). This operation identifies where the various signals are located on the frequency spectrum based on the original frequency and phase information found in the I and Q signals comming out of the SoftRock.

A picture in this case is worth a thousand words, I will try this weekend to run a SPice simulation to demonstrate this and will post it on this site. I first need to create a signal source with multiple components which I can then feed it into a QSD detector which I already have.

Cecil
K5NWA

www.softrockradio.com www.qrpradio.com

»

Re Spice Simulation

Cecil:
I really look forward to your presentation of the results of the Spice simulation. This has been a very tough conceptual nut to crack for me.

Also, If you have a file for LTSpice and/or Tina II (or aby ither free siim program), i would appreiate your sending same to me.

Thanks for your patience and 73
de robby wb5rvz

»

Shopping cart[]

Click title to display cart contents.

There are no products in your shopping cart.

0 ItemsTotal: $0.00

Who's online

There are currently 0 users and 14 guests online.
Share information with others, ask for permission to write an article or a blog.