Sei sulla pagina 1di 22

Corso di Calcolatori Elettronici I

Progetto di contatori sincroni

Roberto Canonico

Università degli Studi di Napoli Federico II

A.A. 2014-2015

Roberto Canonico Corso di Calcolatori Elettronici I A.A. 2014-2015 1 / 22


Contatore modulo-16

Roberto Canonico Corso di Calcolatori Elettronici I A.A. 2014-2015 2 / 22


Contatore modulo-16: grafo degli stati

Roberto Canonico Corso di Calcolatori Elettronici I A.A. 2014-2015 3 / 22


Contatore modulo-16 con FF JK

q3 q2 q1 q0 q30 q20 q10 q00 J3 K3 J2 K2 J1 K1 J0 K0


0 0 0 0 0 0 0 1 0 - 0 - 0 - 1 -
0 0 0 1 0 0 1 0 0 - 0 - 1 - - 1
0 0 1 0 0 0 1 1 0 - 0 - - 0 1 -
0 0 1 1 0 1 0 0 0 - 1 - - 1 - 1
0 1 0 0 0 1 0 1 0 - - 0 0 - 1 -
0 1 0 1 0 1 1 0 0 - - 0 1 - - 1
0 1 1 0 0 1 1 1 0 - - 0 - 0 1 -
0 1 1 1 1 0 0 0 1 - - 1 - 1 - 1
1 0 0 0 1 0 0 1 - 0 0 - 0 - 1 -
1 0 0 1 1 0 1 0 - 0 0 - 1 - - 1
1 0 1 0 1 0 1 1 - 0 0 - - 0 1 -
1 0 1 1 1 1 0 0 - 0 1 - - 1 - 1
1 1 0 0 1 1 0 1 - 0 - 0 0 - 1 -
1 1 0 1 1 1 1 0 - 0 - 0 1 - - 1
1 1 1 0 1 1 1 1 - 0 - 0 - 0 1 -
1 1 1 1 0 0 0 0 - 1 - 1 - 1 - 1

Roberto Canonico Corso di Calcolatori Elettronici I A.A. 2014-2015 4 / 22


Contatore mod-16: posizionamento dei FF JK

J3 = K3 = q2 · q1 · q0 J2 = K2 = q1 · q0 J1 = K1 = q0 J0 = K0 = 1

Si osservi che risulta Ji = Ki , ∀i pur non avendolo imposto come condizione

Roberto Canonico Corso di Calcolatori Elettronici I A.A. 2014-2015 5 / 22


Contatore mod-16: circuito

Roberto Canonico Corso di Calcolatori Elettronici I A.A. 2014-2015 6 / 22


Contatore mod-16: diagramma di tempificazione

Flip-flop positive edge-triggered (commutazione sul fronte di salita)

Roberto Canonico Corso di Calcolatori Elettronici I A.A. 2014-2015 7 / 22


Contatore modulo-16 a decrescere

Roberto Canonico Corso di Calcolatori Elettronici I A.A. 2014-2015 8 / 22


Contatore modulo-16 a decrescere: grafo degli stati

Roberto Canonico Corso di Calcolatori Elettronici I A.A. 2014-2015 9 / 22


Contatore modulo-16 a decrescere con FF JK

q3 q2 q1 q0 q30 q20 q10 q00 J3 K3 J2 K2 J1 K1 J0 K0


0 0 0 0 1 1 1 1 1 - 1 - 1 - 1 -
0 0 0 1 0 0 0 0 0 - 0 - 0 - - 1
0 0 1 0 0 0 0 1 0 - 0 - - 1 1 -
0 0 1 1 0 0 1 0 0 - 0 - - 0 - 1
0 1 0 0 0 0 1 1 0 - - 1 1 - 1 -
0 1 0 1 0 1 0 0 0 - - 0 0 - - 1
0 1 1 0 0 1 0 1 0 - - 0 - 1 1 -
0 1 1 1 0 1 1 0 0 - - 0 - 0 - 1
1 0 0 0 0 1 1 1 - 1 1 - 1 - 1 -
1 0 0 1 1 0 0 0 - 0 0 - 0 - - 1
1 0 1 0 1 0 0 1 - 0 0 - - 1 1 -
1 0 1 1 1 0 1 0 - 0 0 - - 0 - 1
1 1 0 0 1 0 1 1 - 0 - 1 1 - 1 -
1 1 0 1 1 1 0 0 - 0 - 0 0 - - 1
1 1 1 0 1 1 0 1 - 0 - 0 - 1 1 -
1 1 1 1 1 1 1 0 - 0 - 0 - 0 - 1

Roberto Canonico Corso di Calcolatori Elettronici I A.A. 2014-2015 10 / 22


Contatore mod-16 a decrescere: posizionamento dei FF JK

J3 = K3 = q2 · q1 · q0 J2 = K2 = q1 · q0 J1 = K1 = q0 J0 = K0 = 1

