Anda di halaman 1dari 29

PROCESADORES

Clase Terica N5
Violaciones Setup and Hold

Definicin del tiempo de setup y


hold
Combinacional

Entrada
Externa

D1

F/F
DQ

Combinacional

Q1

D2

F/F
DQ

Combinacional

Q2

D3

F/F
DQ

Q3

Salida

clk

Qu sucede si una
transicin de reloj
sucede al tiempo con
un cambio en la seal
de entrada de un
flip-flop?

clk
D1
Q1
Tiempo

????

Definicin del tiempo de setup y


hold
Combinacional

Entrada
Externa

D1

F/F
DQ

Combinacional

Q1

D2

F/F
DQ

Combinacional

Q2

D3

F/F
DQ

Q3

Salida

clk
Respuesta ideal
De forma
ideal, la salida clk
clk
toma el
D1
D1
estado de la
entrada justo
Q1
Q1
antes de la
Tiempo
Tiempo
transicin del
reloj.

Respuesta real

XXXX

Definicin del tiempo de setup y


hold
Combinacional

Entrada
Externa

D1

F/F
DQ

Combinacional

Q1

D2

F/F
DQ

Combinacional

Q2

D3

F/F
DQ

Q3

Salida

clk
Respuesta ideal
Si esto llega a
suceder, la
clk
clk
salida queda
D1
D1
en estado de
Q1
metaestabilida Q1
Tiempo
Tiempo
d

Respuesta real

XXXX

Definicin del tiempo de setup y


hold
Combinacional

Entrada
Externa

D1

F/F
DQ

Combinacional

Q1

D2

clk

Para que los flip-flops


funcionen
correctamente, se debe
cuidar que la entrada
de datos no vare muy
cerca de la transicin
de la seal de reloj.

F/F
DQ

Combinacional

Q2

D3

setup
clk
D3
D2
D1
Tiempo

F/F
DQ

Q3

Salida

hold

Metaestabilidad
Combinacional

Entrada
Externa

D1

F/F
DQ

Combinacional

Q1

D2

F/F
DQ

Combinacional

Q2

D3

F/F
DQ

Q3

Salida

clk

Qu es
metaestabilidad?
Qu implica?
No se puede determinar su
estado final.
Tiempo indeterminado para
que llegue al estado de

Tomado de wikipedia

Metaestabilidad
Si en un flip-flop no se viola el tiempo de
setup-hold, el tiempo que demora la salida
en activarse despus del flanco de reloj
t pcq
es

Metaestabilidad
El tiempo para que el flip-flop alcance su
estado de estabilidad est t dado por la
expresin. P (t > t ) = T0 e
res

Tc

Causas para una violacin del


tiempo setup o tiempo hold
Combinacional

Entrada
Externa

D1

F/F
DQ

Combinacional

Q1

D2

F/F
DQ

Combinacional

Q2

D3

F/F
DQ

Q3

Salida

clk

Qu podra causar una violacin de


los tiempos setup y hold?

Causas para una violacin del


tiempo setup o tiempo hold
Combinacional

Entrada
Externa

D1

F/F
DQ

Combinacional

Q1

D2

F/F
DQ

Combinacional

Q2

D3

F/F
DQ

Q3

Salida

clk

Qu podra causar una violacin de


los tiempos setup y hold?
Causas Externas
Causas Internas

Causas para una violacin del


tiempo setup o tiempo hold
Combinacional

Entrada
Externa

D1

F/F
DQ

Combinacional

Q1

D2

F/F
DQ

Combinacional

Q2

D3

F/F
DQ

Q3

Salida

clk

Qu podra causar una violacin de


los tiempos setup y hold?
Causas Externas
Causas Internas

Por qu? Cmo?

Causas para una violacin del


tiempo setup o tiempo hold
Combinacional

Entrada
Externa

D1

F/F
DQ

Combinacional

Q1

D2

F/F
DQ

Combinacional

Q2

D3

F/F
DQ

Q3

Salida

clk
setup
clk
D3
D2
D1
Tiempo

hold

Las seales
externas no
estn
sincronizadas
con el reloj!!

Qu
podemos

Causas para una violacin del


tiempo setup o tiempo hold
F/F

Combinacional

Entrada
DQ
Q0
Externa D0

F/F

D1

DQ

Combinacional

Q1

D2

F/F
DQ

Combinacional

Q2

D3

F/F
DQ

Q3

Salida

clk
setup
clk
D3
D2
D1
Tiempo

hold

Introducir
flip-flops en la
entrada para
obligar a las
seales a estr
sincronizadas.

Cul
problema
puede surgir?

Sincronizador
F/F

Combinacional

Entrada
DQ
Q0
Externa D0

D1

F/F
DQ

Combinacional

Q1

D2

F/F
DQ

Combinacional

Q2

D3

F/F
DQ

Q3

Salida

clk

El flip-flop hace que sea ms probable


que la seal D1 aparezca en el momento
adecuado.
La seal no llega cuando fsicamente
sucede, sino que llega con retardo.
El flip-flop introducido puede llegar a

Sincronizador
F/F

Combinacional

Entrada
DQ
Q0
Externa D0

D1

F/F
DQ

Combinacional

Q1

D2

F/F
DQ

Combinacional

Q2

D3

F/F
DQ

Q3

Salida

clk

El retardo introducido por la


metaestabilidad, hace que sea posible
que el flip-flop 1 entre tambin en estado
metaestable.
Qu podemos hacer para reducir la
probabilidad de que el flip-flop 1 entre en
estado de metastabilidad?

Sincronizador
F/F

Combinacional

