# Forum: GNU Radio Problem with spectrum sensing using cyclostationary features

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
on 2009-06-09 12:37
```Hi,

I'm currently working on a Cyclostationary Feature Detector (CFD), used
for
spectrum sensing in a cognitive radio system, as a part of my thesis
project.

I've implemented a working prototype in MATLAB and I now want to port it
to
GNU Radio/USRP1, however I ran into problems.

The algorithm I've used to calculate the Spectral Correlation Function
(SCF)
looks something like:

1. Read n samples into vector z
2. Multiply vector z with exp(-i*pi*alpha*t) store in x (alpha is the
cyclic
frequency, which will take a series of values for each vector z, t is
the
time)
3. Multiply vector z with exp(i*pi*alpha*t) store in y
4. Taper x,y with a Hann-window
5. Take the N-point FFT of x,y (N < n)
6. Conjugate X (the FFT of x)
7. Multiply X* and Y
8. Repeat from 5 until all n samples are processed and sum up the
results
from 7
9. Normalize the result from 8
10. Repeat from 2 util the entire series of alpha-values are processed

At the end we'll end up with a vector of normalized FFTs, which are the
correlations of frequency shifted samples.

Now to the problem, how do I handle the streams with the changing value
of
alpha? My current thought is to use message queues and blocking threads.
Is
there another (better) way to do this?

I'm thankful for all the input I could get on the coding structure since
I'm
new to Python and C++.

Regards,
Dan
--
View this message in context:
http://www.nabble.com/Problem-with-spectrum-sensin...
Sent from the GnuRadio mailing list archive at Nabble.com.```
This topic is locked and can not be replied to.