
Curso de Verilog
Domine o Verilog dos primeiros princípios até o design RTL pronto para síntese. Este curso leva você pelos fundamentos de lógica digital, sintaxe da linguagem, projeto de FSM, verificação com bancadas de teste e implementação em FPGA com codificação prática em cada etapa. Seja seu alvo FPGAs ou ASICs, você vai desenvolver as habilidades que engenheiros de hardware usam todos os dias.
O que você vai aprender:
Você vai aprender a escrever Verilog correto e sintetizável para circuitos combinacionais e sequenciais, máquinas de estados finitos e projetos hierárquicos parametrizados. O curso aborda construção de bancadas de teste, depuração de formas de onda e testes de regressão automatizados para que você possa verificar seus projetos com confiança. Você também vai estudar diretrizes de codificação RTL, cruzamento de domínios de clock e análise de temporização para atender a requisitos reais de síntese. O material complementar apresenta SystemVerilog, fluxos de implementação FPGA, protocolos de interface de memória e fundamentos de verificação formal.
Como você estuda de forma prática Curso de Verilog
Como você pratica Curso de Verilog
Para si que é empresa e quer formar a equipa
Na Dedika para empresas, o curso inclui exercícios e exemplos do próprio negócio e adaptados às necessidades da sua empresa.
Conteúdo do curso
8 Capítulos • 37 AulasDuração entre 4 e 360 horas (você decide)
Capítulo 1EsconderEsconder detalhesVer detalhesIntrodução ao Projeto Digital e Verilog
Introdução ao Projeto Digital e Verilog
Aula 1 • Fluxo de Projeto e Cadeia de Ferramentas Verilog
Percorre o fluxo de projeto completo de FPGA e ASIC usando Verilog. Os alunos entendem onde cada ferramenta se encaixa antes de escrever qualquer código.
Aula 2 • Revisão de Fundamentos de Lógica Digital
Abrange aritmética binária, álgebra booleana e portas lógicas como pré-requisitos. Ancora a sintaxe Verilog no comportamento real do hardware que os alunos irão modelar.
Aula 3 • Visão Geral das Linguagens de Descrição de Hardware
Distingue HDLs de linguagens de programação de software e examina o panorama das HDLs. Posiciona o Verilog como uma ferramenta de simulação e síntese.
Aula 4 • Configuração do Ambiente de Desenvolvimento
Orienta a instalação e configuração de um simulador e de um editor de texto. Os alunos executam um primeiro arquivo Verilog para confirmar um ambiente funcional.
Capítulo 2EsconderEsconder detalhesVer detalhesSintaxe da Linguagem Verilog e Tipos de Dados
Sintaxe da Linguagem Verilog e Tipos de Dados
Aula 1 • Diretivas do Compilador e Tarefas do Sistema
Introduz `define`, `include`, `timescale` e tarefas comuns do sistema. Os alunos controlam o comportamento da simulação e organizam projetos com vários arquivos.
Aula 2 • Operadores e Expressões
Abrange operadores aritméticos, relacionais, lógicos, bitwise e de redução. Os alunos avaliam a precedência de operadores para escrever expressões inequívocas.
Aula 3 • Estrutura do Módulo e Declarações de Portas
Define o módulo como a unidade fundamental de projeto do Verilog e explica as direções das portas. Os alunos escrevem esqueletos de módulos completos e compiláveis.
Aula 4 • Tipos de Fios (Nets), Registradores e Variáveis
Diferencia os tipos wire, reg e logic e explica suas implicações de hardware. A seleção correta do tipo previne incompatibilidades comuns na simulação.
Aula 5 • Constantes, Parâmetros e Literais
Explica literais com e sem tamanho definido, lógica de quatro valores e parametrização. Parâmetros permitem componentes de projeto reutilizáveis e configuráveis.
Capítulo 3EsconderEsconder detalhesVer detalhesModelagem de Lógica Combinacional
Modelagem de Lógica Combinacional
Aula 1 • Blocos Always para Lógica Combinacional
Explica como always @(*) modela comportamento combinacional de forma procedural. Os alunos evitam latches ao especificar corretamente as listas de sensibilidade.
Aula 2 • Modelagem de Circuitos Combinacionais Comuns
Aplica as construções aprendidas para construir codificadores, decodificadores, multiplexadores e somadores. Reforça padrões de projeto usados repetidamente em sistemas maiores.
Aula 3 • Atribuições Contínuas
Introduz o comando assign para modelagem combinacional em nível de fluxo de dados. Os alunos expressam funções booleanas de forma concisa sem blocos procedurais.
Aula 4 • Primitivas em Nível de Porta
Usa primitivas de porta embutidas para modelar lógica no nível mais baixo de abstração. Os alunos conectam primitivas para entender a modelagem estrutural.
Capítulo 4EsconderEsconder detalhesVer detalhesModelagem de Lógica Sequencial
Modelagem de Lógica Sequencial
Aula 1 • Modelagem de Flip-Flop e Latch
Modela flip-flops D, T, JK e SR e latches sensíveis a nível. Os alunos distinguem quando cada elemento é apropriado e sintetizável.
Aula 2 • Registradores e Registradores de Deslocamento
Estende flip-flops individuais para registradores multi-bit e registradores de deslocamento serial. Os alunos constroem configurações SIPO, PISO e PIPO.
Aula 3 • Blocos Always Sincronizados por Clock e Sensibilidade de Borda
Introduz os disparadores posedge e negedge para projeto síncrono. Os alunos escrevem templates de flip-flop que sintetizam em registradores reais.
Aula 4 • Contadores e Divisores de Frequência
Projeta contadores síncronos e assíncronos com controle de módulo. Os alunos implementam contadores crescentes, decrescentes e bidirecionais com contagem terminal.
Aula 5 • Armadilhas de Atribuição Temporal e Não Bloqueante
Analisa condições de corrida causadas pela mistura de atribuições bloqueantes e não bloqueantes. Os alunos aplicam diretrizes de codificação que garantem simulação e síntese corretas.
Capítulo 5EsconderEsconder detalhesVer detalhesProjeto de Máquina de Estados Finitos
Projeto de Máquina de Estados Finitos
Aula 1 • Template de FSM com Dois Blocos Always
Apresenta o estilo de codificação padrão da indústria com dois blocos always para FSMs. Os alunos separam o registrador de estado e a lógica de próximo estado para clareza e síntese.
Aula 2 • Estudos de Caso Práticos de FSM
Implementa FSMs de controlador de semáforo, receptor serial e máquina de vendas. Os alunos aplicam o ciclo completo de projeto-para-verificação em problemas realistas.
Aula 3 • Teoria de FSM e Diagramas de Estado
Revisa os modelos Moore e Mealy, diagramas de estado e tabelas de estado. Fornece a base teórica antes de qualquer codificação Verilog.
Aula 4 • Codificação de Estado Segura e Recuperação
Aborda entrada em estado ilegal, riscos da codificação one-hot e padrões seguros. Os alunos adicionam codificação defensiva para prevenir travamento da FSM no hardware.
Aula 5 • Estilo de FSM com Três Blocos Always
Estende o template separando a lógica de saída em um terceiro bloco always. Os alunos comparam estilos e escolhem apropriadamente para máquinas Moore vs. Mealy.
Capítulo 6EsconderEsconder detalhesVer detalhesProjeto Hierárquico e Parametrização
Projeto Hierárquico e Parametrização
Aula 1 • Bibliotecas de Componentes Reutilizáveis
Organiza módulos em bibliotecas usando arquivos include e estruturas similares a packages. Os alunos adotam convenções de nomenclatura e organização de arquivos para projetos em equipe.
Aula 2 • Projeto de uma ULA Parametrizada
Integra somador, subtrator, unidade lógica e deslocador em uma ULA configurável. Os alunos praticam decomposição top-down e integração bottom-up.
Aula 3 • Instanciação de Módulos e Hierarquia
Explica conexões de porta nomeadas e posicionais e hierarquia de múltiplos níveis. Os alunos constroem um projeto de nível superior a partir de sub-módulos pré-projetados.
Aula 4 • Parâmetros e Comandos Generate
Usa parâmetros para criar módulos configuráveis em largura e generate-for para replicação escalável. Os alunos constroem uma ULA de N bits usando componentes parametrizados.
Capítulo 7EsconderEsconder detalhesVer detalhesProjeto de Testbench e Verificação Funcional
Projeto de Testbench e Verificação Funcional
Aula 1 • Verificação de Resposta e Asserções
Automatiza a verificação de saída usando verificadores baseados em if e asserções imediatas. Os alunos eliminam a inspeção manual de formas de onda para testes de regressão.
Aula 2 • Arquitetura e Estrutura do Testbench
Define os componentes do testbench: instanciação do DUT, geração de clock e estímulo. Os alunos escrevem um esqueleto completo de testbench para qualquer módulo combinacional.
Aula 3 • Técnicas de Geração de Estímulo
Abrange métodos de estímulo dirigido, aleatório e orientado a arquivo. Os alunos selecionam a técnica apropriada com base na complexidade do projeto e nas metas de cobertura.
Aula 4 • Análise de Forma de Onda e Depuração
Usa dump VCD e visualizadores de forma de onda para diagnosticar falhas de simulação. Os alunos correlacionam anomalias na forma de onda com defeitos no código RTL.
Aula 5 • Testes de Regressão e Organização de Testes
Estrutura vários testbenchs em uma suíte de regressão com execução por script. Os alunos mantêm a cobertura de testes à medida que os projetos evoluem.
Capítulo 8EsconderEsconder detalhesVer detalhesCodificação RTL Pronta para Síntese e Otimização
Codificação RTL Pronta para Síntese e Otimização
Aula 1 • Diretrizes de Codificação RTL para Síntese
Apresenta regras de codificação da indústria para registradores, lógica combinacional e FSMs. Um estilo consistente reduz avisos de síntese e melhora a previsibilidade da ferramenta.
Aula 2 • Técnicas de Cruzamento de Domínio de Clock
Explica riscos de metaestabilidade e estratégias de sincronização para projetos com múltiplos clocks. Os alunos implementam sincronizadores de dois flip-flops e protocolos de handshake.
Aula 3 • Restrições de Temporização e Análise de Caminho Crítico
Lê relatórios de temporização de síntese para identificar caminhos críticos e violações de folga. Os alunos aplicam mudanças no RTL para atender aos requisitos de setup e hold time.
Aula 4 • Construções Sintetizáveis vs. Não Sintetizáveis
Identifica construções legais na simulação, mas não suportadas por ferramentas de síntese. Os alunos auditam código existente e substituem padrões não sintetizáveis.
Aula 5 • Estratégias de Otimização de Área e Potência
Aplica compartilhamento de recursos, clock gating e escolhas de codificação para reduzir área e potência. Os alunos comparam resultados de síntese antes e depois da otimização.
Seu certificado válido de conclusão
Este curso é para si:
Estudante de engenharia elétrica: pronto para transformar a teoria da sala de aula em código RTL real.
Desenvolvedor de software embarcado: buscando fazer a transição para descrição e projeto de hardware.
Entusiasta de FPGA: querendo habilidades estruturadas além de copiar projetos de referência online.
Recém-formado: construindo um portfólio para competir por vagas de nível inicial em projeto de chips.
Profissional em transição de carreira vindo do software: atraído por hardware e precisando de um ponto de partida prático.
Engenheiro de verificação júnior: buscando um conhecimento mais sólido em RTL para complementar o trabalho de teste.
O que os nossos alunos dizem
As vossas aulas são perfeitas. Adquiri o pacote de um ano e, finalmente, tenho a oportunidade de acompanhar diversos temas do meu interesse sem precisar mudar de plataforma... agradeço por tudo o que fazem, já vos recomendei a outras pessoas...

Gosto de como as lições são directas ao assunto e como consigo alterar capítulos e saltar conteúdos que não preciso.

Gosto do conteúdo e do modo de apresentação e transcrição de vídeos, o que acelera o processo!

A plataforma é rápida, simples de usar. A diversidade de conteúdo e os vídeos complementares ajudam muito na aprendizagem.

Principais capacitações
FAQ
Quem é a Dedika?
O certificado é válido em Brasil?
Os cursos são gratuitos?
Qual é a carga horária do curso?
Como são os cursos?
Como funcionam os cursos?
Qual é a duração dos cursos?
Qual é o custo ou preço dos cursos?
O que é um curso EAD ou online e como funciona?
Curso em PDF




