Roberto Canonico Corso di Calcolatori Elettronici I A.A. 2014-2015 11 / 22


Contatore modulo-16 up/down

Roberto Canonico Corso di Calcolatori Elettronici I A.A. 2014-2015 12 / 22


Contatore mod-16 up/down: posizionamento dei FF JK

Un ingresso up discrimina tra conteggio a crescere e a decrescere


Il posizionamento dei flip-flop JK avviene secondo ...
le modalità determinate per il contatore a crescere se up = 1
le modalità determinate per il contatore a decrescere se up = 0

J3 = K3 = q2 · q1 · q0 · up + q2 · q1 · q0 · up
J2 = K2 = q1 · q0 · up + q1 · q0 · up
J1 = K1 = q0 · up + q0 · up
J0 = K0 =1

Roberto Canonico Corso di Calcolatori Elettronici I A.A. 2014-2015 13 / 22


Contatore mod-16 up/down: circuito

Roberto Canonico Corso di Calcolatori Elettronici I A.A. 2014-2015 14 / 22


Contatore modulo-10

Roberto Canonico Corso di Calcolatori Elettronici I A.A. 2014-2015 15 / 22


Contatore modulo-10: grafo degli stati

Roberto Canonico Corso di Calcolatori Elettronici I A.A. 2014-2015 16 / 22


Contatore modulo-10 con FF JK

q3 q2 q1 q0 q30 q20 q10 q00 J3 K3 J2 K2 J1 K1 J0 K0


0 0 0 0 0 0 0 1 0 - 0 - 0 - 1 -
0 0 0 1 0 0 1 0 0 - 0 - 1 - - 1
0 0 1 0 0 0 1 1 0 - 0 - - 0 1 -
0 0 1 1 0 1 0 0 0 - 1 - - 1 - 1
0 1 0 0 0 1 0 1 0 - - 0 0 - 1 -
0 1 0 1 0 1 1 0 0 - - 0 1 - - 1
0 1 1 0 0 1 1 1 0 - - 0 - 0 1 -
0 1 1 1 1 0 0 0 1 - - 1 - 1 - 1
1 0 0 0 1 0 0 1 - 0 0 - 0 - 1 -
1 0 0 1 0 0 0 0 - 1 0 - 0 - - 1
1 0 1 0 - - - - - - - - - - - -
1 0 1 1 - - - - - - - - - - - -
1 1 0 0 - - - - - - - - - - - -
1 1 0 1 - - - - - - - - - - - -
1 1 1 0 - - - - - - - - - - - -
1 1 1 1 - - - - - - - - - - - -

Roberto Canonico Corso di Calcolatori Elettronici I A.A. 2014-2015 17 / 22


Contatore mod-10: posizionamento dei FF JK

J3 = q2 · q1 · q0 J2 = q1 · q0 J1 = q3 · q0 J0 = 1
K3 = q0 K2 = q1 · q0 K1 = q0 K0 = 1

Roberto Canonico Corso di Calcolatori Elettronici I A.A. 2014-2015 18 / 22


Contatore mod-10: diagramma di tempificazione

Flip-flop positive edge-triggered (commutazione sul fronte di salita)

Roberto Canonico Corso di Calcolatori Elettronici I A.A. 2014-2015 19 / 22


Contatore modulo-10 con FF T

q3 q2 q1 q0 q30 q20 q10 q00 T3 T2 T1 T0


0 0 0 0 0 0 0 1 0 0 0 1
0 0 0 1 0 0 1 0 0 0 1 1
0 0 1 0 0 0 1 1 0 0 0 1
0 0 1 1 0 1 0 0 0 1 1 1
0 1 0 0 0 1 0 1 0 0 0 1
0 1 0 1 0 1 1 0 0 0 1 1
0 1 1 0 0 1 1 1 0 0 0 1
0 1 1 1 1 0 0 0 1 1 1 1
1 0 0 0 1 0 0 1 0 0 0 1
1 0 0 1 0 0 0 0 1 0 0 1
1 0 1 0 - - - - - - - -
1 0 1 1 - - - - - - - -
1 1 0 0 - - - - - - - -
1 1 0 1 - - - - - - - -
1 1 1 0 - - - - - - - -
1 1 1 1 - - - - - - - -

Roberto Canonico Corso di Calcolatori Elettronici I A.A. 2014-2015 20 / 22


Contatore mod-10: posizionamento dei FF T

T3 = q3 · q0 + q2 · q1 · q0 T2 = q1 · q0 T1 = q3 · q0 T0 = 1

Roberto Canonico Corso di Calcolatori Elettronici I A.A. 2014-2015 21 / 22


Contatore mod-10: circuito con FF JK usati come T

Il circuito rispecchia il progetto fatto nella slide precedente con


QA = q0 , QB = q1 , QC = q2 e QD = q3

Roberto Canonico Corso di Calcolatori Elettronici I A.A. 2014-2015 22 / 22