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

 
 
 
Reply to this topicStart new topic
> БПФ спектр
Lmx2315
сообщение Dec 20 2010, 11:24
Сообщение #1


отэц
*****

Группа: Свой
Сообщений: 1 729
Регистрация: 18-09-05
Из: Москва
Пользователь №: 8 684



Такой вопрос уважаемые ..

Есть схема : мультиплексор на восемь входов , за ним АЦП , потом Память и потом 128 т. БПФ - вывод на экран .

Как всё работает : мультиплексор перебирает каналы со скоростью 5.12 МГц , как-только канал установится + немного времени на переходной процесс - АЦП измеряет значение , далее значении помещается в свою ячейку памяти - привязанную к номеру канала . Память - 256 отсчётов х 8 каналов .
Из памяти данные по канально перебрасываются в БПФ по 128 отсчётов и после обработки на экран .

если 5.12 МГЦ - скорость переключения мультиплексора поделить на 8 каналов - получается частота дискретизации 640 КГц .

Теперь вопрос - когда всё собрал - вижу на экране спектр полосой только 160 КГц .

Посылал на вход гармонику - она перемещается по спектру а после 160 КГЦ зеркалируется и движется обратно .

Вот я и не пойму , как-так?

Почему ширина спектра только половина от должной?


--------------------
b4edbc0f854dda469460aa1aa a5ba2bd36cbe9d4bc8f92179f 8f3fec5d9da7f0
SHA-256
Go to the top of the page
 
+Quote Post
DMax
сообщение Dec 20 2010, 11:49
Сообщение #2


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

Группа: Свой
Сообщений: 161
Регистрация: 19-01-08
Из: Питер
Пользователь №: 34 234



Давайте уточним сначала.

Вы делаете БПФ на 128 точек. Получаете 128 точек, из которых полезны только 64. По этим 64-м точкам вы смотрите спектр. Каждый бин БПФ представляет собой 5 КГц.

А вот теперь объясните, что значит "после 160 КГЦ зеркалируется и движется обратно". На вашей картинке "палка" доходит до 32-ой точки или до 64-ой перед тем как начинает двигаться обратно? Я так понял, что 160 КГц вы выставляете на генераторе, а вот в какую точку вашего БПФ эта палка попадает мне не очень понятно.
Go to the top of the page
 
+Quote Post
Lmx2315
сообщение Dec 20 2010, 11:59
Сообщение #3


отэц
*****

Группа: Свой
Сообщений: 1 729
Регистрация: 18-09-05
Из: Москва
Пользователь №: 8 684



Цитата(DMax @ Dec 20 2010, 17:49) *
Давайте уточним сначала.

Вы делаете БПФ на 128 точек. Получаете 128 точек, из которых полезны только 64. По этим 64-м точкам вы смотрите спектр. Каждый бин БПФ представляет собой 5 КГц.

А вот теперь объясните, что значит "после 160 КГЦ зеркалируется и движется обратно". На вашей картинке "палка" доходит до 32-ой точки или до 64-ой перед тем как начинает двигаться обратно? Я так понял, что 160 КГц вы выставляете на генераторе, а вот в какую точку вашего БПФ эта палка попадает мне не очень понятно.



..да , вывожу на экран 64 точки - вижу спектр , включаю гармонику и перестраивая генератор веду палку по спектру к 64 точке , когда палка до неё доходит - она идёт вниз по спектру к 1 точке .Поворот происходит когда на генераторе 160 КГц.


--------------------
b4edbc0f854dda469460aa1aa a5ba2bd36cbe9d4bc8f92179f 8f3fec5d9da7f0
SHA-256
Go to the top of the page
 
+Quote Post
DMax
сообщение Dec 21 2010, 05:20
Сообщение #4


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

Группа: Свой
Сообщений: 161
Регистрация: 19-01-08
Из: Питер
Пользователь №: 34 234



Цитата(Lmx2315 @ Dec 20 2010, 17:59) *
..да , вывожу на экран 64 точки - вижу спектр , включаю гармонику и перестраивая генератор веду палку по спектру к 64 точке , когда палка до неё доходит - она идёт вниз по спектру к 1 точке .Поворот происходит когда на генераторе 160 КГц.


Воот. Тут-то и бага, потому что гармонике в 160 КГц должна соответствовать 32-ая точка. Предлагаю вам выяснить, почему у вас гармоника 160 КГц попадает в 64-ю. То что, дальше происходит заворот, правильно, ведь дальше 64-й идти некуда.
Go to the top of the page
 
+Quote Post
Lmx2315
сообщение Dec 21 2010, 07:45
Сообщение #5


отэц
*****

Группа: Свой
Сообщений: 1 729
Регистрация: 18-09-05
Из: Москва
Пользователь №: 8 684



Цитата(DMax @ Dec 21 2010, 11:20) *
Воот. Тут-то и бага, потому что гармонике в 160 КГц должна соответствовать 32-ая точка. Предлагаю вам выяснить, почему у вас гармоника 160 КГц попадает в 64-ю. То что, дальше происходит заворот, правильно, ведь дальше 64-й идти некуда.



..спасибо большое , теперь всё понятно. maniac.gif


--------------------
b4edbc0f854dda469460aa1aa a5ba2bd36cbe9d4bc8f92179f 8f3fec5d9da7f0
SHA-256
Go to the top of the page
 
+Quote Post
Lmx2315
сообщение Dec 21 2010, 07:45
Сообщение #6


отэц
*****

Группа: Свой
Сообщений: 1 729
Регистрация: 18-09-05
Из: Москва
Пользователь №: 8 684



Применяю корку с сайта opencores (кстати спасибо всем кому не жалко делится своим творчеством) beer.gifsm.gif и подозрения у меня что что-то с ней не так , кто разбирается - посмотрите ? Поставил их же корку на 256 точек - спектр полный , а мне надо всёж на 128 .

..корка на veriloge .


..вроде бы что-то не то с подключением блоков BUFRAM128C в FFT128

в блоке BUFRAM128C найти и сделать строку 104 такой : assign addrr={addr[3 : 0], addr[6 : 4]};
Прикрепленные файлы
Прикрепленный файл  SRC.rar ( 39.58 килобайт ) Кол-во скачиваний: 18
 


--------------------
b4edbc0f854dda469460aa1aa a5ba2bd36cbe9d4bc8f92179f 8f3fec5d9da7f0
SHA-256
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 30th June 2025 - 20:30
Рейтинг@Mail.ru


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