Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Так зачем же нужны ПЛИС
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
Страницы: 1, 2, 3
ASN
Darti
Кроме очень высокой скорости вычислений, АЦП, криптографии и телекоммуникации, ПЛИС удобно использовать в качестве некого системного контроллера для удобной работы в ЦП с кучей нестандартных интерфейсов (пусть медленных, но критичных к задержкам).
Или реализовывать нестандартные алгоритмы декодирования кодов.
Кстати, вот и Intel подумывает встраивать в Xeon FPGA.
Чтобы решить как применить FPGA попробуйте реализовать в Matlab несколько РАЗНЫХ алгоритмов пакетного декодера какого-либо кода. У нас получилось, что некоторые алгоритмы (с активной работой с битами) на FPGA реализовать просто удобнее, чем на ЦП.
johan
Цитата(ASN @ Sep 17 2014, 19:19) *
Darti
Кстати, вот и Intel подумывает встраивать в Xeon FPGA.

Да, были такие новости, однако, они уже встроили в Intel Atom.
http://www.altera.com/devices/processor/in...proc-e6x5c.html
Правда, FPGA там не очень жирная)
adnega
Не стоит забывать, что к ПЛИС относятся и простенькие CPLD. Мне так очень нравится упихивать в EPM3032 кучу всякой мелкой логики.
A. Fig Lee
Цитата(adnega @ Sep 17 2014, 11:37) *
Не стоит забывать, что к ПЛИС относятся и простенькие CPLD. Мне так очень нравится упихивать в EPM3032 кучу всякой мелкой логики.

Мне тоже. Только туда ничего не влазит.
SM
Еще забыли такой круг задач, где МК может просто повиснуть, и что-то взорвется... А ПЛИС (особенно, CPLD), повиснуть никак не может, таким образом, во всяких защитных схемах ПЛИС нередко практически без вариантов, учитывая ее скорость реакции (в ней "собрана" просто какая-то схема, и не работает никаких долгих последовательно исполняемых программ).
adnega
Цитата(A. Fig Lee @ Sep 17 2014, 20:24) *
Мне тоже. Только туда ничего не влазит.

Нехитрые, LUT-подобные штуки очень хорошо реализуются (практически по ячейке на выход).
С триггерами (регистры и т.п.) ресурс быстро заканчивается.
Jackov
Цитата(Darti @ Sep 17 2014, 11:28) *
Например, что можно сделать такого простого и полезного, при этом чтобы сказать вот смотри ты такое не сделаешь на своем мк.
Цитата(Darti @ Sep 17 2014, 15:00) *
По факту столько ответов в теме, а КПД нулевой, ни одной ссылки на проект сделанный на ПЛИС, который нельзя сделать на мк, но при этом был бы понятен начинающему. Думаю тему можно закрыть, она бесполезна, буду ориентироваться на марсоход, раз это предел мечтаний.
Думается, что "сделать такого простого и полезного" и "сказать вот смотри ты такое не сделаешь на своем мк", а также "проект сделанный на ПЛИС который нельзя сделать на мк" и "при этом был бы понятен начинающему" вещи несовместимые. Как уже было сказано много раз выше, ПЛИС для больших и серьёзных задач.

Цитата(Darti @ Sep 17 2014, 15:00) *
Я пересмотрел тонну видео на ютюбе, пересмотрел кучу сайтов по fpga, гуглом я умею пользоваться. Ни один из сайтов не тянет на обучалку для человека который не знаком с плис. Максимум 2-3 статьи по верилогу.
Вот это смотрели?
http://www.youtube.com/user/jack0ov/videos
Да, это не совсем про ПЛИС (пока), это только подступы к оной. Ну и верилог в будущем также ожидается.
Вот простенькая схемка реализованная на ПЛИСине, конечно эта логика простая и её можно реализовать на МК, но это же для начинающих.
http://youtu.be/oQQH8lj6JyQ
Darti
Цитата(Jackov @ Sep 17 2014, 22:15) *
Думается, что "сделать такого простого и полезного" и "сказать вот смотри ты такое не сделаешь на своем мк", а также "проект сделанный на ПЛИС который нельзя сделать на мк" и "при этом был бы понятен начинающему" вещи несовместимые. Как уже было сказано много раз выше, ПЛИС для больших и серьёзных задач.

Вот это смотрели?
http://www.youtube.com/user/jack0ov/videos
Да, это не совсем про ПЛИС (пока), это только подступы к оной. Ну и верилог в будущем также ожидается.
Вот простенькая схемка реализованная на ПЛИСине, конечно эта логика простая и её можно реализовать на МК, но это же для начинающих.
http://youtu.be/oQQH8lj6JyQ

Воу, да это видел, я по вашим лекциям учился. Респект и уважуха beer.gif
A. Fig Lee
Измерение временных отрезков на мк сложнее изза времени реакции на прерывание, например.
Джиттер возможен. А на ПЛИСе хорошо.
iosifk
Цитата(Darti @ Sep 17 2014, 23:02) *
Воу, да это видел, я по вашим лекциям учился. Респект и уважуха beer.gif

А мой "Краткий Курс" смотрели?
Jackov
Цитата(Darti @ Sep 17 2014, 22:02) *
Воу, да это видел, я по вашим лекциям учился. Респект и уважуха beer.gif
Я рад, хоть кому-то польза. ))
Darti
Цитата(iosifk @ Sep 17 2014, 23:28) *
А мой "Краткий Курс" смотрели?

