¿Qué es una chancleta?

Parece que hay varias definiciones diferentes de flip-flops y pestillos, algunas de las cuales son contradictorias.

El libro de texto de Ciencias de la Computación para el curso que enseño es probablemente el más confuso (de hecho, tengo poca fe en el libro porque simplemente está equivocado en varios lugares).

Me siento cómodo con el funcionamiento de los pestillos (SR, SR con compuerta, D con compuerta) y la diferencia entre dispositivos activados por nivel y activados por borde, al menos en términos de compuertas lógicas y diagramas de tiempo. Sin embargo, todavía estoy buscando una definición concisa de flip flop y de pestillo.

Esto es lo que creo hasta ahora:

“Un flip flop es un dispositivo biestable activado por borde que puede almacenar 1 bit”.

"Un pestillo es un dispositivo biestable activado por nivel que puede almacenar 1 bit".

He echado un vistazo a las publicaciones anteriores en este sitio web sobre esto y, por más esclarecedores que sean, todavía estoy buscando algo definitivo.

Mi comprensión actual, que quiero verificar, está en los diagramas a continuación...

Lado a lado hay lo que entiendo son dos implementaciones de un pestillo D activado por nivel.

Debajo de estos hay un detector de flanco positivo, en ese breve momento en que la puerta NOT aún no ha respondido al cambio de entrada de bajo a alto, es decir, el flanco ascendente (el rojo es 1 y el azul es 0).

En el último diagrama, el detector de bordes se ha instalado en un pestillo D anticuado y esto es lo que lo convierte en un flip-flop.

ingrese la descripción de la imagen aquí

¿Es el último diagrama realmente un flip flop, o sigue siendo solo un pestillo?

¿Y por qué necesitamos la versión maestro-esclavo dada, que este dispositivo es mucho más simple?

@DanielTork, ¿por qué no hacer de eso una respuesta?
En Australia y Nueva Zelanda, son una forma de zapatos abiertos que se usan a menudo en la playa o cuando hace buen tiempo. ;)
En los Estados Unidos, también. Pero antes los llamábamos tangas, pero ahora se refiere a algo diferente ;-)
Ahora quiero ver un diagrama de circuito dibujado con las sandalias conocidas como chanclas...
@KyranF No, esos son jandals.
¡@immibis sal de aquí, kiwi podrido!

Respuestas (6)

He estado pensando mucho en esta definición hoy.

Como otros señalaron, los significados exactos variarán. Además de eso, probablemente verá que más personas se equivocan, incluso en este sitio, de las que aciertan. ¡No me importa lo que diga wikipedia!

Pero en general:

  • Un flip flop cambiará su estado de salida como máximo una vez por ciclo de reloj.
  • Un pestillo cambiará su estado tantas veces como transiciones de datos durante su ventana de transparencia.

Además,

  • Un flip flop es muy seguro. Casi infalible. Por esta razón, las herramientas de síntesis suelen utilizar flip flops. Pero son más lentos que un cerrojo (y consumen más energía).
  • Los pestillos son más difíciles de usar correctamente. Pero son más rápidos que las chanclas (y más pequeños). Por lo tanto, los diseñadores de circuitos personalizados a menudo "extienden el flip flop" a través de su bloque digital (un pestillo en cada extremo con fase opuesta) para sacar algunos picosegundos adicionales de un arco de tiempo incorrecto. Esto se muestra en la parte inferior de la publicación.

Un flip flop se caracteriza más típicamente por una topología maestro-esclavo. Esto es dos acoplados (puede haber lógica entre ellos), enganches de fase opuesta espalda con espalda (a veces en la industria llamados L1/L2).

Esto significa que un flip flop consiste inherentemente en dos elementos de memoria: uno para mantener durante el ciclo bajo y otro para mantener durante el ciclo alto.

Un pestillo es solo un único elemento de memoria (pestillo SR, pestillo D, pestillo JK). En mi opinión, el hecho de que introduzca un flujo de datos de puerta de reloj en el elemento de memoria no lo convierte en un flip flop (aunque puede hacer que actúe como tal: es decir, se activa más el borde ascendente). Simplemente lo hace transparente por una cantidad específica de tiempo.

A continuación se muestra un verdadero flip flop creado a partir de dos pestillos SR (observe los relojes de fase opuesta).

cierto d ff

Y otro verdadero flip-flop (este es el estilo más común en VLSI) de dos D-latches (estilo de puerta de transmisión). Observe nuevamente los relojes de fase opuesta :

verdadero estilo flip flop tg

Si pulsa el reloj hasta un pestillo lo suficientemente rápido, comienza a parecerse a un comportamiento de flip flop (pestillo de pulso). Esto es común en el diseño de rutas de datos de alta velocidad debido a la menor demora de D->Out y Clk->Out, además del mejor tiempo de configuración otorgado (el tiempo de espera también debe aumentar, el precio a pagar es pequeño) por la transparencia a lo largo de la duración de el pulso. ¿Esto lo convierte en un flip flop? No realmente, ¡pero parece que actúa como tal!

Sin embargo, esto es mucho más difícil de garantizar que funcione. Debe verificar en todos los rincones del proceso (nmos rápidos, pmos lentos, tapa de cable alta, cable bajo r; como ejemplo de uno) y todos los voltajes (el voltaje bajo causa problemas) que el pulso de su detector de borde permanece lo suficientemente ancho como para abrir realmente el pestillo y permitir la entrada de datos.

Para su pregunta específica, en cuanto a por qué se considera un pestillo de pulso en lugar de un flip flop, es porque realmente solo tiene un elemento de almacenamiento de bits sensible de un solo nivel. Aunque el pulso es angosto, no forma un sistema de bloqueo y dique que cree un flip flop.

Aquí hay un artículo que describe un pestillo de pulso muy similar a su consulta. Una cita pertinente: "Si la forma de onda del reloj de pulso activa un pestillo, el pestillo se sincroniza con el reloj de manera similar a un flip-flop activado por flanco porque los flancos ascendentes y descendentes del reloj de pulso son casi idénticos en términos de tiempo".

EDITAR Para mayor claridad, incluí un gráfico de diseño basado en pestillo. Hay un pestillo L1 y un pestillo L2 con lógica en el medio. Esta es una técnica que puede reducir los retrasos, ya que un pestillo tiene menos retraso que un flip flop. El flip flop se "separa" y la lógica se pone en el medio. ¡Ahora, ahorra un par de retrasos en la puerta (en comparación con un flip flop en cualquier extremo)!

diseño basado en pestillo

"Caracterizado por una topología maestro-esclavo": eso suena más como un detalle de implementación, en lugar de una característica de comportamiento definitoria. Desde el punto de vista del comportamiento, un flip-flop (según su definición) es una memoria de un solo bit que se activa por el borde. En la práctica, la magia de implementación requerida para aproximar la activación de borde requiere un segundo elemento de almacenamiento.
@OliverCharlesworth: Bueno, es un detalle de implementación. Así como un detalle físico, conductual, estructural y topológico. No se puede simplemente llamar a un pestillo un flip flop porque lo parece. Es posible que pueda salirse con la suya, pero para usarlos al máximo necesita saber la diferencia. Si separa un flip flop, tiene dos pestillos separados de fase opuesta. Puedes rellenar la lógica en el medio. Esto es más rápido que tener una chancleta en cada extremo. También permite el "préstamo de tiempo" a través de un límite de ciclo, que es un concepto muy importante para los diseños de alta velocidad.
Aquí hay algunas imágenes más útiles de DFF que pueden ayudar, vea la última. El DFF publicado anteriormente es confuso debido al bloqueo en fases opuestas del reloj (es decir, el maestro se bloquea en el flanco ascendente, el esclavo se bloquea en la caída). electronics.stackexchange.com/a/84247/42957
Sería bueno ver un ejemplo de un verdadero flip-flop monofásico activado por borde ("TSPC" DFF) aquí.

Mucha gente se referirá a los dispositivos con reloj como "flip flops" y a los dispositivos sin reloj como pestillos. Cuando lo aprendí, era "chanclas con reloj" y "chanclas". Cualquiera de los dos puede ser disparado por el borde.

Hay suficiente ambigüedad que, cuando es importante, confíe en los números de pieza, las hojas de datos y los diagramas de tiempo, y no en las descripciones de palabras.

Entonces, ¿un GTO-SCR también es un flip-flop?

Gracias a todos los que han respondido a mi pregunta. Como era de esperar, hay cierto desacuerdo. Lamentablemente, la semántica suele ser más importante que la comprensión cuando se trata de exámenes. Si necesito discutir con una junta de examen por calificar incorrectamente el examen de un estudiante de Ciencias de la Computación de nivel A (y lo he hecho en el pasado), quiero estar en una posición sólida. Pensé en compartir con ustedes un par de páginas del libro de texto oficial del curso A Level.

El primer diagrama es un pestillo SR bajo activo. El libro lo llama flip-flop.

En el texto, el libro dice: "Al usar dos flip-flops, podemos crear un circuito llamado flip-flop tipo D que usa un circuito controlado por reloj para controlar la salida, retrasándolo en un pulso de reloj. La D significa retraso ." Este texto parece referirse a la configuración maestro/esclavo. El segundo diagrama (figura 14.2) está etiquetado como un flip-flop tipo D. En realidad, es un pestillo D activo con compuerta alta.

¡No es muy útil!

Voy a decidirme por "Un flip flop se caracteriza más típicamente por una topología maestro-esclavo". como ha sugerido jbord39, con la advertencia de que el término flip-flop se usa a menudo para referirse a un pestillo activado por el borde y, a veces, a cualquier tipo de pestillo. Creo que de ahí viene by book, aunque no llegue allí de manera convincente.

Gracias de nuevo a todos.

ingrese la descripción de la imagen aquí ingrese la descripción de la imagen aquí

Sí, ese libro es directamente engañoso. Además, D significa Data, not delay... lol La parte importante es entender cómo funcionan y no quedar demasiado atrapados en la semántica. Expliqué la semántica como me la explicaron en las empresas donde he trabajado. Podría variar según el área y el nivel de experiencia (especialmente en relación con las partes internas de las puertas lógicas, que es en lo que trabajo).
Tengo que estar de acuerdo con jbord39. Como he mostrado en mi respuesta, esa entrada E solo permite que los datos afecten la salida. Sin embargo, tienes libros de texto que contienen información incorrecta. Bastante molesto en realidad.

Un flip flop es diferente a un pestillo. Ambos son circuitos biestables, pero de hecho son dos cosas diferentes.

El pestillo tiene un pin de habilitación y escucha la entrada/entradas de datos solo cuando este pin es alto. Cuando está bajo, el pestillo se congela y memoriza su estado. Ahora, incluso si manipula las entradas, no reaccionará.

El flip flop contiene un pin de reloj en su lugar, que reacciona solo a pulsos cambiantes (cambios de nivel). Piensa en una onda cuadrada. El tiempo transitorio entre apagado y encendido; apagado y encendido es el tiempo en que el circuito reacciona a las señales de entrada. Solo entonces está disponible para cambiar, no cuando el pin está estable y completamente encendido.

Tiempo de reacción del flip-flop

Tenga en cuenta que las líneas verdes representan el período en el que escucha la entrada y las líneas rojas el período en el que no lo hace. El pestillo permite la entrada solo durante los períodos que se muestran con las líneas rojas superiores.

El SR independiente no es un circuito factible en la práctica.

Créditos a jbord39 por señalar el error. Imagen tomada de radio-elctronics.com y editada.

Un flip flop no es un pestillo, pero se puede construir a partir de dos pestillos de fase opuesta espalda con espalda.
Edité la respuesta @ jbord39
Gracias, @Peter Mortensen. No los vi.

Los términos que usa en su pregunta están 100% en línea con lo que he escuchado en el contexto del diseño de circuitos integrados analógicos. Los pestillos tienen una señal de habilitación sensible al nivel, mientras que las chanclas tienen señales de habilitación sensibles al borde llamadas "reloj". He notado algunos lugares en línea o en algunos libros que parecen usar el término flip flop para ambos tipos, lo que puede tener sentido si solo piensa en el estado del circuito "flip flop" entre dos puntos estables, pero siempre que los diseñadores están hablando de En los circuitos en los que trabajo, los pestillos son sensibles al nivel y los flip flops (o también comúnmente solo "flops") son sensibles a los bordes.

Acerca de su otra pregunta sobre si diseñar un flip flop como un pestillo con un detector de bordes frente a un par de pestillos maestro-esclavo. De cualquier manera puede funcionar, suponiendo que haya suficiente retraso en su detector de bordes. Los pestillos tendrán una cantidad mínima de tiempo de activación. Sospecho que es más difícil hacer un flip flop de alta velocidad usando la técnica del detector de bordes, y el tiempo de configuración/retención puede variar más según el proceso/voltaje/temperatura.

