Está en la página 1de 75

L ogica Digital

Circuitos Secuenciales
Francisco Garc a Eij o
Organizaci on del Computador I Departamento de Computaci on - FCEyN UBA

10 de Abril del 2012

Agenda

1 2 3 4

Repaso Introducci on Flip-Flops Ejercicios

Qu e deber amos saber hasta ahora?

Qu e deber amos saber hasta ahora?

Operadores y funciones booleanas.

Qu e deber amos saber hasta ahora?

Operadores y funciones booleanas. Reducciones utilizando identidades.

Qu e deber amos saber hasta ahora?

Operadores y funciones booleanas. Reducciones utilizando identidades. Dada una tabla de verdad poder escribir su funci on booleana.

Qu e deber amos saber hasta ahora?

Operadores y funciones booleanas. Reducciones utilizando identidades. Dada una tabla de verdad poder escribir su funci on booleana. Gracar circuitos l ogicos.

Qu e deber amos saber hasta ahora?

Operadores y funciones booleanas. Reducciones utilizando identidades. Dada una tabla de verdad poder escribir su funci on booleana. Gracar circuitos l ogicos. Circuitos combinatorios.

Introducci on

Circuitos Combinacionales

La salida esta determinada u nicamente por la entrada del circuito

Introducci on

Circuitos Combinacionales

Circuitos Secuenciales

La salida esta determinada u nicamente por la entrada del circuito

La salida esta determinada por la entrada y el estado del circuito

Circuitos Secuenciales
Cualquier circuito secuencial, se puede separar en dos partes:
1 2

un bloque combinacional un bloque con memoria

Circuitos Secuenciales
Cualquier circuito secuencial, se puede separar en dos partes:
1 2

un bloque combinacional un bloque con memoria

La memoria almacena bits que determinan el estado del circuito

Circuitos Secuenciales
Cualquier circuito secuencial, se puede separar en dos partes:
1 2

un bloque combinacional un bloque con memoria

La memoria almacena bits que determinan el estado del circuito Las entradas del circuito combinacional son las entradas (E ) junto con las salidas de la memoria (Qn )

Circuitos Secuenciales
Cualquier circuito secuencial, se puede separar en dos partes:
1 2

un bloque combinacional un bloque con memoria

La memoria almacena bits que determinan el estado del circuito Las entradas del circuito combinacional son las entradas (E ) junto con las salidas de la memoria (Qn ) El bloque combinacional genera la salida del circuito (S ) y el nuevo estado del mismo (Qn+1 )

Flip-Flops

Introducci on Un FF es un dispositivo capaz de almacenar un bit. Utilizan el principio de la retroalimentaci on. Esta caracter stica es utilizada en Electr onica Digital para memorizar resultados. El paso de un estado a otro se realiza variando las entradas. Seg un el tipo de entradas pueden dividirse en:

Flip-Flops

Introducci on Un FF es un dispositivo capaz de almacenar un bit. Utilizan el principio de la retroalimentaci on. Esta caracter stica es utilizada en Electr onica Digital para memorizar resultados. El paso de un estado a otro se realiza variando las entradas. Seg un el tipo de entradas pueden dividirse en:
Asincr onicos: Solo tienen entradas de control y pueden cambiar de estado en cualquier momento.

Flip-Flops

Introducci on Un FF es un dispositivo capaz de almacenar un bit. Utilizan el principio de la retroalimentaci on. Esta caracter stica es utilizada en Electr onica Digital para memorizar resultados. El paso de un estado a otro se realiza variando las entradas. Seg un el tipo de entradas pueden dividirse en:
Asincr onicos: Solo tienen entradas de control y pueden cambiar de estado en cualquier momento. Sincr onicos: Adem as de las entradas de control posee una entrada de sincronismo o de reloj. El sistema solo puede cambiar en los instantes de sincronismo.

Relojes (Clocks)
Introducci on Un reloj es un circuito que emite una serie de pulsaciones consecutivas con una frecuencia denida. Se denomina Flanco a la transici on del nivel bajo al alto o del nivel alto al bajo. El periodo entre dos ancos ascendentes o descendentes se denomina tiempo de ciclo del reloj. Recordemos Frecuencia =
1 T

