1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la...

31
Prof: Zulay Franco 30 1.7. Implementaciones de biestables En muchas ocasiones no contamos con el circuito integrado del biestable necesario para una aplicación y por tal razón se hace necesario hacer implementaciones a partir de otros biestables integrados disponibles. A continuación se explica el procedimiento para cada caso, dependiendo del biestable que se dispone y del biestable que se requiere diseñar. 1.7.1. Implementación de latch Para realizar la implementación de un biestable síncrono por nivel (latch) a partir de otro biestable, se debe tomar en cuenta de que tipo de biestable se dispone para ser su implementación: a) si se dispone de un biestable asíncrono ó b) si se dispone de otro latch a) Si se dispone de un biestable asíncrono: Para convertir un biestable asíncrono a uno síncrono disparado por nivel, se debe diseñar un circuito lógico combinacional como se muestra en la figura 1.30. Circuito lógico combinacional (CLC) Q Q Clk Entrdas de excitación Entradas de Excitación del biestable asincrono Biestable Asíncrono Figura 1.30. Implementación de un latch a partir de un biestable asíncrono. La idea básica para ser este tipo de implementación es colocar un circuito lógico combinacional (CLC) en las entradas del biestable asíncrono con el fin de colocar una entrada de reloj que gobierne en que instante de tiempo el biestable asíncrono debe realizar un SET, un RESET ó quedarse en la condición de memoria. Es decir, este circuito lógico combinacional se encarga de convertirlo en síncrono y de colocar los estados lógicos adecuados en las entradas de excitación del biestable disponible para que se cumpla la tabla característica del latch deseado. Por tanto las entradas al circuito deben ser: la señal de reloj, entrada de excitación deseada y estado presente Q n , y sus salidas van a depender de entradas de excitación del biestable que se tienen. Los pasos a seguir de este diseño son: 1) Elaborar la tabla característica del latch deseado. 2) Elaborar la tabla de excitación del biestable asíncrono disponible

Transcript of 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la...

Page 1: 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el

Prof: Zulay Franco 30

1.7. Implementaciones de biestables

En muchas ocasiones no contamos con el circuito integrado del biestable necesario para

una aplicación y por tal razón se hace necesario hacer implementaciones a partir de otros

biestables integrados disponibles. A continuación se explica el procedimiento para cada caso,

dependiendo del biestable que se dispone y del biestable que se requiere diseñar.

1.7.1. Implementación de latch

Para realizar la implementación de un biestable síncrono por nivel (latch) a partir de

otro biestable, se debe tomar en cuenta de que tipo de biestable se dispone para ser su

implementación: a) si se dispone de un biestable asíncrono ó b) si se dispone de otro latch

a) Si se dispone de un biestable asíncrono:

Para convertir un biestable asíncrono a uno síncrono disparado por nivel, se debe diseñar

un circuito lógico combinacional como se muestra en la figura 1.30.

Cir

cuit

o l

óg

ico

com

bin

acio

nal

(CL

C)

Q

QClk

Entrdas de

excitaciónEntradas de

Excitación del

biestable

asincrono Bie

stab

le

Así

ncr

on

o

Figura 1.30. Implementación de un latch a partir de un biestable asíncrono.

La idea básica para ser este tipo de implementación es colocar un circuito lógico

combinacional (CLC) en las entradas del biestable asíncrono con el fin de colocar una entrada

de reloj que gobierne en que instante de tiempo el biestable asíncrono debe realizar un SET, un

RESET ó quedarse en la condición de memoria. Es decir, este circuito lógico combinacional se

encarga de convertirlo en síncrono y de colocar los estados lógicos adecuados en las entradas

de excitación del biestable disponible para que se cumpla la tabla característica del latch

deseado. Por tanto las entradas al circuito deben ser: la señal de reloj, entrada de excitación

deseada y estado presente Qn, y sus salidas van a depender de entradas de excitación del

biestable que se tienen.

Los pasos a seguir de este diseño son:

1) Elaborar la tabla característica del latch deseado.

2) Elaborar la tabla de excitación del biestable asíncrono disponible

Page 2: 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el

Prof: Zulay Franco 31

3) Elaborar la tabla de la verdad del circuito combinacional.

4) Elaborar los mapas de Karnaugh para encontrar las ecuaciones de las entradas de

excitación del biestable disponible.

5) Realizar el diseño.

Ejemplo 8: Obtener el latch tipo D de la figura 1.21, a partir de un R-S asíncrono activo

en alto.

D Q

QClk

Figura 1.32. Latch tipo D.

El ejercicio se basa en diseñar, como se indica en la figura 1.33, un circuito lógico

combinacional cuyas salidas gobiernen las entradas de excitación del biestable asíncrono RS.

Clk

Q

Q

D

Cir

cuit

o ló

gic

o

Co

mbin

aci

on

al

Bie

sta

ble

Así

ncro

no

R

S

Figura 1.33. Diagrama de bloque para convertir un biestable asíncrono R y S en un latch

tipo D.