Здравствуйте, нет не видел. Занятно, целый день вертелся вопрос, но хотел сам до него додуматься. Сейчас открыл Ваш курс, полистал, случайно остановился на одной странице и увидел ответ. Бывает же такое biggrin.gif

С самим Verilog`ом проблем не возникает, мне он не показался сложным. Хотя пока я рожаю не оптимальные решения, но они работают, со временем буду совершенствоваться.

Пока день прошел, освоил SPI smile3046.gif

Xenia
Лично у меня мнение, что ПЛИС понадобились только потому, что ради потокового видео и быстрых интернет-каналов все дружно полезли наращивать гигагерцы. Вот и оказалось, что (микро)контроллеры с такой работой не справились из-за своих ограничений в скорости. А если бы не это, то к ПЛИС бы никто на 100 шагов не подошел, все бы отплёвывались. sm.gif
Jackov
Цитата(Xenia @ Sep 17 2014, 23:51) *
Лично у меня мнение, что ПЛИС понадобились только потому, что ради потокового видео и быстрых интернет-каналов все дружно полезли наращивать гигагерцы. Вот и оказалось, что (микро)контроллеры с такой работой не справились из-за своих ограничений в скорости. А если бы не это, то к ПЛИС бы никто на 100 шагов не подошел, все бы отплёвывались. sm.gif
Что же вы такие плисоненавистники? Процессоры, в своей сути, последовательные устройства. Взяли инструкцию - выполнили, берут следующую. Всё жёстко регламентировано, как говорится, ни вздохнуть ни ... выдохнуть.
Толи дело ПЛИС - абсолютный параллелизм, а значит безграничная свобода действий.
akorud
Мое мнение (как технического директора в коммерческой фирме) - используем ПЛИС когда нет вариантов, так как дорого. Примеры:
- предлагаемый тут шлейф (loopback) для 10G Ethernet делали бы на SoC - чип может (?) дороже, но стоимость разработки в разы дешевле;
- генерация данных для ЦАП, требуемый уровень джиттера меньше наносекунды - только ПЛИС;
- алгоритм ЦОС требующий порядка 250G умножений в секунду в реальном времени - только ПЛИС.
Практически во всех наших проектах связка SoC + FPGA.
Как тут писали проблема в том, что простые проекты на ПЛИС - искусственные, но без них не продвинешся к проекту который можно реализовать только на ПЛИС.
Лично для меня школой и переломным моментом стал простой проект ЦОС (минимальный Spartan 6) в котором выходом был аналоговый сигнал с ЦАП.
A. Fig Lee
Цитата(Xenia @ Sep 17 2014, 16:51) *
Лично у меня мнение, что ПЛИС понадобились только потому, что ради потокового видео и быстрых интернет-каналов все дружно полезли наращивать гигагерцы. Вот и оказалось, что (микро)контроллеры с такой работой не справились из-за своих ограничений в скорости. А если бы не это, то к ПЛИС бы никто на 100 шагов не подошел, все бы отплёвывались. sm.gif

Да они выросли из PAL дивайсов
SM
Цитата(Xenia @ Sep 18 2014, 00:51) *
А если бы не это, то к ПЛИС бы никто на 100 шагов не подошел, все бы отплёвывались. sm.gif


Да ладно... Вот у меня задачка была, выше уже намекал. JTAG-контроллер, работающий на частотах до 100 МГц тактовой (это не видео и даже не гигагерцы) и могущий реально на этой скорости без тактов в JTAG-паузах вести обмен по USB high speed, и при этом за вменяемые деньги (до $12..14). Обошлось одной ПЛИС на 8К LUTов со встроенной флеш-памятью, без МК вообще (ПЛИС + USB трансивер (не контроллер!) + питание). Предложите вменяемое аналогичное решение без ПЛИС!

Вторая задачка для примера - надо было подключить 16 штук AC-97 аудиокодеков к DSP-процессору. Опять ПЛИС нужна - организовали там многоканальный контроллер, который распихивает данные с кодеков по 32 FIFO-буферам, а также отслеживает реальные моменты переключения усиления в кодеках, чтобы программа в DSP знала, начиная с какого данного оно сменилось.

Третья задача - логика защиты силовой части устройства от "сквозняков", возбуждений и перегрузок. Там таймер, и немного логики, но довольно быстрой - не среагируешь за доли микросекунды, кирдык всему. Это - мелкая CPLD. И ПЛИСы значительно надежнее из-за того, что там нет (ну, как правило, нет, за исключением наличия софт-ядер CPU, что, IMHO, жесткое извращение, за исключением случаев прототипирования ASIC) программы.

И так можно дальше долго продолжать, зачем нужны небольшие ПЛИС без всякого видео и гигагерц. А с видео, кстати, неплохо справляются всякие там жирные TMS320, под него заточенные.
AlexandrY
Цитата(SM @ Sep 18 2014, 07:52) *
Да ладно... Вот у меня задачка была, выше уже намекал. JTAG-контроллер, работающий на частотах до 100 МГц тактовой (это не видео и даже не гигагерцы) и могущий реально на этой скорости без тактов в JTAG-паузах вести обмен по USB high speed, и при этом за вменяемые деньги (до $12..14). Обошлось одной ПЛИС на 8К LUTов со встроенной флеш-памятью, без МК вообще (ПЛИС + USB трансивер (не контроллер!) + питание). Предложите вменяемое аналогичное решение без ПЛИС!

Вторая задачка для примера - надо было подключить 16 штук AC-97 аудиокодеков к DSP-процессору. Опять ПЛИС нужна - организовали там многоканальный контроллер, который распихивает данные с кодеков по 32 FIFO-буферам, а также отслеживает реальные моменты переключения усиления в кодеках, чтобы программа в DSP знала, начиная с какого данного оно сменилось.

Третья задача - логика защиты силовой части устройства от "сквозняков", возбуждений и перегрузок. Там таймер, и немного логики, но довольно быстрой - не среагируешь за доли микросекунды, кирдык всему. Это - мелкая CPLD. И ПЛИСы значительно надежнее из-за того, что там нет (ну, как правило, нет, за исключением наличия софт-ядер CPU, что, IMHO, жесткое извращение, за исключением случаев прототипирования ASIC) программы.

И так можно дальше долго продолжать, зачем нужны небольшие ПЛИС без всякого видео и гигагерц. А с видео, кстати, неплохо справляются всякие там жирные TMS320, под него заточенные.


Эти примеры только подтверждают, что только на ПЛИС можно решать только фрагменты задач.
Законченные системы всегда содержат процессор. Soft-процессор там или Hard не важно.
Поэтому любой аппнот на чисто ПЛИС кажется недоделанным, там что-то недосказано, и будет всегда таким.

Нынче если нужна сверх скорость, то применяют ASIC вместо ПЛИС.
Если нужна масштабируемость, то применяют multicore архитектуры.

Ниша ПЛИС сужается особенно в свете вот таких трендов- http://www.electronicspecifier.com/micros/...icrocontrollers


SM
Цитата(AlexandrY @ Sep 18 2014, 10:05) *
Законченные системы всегда содержат процессор. Soft-процессор там или Hard не важно.

Вот Вам, например, конкретный законченный проект без какого либо (внутри устройства) процессора - http://sauris.de/ru/products/xds510v2/
Также могу привести еще кучу примеров законченных проектов с PCI, PCIe, или различными Ethernet интерфейсами, в которых нет ни софт, ни хард процессоров. Там софт/хард процессоры применяют либо ленивые, которым лень писать хард IP, либо бедные, которые не могут их купить.

А ASIC применяют, если, кроме скорости, еще и массовость достаточная. Большинство проектов на ПЛИС делаются мелкосерийно, и стоят соотв. денег.
blackfin
Цитата(AlexandrY @ Sep 18 2014, 10:05) *
Эти примеры только подтверждают, что только на ПЛИС можно решать только фрагменты задач.

Так это только подтверждает, что ПЛИСы по-прежнему выполняют функцию Glue-Logic, т.е., именно то, ради чего они и были придуманы..
Цитата(AlexandrY @ Sep 18 2014, 10:05) *
Нынче если нужна сверх скорость, то применяют ASIC вместо ПЛИС.

Это если тираж изделия > 100 тыс./год, а если меньше, то делать ASIC экономически невыгодно.

Цитата(SM @ Sep 18 2014, 10:14) *
Также могу привести еще кучу примеров законченных проектов с PCI, PCIe, или различными Ethernet интерфейсами, в которых нет ни софт, ни хард процессоров.

Справедливости ради, хард процессор там всё-таки есть, и это процессор внутри ПК. wink.gif
SM
Цитата(blackfin @ Sep 18 2014, 10:16) *
Так это только подтверждает, что ПЛИСы по-прежнему выполняют функцию Glue-Logic,

Это, скорее, подтверждает ограниченность автора в знаниях о проектах на ПЛИС sm.gif

Цитата(blackfin @ Sep 18 2014, 10:18) *
Справедливости ради, хард процессор там всё-таки есть, и это процессор внутри ПК. wink.gif

Справедливости ради, ПК не входит в комплект поставки данных устройств, а значит данное устройство не содержит никаких процессоров.
blackfin
Цитата(SM @ Sep 18 2014, 10:19) *
Это, скорее, подтверждает ограниченность автора в знаниях о проектах на ПЛИС sm.gif

Какого автора? Выражайтесь яснее.. biggrin.gif

Цитата(SM @ Sep 18 2014, 10:20) *
Справедливости ради, ПК не входит в комплект поставки устройства при его продаже, а значит устройство не содержит никаких процессоров.

И тем не менее, без ПК, то есть без процессора, ни одна плата PCI не работоспособна.
GriXa
RED Pitaya
Open-Source генератор, осциллограф и ещё куча всего на Xilinx Zynq 7010 SoC

SM
Цитата(blackfin @ Sep 18 2014, 10:21) *
Какого автора? Выражайтесь яснее.. biggrin.gif

Того, которому Вы отвечали.

Цитата(blackfin @ Sep 18 2014, 10:21) *
И тем не менее, без ПК, то есть без процессора, ни одна плата PCI не работоспособна.

А причем тут ЭТО? Даже если не лезть в формальные дебри спецификаций PCI, ethernet, и т.п., в которых нет ничего про то, что одним из устройств на таких шинах обязан быть процессор, чтобы все это заработало, достаточно именно того, что вышеуказанные устройства являются законченными, так как продаются именно в таком виде, в каком продаются, без каких либо процессоров.

Также, напомню об устройствах защиты в различных силовых блоках, базирующихся на ПЛИС. Там, нередко, совсем нет процессоров, и даже близко, ибо нафиг не нужны, ПЛИС надежнее и реакция у нее быстрее.
blackfin
Цитата(SM @ Sep 18 2014, 10:26) *
.. чтобы все это заработало, достаточно именно того, что вышеуказанные устройства являются законченными, так как продаются именно в таком виде, в каком продаются, без каких либо процессоров.

Не, ну так можно договориться вообще до чего угодно.. Тогда кто-то особенно умный, должен дать нам определение "законченного устройства"..
А то получается, что любая м/схема "является законченным устройством, так как продается именно в таком виде, в каком продается, без каких либо процессоров."
SM
Цитата(blackfin @ Sep 18 2014, 10:31) *
А то получается, что любая м/схема "является законченным устройством, так как продается именно в таком виде, в каком продается, без каких либо процессоров."

По сути, верно, так как у одних производителей их законченная продукция - кремниевые пластины, а у других - космические корабли. И то, и это на каком то этапе является законченным продуктом.

Но мы ведь ведем речь о вполне конкретных вещах - самых различных электронных устройствах, присутствующих на рынке в том виде, в котором их продает производитель, а не о том, совместно с чем потом их могут использовать пользователи - тут уже можно нафантазировать чего угодно.
Torpeda
Как все много букаф понаписали... Это наверное потому, что подсознание пытается оправдать необходимость существования своего разума с навыками проектирования ПЛИС sm.gif

А почему-бы не посмотреть на вопрос с другой стороны....
ПЛИС - это учебная платформа для освоения технологий цифрового дизайна.
Цифровой дизайн в мире ASIC совсем не ограничен гигагерцами и гигасемпелами...
В ASIC вы вполне можете найти задачи по сложности сравнимые с миганием светодиода (например многие "аналоговые" микросхемы имеют цифру построенную на простой FSM, для тримирования внутренних аналоговых блоков...)
И опятьтаки, ктото-же создаёт эти микроконтроллеры, и другие микросхемы - внутри всё это по большей части цифровой дизайн.
Такчто, если вы решили войти в мир ASIC - ПЛИС идеальная тренировочная база.
SM
Цитата(Torpeda @ Sep 18 2014, 10:55) *
ПЛИС идеальная тренировочная база.

И не только тренировочная, а еще и вполне реальное средство отладки и тестирования решений для ASIC, часто гораздо более удобное, чем замыкание всего процесса на средства моделирования. Но вот это, как раз, к законченным изделиям отнести сложно, так как это внутренняя для предприятия часть цикла разхработки/производства. Это совершенно отдельная статья применения ПЛИС.
AlexandrY
Цитата(SM @ Sep 18 2014, 09:26) *
А причем тут ЭТО? Даже если не лезть в формальные дебри спецификаций PCI, ethernet, и т.п., в которых нет ничего про то, что одним из устройств на таких шинах обязан быть процессор, чтобы все это заработало, достаточно именно того, что вышеуказанные устройства являются законченными, так как продаются именно в таком виде, в каком продаются, без каких либо процессоров.

Также, напомню об устройствах защиты в различных силовых блоках, базирующихся на ПЛИС. Там, нередко, совсем нет процессоров, и даже близко, ибо нафиг не нужны, ПЛИС надежнее и реакция у нее быстрее.


Неа, контекст в нашем обсуждении совсем не таков.

TC явно противопоставил ПЛИС и микроконтроллеры. У него или-или.
Потому что у них разные технологии разработки и обе одному человеку тяжеловато поддерживать.
Поэтому разделом является можно ли законченный продукт (здесь конткретно некий аппнот) одному специалисту сделать на ПЛИС не занимаясь программированием процессоров.

Ответ - нельзя. Все посты здесь это только доказывают. JTAG адаптеры без драйверов не работают.
Обычно кто сделал хороший JTAG скорее всего сделает плохие драйвера либо потратит на это неразумное количество времени. biggrin.gif
SM
Цитата(AlexandrY @ Sep 18 2014, 13:52) *
Ответ - нельзя. Все посты здесь это только доказывают. JTAG адаптеры без драйверов не работают.


Причем тут драйверы и МК? Драйверы пишутся не для МК! А для законченного устройства в целом, будь оно на МК или на ПЛИС или на них вместе!

1) JTAG адаптер можно сделать на МК, без ПЛИС, но он не будет работать на 100 МГц внешней TCK (приходящей извне по отношению к адаптеру) по любому. А на внутренней, может и будет, но все равно, с доброй долей времени нахождения в IPAUSE/DPAUSE.
2) JTAG адаптер можно сделать на ПЛИС без МК, он будет работать на 100 МГц TCK, и без лишних пауз.
3) JTAG адаптер можно сделать на ПЛИС+МК. Он тоже будет работать на 100 МГц TCK, но, с каким-то временем в паузах из-за лишней прослойки между USB и JTAG. И не будет дешевле варианта 2. Но зато не надо писать/покупать USB корку для ПЛИС.

И все это, вышеперечисленное, при условии, что драйвер пишется одинаково для всех 3-х вариантов.

Итого - JTAG адаптер, работающий на 100 МГц, выгоднее всего сделать именно на ПЛИС без МК. Вот и сравнивая среди JTAG адаптеров, оказывается, что эффективнее всего его сделать на одной ПЛИС без МК. Очень конкретный пример противопоставления реализаций одного и того же устройства на МК, ПЛИС, или МК+ПЛИС.



Цитата(AlexandrY @ Sep 18 2014, 13:52) *
Обычно кто сделал хороший JTAG скорее всего сделает плохие драйвера либо потратит на это неразумное количество времени. biggrin.gif

В корне не согласен sm.gif sm.gif Так как невозможно сделать хорошую JTAG-железку, не зная всех подробностей и подноготной устройства драйверов, протоколов (всех уровней от низшего), и нюансов обмена как с ОС, так и с отлаживаемыми микросхемами. Как и нельзя сделать хороший драйвер, не имея возможности подправить железо под какие-то неожиданные нюансы, которые периодически возникают в процессе писания драйверов. В общем, когда говорим драйвер - подразумеваем железку. Когда говорим железка - подразумеваем драйвер. Они - единое целое и неразрывное, и лучше, чем одному человеку, эту связку сделать никак нельзя. Личный опыт, который пока еще ни разу не был опровергнут (Возможно, существуют такие два разработчика, которые друг друга понимают с полуслова и работают также эффективно, как и один, но это чисто математическое допущение, в природе не встречающееся) ... Я никогда не берусь ни за какие железки, если драйвер пишу не я, и наоборот, так как знаю, что фигня получится. Но это, так сказать, совсем мимо цели. Оффтопик. Сорри.
iosifk
Цитата(Darti @ Sep 18 2014, 00:08) *
Здравствуйте, нет не видел. Занятно, целый день вертелся вопрос, но хотел сам до него додуматься. Сейчас открыл Ваш курс, полистал, случайно остановился на одной странице и увидел ответ. Бывает же такое biggrin.gif

С самим Verilog`ом проблем не возникает, мне он не показался сложным. Хотя пока я рожаю не оптимальные решения, но они работают, со временем буду совершенствоваться.

