Está en la página 1de 15

26/09/2017

Universidad Nacional Mayor de San Marcos


Facultad de Ingeniería de Sistemas e Informática

Sistemas Digitales

Lógica Secuencial

Ing. Armando Fermín Pérez

2017-2

Modelo de un Circuito Secuencial Síncrono

x1 z1
...

...

xn Combinational zm
logic

y1 ... yr Yr ... Y1

Memory

Clock

1
26/09/2017

Modelo de Máquina Mealy

A
1/1 1/0
0/1
0/0 0/0 1/0
B C
X/Z
(a)

Present Input x
state 0 1
A B/1 C/0
B B/0 A/1
C A/0 C/0
Next state/output
(b)

Diagrama de Tiempos de una Máquina Mealy

T0 T1 T2 T3 T4 T5
Clock
State A B A C A C A

Input x 0 1 1 0 1 0
Output z 1 1 0 0 0 0

2
26/09/2017

Modelo de una Máquina Moore


0
1
W/0 X/1
0 0
1 1

Y/0
(a)

Present Input x
state 0 1 Outputs
W Y X 0
X X Y 1
Y X W 0

(b)

Diagrama de Tiempos de una Máquina Moore

T0 T1 T2 T3 T4 T5

Clock
State W Y W X X Y X
Input x 0 1 1 0 1 0

Output z 0 0 0 1 1 0

3
26/09/2017

Síntesis de un Circuito Secuencial Síncrono


x
0 1
A 1/0 B
A D/0 B/0
1/1
0/0 1/0 B D/0 C/0
0/0 1/0
0/0 D C D/0 B/0
0/0 C
D D/0 A/1

(a) Completely specified circuit

x
A B 0 1
1/1 0/- 0/0
A B/- -/1
1/-
0/- 1/1 B B/0 C/1
C C A/- A/-

(b) Incompletely specified circuit

Ejemplo de Síntesis o Diseño


x

z
x x
y
0 1 State 1 y2 y1 y2 0 1
A A/0 B/0 A 0 0 00 00/0 01/0
B A/0 C/1 B 0 1 01 00/0 11/1
C B/0 D/0 C 1 1 11 01/0 10/0
D C/1 D/0 D 1 0 10 11/1 10/0
(b) State Y1 Y2/z
(c)Transition
(a) State table assignment table

x x x
y1 y 2 0 1 0 1 y1 y2 0 1
y1 y 2
00 0 0 00 0 0 00 0 1 y1
Q D1
y1
01 0 1 01 0 1 01 0 1 Q C

11 0 0 11 0 1 11 1 0
y2
Q D2
10 10 10 y2
1 0 1 1 1 0 Q C Clock
z D1 (= Y1) D2 (= Y2)
(d) Output K-map (e) Excitation K-maps (f) Logic diagram

4
26/09/2017

Tablas de Entradas de Flip-flops


State Required State Required
transitions inputs transitions inputs
Q(t) Q(t + e) D(t) Q(t) Q(t + e) S(t) R(t)
0 0 0 0 0 0 d
0 1 1 0 1 1 0
1 0 0 1 0 0 1
1 1 1 1 1 d 0
(a) D flip-flop (b) Clocked SR

State Required State Required


transitions inputs transitions inputs
Q(t) Q(t + e) T(t) Q(t) Q(t + e) J(t) K(t)
0 0 0 0 0 0 d
0 1 1 0 1 1 d
1 0 1 1 0 d 1
1 1 0 1 1 d 0
(c) Clocked T flip-flop (d) Clocked JK flip-flop

Reconocedores de Secuencia
Diseñar un circuito secuencial síncrono con una entrada “x” y una
salida “z” que reconozca la secuencia de entrada 01.

Si la secuencia de entrada es x = 0 1 0 1 0 0 0 0 0 1 1 1 1 0 1
=> la secuencia de salida será: z = 0 1 0 1 0 0 0 0 0 1 0 0 0 0 1

1/0 1/0 0/0


A A B

(a) (b)

1/0 0/0 0/0 1/0 0/0 0/0


A B A B
1/1
(c) (d)

5
26/09/2017

Síntesis del Reconocedor de Secuencias 01 con FF SR


x x x
0 1 yk 0 1 yk 0 1
A B/0 A/0 0 1 0 0 0 0

B B/0 A/1 1 1 0 1 0 1

yk + 1 z
(a) State table (b) Transition table and output map

x x x S Q yk
yk 0 1 yk 0 1 C
R Q
0 1 0 0 0 d

1 d 0 1 0 1
Clock
S R
(c) Excitation maps
(d) Logic diagram z

Clock
x 0 1 01 01
S=x 1 0 0 0 1 0 1 1 0 0 0
R=x 0 1 1 1 0 1 0 0 1 1 1
y
z

(e) Timing diagram

Reconocedor de Secuencias 01 con FF T y JK

x
yk 0 1 x
T Q y
0 1 0
C Q
1 0 1

T Clock
(a) Clocked T flip-flop (b) Clocked T flip-flop
excitation map implementation

x x
yk 0 1 yk 0 1

0 1 0 0 d d

1 d d 1 0 1

