7 votos

¿Cuándo debo utilizar los flip flops SR, D, JK o T?

En clase he aprendido sobre los chanclos SR, D, JK y T. Por lo que tengo entendido, se puede construir cualquier diseño utilizando cualquiera de ellos. Así que mi pregunta es, a la hora de hacer un diseño, ¿cómo se elige cuál utilizar? ¿Cuál se utiliza más en los circuitos comerciales y por qué?

7voto

RWH Puntos 21

En la lógica discreta (como la serie 74xx), se utiliza cualquier opción que permita diseñar el circuito con el menor número de piezas y sin violar los requisitos de temporización.

En las FPGAs, la mayoría de las veces se diseña en HDL (VHDL o Verilog) y la herramienta de síntesis resuelve por ti qué utilizar. Pero la tecnología subyacente básicamente sólo proporciona flip-flops D, por lo que la herramienta de síntesis resuelve cómo implementar lo que se codifica con flip-flops D.

En los ASIC, un diseñador de alto nivel vuelve a diseñar con HDL. Pero probablemente (los ASICs no son mi área) la biblioteca del proveedor de ASIC puede proporcionar otras opciones más allá de los flip-flops D, y la herramienta de síntesis averiguará cómo implementar el código utilizando los componentes de la biblioteca disponibles. Podría elegir uno u otro para optimizar la velocidad del circuito o el área del chip.

4voto

Morris Maynard Puntos 49

Para diseños sencillos, un tipo puede tener una clara ventaja sobre los demás dependiendo de lo que se quiera conseguir y de las características del Flip-Flop tabla de verdad :

D Flip-Flop  T Flip-Flop  J-K Flip-Flop  S-R Flip-Flop
    D Q          T Q         J K Q           S R Q
    0 0          0 Q         0 0 Q           0 0 Q
    1 1          1 Q'        0 1 0           0 1 0
                             1 0 1           1 0 1
                             1 1 Q'          1 1 X

D Flip-Flop: Cuando el reloj pasa de 0 a 1, el valor recordado por el flip-flop se convierte en el valor del D entrada ( Datos ) en ese instante.

T Flip-Flop: Cuando el reloj pasa de 0 a 1, el valor recordado por el flip-flop cambia o permanece igual dependiendo de si el T entrada ( Toggle ) es 1 o 0.

J-K Flip-Flop: Cuando el reloj sube de 0 a 1, el valor recordado por el flip-flop cambia si el J y K entradas son ambas 1, permanece igual si ambas son 0, y cambia a la K valor de entrada si J y K no son iguales. (Los nombres J y K no representan nada).

Flip-Flop R-S: Cuando el reloj sube de 0 a 1, el valor recordado por el flip-flop no cambia si R y S son ambos 0, se convierte en 0 si el R entrada ( Reiniciar ) es 1, y se convierte en 1 si el S entrada ( Establecer ) es 1. El comportamiento en no especificado si ambas entradas son 1. (En Logisim, el valor en el flip-flop permanece sin cambios).

O, tal vez, el combinación específica de puertas puede ser beneficioso para su circuito:

S-R NOR

S-R NAND

S-R Clocked

D

J-K

T

El Flip-Flop SR es el Flip-Flop básico o fundamental. Es el más sencillo porque tiene el menor número de puertas. Pero también tiene un estado en el que el comportamiento no está especificado. Lo que puede ser malo si tienes que diseñar alrededor de él. O podría ser bueno si quieres explotar ese comportamiento no especificado por alguna razón (aunque no puedo pensar en una y la mención de su uso en la aplicación tiene una "cita necesaria" en Wikipedia ).

Sin embargo, como mencionó The Photon, los cortes de la FPGA son esencialmente tablas de consulta (LUT), multiplexores, unidades aritméticas lógicas (ALU) y flip-flops D. Basándome en esto, diría que el Flip-Flop D es el más utilizado en los circuitos comerciales debido a su abundancia en la lógica programable.

FPGA slice

0voto

Alex Andronov Puntos 178

Los dispositivos de enclavamiento suelen tener tres tipos de entradas: entradas síncronas, entradas asíncronas y entradas de reloj. Cualquier dispositivo que tenga alguna entrada síncrona debe tener al menos una entrada de reloj asociada; la gran mayoría de los dispositivos que tienen entradas síncronas tienen exactamente una entrada de reloj que está asociada a todas ellas.

Cada entrada de reloj se especifica como operando en un flanco ascendente, un flanco descendente, o ambos. Si una entrada de reloj se especifica como operando en el flanco ascendente, eso significa que el dispositivo se disparará si la entrada pasa de baja a alta. Un dispositivo que se especifica como operando en el flanco descendente, se disparará cuando la entrada pase de alto a bajo. Un dispositivo que se dispara en ambos tipos de transiciones se disparará siempre que la entrada cambie de estado.

El estado de un dispositivo puede verse afectado cada vez que sus entradas asíncronas cambien, pero el único momento en que las entradas síncronas afectarán al funcionamiento de un dispositivo es cuando se active la entrada de reloj asociada.

Los tres tipos más básicos de dispositivos de cierre son el cierre RS (a veces llamado flip-flop RS) el latch transparente y el flip flop de tipo D.

