|
DSP vs FPGA, Нужен совет |
|
|
|
Jun 6 2011, 19:02
|
Частый гость
Группа: Участник
Сообщений: 136
Регистрация: 13-05-11
Пользователь №: 64 972
|
ПЛИС - более мощный инструмент, чем DSP. В ПЛИС кирпичики, при помощи которых разрабатываете проект, это триггеры, логические элементы, т.е. ниже (мельче) уже некуда, если проект на ПЛИС работает, то он будет всегда работать, потому что все отлажено с точностью до фронта сигнала. При этом не надо думать, что на ПЛИС задачи придется решать на триггерах и лог. элементах (так и убиться недолго ), есть до фига более высокоуровневых инструментов, те же мегафункции и языки описания аппаратуры VHDL, Verilog и т.д. В DSP все может быть отлажено с точностью до тех блоков, которые наваяли разработчики, и при всем к ним уважении, багов там до хрена: некоторые задокументированны(аномалии), некоторые нет, некоторые вообще за баги не считают, типа багофичи . Так что ИМХО ПЛИС надежнее и универсальнее, но не без минусов: во-первых, с ПЛИС тупо больше инфы придется освоить, ну и они дороже по стоимости.
Сообщение отредактировал RoadRunner - Jun 6 2011, 19:03
|
|
|
|
|
Jun 6 2011, 20:01
|
Местный
Группа: Свой
Сообщений: 466
Регистрация: 21-06-05
Пользователь №: 6 205
|
Цитата(Neon_613 @ May 22 2011, 17:59) Здравствуйте! Я занимаюсь программированием МК. этого не хватает для качественной обработки сигналов). Скажите что "круче" FPGA или DSP. Я понимаю их различие. мне ближе DSP, но меня интересует: 1) кто быстрее? 2) кто дешевле? 3) кто проще 4) в мире что активнее юзают и почему? Идущий человек, быстрее стоящего поезда. Но поезд в движении, быстрее любого человека. Но перемещаться на поезде из комнаты в комнату не совсем оправдано. Но если у вас комнаты площадью несколько квадратных километров, то тогда, наверно, выгоднее поезд. И тд... Если ситуации где без FPGA ну совсем никак. А если ситуации, где он совсем не нужен. Специалист по FPGA будет говорить что они лучше всех. Специалист по DSP будет бить себя в грудь, и кричать что на на своем любимом DSP сможет решить любую задачу. И оба они будут по своему правы. Я, например, не использую ни DSP, ни FPGA. Я честно могу сказать, что в моей области они не используются, но будет ли мое мнение репрезентативным? Если хотите получить конкретный ответ, то уточните, что значит "быстрее", "дешевле", "проще"? Т.к. "быстрее" купить готовое, "дешевле" стоит К155 рассыпухой на радиобазаре а "проще" сделать все на ПК, используя уже готовый инструментарий.
|
|
|
|
|
Jun 7 2011, 09:34
|
Профессионал
Группа: Свой
Сообщений: 1 088
Регистрация: 20-10-09
Из: Химки
Пользователь №: 53 082
|
Цитата(Neon_613 @ May 22 2011, 18:59) Здравствуйте! Я занимаюсь программированием МК. этого не хватает для качественной обработки сигналов). Скажите что "круче" FPGA или DSP. Я понимаю их различие. мне ближе DSP, но меня интересует: 1) кто быстрее? 2) кто дешевле? 3) кто проще 4) в мире что активнее юзают и почему? С задачами определитесь сначала, а потом уже голову ломать будете. Есть задачи, с которыми DSP не справится, есть задачи в которых применение FPGA не оправданно дорого, есть естественно и спорные области. Я, например, не могу ответить даже на вопрос кто дешевле, так как ПЛИС могут стоить и 10 баксов и 10000 баксов. Тоже самое и с остальным. Цитата Для ПЛИС нужен повернутый мозг) не каждый прогрммер сможет. Программированием ПЛИС занимаются не программисты, а схемотехники со знанием языков программирования или вообще без них, если Вы считаете себя программером, то лучше оставьте затею их программирования, ибо действительно придется перестраивать мозг и чтобы стать именно хорошим разработчиком fpga придется потратить много времени.
Сообщение отредактировал bogaev_roman - Jun 7 2011, 09:39
|
|
|
|
|
Jun 7 2011, 10:35
|
Профессионал
Группа: Свой
Сообщений: 1 214
Регистрация: 23-12-04
Пользователь №: 1 643
|
Приветствую! Выбор - FPGA/DSP/MK/CPU/GPU/... зависит от многих факторов. В первую очередь от требований к системе обработки которую вы разрабатываете. Поэтому оценивая требуемые ресурсы для реализации требуемых алгоритмов хороший системщик должен учитывать все +/- как FPGA так и DSP. Для FPGA : + возможность организации различных/нестандартных интерфейсов + потоковая обработка + параллельная обработка как во времени так и в "пространстве" (железе) + высокое быстродействие - сложность реализации вычислительных алгоритмов - сложность разработки дизайна - высокая стоимость системы (в среднем) Для DSP : + сложные вычислительные алгоритмы + повторное использование кода / стандартные библиотеки + легкость (относительная) разработки + средняя стоимость системы (в среднем) - последовательная обработка во времени - среднее быстродействие При этом естественно также учитывается и то окружение в котором работаешь - доставабельность комплектации, возможность изготовления модулей, наличие и уровень программистов/дизайнеров, собственную лень и.т.д. и.т.п. .... Для многих задач сейчас можно реализовать решения только на DSP. Некоторые без FPGA не реализуются. Но наиболее оптимальные решения как всегда находятся при правильном делении обработки на АППАРАТНУЮ и ПРОГРАММНУЮ реализации. Сам я последние 10 лет активно использую как FPGA так и DSP и MK в различных комбинациях и по сути (с идеологической точки зрения) разницы в них не вижу - для меня это своеобразные кирпичики /ресурсы с помощью которых (ну и какой-то матери естественно ) приходится решать насущные проблемы. Успехов! Rob
|
|
|
|
|
Jun 7 2011, 13:55
|
Частый гость
Группа: Участник
Сообщений: 136
Регистрация: 13-05-11
Пользователь №: 64 972
|
Цитата Да ну?! Хачу такую ПЛИС! Почему то в реальной жизни ПЛИС'ы иногда так глючат, что мама не горюй Баги бывают как в софте, так и в прошивках ПЛИСов. может и так, хотя я честно говоря с ПЛИСами никогда ещё не залетал, может не все еще повидал... А вот с DSP... ох,ё моё, наелся уже вдоволь , Blackfinы в частности. А вообще просто из общих соображений плохо понимаю, что там в ПЛИС может глючить, если после отладки все работает. Цитата Баги бывают как в софте, так и в прошивках ПЛИСов Бич DSP, я бы сказал, это не баги в софте (к нему у меня по крайней мере претензий нет), а баги (или багофичи ) в харде, который непонятно как (для разработчика) функционирует, в общем конечно ясно, но детали... о них в курсе только разрабы. Вообще интересно какого рода баги могут быть в прошивках ПЛИС? Просто мне самому на будущее интересно знать, чего ждать
Сообщение отредактировал RoadRunner - Jun 7 2011, 14:00
|
|
|
|
|
Jun 7 2011, 14:24
|
Гуру
Группа: Свой
Сообщений: 3 123
Регистрация: 7-04-07
Из: Химки
Пользователь №: 26 847
|
Цитата Вообще интересно какого рода баги могут быть в прошивках ПЛИС? В основном всякая асинхронщина. Классический пример - автомат (FSM), управляющие сигналы для которого приходят напрямую из внешнего мира (без синхронизации с клоком самого автомата). Проявляется как 'может работать неделями, а потом вдруг встает в известную позу и ни на что не реагирует'. Вторая известная бага - пересечение клоковых доменов без соответствующей синхронизации. Проявляется так же. Третья бага - ввод данных без синхронизации (подавления метастабильности). От случая с FSM отличается в проявлениях тем, что не 'все слетает', а на выходе периодически появляются неправильные данные. Четвертая бага - отсутствие (полное или частичное) констрейнов. Проявляется тем, что иногда (при колебаниях температуры или питающего напряжения) FPGA начинает сбоить. Так же проявляется тем, что FPGA при малейших изменениях схемы (буквально поменяли один провод или константу) вдруг совершенно перестает работать. Это все так сказать 'физические' баги. Но никто не застрахован и от логических багов - неправильно расписали FSM (забыли какое нибудь состояние), что то недописали в логике и пр. Проявления - такие же как и в обычном программировании.
|
|
|
|
|
Jun 8 2011, 10:41
|
Adept
Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343
|
Цитата(bogaev_roman @ Jun 7 2011, 16:34) Программированием ПЛИС занимаются не программисты, а схемотехники со знанием языков программирования или вообще без них, если Вы считаете себя программером, то лучше оставьте затею их программирования, ибо действительно придется перестраивать мозг и чтобы стать именно хорошим разработчиком fpga придется потратить много времени. А кто такой программист? Вообще? И почему человек, занимающийся программируемыми логическими схемами (aka ПЛИС) является не программистом, а неким схемотехником? Я вот вообще не понимаю, причём тут схемотехника. Схемотехника - это проектирование схем, т.е. проектирование устройств в графических моделях. А в ПЛИС рулит HDL, т.е. язык. Регулярно встречается термин FPGA программист. Считаю его вполне адекватным. Программирование вообще - это достаточно широкая область. И HDL - это программирование на языках с нативной поддержкой параллельно исполняемых [алгоритмических] блоков. Никто не спорит, что думать тут приходится несколько иначе, чем при традиционном программировании на С. Но и при программировании на С на РС и МК тоже приходится думать весьма по-разному. Однако, это не отменяет того, что и то, и другое является программированием. Цитата(RobFPGA @ Jun 7 2011, 17:35) [...] Сам я последние 10 лет активно использую как FPGA так и DSP и MK в различных комбинациях и по сути (с идеологической точки зрения) разницы в них не вижу - для меня это своеобразные кирпичики /ресурсы с помощью которых (ну и какой-то матери естественно ) приходится решать насущные проблемы. Подписываюсь под каждым словом!
--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
|
|
|
|
|
Jun 8 2011, 10:48
|
Гуру
Группа: Свой
Сообщений: 2 435
Регистрация: 6-10-04
Из: Петербург
Пользователь №: 804
|
Цитата(dxp @ Jun 8 2011, 13:41) Я вот вообще не понимаю, причём тут схемотехника. Регулярно встречается термин FPGA программист. Так ведь сначало нужно по кирпичикам железо создать, на базе которого уже можно программировать. FPGA дизайнер получается. (Меня уже не удивляет, что молодое поколение за основу проектирования берет системы на кристалле там , где двумя автоматами можно обойтись. Руками кубики собирают.)
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|