<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#FFFFFF">
Edson,<br>
<br>
Glad you enjoyed the TeamSpeak discussion.<br>
<br>
The article you reference gives a very good and succinct tutorial.
"Fast convolution" has been around for a very long time; however, it
is apparently not well-known / well-understood. Doing
down-conversion at the same time is just an extension of the
concept. I'd recommend this article for anyone (1) interested in
learning more about practical ways of implementing FIR filters in
DSP or (2) looking at various DSP down-conversion techniques.<br>
<br>
There are quite a few ways to do down-conversion in DSP. Each seems
to have its "place": (1) Perhaps the easiest to understand is
simply multiplying the IQ signal by a complex oscillator.
Multiplication by a complex oscillator in the time-domain "rotates"
the spectrum in the frequency domain (this is the frequency-shifting
property of the DFT). (2) Using "fast convolution" with decimation
done in the frequency domain via aliasing (discussed above). (3)
Google for "polyphase channelizer" and you'll find a technique that
provides many fixed, down-converted "channels". (4) One can use
FFTs with windowing of the signal and selection of bins. .... These
are all useful in various situations.<br>
<br>
For some of the down-conversions we've been discussing recently in
HPSDR, we are starting with high-bandwidth data ... many Mhz of
spectrum. So, the down-conversion algorithms must be "drinking from
a firehose" as Phil likes to say. If FFTs are used in that process,
that implies that we must execute FFTs very rapidly. There are a
couple other DSP concepts that I believe are also not well-known or
understood: (1) using a complex FFT to more efficiently compute the
FFT of real data, and (2) using multiple complex FFTs, running in
parallel, to compute the FFT of a complex sample stream. For those
interested in exploring DSP algorithms, these are also useful for
the toolbox.<br>
<br>
73,<br>
Warren NR0V<br>
<br>
<div class="moz-cite-prefix">On 11/22/2014 8:47 AM, Edson W. R.
Pereira wrote:<br>
</div>
<blockquote
cite="mid:CALNQy4_Lc9ks+c0QpjFpCg6uPFU0c8-XrD92-MxC1Ewk8vm2ug@mail.gmail.com"
type="cite">
<pre wrap="">***** High Performance Software Defined Radio Discussion List *****
</pre>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<div dir="ltr"><br>
<div>I've enjoyed the discussions this week. Specially Warren's
explanation about frequency translation when using the
overlap-and-save algorithm. I've found this article that
depicts Warren's explanations very nicely.</div>
<div><br>
</div>
<div><a moz-do-not-send="true"
href="http://www.3db-labs.com/01598092_MultibandFilterbank.pdf">http://www.3db-labs.com/01598092_MultibandFilterbank.pdf</a><br>
</div>
<div><br>
</div>
<div>73, Edson PY2SDR</div>
<div><br>
</div>
</div>
<div class="gmail_extra"><br clear="all">
<div>
<div class="gmail_signature">
<div dir="ltr">
<div>
<div dir="ltr">
<div>
<div dir="ltr"><span
style="color:rgb(96,96,96);font-family:Helvetica;line-height:22.5px"><font>---</font></span></div>
<div dir="ltr"><font><span
style="color:rgb(96,96,96);font-family:Helvetica;line-height:22.5px">-
We humans have the capability to do amazing
things if we work together.</span><br>
</font>
<div><font><span
style="color:rgb(96,96,96);font-family:Helvetica;line-height:22.5px">- </span><font
face="Helvetica" color="#606060"><span
style="line-height:22.5px">Nós seres
humanos temos a capacidade de fazer coisas
incríveis se trabalharmos juntos.</span></font></font></div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<br>
</div>
</blockquote>
<br>
</body>
</html>