Пока день прошел, освоил SPI smile3046.gif

Еще я провожу персональные занятия по работе с ПЛИС. Захотите - пишите или по скайпу...
Darti
Цитата(AlexandrY @ Sep 18 2014, 13:52) *
Неа, контекст в нашем обсуждении совсем не таков.

TC явно противопоставил ПЛИС и микроконтроллеры. У него или-или.
Потому что у них разные технологии разработки и обе одному человеку тяжеловато поддерживать.
Поэтому разделом является можно ли законченный продукт (здесь конткретно некий аппнот) одному специалисту сделать на ПЛИС не занимаясь программированием процессоров.

Ответ - нельзя. Все посты здесь это только доказывают. JTAG адаптеры без драйверов не работают.
Обычно кто сделал хороший JTAG скорее всего сделает плохие драйвера либо потратит на это неразумное количество времени. biggrin.gif

Предыстория всей этой ситуации есть. Давеча я халтурил в одном НИИ, занимался проектированием и по мелочи делал реверс их же устройств на мк, ибо у них были свои терки в коллективе. Им срочно нужен был человек на постоянку, но львиная доля работы была в продумывании конструктивов, проведение испытаний, согласованиях и бумажках. Из вкусного только разводка плат и составление схем. Работы как таковой по программированию достаточно мало. Я решил что это не для меня, на последок товарищ начальник выдавил такую фразу: "Если ты хочешь заниматься программированием микроконтроллеров, то ты родился не в той стране. Вот если бы ты знал ПЛИС, то тебе были бы открыты все дороги". В тот момент, мне было нечего сказать, я ничего не знал о ПЛИС, поэтому поставил себе цель как минимум освоиться. Сегодняшним умом я понимаю, что все штуки, которые там были реализованы на ПЛИС, с легкостью делаются на мк. Эта тема только подтвердила мои сомнения.

