0% encontró este documento útil (0 votos)
205 vistas40 páginas

Métricas de Calidad en Diseño Digital

Este documento define métricas para evaluar la calidad de un diseño digital desde diferentes perspectivas como costo, funcionalidad, robustez y rendimiento. Explica que el costo depende del área del chip y que cuanto menor sea el área, menor será el costo. También señala que la funcionalidad y robustez de un circuito digital dependen de su capacidad para operar correctamente a pesar de variaciones en el proceso de fabricación y ruido.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
205 vistas40 páginas

Métricas de Calidad en Diseño Digital

Este documento define métricas para evaluar la calidad de un diseño digital desde diferentes perspectivas como costo, funcionalidad, robustez y rendimiento. Explica que el costo depende del área del chip y que cuanto menor sea el área, menor será el costo. También señala que la funcionalidad y robustez de un circuito digital dependen de su capacidad para operar correctamente a pesar de variaciones en el proceso de fabricación y ruido.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

1.

3 Métricas de calidad de un diseño digital

Esta sección define un conjunto de propiedades básicas de un diseño digital. Estas propiedades
ayudan a cuantificar la calidad de un diseño desde diferentes perspectivas: costo, funcionalidad,
robustez, rendimiento y consumo de energía. ¿Cuál de estas métricas es más importante?
Depende de la aplicación. Por ejemplo, la velocidad pura es una propiedad crucial en un cálculo
servidor. Por otro lado, el consumo de energía es una métrica dominante para los dispositivos
móviles de mano. Aplicaciones como teléfonos celulares. Las propiedades introducidas son
relevantes en todos los niveles de jerarquía de diseño, ya sea sistema, chip, módulo y puerta. Para
garantizar la coherencia en las definiciones a lo largo de la pila de jerarquía de diseño,
proponemos un enfoque ascendente: comenzamos con la definición de las métricas de calidad
básicas de un inversor simple y gradualmente expandirlas para Las funciones más complejas como
puerta, módulo y chip.

1.3.1 Costo de un circuito integrado

El costo total de cualquier producto se puede separar en dos componentes: los gastos recurrentes
o el costo variable, y los gastos no recurrentes o el costo fijo.

Costo fijo

El costo fijo es independiente del volumen de ventas, la cantidad de productos vendidos. Un


importante componente del costo fijo de un circuito integrado es el esfuerzo en tiempo y mano de
obra se necesita para producir el diseño. Este costo de diseño está fuertemente influenciado por la
complejidad del diseño, la agresividad de las especificaciones y la productividad del diseñador.
Metodologías de diseño avanzadas que automatizan las partes principales del proceso de diseño
puede ayudar a impulsar esto último. Reducir el costo de diseño en presencia de un aumento cada
vez mayor La complejidad de IC es uno de los principales desafíos que siempre enfrenta el
semiconductor industria.

Además, uno tiene que contabilizar los costos indirectos, los gastos generales de la compañía que
no se puede facturar directamente a un producto. Incluye, entre otros, los de la empresa
investigación y desarrollo (I + D), fabricación de equipos, comercialización, ventas y construcción
de infraestructura.

Costo variable

Esto explica el costo que es directamente atribuible a un producto manufacturado, y es por lo


tanto proporcional al volumen del producto. Los costos variables incluyen los costos de las partes
utilizado en el producto, costos de ensamblaje y costos de prueba. El costo total de un circuito
integrado es ahora:
El impacto del costo fijo es más pronunciado para productos de pequeño volumen. Esto también
explica por qué tiene sentido tener un gran equipo de diseño trabajando durante varios años en
un producto de gran éxito como un microprocesador. Mientras que el costo de producir un solo
transistor ha caído exponencialmente a lo largo de en las últimas décadas, la ecuación básica de
costo variable no ha cambiado:

Prube final de rendimiento

Como se explicará en el Capítulo 2, el proceso de fabricación de IC agrupa una serie de circuitos


idénticos en una sola oblea (Figura 1.9). Al finalizar la fabricación, el la oblea se corta en troqueles,
que luego se empaquetan individualmente después de ser probados. Nosotros se centrará en el
costo de los troqueles en esta discusión. El costo de empaque y prueba es el tema de capítulos
posteriores. El costo del dado depende del número de dados buenos en una oblea y el porcentaje
de los que son funcionales El último factor se llama el rendimiento del dado.

El número de dados por oblea es, en esencia, el área de la oblea dividida por el dado. La situación
actual es algo más complicada ya que las obleas son redondas y las virutas son cuadrado. Los
troqueles alrededor del perímetro de la oblea se pierden. El tamaño de la oblea ha aumentado
constantemente a lo largo de los años, produciendo más matrices por ciclo de fabricación. Eq.
(1.3). También presenta la primera indicación de que el costo de un circuito depende del chip
área- aumentar el área del chip simplemente significa que caben menos troqueles en una oblea.
La relación real entre el costo y el área es más compleja y depende del rendimiento del dado.
Tanto el material del sustrato como el proceso de fabricación introducen fallas que pueden hacer
que falle un chip. Suponiendo que los defectos se distribuyen aleatoriamente sobre la oblea, y que
el rendimiento es inversamente proporcional a la complejidad del proceso de fabricación,
obtenemos la siguiente expresión del rendimiento del troquel:

α es un parámetro que depende de la complejidad del proceso de fabricación y es


aproximadamente proporcional al número de máscaras. α= 3 es una buena estimación para los
complejos procesos CMOS de hoy. Los defectos por unidad de área son una medida de las fallas
inducidas por el material y el proceso. Un valor entre 0.5 y 1 defectos / cm2 es típico en estos días,
pero depende fuertemente sobre la madurez del proceso.

La conclusión es que el número de troqueles funcionales por oblea y, por lo tanto, el costo por
troquel es una función importante del área del troquel. Si bien el rendimiento tiende a ser
excelente para los diseños más pequeños, cae rápidamente una vez que se supera un cierto
umbral. Teniendo en cuenta las ecuaciones derivadas anteriormente y los valores de parámetros
típicos, podemos concluir que los costos de los troqueles son proporcionales a la cuarta potencia
del área:

El área es una función directamente controlable por el diseñador (s) y es la métrica principal para
el costo. Por lo tanto, un área pequeña es una propiedad deseable para una puerta digital. Cuanta
más pequeña es la puerta, mayor es la densidad de integración y menor es el tamaño del troquel.
Además, las puertas más pequeñas tienden a ser más rápidas y consumen menos energía, ya que
la capacitancia total de la puerta, que no es uno de los parámetros de rendimiento dominantes, a
menudo aumenta con el área.

El número de transistores en una puerta es indicativo del área de implementación esperada. Sin
embargo, otros parámetros pueden tener un impacto. Por ejemplo, un patrón de interconexión
complejo entre los transistores puede hacer que el área de cableado domine. La complejidad de la
puerta, expresada por el número de transistores y la regularidad de la estructura de interconexión,
también tiene un impacto en el costo de diseño. Las estructuras complejas son más difíciles de
implementar y tienden a tomar más tiempo valioso de los diseñadores. La simplicidad y la
regularidad es una propiedad preciosa en diseños sensibles al costo.

1.3.2. Funcionalidad y robustez

Un requisito principal para un circuito digital es, obviamente, que realice la función para la que
está diseñado. El comportamiento medido de un circuito fabricado normalmente se desvía de la
respuesta esperada. Una razón para esta aberración son las variaciones en el proceso de
fabricación. Las dimensiones, los voltajes de umbral y las corrientes de un transistor MOS varían
entre corridas o incluso en una oblea o matriz. El comportamiento eléctrico de un circuito puede
verse profundamente afectado por esas variaciones. La presencia de fuentes de ruido
perturbadoras dentro o fuera del chip es otra fuente de desviaciones en la respuesta del circuito.
La palabra ruido en el contexto de los circuitos digitales significa "variaciones no deseadas de
voltajes y corrientes en los nodos logicos”. Las señales de ruido pueden ingresar a un circuito de
muchas maneras. Algunos ejemplos de fuentes de ruido digital se muestran en la figura 1.10. Por
ejemplo, dos cables colocados uno al lado del otro en un circuito integrado forman un
condensador de acoplamiento y una inductancia mutua. Por lo tanto, un cambio de voltaje o
corriente en uno de los cables puede influir en las señales en el cable vecino. El ruido en los rieles
de potencia y tierra de una puerta también influye en los niveles de señal en la puerta.
La mayor parte del ruido en un sistema digital se genera internamente, y el valor del ruido es
proporcional a la oscilación de la señal. La conversación cruzada capacitiva e inductiva, y el ruido
de la fuente de alimentación generada internamente son ejemplos de ello. Otras fuentes de ruido,
como la fuente de alimentación de entrada. El ruido es externo al sistema y su valor no está
relacionado con los niveles de señal. Para estas fuentes, el nivel de ruido se expresa directamente
en voltios o amperios. Las fuentes de ruido que son función del nivel de la señal se expresan mejor
como una fracción o porcentaje del nivel de la señal. El ruido es una preocupación importante en
la ingeniería de circuitos digitales. Cómo hacer frente a todas estas perturbaciones es uno de los
principales desafíos en el diseño de circuitos digitales de alto rendimiento y es un tema recurrente
en este libro.

Los parámetros de estado estacionario (también llamado comportamiento estático) de una


compuerta miden cuán robusto es el circuito con respecto tanto a las variaciones en el proceso de
fabricación como a las perturbaciones de ruido. La definición y derivación de estos parámetros
requiere una comprensión previa de cómo se representan las señales digitales en el mundo de los
circuitos electrónicos.

Los circuitos digitales (DC) realizan operaciones en variables lógicas (o booleanas). Una variable
lógica x solo puede asumir dos valores discretos:

x 

Como ejemplo, la inversión (es decir, la función que realiza un inversor) implementa la siguiente
relación de composición entre dos variables booleanas x e y:
Una variable lógica es, sin embargo, una abstracción matemática. En una implementación física,
dicha variable está representada por una cantidad eléctrica. Esto es más a menudo un voltaje de
nodo que no es discreto pero puede adoptar un rango continúo de valores. Este voltaje eléctrico
se convierte en una variable discreta al asociar un nivel de voltaje nominal con cada estado lógico:
1 Û VOH, 0 Û VOL, donde VOH y VOL representan los niveles lógicos alto y bajo, respectivamente.
La aplicación de VOH a la entrada de un inversor produce VOL en la salida y viceversa. La
diferencia entre los dos se llama lógica o oscilación de señal Vsw.

La característica de transferencia de voltaje

Supongamos ahora que una variable lógica de entrada sirve como entrada a una puerta inversora
que produce la variable de salida. La función eléctrica de una puerta se expresa mejor por su
característica de transferencia de voltaje (VTC) (a veces llamada característica de transferencia de
CC), que traza el voltaje de salida en función del voltaje de entrada Vout = f (Vin). Un ejemplo de
un inversor VTC se muestra en la Figura 1.11. Los voltajes nominales alto y bajo, VOH y VOL, se
pueden identificar fácilmente: VOH = f (VOL) y VOL = f (VOH). Otro punto de interés del VTC es la
puerta o el voltaje de umbral de conmutación VM (que no debe confundirse con el voltaje de
umbral de un transistor), que se define como VM = f (VM). VM también puede estar gráficamente
en la intersección de la curva VTC y la línea dada por Vout = Vin. El voltaje umbral de la puerta
presenta el punto medio de las características de conmutación, que se obtiene cuando la salida de
una puerta se cortocircuita a la entrada. Este punto resultará de particular interés al estudiar
circuitos con retroalimentación (también llamados circuitos secuenciales).
Incluso si se aplica un valor nominal ideal a la entrada de una puerta, la señal de salida a menudo
se desvía del valor nominal esperado. Estas desviaciones pueden ser causadas por el ruido o por la
carga en la salida de la puerta (es decir, por el número de puertas conectadas a la señal de salida).
La figura 1.12a ilustra cómo un nivel lógico está representado en realidad por un rango de voltajes
aceptables, separados por una región de incertidumbre, en lugar de solo por niveles nominales.
Las regiones de altos y bajos voltajes aceptables están delimitadas por los niveles de voltaje de VIH
y VIL, respectivamente. Estos representan por definición los puntos donde la ganancia (= dVout /
dVin) del VTC es igual a -1 como se muestra en la Figura 1.12b. La región entre VIH y VIL se llama
región indefinida (a veces también denominada ancho de transición, o TW). Las señales de estado
estacionario deben evitar esta región si se debe garantizar el funcionamiento adecuado del
circuito.

Márgenes de ruido

Para que una puerta sea robusta e insensible a las perturbaciones de ruido, es esencial que los
intervalos "0" y "1" sean lo más grandes posible. Los márgenes de ruido NML (margen de ruido
bajo) y NMH (margen de ruido alto) dan una medida de la sensibilidad de una puerta al ruido, que
cuantifican el tamaño de los "0" y "1" legales, respectivamente, y establecen un umbral máximo
fijo en el valor de ruido:

Los márgenes de ruido representan los niveles de ruido que se pueden mantener cuando las
puertas se conectan en cascada como se ilustra en la Figura 1.13. Es obvio que los márgenes
deben ser mayores que 0 para que un circuito digital sea funcional y, de preferencia, debe ser lo
más grande posible.

Propiedad regenerativa

Un margen de ruido grande es un requisito deseable, pero no suficiente. Suponga que el ruido
perturba una señal y difiere de los niveles de voltaje nominal. Mientras la señal se encuentre
dentro de los márgenes de ruido, la siguiente puerta continúa funcionando correctamente,
aunque su voltaje de salida varía del nominal. Esta desviación se agrega al ruido inyectado en el
nodo de salida y se pasa a la siguiente puerta. El efecto de diferentes fuentes de ruido puede
acumularse y eventualmente forzar un nivel de señal en la región indefinida. Esto,
afortunadamente, no sucede si la puerta posee la propiedad regenerativa,
lo que garantiza que una señal perturbada converja gradualmente a uno de los niveles de voltaje
nominal después de pasar por varias etapas lógicas. Esta propiedad se puede entender de la
siguiente manera: se aplica un voltaje de entrada vin (vin € “0”) a una cadena de N inversores
(Figura 1.14a). Suponiendo que el número de inversores en la cadena es par, el voltaje de salida
vout (N → ∞) será igual a VOL si y solo si el inversor posee la propiedad regenerativa. De manera
similar, cuando se aplica un voltaje de entrada vin (vin € "1") a la cadena del inversor, el voltaje de
salida se acercará al valor nominal VOH.
Ejemplo 1.4 Propiedad regenerativa

El concepto de regeneración se ilustra en la figura 1.14b, que traza la respuesta transitoria


simulada de una cadena de inversores CMOS. La señal de entrada a la cadena es una forma de
onda escalonada con una amplitud degradada, que podría ser causada por el ruido. En lugar de
balancearse de riel a riel, v0 solo se extiende entre 2.1 y 2.9 V. Desde la simulación, se puede
observar que esta desviación desaparece rápidamente, mientras progresa a través de la cadena;
v1, por ejemplo, se extiende de 0.6 V a 4.45 V. Aún más, v2 ya oscila entre el VOL nominal y VOH.
El inversor utilizado en este ejemplo posee claramente la propiedad regenerativa.

Las condiciones bajo las cuales una puerta es regenerativa se pueden derivar intuitivamente
analizando un estudio de caso simple. La figura 1.15 (a) traza el VTC de un inversor Vout = f (Vin),
así como su función inversa finv (), que revierte la función de los ejes x e y y se define de la
siguiente manera:
Diseño de circuitos lógicos secuenciales

7.1 introduccion

Los circuitos lógicos combinacionales, descritos anteriormente, tienen la propiedad de que la


salida de un bloque lógico es solo una función de los valores de entrada actuales, suponiendo que
haya transcurrido suficiente tiempo para que las puertas lógicas se asienten. Sin embargo,
prácticamente todos los sistemas útiles requieren almacenamiento de información de estado, lo
que lleva a otra clase de circuitos llamados circuitos lógicos secuenciales. En estos circuitos, la
salida no solo depende de los valores actuales de las entradas, sino también de los valores de
entrada anteriores. En otras palabras, un circuito secuencial recuerda parte de la historia pasada
del sistema: tiene memoria.

La figura 7.1 muestra un diagrama de bloques de una máquina genérica de estados finitos (FSM)
que consta de lógica y registros combinacionales, que contienen el estado del sistema. El sistema
representado aquí pertenece a la clase de sistemas secuenciales sincrónicos, en el que todos los
registros están bajo el control de un solo reloj global. Las salidas del FSM son una función de las
entradas actuales y del estado actual. El estado siguiente se determina en función del estado
actual y las entradas actuales y se alimenta a las entradas de los registros. En el flanco ascendente
del reloj, los bits de estado siguiente se copian en las salidas de los registros (después de un
retraso de propagación) y comienza un nuevo ciclo. El registro luego ignora los cambios en las
señales de entrada hasta el siguiente flanco ascendente. En general, los registros pueden ser
activados por el borde positivo (donde los datos de entrada se copian en el borde positivo del
reloj) o activados por el borde negativo (donde los datos de entrada se copian en el borde
negativo, como lo indica un pequeño círculo en la entrada del reloj).

Este capítulo trata sobre la implementación CMOS de los bloques de construcción secuenciales
más importantes. Existe una variedad de opciones en primitivas secuenciales y metodologías de
reloj; Hacer la selección correcta es cada vez más importante en los circuitos digitales modernos y
puede tener un gran impacto en el rendimiento, la potencia y / o la complejidad del diseño.

Antes de embarcarse en una discusión detallada sobre las diversas opciones de diseño, es
necesaria una revisión de las métricas de diseño y una clasificación de los elementos secuenciales.
7.1.1 Métricas de tiempo para circuitos secuenciales

Hay tres parámetros de sincronización importantes asociados con un registro como se ilustra en la
Figura 7.2. El tiempo de configuración (tsu) es el tiempo que las entradas de datos (entrada D)
deben ser válidas antes de la transición del reloj (es decir, la transición de 0 a 1 para un registro de
activación por flanco positivo). El tiempo de retención (thold) es el tiempo que la entrada de datos
debe permanecer válida después del borde del reloj. Suponiendo que se cumplen los tiempos de
configuración y retención, los datos en la entrada D se copian a la salida Q después de un retraso
de propagación en el peor de los casos (con referencia al borde del reloj) denotado por tc-q.

Dada la información de temporización para los registros y la lógica de combinación, se pueden


derivar algunas restricciones de temporización a nivel de sistema. Suponga que el peor retraso de
propagación de la lógica es igual a tplogic, mientras que su retraso mínimo (también llamado
retraso de contaminación) es tcd. El período de reloj mínimo T, requerido para la operación
adecuada del circuito secuencial viene dado por

T tc-q + tplogic + tsu

El tiempo de espera del registro impone una restricción adicional para la operación adecuada,

tcdregister + tcdlogic thold

donde tcdregister es el retraso mínimo de propagación (o retraso de contaminación) del registro.


