реклама на сайте
подробности

 
 
> сигма-дельта модулятор + МК
skyv
сообщение Oct 19 2010, 11:57
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 181
Регистрация: 26-07-10
Пользователь №: 58 606



Всем доброго дня.
Есть несколько вопросов по работе с сигма-дельта модулятором.
Исходно имеем частоту модулятора Fsampl = 16МГц и частоту дискретизации
выходного сигнала Fd = 10кГц. Число разрядов – 16.
1. Во многих примерах видел обработку данных модулятора плиской или DSP. Как оценить необходимую производительность контроллера типа ARM7?
2. Каким интерфейсом контроллера принимать поток данных модулятора?
3. В даташите на модулятор есть пример фильтра-дециматора на VHDL.
Где найти аналогичный пример на С?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
skyv
сообщение Oct 20 2010, 09:47
Сообщение #2


Частый гость
**

Группа: Участник
Сообщений: 181
Регистрация: 26-07-10
Пользователь №: 58 606



Так точно, SPI - мастер. У меня, на SAM9, максимум выходного клока до 50 МГц.
По поводу использования SPI план такой:
- Сигнал CS не дергать вообше. Один раз сформировать
выбор устройства и все.
- Настроить SPI на прием слов или байт и паузы между ними не делать.
- У SAM7,9 есть два указателя на приемные буферы. Вот теперь надо
разобраться можно ли их использовать для организации непрерывного
потока.
Go to the top of the page
 
+Quote Post
sysel
сообщение Oct 20 2010, 10:04
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 601
Регистрация: 3-07-07
Пользователь №: 28 852



Цитата(skyv @ Oct 20 2010, 13:47) *
[рассказ]


Отпишите, пожалуйста, что у Вас выйдет
Go to the top of the page
 
+Quote Post
skyv
сообщение Oct 21 2010, 07:58
Сообщение #4


Частый гость
**

Группа: Участник
Сообщений: 181
Регистрация: 26-07-10
Пользователь №: 58 606



Цитата(sysel @ Oct 20 2010, 14:04) *
Отпишите, пожалуйста, что у Вас выйдет


Решил посмотреть в симуляторе какое число тактов затратит SAM9
на вычисление трех интеграторов sinc3 фильтра. Ядро ARM9 работает на 200 МГц,
т. е. 1 такт = 5нс.
Условия для себя принял следующие:
- Частота модулятора = 20 МГц. Частота формирования выходных отсчетов
примерно 10 кГц. Из этих условий я нахожу необходимый размер буфера = 1984 бит
или 62 32-х разрядных слова. Время заполнения буфера составит 1984 * 0.05 мкс = 99.2 мкс.
- В программе я обрабатываю весь буфер = 1984 бит за 10305 тактов, а это соответствует
времени 10305 * 5нс = 51.5мкс. Программный код на обработку 1-го бита такой:
Integr_3 += Integr_2; - 1 такт
Integr_2 += Integr_1; - 1 такт
Integr_1 += ( input >> .... ) & 0x00000001; - 4 такта
Когда использовал цикл по битам, то получил 18672 такта (99 мкс). Пришлось
его развернуть.
Итого из 99.2 мкс потратили 51.5 мкс. Запас в 50 мкс обнадеживает.





Go to the top of the page
 
+Quote Post
sysel
сообщение Oct 25 2010, 09:25
Сообщение #5


Знающий
****

Группа: Свой
Сообщений: 601
Регистрация: 3-07-07
Пользователь №: 28 852



Мой результат, используя таблицу инкрементов

Фильтр CIC (4 интегратора -> децимация в 200 раз -> 4 дифференциатора) -> Фильтр FIR (компенсация CIC + НЧ для дальнейшей децимации) (36 коеф. 32 бита) с децимацией в 5 раз.
Итого децимация в 1000 раз.

Алгоритмы реализованы на С, компилятор из IAR, оптимизация по скорости.

Процессор LPC1754 (Cortex-M3) на частоте 100 МГц.

На вычисление одного выходного отсчета сигнала (CIC+FIR) требуется 53 мкс.
Go to the top of the page
 