Есть и другая сторона медали, так уж вышло, что мое образование далеко от электроники. Текущая моя профессия ни то ни се, зп ниже того, что предлагают студентам электронщикам, а если дадут пинка под зад, ничего похожего больше не найти. Единственный плюс - есть время и приборы. Поэтому изучаю электронику серьезно и агрессивно biggrin.gif Конечная цель - найти нормальную работу. К сожалению сейчас доказать, что не верблюд не могу. Если пойти допустим проектировщиком, с надеждой перейти разработчиком/программистом, то если ты выполняешь свою работу, то ты нужен там где нужен, никто тебя из проектантов не переведет в программисты, пройдено. Варианты пойти на маленькую зарплату тоже не прокатывают. Обычно в таких фирмах проекты делаются по нескольку лет, да и завершенный проект для таких фирм не показатель - директор пришел, посчитал прибыль, пожал руку, сказал спасибо, начальники отдела под столом поделили спасибо, а работник должен радоваться тому, что его еще не выгнали sm.gif Через это уже проходили, знаем. Поэтому на текущий момент, все что я могу, это клепать проекты дома, либо для себя, либо для кого то другого, выкладывать на всеобщее обозрение с мыслью что меня заметят.

На самом деле, мне все равно будут ли это устройства на ПЛИС, мк или чем то другом или все вместе. Просто мне не хочется повторять те проекты, которые я уже делал на мк, поэтому цель темы есть ли альтернатива? Но похоже что нет, раз другого варианта пока нет, значит пусть так и будет, буду повторять пройденное. Буду лучше разбираться в мелочах.

