• No se han encontrado resultados

Electrónica Digital. Tema 3. Diseño Síncrono

N/A
N/A
Protected

Academic year: 2021

Share "Electrónica Digital. Tema 3. Diseño Síncrono"

Copied!
47
0
0

Texto completo

(1)

Electrónica Digital Tema 3

Diseño Síncrono

(2)

Diseño Síncrono

• Régimen transitorio en los circuitos digitales

– Concepto de espurio. Clasificación – Alternativas para evitarlos

• Diseño síncrono de Sistemas Digitales

– Estructura de un sistema síncrono – Principio de funcionamiento

– El reloj. Skew. Habilitación de reloj – Reset y preset funcionales

– Sincronización de entradas asíncronas. La Metaestabilidad

• Ejemplos

(3)

A F = A·/A = 0 t

p

=

2 ns

t

p

=

1 ns

Régimen Transitorio en Circuitos Digitales

En los circuitos combinacionales sin realimentación pueden darse valores transitorios anómalos en las salidas debido a la existencia de retardos en los dispositivos lógicos.

A

/A

(4)

Régimen Transitorio en Circuitos Digitales

• Dependiendo del uso que se vaya a hacer de las salidas, la aparición de pulsos espurios puede ser irrelevante o catastrófica.

• Si el circuito combinacional tiene realimentaciones, los valores transitorios pueden dar lugar a

oscilaciones en las salidas.

• Los valores espurios en las salidas se denominan

glitches o riesgos.

(5)

Régimen Transitorio en Circuitos Digitales

• Riesgos estáticos: Son pulsos espurios que aparecen al producirse un cambio en las entradas que no produce un cambio en el estado de la salida.

• Riesgos dinámicos: Son pulsos espurios que aparecen al producirse un cambio en las entradas que debe producir un cambio en el estado de la salida.

Clasificación de los riesgos en Circuitos Digitales

(6)

Régimen Transitorio en Circuitos Digitales

Clasificación de los riesgos en Circuitos Digitales

abcd (t) abcd (t+t

0

)

0101 1101 1111

ó 0111

F = 1 F = 0 F = 1

glitch funcional

• Riesgos funcionales: Son glitches que sólo aparecen cuando se producen cambios en más de una variable de entrada

1

1 1

1 1

ab cd

00

01 11 10 00

01 11 10

(7)

B F A

C Tp =1 ns

A B C F

• Riesgos lógicos: Son debidos a la realización hardware del

circuito y pueden producirse aunque sólo cambie de estado una entrada.

Régimen Transitorio en Circuitos Digitales

Clasificación de los riesgos en Circuitos Digitales

(8)

• Inserción de retardos hardware: Su valor es difícilmente controlable y varía con las condiciones de funcionamiento, pudiendo dar lugar a nuevos riesgos.

• Inserción de lógica redundante: Permite eliminar únicamente los riesgos lógicos.

• Inserción de lógica registrada: No elimina los riesgos, sino su efecto. Consiste en muestrear la lógica cuando ha finalizado el régimen transitorio -y por tanto ya no existen glitches-

almacenando los estados de salida en flip-flops. Esta solución es la más ampliamente utilizada tanto para el diseño de ASICs como para circuitos realizados con lógica programable o TTL.

Se denomina Metodología de diseño Síncrono.

Régimen Transitorio en Circuitos Digitales

Alternativas para evitar los riesgos

(9)

Diseño síncrono de circuitos digitales

Estructura de un Sistema Digital Síncrono

REG L/C REG REG

RELOJ E N T R A D A S

S A L I D A S

L/C

(10)

t

pff

t

pff

Cambio de estado

Diseño síncrono de circuitos digitales

– Todas las entradas de los circuitos combinacionales

están registradas, luego sólo pueden cambiar de estado en los flancos activos de reloj

Bases de funcionamiento

(11)

t

pff

t

pff

Fin del Régimen Transitorio t

pLC

t

pLC

Diseño síncrono de circuitos digitales

