FF – PRINCIPIOS · 2011-04-19 · ff – principios 0 0 1 1 s q 0 1 t pd s q t 0 q t+1 = (s + q)...

25
FF – PRINCIPIOS 0 0 1 1 Q S 1 0 t pd S Q t 0 Q t+1 = (S + Q) t Futuro Presente EN ESTE CIRCUITO NO HAY FORMA DE QUE LA SALIDA Q VUELVA A VALOR CERO “0”, SIEMPRE QUEDA EN UNO “1”. PROPONEMOS EL SIGUIENTE CIRCUITO EL CUAL PERMITE QUE LA SALIDA Q VAYA A CERO

Transcript of FF – PRINCIPIOS · 2011-04-19 · ff – principios 0 0 1 1 s q 0 1 t pd s q t 0 q t+1 = (s + q)...

Page 1: FF – PRINCIPIOS · 2011-04-19 · ff – principios 0 0 1 1 s q 0 1 t pd s q t 0 q t+1 = (s + q) t futuro presente en este circuito no hay forma de que la salida q vuelva a valor

FF – PRINCIPIOS

0 0

1 1

QS

10 tpd

S

Q t0

Qt+1 = (S + Q)t

Futuro Presente

EN ESTE CIRCUITO NO HAY FORMA DE QUE LA SALIDA Q VUELVA A VALOR CERO “0”, SIEMPRE QUEDA EN UNO “1”. PROPONEMOS EL SIGUIENTE CIRCUITO EL CUAL PERMITE QUE LA SALIDA Q VAYA A CERO

Page 2: FF – PRINCIPIOS · 2011-04-19 · ff – principios 0 0 1 1 s q 0 1 t pd s q t 0 q t+1 = (s + q) t futuro presente en este circuito no hay forma de que la salida q vuelva a valor

MEMORIA CON BORRADO`-BIESTABLE

S

R

Q

1 10 1

1 0 0

0 0

0 1

S

Q

t0R

Q

R

S

N O R

N O R

R

S

_Q

Q

NO1 111 000 1

Qt0 0Qt+1S RFutPres

Page 3: FF – PRINCIPIOS · 2011-04-19 · ff – principios 0 0 1 1 s q 0 1 t pd s q t 0 q t+1 = (s + q) t futuro presente en este circuito no hay forma de que la salida q vuelva a valor

BIESTABLES

_S

_R

Q

_Q

BIESTABLE SR SINCRONICO

S

R

Q

_Q

Ck

NO1 111 000 1

Qt0 0Qt+1S RFutPrest+1t

Qt1 101 010 1

NO0 0Qt+1S RFutPres

NAND

Q

_Q

Vcc0

0

1

1

APLICACION

Page 4: FF – PRINCIPIOS · 2011-04-19 · ff – principios 0 0 1 1 s q 0 1 t pd s q t 0 q t+1 = (s + q) t futuro presente en este circuito no hay forma de que la salida q vuelva a valor

BIESTABLE- TIMING

S

R

Ck

Q

BIESTABLE D SINCRONICO - LATCH

BIESTABLE SR SINCRONICO

S

R

Q

_Q

Ck

NO1 111 000 1

Qt0 0Qt+1S RFutPrest+1t

D11

00

QD

t+1tD

Q

_Q

Ck

(S)

(R)

Page 5: FF – PRINCIPIOS · 2011-04-19 · ff – principios 0 0 1 1 s q 0 1 t pd s q t 0 q t+1 = (s + q) t futuro presente en este circuito no hay forma de que la salida q vuelva a valor

LATCH D CON MUX

A

BZ

Control

0

1

Z = Control . B + Control . AControl Z

0 A

1 B

DQ

Ck

0

1

LATCH POSITIVO

Ck = 0, Q mem

Ck = 1, Q = D DQ

Ck

1

0

LATCH NEGATIVO

Ck=0, Q=D

Ck=1, Q:mem

Page 6: FF – PRINCIPIOS · 2011-04-19 · ff – principios 0 0 1 1 s q 0 1 t pd s q t 0 q t+1 = (s + q) t futuro presente en este circuito no hay forma de que la salida q vuelva a valor

LATCH CON TG

__Ck

Ck

Valor memorizadoDatoL1

L2

Implementacion de un Latch con inversores y TG (Transmision Gate)

Como se observa ambas llaves trabajan en contraposición (L1: on, L2: off).Si L1 esta cerrada el dato de entrada se repite a la salida (L2: off), cuando se abre L1 y se cierra L2 el Dato queda memorizadoEn el dibujo que sigue observamos el diseño de un Latch con TG

Page 7: FF – PRINCIPIOS · 2011-04-19 · ff – principios 0 0 1 1 s q 0 1 t pd s q t 0 q t+1 = (s + q) t futuro presente en este circuito no hay forma de que la salida q vuelva a valor

FLIP-FLOPS SINCRONIZADO POR RELOJ

La mayoria dispara por flanco (borde) y el símbolo que los identifica es

Q

Ck

---Q

Q

Ck

---Q

ENTRADASASINCRONAS

ENTRADASASINCRONAS

Flanco Positivo Flanco Negativo

Tiempos de establecimiento y retención (Setup, Hold Time)

Entrada síncrona

Ck

ts th Establecimiento Retencion

Page 8: FF – PRINCIPIOS · 2011-04-19 · ff – principios 0 0 1 1 s q 0 1 t pd s q t 0 q t+1 = (s + q) t futuro presente en este circuito no hay forma de que la salida q vuelva a valor

Biestable SR disparado por flanco (Edge Triggered)

CONFORMADORDETECTOR DE

FLANCOS

S

R

Q

_Q

Ck

C’k

Circuito conformador/detector de flancos

Ck__Ck C’k

tpd

Ck_Ck

C’k

FLANCO POSITIVO

Ck C’k

__Ck

FLANCO NEGATIVO

Ck_Ck

C’k

Page 9: FF – PRINCIPIOS · 2011-04-19 · ff – principios 0 0 1 1 s q 0 1 t pd s q t 0 q t+1 = (s + q) t futuro presente en este circuito no hay forma de que la salida q vuelva a valor

Toggle Flip Flop

QS

R

_Q

DTCk

C’k

DT: Detector de Flanco

0110

Qt+1Qt

SalidaFutura

SalidaPresente

Ck 1 2 3 4 5 6 7 8 9 10 11 12

Q

Diagrama temporal Toggle FF

Page 10: FF – PRINCIPIOS · 2011-04-19 · ff – principios 0 0 1 1 s q 0 1 t pd s q t 0 q t+1 = (s + q) t futuro presente en este circuito no hay forma de que la salida q vuelva a valor

FLIP FLOP D y JK

1100

Qt+1D

SalidaFutura

EntradaPresente

QD

_Q

DTCk

C’k

FF D

QJ

K

_Q

DTCk

C’k

FF JK

Qt (negado)1 111 000 1

Qt0 0Qt+1J K

SalidaFutura

EntradaPresente

Page 11: FF – PRINCIPIOS · 2011-04-19 · ff – principios 0 0 1 1 s q 0 1 t pd s q t 0 q t+1 = (s + q) t futuro presente en este circuito no hay forma de que la salida q vuelva a valor

FF D vs LATCH D

Qo D

Ck----Q o

Q1 D

Ck----Q1

FF LATCH

Page 12: FF – PRINCIPIOS · 2011-04-19 · ff – principios 0 0 1 1 s q 0 1 t pd s q t 0 q t+1 = (s + q) t futuro presente en este circuito no hay forma de que la salida q vuelva a valor

ENTRADAS ASINCRONAS

No permitidox x0 00x x1 01x x0 1

Qt (negado)1 11 111 01 1 00 11 1

Qt0 01 1Qt+1J KS R

SalidaFutura

EntradaPresente

EntradasAsincronas

QJ

K

_Q

DTCk

C’k

_S

_R

FF - T

QT

_Q

DTCk

C’kQt (negado)1

Qt0Qt+1T

SalidaFutura

EntradaPresente

Page 13: FF – PRINCIPIOS · 2011-04-19 · ff – principios 0 0 1 1 s q 0 1 t pd s q t 0 q t+1 = (s + q) t futuro presente en este circuito no hay forma de que la salida q vuelva a valor

CONDICIONES INICIALES

JCk

R

S

K

Q

Q

R

C

Vcc

Vc

Vcc

Vc

Vt

t

t

t a

ENCENDIDO

t

Vcc

Vcc

Vr

Vt

t

JCk

R

S

K

Q

Q

R

C

Vr

t a

ACTIVACION POR BAJO ACTIVACION POR ALTO

Page 14: FF – PRINCIPIOS · 2011-04-19 · ff – principios 0 0 1 1 s q 0 1 t pd s q t 0 q t+1 = (s + q) t futuro presente en este circuito no hay forma de que la salida q vuelva a valor

TABLA Y DIAGRAMA DE ESTADO FFJK

ESTADO PRESENTE

Qt

ESTADO FUTURO

Qt + 1

ENTRADAS

J K

0 0 0 X

0 1 1 X

1 0 X 1

1 1 X 0

TABLA DE ESTADOSDIAGRAMA DE ESTADO ODIAGRAMA DE TRANSICIONES

Qt (negado)1 111 000 1

Qt0 0Qt+1J K

SalidaFutura

EntradaPresente

TV

Qt + 1 = JQt + KQt

ECUACION CARACTERISTICA

01 1 111 1 011 0 111 0 000 1 100 1 010 0 100 0 0

Qt+1J K Qt

Vcc

Vcc

Page 15: FF – PRINCIPIOS · 2011-04-19 · ff – principios 0 0 1 1 s q 0 1 t pd s q t 0 q t+1 = (s + q) t futuro presente en este circuito no hay forma de que la salida q vuelva a valor

CODIGO VHDL – LATCH D

LIBRARY ieee;USE ieee.std_logic_1164.all ;ENTITY latch IS

PORT ( D, Clk : IN STD_LOGIC ; Q : OUT STD_LOGIC ) ;

END latch ;ARCHITECTURE Behavior OF latch ISBEGIN

PROCESS (D, Clk)BEGIN

IF Clk = ´1´ THENQ <= D ;

END IF ,END PROCESS ;

END Behavior ;

Si Clk=0, no se especifica el valor de Q, y Q retiene el valor actual

Código para un latch D

Page 16: FF – PRINCIPIOS · 2011-04-19 · ff – principios 0 0 1 1 s q 0 1 t pd s q t 0 q t+1 = (s + q) t futuro presente en este circuito no hay forma de que la salida q vuelva a valor

CODIGO VHDL FF D

LIBRARY ieee;USE ieee.std_logic_1164.all ;ENTITY flipflop IS

PORT ( D, Clock : IN STD_LOGIC ; Q : OUT STD_LOGIC ) ;

END flipflop ;

ARCHITECTURE Behavior OF flipflop ISBEGIN

PROCESS ( Clock)BEGIN

IF Clock‘EVENT AND Clock = ´1´ THEN (flanco positivo)Q <= D ;

END IF ,END PROCESS ;

END Behavior ;

Page 17: FF – PRINCIPIOS · 2011-04-19 · ff – principios 0 0 1 1 s q 0 1 t pd s q t 0 q t+1 = (s + q) t futuro presente en este circuito no hay forma de que la salida q vuelva a valor

CODIGO VHDL FF D (alternativo)

LIBRARY ieee;USE ieee.std_logic_1164.all ;ENTITY flipflop IS

PORT ( D, Clock : IN STD_LOGIC ; Q : OUT STD_LOGIC ) ;

END flipflop ;

ARCHITECTURE Behavior OF flipflop ISBEGIN

PROCESS BEGIN

WAIT UNTIL Clock‘EVENT AND Clock = ´1´ ;Q <= D ;

END PROCESS ;END Behavior ;

Page 18: FF – PRINCIPIOS · 2011-04-19 · ff – principios 0 0 1 1 s q 0 1 t pd s q t 0 q t+1 = (s + q) t futuro presente en este circuito no hay forma de que la salida q vuelva a valor

CODIGO VHDL FFD CON CLEAR ASINCRONICO

Se describe un FFD con una entrada reset (clear) asíncrono que se activa por nivel bajo. Cuando Resetn, la entrada reset es igual a 0 y la salida del FF va a 0 (Q=0)

LIBRARY ieee;USE ieee.std_logic_1164.all ;ENTITY flipflop IS

PORT ( D, Resetn, Clock : IN STD_LOGIC ; Q : OUT STD_LOGIC ) ;

END flipflop ;

ARCHITECTURE Behavior OF flipflop ISBEGIN

PROCESS ( Resetn, Clock)BEGIN

IF Resetn = ´0´ THENQ <= ´0´ ;

ELSIF Clock`EVENT AND Clock = ´1´ THENQ <= D ;

