Цитата(SergEN @ Jan 5 2012, 15:32)

FFT в любом случае дает фазу, как выразился колега, "волшебного" сигнала, а не исходного; так что маловероятно.
ну так от fft нужна только точное значение частоты,
которое может быть быстрее будет посчитать с помощью ДПФ, так как частота примерно известна, просто взять несколько точек вокруг, весь спектр не нужен.
а потом уже для контретной частоты определить фазу сделав ДПФ только на этой частоте, никакого волшебства там нет.
Цитата(SergEN @ Jan 5 2012, 15:32)

А сколько времени может занять МНК на DSP средней паршивости? Мне почему-то казалось, что непозволительно много, хотя кто его знает.
для оценки можно собрать alglib и постотреть сколько времени займёт на PC.
по идее для сотни точек не так уж и страшно должно быть, синусы правда считать надо.
если грубо оценить:
выбрали начальные параметры (они, кстати, тут изначально довольно хорошо известны, каким-нибудь простым способом, например, по пересечению нуля).
посчитали ошибку (сумму квадратов разностей): по трудоёмкости сотню раз посчитать значение синуса.
потом немного поменяли по одному параметры A,w,p, опять посчитали ошибку, посмотрели в какую сторону ошибка меняется и соответственно поправили параметрыв нужную строну, и т.д.
за сколько итераций сойдётся до нужной точности - хз.
возьми характерные данные, запихай, например, в
gnuplot и посмотри что он там и как насчитает, он более менее подробный лог ведет как считал.
но даже если десяток другой итераций надо будет посчитать три раза по сотне синусов, всё равно вроде не сильно страшно для dsp средней паршивости.
зы вон даже для tms320c28x IQMath lib синус с 30битной точностью всего за 50 тактов считатет. на частоте под 100МГц - за десяток милисекунд управится поди.