Bases de funcionamiento

– El régimen transitorio de los circuitos combinacionales sin realimentación finaliza cuando ha transcurrido el tiempo de propagación máximo del circuito desde el último

cambio en una entrada.

(12)

t

pff

t

pLC

t

su

t

pff

t

pLC

t

su

T

clk

Por tanto: T

clk

> t

pff

+ t

pLC

+ t

su

Diseño síncrono de circuitos digitales

Bases de funcionamiento

– Para que las salidas de los circuitos combinacionales puedan registrarse correctamente deberán ser estables un tiempo antes del flanco activo de reloj, el tiempo de set-up de los flip-flops.

(13)

min max

max max

1

su pLC

pff

clk

t t t

f = + +

Diseño síncrono de circuitos digitales

donde tpLC max es el tiempo de propagación del bloque combinacional mas lento de los existentes en el circuito.

Bases de funcionamiento

– La frecuencia máxima de la señal de reloj en un circuito secuencial síncrono viene dada por la expresión:

(14)

Diseño síncrono de circuitos digitales

Bases de funcionamiento

– Un circuito digital síncrono funcionando con una frecuencia de reloj menor o igual a la dada por la expresión anterior funcionará correctamente si:

• Se emplean flip-flops activos en el mismo tipo de flanco como elementos de memoria del sistema.

• A todos los flip-flops les llega de manera simultánea la señal de reloj del circuito.

• No se activan, durante la operación normal del sistema, las entradas asíncronas de los flip-flops.

• No existe lógica combinacional realimentada.

• Todas las entradas de los circuitos combinacionales, incluso las externas al sistema, están registradas.

(15)

Diseño síncrono de circuitos digitales

– A todos los flip-flops del circuito debe llegarles de manera simultánea los flancos de la señal de reloj.

– Esto, en general, no es posible que se verifique de

manera estricta; el reloj llegará con cierto desfase a las entradas de los flip-flops debido a las distintas longitudes de las pistas y a las distintas cargas que soportan los

buffers del árbol de reloj.

– El desfase en la llegada del reloj a los flip-flops de un circuito se denomina skew del reloj.

– Un circuito síncrono puede admitir un valor máximo de skew en la señal de reloj.

Distribución del reloj

(16)

Reloj

C

T

/5 C

T

/5 C

T

/5 C

T

/5 C

T

/5

Reloj

C

T

/2 C

T

/4 C

T

/8

C

T

/16 C

T

/16

Diseño síncrono de circuitos digitales

Distribución del reloj

(17)

Diseño síncrono de circuitos digitales

El skew.

Modelo general:

CLK

D Q

CLK

D Q

Reloj

L/C

SKEW

(18)

Hmin min

pLC min

pFF

t t

t

skew < +

Diseño síncrono de circuitos digitales

skew

t

H

t

pFF+

t

pLC

L/C

SKEW

El skew.

Análisis

(19)

Reloj

CLK

D Q

Entrada Salida

Combinacional

Diseño síncrono de circuitos digitales

Reloj generado por Lógica Combinacional

glitch

Reloj Entrada

(20)

Diseño síncrono de circuitos digitales

Reloj generado por Lógica Combinacional

Reloj

CLK

D Q

Entrada Salida

Combinacional

(21)

Reloj

CLK

D Q

Entrada

Salida

Combinacional

0 1

Mux

Reloj

Entrada Mux

Diseño síncrono de circuitos digitales

Habilitación de reloj

(22)

CK CLK

D Q

D Q

0 1 Clock Enable

Diseño síncrono de circuitos digitales

Habilitación de reloj

CLK

D Q

CE

(23)

Diseño síncrono de circuitos digitales

Reloj generado por un flip-flop

Ent. Síncrona1 Salida

Ent. Síncrona2

CLK Q

D Q

Reloj

CLK

D Q

CLK

D Q

Ent. Síncrona1 Reloj

Ent. Síncrona2

Q Violación

de set-up

!

(24)

Diseño síncrono de circuitos digitales