J K
(c) Clocked JK excitation maps

6
26/09/2017

Diseño de un Reconocedor para la Secuencia 1111


0/0 1/1 x
0/0 0 1
0/0
A B C D A A/0 B/0
1/0 1/0 1/0
B A/0 C/0
0/0
D A/0 D/1
(a) State diagram
C A/0 D/0

(b) State table

x x
y1ky2k
y1ky2k 0 1 0 1
00 00 01 00 0 0

01 00 10 01 0 0

11 00 11 11 0 1

10 00 11 10 0 0

y1k+1y2k+1 z
(c) Transition table (d) Output map

Reconocedor de Secuencias 1111 con FF SR


x x
y 1 ky 2 k 0 1 y 1 ky 2 k 0 1
00 0 0 00 d d

01 0 1 01 d 0

11 0 d 11 1 0

10 0 d 10 1 0

S1 R1

x x
y 1 ky 2 k 0 1 y 1 ky 2 k 0 1
00 0 1 00 d 1

01 0 0 01 1 1

11 0 d 11 1 0

10 0 1 10 d 0

S2 R2

7
26/09/2017

Reconocedor de Secuencias 1111 con FF T y JK


x x
y1ky2k y1ky2k
0 1 0 1
00 0 0 00 0 1

01 0 1 01 1 1

11 1 0 11 1 0

10 1 0 10 0 1

T(a) T
1 Clocked T excitation maps 2

x x x x
y1ky2k y1ky2k y 1ky 2k y 1 ky 2k
0 1 0 1 0 1 0 1
00 0 0 00 d d 00 0 1 00 d d

01 0 1 01 d d 01 d d 01 1 1

11 d d 11 1 0 11 d d 11 1 0

10 d d 10 1 0 10 0 1 10 d d

J1 K J K2
(b)1 Clocked JK excitation maps 2
x x
y1 y2 0 1 y1 y2 0 1
00 0 0 00 0 1

01 0 1 01 0 0
y2
11 0 1 11 0 1
y1
10 0 1 10 0 1

Y1 Y2
(c) Excitation K-maps

Diseño de un Reconocedor de Secuencias 0010


0/0 0/0 1/0 0/1 0/0 0/0 1/0 0/1
A B C D E A B C D E
0/0
Come here for an G
G incorrect input x = 0 1/0 1/0
1/0 1/0
Come here for an F
F incorrect input x = 1
(a) (b)
0/0
0/0 0/0 1/0 0/1
0/0 A B C D E
0/0 0/0 1/0 0/1 0/0
0/0
A B C D E 0/0
0/0 1/0 G
1/0
1/0 1/0 1/0
1/0 G F
1/0
1/0 1/0
F
1/0
(c) (d)

x
0 1
A B/0 F/0 x 0/0
B C/0 F/0 0 1
C G/0 D/0 A B/0 A/0 1/0 G
D E/1 F/0 B C/0 A/0 1/0
0/0
1/0
E C/0 F/0 C G/0 D/0 0/0 1/0
A B C D
0/0
F B/0 F/0 D B/1 A/0 0/1
G G/0 F/0 G G/0 A/0
1/0
(e) (f) (g)

8
26/09/2017

Diseño de un Sumador Binario Serial

ai aibi/si
Shift register A 00/0 01/0
Serial si 01/1 11/0 10/0
bi adder 10/1 0 1 11/1
Shift register B ci-1 = 0 00/1 ci-1 = 1
(b)

(a)

ai
bi Si

ai bi ci-1 ci si
0 0 0 0 0
0 0 1 0 1
0 1 0 0 1
0 1 1 1 0 Ci Ci-1
D Q
1 0 0 0 1
1 0 1 1 0 C
1 1 0 1 0
1 1 1 1 1
Clock

(c) (d)

Diseño de un Contador UpDown de 4 estados


x x
z=0 z=1 0 1 y 1ky 2k 0 1
0 0 1 0 1/0 3/0 00 01 11
1
1 2/1 0/1 01 10 00
0 1 1 0
2 3/2 1/2 11 00 10
1
3 0 2 3 0/3 2/3 10 11 01
z=3 z=2 y1 k + 1 y2 k + 1
(a) State diagram (b) State table (c) Transition table

x x
y1 y2 0 1 y1 y2 0 1

00 0 d 1 d 00 1 d 1 d

01 1 d 0 d 01 d 1 d 1

11 d 1 d 0 11 d 1 d 1

10 d 0 d 1 10 1 d 1 d

J1 K1 J1 K1 J2 K2 J2 K2
(d) Excitation maps

9
26/09/2017

Implementación de un Counter Up/Down

Clock
y1
x J1 Q
C
K1 Q

J1 Q
y2
1 C
K1 Q LEDs

Diseño de un Contador BCD


x
y3 k y2 k y1 k y0 k 0 1
0000 0000 0001
0001 0001 0010
x
0010 0010 0011
0 1
0011 0011 0100
0 0 1
0100 0100 0101
1 1 2
0101 0101 0110
2 2 3
0110 0110 0111
3 3 4
0111 0111 1000
4 4 5
1000 1000 1001
5 5 6
1001 1001 0000
6 6 7
1010 dddd dddd
7 7 8
1011 dddd dddd
8 8 9
1100 dddd dddd
9 9 0
1101 dddd dddd
(a)
1110 dddd dddd
1111 dddd dddd