Me pregunto por qué rara vez veo fallas implementadas con un par maestro/esclavo con umbrales lógicos que no se superponen (por lo que un voltaje de entrada por debajo de VDD/4 habilitaría al maestro, y un voltaje por encima de VDD/2 habilitaría al esclavo. Si hay varios fracasos en cascada alimentados con una señal de entrada ruidosa o que aumenta lentamente, el comportamiento sería confiable siempre que, en un flanco ascendente, ninguno de ellos vea un voltaje por debajo de VDD/4 después de que alguno haya visto un voltaje por encima de VDD/2.
@supercat ¿Estás hablando de histéresis?
@CortAmmon: No, algo mejor. Si se conectan en cascada dos flip-flops con disparadores Schmidt independientes, puede producirse una operación incorrecta si el primer flop reconoce el borde del reloj y propaga la entrada a la salida antes de que el segundo flop reconozca su borde del reloj. Si los flip flops usan umbrales de entrada divididos, el segundo flop capturaría su entrada cuando el reloj supere el umbral inferior, pero la salida del primer flop no cambiaría hasta que el reloj alcance el umbral superior.

(Pase al final si desea saber si el último circuito del OP es flip-flop o pestillo).

En términos básicos, un Flip-Flop es un arreglo de puertas lógicas (o componentes) que permite el enganche de 2 estados junto con un pin de reloj que permite estos cambios de estado.

Ahora aquí está la diferencia entre un flip-flop y un pestillo. Los pestillos son asíncronos, mientras que los flip-flops son síncronos.

  • Los pestillos asíncronos no requieren un pin de actualización, que comúnmente se llamaría CLKpin (abreviatura de reloj) en un flip-flop. Todo lo que les importa es si las entradas están en un estado específico, ya sea HIGHo LOW. Cuando se activa una cierta combinación de HIGHs y LOWs en la entrada, es cuando el circuito decide realizar una acción y el resultado deseado se devuelve "inmediatamente". Hay 4 acciones posibles en un pestillo.

    1. Hacer nada
    2. Establecer QenHIGH
    3. Establecer QenLOW
    4. El estado inválido (supuestamente invertir el valor de Q)

    Tenga en cuenta que Q'depende de Q.

Un ejemplo es el pestillo SR que demuestra las 4 acciones posibles que puede realizar un pestillo:Pestillo RS

  1. Cuando Ses LOWy Res LOW, nada cambia.
  2. Cuando Ses HIGHy Res LOW, Qse establece en HIGH.
  3. Cuando Ses LOWy Res HIGH, Qse establece en LOW.
  4. Cuando Sis HIGHy Ris HIGH, Qse invierte, a una velocidad "impredeciblemente" rápida. Este estado no es válido.
  • Los flip-flops síncronos le permiten establecer un valor para los pines de datos. Esto significa que solo le importa cuál es el estado de estos pines. Sin embargo, el circuito aún no decide realizar ninguna acción en la salida. Tienes el CLKpin como se mencionó anteriormente. Cuando el CLKpin cambia de estado (ya sea de LOWa HIGH, viceversa o incluso ambos), los pines de datos se "capturan" y el flip-flop realiza una acción basada en la combinación de HIGHs y LOWs de los datos capturados de los pines de datos. Hay dos acciones para el CLKpin.
  1. Hacer nada
  2. "Capture" datos de los pines de datos y realice una acción en la salida en función de los valores de los pines de datos en ese momento específico.

Nuevamente, hay 4 acciones posibles que el circuito puede hacer en la salida.

  1. Hacer nada
  2. Establecer QenHIGH
  3. Establecer QenLOW
  4. Invertir el valor de Q(ahora es válido porque solo lo hace una vez)

ESTO NO ES UN FLIP-FLOP:

ingrese la descripción de la imagen aquí

Pero, ¿por qué puedes preguntar? Ese Epin no es un pin de reloj. Los pines de reloj permiten que el circuito analice la información de los pines de datos UNA VEZ, donde esa información se envía como instrucciones para realizar acciones específicas en la salida. Sin embargo, habilitar pines como este permite que el circuito analice la información de los pines de datos siempre que se mantenga alto y establezca constantemente los valores de la salida. Por lo tanto, es un pestillo. (Gracias a jbord39 por señalar mi error).

Entonces, el flip-flop es como un pestillo, excepto que necesita un paso adicional de "confirmación", que es el CLKpin.

Entonces, ¿es ese último circuito de la pregunta del OP un flip-flop? Intente mantener la C en alto y vea si la salida cambia cuando cambia el valor de D. Si la salida cambia, debería llamarse enable en su lugar y es un pestillo. Pero si la salida no cambia (en cuyo caso, ese es el caso), entonces es un flip-flop.

Las imágenes provienen de Wikipedia.

No, muchos pestillos tienen pasadores de reloj. nxp.com/documents/data_sheet/74HC_HCT373.pdf de hecho, el circuito que mostraste es un pestillo, no una chancleta...
@jbord39 ? ¿Qué pin de reloj? Y habilitar pin es diferente a un pin de reloj.
@ jbord39 y ¡ups!, tienes razón. Los dos circuitos inferiores son pestillos. Por favor, reconsidere mi respuesta.
Déjame ver si entiendo. Los flip flops verifican cada entrada y encienden una salida y un pestillo verifica el reloj y actúa si es 1, emitiendo el valor de D. Entonces, el pestillo SR ES un flip-flop ya que no está cronometrado, pero el cerrojo D es un cerrojo verdadero.
@DanielTork La cuestión es que tienes varios "relojes" y un reloj no puede alternar entre pines y también servir como pin de datos.
Es obvio. Aún así, ¿eso hace que mis suposiciones sean incorrectas?
Las chanclas tienen relojes, mientras que los pestillos no. Eso es lo que entiendo de tu respuesta.