Надо определиться, где стоит АЦП. Если после аналогового согласованного фильтра, то достаточно двух выборок на бит. При этом должна быть возможность двигать фазу выборки (управлять таймером, пускающим АЦП). Если же согласованный фильтр цифровой, то желательно иметь хотя бы 4 выборки. Фазу можно двигать как управляя таймером, так и интерполируя между выборками Если выборок > 8...16, то можно двигать фазу дискретно. В любом случае отсчеты с выхода согласованного фильтра берутся 2 раза за битовый интервал. Для четырехпозиционного сигнала могу навскидку предложить: err[k] = (x[k-0.5] - (x[k]+x[k-1])/2)*(x[k]-x[k-1]) или (сигнал должен быть симметричен относительно 0, позиции: -A,-A/3,A/3,A): err[k] = x[k-0.5]*( abs(x[k]) - abs(x[k-1]) )
|