+Quote Post
skyv
сообщение Oct 25 2010, 11:14
Сообщение #6


Частый гость
**

Группа: Участник
Сообщений: 181
Регистрация: 26-07-10
Пользователь №: 58 606



Цитата(sysel @ Oct 25 2010, 13:25) *
...
Процессор LPC1754 (Cortex-M3) на частоте 100 МГц.

На вычисление одного выходного отсчета сигнала (CIC+FIR) требуется 53 мкс.

Вот интересно как 100 МГц МК LPC1754 вычисляет быстрее, чем 200 МГц SAM9?
Go to the top of the page
 
+Quote Post
sysel
сообщение Oct 25 2010, 11:23
Сообщение #7


Знающий
****

Группа: Свой
Сообщений: 601
Регистрация: 3-07-07
Пользователь №: 28 852



Цитата(skyv @ Oct 25 2010, 15:14) *
Вот интересно как 100 МГц МК LPC1754 вычисляет быстрее, чем 200 МГц SAM9?

Я использую таблицу инкрементов и оперирую в алгоритме байтами, а не битами. Что само по себе быстрее.
Как допишу алгоритм полностью, вышлю Вам реализацию.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- skyv   сигма-дельта модулятор + МК   Oct 19 2010, 11:57
- - rezident   ИМХО программно обработать такую частоту весьма пр...   Oct 19 2010, 12:25
- - skyv   А какие интерфейсы существуют в DSP. По поводу инт...   Oct 19 2010, 12:54
|- - sysel   У меня тоже есть мысль приладить сигма-дельта моду...   Oct 19 2010, 15:53
- - skyv   Именно этот модулятор я и рассматриваю. Подобная и...   Oct 20 2010, 07:33
|- - sysel   Цитата(skyv @ Oct 20 2010, 11:33) Именно ...   Oct 20 2010, 08:56
- - skyv   Пока лучше опишу чего не выходит. Посмотрел текст ...   Oct 20 2010, 10:34
|- - sysel   Цитата(skyv @ Oct 20 2010, 14:34) Пока лу...   Oct 20 2010, 11:19
- - skyv   За ответы на вопросы спасибо. Моделировать фильтр ...   Oct 20 2010, 11:36
|- - sysel   Цитата(skyv @ Oct 20 2010, 15:36) Софт дл...   Oct 20 2010, 11:46
- - _4afc_   Цитата(skyv @ Oct 19 2010, 15:57) Есть не...   Oct 20 2010, 12:02
|- - sysel   Цитата(_4afc_ @ Oct 20 2010, 16:02) Скажи...   Oct 20 2010, 12:17
- - hobgoblin   ЦитатаСкажите, а если этот поток с модулятора прог...   Oct 20 2010, 12:25
|- - skyv   Цитата(hobgoblin @ Oct 20 2010, 16:25) но...   Oct 20 2010, 12:35
|- - hobgoblin   Цитата(skyv @ Oct 20 2010, 16:35) Реализа...   Oct 20 2010, 12:54
- - skyv   По поводу ресурсов увидел, что использован BF533 с...   Oct 20 2010, 13:27
- - skyv   Тогда еще один вопрос. Просто для себя я его пока ...   Oct 25 2010, 11:38
|- - sysel   Цитата(skyv @ Oct 25 2010, 15:38) Тогда е...   Oct 25 2010, 11:43
- - skyv   С вашей схемой понятно. В моем случае надо будет о...   Oct 25 2010, 12:09
- - Alexey Belyaev   Ребят, можно разворошить старое? Чем всё кончилось...   May 20 2012, 13:11
|- - sysel   Цитата(Alexey Belyaev @ May 20 2012, 17:1...   May 25 2012, 11:00
- - dumb   Цитата(sysel @ May 25 2012, 14:00) Кончил...   Dec 14 2012, 11:55


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd August 2025 - 16:47
Рейтинг@Mail.ru


Страница сгенерированна за 0.01456 секунд с 7
ELECTRONIX ©2004-2016