Цитата(iosifk @ Sep 18 2014, 14:47) *
Еще я провожу персональные занятия по работе с ПЛИС. Захотите - пишите или по скайпу...

Спасибо Вам большое, но у меня у самого есть опыт преподавания, из него я вывел правило, которое действует на 99% - если человек хочет, он сам научится, а вдалбиливать бесполезно. Поэтому все преподавания по скайпу и личные встречи это пустая трата времени и сил. В 1% бывают случаи, когда это нужно, например когда 5 лет провел в институте, ничему не научился и тут срочно нужно к диплому хоть на тройку самому что то рассказать. Прошу прощения, если у Вас с обучающимися это не так. От общения, конечно я бы не отказался, бывают случаи когда нужно порассуждать в слух, послушать чужое мнение, обсудить целесообразность решений. Но думаю Вы не это имеете ввиду sm.gif
iosifk
Цитата(Darti @ Sep 18 2014, 15:31) *
Прошу прощения, если у Вас с обучающимися это не так. От общения, конечно я бы не отказался, бывают случаи когда нужно порассуждать в слух, послушать чужое мнение, обсудить целесообразность решений. Но думаю Вы не это имеете ввиду sm.gif

Да я же не "академик"... И мои "уроки" - это чистая практика.
Ну а дальше - дело Ваше. А захотите поговорить - то по скайпу...
syoma
Попробую вставить свои пять копеек - рассказать разницу с другой стороны.
Я в настоящий момент являюсь системным интегратором и проект менеджером. И уже несколько раз сталкивался со спецами, которые с процессоров переходили на ПЛИСы, и с ПЛИСов на процессоры. В итоге первыми фразами после первых трех месяцев работы над новой темой у них обычно были: "Да я б зафигачил это дело на TMS320 в три раза быстрее, чем на плисинах", "Да я б на дешевом спартане сделал бы в 10 раз меньше" и т.д. Надеюсь понятно от какой категории специалистов это звучало?