1) Tabla característica del latch tipo D activo por nivel alto (deseado): Mientras la

señal de reloj está en nivel bajo, el dispositivo a diseñar debe permanecer en memoria, es decir

la salida Qn+l

toma el estado lógico de Qn y cuando la señal de reloj se encuentra en nivel alto

la salida Qn+l

sigue a la entrada D. Ver la tabla 1.14.

Page 3: 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el

Prof: Zulay Franco 32

Clk D Qn

Qn+1

0 0 0 0

0 0 1 1

0 1 0 0

0 1 1 1

1 0 0 0

1 0 1 0

1 1 0 1

1 1 1 1

Tabla 1.14. Tabla característica del latch tipo D activo por nivel alto.

2) Tabla de excitación del biestable asíncrono disponible:

Qn Q

n+1 R

S

0 0 X 0

0 1 0 1

1 0 1 0

1 1 0 X

Tabla 1.15 .Tabla de excitación de un biestable asíncrono R-S activo en alto.

3) Elaborar la tabla de verdad del circuito lógico combinacional:

Entradas: Clk, D, Qn ,

Salidas: R y S.

Utilizando la tabla 1.14 y la tabla de excitación del biestable R-S activo en ALTO se

construye la tabla 1.16, que no es más que la tabla de la verdad del CLC que se quiere diseñar.

El estado lógico de las salidas (R-S) del circuito combinacional dependerá de los estados

lógicos que se deben colocar en las entradas del biestable R-S asíncrono. Así por ejemplo,

Page 4: 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el

Prof: Zulay Franco 33

analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el estado

presente (Qn) del latch es cero lógico y se quiere un estado futuro (Q

n+ l) igual a cero lógico ¿

qué valores deben estar saliendo del circuito combinacional hacia las entradas R y S del

biestable disponible para que se cumpla esta condición? Buscando en la tabla 1.15 nos indica

que S debe ser cero lógico y R no importa el nivel lógico que tenga. Siguiendo este

procedimiento se obtienen los valores de R y S para cada fila en la tabla 1.16

Entradas Salidas

Señal de reloj Entrada de

Excitación

(síncrono)

Estado

Presente

Valor que deben estar en las

entradas de excitación

(asíncrono)

Clk D Qn

R S

0 0 0 X 0

0 0 1 0 X

0 1 0 X 0

0 1 1 0 X

1 0 0 X 0

1 0 1 1 0

1 1 0 0 1

1 1 1 0 X

Tabla 1.16. Tabla de la verdad del CLC

4) Elaborar los mapas de Karnaugh: Ahora utilizando los mapas de Karnaugh se

encuentran las ecuaciones de excitación para R y S.

Ecuación para R:

Clk D 00 01 11 10

0

1

X X

10 0

X 0

0

Qn

DClkR *

Ecuación para S:

Page 5: 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el

Prof: Zulay Franco 34

Clk D 00 01 11 10

0

1

0 0

0X X

0 1

X

Qn

DClkS *

5) Diseño del circuito:

R

S

Q

Q

D

Clk

Figura 1.34. Implementación de un latch tipo D a partir de un biestable asíncrono

b) Si se dispone de otro latch

La idea básica para ser este tipo de conversión es diseñar un circuito lógico

combinacional (CLC) como se indica en la figura 1.35, que se encargue de colocarle los

valores adecuados en las entradas de excitación al biestable disponible (latch) para que realice

o bien un SET, ó un RESET, o se quede en la condición de memoria, de acuerdo a lo

indicado por las entradas de excitación del latch requerido.

.

CLK

Q

Q

Latch

disponible

Latch requerido

Entradas de

Excitación

del latch

disponible

Entradas de

Excitación del

latch requerido

Cir

cuit

oló

gic

o

lom

bin

acio

nal

(CL

C)

Dato almacenado (Qn)

Figura 1.35.Implementar un latch a partir de otro latch

Page 6: 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el

Prof: Zulay Franco 35

Las entadas del CLC a diseñar deben ser las entradas externas ( entradas de excitación

deseada) y la salida Q, recuerde que el estado futuro Qn+1

de un circuito lógico secuencial

(como lo son los biestables) , depende del estado lógico de sus entradas externas y el estado

lógico presente en su salida Q. Para esta implementación no se requiere colocar la entrada de

reloj (CLK) al circuito combinacional, pues el biestable del cual se dispone ya es síncrono sólo

se requiere convertir sus entradas de excitación.

Los pasos a seguir para diseñar este circuito lógico combinacional son:

1) Elaborar la tabla característica del biestable deseado.

2) Elaborar la tabla de excitación del biestable disponible

3) Elaborar la tabla de la verdad del circuito combinacional.

Entradas al CLC:

Entradas de excitación del biestable deseado..

Estado presente Qn.

Salidas del CLC:

Depende de las entradas de excitación del biestable que se disponga.

4) Elaborar los mapas de Karnaugh para encontrar las ecuaciones de las entradas de

excitación del biestable disponible.

5) Realizar el diseño.

