|
Реализация БПФ на ПЛИС, Тудности, встречаемые при реализации |
|
|
|
Jan 18 2009, 19:19
|
Местный
  
Группа: Свой
Сообщений: 264
Регистрация: 17-04-07
Из: Москва
Пользователь №: 27 102

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