Перейти к содержанию
    

Грубый подсчет производительности реализции алгоритма

Нет не ошибаетесь - конечно надо брать весь 32-х битный результат, просто в конкретной реализации

Вы сами решите как отмасштабировать результат и какую часть соханить а какая не имеет значерния

Согласен в примере dst a,*ar5+ выглядело бы более правильно

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Нет не ошибаетесь - конечно надо брать весь 32-х битный результат, просто в конкретной реализации

Вы сами решите как отмасштабировать результат и какую часть соханить а какая не имеет значерния

Согласен в примере dst a,*ar5+ выглядело бы более правильно

 

Спасибо, понял. Покопаюсь в теории маштабирования, посмотрю что принято и в каких случаях и как к этому пдоходить. Благо неплохо изложено в моей "настольной библии" по DSP: A Course in Digital Signal Processing by Boaz Porat. Там есть тема: Scaling in Fixed-Point Arithmetics..

 

Еще кое-что, мне кажется у вас есть серьезный опыт DSP, может сможете кинуть веское словцо в мою соседнюю тему связанную с обработкой больших массивов данных...буду весьма благодарен. :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Сейчас как-раз подошел вплотную к этапу имплементации FIRа (пока писал оболочку - перекачка и подготовка данных и т.д. и т.п.).

 

Как указывается выравнивание выравниенание линии задержки для циркулрного буфера линии задержки ? Например у меня порядок фильтра 150, что дает соотв. линию задержки в 150, значит должен ее буфер в памяти выровнять по адресу кратному 256 (2^8). Как это сделать в asm и С коде ? (Есть вероятность что определю сей буфер в коде С и передам его координаты в asm рутину фильтра)

 

В принципе, в имплементации данного FIRa подразумевается использовать циркулярную адресацию и для линии задержки и для коеффициентов, т.е. оба, и буфер линии задержки и буфер коеффициентов нужно выравнивать по нужной кратности, так ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Сейчас как-раз подошел вплотную к этапу имплементации FIRа (пока писал оболочку - перекачка и подготовка данных и т.д. и т.п.).

 

Как указывается выравнивание выравниенание линии задержки для циркулрного буфера линии задержки ? Например у меня порядок фильтра 150, что дает соотв. линию задержки в 150, значит должен ее буфер в памяти выровнять по адресу кратному 256 (2^8). Как это сделать в asm и С коде ? (Есть вероятность что определю сей буфер в коде С и передам его координаты в asm рутину фильтра)

 

В принципе, в имплементации данного FIRa подразумевается использовать циркулярную адресацию и для линии задержки и для коеффициентов, т.е. оба, и буфер линии задержки и буфер коеффициентов нужно выравнивать по нужной кратности, так ?

 

Проблема решена хотя и ушло 3 часа закручивания извилин... :)

Решение - путем комбинаций соотв. конфигурации памяти (декларация новых секций специализированных для буферов на нужной кратности границах адресации) и затем #pragma декларациями соотв. буферов в нужные секции памяти.

 

Всем спасибо за внимание.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...