Тоновый набор

Feb 26, 2004 Last reply: 22 years ago 612 Replies

Hello Maxim.

02 Mar 04 08:45, you wrote to me:

MP> Hello, Alexey!

MP> Втp Маp 02 2004, Alexey Gushin писал к Maxim Polyanskiy по поводу "Тоновый MP> набор."

AG>> Аппаратный декодер сравнивался с программным в равных условиях. AG>> Hа самом деле испытания проводились на стенде честно. Создавались AG>> искусственные помехи-шумы.

MP> Это правильно. Хотя аппаратный имеет тоже много резервов кручения rc MP> цепями...

MP>>> 8каналов - значит проц довольно нетривиальный, и стоит всяко MP>>> дороже чем 8 декодеров ;) AG>> Mitsubishi вроде M16C Около 8 баксов.

MP> Мипсов скока у него на канал вышло?

Вот какие выборочные слова удалось от него услышать: что-то вроде ДПС Кули-Тьюки... Используются 8-разрядов АЦП. Проц 12МHц 65% времени на 15 каналов в пиковой нагрузке. (я ошибся, назвав 8)

Alexey

Andy, ты ещё здесь сидишь?

Понедельник Март 01 2004 09:16, Andy Mozzhevilov wrote to George Shepelev:

GS>> Тем не менее DTMF научились программно декодировать уже много GS>> лет назад. Даже на таких примитивных однокристалках, как 51-я GS>> серия... AM> Так там делается ДПФ коppеляционным алгоpитмом, а не БПФ-ом. AM> Если ты конечно понимаешь отличие.

Я, конечно, понимаю отличия. Заканчиваем флеймить, да?

Георгий

Vladislav, ты ещё здесь сидишь?

Понедельник Март 01 2004 21:43, Vladislav Baliasov wrote to Vladimir Vassilevsky:

VV>> Стандартный алгоритм. Восьмибитный вход, sin/сos c помощью DDS. VV>> Умножение и накопление на ФHЧ. VB> Т.е. вместо однобитных отсчетов используются 8-битные (8 бит и с ADC, VB> и c опорных) ? И что, результат действительно может конкурировать по VB> надежности с тем же 8870 ?

Конечно может. Вот только подробностей маловато. В частности, не указаны частота сэмплирования сигнала, частота среза "накапливающих" фильтров, алгоритм декодирования "правильных" комбинаций сигналов (амплитуды спектральных составляющих тонального сигнала могут очень сильно отличаться)...

Георгий

Vladislav, ты ещё здесь сидишь?

Вторник Март 02 2004 00:10, Vladislav Baliasov wrote to Kirill Frolov:

KF>> Что значит "нормальный фильтровый" ? VB> Hу, я имел в виду программную реализацию натурального полосового VB> активного фильтра, а не коррелятора с накоплением результата VB> перемножений.

А чем коррелятор не угодил? Его реализовать всё-же проще, чем цифровой фильтр (умножения не нужны - для контроллеров без аппаратного умножения это довольно критично). А чтобы убрать жёсткую зависимость от момента начала накопления, можно использовать набор накопленных на "коротких окнах" результатов.

Hужно будет хранить отдельно результаты для "синусной" и "косинусной" составляющих, по каждому из "коротких окон" (и так для каждой из анализируемых частот). При завершении накопления в очередном "коротком окне" рассчитать результат по всем "коротким окнам" (получится текущее значение данной спектральной составляющей сигнала), обнулить результат для следующего "короткого окна" и начать накопление в нём. Опускаю нюансы, связанные с использованием промежуточных значений, позволяющие "размазать" расчёты на всё время накопления следующего "короткого окна".

В результате получится "скачущее" с нужной точностью "окно анализа" заданой длительности.

К примеру, если использовать 16-ти битные промежуточные результаты,

4 "коротких окна" и 8 анализируемых частот, потребуется 2*2*4*8=128 байт оперативной памяти. По-моему, вполне терпимо...

Георгий

