Usando a Instrução Case
Parte da seção Fundamentos do Journey de Verilog da Coddy — lição 66 de 90.
Desafio
Construa um multiplexador de 4 para 1 usando uma instrução case em vez de if-else.
Tabela Verdade
| sel | out |
|---|---|
| 00 | out = in0 |
| 01 | out = in1 |
| 10 | out = in2 |
| 11 | out = in3 |
O que fazer:
- Crie um módulo chamado
mux4to1_case - Adicione as entradas
in0,in1,in2,in3(1 bit cada) - Adicione a entrada
sel(2 bits) - Adicione a saída
out(1 bit, tiporeg) - Adicione um bloco
always @(*) - Dentro dele, adicione uma instrução
case (sel) - Adicione casos para
2'b00,2'b01,2'b10,2'b11 - Adicione um caso
default - Feche com
endcaseeendmodule
Experimente você mesmo
// TODO: Criar módulo chamado mux4to1_case
// TODO: Adicionar entradas: in0, in1, in2, in3 (1 bit cada)
// TODO: Adicionar entrada sel (2 bits)
// TODO: Adicionar saída out (tipo reg)
// TODO: Adicionar bloco always @(*)
// TODO: Adicionar case (sel)
// TODO: Adicionar case 2'b00: out = in0;
// TODO: Adicionar case 2'b01: out = in1;
// TODO: Adicionar case 2'b10: out = in2;
// TODO: Adicionar case 2'b11: out = in3;
// TODO: Adicionar default: out = in0;
// TODO: Adicionar endcase
// TODO: Adicionar endmoduleTodas as lições de Fundamentos
1Introdução
O que é VerilogHardware vs SoftwareNíveis de Abstração de ProjetoSeu Primeiro MóduloComentários4Operadores Parte 1
Operadores AritméticosOperador de MóduloOperadores de ComparaçãoRecapitulação - Matemática SimplesOperadores Bitwise7Atribuição e Portas Lógicas
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ão
Instrução IfIf - ElseRecapitulação - Comparador SimplesInstrução CaseCasex e CasezRecapitulação - Projeto de ALU2Tipos de Dados
Tipo WireTipo RegInteger e RealVetoresArraysParâmetrosRecapitulação - Declarar Sinais5Operadores Parte 2
Operadores LógicosOperadores de ReduçãoOperadores de DeslocamentoOperador de ConcatenaçãoOperador CondicionalRecapitulação - Desafio de Operadores3Sistemas de Numeração
Representação BináriaNúmeros com Tamanho DefinidoNúmeros sem Tamanho DefinidoNúmeros NegativosValores Especiais X e ZRecapitulação - Formatos de Números6Módulos
Estrutura de MóduloPortas de Entrada e SaídaPortas InoutInstanciação de MóduloMapeamento de Portas por NomeMapeamento de Portas por OrdemRecapitulação - Construa um Módulo