A continuación se dará un ejemplo para su mejor comprensión.

Ejemplo 9. Obtener un latch R-S activo por nivel alto y con entradas de excitación

activas en alto, a partir de de un latch tipo D activado por nivel alto.

1) Tabla característica del latch tipo RS activo por nivel alto (deseado): Como solo se

necesita realizar la conversión de sus entradas de excitación en la tabla no incluye la entrada

CLK.

Page 7: 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el

Prof: Zulay Franco 36

R S Qn

Qn+1

0 0 0 0

0 0 1 1

0 1 0 1

0 1 1 1

1 0 0 0

1 0 1 0

1 1 0 0

1 1 1 0

}memoria

}set

}reset

} Ambiguo( no se sabe el dato que

finalmente va ser almacenado)

Tabla 1.17. Tabla característica del latch R-S.

2) Elaborar la tabla de excitación del biestable disponible

La tabla de excitación del latch disponible, en este caso el tipo D, es la siguiente: en la

entrada D se debe colocar el estado futuro que se desea tener , es decir si se desea un estado

futuro (Qn+1

) de cero lógico entonces en la entrada de excitación D se debe colocar un cero

lógico y si se desea un estado futuro (Qn+1

) de uno lógico entonces en la entrada de excitación

D se debe colocar un uno lógico, así se obtiene la tabla 1.18.

Qn Q

n+1 D

0 0 0

0 1 1

1 0 0

1 1 1

Tabla 1.18 Tabla de excitación del latch tipo D.

3) Elaborar la tabla de la verdad del circuito combinacional. El tercer paso es diseñar el

CLC que gobernara la entada de excitación del latch disponible.

Entrada R, S y Qn, y

Salida: D (Entrada de excitación del latch disponible).

Page 8: 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el

Prof: Zulay Franco 37

Analizando la primera fila de la tabla 1.17 : Si las entradas R y S se encuentran en cero

lógico, es decir en la condición de MEMORIA , entonces Qn+l

debe ser igual a Qn, es decir a

cero lógico, entonces ¿qué valores deben estar saliendo del circuito combinacional hacia las

entradas D del biestable disponible para que se cumpla esta condición?. Buscando en la tabla

1.18 nos indica que D debe ser cero lógico. Siguiendo este procedimiento se obtienen los

valores D para cada fila en la tabla 1.19 El valor lógico de la salida en esta tabla no es más que

el valor que se le debe colocar a la entrada de excitación D para obtener el estado futuro Qn+1

(tabla 1.19).

Memoria {

Set {

Reset {

Ambiguo {

Tabla 1.19. Tabla de la verdad del CLC a diseñar. El cuarto paso es obtener el circuito lógico combinacional de entrada, que no es más que

encontrar la ecuación para la entrada D. Utilizando los mapas K tenemos:

RS 00 01 11 10

0

1

0 0

01 1

1 0

0

Qn

La ecuación para la entrada D es:

Entradas (Entradas de

excitación del latch

deseado y estado

presente)

Salida

(Igual a la entrada de

excitación del latch

disponible)

R S Qn

D

0 0 0 0

0 0 1 1

0 1 0 1

0 1 1 1

1 0 0 0

1 0 1 0

1 1 0 0

1 1 1 0

Page 9: 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el

Prof: Zulay Franco 38

)(

)(

)(

SQRD

SQRD

SQRD

SQRD

n

n

n

n

5) Diseño

CLK

D Q

QClkS

R

Figura. 1.36. Latch RS implementado a partir de un latch tipo D.

1.7.2 Implementación de Flip-Flop

a) Si se dispone de un biestable asíncrono:

Una de las configuraciones que se tiene para implementar un flip-flop, se basa en un

biestable síncrono por nivel (latch) y un circuito detector de flanco colocado en la entrada de

reloj, este último circuito puede ser o bien un circuito para detectar cuando la señal de reloj

pasa de su nivel bajo a alto (detector de flanco de subida) ó bien cuando la señal de reloj pasa

de alto a bajo (detector de flanco de bajada). Para realizar la implementación de un biestable

síncrono por flanco (flip-flop) a partir de otro biestable, se debe tomar en cuenta de que tipo

de biestable se dispone para ser su implementación: a) si se dispone de un biestable asíncrono

b) si se dispone de un latch ó c) si se dispone de otro flip-flop.

Para su implementación primero se debe convertir el biestable asíncrono en un latch

(sección 1.7.1) y finalmente se debe colocar un detector de flanco como se ilustra en la figura

1.37.

Page 10: 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el

Prof: Zulay Franco 39

Entradas de

Excitación

del flip-flop ...Entradas de

Excitación

del B.A

Detector

de flanco

Cir

cuit

o l

óg

ico

cco

mb

inac

ion

al

Clk

Q

Q

Bie

stab

le a

sín

cro

no

Latch

Clk

Flip-flop

Figura 1.37. Implementación de flip.flop a partir de un biestable asíncrono.

Para la implementación se debe colocar un circuito detector de flanco en la entrada de

