Цитата(_Anatoliy @ Jun 18 2013, 13:21)

Спасибо за ответ,начал поиск литературы.
Как я понял - быстрая свёртка это и есть то что я назвал в топовом сообщении "в частотной области". А здесь мне не понятен один момент:для FFT я набираю массив данных длиной 2^N,но может статься что в этом массиве окажется например 30% импульса ЛЧМ,следующие 70% попадут уже в следующий набор данных.Это как то скажется на качестве корреляции?Мне сдаётся что вместо одного пика на выходе согласованного фильтра я получу два пика(для первого и второго набора данных).
Нужно использовать результаты предидидущих блоков. Как вариант см. код ниже. Используется тот факт что свертка суммы последовательностей есть сумма сверток. Хорошо написано было про это кажется у Рабинера с Голдом.
Код
N = 13;
x = randn(1, 7*N); % signal
h = randn(1,N); % impulse response of a filter
yref = conv(x, h);
y = zeros(1, length(x)+length(h)-1);
% size of FFT is 2*N !!!
H = fft([h, zeros(1,N)]);
prev_hx = zeros(1, N-1);
for i=1:7
X = fft([x((i-1)*N+1 : i*N), zeros(1,N)]);
hx = ifft(H.*X);
% прибавляем предидущий хвост
hx(1:N-1) = hx(1:N-1) + prev_hx;
prev_hx = hx(N+1:end-1);
% запоминаем "хвост"
y((i-1)*N+1 : i*N) = hx(1:N);
end
figure(1);
% Результаты вычисленные двумя способами идентичны
plot(1:7*N, yref(1:7*N), 1:7*N, y(1:7*N))