• Nenhum resultado encontrado

ELT601 Eletrônica Digital II Graduação em Engenharia Eletrônica

N/A
N/A
Protected

Academic year: 2021

Share "ELT601 Eletrônica Digital II Graduação em Engenharia Eletrônica"

Copied!
32
0
0

Texto

(1)

ELT601 – Eletrônica Digital II

Graduação em Engenharia Eletrônica

Universidade Federal de Itajubá

IESTI

Verilog HDL

(2)

Verilog

| Histórico

Surgimento:

Proprietária

Simulação

Ambiente PLI

Síntese

em

Verilog

Parcerias com

Motorola,

National,

etc

Padrão IEEE

1364-1995

Domínio público

Padrão IEEE

1364-2001

1983

...

1987

1988

1989

...

1995

...

2001

(3)

Verilog

| Características

Verilog

Sintaxe de “C”

Sensível ao “caso”

“aBCd “ “ABCD”

“O que faz “ “O que contém”

Comportamental

Estrutural

Sensível ao “caso”

(4)

Níveis de abstração

Verilog

| Características

Níveis de abstração

Estrutural

Fluxo de dados

Algorítmica

Chaveamento

Y

(5)

Elemento de descrição

Verilog

| Elementos

CI

Quais são as interfaces?

O que faz o circuito?

módulo

Verilog

(6)

Módulos

Verilog

| Elementos

module

nome( );

lista de sinais de

entrada e saída

nome do

módulo

especificação

dos pinos de

entrada e saída (interfaces)

endmodule

o que faz o circuito e/ou

qual é sua estrutura interna

(7)

Módulos

Verilog

| Elementos

module

PX( A, B, C );

input

A, B;

output

C;

2 entradas e 1 saída

A e B como entradas.

C como saída

PX

A

B

C

nome do

módulo

endmodule

o que faz o circuito

e/ou qual é sua

estrutura interna

(8)

Comentários

Verilog

| Elementos

Símbolo

Função

//

Comentário em linha

/* */

Comentário em bloco

Exemplo

// Linha com comentário

/* bloco de comentários */

/* */

Comentário em bloco

/* bloco de comentários */

(9)

Comentários

Verilog

| Elementos

/*

Módulo PW

*/

module

PW( A, B, C, D, E, F, G );

input

A, B, C, D;

// entradas

output

E, F, G;

// saídas

// operações

// operações

endmodule

(10)

Descrição estrutural

Verilog

| Descrição estrutural

(11)

Descrição estrutural em Verilog

Verilog

| Descrição estrutural

1

º

passo

2

º

passo

3

º

passo

Descrição de

cada módulo

Criação de

instâncias

Criação das

interconexões

(12)

Estruturas básicas em Verilog

Verilog

| Descrição estrutural

A

B

C

C

A

B

A

B

C

A

B

C

and

or

nand

nor

A

B

C

A

B

C

xor

xnor

(13)

Estruturas básicas em Verilog

Verilog

| Descrição estrutural

C

A

buf

A

C

not

bufif1

bufif0

C

A

ctr

C

A

ctr

notif1

notif0

C

A

ctr

C

A

ctr

(14)

Instanciamento de componentes

Verilog

| Descrição estrutural

portaX

nome( );

lista de sinais de

entrada e saída

classe da

instância

nome único

(15)

Instanciamento de componentes

Verilog

| Descrição estrutural

...

input

E1, E2, E3;

output

S1, S2, S3, S4, S5…;

...

and a1( S1, E1, E2 );

xor x1( S2, E1, E2 );

Porta E

Não-Ou exclusivo

xor

(

)

or

o1( S3, E1, E2, E3 );

buf b1( S4, S5, E3 );

not n1( S7, E2 );

Não-Ou exclusivo

Porta Ou de 3 entradas

Buffer de 2 saídas

Inversor

(16)

Exemplo – Latch SR

Verilog

| Descrição estrutural

module

LatchSR( R, S, Q, Qb );

input

R, S;

output

Q, Qb;

nor n1( Q, R, Qb );

nor n2( Qb, S, Q );

R

Q

n1

nor n2( Qb, S, Q );

endmodule

S

Q

n2

(17)

Sinais internos

Verilog

| Elementos

A

B

C

D

s

wire

;

lista de sinais

internos

sinal interno

(18)

Exemplo – Mux 2 para 1

Verilog

| Descrição estrutural

module

Mux2p1( A, B, S, Z );

input

A, B, S;

output

Z;

wire

as, bs, ns;

and a1( bs, B, S );

and a2( as, A, ns );

S

B

Z

bs

a1

o1

n1

and a2( as, A, ns );

or o1( Z, as, bs );

not n1( ns, S );

endmodule

A

a2

as

ns

(19)

Verilog

| Descrição estrutural

Exercícios

1

Implementar um somador completo de 1 bit de forma

estrutural

(20)

Verilog

| Descrição estrutural

Somador Completo de 1 bit