y3 k + 1y k + 1y k + 1y k + 1
2 1 0

(b)

10
26/09/2017

Diseño de un Contador BCD…


x x x x x x x x
y3 k y2 k y1 k y0 k 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
0000 0 0 d d 0 0 d d 0 0 d d 0 1 d d
0001 0 0 d d 0 0 d d 0 1 d d d d 0 1
0010 0 0 d d 0 0 d d d d 0 0 0 1 d d
0011 0 0 d d 0 1 d d d d 0 1 d d 0 1
0100 0 0 d d d d 0 0 0 0 d d 0 1 d d
0101 0 0 d d d d 0 0 0 1 d d d d 0 1
0110 0 0 d d d d 0 0 d d 0 0 0 1 d d
0111 0 1 d d d d 0 1 d d 0 1 d d 0 1
1000 d d 0 0 0 0 d d 0 0 d d 0 1 d d
1001 d d 0 1 0 0 d d 0 0 d d d d 0 1
1010 d d d d d d d d d d d d d d d d
1011 d d d d d d d d d d d d d d d d
1100 d d d d d d d d d d d d d d d d
1101 d d d d d d d d d d d d d d d d
1110 d d d d d d d d d d d d d d d d
1111 d d d d d d d d d d d d d d d d
J3 K3 J2 K2 J1 K1 J0 K0
(c)

Implementación del Contador BCD


y 2 k y3 k
y1 k y0 k 00 01 11 10 00 01 11 10

00 0 d d 0 0 d d 0

01 0 d d 0 0 d d 0

11 0 d d d 1 d d d

10 0 d d d 0 d d d

x =0 x =1
(d)

y0 J0
y1 J1
y2 J2 C
y3 J3 C
C K0
C K1
K2
K3

Clock

Lights

(e)

11
26/09/2017

Utilizando el método de la ecuación de aplicación


Utilizando : Q” = J Q´ + K´ Q
1. Realice el proceso de síntesis hasta generar la tabla de transición.
2. En vez de generar las tablas y mapas K de excitación del flip flop JK, obtenga los
mapas K de excitación para una implantación flip flop D.
3. Para cada variable Yi del estado siguiente, divida su mapa K en dos mitades, una
asociada con yi y otra asociada con yi`.
4. Minimice la función Yi en el mapa K, sin cruzar la frontera que divide el mapa a la
mitad. Esto genera una función de la forma: Yi  ( J i ) y i  ( K i ) yi
5. Podemos escribir ahora las expresiones Ji y Ki utilizando en forma directa la
función del paso 4.
y
y3 y3

0 0 d 0 0 0 d 0

0 0 d 0 1 1 d 0
y0 y0
1 1 d d 0 0 d d
y1 y1
1 1 d d 1 1 d d

y2 y2

Controlador de un Robot

Exit

Bottom view
Movable of robot
blocks Sensor
(X)

Robot

Wheels

12
26/09/2017

Diseño del Controlador de un Robot


x x
0/00 1/01 y1 y2
1/01 y1 y2 0 1 0 1
A B A A/00 B/01 00 00/00 01/01
B C/00 B/01 01 11/00 01/01
0/00 X/Z1/Z2 0/00
C C/00 D/10 11 11/00 10/10
D C D A/00 D/10 10 00/00 10/10
1/10 NS/z1z2 Y1Y2/z1z2
1/10 0/00
(a) (b) (c)

x x x x
y1 y2 0 1 y1 y2 0 1 y1 y2 0 1 y1 y2 0 1
00 0 0 00 0 1 00 0 0 00 0 1

01 0 0 01 0 1 01 1 0 01 1 1

11 0 1 11 0 0 11 1 1 11 1 0

10 0 1 10 0 0 10 0 1 10 0 0
z1 z2 Y1 Y2
(d) (e)

Realización del controlador de un Robot

x
z1

z2

Q1 J1

Q1 K1

Q2 J2

Q2 K2

Clock
(f)

13
26/09/2017

Diseño de un controlador de máquina expendedora

R Release
N candy
Coin Control
detector D unit
Release
C change
(a)

ND/RC

00/00 00/00
10/00
0
01/00 5
10/10, 01/00
01/11
10/00
01/10
00/00 15
10
10/00
00/00

(b)

Algorithmic State Machines (ASMs)

State_Name
Mealy
Moore outputs 0 1 outputs
Input

(a) (b) (c)

14
26/09/2017

Representación ASM de una máquina Mealy


z=0 A

1/0
0 1 A
X 0/0 B
0/1
X/Y
z=0 0/0
1/1 1/0

(b)
B z=1

1 0
X

z=0

z=0 C z=1

0 1
X
(a)

Representación ASM de una máquina Moore

A
z=0

0 1
X

1
A/0
0 1 B/1
B
z=1 0
1 0

0 1 C/0
X
(b)

C
z=0

0 1
X
(a)

15

También podría gustarte