|
From: | Andy Walls |
Subject: | Re: Symbol timing estimator block and CPM modulations |
Date: | Mon, 29 Jun 2020 15:42:55 -0400 |
User-agent: | Evolution 3.32.5 (3.32.5-1.fc30) |
On Mon, 2020-06-29 at 14:11 -0500, Alex Roberts wrote: Copy that. Would a preamble with better properties like a gold code allow to raise that threshold? I guess I need to dig into what that threshold means. On the examples I’ve seen it’s always 0.9 or higher. You could use a Gold code. Although the length 13 Barker code is probably good too, just to play around with. Yeah, so the fixed correlation threshold algorithm is somewhat staright forward, but I caused to to have a bit of a wrinkle. You'll notice in the algorithm, it checks using the square of the correlation's magnitude. That's because long ago, to save CPU cycles, I coded the block to compute the magnitude squared of the correlation and check against that. Taking the square-root of every I^2+Q^2 sample of the correlation output seemed like a waste of CPU to me at the time. I now regret that decision, as it has been a source of confusion for people working with this block, oh well. The block has undergone a few revisions regarding the thresh holding algorithm, since I last touched it myself. I know that the dynamic algorithm only works with preambles with good correlation properties (gold codes, barker codes). The non-adaptive algorithm is sensitive to the incoming signal level compared to the reference level of the correlation filter taps. In hindsight, I probably should have had my correlation filter taps script normalize h_iq to some nominal gain value. Anyway, I highly recommend you do test correlation runs in Matlab/Octave first, duplicating the corr_est block's thresh hold crossing detection algorithm, before jumping into a GNURadio implementation. The analysis in Matlab/Octave will much better inform you on how your GNURadio parameters should be set. Regards, Andy On Monday, June 29, 2020, Andy Walls <andy@silverblocksystems.net> wrote:On Sun, 2020-06-28 at 16:31 -0500, Alex Roberts wrote: |
[Prev in Thread] | Current Thread | [Next in Thread] |