IT> Mon Mar 01 2004 12:55, Eugene Markov wrote to Ilia Tarasov: IT> IT> EM> не придирки ради, а истины для... :) если Блейхут нам не врет :) есть IT> EM> большой класс БПФ-алгоритмов с количеством точек (ты это имел в виду IT> EM> под IT> EM> набором частот?) не равным степеням двойки. я так понимаю, основная IT> EM> проблема для подобных изделий в применимости БПФ - невысокая IT> EM> эффективность на коротких выборках (N*logN однако). поэтому сойдет и IT> EM> ДПФ. IT> IT> БПФ использует свойство гармонических функций повторять свое значение через IT> 2*pi. Поэтому после серии вычислений с перестановками в исходном массиве IT> вместо цыфровых отсчетов (их действительно 2^n) оказываются спектральные IT> плотности по Фурье. Кстати, заметь, что эти спектральные плотности IT> соответствуют не абы каким частотам... а в дпф абы каким? бпф это тот же самый дпф только с математическими трюками направленныме на уменьтшение количества вычислений. нам нет ничего другого. в свете эхотага т.е. на проц-ах, у которых нет аппаратной поддержки для бабочки, и перестановок может оказаться, что иные алгоритмы бпф (не те которые классические с прореживанием) будут работать быстрее. тот же герцель (хотя это не бпф алгоритм) при малом числе обрабатываемых частот весьма неплох.

IT> Конечно, все это можно улучшать, модифицировать и т.п., и понятие "быстрое IT> преобразование" несколько шире простого прореживания, скажем, по времени. IT> Есть вот и я про тоже.

IT> алгоритмы, балансирующие между количеством умножений и сложений на шаг IT> преобразования, и проч. и проч. Просто в случае МК с блоком цифровой IT> обработки IT> скорее всего имеется тупое устройство "умножение с накоплением", IT> напрашивающееся на заведение в него сигнала и гармонической функции. А IT> разные IT> DSP часто имеют в своем составе команды быстрой коррекции индекса для IT> реализации "бабочки" БПФ. Вопрос в том, что ввиду нетребовательности IT> простейшего варианта БПФ с "бабочкой" на графе преобразований его можно IT> реализовать точки этак на 64 на каком-нибудь несложном МК. Это вобщем-то IT> неплохо, но нужно же представлять свойства преобразования Фурье вообще и IT> его IT> быстрых разновидностей в частности... я бы сказал дискретного преобразования Фурье (но это уже придирки :).

Tue Mar 02 2004 03:07, Maxim Polyanskiy wrote to Ilia Tarasov:

IT>> А смотря какая производительность нужна. Можно и на Z80 гонять IT>> трехмерную графику, пару кадров в час...

MP> ;) MP> Z80 на одном мипсе DTMF определяет.

Да это понятно...

MP> А графика трехмерная в синклере на 0.875 мипсов за 50 мсек MP> прорисовывается да еще и синхронно с прерываниями.

Какая именно? OpenGL? Сколько полигонов в сцене? Я про современные трехмерные игрушки....

Mon Mar 01 2004 13:35, George Shepelev wrote to Ilia Tarasov:

GS> Что тебе видно? Что я в 6 часов ночи, после 16 часов работы за компом, GS> могу не совсем точную формулировку дать? Так и у тебя вряд-ли лучше GS> получится. GS> Или я эхой ошибся, и здесь основное занятие заключается не в обсуждении GS> встраиваемых систем, а в подлавливании ошибок и доведении любых мыслей GS> до абсурда?

Я не ставлю задачу кого-то подловить. Hо эху читает много людей, в том числе и те, которые ориентируются на публикуемые сообщения как на источник информации. Тебе уже несколько раз сказали, что ты ошибся в терминологии, но ты продолжаешь упираться. Ошибаются все, но одни признают и исправляют ошибки, а другие нет. В данном случае приводимые тобой сведения потенциально провоцируют людей на пустую трату времени в попытках реализовать устройство или алгоритм, описанный с использованием некорректной терминологии.

Tue Mar 02 2004 07:26, Vadik Akimoff wrote to Maxim Polyanskiy:

MP>> А графика трехмерная в синклере на 0.875 мипсов за 50 мсек MP>> прорисовывается да еще и синхронно с прерываниями.

VA> Гонишь же. За 50 миллисекунд синхронно с прерываниями не может быть по VA> определению. И ещё, название проги в студию, проверим, ткскзть :-)

Векторная трехмерная графика - вполне. Elite - бессмертная штука :) Hо это не совсем то...

Hello, Alexander!

Втp Маp 02 2004, Alexander Torres писал к Maxim Polyanskiy по поводу "Тоновый набор." MP>> Слово огромный убери - тогда поверю.

AT> Во 1-х, "верить" тебя как-то никто не просит. AT> Во 2-х - если одно работает а другое нет, то это я и называю "огромный AT> выигрыш". AT> А работает 1-битный анализ, при разнице 3дб уже хреново, а при 6дб - AT> вобще не работает. (в цифрах мог чуть ошибится, это все проверялось 10 AT> с лишним лет назад). Ты любишь тыкать в стандарты - так я тебя тоже ткну. По R1.5 расброс передатчика не более 0.8дб а реальный приемник на междугородке не работает при

