There are 20 messages in this thread.
You are currently looking at messages 0 to 10.
Hi folks, I am about to attempt to decode a very weak RF BPSK signal using a sliding Geortzel Algorithm. I need to do this for the purpose of speed and sensitivity. Has anyone ever tried this before? It should be possible seeing that you can recover both the real and imaginary portions of the signal using the Goertzel. I have a nice chunk of C code to do this but have only used the optimized Goertzel portion of the code. Can't wait to try. Any foreseen pitfalls? Thomas Magma______________________________
Thomas Magma wrote: > Hi folks, > > I am about to attempt to decode a very weak RF BPSK signal using a sliding > Geortzel Algorithm. I need to do this for the purpose of speed and > sensitivity. Has anyone ever tried this before? It should be possible seeing > that you can recover both the real and imaginary portions of the signal > using the Goertzel. I have a nice chunk of C code to do this but have only > used the optimized Goertzel portion of the code. > > Can't wait to try. > Any foreseen pitfalls? > > Thomas Magma > > Not so much pitfalls, as -- why? To make your BPSK demodulation work you need to recover carrier and clock, which can be easily done if you are generating a carrier reference and demodulating. It seems like using the Geortzel Algorithm will be _very_ indirect. It's not going to save you from having to adjust the carrier frequency, it's certainly not going to save you from having to recover the clock, it's not going gain you a whit of sensitivity over demodulating, integrating and dumping, and I doubt that it's going to save you any computation beyond perhaps a table lookup for the carrier reference. -- Tim Wescott Wescott Design Services http://www.wescottdesign.com______________________________
Hi Tim I mostly agree with you Tim, and that is sort of the reason behind this posting. Preliminary calculations show that there will be some gain in computational processing speed which is my primary focus. And knowing that it shouldn't effect sensitivity, I thought that going down a path that may not have been traveled before, could have unforeseen benefits. The Goertzel is very fast and has different spectral characteristics over mixing, integrating and dumping. It's like a day or two of coding and testing. If it doesn't work out, oh well. Thomas "Tim Wescott" <t...@wescottnospamdesign.com> wrote in message news:1...@corp.supernews.com... > Thomas Magma wrote: > > > Hi folks, > > > > I am about to attempt to decode a very weak RF BPSK signal using a sliding > > Geortzel Algorithm. I need to do this for the purpose of speed and > > sensitivity. Has anyone ever tried this before? It should be possible seeing > > that you can recover both the real and imaginary portions of the signal > > using the Goertzel. I have a nice chunk of C code to do this but have only > > used the optimized Goertzel portion of the code. > > > > Can't wait to try. > > Any foreseen pitfalls? > > > > Thomas Magma > > > > > Not so much pitfalls, as -- why? > > To make your BPSK demodulation work you need to recover carrier and > clock, which can be easily done if you are generating a carrier > reference and demodulating. It seems like using the Geortzel Algorithm > will be _very_ indirect. It's not going to save you from having to > adjust the carrier frequency, it's certainly not going to save you from > having to recover the clock, it's not going gain you a whit of > sensitivity over demodulating, integrating and dumping, and I doubt that > it's going to save you any computation beyond perhaps a table lookup for > the carrier reference. > > -- > > Tim Wescott > Wescott Design Services > http://www.wescottdesign.com______________________________
I'm with Tim, I don't see how you're going to extract the modulated information in the frequency domain using the Goertzel or any other algorithm. With PSK the information is modulated in instantaneous phase, and that's hard to recover in the frequency domain. On Mon, 12 Jul 2004 18:45:15 GMT, "Thomas Magma" <s...@overtherainbow.com> wrote: >Hi Tim > >I mostly agree with you Tim, and that is sort of the reason behind this >posting. Preliminary calculations show that there will be some gain in >computational processing speed which is my primary focus. And knowing that >it shouldn't effect sensitivity, I thought that going down a path that may >not have been traveled before, could have unforeseen benefits. The Goertzel >is very fast and has different spectral characteristics over mixing, >integrating and dumping. > >It's like a day or two of coding and testing. >If it doesn't work out, oh well. > >Thomas > >"Tim Wescott" <t...@wescottnospamdesign.com> wrote in message >news:1...@corp.supernews.com... >> Thomas Magma wrote: >> >> > Hi folks, >> > >> > I am about to attempt to decode a very weak RF BPSK signal using a >sliding >> > Geortzel Algorithm. I need to do this for the purpose of speed and >> > sensitivity. Has anyone ever tried this before? It should be possible >seeing >> > that you can recover both the real and imaginary portions of the signal >> > using the Goertzel. I have a nice chunk of C code to do this but have >only >> > used the optimized Goertzel portion of the code. >> > >> > Can't wait to try. >> > Any foreseen pitfalls? >> > >> > Thomas Magma >> > >> > >> Not so much pitfalls, as -- why? >> >> To make your BPSK demodulation work you need to recover carrier and >> clock, which can be easily done if you are generating a carrier >> reference and demodulating. It seems like using the Geortzel Algorithm >> will be _very_ indirect. It's not going to save you from having to >> adjust the carrier frequency, it's certainly not going to save you from >> having to recover the clock, it's not going gain you a whit of >> sensitivity over demodulating, integrating and dumping, and I doubt that >> it's going to save you any computation beyond perhaps a table lookup for >> the carrier reference. >> >> -- >> >> Tim Wescott >> Wescott Design Services >> http://www.wescottdesign.com > > Eric Jacobsen Minister of Algorithms, Intel Corp. My opinions may not be Intel's opinions. http://www.ericjacobsen.org______________________________
Hi Eric, I not sure where you got the idea I was extracting the phase modulation from the frequency domain. I did state "that you can recover both the real and imaginary portions of the signal using the Goertzel.", and the instantaneous phase is just the Arctan of that. In fact I just got it running today. I haven't checked the sensitivity yet but I can tell you that it is extremely quick. The reason I am trying this method is because of the ability of the Goertzel to quickly process any value of N samples. This allows me to maximize sensitivity base on my RF sample rate to my bps rate. I'm currently integrating and dumping over 500 samples into a Goertzel sliding window. Thomas "Eric Jacobsen" <e...@ieee.org> wrote in message news:4...@news.west.cox.net... > I'm with Tim, I don't see how you're going to extract the modulated > information in the frequency domain using the Goertzel or any other > algorithm. With PSK the information is modulated in instantaneous > phase, and that's hard to recover in the frequency domain. > > On Mon, 12 Jul 2004 18:45:15 GMT, "Thomas Magma" > <s...@overtherainbow.com> wrote: > > >Hi Tim > > > >I mostly agree with you Tim, and that is sort of the reason behind this > >posting. Preliminary calculations show that there will be some gain in > >computational processing speed which is my primary focus. And knowing that > >it shouldn't effect sensitivity, I thought that going down a path that may > >not have been traveled before, could have unforeseen benefits. The Goertzel > >is very fast and has different spectral characteristics over mixing, > >integrating and dumping. > > > >It's like a day or two of coding and testing. > >If it doesn't work out, oh well. > > > >Thomas > > > >"Tim Wescott" <t...@wescottnospamdesign.com> wrote in message > >news:1...@corp.supernews.com... > >> Thomas Magma wrote: > >> > >> > Hi folks, > >> > > >> > I am about to attempt to decode a very weak RF BPSK signal using a > >sliding > >> > Geortzel Algorithm. I need to do this for the purpose of speed and > >> > sensitivity. Has anyone ever tried this before? It should be possible > >seeing > >> > that you can recover both the real and imaginary portions of the signal > >> > using the Goertzel. I have a nice chunk of C code to do this but have > >only > >> > used the optimized Goertzel portion of the code. > >> > > >> > Can't wait to try. > >> > Any foreseen pitfalls? > >> > > >> > Thomas Magma > >> > > >> > > >> Not so much pitfalls, as -- why? > >> > >> To make your BPSK demodulation work you need to recover carrier and > >> clock, which can be easily done if you are generating a carrier > >> reference and demodulating. It seems like using the Geortzel Algorithm > >> will be _very_ indirect. It's not going to save you from having to > >> adjust the carrier frequency, it's certainly not going to save you from > >> having to recover the clock, it's not going gain you a whit of > >> sensitivity over demodulating, integrating and dumping, and I doubt that > >> it's going to save you any computation beyond perhaps a table lookup for > >> the carrier reference. > >> > >> -- > >> > >> Tim Wescott > >> Wescott Design Services > >> http://www.wescottdesign.com > > > > > > Eric Jacobsen > Minister of Algorithms, Intel Corp. > My opinions may not be Intel's opinions. > http://www.ericjacobsen.org______________________________
Hello, could you point me to where you found the info on doing a sliding Goertzel and how it works? Regards, Steve Drake______________________________
Hi Steve, Kinda just made up the sliding Goertzel. I learned about the Goertzel from embedded.com. http://www.embedded.com/story/OEG20020819S0057 About half way down this article there is a listing for the algorithm in C. Then I just wrote a loop that slid the Goertzel down my samples. The only tricky part is that the Goertzel always has a zero phase reference every sample group (using the same coefficients). So the sliding Goertzel's arctan output will look extremely encrypted at first. A coefficient needs to be calculated based on sampling rate and frequency and then applied to the output in order to get back to correct baseband. This however takes very little processing time at baseband and can be done while the window is sliding. I guess one could recalculate the Goertzel coefficients each sample group to adjust for phase, but that would take a lot more processing power than is necessary. The above method of appling a coefficient to the baseband output appears to be working just fine. I am now trying to use this coefficient as part of a baseband tracking loop to make up for any frequency errors. Thomas Magma "Steve Drake" <s...@freenet.edmonton.ab.ca> wrote in message news:4...@4ax.com... > Hello, could you point me to where you found the info on doing a > sliding Goertzel and how it works? > > Regards, > > Steve Drake______________________________
Rick Lyons and Eric Jacobsen, who both posts here, have written an article on the sliding DFT which includes a section on the sliding Goertzel: "The Sliding DFT", IEEE Signal Processing Magazine, Volume 20, No. 2, March 2003. "Thomas Magma" <s...@overtherainbow.com> wrote in message news:EFwLc.72367$Mr4.29614@pd7tw1no... > Hi Steve, > > Kinda just made up the sliding Goertzel. I learned about the Goertzel from > embedded.com. http://www.embedded.com/story/OEG20020819S0057 About half way > down this article there is a listing for the algorithm in C. Then I just > wrote a loop that slid the Goertzel down my samples. > > The only tricky part is that the Goertzel always has a zero phase reference > every sample group (using the same coefficients). So the sliding Goertzel's > arctan output will look extremely encrypted at first. A coefficient needs to > be calculated based on sampling rate and frequency and then applied to the > output in order to get back to correct baseband. This however takes very > little processing time at baseband and can be done while the window is > sliding. > > I guess one could recalculate the Goertzel coefficients each sample group to > adjust for phase, but that would take a lot more processing power than is > necessary. The above method of appling a coefficient to the baseband output > appears to be working just fine. I am now trying to use this coefficient as > part of a baseband tracking loop to make up for any frequency errors. > > Thomas Magma > > "Steve Drake" <s...@freenet.edmonton.ab.ca> wrote in message > news:4...@4ax.com... > > Hello, could you point me to where you found the info on doing a > > sliding Goertzel and how it works? > > > > Regards, > > > > Steve Drake > >______________________________
Eric Jacobsen wrote: > I'm with Tim, I don't see how you're going to extract the modulated > information in the frequency domain using the Goertzel or any other > algorithm. With PSK the information is modulated in instantaneous > phase, and that's hard to recover in the frequency domain. > > On Mon, 12 Jul 2004 18:45:15 GMT, "Thomas Magma" > <s...@overtherainbow.com> wrote: > > >>Hi Tim >> >>I mostly agree with you Tim, and that is sort of the reason behind this >>posting. Preliminary calculations show that there will be some gain in >>computational processing speed which is my primary focus. And knowing that >>it shouldn't effect sensitivity, I thought that going down a path that may >>not have been traveled before, could have unforeseen benefits. The Goertzel >>is very fast and has different spectral characteristics over mixing, >>integrating and dumping. >> >>It's like a day or two of coding and testing. >>If it doesn't work out, oh well. >> >>Thomas >> >>"Tim Wescott" <t...@wescottnospamdesign.com> wrote in message >>news:1...@corp.supernews.com... >> >>>Thomas Magma wrote: >>> >>> >>>>Hi folks, >>>> >>>>I am about to attempt to decode a very weak RF BPSK signal using a >> >>sliding >> >>>>Geortzel Algorithm. I need to do this for the purpose of speed and >>>>sensitivity. Has anyone ever tried this before? It should be possible >> >>seeing >> >>>>that you can recover both the real and imaginary portions of the signal >>>>using the Goertzel. I have a nice chunk of C code to do this but have >> >>only >> >>>>used the optimized Goertzel portion of the code. >>>> >>>>Can't wait to try. >>>>Any foreseen pitfalls? >>>> >>>>Thomas Magma >>>> >>>> >>> >>>Not so much pitfalls, as -- why? >>> >>>To make your BPSK demodulation work you need to recover carrier and >>>clock, which can be easily done if you are generating a carrier >>>reference and demodulating. It seems like using the Geortzel Algorithm >>>will be _very_ indirect. It's not going to save you from having to >>>adjust the carrier frequency, it's certainly not going to save you from >>>having to recover the clock, it's not going gain you a whit of >>>sensitivity over demodulating, integrating and dumping, and I doubt that >>>it's going to save you any computation beyond perhaps a table lookup for >>>the carrier reference. >>> >>>-- >>> >>>Tim Wescott >>>Wescott Design Services >>>http://www.wescottdesign.com >> >> > > Eric Jacobsen > Minister of Algorithms, Intel Corp. > My opinions may not be Intel's opinions. > http://www.ericjacobsen.org I didn't say it couldn't be done -- the Goertzel algorithm behaves exactly like an integrate and dump if you look at it just right. I was only saying that by the time you wrapped it with the necessary support code to make it work you may not see much savings, and _nobody_ but you would be able to understand the code. -- Tim Wescott Wescott Design Services http://www.wescottdesign.com______________________________
I just went and read the abstract to "The Sliding DFT" It looks like a good article, one that I would enjoy reading, but they want you to pay to become a member. The opening line of the abstract to that article implies the article is referring to spectrum analysis and perhaps not to phase demodulation. This would probably use an optimized Goertzel (magnitude) sliding window and would be a different kind of beast than one used for phase demodulation. Don't think I want to shell out $147 dollars to read that article. Unless someone else knows of an cheaper way of doing so. Thomas "Jon Harris" <g...@hotmail.com> wrote in message news:2...@uni-berlin.de... > Rick Lyons and Eric Jacobsen, who both posts here, have written an article on > the sliding DFT which includes a section on the sliding Goertzel: "The Sliding > DFT", IEEE Signal Processing Magazine, Volume 20, No. 2, March 2003. > > "Thomas Magma" <s...@overtherainbow.com> wrote in message > news:EFwLc.72367$Mr4.29614@pd7tw1no... > > Hi Steve, > > > > Kinda just made up the sliding Goertzel. I learned about the Goertzel from > > embedded.com. http://www.embedded.com/story/OEG20020819S0057 About half way > > down this article there is a listing for the algorithm in C. Then I just > > wrote a loop that slid the Goertzel down my samples. > > > > The only tricky part is that the Goertzel always has a zero phase reference > > every sample group (using the same coefficients). So the sliding Goertzel's > > arctan output will look extremely encrypted at first. A coefficient needs to > > be calculated based on sampling rate and frequency and then applied to the > > output in order to get back to correct baseband. This however takes very > > little processing time at baseband and can be done while the window is > > sliding. > > > > I guess one could recalculate the Goertzel coefficients each sample group to > > adjust for phase, but that would take a lot more processing power than is > > necessary. The above method of appling a coefficient to the baseband output > > appears to be working just fine. I am now trying to use this coefficient as > > part of a baseband tracking loop to make up for any frequency errors. > > > > Thomas Magma > > > > "Steve Drake" <s...@freenet.edmonton.ab.ca> wrote in message > > news:4...@4ax.com... > > > Hello, could you point me to where you found the info on doing a > > > sliding Goertzel and how it works? > > > > > > Regards, > > > > > > Steve Drake > > > > > >______________________________