Jump to content

    

Нужен ли DSP для задачи ?

Уважаемые спецы,

есть у нас задача обрабатывать в реальном времени три сигнала с полосой 30 кГц с очень большими помехами. Для этого мы хотим поставить АЦП на 1 МГц , сделать программный фильтр и всю дальнейшую обработку делать программно. 

Хватит ли нам для этой задачи контроллера STM32H743, у него есть DSP команды. Или всё-таки нужен полноценный DSP ? 

Share this post


Link to post
Share on other sites

Скорее полноценный DSP, и таки непонятно что такое ... большие помехи. Можете что то определенное об этих помехах сказать? Какой программный фильтр хотите испоьзовать? Что понимаете под этим? Тема то емкая.  

Share this post


Link to post
Share on other sites
34 минуты назад, TOG сказал:

Хватит ли нам для этой задачи контроллера STM32H743, у него есть DSP команды. Или всё-таки нужен полноценный DSP ? 

Зависит от алгоритма. А то может и "полноценный" не всякий покатит.  :scratch_one-s_head:

Вообще такие вещи начинают делать с создания матлабовской модели, на которой алгоритм и отлаживают. А уже потом, по результатам этой работы, выбирают МК. Обратите внимание: потом. Телега должна быть позади животного. И 1МГц - это как-то многовато для полосы == 30кГц...

Share this post


Link to post
Share on other sites
25 minutes ago, jcxz said:

И 1МГц - это как-то многовато для полосы == 30кГц...

Нормально.
Видимо расчет на встроенный в STM-ы оверсэмплер.
А потом фильтры на 60 КГц. Итого где-то  максимум 2600 тактов  будет на обработку.  
Достаточно много если не замахиваться на FFT и DFT.
Дальше надо думать о распараллеливании и снижении разрядности.   
Но я б взял какой-нить Renesas типа RZ/A1H с ядром Arm Cortex-A9 и  NEON-ом внутри

Share this post


Link to post
Share on other sites

 

51 minutes ago, jcxz said:

Зависит от алгоритма. А то может и "полноценный" не всякий покатит.  :scratch_one-s_head:

 

1 hour ago, Aner said:

Скорее полноценный DSP, и таки непонятно что такое ... большие помехи. Можете что то определенное об этих помехах сказать? Какой программный фильтр хотите испоьзовать? Что понимаете под этим? Тема то емкая.  

Думаем программный фильтр сделать IIR. 10 порядок. Помехи не коллерирующие с сигналом, случайные по спектру.

Что скажете ?

Edited by TOG

Share this post


Link to post
Share on other sites
1 hour ago, TOG said:

есть у нас задача обрабатывать в реальном времени три сигнала с полосой 30 кГц с очень большими помехами. Для этого мы хотим поставить АЦП на 1 МГц , сделать программный фильтр и всю дальнейшую обработку делать программно

Хватит ли нам для этой задачи контроллера STM32H743, у него есть DSP команды. Или всё-таки нужен полноценный DSP ? 

если помехи лежат в полосе сигнала 30кГц, то можно хоть с 1ГГц оцифровывать, а потом обратно фильтровать до 30кГц, шумы из полосы 30кГц таким образом никуда не денутся.

оверсэмплингом можно поднять разрядность АЦП, но только если это в его разрядность и собственные шумы всё упирается.

для этого в сигма-дельта АЦП обычно ставят CIC фильтры, которым даже умножения не надо, 3 сложения и 3 вычитания на отсчёт для sinc3 фильтра-дециматора.

 

Share this post


Link to post
Share on other sites

И таки непонятно что за помеху вы собрались фильтровать? Вы что знаете АКФ помехи, ее дисперсию и тд? И что вам даст этот линейный IIR? Думаете этот фильтр как то коррелирует со случайной помехой в спектре?

Share this post


Link to post
Share on other sites
2 minutes ago, Aner said:

И таки непонятно что за помеху вы собрались фильтровать? Вы что знаете АКФ помехи, ее дисперсию и тд? И что вам даст этот линейный IIR? Думаете этот фильтр как то коррелирует со случайной помехой в спектре?

А как бы сделали Вы ?

Share this post


Link to post
Share on other sites
Только что, TOG сказал:

А как бы сделали Вы ?

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

Share this post


Link to post
Share on other sites
38 минут назад, TOG сказал:

Думаем программный фильтр сделать IIR. 10 порядок. Помехи не коллерирующие с сигналом, случайные по спектру.

Что скажете ?

10-й - это немного. Даже для Cortex-а. Но начните всё-таки с модели в матлабе. И почему именно IIR, а не что-то другое? Такое ощущение, что с потолка его взяли...

Share this post


Link to post
Share on other sites
3 hours ago, TOG said:

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

Помеха в полосе сигнала?

Share this post


Link to post
Share on other sites
3 минуты назад, Tpeck сказал:

Помеха в полосе сигнала?

да ... и что.

Share this post


Link to post
Share on other sites
37 minutes ago, Aner said:

да ... и что.

каким образом оверсэмплинг на 1МГц поможет в таком случае?

Share this post


Link to post
Share on other sites
1 hour ago, Aner said:

да ... и что.

Ну тогда возникает вопрос, а как оценивать эти помехи, прежде чем подавить и сколько на это нужно вычислительных ресурсов.

Share this post


Link to post
Share on other sites

Чтобы ответить нужно понять, что за сигналы и что за помехи или это шумы, их "природа", модель и тд. Пока все философски у ТСа.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now