Entrada
DQ
Q0
Externa D0

D1

F/F
DQ

Combinacional

Q1

D2

F/F
DQ

Combinacional

Q2

D3

F/F
DQ

Q3

Salida

clk

Aadir mas etapas de sincronizacin.


Esto hace que la probabilidad de
metaestabilidad en el flip-flop 1 se
reduzca ms pero aumenta el tiempo de
retardo de llegada de la seal asncrona.

Causas para una violacin del


tiempo setup o tiempo hold
F/F

Combinacional

Entrada
DQ
Q0
Externa D0

D1

F/F
DQ

Combinacional

Q1

D2

F/F
DQ

Combinacional

Q2

D3

F/F
DQ

clk

Qu podra causar una violacin de


los tiempos setup y hold?
Causas Externas

Causas Internas

Por qu? Cmo?

Q3

Salida

Causas para una violacin del


tiempo setup o tiempo hold
F/F

Combinacional

Entrada
DQ
Q0
Externa D0

D1

F/F
DQ

Combinacional

Q1

clk

Existen dos casos


crticos:
Violacin del tiempo de
setup. Cmo?
Violacin del tiempo de
hold.

D2

F/F
DQ

Combinacional

Q2

D3

setup
clk
D3
D2
D1
Tiempo

F/F
DQ

Q3

Salida

hold

Causas para una violacin del


tiempo setup o tiempo hold
F/F

Combinacional

Entrada
DQ
Q0
Externa D0

D1

F/F
DQ

Combinacional

Q1

D2

clk

La razn es que el
retardo de propagacin
de la seal desde un
ciclo de reloj hasta que
se estabiliza D2 es muy
grande
Cmo se estima?

F/F
DQ

Combinacional

Q2

D3

setup
clk
D3
D2
D1
Tiempo

F/F
DQ

Q3

Salida

hold

Causas para una violacin del


tiempo setup o tiempo hold
F/F

Combinacional

Entrada
DQ
Q0
Externa D0
clk

D1

F/F
DQ

Combinacional

Q1

ttotal _ prop = t pcq + t pd

D2

F/F
DQ

Combinacional

Q2

D3

setup
clk
D3

uy

D2
D1
Tiempo

F/F
DQ

Q3

Salida

hold

Causas para una violacin del


tiempo setup o tiempo hold
F/F

Combinacional

Entrada
DQ
Q0
Externa D0
clk

D1

F/F
DQ

Combinacional

Q1

D2

F/F
DQ

Combinacional

Q2

ttotal _ prop = t pcq + t pd < Tc t setup

D3

setup
clk
D3
D2
D1

Tiempo

F/F
DQ

Q3

Salida

hold

Causas para una violacin del


tiempo setup o tiempo hold
F/F

Combinacional

Entrada
DQ
Q0
Externa D0

D1

F/F
DQ

Combinacional

Q1

D2

F/F
DQ

Combinacional

Q2

clk

ttotal _ prop =

t pcq + t pd < Tc t setup


t pd < Tc (t setup + t pcq )

Se puede reorganizar la
expresin y ver la
relacin entre tpd y Tc.

D3

setup
clk
D3
D2
D1

Tiempo

F/F
DQ

Q3

Salida

hold

Causas para una violacin del


tiempo setup o tiempo hold
F/F

Combinacional

Entrada
DQ
Q0
Externa D0

D1

F/F
DQ

Combinacional

Q1

clk

Existen dos casos


crticos:
Violacin del tiempo de
setup.

Violacin del tiempo de


hold. Cmo?

D2

F/F
DQ

Combinacional

Q2

D3

setup
clk
D3
D2
D1
Tiempo

F/F
DQ

Q3

Salida

hold

Causas para una violacin del


tiempo setup o tiempo hold
F/F

Combinacional

Entrada
DQ
Q0
Externa D0

D1

F/F
DQ

Combinacional

Q1

D2

F/F
DQ

clk

El retardo de
propagacin desde la
etapa anterior puede ser
muy corto!
Cmo se estima?

Combinacional

Q2

D3

setup
clk
D3
D2
D1
Tiempo

F/F
DQ

Q3

Salida

hold

Causas para una violacin del


tiempo setup o tiempo hold
F/F

Combinacional

Entrada
DQ
Q0
Externa D0
clk

D1

F/F
DQ

Combinacional

Q1

t min_ prop = tccq + tcd

D2

F/F
DQ

Combinacional

Q2

D3

setup
clk
D3
D2
D1
Tiempo

F/F
DQ

Q3

Salida

hold

Causas para una violacin del


tiempo setup o tiempo hold
F/F

Combinacional

Entrada
DQ
Q0
Externa D0
clk

D1

F/F
DQ

Combinacional

Q1

t min_ prop = tccq + tcd > t hold

D2

F/F
DQ

Combinacional

Q2

D3

setup
clk
D3
D2
D1
Tiempo

F/F
DQ

Q3

Salida

hold

Reflexin
Cmo puede afectar la
metaestabilidad a una FSM?
Qu puedo hacer en el diseo de la
FSM para evitar que si llega a entrar en
estado de metaestabilidad, no afecte
gravemente el funcionamiento del
circuito?

Tarea
Averiguar en los datasheets de Xilinx
sobre la familia Spartan 3AN, Cules
son los tiempos de setup y hold?
Ayuda: pueden guiarse por los siguientes
documentos:
ds557 - Spartan-3AN FPGA Family Data Sheet.
ug331 - Spartan-3 Generation FPGA User Guide.

Referencias
Digital Design and Computer
Achitecture.

Anda mungkin juga menyukai