Tipos de Sincronismo

Sincronismo por nivel (alto o bajo) El sistema lee sus entradas cuando el reloj esta en estado alto o bajo.

Tipos de Sincronismo

Sincronismo por nivel (alto o bajo) El sistema lee sus entradas cuando el reloj esta en estado alto o bajo. Sincronismo por anco (de subida o de bajada) El sistema lee sus entradas justo cuando se produce el anco activo.

Asincr onicos: Flip-Flop RS


Caracter sticas Dispositivo de almacenamiento temporal de dos estados alto y bajo. Sus entradas principales son Set y Reset.
S o Set: Cuando esta en 1 la salida esta en 1. R o Reset: Cuando esta en 1 la salida esta en 0.

S 0 0 1 1

R 0 1 0 1

Qt +1 Qt 0 1 Indenido

Asincr onicos: Flip-Flop RS

Asincr onicos: Flip-Flop RS

Sincr onicos: Flip-Flop RS


Caracter sticas Adem as de las entradas R y S posee una entrada C de sincronismo. Esta entrada lo que haces es permitir o no el cambio de estado del FF.

C 0 1 1 1 1

S X 0 0 1 1

R X 0 1 0 1

Qt +1 Qt Qt 0 1 Indenido

Sincr onicos: Flip-Flop RS

S Q Clk Q R

Sincr onicos: Flip-Flop RS

GRB

CLR

Sincr onicos: Flip-Flop D (Delay)

Caracter sticas Posee solo una entrada D. La salida Q obtiene el valor de la entrada D cuando la se nal del Clock se encuentra activada.

C 0 1 1

D X 0 1

Qt +1 Qt 0 1

Sincr onicos: Flip-Flop D (Delay)

D Clk

S Clk R

Sincr onicos: Flip-Flop D (Delay)

GRB

CLR

Sincr onicos: Flip-Flop T

Caracter sticas Posee solo una entrada T. Si hay un 0 en la entrada T, cuando se aplica un pulso de reloj la salida mantiene el valor del estado presente. Si hay un 1 se complementa.

C 0 1 1

T X 0 1

Qt +1 Qt Qt t Q

Sincr onicos: Flip-Flop T

GRB

CLR

Sincr onicos: Flip-Flop JK


Caracter sticas Sus entradas son J y K en honor a Jack Kilby. Comportamiento similar al RS salvo que permite el estado 1 1 en sus entradas. Se considera como el FF universal ya que puede congurarse para obtener los dem as FF.

C 0 1 1 1 1

J X 0 0 1 1

K X 0 1 0 1

Q (t + 1) Qt Qt 0 1 t Q

Flip-Flop JK

J Clk K

S Clk R

Flip-Flop JK

GRB

CLR

Registros

Ent0

Sal0

Un registro es un conjunto de n ip-ops asociados, que permiten almacenar temporariamente una palabra o grupo de n bits.

Ent1

Sal1

Ent2

Sal2

Ent3
Clock

Sal3

Componentes de tres estados


A 0 1 x Noci on el ectrica:
B=0 A C A B=1 C

B 1 1 0

C 0 1 Hi-Z S mbolo:
A B C

Hi-Z signica alta impedancia, es decir, que tiene una resistencia alta al pasaje de corriente. Como consecuencia de esto, podemos considerar al pin C como desconectado del circuito.

Ejercicio 1

a) Dise nar un registro de 4 bits. El mismo debe contar con 4 entradas e0 , . . . , e3 para ingresar el dato a almacenar, 4 salidas s0 , . . . , s3 para ver el dato almacenado y las se nales de control reset y WriteEnable. b) Modicar el dise no anterior agreg andole componentes de 3 estados para que s olo cuando se active la se nal de control mostrar muestre el dato almacenado.

Soluci on

e3

SET

s3

CLR

e2

SET

s2

CLR

e1

SET

s1

CLR

Q Q

e0

SET

s0

WriteEnable

CLR

Reset

Soluci on

