BatchDrake / sigutils

Small signal processing utility library
https://batchdrake.github.io/sigutils
GNU General Public License v3.0
76 stars 29 forks source link

Limit carrier frequency in Costas PLL #5

Open daniestevez opened 6 years ago

daniestevez commented 6 years ago

Currently, the carrier frequency for the Costas loop is not limited: https://github.com/BatchDrake/sigutils/blob/master/sigutils/pll.c#L242

This can cause a false lock. For instance, an 8-PSK signal may lock with an order 4 Costas PLL at a carrier frequency equal to the actual carrier frequency +/- pi/4 radians/symbol.

The carrier frequency should probably be limited to an offset of less than pi/8 radians/symbol.