OldDSPer 0 24 июля, 2008 Опубликовано 24 июля, 2008 (изменено) · Жалоба Возможно ли на современных ПЛИС реализовать параллельно-последовательные цепочки умножения с суммированием (пусть это будет одна цепочка), если таких MAC-операций нужно 7000 штук. Умножители 16х16, а накопители имеют по 40 бит. Тактовая частота умножений = 30 МГц Изменено 24 июля, 2008 пользователем OldDSPer Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SIA 0 24 июля, 2008 Опубликовано 24 июля, 2008 · Жалоба Возможно ли на современных ПЛИС реализовать параллельно-последовательные цепочки умножения с суммированием (пусть это будет одна цепочка), если таких MAC-операций нужно 7000 штук. Умножители 16х16, а накопители имеют по 40 бит. Можно. Только зависит от частоты - мегагерц до 250 без проблем, дальше надо смотреть. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
OldDSPer 0 24 июля, 2008 Опубликовано 24 июля, 2008 · Жалоба Благодарю за ответ. Следующий вопрос: справится ли какая-нибудь Altera с 7000МАС х 30 МГц? Или сразу нужно искать Xilinx? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
avesat 0 24 июля, 2008 Опубликовано 24 июля, 2008 · Жалоба Можно. Только зависит от частоты - мегагерц до 250 без проблем, дальше надо смотреть. Смелое заявление, а какой кристалл то хоть имели ввиду :) v4 или v5 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DmitryR 0 24 июля, 2008 Опубликовано 24 июля, 2008 · Жалоба Благодарю за ответ. Следующий вопрос: справится ли какая-нибудь Altera с 7000МАС х 30 МГц? Или сразу нужно искать Xilinx? У обоих такие микросхемы только объявлены, но Xilinx выйдет скорее, так как семейство уже в производстве, а у Altera семейство только объявлено. Xilinx, который справится с такой задачей - это XC5VSX240T. В нем тысяча с копейками умножителей, и чтобы получить 7000 умножений на 30МГц, вам придется запустить их на 210 МГц, что вполне реально. У Altera это новое семейство Stratix-IV, там у половины микросхем столько умножителей, плюс они 40nm, поэтому разгоняться будут проще. В Stratix-III умножителей максимум 800 с мелочью, так что разгонять придется пости до 300 МГц, что IMHO тяжеловато будет, если вообще возможно. Учитывайте только в своих прикидках, что такие микросхемы стоят многие тысячи долларов и требуют относительно высоких затрат на PCB в силу больших корпусов, а также тщательно спроектированного питания: мне страшно даже представить, сколько электричества схавают 1000 умножителей на 210 МГц. Думаю, десятки ампер. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Stanislav 0 24 июля, 2008 Опубликовано 24 июля, 2008 · Жалоба Можно. Только зависит от частоты - мегагерц до 250 без проблем, дальше надо смотреть. :) Интересно, сколько для этого потребуется кристаллов, и сколько они будут стоить? ;) Может, лучше в сторону CUDA и Nvidia посмотреть? Эти DSP на мат. вычислениях значительно мощнее самых "толстых" FPGA, а по цене просто несравнимы - стОят на порядок-два меньше. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sysel 0 24 июля, 2008 Опубликовано 24 июля, 2008 · Жалоба Может, лучше в сторону CUDA и Nvidia посмотреть? вы меня опередили. Сам хотел подобную штуку автору предложить. К тому же, как я понял, автор хочет делать фильтрацию, и плавающая запятая, реализованная в NVIDIA будет как раз к месту. Только вот как на NVIDIA входной сигнал завести... :07: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DmitryR 0 24 июля, 2008 Опубликовано 24 июля, 2008 · Жалоба Только вот как на NVIDIA входной сигнал завести... :07: Так вот с этого надо IMHO начинать. В принципе, идея считать математику на GPU не нова и уже есть много реализаций, даже кластеры. Однако, это все хорошо именно чтобы считать математику: для обработки сигналов GPU приспособлен плохо. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Stanislav 0 24 июля, 2008 Опубликовано 24 июля, 2008 · Жалоба Только вот как на NVIDIA входной сигнал завести... :07:Известно как - через PCI-E. 30МГц следования входных/выходных отсчётов для него - сущие пустяки. Чтобы сказать определённее, нужно, чтобы ув. OldDSPer обрисовал задачу подробно, а то не совсем понятно, что к чему... Так вот с этого надо IMHO начинать. В принципе, идея считать математику на GPU не нова и уже есть много реализаций, даже кластеры. Однако, это все хорошо именно чтобы считать математику: для обработки сигналов GPU приспособлен плохо.Простите, не совсем понял. Что есть обработка сигналов и что есть математика? Насколько мне известно, для обработки сигналов GPU подходят очень даже неплохо. Правда, я нахожусь только в начальной стадии их изучения, и документация весьма скудная... Во всяком случае, пропускная способность Экспресса х16 достаточно велика. А скорость обмена с памятью у GPU просто умопомрачительная: сейчас туда GDDR5 уже прикручивают, и шины толщиной в 512 бит или более - уже не новость. У новых чипов - это более 100 ГБайт/С, и в ближайшее время её обещают удвоить... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dmitry-tomsk 0 24 июля, 2008 Опубликовано 24 июля, 2008 · Жалоба Возможно ли на современных ПЛИС реализовать параллельно-последовательные цепочки умножения с суммированием (пусть это будет одна цепочка), если таких MAC-операций нужно 7000 штук. Умножители 16х16, а накопители имеют по 40 бит. Тактовая частота умножений = 30 МГц На Xilinx V4 полупараллельные фильтры спокойно работают на 450 МГц. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DmitryR 0 25 июля, 2008 Опубликовано 25 июля, 2008 · Жалоба На Xilinx V4 полупараллельные фильтры спокойно работают на 450 МГц. Ну вообще отлично, XC4VSX55 подойдет тогда (512 умножителей), и он стоит чуть более тысячи. Только надо сначала всеж промоделировать, так как способность умножителей V5 работать на 210 Мгц не подвергается сомнениям, а вот 450 МГц в V4 - это с полным конвейером и т.п., просто может не подойти для конкретного алгоритма. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Stanislav 0 25 июля, 2008 Опубликовано 25 июля, 2008 · Жалоба На Xilinx V4 полупараллельные фильтры спокойно работают на 450 МГц.Скажите, а сколько при этом используется умножителей одновременно? 2 DmitryR А для чего нужна такая длина (аж 7000 к-тов) для фильтра, если точность их представления всего 16 бит? Или, по-другому. Уверены ли Вы, что для фильтра такой длины хватит точности представления к-тов в 16 бит? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DmitryR 0 25 июля, 2008 Опубликовано 25 июля, 2008 · Жалоба Известно как - через PCI-E. ... Насколько мне известно, для обработки сигналов GPU подходят очень даже неплохо. Правда, я нахожусь только в начальной стадии их изучения, и документация весьма скудная... Я объясню, почему плохо подходят в моем понимании. Обработка сигналов нужна обычно зачем? Сделать коммуникационное устройство. То есть, в подавляющем большинстве случаев, микросхему. В оставшихся случаях - мелкосерийное устройство на FPGA. В первом случае FPGA еще используется для прототипирования, чтобы продемонстрировать реализуемость выбранного DSP алгоритма в HDL и потом этот HDL перенести в ASIC. В свете вышесказанного попытка применить GPU означает что? Сделать плату, на которой будет этот GPU, его сверхбыстрая память, еще все же будет несложная FPGA, которая будет захватывать данные от источника сигнала (АЦП) и передавать на PCI-E мост (так как PCI-E это единственный интерфейс GPU). Да, BOM этого всего может оказаться дешевле одной большой FPGA, но во что выльется разработка? И естественно, ни о какой серийности говорить не придется. А так стоит один кристалл, получает данные сам, сам считает и сам отправляет дальше. С учетом сложности разработки будет гораздо дешевле GPU. Надо сделать много - выпустили ASIC, он будет стоить еще дешевле. Поэтому GPU хороша в одном случае: когда данные надо все равно завести в компьютер и посчитать. Что случается реально нечасто, и даже в этом случае есть экономическая тонкость: сделав приблуду к серийной GPU (плату, которая ваш сигнал заведет в компьютер), вы львиную долю денег отдадите производителю GPU. А сделав плату на FPGA - заработаете эти деньги сами. Скажите, а сколько при этом используется умножителей одновременно? В FPGA могут одновременно использоваться все умножители, что там есть. В свежеобъявленном Stratix-IV 1300 штук максимум, и частота там будет уже повыше, мегагерц до шестисот примерно. В реальных микросхемах, которые можно купить немедленно - около полутысячи или чуть больше. А для чего нужна такая длина (аж 7000 к-тов) для фильтра, если точность их представления всего 16 бит? Или, по-другому. Уверены ли Вы, что для фильтра такой длины хватит точности представления к-тов в 16 бит? Я вообще не в курсе - я не алгоритмист ;). Задачу же не я ставил, я только обсуждаю ее технический аспект. Но по теме - в Virtex-5 умножители 18*25, так что можно данные тащить 25 бит и использовать 18-бит коэффиценты. Или наоборот. Мы расчитывали фильтры длиной 512 - 18*18 бит хватало. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
yes 5 25 июля, 2008 Опубликовано 25 июля, 2008 · Жалоба :) Интересно, сколько для этого потребуется кристаллов, и сколько они будут стоить? ;) Может, лучше в сторону CUDA и Nvidia посмотреть? Эти DSP на мат. вычислениях значительно мощнее самых "толстых" FPGA, а по цене просто несравнимы - стОят на порядок-два меньше. а документация на эти GPU и доступ к ним? или предполагается использовать готовые видеокарты? мне на будущее хотелось бы понять - насколько реально такое решение ---------------- а про использование FPGA - ничего страшного нет. если делать единичное устройство, то неизвестно какой вариант выгоднее возьмем Spartan-3A DSP : у них ~100 (86 или 124) блока МАС 18х18 48асс, тактовая до 300 то есть 1000 МАС @ 30МГц при выполнении 10 операций на каждом блоке еще на логике развести такие блоки на 30МГц не проблема - может еще 100 удастся вытащить то есть надо меньше 10 ПЛИС, при этом цена каждой 150-200$. то есть вполне бюджетно а если свою плату с GPU делать - там наверняка широченная шина памяти, то есть камней надо несколько если инженеру с зарплатой в несколько к$ придется "хачить" GPU или какие-то драйвера к видеокарте дольше месяца - то неизвестно, что дешевле Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
OldDSPer 0 25 июля, 2008 Опубликовано 25 июля, 2008 · Жалоба Благодарю увжаемый цех специалистов по ПЛИС. Из ответов я понял, что мои запросы находятся на передовых рубежах нынешнего состояния техники. Поинтересуюсь возможностью понизить сложность задачи разбиением устройства на структуру устройств. Вслед доп.вопросам о точности вычислений укажу, что она была выверена на MatLab и найдена достаточной. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться