Diseño usando solo D FF un contador que va de 0-2-1-5-7 [cerrado]

-2

Tenga esto como un ejercicio en mi libro de texto de diseño lógico. Sé cómo hacer esto con lógica adicional, pero el desafío viene de tener solo D flip-flops disponibles. Supongo que hay al menos 3 de ellos para el estado, pero tal vez algunos adicionales para hacer el bucle. También estoy buscando una manera de deducir lógicamente la solución a este problema.

Editar: El texto dice: "Diseñe un contador siguiendo un bucle de conteo de 0- > 2- > 1- > 5- > 7 usando solo flipflops D y cables".

    
pregunta Andrei Onoie

2 respuestas

1

Usando SOLAMENTE DFF, usaría 15 DFF y haría tres bucles de cinco. (La salida vuelve a la entrada) con valores preestablecidos. Por lo tanto, el primer bucle está preestablecido en 00111 (ls bit), segundo 01001 (bit medio), tercer 00011 (bit ms).

Elaboración:
Si escribes la secuencia de números en binario, obtienes:

   000
   010
   001
   101
   111

Luego toma una columna y la convierte a 5 DFF en una fila, pero conecta la salida del último a la entrada del primero. Si registra esos DFF, el patrón girará en círculo.

Usando algún tipo de reinicio puede establecer o borrar los DFF a los valores preestablecidos de una columna. Si marca los 15 DFF, los patrones girarán. Si tomas tres DFF 'adyacentes' verás que la secuencia viene.

1 -> 1 -> 0 -> 0 -> 0  => this is
1 -> 0 -> 0 -> 1 -> 0  => where your
1 -> 1 -> 1 -> 0 -> 0  => numbers appear

En el 'diagrama' de arriba, la secuencia aparece solo una vez. Para repetirlo, devuelve la salida a la entrada

+-> 1 -> 1 -> 0 -> 0 -> 0 -+  => this is
+-> 1 -> 0 -> 0 -> 1 -> 0 -+  => where your
+-> 1 -> 1 -> 1 -> 0 -> 0 -+  => numbers appear
|                          |
+----------<-------<-------+

Puede que no sea elegante, ya que es una fuerza bruta. Pero funciona y puedes usarlo para cualquier patrón. Nunca lo haría así en la vida real a menos que no sea demasiado grande y tenga que ejecutarse a, por ejemplo. 10 GHz.

    
respondido por el Oldfart
0

Hay dos formas básicas de tratar un problema como este.

  1. Use un contador binario regular o un registro de desplazamiento y decodifique las salidas para generar los bits de los números que desea que presente el contador.

  • Averigüe la lógica de la secuencia de conteo para saber cuándo presentar un 1 o un 0 en cada enclavamiento según el valor del estado anterior.
  • Elprimermétodopresentaunasalidamenossincronizada,yaquelaondulaciónatravésdelalógicadedecodificaciónpuederetrasaralgunosbitsmásqueotros,porloquenoesraroqueseproduzcaunasincronizacióndesincronizaciónenlasalida.

    Lamejormaneradependerádelacomplejidaddelasecuenciadedatosydelaimportanciadelsincronismo.

    Simulator

    Pero si realmente solo puedes usar chanclas ...

        
    respondido por el Trevor_G

    Lea otras preguntas en las etiquetas