Contadores y puertas lógicas elementales

Necesito crear un contador que cuente de 59 a cero. Para eso, creé una simulación en el software Proteus donde usé 4510 IC como contador descendente y creé el siguiente circuito.

ingrese la descripción de la imagen aquí

Ahora, pensé que, dado que este IC 4510, cuando funciona en modo de conteo regresivo, tiene una salida de Co en cero lógico cada vez que alcanza el valor cero, eso significa que cuando estos dos IC tienen Co = 0, necesito restablecerlos al valor requerido, que en mi caso es 59, de lo contrario comenzaría desde 99 hacia abajo.

Funciona bien cuando se inicia el circuito, porque en realidad comienza en 59 y baja hasta 10 y luego, en lugar de bajar a 9, se restablece a 59, que no es lo que debería haber sucedido, ya que ambos Co deberían ser bajo cuando tengo 00 combinación en la salida.

¿Alguien tiene una idea de cuál podría ser el problema aquí? ¡Cualquier ayuda apreciada!

¿Están realmente flotando las líneas de reinicio?
Sí, de hecho los configuré en cero justo después de publicar esto, no cambia nada.
No veo la razón de U14, creo que un inversor del !CO de U12 fue suficiente; Pondría los As en niveles fijos en lugar de dejarlos abiertos y conectarlos a U14...
@aschipfl Inverter es realmente una buena idea, sin embargo, el resultado es el mismo que antes, se reinicia después de 10

Respuestas (2)

Hay una nota sobre esto en la hoja de datos original de RCA (ahora TI): ingrese la descripción de la imagen aquíO, su problema ocurre en la transición entre 10 y 09, cuando hay actividad de CO válida para ambos contadores. Podría ser que en el modelo de Proteus, un CO baja antes de que el otro tenga la oportunidad de volver alto, una condición de carrera.

De cualquier manera, las redes RC muy pequeñas entre las salidas CO y la puerta NOR filtrarán esta falla. Comenzaría con una constante de tiempo de 1 us, como 100 ohmios y 10 nF.

La constante de tiempo de 1 us no funciona, se restablece en 52 y luego
Intenté restablecer (o preestablecer, ya que PE es lo que estoy activando) usando exactamente CD4071 con un inversor y ¡funciona bien!

El problema es que la entrada PE funciona de forma asíncrona con respecto al reloj, y el pequeño glitch que se produjo en la transición 10 → 9 la activó.

Podría agregar otra puerta para que la entrada PE solo se active cuando el reloj esté bajo. Entonces, el hecho de que el reloj esté alto enmascarará la falla.

Sin embargo, esto crea un problema diferente: el estado 00 solo durará medio reloj, al igual que el estado 59. Si no le importa a su aplicación, podría cambiar el valor preestablecido a 60, luego su contador iría

  ____      ____      ____      ____       ____      _
_/    \____/    \____/    \____/    \_____/    \____/
_ _________ _________ ____ ____ _________ _________ _
_X___02____X___01____X_00_X_60_X___59____X___58____X_

Tenga en cuenta que aún existe el peligro de que este tipo de restablecimiento de "falla" no restablezca de manera confiable ambos contadores.

De lo contrario, debe cambiar a un contador diferente que tenga una función de carga verdaderamente síncrona.