control ó de reloj del latch. La finalidad de este circuito es reducir el tiempo de habilitación del

latch, debe habilitarse por un tiempo muy pequeño durante la transición de la señal de reloj de

bajo a alto si se está diseñando un flip flop de flanco de subida ó durante la transición de la

señal de reloj de alto a bajo si se está diseñando un flip-flop de flanco de bajada.

Detectores de Flanco

Los detectores de flanco deben diseñarse de acuerdo al latch disponible, la idea es

habilitar el latch solo en el flanco de subida o de bajada de la señal de reloj Estos diseños se

basan en colocar un retardo mediante un inversor a la señal de reloj y luego pasar ambas

señales Clk y Clk por la compuerta adecuada dependiendo del latch disponible. En la figura

1.38 se observa la salida de los detectores de flanco de subida cuando se dispone en el primer

caso de un latch activo en alto y en el segundo caso de un latch activo en bajo.

Page 11: 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el

Prof: Zulay Franco 40

Detectores de flanco de subida:

Clk

Clk

Latch

activo en alto

activo en bajo

Latch

Figura 1.38. Salida de un circuito detector de flanco de subida.

Debido al retardo del inversor, como se observa en la figura 1.38, inmediatamente

después de la transición de la señal de reloj de bajo a alto, hay un instante de tiempo que ambas

señales (Clk y Clk ) se encuentra en el estado lógico uno, y dependiendo del latch que se

dispone se coloca una compuerta AND ó una compuerta NAND para obtener un pulso en alto

o en bajo respectivamente, con una duración de tiempo equivalente al t iempo de propagación

del circuito inversor, como el tiempo que el latch permanece habilitado es muy corto y cerca de

la transición de bajo a alto se dice que el biestable es disparado por flanco de subida. Los

circuitos detectores de flanco de subida se muestran en la figura 1.39 y los circuitos detectores

de flanco de bajada se muestran en la figura 1.40.

Se dispone de un latch activo en alto: Se dispone de un latch activo en bajo:

Figura 1.39. Detectores de flanco de subida.

Clk Clk

Page 12: 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el

Prof: Zulay Franco 41

Detectores de flanco de bajada:

Clk

Clk

Latch

activo en alto

Latch

activo en bajo

Figura 1.40. Salida de un circuito detector de flanco de bajada.

Debido al retardo del inversor, como se observa en la figura 1.40, inmediatamente

después de la transición de la señal de reloj de alto a bajo, hay un instante de tiempo que ambas

señales (Clk y Clk ) se encuentra en el estado lógico cero, y dependiendo del latch que se

dispone se coloca una compuerta OR ó una compuerta NOR para obtener un pulso en bajo o

en alto respectivamente, con una duración de tiempo equivalente al tiempo de propagación del

circuito inversor. Como el tiempo que el latch permanece habilitado es muy corto y cerca de la

transición de alto a bajo se dice que el biestable es disparado por flanco de bajada. Los circuitos

detectores de flanco de bajada se muestran en la figura 1.41.

Se dispone de un latch activo en alto: Se dispone de un latch activo en bajo:

Clk Clk

Figura 1.41. Detectores de flanco de bajada.

Ejemplo 10: Implementar un flip-flop tipo D disparado con flanco de subida, utilizando

un R-S asíncrono activo en ALTO.

Page 13: 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el

Prof: Zulay Franco 42

Simbología:

D Q

QClk

Figura 1.42. Simbología de un flip-flop tipo D.

Implementación:

Q

Q

D

Clk Cir

cuit

o L

ógic

o

Com

bin

acio

nal

Detector de

flanco Bie

stab

le A

sincr

ono

R

S

Figura. 1.43. Implementación de un flip-flop tipo D a partir de un biestable asíncrono R-S.

Es decir, se debe diseñar un circuito lógico combinacional donde las entradas sean: D, la

señal de reloj (Clk) y Qn, y sus salidas sean las señales que van a las entradas de excitación del

biestable R-S. Sin embargo gran parte del problema ya fue resuelto en el ejercicio 8 cuando se

diseñó el latch tipo D, lo que resta es colocarle un detector de flanco de subida que produzca un

pulso en alto de corta duración, que activa el latch disponible. El detector seleccionado es el

que tiene la compuerta AND ya que se desea que el flip-flop sea disparado por flanco de

subida y se dispone de un latch activado por nivel alto. Diseño del circuito:

Page 14: 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el

Prof: Zulay Franco 43

Latch

R

S

Q

Q

D

Clk

Figura. 1.44. Implementación de un Flip.Flop tipo D a partir de un R.S asíncrono.

Ejemplo 11: Implementar un flip-flop J-K cuyas entradas de excitación sean activas en

alto y disparado por flanco de bajada utilizando un R-S asíncrono con entradas de excitación

activas en BAJO

Simbología:

J Q

Q

K

Clk

Figura 1.45. Simbología de un flip-flop tipo J-K.

Implementación de un flip-flop J-K a partir de un biestable asíncrono.

Q

QCir

cuit

