Buscar

Verilog HDL - Circuitos Lógicos UFPB

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 19 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 19 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 19 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

VERILOG HDL (HARDWARE DESCRIPTION LANGUAGE) 
Verilog é uma linguagem de descrição de hardware usada para 
modelar sistemas eletrônicos. Suporta o design, verificação e 
implementação de projetos digitais e circuitos híbridos em vários 
níveis de abstração. 
VERILOG Aspectos básicos da linguagem 
A unidade básica – o modulo (module)
Modulo (module)
• Descreve a funcionalidade do circuito
• Define terminais (pinos, portas) de entrada e saída
VERILOG Aspectos básicos da linguagem 
Definição geral
module module_name ( port_list );
declaração das portas;
…
declaração de variáveis;
…
descrição do comportamento do módulo
endmodule
VERILOG Aspectos básicos da linguagem 
Definição geral
module module_name 
(declaração das portas );
…
declaração de variáveis;
…
descrição do comportamento do módulo
endmodule
Exemplo 1
module meu_and
(output reg C,
input A, B);
always @ (A, B) begin
C = A & B; // & operador AND
end
endmodule
Construção procedural
VERILOG Aspectos básicos da linguagem 
Definição geral
module module_name 
(declaração das portas );
…
declaração de variáveis;
…
descrição do comportamento do módulo
endmodule
Exemplo 1
module meu_and
(output reg C,
input A, B);
always @ (A, B) begin
C = A & B; // & operador AND
end
endmodule
Construção procedural
VERILOG Aspectos básicos da linguagem 
Exemplo 2
module meu_and_or_not_nand_nor_xor_xnor
(output reg C, D, E, F, G, H, I,
input A, B);
always @ (A, B) begin
C = A & B; // & operador AND
D = ! A; // ! operador NOT
E = ~(A&B); // NAND 
F = A | B; // | operador OR
G = ~(A | B); // NOR
H = A ^ B; // ^ operador XOR
I = ~(A ^ B); // XNOR
end
endmodule
VERILOG Aspectos básicos da linguagem 
Exemplo 2
module meu_and_or_not_nand_nor_xor_xnor
(output reg C, D, E, F, G, H, I,
input A, B);
always @ (A, B) begin
C = A & B; // & operador AND
D = ! A; // ! operador NOT
E = ~(A&B); // NAND 
F = A | B; // | operador OR
G = ~(A | B); // NOR
H = A ^ B; // ^ operador XOR
I = ~(A ^ B); // XNOR
end
endmodule
VERILOG Aspectos básicos da linguagem 
Exemplo 2
module meu_and_or_not_nand_nor_xor_xnor
(output reg C, D, E, F, G, H, I,
input A, B);
always @ (*) begin
C = A & B; // & operador AND
D = ! A; // ! operador NOT
E = ~(A&B); // NAND 
F = A | B; // | operador OR
G = ~(A | B); // NOR
H = A ^ B; // ^ operador XOR
I = ~(A ^ B); // XNOR
end
endmodule
Substitui a lista de 
sensibilidade
Projetar um circuito somador de dois números de 4 bits
A[4..1]
B[4..1]
S[4..1]
Cout
Somador
Somador Completo
Exemplo:
A B Cin S Cout
0 0 0 0 0
0 0 1 1 0
0 1 0 1 0
0 1 1 0 1
1 0 0 1 0
1 0 1 0 1
1 1 0 0 1
1 1 1 1 1
Tabela Verdade do Somador Completo
S = A xor B xor Cin; // Soma
Cout = (A.B) or (A .Cin) or (B.Cin); // Cout
Somador Completo – Circuito Final
Descrição do somador completo em VERILOG
module soma1
(output reg S, Cout,
input A, B, Cin);
always @ (*) begin
S = A ^ B ^ Cin; // Soma
Cout = (A & B) | (A & Cin) | (B & Cin); // Cout
end
endmodule
Descrição do somador completo em VERILOG
module soma1
(output reg S, Cout,
input A, B, Cin);
always @ (*) begin
S = A ^ B ^ Cin; // Soma
Cout = (A & B) | (A & Cin) | (B & Cin); // Cout
end
endmodule
Somador Completo – Resultado da Simulação
Somador 4 bits - Esquemático
Descrição do somador 4 bits em VERILOG
module somador_4bits
(output reg [4:0] S,
input [3:0] A,B );
always @ (*) begin
S = A + B ; // Soma
end
endmodule
Simulação do Somador de 4 bits
Somador 4 bits – Símbolo
Somador 4 bits – SímboloDescrição Verilog
module somador_3bits
(output reg [2:0] S,
input [2:0] A,B );
always @ (*) begin
S = A + B ; // Soma
end
endmodule

Outros materiais