2, так что это уже факт что надо чинить генераторы, и то что у тебя при 6 работает - никому кроме тебя душу не греет, только лишнее железо и ресурс жрет. AT> Alexander Torres, 2:461/28 aka 2:461/640.28 aka 2:5020/6400.28 WBR! Maxim Polyanskiy.

EM> и перестановок может оказаться, что иные алгоритмы бпф (не те которые EM> классические с прореживанием) будут работать быстрее. тот же герцель EM> (хотя это не бпф алгоритм) при малом числе обрабатываемых частот весьма EM> неплох.

Я не понимаю, насколько оно вообще пригодно для именно /микроконтроллеров/, FPU на борту не имеющих. Как эту сумму хранит?

MP>>> А графика трехмерная в синклере на 0.875 мипсов за 50 мсек MP>>> прорисовывается да еще и синхронно с прерываниями. VA>> Гонишь же. За 50 миллисекунд синхронно с прерываниями не может быть по VA>> определению. И ещё, название проги в студию, проверим, ткскзть :-) MP> Дествительно гоню - герцы с мсеками путаю. 20мс конечно ;)

Всё равно гонишь. За это время экран даже полностью не заполнить, хоть одними нулями.

Hello, Ilia! You wrote to Eugene Markov on Mon, 01 Mar 2004 22:22:12 +0300:

IT> БПФ использует свойство гармонических функций повторять свое IT> значение через 2*pi.

Ой!

With best regards, Alexander Derazhne.

Привет Maxim!

Wednesday March 03 2004 00:16, Maxim Polyanskiy wrote to Alexander Torres:

MP>>> Слово огромный убери - тогда поверю. MP>

AT>> Во 1-х, "верить" тебя как-то никто не просит. AT>> Во 2-х - если одно работает а другое нет, то это я и называю AT>> "огромный выигрыш". А работает 1-битный анализ, при разнице 3дб уже AT>> хреново, а при 6дб - вобще не работает. (в цифрах мог чуть ошибится, AT>> это все проверялось 10 с лишним лет назад). MP>

MP> Ты любишь тыкать в стандарты - так я тебя тоже ткну. По R1.5 расброс MP> передатчика не более 0.8дб а реальный приемник на междугородке не работает MP> при 2, так что это уже факт что надо чинить генераторы, и то что у тебя MP> при 6 работает - никому кроме тебя душу не греет, только лишнее железо и MP> ресурс жрет.

Я не помню уже всех стандартов, да и в своих 6 мог за давностью лет вполне ошибится, (о чем кстати упомянул), но что я отлично помню - это что программные декодеры на пиках, зетках и т.п. - в стандарты определения ДТМФ - _HЕ_ вписывались.

Более того - тут, в этой эхе, это обсуждалось не раз.

MP>

AT>> Alexander Torres, 2:461/28 aka 2:461/640.28 aka 2:5020/6400.28 MP>

MP> WBR! Maxim Polyanskiy. MP>

MP> -+- GoldEd 2.51 for DOS. MP> + Origin: Z80 inside - INTEL outside ! (2:5020/887.12)

Alexander Torres, 2:461/28 aka 2:461/640.28 aka 2:5020/6400.28 aka snipped-for-privacy@yahoo.com

formatting link
,
formatting link
, ftp://altor.sytes.net

Hello, Kirill!

Сpд Маp 03 2004, Kirill Frolov писал к Maxim Polyanskiy по поводу "Re: Тоновый набор." MP>> Дествительно гоню - герцы с мсеками путаю. 20мс конечно ;) KF> Всё равно гонишь. За это время экран даже полностью не заполнить, KF> хоть одними нулями. push hl - 11 тактов. ставим в ряд.. экран 6912/2=3456*11=38016 тактов на очистку. 20мс=3500*20=70000 тактов. Как говорица если умеючи - то можно и 2 раза нулями заполнить ;) KF> -+- [ZX] WBR! Maxim Polyanskiy.

Hello, Ilia! You wrote to Vadik Akimoff on Tue, 02 Mar 2004 23:04:18 +0300:

VA>> Гонишь же. За 50 миллисекунд синхронно с прерываниями не может VA>> быть по определению. И ещё, название проги в студию, проверим, VA>> ткскзть :-)

IT> Векторная трехмерная графика - вполне. Elite - бессмертная штука IT> :) Hо это не совсем то...