o L

ógic

o

Co

mbin

aci

on

al

Bie

sta

ble

Así

ncr

on

o

K

Detector de

Flanco de bajadaClk

JR

S

Figura 1.45. Implementación de un flip-flop J-K a partir de un biestables R-S asíncrono.

Es decir, el circuito lógico combinacional tiene como entradas J, K, Clk, y Qn y como

salidas R y S, que no son más que las entradas de excitación del biestable asíncrono

disponible.

1) Se elabora la tabla característica de un latch J-K, para luego convertirlo en flip-flop

Page 15: 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el

Prof: Zulay Franco 44

Clk J K Qn

Qn+1

0 0 0 0 0

0 0 0 1 1

0 0 1 0 0

0 0 1 1 1

0 1 0 0 0

0 1 0 1 1

0 1 1 0 0

0 1 1 1 1

1 0 0 0 0

1 0 0 1 1

1 0 1 0 0

1 0 1 1 0

1 1 0 0 1

1 1 0 1 1

1 1 1 0 1

1 1 1 1 0

Tabla 1.20. Tabla característica de un latch J-K.

2) Para hacer este diseño de este biestable se debe saber cuál es la tabla de excitación

del biestable de compuertas NAND activo en BAJO. (Tabla 1.6)

Qn Q

n+1 R

S

0 0 X 1

0 1 1 0

1 0 0 1

1 1 1 X

Page 16: 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el

Prof: Zulay Franco 45

3) Tabla de la verdad del circuito combinacional: haciendo uso de la tabla de excitación

anterior tenemos los valores que se deben colocar en el entradas R y S para obtener el estado

futuro Qn+1

de la tabla 1.21.

Entradas Salidas

Señal de

reloj

Entrada de Excitación

(síncrono)

Estado

Presente

Valor que deben estar

en las entradas de

excitación(asíncrono)

Clk J K Qn

R S

0 0 0 0 X 1

0 0 0 1 1 X

0 0 1 0 X 1

0 0 1 1 1 X

0 1 0 0 X 1

0 1 0 1 1 X

0 1 1 0 X 1

0 1 1 1 1 X

1 0 0 0 X 1

1 0 0 1 1 X

1 0 1 0 X 1

1 0 1 1 0 1

1 1 0 0 1 0

1 1 0 1 1 X

1 1 1 0 1 0

1 1 1 1 0 1

Tabla 1.21. Tabla de la verdad del CLC

4) Ahora utilizando los mapas de Karnaugh se encuentran las ecuaciones para el biestable

R-S.

Page 17: 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el

Prof: Zulay Franco 46

Ecuación para R:

Clk J 00 01 11 10

0001

X X11 1

X 1

1

KQ n

11

100 01 1

X X X1

n

nn

QKClkR

QKClkQKClkR

**

Ecuación para S:

Clk J 00 01 11 10

0001

1 1XX X

1 0

X

1110

1 1X X

1 1 10

nK

Q

n

nn

QJClkS

QJClkQJClkS

**

5) Luego para convertirlo en un flip-flop disparado por flanco de bajada, en la señal Clk

se coloca el detector implementado con la compuerta NOR y el inversor. Este detector genera

un pulso positivo puesto que el latch diseñado es activo en alto y lo hace cuando la señal de

reloj externa hace la transición desde un nivel lógico uno al cero, es decir lo genera en el flanco

de bajada de la señal de reloj externa.

Diseño del circuito:

Page 18: 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el

Prof: Zulay Franco 47

R

S

Q

QClk

J

K

Figura 1.46. Implementación de Flip.Flop J-K a partir de biestables R-S asíncronos.

b) a partir de latch.

Para la implementación se debe colocar un circuito detector de flanco en la entrada de

control ó de reloj del latch. La finalidad de este circuito es reducir el tiempo de habilitación del

latch, debe habilitarse por un tiempo muy pequeño durante la transición de la señal de reloj de

bajo a alto si se está diseñando un flip flop de flanco de subida ó durante la transición de la

señal de reloj de alto a bajo si se está diseñando un flip-flop de flanco de bajada. Si la entrada

de excitación del flip flop no es la misma que la entrada de excitación de latch disponible se

debe colocar el circuito combinacional mostrado en la figura 1.47. Si la entrada de excitación

del disponible y el requerido son del mismo tipo no se coloca este circuito al latch solo requiere

del circuito detector de flanco.

... Entradas

de

Excitación

del latch

Entradas de

Excitación del

flip-flop

Detector de

flanco

Cir

cuit

o L

ógic

o

Com

bin

acio

nal

(CL

C)

Clk

Lat

chQ

Q

Clk

Figura 1.47 Implementación de un flip-flop a partir de un latch.

Ejemplo 12. Obtener un Flip-Flop tipo D activo por flanco de subida a partir del

Latch 74XX75.

Para obtener este flip-flop a partir del Latch 74XX75 (activo por nivel alto), solo se

debe colocar en su entrada de reloj el circuito detector de flanco de subida adecuado. El Flip-