B

V

e

A

S

V

B

A

V

e

de 1 bit

SC

V

s

V

S

S

(21)

Verilog

| Descrição estrutural

Mux 4 para 1

4 x 1

Z

I

0

I

1

00

I

2

I

3

01 10 11

I

0

S

1

Z

I

1

I

2

S

1

S

0

S

0

S

1

I

3

(22)

Vetores

Verilog

| Elementos

wire/input/output

[ ]

nome;

especificação

dos limites

wire

[ 1: 2 ] v;

v[1], v[2]

wire

[ 1: 2 ] v;

v[1], v[2]

input

[ 31: 0 ] a;

a[31], a[30], …, a[0]

(23)

Exemplo – Mux 2 para 1

Verilog

| Descrição estrutural

module

Mux2p1( E, Z );

input

[0:2] E;

// entradas

output

Z;

wire

as, bs, ns;

and a1( bs, E[0], E[2] );

and a2( as, E[1], ns );

E[1]

E[0]

Z

bs

a1

o1

n1

and a2( as, E[1], ns );

or o1( Z, as, bs );

not n1( ns, E[2] );

endmodule

E[2]

a2

as

ns

(24)

Exercícios

Verilog

| Elementos

1

Implementar um Mux 4 para 1 utilizando vetores

(25)

Verilog

| Descrição Hierárquica

Hierarquia

Circuito

digital

(26)

Verilog

| Descrição Hierárquica

Hierarquia

Subcircuito

1

Subcircuito

2

Subcircuito

N

Circuito

digital

Complexidade da

função realizada

Simplicidade do

circuito digital

(27)

Verilog

| Descrição Hierárquica

Hierarquia

Somador

completo

de 4 bits

Multiplexador

4 x 1

SC 1 bit SC 1 bit SC 1 bit SC 1 bit 2 x 1 2 x 1 2 x 1

fluxo de

2 x 1

fluxo de

desenvolvimento

(28)

Verilog

| Descrição Hierárquica

Instanciamento de componentes

nome_módulo

nome( );

lista de sinais de

entrada e saída

classe da

instância

saídas e entradas na exata

ordem do módulo

nome único

da instância

ordem do módulo

ou

(29)

Verilog

| Descrição Hierárquica

Instanciamento de módulos

...

...

input

E1, E2, E3, E4, E5, S1, S2, S3;

output

Z1, Z2, Z3;

...

mux2p1 m1( E1, E2, S1, Z1 );

mux2p1 m2( .Z(Z2), .A(E3), .B(E1), .S(S2) );

mux2p1 m3( .A(E4), .Z(Z3), .S(S3), .Z(Z3) );

Ordem original

Ordem aleatória

Ordem aleatória

mux2p1 m3( .A(E4), .Z(Z3), .S(S3), .Z(Z3) );

module

mux2p1( A, B, S, Z );

input

A, B, S

Ordem aleatória

(30)

Verilog

| Descrição Hierárquica

Exemplo – Mux 4 para 1

module mux2p1( A, B, S, Z ); input A, B, S;

module

mux4p1( I, S, Z );

input

[3:0] I;

input

[1:0] S;

output

Z;

wire

a, b;

mux2p1 m1( I[0], I[1], S[0], a );

m1

m2

m3

I

0

I

1

I

2

I

3

S

1

S

0

Z

a

b

input A, B, S; output Z; wire as, bs, ns; and a1( bs, B, S ); and a2( as, A, ns ); or o1( Z, as, bs );

mux2p1 m1( I[0], I[1], S[0], a );

mux2p1 m2( I[2], I[3], S[0], b );

mux2p1 m3( a, b, S[1], Z );

endmodule

(31)

Verilog

| Descrição Hierárquica

Exercícios

1

Implementar um somador completo de 4 bit por meio

(32)

Verilog

| Fim

Referências

Documentos relacionados

Infecção prolongada: aumento produção de leucócitos pela medula óssea para compensar perda dessas células na reaçao

ceitos de princípio e de valores: enquanto os princípios existem no âmbito deontológico (dever-ser), os valores são conceitos axiológicos (juízos de valor), na esfera do bom. E,

Recebimento de plano de ação para resolução de não conformidades evidenciadas pelo SCIH (elaborado no Gesleade) pela coordenação da área visitada pelo SCIH com prazo de 05

[r]

No entanto, para aperfeiçoar uma equipe de trabalho comprometida com a qualidade e produtividade é necessário motivação, e, satisfação, através de incentivos e política de

Conforme a adesão à medicação, para este estudo, considerou-se apenas o consentimento da terapia antirretroviral, visto que a literatura não apresenta nenhum

Quanto à participação dos cursos nos programas de incentivo à reorientação da formação de profissionais de saúde para atender as demandas do SUS, seis

Rosa. Integrante do Projeto de Pesquisa “República e Democracia no Estado de Direito”.. Ao longo da História, houve sucessivas mudanças na organização