Diseñar un contador síncrono de 3 bits

1

Soy nuevo en toda la escena del circuito electrónico, he intentado trabajar durante horas cómo diseñar un contador síncrono de 3 bits utilizando D-Flip Flops para contar en una secuencia dada.

Por ejemplo, digamos que la secuencia de contadores es 111- > 010- > 011- > 001, ¿cuál es el mejor enfoque para este problema?

Cualquier ayuda muy apreciada.

    
pregunta Ben E

3 respuestas

2

Puede crear un circuito de 3 entradas y 3 salidas que asigna un estado en la secuencia de conteo a la siguiente. Luego alimente las 3 salidas Q de los FF a este circuito combinatorio y conecte la salida del circuito combinatorio a las entradas 3 D de los FF. Conecte las 3 líneas de reloj del FF juntas, y luego cada vez que aparezca un borde activo, los flip flops actúan como un registro de 3 bits, y simplemente cargan el siguiente valor.

    
respondido por el JustJeff
2

La forma oficial en la que te enseñarán en la escuela es aprender Karnaugh Maps , y usar uno para el trabajo. fuera de la lógica para calcular el siguiente valor de cada bit. Luego, determina qué conjunto de puertas implementará dicha lógica y lo conectará todo.

No me molestaré en decirte eso. Le diré dos formas en que lo hace un pirata informático: la forma fácil y la manera inteligente.

La manera fácil

Obtenga tres chips multiplexor (MUX) uno de ocho, como TI SN74LS151 . Este chip utiliza tres líneas (A, B, C) para elegir una de las ocho entradas (D0 a D7) para enrutar a su salida (Y).

Conecte las tres salidas D flip-flop (DFF) a las tres clavijas de selección de cada chip, con el bit menos significativo que va a A y el bit más significativo a C. Conecte la salida Y de cada MUX a la entrada D de su DFF respectivo.

El pin W es una versión invertida de Y; No lo necesitas, así que no lo conectes. El pin G es una habilitación baja activa; Conectarlo a la lógica 0 (GND).

En este punto, todo lo que tiene que hacer es conectar cada pin D en cada multiplexador a VCC o GND para establecer el siguiente estado para los DFF, donde el número de entrada D es el estado actual . Para su ejemplo (111- > 010- > 011- > 001), el primer estado es 7, y avanza a 2, por lo que los pines D7 en el bit 2 y bit 0 MUXes están vinculados a GND, y bit 1 MUX está vinculado a VCC. El siguiente estado es 3, por lo que los pines D2 en el bit 0 y 1 MUXes son teid a VCC y el que está en el bit 2, MUX está vinculado a GND.

Cualquier pin D no utilizado en los MUXes debe estar atado a algún nivel; en este caso, recomendaría vincularlos a VCC ya que su primer estado es 111.

Lo mejor de este circuito es que puede cambiar completamente el orden de recuento simplemente recableando los D pins. Además, así es como los FPGA modernos implementan la lógica combinatoria, con lo que son efectivamente tablas de búsqueda.

El camino inteligente

Puede obtener un bit de entrada más para su función al darse cuenta de que puede conectar los pines D a Q o Q-bar desde el LSB DFF, y no solo VCC o GND. En su ejemplo, podría usar un multiplexor doble 4-a-1 como el SN74LS153, y eliminar un chip MUX (uno de ellos puede manejar dos entradas DFF).

    
respondido por el Mike DeSimone
0

Para cada bit, identifique cuál de los ocho estados debería causar que sea "1" en el siguiente estado, y cuáles deberían hacer que sea cero. Luego escriba una función que sea alta o baja para la combinación apropiada de entradas.

    
respondido por el supercat

Lea otras preguntas en las etiquetas