Flop implementado se muestra en la figura 1.48.

Page 19: 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el

Prof: Zulay Franco 48

D Q

QClkClk

D

74XX75

Figura 1.48. Implementación de un flip.flop tipo D a partir de un latch tipo D.

Ejercicio propuesto:

Implementar un flip-flop tipo J K a partir de un latch tipo D

1.7.3. Implementación de las entradas asíncronas

Las entradas asíncronas operan independientemente de la señal de reloj, de allí que se le

denominan asíncronas, se utilizan para almacenar en el biestable síncrono el estado "1" o el

estado “0" en cualquier instante de tiempo sin importar las condiciones presentes en las otras

entradas síncronas ó de excitación.

Podemos implementar las entradas asíncronas solo si el diseño parte de un biestable

asíncrono, ya que si se dispone de un biestable síncrono no podemos adicionarle estás entradas

asíncronas a menos que dicho biestable primero sea convertido a un biestable asíncrono.

Para su implementación debemos:

Encontrar las ecuaciones que convierten el biestable asíncrono en uno síncrono. En

la figura 1.49 el circuito lógico combinacional 1

Diseñar un circuito lógico combinacional para establecer la prioridad de las entradas

asíncronas sobre las síncronas. En la figura 1.49el circuito lógico combinacional 2.

Page 20: 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el

Prof: Zulay Franco 49

Q

Q

...

Detector

de flanco

ClkClk

...

Clear

Entradas

de

Excitación

del

Biestable

Asíncrono

excitación

...

Entrada Asíncrona

Entrada Asíncrona

Cir

cuit

o L

ógic

o

Com

bin

acio

nal

(1)

Cir

cuit

o L

ógic

o

Com

bin

acio

nal

(2)

Bie

stab

le A

sincr

ono

Entradas

de

excitación

Entradas

de

sincronas

del tipo de

entrada de

excitación

del

biestable

asíncrono

Preset

Figura 1.49. Implementación de biestables síncronos con entradas asíncronas a partir de

biestables asíncronos.

Ejercicio 13. Implementar un flip-flop tipo D con las siguientes características

disparado por flanco de bajada

con entrada asíncronas activas en bajo,

a partir de un R_S activo en bajo.

Flip-flop requerido

D Q

QClk

P

C

Biestable disponible:

R

S

Q

Q

Page 21: 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el

Prof: Zulay Franco 50

Implementación.

Q

Q

.

Detector

de flanco

ClkClk

Clear

Bie

stab

le A

sincr

ono

Cir

cuit

o L

ógic

o

Com

bin

acio

nal

(2)

Cir

cuit

o L

ógic

o

Com

bin

acio

nal

(1)

Preset

S

R

S`

R`D

Figura 1.50. Implementación de un Flip.Flop tipo D con entradas asíncronas a partir de

biestables asíncronos R-S activo en bajo.

Diseño del circuito lógico combinacional (1).

Este circuito convierte un biestable asíncrono R-S en uno síncrono tipo D, las salidas de

este bloque son llamadas en este caso S`y R`.

Señal de

reloj

Entrada de

Excitación

(síncrono)

Estado

Presente

Estado Futuro Valor que deben estar en

las entradas de

excitación(asíncrono)

Clk D Qn

Qn+1

R` S`

0 0 0 0 X 1

0 0 1 1 1 X

0 1 0 0 X 1

0 1 1 1 1 X

1 0 0 0 X 1

1 0 1 0 0 1

1 1 0 1 1 0

1 1 1 1 1 X

Tabla 1.22. Tabla para determinar el CLC (1)

Page 22: 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el

Prof: Zulay Franco 51

Ahora utilizando los mapas de Karnaugh se encuentran las ecuaciones de excitación

para R y S.

Ecuación para R`:

Clk D 00 01 11 10

0

1

X X

01 1

X 1

1

Qn

DClkR ̀

Ecuación para S`:

Clk D 00 01 11 10

0

1

1 1

1X X

1 0

X

Qn

DClkS ̀

Estas salidas no van directamente a las entradas del biestable asíncrono, deben ir como

entradas al circuito lógico combinacional (2) el cual establece la prioridad de las entradas

asíncronas Preset y Clear sobre las entradas sincronas R` y S`.

Diseño del circuito lógico combinacional (2).

El objetivo de este circuito es establecer que las entradas asíncronas predominen sobre

las síncronas, recuerde que las entradas sincronas son las entradas que dependen de la señal de

reloj y para nuestro caso son llamadas R` y S`. La salida de este circuito lógico combinacional

(2) manejan las entradas del biestable asíncrono R y S

Para elaborar la tabla 1.23 se considera que la entrada asíncrona Preset (P) predomine

sobre la entrada asíncrona Clear(C). De acuerdo a esto se tiene:

Si la entrada asíncrona de Preset (P) se encuentra activada sin importar el estado

en la entrada asíncrona Clear (C) en la entrada del biestable asíncrono debería estar la

condición de SET.

Si la entrada asíncrona de Preset (P) se encuentra desactivada y la entrada

