[an error occurred while processing this directive]
[an error occurred while processing this directive]
|
А суть использования преобразования Фурье (или другого разложения) состоит в одном маленьком, но принципиальном отличии:
операции БПФ -> умножение на коэфф. -> ОБПФ не нужно производить для КАЖДОГО входного отсчета, эта процедура действует _параллельно_ для всего накопленного массива входного массива.
Т.е. набирается первый массив водных значений (в данном случае 256k), после его заполнения ввод переключается на второй аналогичный массив, и пока он будет заполнятся, издеваемся над первым. После всей обработки, в результате ОБПФ получаем 256k уже преобразованных выходных значений. Все эти процедуры должны быть закончены до созревания второго входного массива, далее повтор. Ес-но на выходе устройства опять ставятся два переключаемых буфера. В итоге - все преобразования выполняются один раз для группы входных отсчетов, что и обеспечивает очень большой выигрыш в производительности.
Распараллелить процесс в ПЛИСах и выполнить прямую свертку - вполне возможно и реализуемо, более того, в зависимости от условий задачи это может быть и единственным решением. Единственное замечание, что цена устройства в таком исполнении может зашкалить за тонну, что на мой взгляд не совсем оправдано. Впрочем, свои соображения по этому поводу я и постарался изложить в первом сообщении.
E-mail: info@telesys.ru