Изучение Verilog очень далеко от языков высокого уровня. Синтаксис был вдохновлен C, да, но проектирование электроники (будь то с использованием VHDL или Verilog) сильно отличается от написания программного обеспечения.
Сказав это, я полагаю, что вы нашли очевидное через Google. Например, это учебное пособие и их основной сайт Verilog . Последний содержит список книг и бесплатный учебник.
Есть несколько хороших учебников. Онлайн-учебники могут познакомить с основными концепциями, но инженеров по аппаратному обеспечению, использующих Verilog, гораздо меньше, чем программистов, пишущих программное обеспечение. Вы не уйдете далеко, пытаясь учиться на нескольких имеющихся веб-сайтах.
Конечно, нет смысла изучать Verilog, если вы не очень знакомы с принципами проектирования цифровой логики. В конце концов, Verilog - это язык моделирования, и для его правильного моделирования необходимо разбираться в оборудовании.
"Verilog HDL" от Samir Palnitkar - это легкая для чтения вводная книга для Verilog. Я нашел это полезным, когда изучал язык.
Я большой поклонник книг Стюарта Сазерленда и . Он обладает исключительно глубоким пониманием языка, и это действительно проявляется в его творчестве.
Как и в любом другом языке, лучший способ научиться - это читать чужой код. Для этого рассмотрим OpenCore и OpenSPARC. Если у вас установлены инструменты от Xilinx или Altera, рассмотрите возможность просмотра исходного кода их IP ядер (некоторые ядра будут обфусцированы, но многие нет).
.Верилог, в первую очередь, является аппаратным языком описания. Поэтому вам необходимо иметь некоторый опыт в цифровом дизайне (или, по крайней мере, познакомиться с ним). Кроме того, ответ на ваш вопрос будет зависеть от причины, по которой вы хотите изучать Верилог:
собираетесь ли вы заниматься разработкой ППВМ? Если да, то Xilinx и Altera имеют много хороших примеров Верилога и других учебных ресурсов. Вы можете установить бесплатные инструменты (с некоторыми ограничениями)
собираетесь ли вы заниматься разработкой ASIC или верификацией? Если да, то просмотрите сайты Synopsys или Cadence.
если вы просто хотите выучить язык, то вам понадобится, по крайней мере, симулятор, чтобы сделать что-нибудь полезное с кодом Верилога. Посмотрите на симулятор Icarus Verilog.