|
Система остаточных классов, для проебразования фурье |
|
|
|
Jan 12 2011, 05:33
|

Гуру
     
Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874

|
Цитата(Zelepuk @ Jan 12 2011, 10:57)  В чём минусу и плюсы такого подхода и каковы особенности аппаратной реализации. Быстрые точные целочисленные свертки реализовывать, например. Цитата(Zelepuk @ Jan 12 2011, 10:57)  Всё что нашёл в интернете по данному вопросу изобилует математическими формулами и написано учёными для учёных... Математика - она вообще такая, пишется учеными для ученых и инженеров. Если вам это не нравится - смените профессию.
--------------------
Пишите в личку.
|
|
|
|
|
Jan 12 2011, 05:59
|
Знающий
   
Группа: Участник
Сообщений: 634
Регистрация: 27-10-10
Пользователь №: 60 464

|
Цитата(Oldring @ Jan 12 2011, 11:33)  Быстрые точные целочисленные свертки реализовывать, например.
Математика - она вообще такая, пишется учеными для ученых и инженеров. Если вам это не нравится - смените профессию. если не хотите рассказать, то зачем время своё тратить на указывание, что кому делать. Я говорю о том что можно написать формулы с кучей мат. знаков и прочим. Описать всё это терминами сложнейшими, которые по сути имеют легкочитаемые синонимы, и гордиться что ты книжный червь и для таких же и пишешь. А можно писать просто и лаконично с ориентацией на практику. Я всё же склонен различать литературу для инженеров и литературу для учёных. Хотя и граница несколько размыта. Вот напрмиер, если взять ЦОС. Есть очень хорошие авторы (например Кестер и Стивен В. Смит), которые так и утверждают в предисловии, что книга написаня для практиков и лишена глубоких математических выкладок. ___________________________________________________________________________ Всё же кто нибудь может написать по пунктам какие операции производим над выборкой отсчётов сигнала, когда делаем Фурье с применением остаточных классов?
|
|
|
|
|
Jan 12 2011, 09:18
|
Знающий
   
Группа: Участник
Сообщений: 634
Регистрация: 27-10-10
Пользователь №: 60 464

|
Цитата(Oldring @ Jan 12 2011, 14:14)  Не читал. Скажите, а применения обычного комплексного ДПФ вы именно по этим книгам изучали, значит? ну и поним в том числе... а в чём дело?
|
|
|
|
|
Jan 12 2011, 09:40
|

Гуру
     
Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237

|
Тогда и я за компанию спрошу. Возможно ли использовать для получения свертки вместо преобразования Фурье какое-нибудь другое преобразование типа ... э... меандроподобных , т.е. таких, где базис образован не гармониками, а функциями, могущими принимать не более трех дискретных значений: 0, +1, -1? Если да, то как такое преобразование называется? Только не отвечайте ТЧП, а конкретно. Например, я знаю преобразование Уолша-Адамара, но оно для получения свертки, кажется, не годится.
|
|
|
|
|
Jan 12 2011, 09:50
|

Гуру
     
Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874

|
Цитата(Xenia @ Jan 12 2011, 15:40)  Тогда и я за компанию спрошу. Возможно ли использовать для получения свертки вместо преобразования Фурье какое-нибудь другое преобразование типа ... э... меандроподобных , т.е. таких, где базис образован не гармониками, а функциями, могущими принимать не более трех значений: 0, +1, -1?Можно использовать подходящее ПФ в подходящем кольце вычетов, если оно существует. Что не означает, что нельзя использовать и другие быстрые алгоритмы сверток. Для теоремы о свертке, насколько я помню, важно, что преобразование построено с использованием нетривиального корня из единицы. В Z/3 существет желаемое вами ПФ длиной 2, базисные функции которого принимают значения толлько +1 и -1. С помощью него тривиально вычисляется циклическая свертка длиной 2.
--------------------
Пишите в личку.
|
|
|
|
|
Jan 12 2011, 10:23
|
Знающий
   
Группа: Участник
Сообщений: 634
Регистрация: 27-10-10
Пользователь №: 60 464

|
Цитата(Oldring @ Jan 12 2011, 15:31)  Да просто Фурье он и есть Фурье. Для тех, кто его понимает. От кольца алгоритмы зависят слабо - соотношения там алгебраические. Фурье-то я понимаю. Не совсем понятна идея остаточных классов. Вот получили выборку например с АЦП, что далбше с ней происходит?
|
|
|
|
|
Jan 12 2011, 11:02
|
Знающий
   
Группа: Участник
Сообщений: 634
Регистрация: 27-10-10
Пользователь №: 60 464

|
Цитата(Oldring @ Jan 12 2011, 16:34)  Дальше вычисляете вычеты. Дальше для каждого модуля вычисляете свертку подходящим алгоритмом в кольце вычетов по этому модулю, например, через Фурье. Дальше восстанавливаете фильтрованную последовательность при помощи Китайской теоремы об остатках исходя из предполагаемого отсутствия переполнения. Так как каждый модуль мал, умножать в кольце по этому модулю можно быстрее. И переполнения арифметики могут вылезти только в самом конце при возврате к нормальным числам.
Только сейчас эффективнее воспользоваться умножителем в FPGA IMHO. Это уже чтото! Спасибо. Где здесь распаралеливание применяется (что так актуально для FPGA)? А вот какие приемущества? Понимаю что прирост производительности. И есть ли недостатки у такого подхода?
|
|
|
|
|
Jan 12 2011, 16:09
|

Гуру
     
Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874

|
Цитата(Zelepuk @ Jan 12 2011, 17:02)  Где здесь распаралеливание применяется (что так актуально для FPGA)? А вот какие приемущества? Понимаю что прирост производительности.
И есть ли недостатки у такого подхода? Вообще говоря, сложность реализации однотактного умножителя пропорциональна квадрату длины перемножаемых слов. Поэтому, вообще говоря, разбив слова длиной N*M бит на N модулей по M бит, можно упростить умножения при вычислении свертки, жрущие основные ресурсы, в N раз. Конечно, в реальности не всё будет так идеально. Да и если в FPGA используются аппаратные умножители, выполняющие любое умножение за такт, то работа в вычетах может наоборот усложнить реализацию, так как потребует только больше умножителей. Не всё коту масленница.
--------------------
Пишите в личку.
|
|
|
|
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|