HAB.

e3

SET

s3

CLR

Q
HAB.

e2

SET

s2

CLR

Q
HAB.

e1

SET

s1

CLR

Q
HAB.

e0
WriteEnable

SET

s0

CLR

Reset

Enable out

Ejercicio 2

Congurar dos ip-ops JK para que se comporten como la siguiente tabla caracter stica. Q1 0 0 1 1 Q2 0 1 0 1 Q1 1 1 0 0 Q2 1 0 0 1

Soluci on

J1 K1

Q1 Q1

J2 K2

Q2 Q2

Ejercicio 3
Implementar un registro contador de dos bits que cumpla con los siguientes estados y que cada cambio se produzca al apretar un pulsador. Nos piden adem as que el componente a desarrollar cuente con una entrada de Reset.

00

11

01

10

Soluci on

Q0 0 0 1 1 0 .Q1 + Q0 .Q 1 D0 = Q 1 D1 = Q

Q1 0 1 0 1

Q0 0 1 1 0

Q1 1 0 1 0

D0 0 1 1 0

D1 1 0 1 0

Soluci on

Q
FF1 FF2

Ejercicio 4: Construcci on de circuitos secuenciales por bloques


La conjetura de Collatz, es un famoso problema matem atico a un no resuelto. Esta conjetura enuncia la siguiente funci on f : N N, aplicable a cualquier n umero entero positivo: n si n es par f (n) = 2 3n + 1 si n es impar Se dice que si se toma cualquier n umero y se aplica esta funci on reiteradas veces, el resultado siempre converge a 1.
1

Construir un circuito combinatorio que realice la funci on f (n) para una entrada de 5 bits. Construir un circuito secuencial, que aplique reiteradas veces la funci on anterior por cada ciclo de reloj. Modicar el circuito anterior de forma que si el valor de entrada es 1, entonces la salida tambi en sea 1.

Ejercicio 4: Primer intento. . .


Debemos construir una tabla de verdad de 5 entradas y 5 salidas Esto corresponde a 32 posiciones y 5 funciones, una para cada salida Resolver una tabla de verdad de estas dimensiones resulta muy complejo y puede llevar a errores

Ejercicio 4: Primer intento. . .


Debemos construir una tabla de verdad de 5 entradas y 5 salidas Esto corresponde a 32 posiciones y 5 funciones, una para cada salida Resolver una tabla de verdad de estas dimensiones resulta muy complejo y puede llevar a errores

Otra opci on, pensar en bloques y reutilizar circuitos conocidos

Ejercicio 4: Pensando un poco. . .


entrada

salida

Ejercicio 4: Pensando un poco. . .


entrada

n/2

3n+1

salida

Ejercicio 4: Pensando un poco. . .


entrada
4 3 2 1 0

n/2

3n+1

salida

Ejercicio 4: Pensando un poco. . .


entrada
4 3 2 1 0

n/2

3n+1
seleccionar

salida

Ejercicio 4: Pensando un poco. . .


entrada
4 3 2 1 0

n/2

3n+1
seleccionar
Control

salida

Ejercicio 4: Pensando un poco. . . n/2


Resolver la operaci on de divisi on por dos es simple, ya que se trata de un desplazamiento a derecha

Ejercicio 4: Pensando un poco. . . n/2


Resolver la operaci on de divisi on por dos es simple, ya que se trata de un desplazamiento a derecha

n/2

Ejercicio 4: Pensando un poco. . . 3n + 1


La operaci on 3n + 1 se puede escribir como:
1 2

n+n+n+1 2n + n + 1 Para el primer caso, utilizar amos dos circuitos sumadores En la segunda opci on, tan solo se utiliza un circuito sumador, ya que la multiplicaci on por dos se realiza mediante un desplazamiento

Ejercicio 4: Pensando un poco. . . 3n + 1


La operaci on 3n + 1 se puede escribir como:
1 2

n+n+n+1 2n + n + 1 Para el primer caso, utilizar amos dos circuitos sumadores En la segunda opci on, tan solo se utiliza un circuito sumador, ya que la multiplicaci on por dos se realiza mediante un desplazamiento