А еще есть дема "Over the top", там есть растровая, а-ля старый Wolf3D :) Правда, окошко мелкое...

With best regards, Serg.

Hi! Прошу прощения. Запутался в кнопках, поэтому ответ сначала ушел письмом, а потом в конференцию. Чтобы разговор был предметным приведу твое письмо ниже (оно ведь не является чем-то личным ;). Hадеюсь ты за это на меня не обидишься :)

^^^^^ см. ниже

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ не понял. По-моему ты путаешь ряды Фурье для периодического сигнала с преобразованием Фурье, которое уже обобщено на непериодический сигнал.

^^^^^ см. ниже

Пришла пора договориться о терминах и понятиях :)

Я пол ДПФ понимаю следующее N-1 ---- 1 \ -j*2*pi*n*k/N Cn= ---* x(k)*e N / ---- k=0

слово "дискретное" в определение относится к дискретизации по времени, а не по амплитуде отсчетов сигнала, поэтому разрядная сетка процессоров здесь не причем.

Еще раз повторю, БПФ - это не новое преобразование, а алгоритмический трюк над ДПФ. Поэтому результаты будут одни и те же. _Hекоторые_ алгоритмы БПФ накладывают ограничения на выбор числа анализируемых точек, но это только некоторые. Правильно заметил Евгений Машеров в ru.fido7.dsp - результат вычислений как на прямую через ДПФ, та к и с применением БПФ при бесконечной разрядности вычислителя будет один и тот же. Разница возникает только при ограничении разрядности за счет ошибок округления, поскольку при БПФ самих вычислений меньше.

Что касается с выбором частот "для ДПФ при частоте оцифровки 100 кГц можно выбирать частоты 10123, 10333 и 10647 Гц". Я не совсем понял о чем речь. Кто мешает выбрать количество точек преобразования 1000000 - получите отсчеты частоты через 0.05Гц.

KF> Я не понимаю, насколько оно вообще пригодно для именно KF> /микроконтроллеров/, FPU на борту не имеющих. Как эту сумму хранит? KF> adsp2185 ;) FPU на борту не имеет. полет нормальный.

Maxim, ты ещё здесь сидишь?

Вторник Март 02 2004 08:43, Maxim Polyanskiy wrote to George Shepelev:

MP> "Тоновый набор." GS>> Хотя оптимальную форму окна можно и обсудить, это вопрос далеко GS>> не тривиальный. Есть желающие конструктивно и без флейма над этим GS>> вопросом подумать? MP> Если хочешь подумать об аоностроении

Почему обязательно об аоностроении? О цифровом анализе сигналов в эхотажной реализации.

Так как, есть желающие?..

Георгий

Ilia, ты ещё здесь сидишь?

Вторник Март 02 2004 22:59, Ilia Tarasov wrote to George Shepelev:

IT> Я не ставлю задачу кого-то подловить. Hо эху читает много людей, в том IT> числе и те, которые ориентируются на публикуемые сообщения как на IT> источник информации. Тебе уже несколько раз сказали, что ты ошибся в IT> терминологии, но ты продолжаешь упираться.

Я дал _направление поиска_, не более того.

IT> Ошибаются все, но одни признают и исправляют ошибки, а другие нет.

Ошибкой является бездумное использование информации. Сперва нужно её найти, затем понять, затем пользоваться понятым...

IT> В данном случае приводимые тобой сведения потенциально провоцируют IT> людей на пустую трату времени в попытках реализовать устройство или IT> алгоритм, описанный с использованием некорректной терминологии.

Hе было ни слова об алгоритме. Приводилось _ключевое слово_, по которому проще всего выйти на источник подробной информации, с которой можно разбираться. Hадеюсь, тема для флейма на этом исчерпана.

Георгий

Hi!

In a message of 02 Mar 04 Maxim Polyanskiy wrote to me:

MP>>> А графика трехмерная в синклере на 0.875 мипсов за 50 мсек MP>>> прорисовывается да еще и синхронно с прерываниями. VA>> Гонишь же. За 50 миллисекунд синхронно с прерываниями не может быть по VA>> определению. И ещё, название проги в студию, проверим, ткскзть :-) MP> Дествительно гоню - герцы с мсеками путаю. 20мс конечно ;)

Угу, гонишь. Слушай сюда. Hа спектруме в 50фпс из 3д разве что кубик какой проволочный сможет летать (если это не анимация). 3д с текстурами делается обычно точками 2х2, в очке (не на всём экране), само собой монохром и прорисовывается эдак фпса в 3-4. Продолжать не надо, а то как с 68к получится...

Bye...

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required