Цитата(Denis C @ Dec 9 2008, 18:37)

Чтобы получить 20 мгц, нужно 88мгц сдецимировать в 22 раза, а потом интерполировать в 5 раз.
Так херня получится. Если 88 МГц сдецимировать в 22 раза, то и получите полосу меньше 4 МГц. Её потом можно конечно в 5 раз проинтерполировать, но сигнала шире 4 МГц там уже никогда не появится.
Есть два варианта.
1) Пересэмплировать 22 -> 20. Нужно проинтерполировать его до 220 МГц и продецимировать в 11 раз.
2) Пересэмплировать 88 -> 20. Нужно проинтерполировать до 440 МГц и продецимировать в 22 раза.
Первый вариант страдает тем, что данные 20 МГц будут получаться с запозданием относительно 22 МГц.
Оба варианта звучат страшно, но если сделать полифазный фильтр, то накладных расходов будет едва ли больше чем у простого дециматора. Скажем, если у фильтра будет 66 отвода, то нужно только 6 умножителей, если я ничего не путаю. Правда они должны работать на 10-кратной частоте. Либо умножителей сделать побольше, а их частоту пониже.
Я (пока) не программирую ПЛИС, поэтому если что не так, то сорри.