Так получилось что наш круг задач - управление силовой электроникой с применением ЦОС, практически одинаково хорошо решается и на ПЛИС и на DSP. И поэтому может дойти до холивара.

Но мне, как проект менеджеру, в принципе не важно на каком железе оно будет реализовано. Мне важны конечная стоимость и качество продукта, стоимость и сроки разработки, легкость поддержки.

В итоге если рассматривать ПЛИС и процессоры с этой стороны, то для более менее простых ЦОС задач лично для меня легко прослеживается граница:
- в первую очередь стоимость железа - ПЛИС намного дороже сопоставимых DSP, если брать все со всей обвязкой.
- с другой стороны чтобы решить одну и ту же задачу на ПЛИС, нужно обычно намного меньше человекочасов и сопровождать это дело намного легче. Также простая миграция на следующие чипы.

Т.е. вывод простой - если разработка сложная, а количество серийных изделий невелико и стоимость конечного железа не так важна - то надо делать на ПЛИС.
А если будет серия и важна конечная стоимость изделия - то однозначно дешевый DSP и посадить команду программистов для разработки и отлизывания софта.
SM
Цитата(syoma @ Sep 18 2014, 16:53) *
то однозначно дешевый DSP и посадить команду программистов для разработки и отлизывания софта.

А Вы хотите сказать, что на ПЛИС проще отладить ЦОС-алгоритмы? И "команда программистов" там не нужна? Моя практика, например, говорит об обратном. Что, обычно, после матмодели, алгоритм отлаживается на каком нибудь языке программирования, на DSP на ките, или, вообще, на PC, так как это просто и быстро с учетом отменно развитой внутрисхемной отладки и последовательности исполнения операций, а уже потом реализуется на ПЛИС, если этого требует проект (не хватает быстродействия у DSP, либо надежности, либо на ПЛИС выходит дешевле (такое тоже бывает), ну и т.п. причины).
syoma
Цитата
А Вы хотите сказать, что на ПЛИС проще отладить ЦОС-алгоритмы? И "команда программистов" там не нужна?

Ну, наверное, да. Когда нет цели впихнуть побольше в поменьше, то параллелизируемость процессов на ПЛИС и оперирование сигналами вместо переменных дает явный выигрыш в переводе алгоритма в софт, так как структура остается та же. Опять же я говорю про простые ЦОС вещи - фильтрацию, косинусы, синусы, тригонометрические преобразования, FFT.
SM
Цитата(syoma @ Sep 18 2014, 17:11) *
то параллелизируемость процессов на ПЛИС и оперирование сигналами вместо переменных дает явный выигрыш в переводе алгоритма в софт,

Не, ну я согласен, что на верилоге оно может и быстрее опишется, чем на С для процессора. Хотя, скорее, одинаково. А отладка-то? Ввод-вывод тест-векторов, сравнение их с полученными на модели, поиск ошибок, почему тут бит не совпал, почему тут переполнение переполнилось, и т.п....
ASN
Darti
Дык, дело в том, что львиная доля работы инженера это и заключается в продумывании конструктивов, проведение испытаний, согласованиях и бумажках!
А разводка плат и составление схем - это приятные, скрашивающие серые будни, "плюшки".
Странный у Вас начальник: обычно именно ПЛИСники - это так, обслуживающий персонал для программистов (и микроконтроллеров в том числе).
Потому что разработка на ПЛИС, как правило, дорогая и долгая, а, значит, и мало каким фирмам по силам. Поэтому и рынок труда узкий. А программисты могут хоть сайты "лабать", хоть 1С настраивать, хоть драйверы писать. Могут уйти, если что не так. Поэтому их берегут, а ПЛИСунов можно и "нагнуть" - всё равно тяжело куда-нибудь ещё "рыпнуться".
Если Вы сами пришли к выводу, что все штуки, которые там были реализованы на ПЛИС, с легкостью делаются на мк, то значит, что руководство, мягко говоря, некомпетентно, денег не считает и в результате мало заинтересовано. Этим надо пользоваться: изучайте в своё удовольствие программирование, реализуйте алгоритмы ЦОС хоть на ПЛИС, хоть на ПЦОС. Получите достаточный опыт - перейдёте в программисты. Кстати, программисты со знанием схемотехники очень ценятся: они ПОНИМАЮТ как работает система.
syoma
Так же являясь менеджером проектов, ни разу не встречал, чтобы одну и ту же задачу на ПЛИС, нужно обычно намного меньше человекочасов и сопровождать это дело намного легче. Используем ПЛИС когда уж без неё никак. Лучше, быстрее и дешевле на подходящем СнК. Речь о ЦОС (корреляторы, декодеры и прочие модемы).
SM
Цитата(ASN @ Sep 18 2014, 18:11) *
хоть драйверы писать.

