|
|
  |
Реализация БПФ на ПЛИС, Тудности, встречаемые при реализации |
|
|
|
Apr 16 2018, 07:47
|
Местный
  
Группа: Свой
Сообщений: 211
Регистрация: 18-11-12
Пользователь №: 74 459

|
Цитата(DrbIn @ Apr 16 2018, 09:15)  Откуда взять вещественные и мнимые значения сигнала? Можно из космоса. Поймать антенной, снести на нужную частоту, оцифровать и подать в ПЛИС. А внутри уже - на БПФ.
|
|
|
|
|
Apr 16 2018, 08:33
|
Группа: Участник
Сообщений: 8
Регистрация: 13-04-18
Пользователь №: 103 185

|
Цитата(Amurak @ Apr 16 2018, 14:47)  Можно из космоса. Поймать антенной, снести на нужную частоту, оцифровать и подать в ПЛИС. А внутри уже - на БПФ. ЭМмм, Остряк! Можно по делу, прояви остроумие в помощи.
|
|
|
|
|
Apr 16 2018, 08:54
|
Местный
  
Группа: Свой
Сообщений: 211
Регистрация: 18-11-12
Пользователь №: 74 459

|
Цитата(DrbIn @ Apr 16 2018, 11:33)  ЭМмм, Остряк! Можно по делу, прояви остроумие в помощи. Это и было по делу. Если не устраивает такой ответ, то неплохо было бы расписать задачу поконкретнее. Реализовать БПФ? Ну так вставляете корку, собираете прошивку. Откуда взять входной сигнал? Так а что БПФить-то надо? Так то ноль это тоже входной сигнал. Не нравится ноль, можно счетчик подать.
|
|
|
|
|
Apr 16 2018, 10:36
|
Группа: Участник
Сообщений: 8
Регистрация: 13-04-18
Пользователь №: 103 185

|
Цитата(Amurak @ Apr 16 2018, 15:54)  Это и было по делу. Если не устраивает такой ответ, то неплохо было бы расписать задачу поконкретнее. Реализовать БПФ? Ну так вставляете корку, собираете прошивку. Откуда взять входной сигнал? Так а что БПФить-то надо? Так то ноль это тоже входной сигнал. Не нравится ноль, можно счетчик подать. Хорошо. Нужно с помощью плис Аltera реализовать БПФ. Есть аналоговый сигнал, который проходит через АЦП и поступает на ПЛИС, вот его как раз и нужно БПФить. если еще конкретика нужна спрашивайте! Я впервые имею дело с этим. Компонент вставить нет труда, а чем его "обвешать" не знаю. То есть как выделить мнимую и вещественную часть? Нужно ли организовывать доп. память, где будут храниться отсчеты перед выполнением компонентом БПФ или это уже встроено и достаточно только напрямую подавать данные, тогда для чего импульсы подавать для начала и конца кадра подачи данных?! Может, кто сжалится надо мною и объяснит с низов, что делать и как работать со встроенной FFT, а то инет перерыл нигде нет инфы подробной, только теория об БПФ.
Сообщение отредактировал DrbIn - Apr 16 2018, 10:38
|
|
|
|
|
Apr 16 2018, 11:06
|
Местный
  
Группа: Свой
Сообщений: 211
Регистрация: 18-11-12
Пользователь №: 74 459

|
Цитата(DrbIn @ Apr 16 2018, 13:36)  Хорошо. Нужно с помощью плис Аltera реализовать БПФ. Есть аналоговый сигнал, который проходит через АЦП и поступает на ПЛИС, вот его как раз и нужно БПФить. если еще конкретика нужна спрашивайте! Я впервые имею дело с этим. Компонент вставить нет труда, а чем его "обвешать" не знаю. То есть как выделить мнимую и вещественную часть? Нужно ли организовывать доп. память, где будут храниться отсчеты перед выполнением компонентом БПФ или это уже встроено и достаточно только напрямую подавать данные, тогда для чего импульсы подавать для начала и конца кадра подачи данных?!
Может, кто сжалится надо мною и объяснит с низов, что делать и как работать со встроенной FFT, а то инет перерыл нигде нет инфы подробной, только теория об БПФ. Что за аналоговый сигнал, каковы его параметры? Какой АЦП используется? Какая частота дискретизации? Моделировать-то это дело вы будете, али сразу в железо загонять? Для простоты, для начала можно забить на мнимую часть и подавать только действительную. Что касается импульсов начала и конца кадра, то на входе есть только начало кадра - sink_sop. Поскольку БПФ вырабатывает пачку выходных частот (256, 512, 1024), то и на входе блоку нужна пачка. sink_sop - маркер начала этой пачки на входе. Подали на вход 1024 отсчета АЦП, на выходе получили 1024 частоты.
|
|
|
|
|
Apr 16 2018, 12:01
|
Группа: Участник
Сообщений: 8
Регистрация: 13-04-18
Пользователь №: 103 185

