М.Двач / Программирование

Verilog тред #1 /verilog/ 17 фев, 04:27 3645789 В конец треда | Веб

10 Кб, 1024x675336 Кб, 642x64610 Кб, 540x33115 Кб, 600x288

Добро пожаловать в тред Verilog-подобных языков - VHDL, Verilog, SystemVerilog и прочих!

HDL (Hardware Description Languages) — это не программирование в привычном понимании, это описание цифровой логики. Здесь код всегда выполняется параллельно, if превращается в мультиплексор, а for это просто команда для копипаста логики.

С помощью Верилога можно описать логику ЛЮБОГО цифрового устройства, если на соответствующем железе хватит ресурсов, от простенького контроллера до процессора и настоящей домашней игровой консоли прошлого поколения.

Основные языки:

Verilog — Си-подобный, гибкий, любимый в США и Азии. Позволяет выстрелить себе в ногу, руку и сразу в голову, если не понимать, что делаешь.

SystemVerilog — Де-факто стандарт индустрии для верификации и современной разработки. Чаще всего используется в РФ.

VHDL — Строгий, типизированный, но к сожалению для некоторых многословный. Популярен в Европе (особенно в оборонке).

ИТТ будем пояснять за RTL, научим работать с открытыми, напишем свой RISC-V процессор с блекджеком и шлюхами, объясним, почему твой код не синтезируется, и поможем разобраться, как запихнуть твой клон NES в дешевую китайскую плату.

Инструментарий:

Vivado (Xilinx/AMD): https://www.xilinx.com/products/design-tools/vivado.html (весит дохера)

Quartus (Intel/Altera): https://www.intel.com/content/www/us/en/software/programmable/quartus-prime/overview.html (жрет оперативку)

Gowin EDA: Для самых дешевых плат за пару десятков долларов по типу Tang Nano. Хотя есть ли в них смысл, если можно взять БУ плату Xilinx/Altera?

Open Source решения (Yosys, Nextpnr, Verilator): https://github.com/YosysHQ/oss-cad-suite-build — для свободных духом красноглазиков и Linux-бояр.

Полезные ссылки:

HDLBits (Rustlings от мира верилога, мастхэв для новичков): https://hdlbits.01xz.net/wiki/Main_Page

ASIC World (справочники по синтаксису): http://www.asic-world.com/

ZipCPU (блог для продвинутых, как писать правильный Верилог код): https://zipcpu.com/

Nandland (гайды для самых маленьких): https://nandland.com/

Бесплатные онлайн и оффлайн занятия в РФ с возможностью стажировки в российскую компанию Ядро: https://engineer.yadro.com/chip-design-school/

Литература:

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.

Ответы45802

# OP 2 17 фев, 04:30 2 3645790

inb4 РЯЯ ОП ПАЛИТ ГОДНОТУ БЫДЛУ И ВОЛКАМ ВКАТУНАМ - Быдло не потянет Верилог, а нормальные люди всегда приветствуются в данной сфере.

Нейронки пока не могут генерировать качественный Верилог код сложнее мигалки.

3 17 фев, 07:03 3 3645802

>>3645789 (OP)
Тут проблема в том, что тебе нужно сначала придумать устройство, а потом его погромировать.

Ответы45838

4 17 фев, 09:00 4 3645838

>>3645802
Не всегда нужно придумывать сферическое устройство в вакууме, если это абстрактная числодробилка с определенным количеством вводов и выводов.

Ответы46106

5 17 фев, 14:41 5 3646106

>>3645838
Тогда можно взять Ардуино, помигать светодиодом и успокоиться

Ответы46198

6 17 фев, 17:24 6 3646198

>>3646106
Это для тех кто не работает в этой сфере профессионально или кому ардуины достаточно, но есть множество задач, где ардуина вообще не подойдет

Ответы46201

7 17 фев, 17:28 7 3646201

>>3646198
И что ты предлагаешь запилить используя Верилог?

Ответы4620846212

8 17 фев, 17:42 8 3646208

>>3646201
реализацию своего risc v ядра

Ответы46214

9 17 фев, 17:47 9 3646212

>>3646201
Плисы много где используют. Ну в основном это всякие dsp-платы и всё где нужен параллелилизм. Для обработки видео и рендеринга тоже можно использовать, нейронку запихнуть туда. Видеокарты для бедных короче, хотя это и спорный вопрос. Плисина может несколько тыщ баксов стоить.

Ответы46217

10 17 фев, 17:49 10 3646214

>>3646208
Была такая лаба в магистратуре.

11 17 фев, 17:53 11 3646217

>>3646212
Я бы не сказал что плисина это аналог видеокарты для бедных. Они сейчас часто используются для точной эмуляции ретро процессоров и приставок, плюс для всякого оборудования по типу звуковых карт

12 17 фев, 20:05 12 3646285

кроме ядра, иннотеха в рф больше нет крупных частных компаний, работающих с плис?

13 29 апр, 15:35 13 3696400

Bump

14 29 апр, 20:09 14 3696658

Наконец-то крутой тредж

Обновить тред
« /pr/В начало тредаВеб-версияНастройки/a//b//mu//s//vg/Все доски

Скачать тред только с превьюс превью и прикрепленными файлами

Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах.Подробнее

Пользуетесь скринридером — пишите, что можно улучшить.
Host-Food.ru — надёжный хостинг от 12 руб/мес | Free DNS
Зеркала М.Двача: m2ch.hk, m2ch.gq, m2ch.cf, m2ch.fapp.in, m2ch.lib, m2chfapiswfw2wcakptqp4o6ltgchvjuxfab7urxlduraomtlnhw5xad.onion