Projetando a Lógica
Parte da seção Fundamentos do Journey de Verilog da Coddy. Lição 44 de 90.
Desafio
Projetar a lógica significa descobrir de quais equações o circuito precisa com base na tabela-verdade.
Tabela-verdade:
| a | b | sum | carry |
|---|---|---|---|
| 0 | 0 | 0 | 0 |
| 0 | 1 | 1 | 0 |
| 1 | 0 | 1 | 0 |
| 1 | 1 | 0 | 1 |
Etapa 2: Encontre o padrão para sum
- sum = 1 quando a=0,b=1 ou a=1,b=0
- sum = 1 quando a e b são diferentes
- Diferente = XOR →
sum = a ^ b
Etapa 3: Encontre o padrão para carry
- carry = 1 somente quando a=1 e b=1
- Ambos = AND →
carry = a & b
Etapa 4: Escreva as equações
sum = a ^ b
carry = a & b
O que fazer:
Sua tarefa é adicionar as equações lógicas ausentes dentro do módulo.
1. Adicione uma instrução assign para sum (a XOR b)
2. Adicione uma instrução assign para carry (a AND b)
Experimente você mesmo
module half_adder (
input a,
input b,
output sum,
output carry
);
endmoduleTodas as lições de Fundamentos
1Introdução
O que é VerilogHardware vs. SoftwareSeu primeiro móduloComentáriosNíveis de abstração de projeto4Operadores Parte 1
Operadores aritméticosOperador móduloOperadores de comparaçãoRecapitulação - Matemática simplesOperadores bit a bit7Atribuições e Portas
Atribuição ContínuaAtribuição com OperadoresPrimitivas de Portas IntegradasPortas AND, OR e NOTPortas XOR e XNORRecapitulação - Circuito de Portas Lógicas10Tomada de Decisões
Declaração IfIf - ElseRevisão - Comparador SimplesDeclaração CaseCasex e CasezRevisão - Projeto de ALU2Tipos de Dados
Tipo WireTipo RegInteiro e RealVetoresArraysParâmetrosRecapitulação - Declarar Sinais5Operadores - Parte 2
Operadores lógicosOperadores de reduçãoOperadores de deslocamentoOperador de concatenaçãoOperador condicionalRevisão - Desafio de operadores3Sistema Numérico
Representação BináriaNúmeros com Tamanho DefinidoNúmeros sem Tamanho DefinidoNúmeros NegativosValores Especiais X e ZRevisão - Formatos Numéricos6Módulos
Estrutura de MódulosPortas de Entrada e SaídaPortas InoutInstanciação de MódulosMapeamento de Portas por NomeMapeamento de Portas por OrdemRecapitulação — Construindo um MóduloPratique por conta própria: Compilador de Verilog online