asíncrona Clear (C) activada en la entrada del biestable asíncrono debería estar la condición de

RESET.

Page 23: 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el

Prof: Zulay Franco 52

Si la entrada asíncrona de Preset (P) y la entrada asíncrona Clear (C) se

encuentra desactivada en la entrada del biestable asíncrono se bebería tener los estados que se

encuentran en R`y S`.

P C R` S`

R S

0 0 0 0 1 0

0 0 0 1 1 0

0 0 1 0 1 0

0 0 1 1 1 0

0 1 0 0 1 0

0 1 0 1 1 0

0 1 1 0 1 0

0 1 1 1 1 0

1 0 0 0 0 1

1 0 0 1 0 1

1 0 1 0 0 1

1 0 1 1 0 1

1 1 0 0 0 0

1 1 0 1 0 1

1 1 1 0 1 0

1 1 1 1 1 1

Tabla 1.23. Tabla para diseñar CLC (2). Estable prioridad de las entradas asíncronas

sobre las síncronas.

A partir de la tabla encontramos las ecuaciones para R y S para hacer el diseño del

circuito combinacional 2.

Ecuación para R:

Page 24: 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el

Prof: Zulay Franco 53

00 01 11 10

0001

1 001 1

1 0

0

11

101 01 1

1 1 01

PCR`S`

