[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
How to use Correlation Estimator?
From: |
Lukas Haase |
Subject: |
How to use Correlation Estimator? |
Date: |
Tue, 28 Apr 2020 02:55:52 +0200 |
Hello,
I was playing for some time with the Polyphase Clock Sync to get the correct
sampling times of my received OOK signal.
It never perfectly worked and usually broke when I put it into more complicated
flowgraphs (in my latest attempts, despite working initially, it made the
entire flowgraph freeze after some time).
My main scenario is that I have short bursts of data (as opposed to a
continuous stream) and I do have zero frequency offset (only a random time
shift each burst).
My understanding is that these closed-loop approaches are not the right way to
go anyway and an open-loop approach (aka Correlation Estimator, Correlate
Access Code (Tag/Tag Stream), Correlate and Sync etc) are the correct way in
this scenario.
Question 1: Is it correct that for small data bursts I better use a correlation
based approach with a small preamble?
Second, I just don't understand how the Correlation Estimator block works.
Suppose I deliberatly add a "Delay" block (delay X) to simulate delay in my
flowgraph.
After the delay block I have some timing compensation (Correlation Estimator).
I would expect that if I plot the signal before the delay and after the
correlation estimator block, that their relative delay would be constant as I
vary X.
However, this is not the case.
Do I understand correctly that "Correlation Estimator" only inserts tags but
does not alter the signal in any way? (in partiulat, it does not align
anything)?
What is then the correct block to use for the actual alignment?
corr_est_cc reads:
* The time_est tag can be used to adjust the sampling timing
* estimate of any downstream synchronization blocks and is
* currently implemented by the gr::digital::pfb_clock_sync_ccf
* block.
Is this a typo? Why would a Polyphase Clock Sync block take over such a task?
At a more basic level, why would the Polyphase Clock Sync block come after the
correlation block?
First, why would I need them both at the same time (as I understand, they are
alternative approaches for time alignment)?
Second, I would expect the Polyphase Clock Sync to come *first* (to obtain
symbols from samples) and *then* the Correlation block to align the symbols
(find the start).
Thanks,
Lukas
PS: I've seen a bunch of suggestions to look at "example_corr_est.grc".
However, the Correlation Estimator is not connected to anything except a QT
Time Sink and nothing is aligned.
Similarly, in example_corr_est_and_clock_sync.grc no actual timing correction
is performed.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- How to use Correlation Estimator?,
Lukas Haase <=