[Top][All Lists]

## Re: [Discuss-gnuradio] pll_refout_cc - finding optimum alpha & beta ??

 From: Robert McGwier Subject: Re: [Discuss-gnuradio] pll_refout_cc - finding optimum alpha & beta ?? Date: Thu, 16 Mar 2006 19:55:30 -0500 User-agent: Thunderbird 1.5 (Windows/20051201)

```Eric Blossom wrote:
```
```On Thu, Mar 16, 2006 at 05:49:34PM -0500, Charles Swiger wrote:
```
```On Thu, 2006-03-16 at 14:39 -0800, Eric Blossom wrote:
```
```On Thu, Mar 16, 2006 at 05:24:26PM -0500, Charles Swiger wrote:
```
```On Thu, 2006-03-16 at 12:35 -0800, Eric Blossom wrote:

Here's the only place they're used:

d_freq = d_freq + d_beta * error;
```
```New frequency  =  Old_frequency +   GAIN_FOR_FREQ * measured-phase-error

```
```    d_phase = mod_2pi(d_phase + d_freq + d_alpha * error);

```
```
phase is ALWAYS computed in an NCO by phase = phase + freq so this says that

```
phase_new = (phase_old + GAIN_FOR_PHASE*measured-phase-err) + NewFrequency. SO Something is amiss. You just turned your second order phase locked loop into a first order loop. It is NOT a typo.
```

```
```It's way over my head but is d_freq supposed to be in the d_phase
calculation, 2nd line? phase is mod_2pi but freq can be a very big
number, like mod_2pi(100000 + 1.572849). That is I'm USING very big
numbers for max_freq and min_freq - don't suppose they're normalized
somehow.
```
```OK.  I can see why that would be a problem.  mod_2pi is optimized for
the expected "close in case" (symmetric around zero), thus the phase
isn't *really* getting folded down to [-pi,pi].
```
Try changing mod_2pi to make the bounds check and then compute the
```modulus if it needs to using division, floor, multiplication and
subtraction. It's not cheap, but it'll probably compute the right

```
```Uh, I just mutated the "+ d_freq" term out, guessing a typo, and got a
very well behaved organism. Maybe suitable for synchronous AM carrier
detection.
```
```
```
```

--
AMSAT VP Engineering. Member: ARRL, AMSAT-DL, TAPR, Packrats,
NJQRP/AMQRP, QRP ARCI, QCWA, FRC. ARRL SDR Wrk Grp Chairman
Laziness is the number one inspiration for ingenuity.  Guilty as charged!

```