Добро пожаловать в тред Verilog-подобных языков - VHDL, Verilog, SystemVerilog и прочих!
HDL (Hardware Description Languages) — это не программирование в привычном понимании, это описание цифровой логики. Здесь код всегда выполняется параллельно, if превращается в мультиплексор, а for это просто команда для копипаста логики.
С помощью Верилога можно описать логику ЛЮБОГО цифрового устройства, если на соответствующем железе хватит ресурсов, от простенького контроллера до процессора и настоящей домашней игровой консоли прошлого поколения.
Основные языки:
Verilog — Си-подобный, гибкий, любимый в США и Азии. Позволяет выстрелить себе в ногу, руку и сразу в голову, если не понимать, что делаешь.
SystemVerilog — Де-факто стандарт индустрии для верификации и современной разработки. Чаще всего используется в РФ.
VHDL — Строгий, типизированный, но к сожалению для некоторых многословный. Популярен в Европе (особенно в оборонке).
ИТТ будем пояснять за RTL, научим работать с открытыми, напишем свой RISC-V процессор с блекджеком и шлюхами, объясним, почему твой код не синтезируется, и поможем разобраться, как запихнуть твой клон NES в дешевую китайскую плату.
Harris & Harris: Digital Design and Computer Architecture (Библия схемотехника), есть аналогичное издание на русском, называется "Цифровая схемотехника и архитектура компьютера".
Pong P. Chu (книги по Verilog/VHDL для практиков с примерами на платах): "FPGA Prototyping by Verilog/VHDL Examples".
Digital Design (M. Morris Mano) - классическая теория.
FAQ: Q: Какую плату купить новичку? A: Tang Nano 9K / 20K (дешево), Terasic DE10-Nano (дорого, но MiSTer), любые девборды на Cyclone IV с Алика.
Q: VHDL или Verilog? A: Для работы в РФ рекомендую учить SystemVerilog, VHDL можно взять на всякий случай.
Q: Много ли вакансий на нем? A: Не знаю. В стране дефицит специалистов, но насколько ты будешь считаться специалистом с нулевым опытом в Верилоге - не ясно.
Q: Почему симуляция работает, а в железе нет? A: Добро пожаловать в мир таймингов, гонок сигналов и отсутствия блокирующих присваиваний! Читай про blocking vs non-blocking assignments.
>>3645802 Не всегда нужно придумывать сферическое устройство в вакууме, если это абстрактная числодробилка с определенным количеством вводов и выводов.
>>3646106 Это для тех кто не работает в этой сфере профессионально или кому ардуины достаточно, но есть множество задач, где ардуина вообще не подойдет
>>3646201 Плисы много где используют. Ну в основном это всякие dsp-платы и всё где нужен параллелилизм. Для обработки видео и рендеринга тоже можно использовать, нейронку запихнуть туда. Видеокарты для бедных короче, хотя это и спорный вопрос. Плисина может несколько тыщ баксов стоить.
>>3646212 Я бы не сказал что плисина это аналог видеокарты для бедных. Они сейчас часто используются для точной эмуляции ретро процессоров и приставок, плюс для всякого оборудования по типу звуковых карт
>>3645789 (OP) Мёртвый тред, но других нет. У меня интересный вопрос возник. Вот все жалуются(и у нас, и на западе, и в азии), что в отрасли жесткая нехватка кадров. А я открываю цены на платы для обучения, и вижу, что они стоят в 10-15 раз дороже профессиональных готовых продуктов(из которых они и сделаны, собственно). Неужели никто реально не задумывался, что причина нехватки кадров может лежать на поверхности?
Как освоить цифровую обработку сигналов на FPGA? Для того, чтобы заниматься ЦОС, надо быть математиком-матанщиком, а еще между матчастью ЦОС и практикой огромная пропасть, книги пишутся для теоретиков, а книг по практике на SystemVerilog нет.
>>3756441 Чел, ну просто скачай ИИ агента и попроси писать Verilog/VHDL код. Зачем в каждом треде как собака вынюхивать и спрашивать "Пруфы?" Что тебе это даст? Ты все еще надеешься что есть хоть какой-то айтишный и около-айти труд, который не под силу ИИ агентам? Я тебя разочарую, но такого уже нет.
Котята не следает совать эту темочку в нейроночку! ВЫ сонненькие, сладенькие, вам все замыкушечки! Это не то. Это не пингвинчики и даже не медвежатки! Серьезно, любой из вас пожалеет о соделанном, так что лучше прикрывайте темку и забывайте о том что тут пишется. Я вполне понимаю, что данным сообщеньицем вызову дополнительный интересик, но хочу предостеречь пытливеньких сразу - стоп! Остальным просто не нужно будет поправлять.
По факту, VHDL это Паскаль (кроме как обучать студентов ну куда такое), а Verilog это C немнодный современный. Чем эквивалент SystemVerilog отличается мне не так уж интересно. Языки риел-параллелюшечной разработки и описания схем цифровых и логических устройств. Не программирование, хотя и тоже код.
>>3756620 Даже если нейронка может в верилог, надо один хуй разбираться в предметной области, ты на полном серьёзе считаешь, что в этой области можно навайбодить на отъебись и потом партию запустить?
>>3756630 >надо один хуй разбираться в предметной области, ты на полном серьёзе считаешь, что в этой области можно навайбодить на отъебись и потом партию запустить
ну хз, ИИшка вон уравнение навье-стокса решило (точнее доказало что оно в общем случае неверное). ты думаешь ИИ не справится с хорошо верифицируемой хуйней типа цифровой схемотехники?
пора на мороз. топ-топ ножками. робу рабочего наденешь и пойдешь сварщиком или электриком ишачить. а проектировать схемотехнику будет ИИ вместо тебя.
>>3756620 >Чел, ну просто скачай ИИ агента и попроси писать Verilog/VHDL код. Зачем в каждом треде как собака вынюхивать и спрашивать "Пруфы?"
Потому что бремя доказательства лежит на утверждающем. В чем смысл каждый раз кукарекать про то что нейрокал может вылечить рак за один промпт, если все это хуцпа без пруфов?
"Чел, ну просто скачай ИИ агента и попроси написать лекарство от рака." Верилог код то как раз он напишет, но вот качество подобного высера или его сложность будут сомнительными.
>>3756799 >а проектировать схемотехнику будет ИИ вместо тебя. Сейчас ИИ не может проектировать схемотехнику даже на уровне джуна, ибо в отличие от айтишечки у него ОЧЕНЬ МАЛО обучающих данных. Он буквально прокалывается на этапе Signal Integrity и EMS. С верилогом та же проблема, ибо для обучения нейронки на гитхабе очень мало примеров в отличие от айтишечки и программистов.
>>3756799 >ИИшка вон уравнение навье-стокса решило Уже разоблачили эту хуцпу лол. По сути попенаи спиздил чужую работу и выдал это за сверхперемогу своего маняии. И так у них всегда https://habr.com/ru/articles/1079940/
>>3756848 Кстати, тут дело даже не столько в том что это открытие по сути совершил какой-то ученый с помощью ИИ (то есть в предметной области разбираться в любом случае надо, рандомный мимокрокодил с нейрокалом так не сможет), а это открытие и вовсе не делал ИИ, а тупо спиздил чужую работу какого-то ученого. По ссылке выше есть все пруфы.
>>3756148 >Нехватки кадров нет. Verilog/VHDL макаку сегодня отлично заменяет ИИшка.
Пруфы? Ты верилог разработчик в теме или просто рандомный дворник, который ни дня не работал в этой сфере? Как же смешат эти миморандомы, которые лучше всех шарят в теме, хотя про нее только мимоходом услышали лол. Это как если бы манятеоретик из интернета с дипломом пту начал бы задвигать ученому-вирусологу с PhD про теории заговора, про вакцины с аутизмом и ковид, oh wait...
>>3756853 да это какой-то потужный ии-шизик, который в каждом треде кукарекает про свой швитой ии. он небось даже не слышал про разницу между симуляцией fpga и реальным синтезом fpga на практической плате, где даже в формально верифицированной логике в 90% случаях будет разрыв в поведении, а тут за него все ии будет делать, ога. мы годами не можем опытного синьора найти с опытом в дизайне vhdl и верификации, а тут дефицита кадров нет
>>3756620 >Ты все еще надеешься что есть хоть какой-то айтишный и около-айти труд, который не под силу ИИ агентам? Я тебя разочарую, но такого уже нет. а он под силу? ты лично пробовал? я попробовал сделать у него рядовую имплементацию (это уровень тестового задания) открытого RV32IMC/RV64GC ядра с кастомными блоками, в итоге моделька gpt 6 astra medium жидко пукнула, и это при этом что реализации этих ядер на гитхабе лежат тоннами - тупо бери бойлерплейт оттуда и переделывай, так он даже это не может, что-то более сложное типа кастомных ядер со своей полностью кастомной архитектурой и спецификацией он вообще не может делать, постоянно висящие выводы или проебы по таймингам, после комментов типо "LW x5, 0(x1)" сломан, исправь, он ломает еще больше и в итоге исправлять надо еще больше. по итогу дебажить его код требует больше опыта и знаний чем если просто самому писать нуля
>>3756845 Сейчас ИИ компании нанимают людей чтобы те писали код для обучения ИИ. Думаешь они не нанимают электронщиков и прочих инженеров для таких же целей?
FPGA очень интересная тема, но вся работа для FPGA-инженеров сосредоточена в Москве, удаленки нет, а я живу в мухосранске. Не хочу ради РАБоты переезжать в Москву, у меня в моей мухосрани тянка есть, она никуда не поедет. Очень хотелось бы стать разработчиком FPGA, но оставлю эту тему как одно из хобби.
>>3757098 Я тоже не знаю, так как они по сути в разы медленнее чем реальное цифровое устройство отчепятанное тайванцами/китайцами на заводе. ПЛИСы это для моделированния скорее, чем для продакшена, имхо. Хотя и функционал подобен.
>>3757098 а нахуя тебе еще чето? разве это не круто? ну профессионалы там какие то сигналы обрабатывают такие dsp на стероидах, а поиграть как раз риск5 самое то, можно что то и посложнее чем rv32imc, удлинить конвейер придумать кастомное расширение, накостылить свою шину и тп