Да нуу.... Они, в подавляющем большинстве, их как огня боятся, как и ядра ОС в целом.
Mihey_K
Не пройти мимо sm.gif откройте любой осцилл, даже самый дешевый и самый китайский - и вы увидите, что весь сбор данных с АЦП, их накопление и фильтрация - все на ПЛИС. И там еще есть МК - но только для ЧМИ и подключения к ПК.
WitFed
Да, у нас тоже с ПЛИС всё очень тяжко, хотя начальство их очень любит.
На город 3 конторы, где нужны ВериЛожники, и они мигрируют туда-сюда по текущим политическим реалиям... wink.gif
Я уж лет 5 пропагандирую параллельную разработку -- задача ставится и DSP-шникам, и ПЛИСоводам, они параллельно её решают как-то, моделят скорости-потребности, потом собрание, обсуждение с плакатами -- и принятие решения.
Но ввиду преобладания "железячников" среди руководства и разработки плат, всё очень тормозится, хотя большинство наших алгоритмов гораздо более DSP-шные -- Тексасы их параллелят отлично, частота у них на порядок больше, цена -- на порядок меньше, время отладки при наличии отладчика и нормальных голов -- тоже, ну только вот санкции последнего периода и выделяемая в Ваттах мощь ограничивают... wink.gif
ПЛИС хорошо может помочь, если некий "молодой" интерфейс ещё не встроен в серийные процессоры, не завоевал большую нишу, тогда ПЛИС будет "подносить снаряды" "круто"-процессору, здесь однокристалльный SoC -- очень перспективное направление.
Вот с ARM-ом их скрестили, я сижу мучаю Альтерную реализацию уже довольно долго -- плохо с обучением и поддержкой. Интел вроде тоже что-то мутил...
Когда с Тексасами-VLIW заварится настоящая каша -- будет бомба ! Ибо у них документация на порядок приличнее, всё сразу понятно, пара DSP-шных ядер, одно управляющее, 100К ячеек для навесной логики -- и будет нам "щастие", если доживём до конца "чёрных" дней wink.gif
К нашим процам типа Эльбруса тоже можно прикрутить ончипную ПЛИС для реализации чего угодно интерфейсного "на вырост", но уж сразу со флэшной ориентацией конфигурации, для суровых применений -- включил, и оно сразу дышит.

...Для Darti надо бы определиться в своём городе политически, какой "касте" больший кусок пирога достаётся (не считая самих политиков и обслуживающих их юристов-экономистов-менеджеров), и рулить в том направлении. Смешанные спецы должны быть в гораздо большем почёте, вон сколько объявлений тут мелькает !

А по конкретной задаче -- очень хорошая будет результативность и авторитет "в цеху" ПЛИСоводов, если реализовать (как тут не раз просилось) логический анализатор типа СигналТапка Альтерного, но с функционалом сохранения-чтения на внешней памяти, который сможет не только тычки фиксировать, но и периоды между ними, выгружать всё наловленное по JTAG-у более-менее быстро, а ширину шины входных контрольных точек не ограничивать вообще. Памяти внутренней не хватает всегда, а DDR -- вагоны, только надо суметь накопить данных об изменениях в небольшом буфере накристаллки, в каждую дырку обменов на DDR встрять и вылить пачку в кольцевой буфер... Как-то б ещё вместо СТапка (или параллельно с ним) подключаться к записываемой в него шине данных -- её Квартус отлично формирует в GUI своём...
Хостовую прогу тоже бы неплохо написать свою, чтоб из ПЛИС по JTAG читала параметры этого анализаторного ядра, стартовала-стопила-отображала времянки -- и выложить потом на свободный доступ !
Автор такого конгломерата будет гораздо выше среднероссийского плинтусного уровня !
Дополнительного функционала тогда все ещё запросят индивидуально, но тогда уж можно начать бабки стрелять wink.gif
У нас на фирме давно пытаются сделать такую PnP-ядрищу, чтобы и имена контрольных точек хранила в прошивке сразу, но пока тяжеловато... Я ещё прошу быстрый/широкий интерфейс внутри платы, чтобы по 32 бита тянуть времянку на девайсе, если что-то явно сдохло, а JTAG не подключён -- дело жизненное, глюки не всегда бывают, когда их ловят в пробирках, а так во флэшь можно скинуть наловленное и по почте авторам заслать с объекта...
des333
Цитата(ASN @ Sep 18 2014, 18:11) *
Потому что разработка на ПЛИС, как правило, дорогая и долгая, а, значит, и мало каким фирмам по силам. Поэтому и рынок труда узкий. А программисты могут хоть сайты "лабать", хоть 1С настраивать, хоть драйверы писать. Могут уйти, если что не так. Поэтому их берегут, а ПЛИСунов можно и "нагнуть" - всё равно тяжело куда-нибудь ещё "рыпнуться".


Так может писать только человек, который никогда не искал хорошего FPGAшника sm.gif

И много Вы видели людей, которые одновременно и 1С знают и драйвера писать умеют?