Como se ve desde la ecuación. (7.1), es importante minimizar los valores de los parámetros de
temporización asociados con el registro, ya que estos afectan directamente la velocidad a la que
se puede sincronizar un circuito secuencial. De hecho, los sistemas modernos de alto rendimiento
se caracterizan por una profundidad lógica muy baja, y el retraso de propagación del registro y los
tiempos de configuración representan una parte significativa del período de reloj. Por ejemplo, el
microprocesador DEC Alpha EV6 [Gieseke97] tiene una profundidad lógica máxima de 12 puertas,
y la sobrecarga del registro representa aproximadamente el 15% del período del reloj. En general,
el requisito de la ecuación. (7.2) no es difícil de cumplir, aunque se convierte en un problema
cuando hay poca o ninguna lógica entre los registros

7.1.2 Clasificación de elementos de memoria

Primer plano versus memoria de fondo

En un nivel alto, la memoria se clasifica en memoria de fondo y de primer plano. La memoria que
está incrustada en la lógica es la memoria de primer plano, y con mayor frecuencia se organiza
como registros individuales de bancos de registros. Grandes cantidades de memoria centralizada
se denominan memoria de fondo. La memoria de fondo, discutida más adelante en este libro,
logra mayores densidades de área a través del uso eficiente de las estructuras de matriz y al
intercambiar el rendimiento y la solidez por el tamaño. En este capítulo, nos centramos en los
recuerdos de primer plano.

Memoria Estática versus Dinámica

Los recuerdos pueden ser estáticos o dinámicos. Los recuerdos estáticos preservan el estado
siempre que la alimentación esté encendida. Las memorias estáticas se crean utilizando
retroalimentación positiva o regeneración, donde la topología del circuito consiste en conexiones
intencionales entre la salida y la entrada de un circuito combinacional. Los recuerdos estáticos son
más útiles cuando el registro no se actualizará durante períodos prolongados de tiempo. Un
ejemplo de esto son los datos de configuración, cargados en el momento del encendido. Esta
condición también es válida para la mayoría de los procesadores que usan el reloj condicional (es
decir, relojes con compuerta) donde el reloj está apagado para los módulos no utilizados. En ese
caso, no hay garantías sobre la frecuencia con la que se registrarán los registros, y se necesitan
memorias estáticas para preservar la información del estado. La memoria basada en la
retroalimentación positiva cae dentro de la clase de elementos llamados circuitos multivibradores.
El elemento biestable es su representante más popular, pero también se usan con frecuencia otros
elementos como los circuitos monoestable y astable.

Las memorias dinámicas almacenan el estado durante un corto período de tiempo, del orden de
milisegundos. Se basan en el principio del almacenamiento de carga temporal en condensadores
parásitos asociados con dispositivos MOS. Al igual que con la lógica dinámica discutida
anteriormente, los condensadores deben actualizarse periódicamente para aniquilar la fuga de
carga. Las memorias dinámicas tienden a ser más simples, lo que resulta en un rendimiento
significativamente mayor y una menor disipación de energía. Son más útiles en los circuitos de
ruta de datos que requieren altos niveles de rendimiento y se registran periódicamente. Es posible
utilizar circuitos dinámicos incluso cuando los circuitos tienen una frecuencia condicional, si el
estado puede descartarse cuando un módulo entra en modo inactivo.
latch versus registros

Un pestillo es un componente esencial en la construcción de un registro activado por flanco. Es un


circuito sensible al nivel que pasa la entrada D a la salida Q cuando la señal del reloj es alta. Se dice
que este pestillo está en modo transparente. Cuando el reloj está bajo, los datos de entrada
muestreados en el flanco descendente del reloj se mantienen estables en la salida durante toda la
fase, y el pestillo está en modo de espera. Las entradas deben ser estables durante un corto
período alrededor del borde descendente del reloj para cumplir con los requisitos de
configuración y retención. Un pestillo que funciona en las condiciones anteriores es un pestillo
positivo. Del mismo modo, un pestillo negativo pasa la entrada D a la salida Q cuando la señal del
reloj es baja. Las formas de onda de señal para un enganche positivo y negativo se muestran en la
Figura 7.3. Existe una amplia variedad de implementaciones estáticas y dinámicas para la
realización de pestillos.

A diferencia de los pestillos sensibles al nivel, los registros activados por el borde solo muestrean
la entrada en una transición de reloj: 0 a 1 para un registro positivo activado por el borde y 1 a 0
para un registro negativo activado por el borde. Por lo general, se construyen utilizando las
primitivas de enganche de la Figura 7.3. Una configuración recurrente más frecuente es la
estructura maestro-esclavo que conecta en cascada un enclavamiento positivo y negativo. Los
registros también se pueden construir utilizando generadores de una sola vez de la señal de reloj
(registros "glitch") o utilizando otras estructuras especializadas. Ejemplos de estos se muestran
más adelante en este capítulo

7.2 Static Latches and Registers


7.2.1 El principio de biestabilidad

Las memorias estáticas usan retroalimentación positiva para crear un circuito biestable, un circuito
que tiene dos estados estables que representan 0 y 1. La idea básica se muestra en la Figura 7.4a,
que muestra dos inversores conectados en cascada junto con una característica de transferencia
de voltaje típica de tales Un circuito. También se trazan los VTC del primer inversor, es decir, Vo1
frente a Vi1, y el segundo inversor (Vo2 frente a Vo1). El último gráfico se gira para acentuar que
Vi2 = Vo1.

Suponga ahora que la salida del segundo inversor Vo2 está conectada a la entrada del primer Vi1,
como se muestra por las líneas punteadas en la Figura 7.4a. El circuito resultante tiene solo tres
puntos de operación posibles (A, B y C), como se demuestra en el VTC combinado. La siguiente
conjetura importante se demuestra fácilmente como válida:

Section 7.2 Static Latches and Registers

Bajo la condición de que la ganancia del inversor en la región transitoria sea mayor que 1, solo A y
B son puntos de operación estables, y C es un punto de operación metaestable.

Suponga que el par inversor de acoplamiento cruzado está polarizado en el punto C. Una pequeña
desviación de este punto de polarización, posiblemente causada por el ruido, se amplifica y se
regenera alrededor del circuito. Esto es una consecuencia de que la ganancia alrededor del bucle
es mayor que 1. El efecto se demuestra en la Figura 7.5a. Se aplica una pequeña desviación d a Vi1
(sesgada en C). Esta desviación se amplifica por la ganancia del inversor. La divergencia ampliada
se aplica al segundo inversor y se amplifica una vez más. El punto de polarización se aleja de C
hasta que se alcanza uno de los puntos de operación A o B. En conclusión, C es un punto de
operación inestable. Cada desviación (incluso la más pequeña) hace que el punto de operación se
escape de su sesgo original. La posibilidad es muy pequeña de que el par inversor de acoplamiento
cruzado esté polarizado en C y permanezca allí. Los puntos de operación con esta propiedad se
denominan metaestables.

Por otro lado, A y B son puntos de operación estables, como se muestra en la Figura
7.5b. En estos puntos, la ganancia del bucle es mucho menor que la unidad. Incluso una desviación
bastante grande del punto de operación se reduce en tamaño y desaparece.

Por lo tanto, el acoplamiento cruzado de dos inversores da como resultado un circuito biestable,
es decir, un circuito con dos estados estables, cada uno correspondiente a un estado lógico. El
circuito sirve como memoria, almacenando un 1 o un 0 (correspondiente a las posiciones A y B).

Para cambiar el valor almacenado, debemos poder llevar el circuito del estado A al B y viceversa.
Dado que la condición previa para la estabilidad es que la ganancia de bucle G es menor que la
unidad, podemos lograr esto haciendo que A (o B) sea temporalmente inestable aumentando G a
un valor mayor que 1. Esto generalmente se hace aplicando un impulso de disparo en Vi1 o Vi2.
Por ejemplo, suponga que el sistema está en la posición A (Vi1 = 0, Vi2 = 1). Forzar Vi1 a 1 hace
que ambos inversores se enciendan simultáneamente por un corto tiempo y la ganancia de bucle
G sea mayor que 1. La retroalimentación positiva regenera el efecto del pulso de disparo y el
circuito se mueve al otro estado (B en este caso ) El ancho del pulso de activación debe ser solo un
poco mayor que el retraso de propagación total alrededor del circuito, que es el doble del retraso
de propagación promedio de los inversores.

En resumen, un circuito biestable tiene dos estados estables. En ausencia de cualquier activación,
el circuito permanece en un solo estado (suponiendo que la fuente de alimentación permanece
aplicada al circuito) y, por lo tanto, recuerda un valor. Se debe aplicar un impulso de disparo para
cambiar el estado del circuito. Otro nombre común para un circuito biestable es flip-flop
(desafortunadamente, un registro activado por flanco también se conoce como flip-flop).
7.2.2 SR Flip-Flops

El par de inversores de acoplamiento cruzado que se muestra en la sección anterior proporciona


un enfoque para almacenar una variable binaria de manera estable. Sin embargo, se deben
agregar circuitos adicionales para permitir el control de los estados de memoria. La encarnación
más simple para lograr esto es el bien conocido SR —o set-reset— flip-flop, cuya implementación
se muestra en la Figura 7.6a.

Este circuito es similar al par de inversores de acoplamiento cruzado con puertas NOR que
reemplazan a los inversores. La segunda entrada de las puertas NOR está conectada a las entradas
de disparo (S y R), que permiten forzar las salidas Q y Q a un estado dado. Estas salidas son
complementarias (excepto para el estado SR = 11). Cuando S y R son 0, el flip-flop está en un
estado inactivo y ambas salidas retienen su valor (una puerta NOR con una de sus entradas siendo
0 parece un inversor, y la estructura parece un inversor de acoplamiento cruzado). Si se aplica un
pulso positivo (o 1) a la entrada S, la salida Q se fuerza al estado 1 (con Q yendo a 0). Viceversa, un
pulso 1 en R restablece el flip-flop y la salida Q pasa a 0

Estos resultados se resumen en la tabla de características del flip-flop, que se muestra en la Figura
7.6c. La tabla de características es la tabla de verdad de la puerta y enumera los estados de salida
como funciones de todas las condiciones de entrada posibles. Cuando S y R son altos, tanto Q
como Q son forzados a cero. Como esto no se corresponde con nuestra restricción de que Q y Q
deben ser complementarios, este modo de entrada se considera prohibido. Un problema adicional
con esta condición es que cuando los disparadores de entrada vuelven a sus niveles cero, el estado
resultante del enclavamiento es impredecible y depende de la entrada que sea más baja.
Finalmente, la Figura 7.6 muestra el símbolo esquemático del flip-flop SR.
Section 7.2 Static Latches and Registers

Los flip-flops SR discutidos hasta ahora son asíncronos y no requieren una señal de reloj. La
mayoría de los sistemas funcionan de forma síncrona con eventos de transición referenciados a un
reloj. En la Figura 7.8 se muestra una posible realización de un flip-flop SR sincronizado, un pestillo
positivo sensible al nivel. Consiste en un par de inversores de acoplamiento cruzado, más 4
transistores adicionales para conducir el flip-flop de un estado a otro y proporcionar una
operación con reloj.

Observe que la cantidad de transistores es idéntica a la implementación de la Figura 7.6, pero el


circuito tiene la característica adicional de estar sincronizado. El inconveniente de guardar algunos
transistores sobre una implementación CMOS totalmente complementaria es que el tamaño del
transistor se vuelve crítico para garantizar la funcionalidad adecuada. Considere el caso donde Q
es alto y se aplica un pulso R. La combinación de los transistores M4, M7 y M8 forma un inversor
proporcional. Con el fin de hacer el interruptor de enclavamiento, debemos lograr que Q esté por
debajo del umbral de conmutación del inversor M1-M2. Una vez que esto se logra, la
retroalimentación positiva hace que el flip-flop invierta los estados. Este requisito nos obliga a
aumentar el tamaño de los transistores M5, M6, M7 y M8.

El flip-flop presentado no consume energía estática. En estado estacionario, un inversor


reside en el estado alto, mientras que el otro es bajo. No pueden existir rutas estáticas entre VDD
y GND, excepto durante la conmutación.
Ejemplo 7.1 Dimensionamiento del transistor del pestillo SR sincronizado

Suponga que el par de inversores de acoplamiento cruzado está diseñado de tal manera
que el umbral del inversor VM se encuentra en VDD / 2. Para una tecnología CMOS de 0.25 mm, se
seleccionaron los siguientes tamaños de transistores: (W / L) M1 = (W / L) M3 = (0.5mm / 0.25mm)
y (W / L) M2 = (W / L) M4 = (1,5 mm / 0,25 mm).

Suponiendo que Q = 0, determinamos los tamaños mínimos de M5, M6, M7 y M8 para que
el dispositivo sea conmutable.

Para cambiar el pestillo del estado Q = 0 al estado Q = 1, es esencial que el bajo nivel del
inversor pseudo-NMOS con relación (M5-M6) -M2 esté por debajo del umbral de conmutación del
inversor M3-M4 que es igual a VDD / 2. Es razonable suponer que mientras VQ> VM, VQ sea igual
a 0 y la puerta del transistor M2 esté conectada a tierra. Las condiciones de contorno en los
tamaños de transistor se pueden derivar igualando las corrientes en el inversor para VQ = VDD / 2,
como se indica en la ecuación. (7.3) (esto ignora la modulación de longitud del canal). Las
corrientes están determinadas por la corriente de saturación ya que VSET = VDD = 2.5V y VM =
1.25V. Suponemos que M5 y M6 tienen tamaños idénticos y que W / L5-6 es la relación efectiva de
los dispositivos conectados en serie. Bajo esta condición, la red desplegable puede ser modelada
por un solo transistor M56, cuya longitud es dos veces la longitud de los dispositivos individuales

Usando los parámetros para el proceso de 0.25 mm, la ecuación. (7.3) da como resultado
la restricción de que el efectivo (W / L) M5-6 ³ 2.26. Esto implica que la relación de dispositivo
individual para M5 o M6 debe ser mayor que aproximadamente 4.5. La figura 7.9a muestra la
gráfica DC de VQ en función de los tamaños de dispositivos individuales de M5 y M6. Notamos que
la relación de dispositivo individual mayor que 3 es suficiente para llevar el voltaje Q al umbral de
conmutación del inversor. La diferencia entre el análisis manual y la simulación surge debido a los
efectos de segundo orden como DIBL y la modulación de la longitud del canal. Figura 7.9b, que
muestra la respuesta transitoria para diferentes tamaños de dispositivo. El gráfico confirma que se
requiere una relación W / L individual de más de 3 para dominar la retroalimentación y cambiar el
estado del pestillo.
El efecto de retroalimentación positiva hace que la derivación manual del retraso de
propagación del enclavamiento SR sea bastante difícil. Por lo tanto, algunas simplificaciones son
necesarias. Considere, por ejemplo, el pestillo de la Figura 7.8, donde Q y Q se establecen en 0 y 1,
respectivamente. Se aplica un pulso en el nodo S, lo que hace que el pestillo se active. En la
primera fase del transitorio, el nodo Q está siendo arrastrado por los transistores M5 y M6. Como
el nodo Q es inicialmente bajo, el dispositivo PMOS M2 está encendido mientras M1 está apagado.
Por lo tanto, la respuesta transitoria está determinada por el inversor pseudo-NMOS formado por
(M5-M6) y M2. Una vez que Q alcanza el umbral de conmutación del inversor CMOS M3-M4, este
inversor reacciona y la retroalimentación positiva entra en acción, apagando M2 y activando M1.
Esto acelera la extracción del nodo Q. De este análisis, podemos deducir que el retraso de
propagación del nodo Q es aproximadamente igual al retraso del inversor pseudo-NMOS formado
por (M5-M6) y M2. Para obtener el retraso para el nodo Q, es suficiente agregar el retraso del
inversor CMOS complementario M3-M4.

Ejemplo 7.2 Retraso de propagación del flip-flop SR estático

La respuesta transitoria del pestillo en la Figura 7.8, obtenida de la simulación, se


representa en la Figura 7.10. Los dispositivos se dimensionan como se describe en el ejemplo 7.1,
y se supone una carga de un solo inversor para cada salida de enganche. El flip-flop está
inicialmente en el estado de reinicio, y se aplica un pulso-S. Como podemos observar, esto resulta
primero en una descarga de la salida Q mientras Q permanece en 0. Una vez que se alcanza el
umbral de conmutación del inversor M3-M4, la salida Q comienza a aumentar.

El retraso de este transitorio está determinado únicamente por el inversor M3-M4, que se
ve obstaculizado por el tiempo de subida lento en su entrada. A partir de los resultados de la
simulación, podemos deducir que tpQ y tpQ equivalen a 120psec y 230psec, respectivamente.
Problema 7.2 CMOS SR FF de cortesía

En lugar de usar el SR FF modificado de la Figura 7.8, también es posible usar una lógica
complementaria para implementar el SR FF cronometrado. Derive el esquema del transistor (que
consta de 12 transistores). Este circuito es más complejo, pero cambia más rápido y consume
menos energía de conmutación. Explicar por qué.

7.2.3 Cierres basados en multiplexor

Hay muchos enfoques para construir pestillos. Una técnica muy común implica el uso de
multiplexores de puerta de transmisión. Los pestillos basados en multiplexores pueden
proporcionar una funcionalidad similar al pestillo SR, pero tiene la importante ventaja adicional de
que el tamaño de los dispositivos solo afecta el rendimiento y no es crítico para la funcionalidad.

La figura 7.11 muestra una implementación de pestillos estáticos positivos y negativos


basados en multiplexores. Para un bloqueo negativo, cuando la señal del reloj es baja, se
selecciona la entrada 0 del multiplexor y la entrada D se pasa a la salida. Cuando la señal del reloj
es alta, se selecciona la entrada 1 del multiplexor, que se conecta a la salida del pestillo. La
retroalimentación mantiene la salida estable mientras la señal del reloj es alta. De manera similar,
en el enclavamiento positivo, la entrada D se selecciona cuando el reloj está alto, y la salida se
mantiene (usando retroalimentación) cuando el reloj está bajo.

En la Figura 7.12 se muestra una implementación a nivel de transistor de un pestillo


positivo basado en multiplexores. Cuando CLK es alto, la puerta de transmisión inferior está
encendida y el pestillo es transparente, es decir, la entrada D se copia a la salida Q. Durante esta
fase, el circuito de retroalimentación está abierto ya que la puerta de transmisión superior está
apagada. A diferencia del SR FF, no es necesario anular la retroalimentación para escribir la
memoria y, por lo tanto, el tamaño de los transistores no es crítico para obtener la funcionalidad
correcta. El número de transistores que toca el reloj es importante ya que tiene un factor de
actividad de 1. Esta implementación de enclavamiento particular no es particularmente eficiente
desde esta métrica, ya que presenta una carga de 4 transistores a la señal CLK.

Es posible reducir la carga del reloj a dos transistores mediante el uso de


multiplexores de implemento que usan un transistor de paso NMOS solo como se muestra en la
Figura 7.13. La ventaja de este enfoque es la carga de reloj reducida de solo dos dispositivos
NMOS. Cuando CLK es alto, el pestillo muestrea la entrada D, mientras que una señal de reloj baja
habilita el circuito de retroalimentación y pone el pestillo en el modo de espera. Si bien es
atractivo por su simplicidad, el uso de transistores de paso NMOS solo produce el paso de un alto
voltaje degradado de VDD-VTn a la entrada del primer inversor. Esto afecta tanto el margen de
ruido como el rendimiento de conmutación, especialmente en el caso de valores bajos de VDD y
valores altos de VTn. También causa disipación de potencia estática en el primer inversor, como ya
se señaló en el Capítulo 6. Dado que el voltaje de entrada máximo al inversor es igual a VDD-VTn,
el dispositivo PMOS del inversor nunca se apaga, lo que resulta en un flujo de corriente estática.

7.2.4 Master-Slave Edge-Triggered Register

El enfoque más común para construir un registro activado por flanco es usar una configuración de
master master, como se muestra en la Figura 7.14. El registro consiste en conectar en cascada un
pestillo negativo (etapa maestra) con un pestillo positivo (etapa esclava). Se utiliza un pestillo
basado en multiplexor en esta implementación particular, aunque se podría usar cualquier
pestillo. En la fase baja del reloj, la etapa maestra es transparente y la entrada D se pasa a la salida
de la etapa maestra, QM. Durante este período, la etapa esclava está en el modo de retención,
manteniendo su valor anterior
utilizando comentarios. En el flanco ascendente del reloj, el esclavo maestro deja de muestrear la
entrada y la etapa esclava comienza a muestrear. Durante la fase alta del reloj, la etapa esclava
muestrea la salida de la etapa maestra (QM), mientras que la etapa maestra permanece en modo
de espera. Como QM es constante durante la fase alta del reloj, la salida Q realiza solo una
transición por ciclo. El valor de Q es el valor de D justo antes del borde ascendente del reloj,
logrando el efecto de activación de borde positivo. Se puede construir un registro de activación
por flanco negativo utilizando el mismo principio simplemente cambiando el orden del enganche
positivo y negativo (esto es, colocando el enganche positivo primero)

En la Figura 7.15 se muestra una implementación completa a nivel de transistor del


registro maestro-esclavo activado por flanco positivo. El multiplexor se implementa utilizando
puertas de transmisión como se discutió en la sección anterior. Cuando el reloj está bajo (CLK = 1),
T1 está encendido y T2 está apagado, y la entrada D se muestrea en el nodo QM. Durante este
período, T3 está apagado y T4 está encendido y los inversores de acoplamiento cruzado (I5, I6)
mantienen el estado del pestillo esclavo. Cuando el reloj se pone alto, la etapa maestra deja de
muestrear la entrada y pasa al modo de espera. T1 está apagado y T2 está encendido, y los
inversores de acoplamiento cruzado I3 e I4 mantienen el estado de QM. Además, T3 está
encendido y T4 está apagado, y QM se copia en la salida Q.

Problema 7.3 Optimización del registro maestro esclavo

Es posible eliminar los inversores I1 e I2 de la Figura 7.3 sin pérdida de funcionalidad. ¿Hay alguna
ventaja en incluir estos inversores en la implementación?
Propiedades de temporización de registros maestro-esclavo basados en multiplexor

Los registros se caracterizan por tres parámetros de temporización importantes: el tiempo de


configuración, el tiempo de espera y el retraso de propagación. Es importante comprender los
factores que afectan estos parámetros de tiempo y desarrollar la intuición para estimarlos
manualmente. Suponga que el retraso de propagación de cada inversor es tpd_inv, y el retraso de
propagación de la puerta de transmisión es tpd_tx. Suponga también que el retraso de
contaminación es 0 y el retraso del inversor para derivar CLK de CLK tiene un retraso igual a 0.

El tiempo de configuración es el tiempo antes del flanco ascendente del reloj en que los datos de
entrada D deben ser válidos. Otra forma de hacer la pregunta es cuánto tiempo antes del borde
ascendente la entrada D tiene que ser estable, de modo que QM muestree el valor de manera
confiable. Para el registro basado en multiplexor de puerta de transmisión, la entrada D tiene que
propagarse a través de I1, T1, I3 e I2 antes del borde ascendente del reloj. Esto es para asegurar
que los voltajes de nodo en ambos terminales de la puerta de transmisión T2 estén en el mismo
valor. De lo contrario, es posible que el par de acoplamiento cruzado I2 e I3 se asienten en un
valor incorrecto. Por lo tanto, el tiempo de configuración es igual a 3 * tpd_inv + tpd_tx.

El retraso de propagación es el tiempo para que el valor de QM se propague a la salida Q. Tenga


en cuenta que, dado que incluimos el retraso de I2 en el tiempo de configuración, la salida de I4 es
válida antes del flanco ascendente del reloj. Por lo tanto, el retraso tc-q es simplemente el retraso
a través de T3 e I6 (tc-q = tpd_tx + tpd_inv).

El tiempo de espera representa el tiempo que la entrada debe mantenerse estable después del
borde ascendente del reloj. En este caso, la puerta de transmisión T1 se apaga cuando el reloj se
pone alto y, por lo tanto, la entrada no ve ningún cambio en la entrada D después del reloj alto.
Por lo tanto, el tiempo de espera es 0.
Ejemplo 7.3 Análisis de tiempos usando SPICE.

Para obtener el tiempo de configuración del registro usando SPICE, sesgamos progresivamente la
entrada con respecto al borde del reloj hasta que el circuito falla. La figura 7.16 muestra la
simulación del tiempo de configuración suponiendo un sesgo de 210 pseg y 200 pseg. Para el caso
de 210 pseg, se muestrea el valor correcto de la entrada D (en este caso, la salida Q permanece en
el valor de VDD). Para un sesgo de 200 psec, un valor incorrecto se propaga a la salida (en este
caso, la salida Q pasa a 0). El nodo QM comienza a subir mientras la salida de I2 (la entrada a la
puerta de transmisión T2) comienza a caer. Sin embargo, el reloj se habilita antes de que los dos
nodos a través de la puerta de transmisión (T2) se asienten en el mismo valor y, por lo tanto, da
como resultado un valor incorrecto escrito en el pestillo maestro. El tiempo de configuración para
este registro es, por lo tanto, 210 pseg.

De manera similar, se puede simular el tiempo de espera. El borde de entrada D vuelve a estar
sesgado en relación con la señal del reloj hasta que el circuito deja de funcionar. Para este diseño,
el tiempo de espera es 0, es decir, las entradas se pueden cambiar en el borde del reloj.
Finalmente, para el retraso de propagación, las entradas hacen la transición al menos un tiempo
de configuración antes del borde ascendente del reloj y el retraso se mide desde el punto 50% del
borde CLK al punto 50% de la salida Q.

A partir de esta simulación (Figura 7.17), tc-q (lh) fue de 160 pseg y tc-q (hl) fue de 180 pseg.

El inconveniente del registro de la puerta de transmisión es la alta carga capacitiva presentada a la


señal del reloj. La carga de reloj por registro es importante, ya que afecta directamente la
disipación de energía de la red de reloj. Ignorando la sobrecarga requerida para invertir la señal
del reloj (dado que la sobrecarga del inversor buffer puede amortizarse en múltiples bits de
registro), cada registro tiene una carga de reloj de 8 transistores. Un enfoque para reducir la carga
del reloj a costa de la robustez es hacer que el circuito sea proporcional. La figura 7.18 muestra
que la puerta de transmisión de retroalimentación puede eliminarse mediante el acoplamiento
cruzado directo de los inversores.

La penalización por la carga de reloj reducida es la complejidad de diseño incrementada. La puerta


de transmisión (T1) y su controlador de fuente deben sobrecargar el inversor de retroalimentación
(I2) para cambiar el estado del inversor de acoplamiento cruzado. Los requisitos de
dimensionamiento para las puertas de transmisión se pueden derivar utilizando un análisis similar
al realizado para el flip SR fracaso. La entrada al inversor I1 debe colocarse por debajo de su
umbral de conmutación para realizar una transición. Si se van a utilizar dispositivos de tamaño
mínimo en las puertas de transmisión, es esencial que los transistores del inversor I2 se debiliten
aún más. Esto se puede lograr haciendo que sus longitudes de canal sean más grandes que el
mínimo. El uso de dispositivos de tamaño mínimo o cercano al mínimo en las puertas de
transmisión es deseable para reducir la disipación de energía en los pestillos y la red de
distribución del reloj.

Otro problema con este esquema es la conducción inversa: es decir, la segunda etapa puede
afectar el estado del primer pestillo. Cuando la etapa esclava está activada (Figura 7.19), es posible
que la combinación de T2 e I4 influya en los datos almacenados en el enclavamiento I1-I2.
Mientras I4 sea un dispositivo débil, afortunadamente no es un problema importante

Non-ideal clock signals

Hasta ahora, hemos asumido que CLK es una inversión perfecta de CLK, o en otras palabras, que el
retraso del inversor generador es cero. Incluso si esto fuera posible, esto no sería una buena
suposición. Pueden existir variaciones en los cables utilizados para enrutar las dos señales de reloj,
o las capacidades de carga pueden variar según los datos almacenados en los pestillos de
conexión. Este efecto, conocido como inclinación del reloj, es un problema importante y hace que
las dos señales de reloj se superpongan como se muestra en la Figura 7.20b. La superposición de
reloj puede causar dos tipos de fallas, como se ilustra para el registro negativo maestro-esclavo
solo para NMOS de la Figura 7.20a.
Cuando el reloj se pone alto, la etapa esclava debe dejar de muestrear la salida de la etapa
maestra y pasar al modo de espera. Sin embargo, dado que CLK y CLK son altos durante un corto
período de tiempo (el período de solapamiento), ambos transistores de paso de muestreo
conducen y hay una ruta directa desde la entrada D a la salida Q. Como resultado, los datos en la
salida pueden cambiar en el flanco ascendente del reloj, lo que no es deseable para un registro
activado por flanco negativo. Se conoce como una condición de carrera en la que el valor de la
salida Q es una función de si la entrada D llega al nodo X antes o después del flanco descendente
de CLK. Si el nodo X se muestrea en el estado metaestable, la salida cambiará a un valor
determinado por el ruido en el sistema.

La principal ventaja del registro basado en multiplexor es que el circuito de retroalimentación está
abierto durante el período de muestreo y, por lo tanto, el tamaño de los dispositivos no es crítico
para la funcionalidad. Sin embargo, si hay una superposición de reloj entre CLK y CLK, el nodo A
puede ser controlado por D y B, lo que resulta en un estado indefinido.

Esos problemas pueden evitarse utilizando dos relojes no superpuestos PHI1 y PHI2 (Figura 7.21), y
manteniendo el tiempo de no superposición tnon_overlap entre los relojes lo suficientemente
grande como para que no se produzca superposición incluso en presencia de retrasos en el
enrutamiento del reloj.

Durante el tiempo sin solapamiento, el FF está en el estado de alta impedancia: el bucle de


retroalimentación está abierto, la ganancia del bucle es cero y la entrada está desconectada. La
fuga destruirá el estado si esta condición se mantiene por mucho tiempo. De ahí el nombre
pseudoestático: el registro emplea una combinación de enfoques de almacenamiento estático y
dinámico dependiendo del estado del reloj.

Problema 7.4 Generación de relojes no superpuestos

La figura 7.22 muestra una posible implementación de la circuitería de generación de reloj para
generar relojes bifásicos no superpuestos. Suponiendo que cada puerta tiene un retardo de puerta
unitario, deduzca la relación de sincronización entre el reloj de entrada y los dos relojes de salida.
¿Cuál es el período de no solapamiento? ¿Cómo se puede aumentar este período si es necesario?

7.2.5 Low-Voltage Static Latches

La escala de los voltajes de suministro es crítica para la operación de baja potencia.


Desafortunadamente, ciertas estructuras de cierre no funcionan con voltajes de suministro
reducidos. Por ejemplo, sin la escala de los umbrales del dispositivo, NMOS solo pasa los
transistores (por ejemplo, Figura 7.21) no se escalan bien con el voltaje de suministro debido a su
caída de umbral inherente. Con voltajes de suministro de energía muy bajos, la entrada al inversor
no puede elevarse por encima del umbral de conmutación, lo que da como resultado una
evaluación incorrecta. Incluso con el uso de puertas de transmisión, el rendimiento se degrada
significativamente con voltajes de suministro reducidos.

Escalar a bajos voltajes de suministro, por lo tanto, requiere el uso de dispositivos de umbral
reducido. Sin embargo, esto tiene el efecto negativo de aumentar exponencialmente la potencia
de fuga por debajo del umbral como se discutió en el Capítulo 6. Cuando se accede
constantemente a los registros, la energía de fuga es típicamente insignificante en comparación
con la potencia de conmutación. Sin embargo, con el uso de relojes condicionales, es posible que
los registros estén inactivos durante períodos prolongados y la energía de fuga gastada por los
registros puede ser bastante significativa. Se están explorando muchas soluciones para abordar el
problema de la alta fuga durante los períodos de inactividad. Un enfoque para esto implica el uso
de dispositivos de umbral múltiple como se muestra en la figura 7.23 [Mutoh95]. Aquí solo se
muestra el pestillo negativo. Los inversores sombreados y las puertas de transmisión se
implementan en dispositivos de bajo umbral. Los inversores de umbral bajo se activan mediante
dispositivos de umbral alto para eliminar las fugas.

Durante el modo normal de operación, los dispositivos de reposo están encendidos. Cuando el
reloj está bajo, la entrada D se muestrea y se propaga a la salida. Cuando el reloj está alto, el
pestillo está en el modo de espera. La puerta de transmisión de retroalimentación conduce y la
retroalimentación de acoplamiento cruzado está habilitada. Tenga en cuenta que hay un inversor
adicional, necesario para almacenar el estado cuando el pestillo está en el estado de suspensión.
Durante el modo inactivo, los dispositivos de umbral alto en serie con el inversor de umbral bajo
se apagan (la señal SLEEP es alta), lo que elimina las fugas. Se supone que el reloj está en el estado
alto cuando el pestillo está en el estado de suspensión. La puerta de transmisión de umbral bajo
de retroalimentación se activa y los dispositivos de umbral alto de acoplamiento cruzado
mantienen el estado del pestillo.
Problema 7.5 Minimización de transistores en el registro MTCMOS

A diferencia de la lógica combinacional, se requieren dispositivos de alto umbral NMOS y


PMOS para eliminar la fuga en los pestillos de umbral bajo. Explica por qué este es el caso.
Sugerencia: elimine el NMOS de alto VT o PMOS de alto VT del inversor de bajo umbral a la
derecha de la Figura 7.23 e investigue las posibles rutas de fuga.

7.3 Dynamic Latches and Registers

El almacenamiento en un circuito secuencial estático se basa en el concepto de que un par


inversor de acoplamiento cruzado produce un elemento biestable y, por lo tanto, puede usarse
para memorizar valores binarios. Este enfoque tiene la propiedad útil de que un valor almacenado
permanece válido siempre que la tensión de alimentación se aplique al circuito, de ahí el nombre
estático. Sin embargo, la principal desventaja de la puerta estática es su complejidad. Cuando los
registros se utilizan en estructuras computacionales que están constantemente sincronizadas,
como la ruta de datos canalizada, el requisito de que la memoria debe mantener el estado durante
períodos prolongados de tiempo se puede relajar significativamente.

Esto da como resultado una clase de circuitos basados en el almacenamiento temporal de carga en
condensadores parásitos. El principio es exactamente idéntico al que se usa en la lógica dinámica:
la carga almacenada en un condensador se puede usar para representar una señal lógica. La
ausencia de carga denota un 0, mientras que su presencia representa un 1. almacenado.
Desafortunadamente, ningún condensador es ideal, y siempre hay alguna fuga de carga. Por lo
tanto, un valor almacenado solo puede mantenerse durante un período de tiempo limitado,
típicamente en el rango de milisegundos. Si se quiere preservar la integridad de la señal, es
necesaria una actualización periódica de su valor. De ahí el nombre de almacenamiento dinámico.

Leer el valor de la señal almacenada desde un condensador sin interrumpir la carga requiere la
disponibilidad de un dispositivo con una alta impedancia de entrada.

7.3.1 Dynamic Transmission-Gate Edge-triggered Registers

En la Figura 7.24 se muestra un registro de activación de flanco positivo completamente dinámico


basado en el concepto maestro-esclavo. Cuando CLK = 0, los datos de entrada se muestrean en el
nodo de almacenamiento 1, que tiene una capacitancia equivalente de C1 que consiste en la
capacitancia de puerta de I1, la capacitancia de unión de T1 y la capacitancia de puerta de
solapamiento de T1. Durante este período, la etapa esclava está en modo de espera, con el nodo 2
en un estado de alta impedancia (flotante). En el borde ascendente del reloj, la puerta de
transmisión T2 se enciende y el valor muestreado en el nodo 1 justo antes del borde ascendente
se propaga a la salida Q (tenga en cuenta que el nodo 1 es estable durante la fase alta del reloj
desde la primera puerta de transmisión esta apagado). El nodo 2 ahora almacena la versión
invertida del nodo 1. Esta implementación de un registro activado por flanco es muy eficiente ya
que solo requiere 8 transistores. Los interruptores de muestreo se pueden implementar utilizando
transistores de paso solo NMOS, lo que resulta en una implementación de 6 transistores aún más
simple.

El recuento reducido de transistores es atractivo para sistemas de alto rendimiento y baja


potencia.

El tiempo de configuración de este circuito es simplemente el retraso de la puerta de transmisión,


y corresponde al tiempo que le toma al nodo 1 muestrear la entrada D. El tiempo de espera es
aproximadamente cero, ya que la puerta de transmisión se apaga en el borde del reloj y se ignoran
los cambios de entradas adicionales. El retraso de propagación (tc-q) es igual a dos retrasos del
inversor más el retraso de la puerta de transmisión T2.

Una consideración importante para tal registro dinámico es que los nodos de almacenamiento (es
decir, el estado) deben actualizarse a intervalos periódicos para evitar una pérdida debido a la
fuga de carga, debido a la fuga de diodos, así como a las corrientes por debajo del umbral. En los
circuitos de ruta de datos, la frecuencia de actualización no es un problema, ya que los registros se
registran periódicamente y los nodos de almacenamiento se actualizan constantemente.
La superposición de reloj es una preocupación importante para este registro. Considere las formas
de onda del reloj que se muestran en la figura 7.25. Durante el período de superposición 0-0, el
NMOS de T1 y el PMOS de T2 se activan simultáneamente, creando una ruta directa para que los
datos fluyan desde la entrada D del registro a la salida Q. Esto se conoce como una condición de
carrera. La salida Q puede cambiar en el borde descendente si el período de superposición es
grande, obviamente un efecto indeseable para un registro positivo activado por el borde. Lo
mismo es cierto para la región de superposición 1-1, donde existe una ruta de entrada-salida a
través del PMOS de T1 y el NMOS de T2. El último caso se soluciona imponiendo una restricción de
tiempo de espera. Es decir, los datos deben ser estables durante el período de superposición alto-
alto. La primera situación (solapamiento 0-0) puede abordarse asegurándose de que haya
suficiente retraso entre la entrada D y el nodo 2 asegurando que los nuevos datos muestreados
por la etapa maestra no se propaguen a la etapa esclava. En general, el retardo del inversor único
incorporado debería ser suficiente y la restricción del período de superposición se da como:

7.3.2 C2MOS: un enfoque insensible a la inclinación del reloj

El registro C2MOS

La figura 7.26 muestra un ingenioso registro positivo activado por flanco, basado en un concepto
maestro-esclavo insensible a la superposición de reloj. Este circuito se llama registro C2MOS
(CMOS con reloj) [Suzuki73] y funciona en dos fases.
1. CLK = 0 (CLK = 1): el primer controlador de tres estados se enciende y la etapa maestra
actúa como un inversor que muestrea la versión invertida de D en el nodo interno X. La
etapa maestra se encuentra en el modo de evaluación. Mientras tanto, la sección esclava
está en modo de alta impedancia o en modo de espera. Ambos transistores M7 y M8
están apagados, desacoplando la salida de la entrada. La salida Q retiene su valor anterior
almacenado en el condensador de salida CL2.
2. Los roles se invierten cuando CLK = 1: la sección de la etapa maestra está en modo de
espera (M3-M4 desactivada), mientras que la segunda sección evalúa (M7-M8 activada). El
valor almacenado en CL1 se propaga al nodo de salida a través de la etapa esclava que
actúa como un inversor.

El circuito general funciona como un registro maestro-esclavo activado por flanco positivo,
muy similar al registro basado en la puerta de transmisión presentado anteriormente. Sin
embargo, hay una diferencia importante:
Un registro C2MOS con el reloj CLK-CLK es insensible a la superposición, siempre que los
tiempos de subida y bajada de los bordes del reloj sean lo suficientemente pequeños.

Para probar la afirmación anterior, examinamos los casos de solapamiento (0-0) y (1-1)
(Figura 7.25). En el caso de solapamiento (0-0), el circuito se simplifica a la red que se
muestra en la Figura 7.27a en la que ambos dispositivos PMOS están encendidos durante
este período. La pregunta es si los datos nuevos muestreados durante la ventana de
superposición se propagan a la salida Q. Esto no es deseable ya que los datos no deberían
cambiar en el borde negativo para un registro activado por borde positivo.
De hecho, los nuevos datos se muestrean en el nodo X a través de los dispositivos de la
serie PMOS M2-M4, y el nodo X puede hacer una transición de 0 a 1 durante el período de
superposición. Sin embargo, estos datos no pueden propagarse a la salida ya que el
dispositivo NMOS M7 está apagado. Al final del período de superposición, CLK = 1 y M7 y
M8 se apagan, poniendo la etapa esclava en modo de espera.

Por lo tanto, cualquier dato nuevo muestreado en el flanco descendente del reloj no se ve
en la salida esclava Q, ya que el estado esclavo está desactivado hasta el próximo flanco
ascendente del reloj. Como el circuito consiste en una cascada de inversores, la
propagación de la señal requiere un pull-up seguido de un pull-down, o viceversa, lo que
no es factible en la situación presentada.
El caso de superposición (1-1) (Figura 7.27b), donde ambos dispositivos NMOS M3 y M7
están encendidos, es algo más polémico. La pregunta es
nuevamente si los nuevos datos muestreados durante el período de superposición (justo
después de que el reloj se pone alto) se propagan a la salida Q. Un registro activado por
flanco positivo solo puede pasar datos que se presentan en la entrada antes del flanco
ascendente. Si la entrada D cambia durante el período de superposición, el nodo X puede
hacer una transición de 1 a 0, pero no puede propagarse a la salida. Sin embargo, tan
pronto como termina el período de superposición, el PMOS M8 se enciende y el 0 se
propaga a la salida. Este efecto no es deseable. El problema se soluciona imponiendo una
restricción de tiempo de retención en los datos de entrada, D o, en otras palabras, los
datos D deben ser estables durante el período de solapamiento.
En resumen, se puede afirmar que el pestillo C2MOS es insensible a las superposiciones de
reloj porque esas superposiciones activan las redes pull-up o pull-down de los pestillos,
pero nunca ambas a la vez. Sin embargo, si los tiempos de subida y caída del reloj son lo
suficientemente lentos, existe un intervalo de tiempo en el que se conducen los
transistores NMOS y PMOS. Esto crea una ruta entre la entrada y la salida que puede
destruir el estado del circuito. Las simulaciones han demostrado que el circuito funciona
correctamente siempre que el tiempo de subida del reloj (o tiempo de caída) sea menor
que aproximadamente cinco veces el retraso de propagación del registro. Este criterio no
es demasiado estricto y se cumple fácilmente en diseños prácticos. El impacto de los
tiempos de subida y bajada se ilustra en la Figura 7.28, que traza la respuesta transitoria
simulada de un C2MOS D FF para pendientes de reloj de 0.1 y 3 nseg respectivamente.
Para relojes lentos, existe la posibilidad de una condición de carrera.

Dual-edge Registers

Hasta ahora, nos hemos centrado en los registros activados por el borde que muestrean los datos
de entrada en solo uno de los bordes del reloj (ascendente o descendente). También es posible
diseñar circuitos secuenciales que muestreen la entrada en ambos bordes. La ventaja de este
esquema es que se distribuye un reloj de frecuencia más baja (la mitad de la velocidad original)
para el mismo rendimiento funcional, lo que resulta en ahorros de energía en la red de
distribución de reloj. La Figura 7.29 muestra una modificación del registro C2MOS para permitir el
muestreo en ambos bordes. Consiste en dos registros paralelos activados por flanco maestro de
esclavo, cuyas salidas se multiplexan utilizando los controladores de tres estados.

Cuando el reloj es alto, el pestillo positivo compuesto por transistores M1-M4 está muestreando la
entrada D invertida en el nodo X. El nodo Y se mantiene estable, ya que los dispositivos M9 y M10
están apagados. En el flanco descendente del reloj, el pestillo superior esclavo M5-M8 se activa y
conduce el valor invertido de X a la salida Q. Durante la fase baja, el pestillo maestro inferior (M1,
M4, M9, M10) se activa, muestreando la entrada D invertida en el nodo Y. Tenga en cuenta que los
dispositivos M1 y M4 se reutilizan, reduciendo la carga en la entrada D. En el borde ascendente, el
pestillo inferior del esclavo conduce y conduce la versión invertida de Y en el nodo Q. Por lo tanto,
los datos cambian en ambos bordes. Tenga en cuenta que los pestillos esclavos funcionan de
manera complementaria, es decir, solo uno de ellos se enciende durante cada fase del reloj.
7.3.3 True Single-Phase Clocked Register (TSPCR)

7.3.3 Registro de reloj monofásico verdadero (TSPCR)

En los esquemas de sincronización de dos fases descritos anteriormente, se debe tener cuidado al
enrutar las dos señales de reloj para garantizar que se minimice la superposición. Si bien el C2MOS
proporciona una solución tolerante a la distorsión, es posible diseñar registros que solo usen un
reloj monofásico. El verdadero registro de reloj monofásico (TSPCR), propuesto por Yuan y
Svensson, utiliza un reloj único [Yuan89]. Los enganches básicos positivos y negativos monofásicos
se muestran en la Figura 7.30. Para el seguro positivo, cuando CLK es alto, el seguro está en modo
transparente y corresponde a dos inversores en cascada; el pestillo no se invierte y propaga la
entrada a la salida. Por otro lado, cuando CLK = 0, ambos inversores están deshabilitados y el
pestillo está en modo de espera. Solo las redes desplegables siguen activas, mientras que los
circuitos desplegables están desactivados. Como resultado del enfoque de doble etapa, ninguna
señal puede propagarse desde la entrada del pestillo a la salida en este modo. Se puede construir
un registro en cascada de enclavamientos positivos y negativos. La carga del reloj es similar a un
registro de puerta de transmisión convencional o registro C2MOS. La principal ventaja es el uso de
una sola fase de reloj. La desventaja es el ligero aumento en el número de transistores: se
requieren 12 transistores.
TSPC ofrece una ventaja adicional: la posibilidad de incorporar funcionalidad lógica en los pestillos.
Esto reduce la sobrecarga de retraso asociada con los pestillos. La Figura 7.31a describe el enfoque
básico para la lógica de incrustación, mientras que la Figura 7.31b muestra un ejemplo de un
enganche positivo que implementa el AND de In1 e In2 además de realizar la función de enganche.
Si bien el tiempo de configuración de este pestillo ha aumentado con respecto al que se muestra
en la Figura 7.30, el rendimiento general del circuito digital (es decir, el período de reloj de un
circuito secuencial) ha mejorado: el aumento en el tiempo de configuración es típicamente menor
que el retraso de una puerta AND. Este enfoque de la lógica de incrustación en pestillos se ha
utilizado ampliamente en el diseño del microprocesador EV4 DEC Alpha [Dobberpuhl92] y muchos
otros procesadores de alto rendimiento.

Ejemplo 7.4 Impacto de incrustar lógica en pestillos en el rendimiento

Considere incrustar una compuerta AND en el pestillo TSPC, como se muestra en la Figura 7.31b.
En un 0,25 mm, el tiempo de configuración de dicho circuito utilizando dispositivos de tamaño
mínimo es de 140 pseg. Un enfoque convencional, compuesto por una compuerta AND seguida de
un pestillo positivo tiene un tiempo de configuración efectivo de 600 pseg (tratamos el pestillo
AND plus como una caja negra que realiza ambas funciones). El enfoque de lógica incorporada, por
lo tanto, da como resultado mejoras significativas de rendimiento

Los circuitos de retención de TSPC pueden reducirse aún más en complejidad, como se ilustra en la
Figura 7.32, donde solo el primer inversor es controlado por el reloj. Además del número reducido
de transistores, estos circuitos tienen la ventaja de que la carga del reloj se reduce a la mitad.

Por otro lado, no todos los voltajes de los nodos en el pestillo experimentan la oscilación lógica
completa. Por ejemplo, el voltaje en el nodo A (para Vin = 0 V) para el enganche positivo es igual a
VDD - VTn, lo que da como resultado un accionamiento reducido para el transistor NMOS de salida
y una pérdida de rendimiento. Del mismo modo, el voltaje en el nodo A (para Vin = VDD) para el
enganche negativo solo se reduce a | VTp |. Esto también limita la cantidad de escala VDD posible
en el pestillo.

La figura 7.33 muestra el diseño de un registro especializado activado por borde monofásico.
Cuando CLK = 0, el inversor de entrada está muestreando la entrada D invertida en el nodo X. El
segundo inversor (dinámico) está en modo de precarga, con M6 cargando el nodo Y a VDD. El
tercer inversor está en modo de espera, ya que M8 y M9 están apagados. Por lo tanto, durante la
fase baja del reloj, la entrada al inversor final (estático) mantiene su valor anterior y la salida Q es
estable. En el flanco ascendente del reloj, se evalúa el inversor dinámico M4-M6. Si X está alto en
el borde ascendente, el nodo Y se descarga. El tercer inversor M7-M8 está encendido durante la
fase alta, y el valor del nodo en Y se pasa a la salida Q. En la fase positiva del reloj, tenga en cuenta
que el nodo X pasa a un nivel bajo si la entrada D pasa a un nivel alto. nivel. Por lo tanto, la
entrada debe mantenerse estable hasta que el valor en el nodo X antes de que el borde
ascendente del reloj se propague a Y. Esto representa el tiempo de retención del registro (tenga
en cuenta que el tiempo de retención es inferior a 1 retraso del inversor, ya que tarda 1 retraso
para la entrada para afectar el nodo X). El retraso de propagación del registro es esencialmente
tres inversores, ya que el valor en el nodo X debe propagarse a la salida Q. Finalmente, el tiempo
de configuración es el tiempo para que el nodo X sea válido, que es un retraso del inversor
ADVERTENCIA: Al igual que el pestillo C2MOS, el pestillo TSPC no funciona correctamente cuando
la pendiente del reloj no es lo suficientemente pronunciada. Los relojes lentos provocan que los
transistores con reloj NMOS y PMOS se activen simultáneamente, lo que da como resultado
valores indefinidos de los estados y las condiciones de carrera. Por lo tanto, las pendientes del
reloj deben controlarse cuidadosamente. Si es necesario, se deben introducir buffers locales para
garantizar la calidad de las señales del reloj.

Ejemplo 7.5 Registro de activación por borde TSPC

El tamaño del transistor es crítico para lograr la funcionalidad correcta en el registro TSPC. Con un
tamaño incorrecto, pueden producirse fallas en la salida debido a una condición de carrera cuando
el reloj pasa de bajo a alto. Considere el caso donde D es bajo y Q = 1 (Q = 0). Mientras CLK es
bajo, Y está precargado alto al encender M7. Cuando CLK pasa de bajo a alto, los nodos Y y Q
comienzan a descargarse simultáneamente (a través de M4-M5 y M7-M8, respectivamente). Una
vez que Y es suficientemente bajo, la tendencia en Q se invierte y el nodo se eleva nuevamente a
través de M9. En cierto sentido, esta cadena de eventos es comparable a lo que sucedería si
encadenamos puertas lógicas dinámicas. La figura 7.34 muestra la respuesta transitoria del
circuito de la figura 7.33 para diferentes tamaños de dispositivos en las dos etapas finales

Esta falla puede ser la causa de errores fatales, ya que puede crear eventos no deseados (por
ejemplo, cuando la salida del pestillo se usa como entrada de señal de reloj para otro registro).
También reduce el retraso de contaminación del registro. El problema puede corregirse
cambiando el tamaño de las fuerzas relativas de las rutas de extracción a través de M4-M5 y M7-
M8, de modo que Y se descargue mucho más rápido que Q. Esto se logra al reducir la fuerza de la
ruta de extracción M7-M8, y acelerando la ruta de extracción M4-M5.

7.4 Alternative Register Styles

7.4.1 Pulse Registers --- 7.4.1 Registros de pulso

Hasta ahora, hemos utilizado la configuración maestro-esclavo para crear un registro activado por
flanco. Un enfoque fundamentalmente diferente para construir un registro utiliza señales de
pulso. La idea es construir un pulso corto alrededor del borde ascendente (o descendente) del
reloj. Este pulso actúa como la entrada del reloj a un pestillo (por ejemplo, se muestra un sabor
TSPC en la Figura 7.35a), muestreando la entrada solo en una ventana corta. Las condiciones de
carrera se evitan manteniendo el tiempo de apertura (es decir, el período transparente) del
pestillo muy corto. La combinación de los circuitos de generación de falla y el enclavamiento da
como resultado un registro positivo activado por flanco.

La figura 7.35b muestra un circuito de ejemplo para construir un pequeño fallo intencional en cada
borde ascendente del reloj [Kozu96]. Cuando CLK = 0, el nodo X se carga hasta VDD (MN está
apagado porque CLKG es bajo). En el flanco ascendente del reloj, hay un corto período de tiempo
cuando ambas entradas de la compuerta AND son altas, lo que hace que CLKG suba. Esto a su vez
activa MN, tirando de X y eventualmente CLKG bajo (Figura 7.35c). La duración del pulso se
controla mediante el retraso de la puerta AND y los dos inversores. Tenga en cuenta que también
existe un retraso entre los bordes ascendentes del reloj de entrada (CLK) y el reloj de falla (CLKG),
también igual al retraso de la puerta AND y los dos inversores. Si cada registro en el chip usa el
mismo mecanismo de generación de reloj, este retraso de muestreo no importa. Sin embargo, las
variaciones del proceso y las variaciones de carga pueden hacer que los retrasos a través de los
circuitos del reloj de falla sean diferentes. Esto debe tenerse en cuenta al realizar la verificación de
tiempos y el análisis de inclinación del reloj (que es el tema de un capítulo posterior).
Si el tiempo de configuración y el tiempo de retención se miden en referencia al flanco ascendente
del reloj de falla, el tiempo de configuración es esencialmente cero, el tiempo de retención es igual
a la duración del pulso (si el retraso de contaminación es cero para el puertas), y el retraso de
propagación (tc-q) es igual a dos retrasos de puerta. La ventaja del enfoque es la reducción de la
carga del reloj y la pequeña cantidad de transistores necesarios. Los circuitos de generación de
fallas pueden amortizarse en múltiples bits de registro. La desventaja es un aumento sustancial en
la complejidad de la verificación. Esto ha evitado un uso generalizado. Sin embargo, proporcionan
un enfoque alternativo a los esquemas convencionales, y se han adoptado en algunos
procesadores de alto rendimiento (por ejemplo, [Kozu96]).

En la Figura 7.36 se muestra otra versión del registro pulsado (como se usa en el procesador
AMDK6 [Partovi96]). Cuando el reloj está bajo, M3 y M6 están apagados y el dispositivo P1 está
encendido. El nodo X está precargado en VDD, el nodo de salida (Q) se desacopla de X y se
mantiene en su estado anterior. CLKD es una versión invertida de CLKD. En el flanco ascendente
del reloj, M3 y M6 se encienden mientras que los dispositivos M1 y M4 permanecen encendidos
durante un período corto, determinado por el retraso de los tres inversores. Durante este
intervalo, el circuito es transparente y los datos de entrada D son muestreados por el pestillo. Una
vez que CLKD baja, el nodo X se desacopla de la entrada D y se mantiene o comienza a precargarse
en VDD por el dispositivo PMOS P2. En el flanco descendente del reloj, el nodo X se mantiene en
VDD y los inversores de acoplamiento cruzado mantienen estable la salida.

Tenga en cuenta que este circuito también utiliza un one-shot, pero el one-shot está integrado en
el registro. El período de transparencia también determina el tiempo de retención del registro. La
ventana debe ser lo suficientemente ancha para que los datos de entrada se propaguen a la salida
Q. En este circuito en particular, el tiempo de configuración puede ser negativo. Este es el caso si
la ventana de transparencia es más larga que el retraso de entrada a salida. Esto es atractivo, ya
que los datos pueden llegar al registro incluso después de que el reloj se pone alto, lo que significa
que el tiempo se tomó prestado del ciclo anterior.

Ejemplo 7.6 Tiempo de configuración del registro de falla

El registro de falla de la Figura 7.36 es transparente durante la superposición (1-1) de CLK y CLKD.
Como resultado, los datos de entrada pueden cambiar después del flanco ascendente del reloj, lo
que resulta en un tiempo de configuración negativo (Figura 7.37). La entrada D pasa a baja
después del borde ascendente del reloj, y pasa a alta antes del borde descendente de CLKD (esto
es, durante el período de transparencia). Observe cómo la salida sigue a la entrada. La salida Q va
al valor correcto de VDD siempre que la entrada D esté configurada correctamente algún tiempo
antes del límite descendente de CLKD. Cuando se aprovecha el tiempo de configuración negativo,
no puede haber garantías sobre el comportamiento monótono de la salida. Es decir, la salida
puede tener múltiples transiciones alrededor del borde ascendente y, por lo tanto, la salida del
registro no debe usarse como un reloj para otros registros.

También podría gustarte