Un latch RS tiene dos entradas asíncronas, R y S: cuando la entrada R está en su estado activo (algunos latches usan entradas activas-elevadas, y otros usan activas-bajas), la salida irá a bajo; cuando la entrada S está activa, la salida irá a alto. Cuando ninguna de las dos entradas está activa, la salida permanecerá alta o baja según la última entrada que haya estado activa.

Un latch transparente tiene dos entradas asíncronas, D y E. Cuando la entrada E está activa, el estado de la salida reflejará el estado de la entrada D. Cuando la entrada E está inactiva, la salida mantendrá el último estado que tenía mientras E estaba activo.

Un flip flop de tipo D tiene una entrada sincrónica D, y una entrada de reloj. Cuando se dispara el reloj, el dispositivo enclavará el estado de la entrada D y, en un breve espacio de tiempo, comenzará a emitir el valor enclavado. La entrada D será ignorada en todos los demás momentos. La mayoría de los tipos de flip-flop, aparte del flip-flop RS (que en muchos casos significa realmente "latch RS") tienen entradas síncronas que reciben el nombre del tipo de flip-flop (por ejemplo, un flip-flop JK tiene entradas J y K).

Mientras que los dos primeros dispositivos anteriores son completamente asíncronos, y el último es completamente síncrono, muchos flip flops incluyen una señal de reinicio asíncrona; cualquier vez que esa señal esté activa, la salida se forzará incondicionalmente a baja, independientemente de lo que hagan las otras entradas. Algunos también tienen un preajuste asíncrono que puede forzar la salida a nivel alto. Estos dispositivos suelen considerarse síncronos si están cableados de forma que (1) las señales de reset sólo se activen en respuesta a un reset del sistema o a otro evento similar; (2) la señal de reset no cambie de estado cerca de ningún flanco de reloj activo, a menos que se pueda garantizar que dicho flanco de reloj no haga que el dispositivo cambie de estado, esté o no activa la señal de reset.

0 votos

J y k son en realidad las iniciales del inventor, Jack Kilby

0voto

Francis Cugler Puntos 111

Sé que esta pregunta es más antigua, pero sigo pensando que es actual y relevante y me gustaría reflexionar sobre esta parte de la pregunta del OP:

¿cómo se elige cuál utilizar?

Según tengo entendido, el latch SR básico sin entrada de reloj es simplemente un latch. Si necesitas bloquear temporalmente una salida de alguna operación que no va a cambiar y que además es agnóstica de cualquier operación de reloj, entonces un latch SR puede ser útil; sin embargo, hay que tener una consideración cuidadosa al diseñar el circuito para que ambas entradas S&R no se pongan altas al mismo tiempo.

Cuando las entradas se bloquean de forma sincrónica basándose en un flanco de reloj, los cierres SR y los DFF son los más utilizados. Entonces, ¿qué pasa con los tipos JK y T?

Consideremos algunos tipos diferentes de aplicaciones dentro del hardware. Si estás diseñando un modelo de caché para una CPU y necesita estar disponible y ser rápido, probablemente querrás un latch SR cerrado o un DFF, dependiendo de tu diseño.

Ahora cuando se trata de diferentes tipos de memoria agnóstica de los tipos de serie o paralelo, pero como en ROM y RAM. La memoria RAM suele ser lenta, ya que viene a través del bus, por lo que tiene tiempo antes de que la siguiente instrucción de E/S sea visible para ella, por lo que en el caso de la RAM un JK - Maestro Esclavo FF podría ser una solución viable, sin embargo, este tipo dinámico de ram es más caro, ya que cada JK tiene un DFF como su maestro y un SR latch como su esclavo. Así que por cada bit de memoria tienes dos latches o flip flops y casi duplicas la cantidad de puertas, pero la memoria es más robusta y está protegida. Podrías usar SR Gated Latches o DFFs dentro de la RAM para ahorrar espacio, pero cuando lo haces la memoria es entonces estática y se vuelve volátil y tienes que refrescarla constantemente.

Ahora bien, si estás diseñando una ROM en la que la CPU obtendrá datos de este tipo de registros para cargar conjuntos de instrucciones, direcciones de memoria y contenidos de datos, aquí es donde los DFF se utilizan más comúnmente por su tamaño compacto y su velocidad.

Queda un tipo de FF que es el Toggle FF. Entonces, ¿cuándo querrías usar este tipo de flip flop?

Con este tipo de FF se puede utilizar cuando se construye la Lógica de Control que decodifica conjuntos de instrucciones. Cuando entra una secuencia de bits específica y necesitas decir que una línea se ponga en alto para realizar una operación y luego deshabilitarla después de la operación pero antes del siguiente ciclo es cuando necesitas ser capaz de alternar esta línea de control. Así que en este caso es donde probablemente quieras usar un tipo T porque quieres ser capaz de recordar el estado en el que está actualmente pero también tener la capacidad de cambiar o alternar para que esté listo para el siguiente ciclo de instrucción.

Soy autodidacta y esto es lo que he aprendido en los últimos meses y, por favor, corregidme si encontráis algún tipo de error en mis afirmaciones. ¡Además, si desea una excelente explicación de este tipo de circuitos siempre se puede hacer una búsqueda en Youtube para Ben Eater! Él cubre la mayoría de ellos, el único que creo que no va en demasiado es el tipo de palanca, pero, de nuevo, cuando se está construyendo los contadores que tipo de obtener una comprensión de ellos.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X