des00
Уважаемые участники. Остаемся в пределах темы ТС, не сваливаемся в размышления о жизни (с) модератор
syoma
Цитата(ASN @ Sep 18 2014, 16:11) *
Так же являясь менеджером проектов, ни разу не встречал, чтобы одну и ту же задачу на ПЛИС, нужно обычно намного меньше человекочасов и сопровождать это дело намного легче. Используем ПЛИС когда уж без неё никак. Лучше, быстрее и дешевле на подходящем СнК. Речь о ЦОС (корреляторы, декодеры и прочие модемы).

Задачи, наверное, разные. А вот мы наоборот - используем процы, когда уж без него никак. В нашем случае у проца удел - коммуникационные стеки TCP/IP, вебсерверы, операционка, параметризация и прочая лабуда.

Зато как просто с железом - еще на этапе концепции задал Spartan или Virtex 6, как и во множестве предыдущих проектов - и не волнуешься, что потом на конечных этапах что-то будет нереализуемо. Также на любую плату с ПЛИС можно легко достать second source, так как начинка одинаковая и различие в мелких деталях. А вот попробуй отыскать похожую плату с Intel Core i3-i5 - кроме чипсета там может быть все разное.
Jackov
По поводу вопроса "что можно реализовать на ПЛИС такого чего нельзя на МК?", сообщу следующее:
Вот есть, например, такой интерфейс стандарта ГОСТ-18977. Ни в каком МК таких приёмопередатчиков нет, может и есть в каких-то специфических, но я не встречал.
И вот приходится такой модуль воротить на ПЛИСе. Да, можно эти сигналы на порты в/в завести в МК, но а что если нам нужно несколько таких каналов? Ставить несколько процессоров? Тоесть несколько корпусов? Сами понимаете, крайне не рационально.

По поводу того что не бывает функционально законченных устройств без процессора.
Ответственно заявляю, что бывает. Сейчас как раз такой делаем. Распределённый в пространстве коммутатор сигналов авиационных стандартов. Суть его в том что, он не моноблок, а состоящий из отдельных блоков в каждом по 8-16 каналов. Блоки соединены через Езернет. И ни каких процессоров там нет.
blackfin
Цитата(Jackov @ Sep 18 2014, 21:00) *
По поводу того что не бывает функционально законченных устройств без процессора.
Ответственно заявляю, что бывает. Сейчас как раз такой делаем.

"Back to the Future"? Такое уже было, ещё до изобретения микропроцессоров в 1969 году. Первые калькуляторы, то есть до 1971 года, делали без микропроцессоров.. biggrin.gif
ASN
Jackov
Вот тут вроде есть ГОСТ-18977 с Ethernet (даже с Phy).
WitFed
Лучше всё же модель "обкатать" на Matlab, а не давать FPGAшникам и DSPшникам. IMHO, гораздо дешевле.
Darti
Кстати, интересное направление SDR/SCA на Zynq. Можно попробовать реализовывать софтовые и аппаратные реализации прикладных протоколов. И признание и опыт.
Jackov
Цитата(blackfin @ Sep 18 2014, 20:08) *
"Back to the Future"? Такое уже было, ещё до изобретения микропроцессоров в 1969 году.
А специфика такая, процессор поставить конечно можно, но для него там задач мало остаётся, их проще в ПЛИС перенести, тем самым целый корпус сминимизировать.


Цитата(ASN @ Sep 18 2014, 20:25) *
Вот тут вроде есть ГОСТ-18977 с Ethernet (даже с Phy).
Но опять же, их там конечное число. Нужен, как обычно, основной и резервный, и это только один канал, а каналов нужно бывает и 16 и больше. При том основной и резервный работают оба два одновременно, по какому приём начинается раньше с того и надо продолжать принимать, другой в это время игнорировать. Короче говоря, не каждую задачу для ПЛИС можно реализовать на МК, а если и можно, то сложность программы получится несоизмеримой со сложностью ПЛИС.
blackfin
Цитата(Jackov @ Sep 18 2014, 21:29) *
А специфика такая, процессор поставить конечно можно, но для него там задач мало остаётся, их проще в ПЛИС перенести, тем самым целый корпус сминимизировать.

Так никто, вроде, и не спорит, что если автомат состояний (state machine) небольшой, то устройство можно сделать на ПЛИС.
Вопрос в том, что на дешевом МК, причем самыми стандартными инструментами, можно легко сделать конечный автомат с числом состояний 2размер_HDD_в_битах,
удовлетворив при этом все самые невероятные хотелки пользователя и превратив, тем самым, этот "конечный автомат" в "полезное в быту законченное устройство".
Не этого ли спецэффекта добивался ТС? rolleyes.gif
Jackov
Цитата(blackfin @ Sep 18 2014, 20:42) *
Так никто, вроде, и не спорит, что если автомат состояний (state machine) небольшой, то устройство можно сделать на ПЛИС.
Вопрос в том, что на дешевом МК, причем самыми стандартными инструментами, можно легко сделать конечный автомат с числом состояний 2размер_HDD_в_битах,
удовлетворив при этом все самые невероятные хотелки пользователя и превратив, тем самым, этот "конечный автомат" в "полезное в быту законченное устройство".
Не этого ли спецэффекта добивался ТС? rolleyes.gif
То что у процессора состояний больше это понятно, просто выше спор был, может ли устройство обойтись без процессора.
Но опять таки, количество состояний это ведь не единственный показатель. Вот например, когда передаётся кадр через Езернет, ПЛИС успевает подготовить следующий, и передаётся он сразу после передачи предыдущего, получаем максимальное число кадров в единицу времени. Можно такого же добиться на процессоре? Я вот даже не знаю. С учётом того что процессор должен заниматься ещё и второстепенными задачами.
Всё же у ПЛИС, есть свои преимущества.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.