Reloj generado por un flip-flop

Ent. Síncrona1 Salida

Ent. Síncrona2

CLK Q

D Q

Reloj

CLK

D Q

CLK

D Q

(25)

Ent. Síncrona1 Salida Ent. Síncrona2

CLK Q

D Q

Reloj

CLK

D Q

CLK

D Q

CE

Ent. Síncrona1 Reloj

Ent. Síncrona2

Q El funcionamiento

es diferente

Habilitación de reloj

Diseño síncrono de circuitos digitales

(26)

Reset funcional

Diseño síncrono de circuitos digitales

Reloj Ent. Síncrona1 Q2 Ent. Síncrona2

CLK

D Q

CLK

D Q Salida

Q1

RST CLK

D Q

Q

Ent. Síncrona1 Reloj

Salida Ent. Síncrona2

Q1

Q2

Q2 cambia más tarde de tpFF

!

(27)

Reset funcional

Diseño síncrono de circuitos digitales

Reloj Ent. Síncrona1 Q2 Ent. Síncrona2

CLK

D Q

CLK

D Q

CLK

D Q Salida

Q1

Q RST

(28)

Reset funcional

Diseño síncrono de circuitos digitales

Reloj Ent. Síncrona1 Q2 Ent. Síncrona2

CLK

D Q

CLK

D Q Salida

CLK Q1

D Q

Q

Ent. Síncrona1 Reloj

Salida Ent. Síncrona2

Q1

Q2

(29)

. .

Flip-flop D con Reset síncrono

Flip-flop D con Preset síncrono

Reset y Preset funcionales

Diseño síncrono de circuitos digitales

Dato Reloj

Salida Resetn

CLK

D Q

Dato Reloj

Salida Preset

CLK

D Q

(30)

Diseño síncrono de circuitos digitales

– A menudo existen entradas al circuito que son asíncronas respecto a su reloj y deben ser

sincronizadas antes de poder ser usadas en el mismo.

– La sincronización consiste en registrar la entrada en un flip-flop conectado al reloj del circuito. Durante esta

operación puede ocurrir que se violen los tiempos de set-up o de hold del flip-flop.

– Como consecuencia, el flip-flop puede registrar o no el evento de entrada o, lo que es peor, entrar en un estado metaestable.

Sincronización de entradas asíncronas

(31)

Diseño síncrono de circuitos digitales

Sincronización de entradas asíncronas.

Metaestabilidad

– Cuando se violan los tiempos de set-up o de hold de un flip-flop, su salida puede pasar a un nivel intermedio; al cabo de un tiempo indeterminado tomará aleatoriamente el valor 0 ó 1.

Ent. Asíncrona Reloj

Q

tSU tH

tpFF tmet

(32)

Diseño síncrono de circuitos digitales

Sincronización de entradas asíncronas.

Metaestabilidad

– La metaestabilidad solo afecta a los flip-flops usados para sincronizar entradas asíncronas.

– La probabilidad de que un flip-flop entre en estado

metaestable y el tiempo de permanencia en dicho estado depende del proceso tecnológico y de las condiciones ambientales de funcionamiento.

– Generalmente los flip-flops pasan rápidamente a un estado estable.

– Si la salida del flip-flop es muestreada en el estado

metaestable, se propagará un valor indefinido a la lógica a la que esté conectado.

(33)

Diseño síncrono de circuitos digitales

Asíncrona

Reloj

Síncrona

CLK

D Q

CLK

D Q

CLK

D Q

Sincronización de entradas asíncronas.

☺ Provee tiempo para que desaparezca la metaestabilidad antes de usar la señal en el circuito.

Mayor tiempo de respuesta del sistema.

Asíncrona Reloj

(34)

Diseño síncrono de circuitos digitales

Sincronización de entradas asíncronas.

Conformación de pulsos

– Pulsos mayores que un período de reloj

Asíncrona

Reloj

Síncrona

CLK

D Q

CLK

D Q

CLK

D Q

