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

 
 
> Реализация БПФ на ПЛИС, Тудности, встречаемые при реализации
ZED
сообщение Jan 18 2009, 19:19
Сообщение #301


Местный
***

Группа: Свой
Сообщений: 264
Регистрация: 17-04-07
Из: Москва
Пользователь №: 27 102



Доброго времени суток!

Нужно реализовать алгоритм БПФ с прореживанием по частоте на ПЛИС, но при реализации возникают трудности, вот некоторые из них:
  1. Поворачивающие множители являются числами по модулю меньше либо равно единицы: |W|<=1. Я так понял, чтобы перейти к целым числам требуется умножать их на (2^N) и то, что после запятой отсекать (N - разрядность). Нужно ли то же самое делать с входными данными (x1 и x2) или не обязательно?
  2. Нужно реализовать операции умножения и сложения со знаковыми числами, тут у меня такая задумка: преобразовать в integer соответствующего диапазона: от -(2^N)/2 до (2^N)/2 - 1, произвести нужные арифметические операции и преобразовать обратно std_logic_vector, код прилагается:

CODE
library IEEE;
use IEEE.std_logic_1164.all;
use IEEE.std_logic_arith.all;

entity butterfly is
generic (b_size: natural := 14);
port (
x1, x2, w: in std_logic_vector(b_size - 1 downto 0);
y1, y2: out std_logic_vector(b_size - 1 downto 0)
);
end entity butterfly;

architecture behavioral of butterfly is
signal x1_int, x2_int, w_int: integer range -8192 to 8191;
signal y1_int: integer range -8192 to 8191;
signal y2_int: integer range -134217728 to 134217727; -- Т.к. производится умножение на поворачивающий множитель
begin
process (CLK) is
begin
-- Преобразовываю в тип integer:
x1_int <= conv_integer(x1);
x2_int <= conv_integer(x2);
w_int <= conv_integer(w);
y1_int <= conv_integer(y1);
y2_int <= conv_integer(y2);

-- Вычисляю бабочку и преобразовываю обратно в std_logic_vector (b_size - 1 downto 0):
y1 <= conv_std_logic_vector(x1_int + x2_int, b_size);
y2 <= conv_std_logic_vector((x1_int - x2_int) * w_int, b_size);
end process;
end architecture behavioral;

Вопрос будет ли так корректно сделать или все делается совершенно по-другому?
Буду рад любым вашим замечаниям, предложениям, советам и ссылкам. Заранее спасибо!

P.S. На форуме я искал и не нашел ответа на свои вопросы, тем более я уверен далее появятся новые, думаю лучше, чтоб это все было в одной теме...
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- ZED   Реализация БПФ на ПЛИС   Jan 18 2009, 19:19
- - chirik   А может мне кто ни будь подсказать как этот fft мо...   Oct 9 2011, 09:40
- - Sefo   Цитата(chirik @ Oct 9 2011, 12:40) Я пыта...   Oct 25 2011, 14:46
|- - almost_valid   Цитата(Sefo @ Oct 25 2011, 18:46) Если дл...   Oct 27 2011, 06:41
|- - ViKo   Цитата(Sefo @ Oct 25 2011, 17:46) Наприме...   Oct 27 2011, 07:34
|- - almost_valid   Цитата(ViKo @ Oct 27 2011, 11:34) Не дума...   Oct 27 2011, 08:00
|- - ViKo   Цитата(almost_valid @ Oct 27 2011, 11:00)...   Oct 27 2011, 08:26
|- - almost   Цитата(ViKo @ Oct 27 2011, 12:26) Когерен...   Oct 27 2011, 11:22
|- - ViKo   Цитата(almost @ Oct 27 2011, 14:22) А вот...   Oct 27 2011, 12:08
|- - almost   Цитата(ViKo @ Oct 27 2011, 16:08) Не быва...   Oct 28 2011, 05:43
|- - ViKo   Цитата(almost @ Oct 28 2011, 08:43) Да, с...   Oct 28 2011, 07:11
- - troiden   Возникла идея сделать в ПЛИСе не только само вычис...   Oct 27 2011, 06:29
- - Sefo   Цитата(troiden @ Oct 27 2011, 09:29) Возн...   Oct 28 2011, 15:27
|- - troiden   Цитата(Sefo @ Oct 28 2011, 19:27) Так что...   Oct 28 2011, 16:28
- - Sefo   Цитата(troiden @ Oct 28 2011, 19:28) Вход...   Oct 29 2011, 13:00
- - Sefo   Цитата(ClockworkOrange @ Mar 1 2012, 12:5...   Mar 5 2012, 08:15
- - Corner   БПФ с бабочками не 2 в степени N. Это что то новен...   Nov 10 2015, 20:25
|- - blackfin   Цитата(Corner @ Nov 10 2015, 23:25) БПФ с...   Nov 11 2015, 02:48
- - DrbIn   Прошу помощи у знатоков! Возникла необходимост...   Apr 13 2018, 02:06
- - blackfin   ug_fft   Apr 13 2018, 03:49
- - DrbIn   спасибо. а примеров случайно нет?   Apr 13 2018, 05:43
- - AVR   Цитата(DrbIn @ Apr 13 2018, 08:43) спасиб...   Apr 13 2018, 07:15
- - DrbIn   Цитата(AVR @ Apr 13 2018, 14:15) Я работа...   Apr 16 2018, 06:15
- - Amurak   Цитата(DrbIn @ Apr 16 2018, 09:15) Откуда...   Apr 16 2018, 07:47
|- - DrbIn   Цитата(Amurak @ Apr 16 2018, 14:47) Можно...   Apr 16 2018, 08:33
|- - Amurak   Цитата(DrbIn @ Apr 16 2018, 11:33) ЭМмм, ...   Apr 16 2018, 08:54
|- - DrbIn   Цитата(Amurak @ Apr 16 2018, 15:54) Это и...   Apr 16 2018, 10:36
|- - Amurak   Цитата(DrbIn @ Apr 16 2018, 13:36) Хорошо...   Apr 16 2018, 11:06
|- - DrbIn   Цитата(Amurak @ Apr 16 2018, 18:06) Что з...   Apr 16 2018, 12:01
|- - blackfin   Цитата(DrbIn @ Apr 16 2018, 15:01) То ест...   Apr 16 2018, 12:06
- - AVR   Цитата(DrbIn @ Apr 16 2018, 09:15) Откуда...   Apr 16 2018, 12:23
- - DrbIn   Цитата(AVR @ Apr 16 2018, 19:23) Пропусти...   Apr 16 2018, 12:45
- - AVR   Цитата(DrbIn @ Apr 16 2018, 15:45) Вы люд...   Apr 16 2018, 12:55
- - DrbIn   Цитата(AVR @ Apr 16 2018, 19:55) Начать с...   Apr 16 2018, 13:45
- - AVR   Цитата(DrbIn @ Apr 16 2018, 16:45) Что вы...   Apr 17 2018, 11:45
4 страниц V  « < 2 3 4


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

 


RSS Текстовая версия Сейчас: 28th July 2025 - 15:49
Рейтинг@Mail.ru


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