END IF ;END PROCESS ;

END Behavior ;

Page 19: FF – PRINCIPIOS · 2011-04-19 · ff – principios 0 0 1 1 s q 0 1 t pd s q t 0 q t+1 = (s + q) t futuro presente en este circuito no hay forma de que la salida q vuelva a valor

CODIGO VHDL FF D CLEAR SINCRONICO

Resetn

Q

QSET

CLR

D

Clock

D

En este caso la señal de reset (clear) solamente actua cuando llega un flanco positivo de Clock. Este código VHDL genera el circuito que se muestra a continuación

LIBRARY ieee;USE ieee.std_logic_1164.all ;ENTITY flipflop ISPORT ( D, Resetn, Clock : IN STD_LOGIC ;

Q : OUT STD_LOGIC ) ;END flipflop ;

ARCHITECTURE Behavior OF flipflop ISBEGIN

PROCESS ( Resetn, Clock)BEGIN

WAIT UNTIL Clock = ´1´ ;IF Resetn = ´0´ THEN

Q <= ´0´ ;ELSE

Q <= D ;END IF ;

END PROCESS ;END Behavior ;

Page 20: FF – PRINCIPIOS · 2011-04-19 · ff – principios 0 0 1 1 s q 0 1 t pd s q t 0 q t+1 = (s + q) t futuro presente en este circuito no hay forma de que la salida q vuelva a valor