Q

Asíncrona Reloj

Síncrona

(35)

Diseño síncrono de circuitos digitales

Sincronización de entradas asíncronas.

Conformación de pulsos

– Pulsos menores que un período de reloj

Asíncrona

Reloj

Síncrona

CLK

D Q

CLK

D Q

CLK

D Q

Asíncrona Reloj

(36)

Diseño síncrono de circuitos digitales

Sincronización de entradas asíncronas.

Conformación de pulsos

– Pulsos menores que un período de reloj

Asíncrona

Reloj

Síncrona

CLK

D Q

Q

Vcc

CLK

D Q

RST

Asíncrona Reloj

Síncrona

(37)

Diseño síncrono de circuitos digitales

Sincronización de entradas asíncronas.

Eliminación de espurios

Asíncrona

Reloj

Síncrona

CLK

D Q

CLK

D Q

CLK

D Q

Preset

L/C

Asíncrona Reloj

Síncrona

(38)

Diseño síncrono de circuitos digitales

Conclusiones

– Las normas de diseño síncrono son una buena guía para la realización de diseños con un funcionamiento seguro.

– En su aplicación práctica es frecuente que se den casos en los que resulta inevitable vulnerarlas: en el interfaz con buses asíncronos o con memorias asíncronas, por

ejemplo, o en el de la sincronización de entradas asíncronas.

– Cuando esto ocurra es aconsejable aislar los módulos de interfaz con sistemas asíncronos y diseñar el resto del sistema ateniéndose a las reglas enunciadas.

(39)

Diseño síncrono de circuitos digitales

Conclusiones

– En el diseño de circuito es aconsejable utilizar flip-flops tipo D, puesto que son los de funcionamiento más simple y facilitan la interpretación del modo de operación del

circuito.

– Además, con los flip-flops tipo D resulta muy sencilla la incorporación de entradas síncronas de reset, preset y habilitación de reloj.

– Las entradas asíncronas de los flip-flops sólo deben utilizarse, si se desea, para la inicialización del circuito, pero nunca durante la operación normal del mismo.

(40)

alarma entra

sale

Contador

up/down

Q

A=B B

A T

Q rst_asinc

‘1’

n

max n

Ejemplos

Controlador de Aforo

(41)

sale entra

Contador

up/down

Q

A=B B

A D

Q n

max n

CE clk

sync sync

CE alarma

Ejemplos

Controlador de Aforo (diseño síncrono)

(42)

div_prog

N

Q contador

res_asinc

Q D Q div_prog

N

Q

N clk

ent

m sal

n m

div M

Ejemplos

Multiplicador de frecuencia programable

(43)

clk div ent sal

ent clk clk

ent div

ent div

ent

f N

f f

N f 1 f

1 f 1 T

M T

= •

=

=

=

clk

N f

f = f = • N

f

div

= f

clk

Ejemplos

Funcionamiento del Multiplicador de frecuencia

(44)

div_prog

N

Q contador

res_sinc

Q D Q div_prog

N

Q

N clk

ent

m sal

n m

div EN M

sync

clk

CE

Ejemplos

Multiplicador de frecuencia (diseño síncrono)

(45)

div :N Q generador de

ventana

win

contador

res_asinc

Q n D Q E1

E2 E3 E4

S BCD

7seg

contador Q

C

S1 S2 S3 S4 E

clk ent

con

m m m m con_reg

2

m

Ejemplos

Frecuencímetro

(46)

clk win ent

con 0 1 2 3 4 5 0 1 2 3 4 5 0

5 5

con_reg X

Ejemplos

Funcionamiento del frecuencímetro

(47)

m m m m con_reg n

clk

ent sync con

clk

E1 E2 E3 E4

S BCD

7seg

C

S1 S2 S3 S4 E

m

div :N Q

contador

Q

CE 2

generador de ventana

win

D Q CE

contador

res_sinc Q CE

Ejemplos

Frecuencímetro (diseño síncrono)

Referencias

Documento similar