`CRPR

Ecuación para S:

00 01 11 10

0001

0 110 0

0 0

1

11

101 10 0

0 0 10

PCR`S`

`)(

`**

SCPS

SPCPS

Luego en la señal Clk se coloca el detector de flanco de bajada que genere un pulso

positivo (El latch diseñado es activo en alto), es decir el implementado con la compuerta NOR

y el inversor.

Diseño del circuito

Clk

P

C

S

R

DS`

R`

Q

Q

CLC1

CLC2

BA

Flip-Flop tipo D

DF

Page 25: 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el

Prof: Zulay Franco 54

Figura 1.51. Implementación de un flip-flop tipo D con entradas asíncronas a partir de biestables

asíncronos R-S activo en bajo.

C.I comerciales de flip-flop

74xx73, 74xx76, 74xx112 (J-K)

74XX75, (74XX373) D

1.8. Flip-flop Maestro-Esclavo

Existen dos tipos de implementaciones para los flip-flop, una de ella es la implementada

con un latch y un detector de flanco, estudiada en la sección 1.7.2 y la otra implementación

basada en la utilización de dos latch uno trabajando como maestro y el otro como esclavo, para

este tipo de implementación las salidas del maestro se deben conectar a las entradas de

excitación del esclavo y mientras uno este habilitado el otro debe estar deshabilitado. En la

figura 1.52 se puede observar la implementación de un flip-flop S_R Maestro-Esclavo.

Maestro Esclavo

Entradas de

excitación

Clk

CLK CLK

QQ

Q Q

S S

R R

Figura 1.52. Implementación de biestables síncronos del tipo maestro-esclavo.

Las entradas de excitación del flip-flop maestro-esclavo son las entradas de excitación del

latch maestro y la salida del flip-flop maestro esclavo son las salida del latch esclavo. El

almacenamiento de un BIT para este tipo de flip-flop ocurre utilizando los 2 niveles de la señal

de reloj.

Mientras el latch maestro este habilitado con un determinado nivel de la señal de reloj,

las entradas de excitación pudieran estar originando cambios a la salida de latch maestro, pero

como el latch esclavo se encuentra deshabilitado cualquier cambio en sus entradas de

excitación producto de los cambio en la salida del maestro no afecta la salida del flip-flop.

Para el otro nivel de la señal de reloj el maestro se deshabilita quedando un dato

almacenado en ese momento en el maestro y no importa que cambio ocurran en su entradas de

excitación este dato no se modifica puesto que el latch maestro esta deshabilitado, para este

Page 26: 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el

Prof: Zulay Franco 55

mismo instante se habilita el latch esclavo y es finalmente en este otro nivel de la señal de reloj

cuando se almacena el BIT deseado.

El flip-flop maestro esclavo puede ser sustituido por un flip-flop de flanco de bajada

siempre y cuando las entradas de excitación no varíen de estado mientras el maestro se

encuentre habilitado.

El flip-flop maestro esclavo puede implementarse con 2 latch tipo RS como se muestra en

la figura 1.52, cuya configuración seria un flip-flop RS ó con 2 latch tipo D bajo la misma

configuración, con la diferencia que la entrada de excitación del latch Maestro es de tipo D y la

salida Q de este iría conectada a la entrada de excitación D del latch esclavo, y así

obtendríamos un flip-flop maestro esclavo tipo D. No se pueden implementar flip-flop maestro

esclavo utilizando 2 latch J-K, ya que cuando el latch maestro tenga sus entradas J y K activas

y se encuentre activo, a su salida se obtendrá una señal de alta frecuencia, lo que traería como

consecuencia que una vez que se desactive este latch no se sabe con qué estado se quedaría el

latch maestro y por tanto el esclavo puede almacenar un dato errado. Para poderlo implementar

se tiene que implementar primero o bien un flip-flop maestro esclavo RS (Ver sección 1.9) ó

tipo D y luego convertirlo a J-K colocándole un circuito lógico combinacional en la entrada

de excitación con el fin de convertirlo en el flip flop deseado.

Ejemplo 14. Aplicar la forma de onda SM y RM de la figura 1.53 a las entradas de el

Flip-Flop R-S maestro esclavo de la figura 1.2. Si inicialmente Q=0 se determina la forma de

onda de Q.

Page 27: 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el

Prof: Zulay Franco 56

Clk

S

R

Q = SM E

M

M

Q = RM E

Entradas del

Flip flop

Maestro-

Escavo

Salida del

Flip flop

Maestro-

Escavo

Figura 1.53. Comportamiento de un flip-flop maestro-esclavo.

Ejemplo 15. Aplicar la forma de onda S y R de la figura anterior a las entradas de un flip-

flop R-S disparado por flanco de bajada. Suponga que inicialmente Q=0 y determine la forma

de onda de Q.

Page 28: 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el

Prof: Zulay Franco 57

Entradas del

Flip flop

Flanco de

bajada

S

R

Clk

Salida del Flip

flop Flanco de

bajada

Q

Figura 1.54. Comportamiento de un flip-flop disparado por flanco de bajada

Como puede observarse la salida del flip-flop disparado por flanco de bajada es igual a la

salida del flip-flop maestro-esclavo del ejercicio anterior. Por lo cual se demuestra que un Flip-

Flop maestro-esclavo puede ser sustituido por un flip-flop disparado por flanco de bajada

siempre y cuando se garantice que las entradas de excitación no varían durante el nivel para el

cual se encuentre habilitado el maestro. Veamos este caso en el siguiente ejercicio.

Ejemplo 16. Aplicar la forma de onda SM y RM de la figura 1.53 a las entradas de el

flip-flop R-S maestro esclavo de la figura 1.45. Suponga que inicialmente Q=0 y determine la

forma de onda de Q.

Page 29: 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el

Prof: Zulay Franco 58

Q = SM E

Q = RM E

Salida del

Flip flop

Maestro-

Escavo

Clk

S

RM

M

Entradas del

Flip flop

Maestro-

Escavo

Figura. 1.55. Comportamiento de un flip-flop maestro-esclavo.

Ejemplo 17. Aplicar la forma de onda S y R de la figura anterior a las entradas de un

flip-flop R-S disparado por flanco de bajada. Suponga que inicialmente Q=0 y determine la

forma de onda de Q.

Page 30: 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el

Prof: Zulay Franco 59

SEntradas del

Flip flop

Flanco de

bajada

R

Salida del Flip

Flop Flanco de

bajada

Q

Clk

Figura 1.56. Comportamiento de un flip-flop disparado por flanco de bajada.

Como se puede observar en la figura 1.55 y 1.56 las señales de excitación R y S son

iguales pero la salida del flip-flop disparado por flanco de bajada es diferente a la salida del

flip-flop maestro-esclavo. Esto se debe a que el flip-flop maestro-esclavo esta implementado

con latch y mientras el latch maestro se encuentra habilitado, cualquier cambio en las entradas

de excitación este lo detecta, y este cambio se vería reflejado en el Latch esclavo (Que es la

salida del F-F). Mientras que con los flip flop implementado con detectores de flanco, si para

el momento en que ocurra el flanco la señal de excitación ya ha desaparecido, el cambio no

puede ser reflejado a la salida. Por lo tanto de esto se concluye que un flip-flop maestro-

esclavo no puede ser sustituido por un flip-flop disparado por flanco de bajada si alguna de las

entradas de excitación varía durante el nivel que se encuentre habilitado el maestro.

1.9. Obtener un tipo de flip-flop maestro-esclavo a partir de un flip-flop maestro-esclavo

R-S.

Como se indica en la figura 1.57 para convertir un flip-flop maestro-esclavo R-S a otro

se procede en forma similar a lo que se hizo utilizando flip-flop disparados por flanco, es decir

se debe colocar un circuito lógico combinacional de entrada al flip-flop maestro-esclavo R-S,

con el fin de convertir las entradas disponibles en las entradas requeridas. Las entradas a este

circuito van a ser las entradas externas más la salida del flip-flop maestro esclavo, (salida del

latch esclavo).

Page 31: 1.7. Implementaciones de biestables 1.7.1. Implementación ......Prof: Zulay Franco 33 analizando la primera fila de la tabla característica del latch deseado (tabla 1.14) : si el

Prof: Zulay Franco 60

Entradas de

excitación

Clk

Q

QCir

cui

to ló

gico

C

om

bin

aci

on

al

Fli

p-F

lop

Mae

stro

-Esc

lav

o

R

S

Figura 1.57. Implementación del flip-flop maestro-esclavo tipo J-K a partir de un flip-flop

maestro-esclavo R-S.