Preamble detector in Simulink for frame synchronization problem



Season's greetings! I'm currently trying to build a preamble detector
for my OFDM transceiver which i have built in Simulink for the purpose
of frame synchronization. This is kinda a lenghty post, but i hope
those who can help me please take some time and take a look at it.
Appreciate it!

This is what i have done so far. This is autocorrelation of a PN
sequence:
http://geocities.com/antonio_magma/corr/corrawgn.gif
I used 64 IFFT to convert the binary bits into real-valued time domain
(with conjugate symmetry), pass through AWGN and then correlated. This
is the resulting graph after autocorrelation:
http://geocities.com/antonio_magma/corr/corrawgngraph.gif
It looks fine with the first sample having a magnitude as compared to
the others.

Next, i've replaced autocorr with cross-corr just to observe the
differences:
http://geocities.com/antonio_magma/corr/xcorrawgn.gif
At the 2nd input of the xcorr i've connected it to the IFFT output to
act as a comparison with the received signal after AWGN. And the result
i got is this:
http://geocities.com/antonio_magma/corr/xcorrawgngraph.gif

First question:
Why is there such a huge difference with the results? In the 2nd graph
i'm getting almost noise like signal. Does it mean i should use
autocorr instead of xcorr with my model?

Next, because typically the preamble is repeated and transmitted
multiple times for synchronization, i've tried to concatenate the
output of IFFT forming 4 identical sequences to be transmitted and
correlated.

This is what i built:
http://geocities.com/antonio_magma/corr/4corrawgn.gif
And the result is:
http://geocities.com/antonio_magma/corr/4corrawgngraph.gif
Again looks pretty nice

And for the xcorr:
http://geocities.com/antonio_magma/corr/4xcorrawgn.gif
http://geocities.com/antonio_magma/corr/4xcorrawgngraph.gif

Second question:
With reference to the 4corrawgngraph, the 1st peak became even larger
which i guess could be due to the superposition of the 4 sequences. But
the output i expected was:
http://geocities.com/antonio_magma/corr/corrop.gif

My final objective is to build a correlator which produces and output
like this:
http://geocities.com/antonio_magma/corr/yunchiu-corr.gif

I understand the background theory behind double correlation but how do
i implement it to obtain an output like yunchiu-corr? Guys, if it's
something that i've done wrong with my simulation (which i think is the
case) or i should have designed it differently, any ideas please let me
know coz i've been stuck at this for quite some time. Thx guys...

.


Quantcast