Figure 7.48 Code for a D flip-flop with a 2-to-1 multiplexer on the D input

LIBRARY ieee ;USE ieee.std_logic_1164.all ;

ENTITY muxdff ISPORT ( D0, D1, Sel, Clock : IN STD_LOGIC ;

Q : OUT STD_LOGIC ) ;END muxdff ;

ARCHITECTURE Behavior OF muxdff ISBEGIN

PROCESSBEGIN

WAIT UNTIL Clock'EVENT AND Clock = '1' ;IF Sel = '0' THEN

Q <= D0 ;ELSE

Q <= D1 ;END IF ;

END PROCESS ;END Behavior ;

Page 21: FF – PRINCIPIOS · 2011-04-19 · ff – principios 0 0 1 1 s q 0 1 t pd s q t 0 q t+1 = (s + q) t futuro presente en este circuito no hay forma de que la salida q vuelva a valor

FLIP`FLOP EN CASCADA

J1 Q1

Ck

---K1 Q1

J2 Q2

Ck

----_ K2 Q21

1

Condiciones Iniciales: CI: Q1 = 1 ; Q2 = 0El funcionamiento correcto es el indicado en la siguiente figura

tpHL (Q1)

tpLH (Q2)

Q1 (J2)

Q2

CK Para que ello ocurra tpHL debe ser mayor a th, tiempo de retención, (tpHL > th ) de Q2, cosa que ciertamente se cumple, si ello no ocurriera la respuesta de Q2 seria incierta. Los FFs actuales tienen un th < 5 nseg., tendiendo a 0 nseg

Page 22: FF – PRINCIPIOS · 2011-04-19 · ff – principios 0 0 1 1 s q 0 1 t pd s q t 0 q t+1 = (s + q) t futuro presente en este circuito no hay forma de que la salida q vuelva a valor

EJERCICIOS - 1

1-REALIZAR EL DIAGRAMA TEMPORAL DEL CIRCUITO DE LA FIGURA

R

Ck

S

Q

Ck

R

S

Q

2-REALIZAR EL DIAGRAMA TEMPORAL DEL CIRCUITO DE LA FIGURA

Ck

DQ

Ck

D

Q

Page 23: FF – PRINCIPIOS · 2011-04-19 · ff – principios 0 0 1 1 s q 0 1 t pd s q t 0 q t+1 = (s + q) t futuro presente en este circuito no hay forma de que la salida q vuelva a valor

EJERCICIOS – 23-REALIZAR EL DIAGRAMA TEMPORAL DEL CIRCUITO DE LA FIGURA

Ck

Ck

T Q

Ck

COMO PUEDE VERSE LA SALIDA Q RESPONDE A UN FF T

0X

X1X

X

Page 24: FF – PRINCIPIOS · 2011-04-19 · ff – principios 0 0 1 1 s q 0 1 t pd s q t 0 q t+1 = (s + q) t futuro presente en este circuito no hay forma de que la salida q vuelva a valor

EJERCICIO – 3 REGISTROS Y LATCHES DE VARIOS BITS

Page 25: FF – PRINCIPIOS · 2011-04-19 · ff – principios 0 0 1 1 s q 0 1 t pd s q t 0 q t+1 = (s + q) t futuro presente en este circuito no hay forma de que la salida q vuelva a valor

EJERCICIOS - 4 REGISTRO DE 8 BITS