|
Цитата(Amurak @ Apr 16 2018, 18:06)  Что за аналоговый сигнал, каковы его параметры? Какой АЦП используется? Какая частота дискретизации?
Моделировать-то это дело вы будете, али сразу в железо загонять?
Для простоты, для начала можно забить на мнимую часть и подавать только действительную. Что касается импульсов начала и конца кадра, то на входе есть только начало кадра - sink_sop. Поскольку БПФ вырабатывает пачку выходных частот (256, 512, 1024), то и на входе блоку нужна пачка. sink_sop - маркер начала этой пачки на входе. Подали на вход 1024 отсчета АЦП, на выходе получили 1024 частоты. Синусоидальный сигнал, частотой 1 МГц. АЦП еще не подбирал. Пока моделировать не планировал, а там как пойдет. То есть я правильно понимаю, что должна быть память в которую будет записываться 1024 отсчета?
|
|
|
|
|
Apr 16 2018, 12:45
|
Группа: Участник
Сообщений: 8
Регистрация: 13-04-18
Пользователь №: 103 185

|
Цитата(AVR @ Apr 16 2018, 19:23)  Пропустить через sin/cos, либо подать на мнимые входы нули. Всё зависит от того, какой сигнал БПФить. Обычно, когда берутся за такие задачи, уже есть устоявшаяся модель и подобных вопросов возникать уже не должно.
Почему бы для начала не сделать то же самое на Python или Matlab? Ну будет эта штука выдавать некие результаты - как это отлаживать? Я отлаживал сравнивая результаты обработки одного и того же сигнала мат моделью и работу IP-ядра FFT на HDL-симуляторе. Таких чудес насмотрелся, так что представляю какая будет боль при отладке FFT без этого. из знакомых ни кто этим не занимался. А тут пришлось, упала задача. Я согласен, что моделировать надо, но для начала надо разобраться как слепить это все! может у кого есть учебное пособие как подобное реализуется! Вы же познали это где-то?! Ребята, Мужики! Я благодарю вас всех, что откликнулись! Вы люди с опытом в этом деле, поэтому не могли бы с самых низов расписать, с чего начать, чтобы решить данную задачку.
Сообщение отредактировал DrbIn - Apr 16 2018, 12:31
|
|
|
|
|
Apr 16 2018, 12:55
|

фанат Linux'а
    
Группа: Свой
Сообщений: 1 353
Регистрация: 23-10-05
Из: SPB.RU
Пользователь №: 10 008

|
Цитата(DrbIn @ Apr 16 2018, 15:45)  Вы люди с опытом в этом деле, поэтому не могли бы с самых низов расписать, с чего начать, чтобы решить данную задачку Начать с модели, с ней же и сравнивать. Вы пытаетесь создать сложную роботизированную лестницу чтобы сорвать яблоко, а достаточно лишь слегка потрясти яблоню. Не надо пытаться уйти от создания примитивной модели, это бессмысленно и контрпродуктивно. Даташит большой, но достаточно просто перейти к нужному разделу, поясняющему принцип работы с ядром и формат входных сигналов, и сравнивая с моделью - проверять результат. А учебного пособия нет ровно по той причине, потому что учебное пособие на всё на свете писать не имеет смысла, ведь есть инструкции, да и те почти не читают, когда всё и так понятно. Вот альтеровский FFT UG содержит 100.0% необходимой информации, что после модели вообще не возникает вопросов что куда засовывать.
--------------------
|
|
|
|
|
Apr 16 2018, 13:45
|
Группа: Участник
Сообщений: 8
Регистрация: 13-04-18
Пользователь №: 103 185

|
Цитата(AVR @ Apr 16 2018, 19:55)  Начать с модели, с ней же и сравнивать. Вы пытаетесь создать сложную роботизированную лестницу чтобы сорвать яблоко, а достаточно лишь слегка потрясти яблоню. Не надо пытаться уйти от создания примитивной модели, это бессмысленно и контрпродуктивно.
Даташит большой, но достаточно просто перейти к нужному разделу, поясняющему принцип работы с ядром и формат входных сигналов, и сравнивая с моделью - проверять результат.
А учебного пособия нет ровно по той причине, потому что учебное пособие на всё на свете писать не имеет смысла, ведь есть инструкции, да и те почти не читают, когда всё и так понятно. Вот альтеровский FFT UG содержит 100.0% необходимой информации, что после модели вообще не возникает вопросов что куда засовывать. модель в матлабе создавать? что-то совсем запутали! как в матлабе делать БПФ я знаю. Что вы подразумеваете под словом "модель"? Полное описание системы включая АЦП и ПЛИС в матлабе?
Сообщение отредактировал DrbIn - Apr 16 2018, 13:58
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|