LÓGICA SECUENCIAL CMOS
circuitos vlsi
Índice
Introducción
Métricas de temporización
Clasificación de elementos de memoria
Latches y registros estáticos
Principio de biestabilidad
Latches basados en multiplexor
Registro maestro-esclavo disparado por flanco
Señales de reloj no ideales
Biestables SR estáticos
Registros y latches dinámicos
Registros dinámicos con puerta de transmisión disparados por flanco
C2MOS: técnica insensible al sesgo de reloj
Registros síncronos verdaderamente monofásicos
Procesamiento en cadena: optimización de circuitos secuenciales
Introducción
Circuito
Lógico
Combinacional
Circuito
Lógico
Combinacional
Estado
In
Out
In
Out
Circuitos
combinacionales
Circuitos
secuenciales
Casi todos los sistemas útiles requieren el almacenamiento de
información de estado, lo que da lugar a los circuitos secuenciales.
Un circuito secuencial recuerda parte de la historia anterior del
sistema, es decir, tiene memoria.
Introducción
Casi todos los sistemas útiles requieren el almacenamiento de
información de estado, lo que da lugar a los circuitos secuenciales.
Un circuito secuencial recuerda parte de la historia anterior del
sistema, es decir, tiene memoria.
(Gp:) entradas
(Gp:) salidas
(Gp:) estado
actual
(Gp:) estado
siguiente
(Gp:) Registros
(Gp:) Q
(Gp:) D
(Gp:) CLK
(Gp:) Lógica
Combinacional
Registros:
por flanco positivo
por flanco negativo
Introducción
Existen tres parámetros de temporización importantes asociados a
un registro
Métricas de temporización
t
CLK
t
D
Tc-q
t
hold
t
su
t
Q
DATOS
ESTABLES
Registro
CLK
D
Q
DATOS
ESTABLES
Introducción
Existen tres parámetros de temporización importantes asociados a
un registro
Métricas de temporización
t
CLK
t
D
Tc-q
t
hold
t
su
t
Q
DATOS
ESTABLES
Registro
CLK
D
Q
DATOS
ESTABLES
(Gp:) Tiempo de setup (tsu)
Es el tiempo durante el que las entradas de datos (D) deben ser válidas
antes de la transición de reloj.
Introducción
Existen tres parámetros de temporización importantes asociados a
un registro
Métricas de temporización
t
CLK
t
D
Tc-q
t
hold
t
su
t
Q
DATOS
ESTABLES
Registro
CLK
D
Q
DATOS
ESTABLES
(Gp:) Tiempo de hold (thold) (o de mantenimiento)
Es el tiempo que los datos de entrada deben seguir siendo válidos después
del flanco de reloj.
Introducción
Existen tres parámetros de temporización importantes asociados a
un registro
Métricas de temporización
t
CLK
t
D
Tc-q
t
hold
t
su
t
Q
DATOS
ESTABLES
Registro
CLK
D
Q
DATOS
ESTABLES
(Gp:) Tiempo de retardo (tc-q)
Suponiendo que tsu y thold se cumplen, es el tiempo que tarda la entrada
D en copiarse en la salida Q desde el instante del flanco de reloj
Introducción
En un sistema síncrono, todos los registros están bajo el control de
una única señal de control global.
Métricas de temporización
En los circuitos secuenciales síncronos, los sucesos de conmutación
tienen lugar de forma concurrente en respuesta a un estímulo de
reloj.
Introducción
En un sistema síncrono, todos los registros están bajo el control de
una única señal de control global.
Métricas de temporización
En los circuitos secuenciales síncronos, los sucesos de conmutación
tienen lugar de forma concurrente en respuesta a un estímulo de
reloj.
Los resultados de las operaciones esperan a la siguiente transición
de reloj antes de pasar a la etapa siguiente, por lo tanto, el siguiente
ciclo no puede comenzar hasta que todos los cálculos actuales se
hayan completado y el sistema haya quedado en reposo. El periodo
de reloj T con el que el circuito secuencial opera, debe ajustarse al
máximo retardo de entre todas las etapas de la red.
Por lo tanto, es importante minimizar los parámetros de temporización
asociados con el registro, ya que estos afectan directamente a la
velocidad a la que puede aplicarse la señal de reloj al circuito
secuencial.
Introducción
Métricas de temporización
D1
D2
Q1
Q2
CLK
Registro
1
Registro
2
Lógica
combinacional
CLK
Introducción
Métricas de temporización
D1
D2
Q1
Q2
CLK
Registro
1
Registro
2
Lógica
combinacional
CLK
D1
tsu
Introducción
Métricas de temporización
D1
D2
Q1
Q2
CLK
Registro
1
Registro
2
Lógica
combinacional
CLK
D1
Q1
D1
tc-q
Introducción
Métricas de temporización
D1
D2
Q1
Q2
CLK
Registro
1
Registro
2
Lógica
combinacional
CLK
D1
Q1
D1
tplogic
D2
Introducción
Métricas de temporización
D1
D2
Q1
Q2
CLK
Registro
1
Registro
2
Lógica
combinacional
CLK
D1
Q1
D1
D2
tsu
thold
Introducción
Métricas de temporización
D1
D2
Q1
Q2
CLK
Registro
1
Registro
2
Lógica
combinacional
CLK
D1
Q1
D1
D2
T ? tc-q + tplogic + tsu
Introducción
Memorias de primer plano y de segundo plano
Las memorias de primer plano son las que se incrustan en la
lógica, y con frecuencia se organizan en registros individuales o
bancos de registros
Las memorias de segundo plano son grandes cantidades de
memoria centralizadas y alcanzan densidades superiores.
Clasificación de elementos de memoria
Introducción
Memoria dinámica y estática
Las memorias estáticas conservan el estado mientras la
alimentación esté conectada. Son útiles cuando el registro no se
actualiza durante largos periodos de tiempo.
Las memorias dinámicas almacenan datos durante un corto periodo
de tiempo. Se basan en el principio de almacenamiento de carga
temporal en los condensadores parásitos asociados con los
dispositivos MOS. Los condensadores tienen que refrescarse de
forma periódica para compensar las fugas de carga. Estas memorias
suelen ser más sencillas.
Clasificación de elementos de memoria
Introducción
Latches y registros
Un latch es un circuito sensible a nivel que pasa la entrada D a la
salida Q cuando la señal de reloj está a nivel alto. En este caso se
dice que el latch está en modo transparente. Estando el reloj a nivel
bajo, los datos se mantienen estables en la salida (modo de
retención). Esto sería un latch positivo o transparente a nivel alto.
Los registros se forman normalmente por latches, y son disparados
por flanco, es decir, sólo muestrean la entrada en una transición de
reloj 0?1 (disparado por flanco de reloj positivo) o 1?0 (flanco de
reloj negativo). Una configuración muy utilizada es la estructura
maestro-esclavo, que conecta en cascada un latch positivo con un
latch negativo.
Clasificación de elementos de memoria
Introducción
Clasificación de elementos de memoria
Latches y registros estáticos
Las meorias estáticas utilizan realimentación positiva para crear un
circuito biestable, el cual tiene dos estado estables que representan
los valores 0 y 1.
Principio de biestabilidad
(Gp:) V
(Gp:) i
(Gp:) 1
(Gp:) V
(Gp:) o1
vi1
Vo1
Latches y registros estáticos
Las meorias estáticas utilizan realimentación positiva para crear un
circuito biestable, el cual tiene dos estado estables que representan
los valores 0 y 1.
Principio de biestabilidad
(Gp:) V
(Gp:) i
(Gp:) 1
V
o
2
(Gp:) V
(Gp:) o1
(Gp:) Vi2
vi1
Vo1= Vi2
vo2
Latches y registros estáticos
Las memorias estáticas utilizan realimentación positiva para crear un
circuito biestable, el cual tiene dos estado estables que representan
los valores 0 y 1.
Principio de biestabilidad
(Gp:) V
(Gp:) i
(Gp:) 1
A
C
B
V
o
2
(Gp:) V
(Gp:) i
(Gp:) 1
(Gp:) =
(Gp:) V
(Gp:) o
(Gp:) 2
(Gp:) V
(Gp:) o1
(Gp:) Vi2
(Gp:) V
(Gp:) i
(Gp:) 2
(Gp:) =
(Gp:) V
(Gp:) o
(Gp:) 1
vi1
Vo1= Vi2
vo2
Vo2= Vi1
El circuito sólo tiene tres puntos de
operación (A, B y C)
Cuando la ganancia del inversor en la región transitoria
es mayor que 1, A y B son los únicos puntos de operación estables.
Latches y registros estáticos
Principio de biestabilidad
Latches y registros estáticos
Principio de biestabilidad
Así pues, el acoplamiento cruzado de dos inversores da lugar a un
circuito biestable, es decir, un circuito con dos estados estables. El
circuito sirve como memoria, que puede almacenar un 1 o un 0.
Un circuito biestable también se suele llamar flip-flop.
Un biestable es útil sólo si existe un medio para pasar de un estado
a otro, y esto se puede hacer de dos formas diferentes:
Latch basado en multiplexores: rompemos el bucle de alimentación
y escribimos un nuevo valor en Out (o Q). La expresión lógica es
equivalente a la ecuación de un multiplexor:
Q=CLK?Q+CLK?IN
Sobreponerse al bucle de realimentación: Se fuerza la escritura de
un nuevo valor en la celda, sobreponiéndose el valor almacenado.
Es el método predominante en la implementación de memorias
estáticas.
Latches y registros estáticos
Latches basados en multiplexor
Es la técnica más habitual para construir un latch.
CLK
(Gp:) 1
(Gp:) 0
(Gp:) D
(Gp:) Q
(Gp:) 0
(Gp:) CLK
(Gp:) 1
(Gp:) D
(Gp:) Q
Latch negativo
Latch positivo
Latches y registros estáticos
Latches basados en multiplexor
Es la técnica más habitual para construir un latch.
(Gp:) Latch positivo
(Gp:) Activo cuando CLK=1
(Gp:) Activo cuando CLK=0
Latches y registros estáticos
Latches basados en multiplexor
Es la técnica más habitual para construir un latch.
(Gp:) Latch positivo
Desventaja:
Muchos transistores cargan a la señal de reloj
Latches y registros estáticos
Latches basados en multiplexor
Desventajas:
Problemas de margen de ruido con los transistores de paso nMOS
Disipación de potencia estática en el primer inversor
Latches y registros estáticos
Registro maestro-esclavo disparado por flanco
maestro
esclavo
Latches y registros estáticos
Registro maestro-esclavo disparado por flanco
EJEMPLO
Latches y registros estáticos
Registro maestro-esclavo disparado por flanco
maestro
esclavo
CLK
D
QM
Q
Latches y registros estáticos
Registro maestro-esclavo disparado por flanco
Tsetup=0.21ns
Tsetup=0.20ns
Latches y registros estáticos
Registro maestro-esclavo disparado por flanco
Tsetup=0.21ns
Tsetup=0.20ns
Latches y registros estáticos
Registro maestro-esclavo disparado por flanco
Una forma de disminuir la carga de la señal de reloj es mediante un
registro maestro-esclavo estático con carga de reloj reducida.
(Gp:) La puerta de transmisión T1 y su excitador de fuente deben ser
capaces de sobreponerse al inversor de realimentación I2 para
cambiar el estado del inversor acoplado.
(Gp:) Otro problema es el de la conducción inversa
Latches y registros estáticos
Señales de reloj no ideales
Hasta el momento se ha supuesto que las señales CLK y CLK no
se solapan. Esto es muy complicado de conseguir, y se produce
lo que se conoce como sesgo de reloj, mediante el cual, dos señales
de reloj se solapan.
CLK
CLK
(Gp:) X
(Gp:) CLK
(Gp:) CLK
(Gp:) A
(Gp:) B
(Gp:) D
(Gp:) Q
(Gp:) CLK
(Gp:) CLK
(Gp:) Registro maestro-esclavo
por disparo negativo
Latches y registros estáticos
Señales de reloj no ideales
Estos problemas se pueden solucionar utilizando dos relojes no
solapados PHI1 y PHI2, y manteniendo el tiempo de no solapamiento
entre los relojes lo suficientemente grande como para que no lleguen
a solaparse en condiciones adversas.
Registro de dos fases
Pseudo-estático
Latches y registros estáticos
Biestables SR estáticos
La forma tradicional de hacer que un elemento biestable cambie de
de estado consiste en hacer que la entrada se sobreponga al bucle
de realimentación. La forma más sencilla de implementar esto es
mediante un biestable RS
Estado prohibido
Latches y registros estáticos
Biestables SR estáticos
La forma tradicional de hacer que un elemento biestable cambie de
de estado consiste en hacer que la entrada se sobreponga al bucle
de realimentación. La forma más sencilla de implementar esto es
mediante un biestable RS
Latch SR controlado por reloj