Contador secuencial para repetir la secuencia de conteo

0

Soy consciente de que estoy diseñando un diseño de contador síncrono para una secuencia de conteo en la que escribo la tabla de estados con el estado actual y el siguiente, y luego seguí las entradas del flip flop (rellenadas con la tabla de excitación del flip flop correspondiente). Pero cómo diseñar si los estados se repiten, no sé cómo seguir adelante y, por lo tanto, necesito ayuda. Cómo diseñar un contador síncrono para una secuencia de conteo que se repite. He enumerado un ejemplo.

    
pregunta Fawaz

1 respuesta

1

La respuesta es 3.

En realidad estás contando una secuencia de 8 estados. Entonces necesitas 3 bits ... = 3 flip-flops.

Los valores 0,1,2 y 3 se toman del segundo y tercer bit del contador. Ignoras el primer "bit".

O si lo prefiere, puede referirse a la primera etapa como un divisor de reloj "/ 2" para su contador de dos bits.

Las máquinas de estado pueden ser simples o pueden llegar a ser bucles extremadamente complicados, introduciendo bestias dependientes de lo que dan a los ingenieros pesadillas.

En tus ejemplos simples, en realidad estás pidiendo dos cosas diferentes.

Primero, hacer una secuencia a través de un patrón de N números y luego repetir. Para eso necesitas contar dónde estás en la secuencia usando tu contador hasta N. Cuando se alcanza N, necesitas lógica para restablecer el contador.

Segundo, necesita lógica para SALTAR el valor apropiado en cada cuenta.

Si este último es extremadamente complejo o es probable que cambie durante el desarrollo y la experimentación, generalmente se realiza al ingresar el conteo como una dirección en un E-Prom que está programado para dar el valor correcto en sus pines de datos de acuerdo con valor del contador.

Uno de dichos pines de datos se puede usar para restablecer el contador para que pueda tener un valor de N diferente, algunos se pueden usar para realimentarse sobre sí mismo como más pines de dirección para cambiar de página.

Como he dicho, puede complicarse mucho.

    
respondido por el Trevor_G

Lea otras preguntas en las etiquetas