Elegimos la segunda opci on . . . 2n + n + 1

Ejercicio 4: Pensando un poco. . . 3n + 1 = 2n + n + 1


4 3 2 1 0

3n+1

sc

sc

sc

sc

sc

Ejercicio 4: Pensando un poco. . . 3n + 1 = 2n + n + 1


4 3 2 1 0

3n+1

sc

sc

sc

sc

sc

Ejercicio 4: Pensando un poco. . . 3n + 1 = 2n + n + 1


4 3 2 1 0

3n+1

0
sc sc sc sc sc

Ejercicio 4: Pensando un poco. . . 3n + 1 = 2n + n + 1


4 3 2 1 0

3n+1

0
sc sc sc sc sc

Ejercicio 4: Pensando un poco. . .

n/2

3n+1

0 0
sc sc sc sc sc

Control

salida

Resta considerar como resolvemos el selector.

Ejercicio 4: Pensando un poco. . .

n/2

3n+1

0 0
sc sc sc sc sc

mux

mux

mux

mux

mux

Control

salida

Para eso utilizamos un conjunto de 5 multiplexores.

Ejercicio 4: Segundo punto. . .


2

Construir un circuito secuencial, que aplique reiteradas veces la funci on anterior por cada ciclo de reloj.

Ejercicio 4: Segundo punto. . .


2

Construir un circuito secuencial, que aplique reiteradas veces la funci on anterior por cada ciclo de reloj.

En el segundo punto nos piden aplicar la funci on reiteradas veces a un n umero dado Para esto necesitamos un registro donde almacenar el resultado

Ejercicio 4: Segundo punto. . .


2

Construir un circuito secuencial, que aplique reiteradas veces la funci on anterior por cada ciclo de reloj.
entrada
4 3 2 1 0

En el segundo punto nos piden aplicar la funci on reiteradas veces a un n umero dado Para esto necesitamos un registro donde almacenar el resultado

n/2
mux

3n+1
Control

salida
registro

Ejercicio 4: Segundo punto. . .


2

Construir un circuito secuencial, que aplique reiteradas veces la funci on anterior por cada ciclo de reloj.

Una vez almacenado el resultado en un registro Se puede realimentar el circuito de forma que el resultado sea la pr oxima entrada a nuestra funci on

Ejercicio 4: Segundo punto. . .


2

Construir un circuito secuencial, que aplique reiteradas veces la funci on anterior por cada ciclo de reloj.
entrada
4 3 2 1 0

Una vez almacenado el resultado en un registro Se puede realimentar el circuito de forma que el resultado sea la pr oxima entrada a nuestra funci on

n/2
mux

3n+1
Control

salida
registro

Ejercicio 4: Tercer punto. . .


3

Modicar el circuito anterior de forma que si el valor de entrada es 1, entonces la salida tambi en sea 1.

Ejercicio 4: Tercer punto. . .


3

Modicar el circuito anterior de forma que si el valor de entrada es 1, entonces la salida tambi en sea 1.

Para el tercer punto, se debe considerar si la entrada es 1 En ese caso, debemos jar la salida a 1

Ejercicio 4: Tercer punto. . .


3

Modicar el circuito anterior de forma que si el valor de entrada es 1, entonces la salida tambi en sea 1.

Para el tercer punto, se debe considerar si la entrada es 1 En ese caso, debemos jar la salida a 1

n/2
mux

3n+1
Control

registro

Resumen

Resumen Qu e son los circuitos secuenciales?

Resumen

Resumen Qu e son los circuitos secuenciales? Tipos de Flip-Flops.

Resumen

Resumen Qu e son los circuitos secuenciales? Tipos de Flip-Flops. Registros.

Resumen

Resumen Qu e son los circuitos secuenciales? Tipos de Flip-Flops. Registros. Como congurar los Flip-Flops para un determinado comportamiento.

Resumen

Resumen Qu e son los circuitos secuenciales? Tipos de Flip-Flops. Registros. Como congurar los Flip-Flops para un determinado comportamiento. Contadores.