registros y contadores - sistema secuancial
Post on 16-Apr-2017
322 Views
Preview:
TRANSCRIPT
Sistemas secuenciales básicos
R i d D l iRegistros de DesplazamientoRegistro básicoM difi iModificacionesAplicaciones
ContadoresContadoresContador creciente y decrecienteContador reversibleContador reversibleContadores de módulo cualquieraContadores asíncronosContadores asíncronos
Elemento central: el biestable D (Delay)A cada flanco de reloj, el biestableQi toma
l l d l b blcomo valor el del biestable anterior, Qi‐1 :Di=Qi‐1
D
CLK
Q
U2D
CLK
Q
U1
Q
DTFF
Q
DTFF
Encadenando n celdas como la anterior:
D Q
U2D Q
U1D Q
U3D Q
U4D Q
U5IN OUT
CLK
Q
DTFF
CLK
Q
DTFF
CLK
Q
DTFF
CLK
Q
DTFF
CLK
Q
DTFF
La salida copiará a la entrada n ciclos de reloj á dmás tarde
Con marcha / paro:
blReversible
Con precarga paralela:
Con todas las modificaciones:
óMultiplicación por 2:
óDivisión entre 2:
a a a a
an-1 an-2 a0an-3
an-1 an-1 an-2 a1
óConversión Serie‐ParaleloPrecarga serie (desplazamiento)Lectura paralelo (Q) n-1 n-2 0n-3
Conversión Paralelo‐SeriePrecarga paralelo Desplazamiento seriep
Generador de Secuencia:Se repite cada n pasos
Generador de números pseudo‐aleatorios:Se repite cada 2n‐1
Contador: sistema secuencial que recorre de forma lineal sus estadosl l l b blElemento central: el biestableTEs muy fácil saber cuándo debe cambiar un bit, pero muy complicado saber cuál debe ser su valor
El bit i de un contador cambia cuando todos los menos significativos valen 1:Ti=Q0∙Q1∙…∙Qi‐1
Para hacerlo de forma iterativa:
Si conecto n celdas como la anterior:
Problema: el retraso se acumula.
Sustituyo las puertas AND por puertas de ientradas para cada bit:
Problema: crece el tamaño de las puertas.
Para que cambie un bit, los de menor rango deben estar a cero (haber decrecido):
Ti=/Q0∙/Q1∙…/Qi‐1
f áDe forma análoga a lo anterior:
l l d d d lBasta tomar las salidas negadas en vez de las naturales.
Usar las dos posibilidades, y elegir con un Multiplexor:
Un contador de n bits tiene 2n estados:Módulo: número de estados diferentes
d d ód l él lContador de módulo M: aquél que tras el estado M‐1 va al estado inicial
d hSe puede hacer:Usando un Reset (Síncrono)Usando un Clear (asíncrono)
óEjemplo: contador de 4 bits y módulo 12:Síncronamente: generar reset en el estado 11
lpara que se active y vaya al 0:Q3 Q2 Q1 Q0
/RES
Asíncronamente: generar un Clear en el d destado 12, para que inmediatamente pase a 0
Peligro: glitch. Q3 Q2 Q1 Q0/CLR
Recordando el cronograma:
d í l fl d b d d d bPodría usar los flancos de bajada de cada bit como reloj del siguiente
fUsando biestables activos por flanco de bajada:
Para contador descendente, usar flanco contrario.
fUsando biestables activos por flanco de bajada:
No se deben usar, salvo que se pida expresamente.
top related