Número binario divisible por 3

-1

Tengo que diseñar un circuito en serie. Hay 3 entradas x0x1x2 que representan un número binario de 3 dígitos. Hay una salida y. y = 1 si y solo si el número actual multiplicado por el número anterior es divisible por 3. Se supone que debo usar T FlipFlops. Estaba pensando que podría escapar usando solo un FF para recordar si el número anterior es divisible por 3. De esa manera, si el número actual o el anterior son divisibles por 3, también lo será su producto.

Cuando intenté diseñar las tablas y las tablas de estados usando solo un FF, la lógica era demasiado, algo así como 20 puertas más el FF. Por otro lado, si uso 3 FF para recordar el número anterior completo, la tabla es realmente grande, como 64 filas, que probablemente pueda reducir.

¿Cuál es la solución ideal? ¿Hay algún truco o atajo que me esté faltando?

Gracias por tu ayuda.

    
pregunta eventhorizon02

1 respuesta

2

3 es un número primo, por lo que solo se debe verificar un número si el anterior ya se verificó y su divisibilidad por 3 se almacena como un bit. No hay tantos números de 3 bits para ser reconocidos. Son 0,3 y 6 en decimal. Debes obtener = 1 si tu número es uno de esos. O booleano O con la divisibilidad almacenada.

Por supuesto que hay un truco para un principiante. Cómo almacenar un poco a T-FF. Con D-FF sería sencillo.

EDITAR debido a los comentarios:

Obviamente, alguien alimenta el número de entrada A, B y C (= ABC) de 3 bits y una señal G que muestra que es válido usar ABC. Mientras G = 1, se supone que la entrada ABC es estable. Ese G se llama normalmente "Strobe". Es un poco diferente a un pulso de reloj. Si G fuera un pulso de reloj, solo el borde de transición de G de 0 a 1 sería la señal "ABC es válido". Así que dejemos que G sea el estroboscópico "ABC es válido". Que G no se haya dicho que exista en el texto del problema, pero sin eso, todo lo demás sería una tontería. Sin G (luz estroboscópica o pulso de reloj) no existiría una corriente ni una anterior.

Tu circuito debería simplemente repetir G como una salida. No se quería, pero es esencial para el sistema que está interesado en los resultados.

Su otra salida, digamos W, dice si el producto de ABC actual y ABC anterior es divisible con 3.

Necesita un circuito combinatorio que tenga una salida X. X = 1 si la entrada ABC está en decimal 0, 3 o 6, de lo contrario X = 0

Almacene X en un almacenamiento plegable cuando G caiga de 1 a 0. Alimente la salida de ese almacenamiento a una puerta OR con G. La salida de la puerta OR es su W.

    
respondido por el user287001

Lea otras preguntas en las etiquetas