Sie sind auf Seite 1von 11

Diseño de contadores

Muchas veces se desea tener contadores que sigan secuencias de


conteo que no sea la binaria, en ese caso ya no se dispondrá
de circuitos integrados que contengan el contador, sino que
debemos diseñarlo. Al ser el contador un circuito secuencial
para diseñarlo se utilizarán las técnicas de diseño de
circuitos secuenciales. No es objeto de este curso un análisis
profundo de los procedimientos de síntesis de circuitos
secuenciales en general. Solo se analizará el procedimiento
para el caso de los contadores, lo que implica una gran
simplificación del procedimiento.
En este modelo el efecto en las salidas de todas las entradas
previas se representa por el estado del circuito. Esto también
determina el próximo estado del circuito. La relación existente
entre entradas, salidas, estados presentes y estados futuros
puede especificarse por medio de tablas de estado y diagramas
de estado.
Diagrama de estados
Describe gráficamente el circuito secuencial, el contador en
este caso, indicando cual es el estado siguiente en función
del estado actual y de las entradas, que para el caso de
contadores no existen.
En este diagrama, un estado se representa por un círculo, y la
transición se indica con líneas o arcos que conectan los
círculos.
Dentro de cada círculo se escribe un número binario que
representa el estado.
La figura muestra el diagrama de estados de un contador de 3
bits.

Imagen 1. Diagrama de estados.


Tabla de transiciones

La tabla de estados consiste de tres columnas denominadas


estado presente, estado futuro y entradas de los flip flops.

El estado presente denota el estado de los flip flops antes de


la ocurrencia de un pulso de reloj.

El estado futuro muestra el estado de los flip flops después


del pulso de reloj.
Las entradas de los flip flops muestran que valores deben
recibir las entradas de los flip flops para pasar del estado
presente al estado futuro después del pulso de reloj.

Es importante recordar las tablas de excitación de los flip


flop ya que la función de entrada se obtiene a partir de estas.
De hecho el procedimiento consiste en determinar qué entrada
necesitan los flip flops para pasar del estado presente al
estrado futuro.

Procedimiento de Diseño.

1. Realizar el diagrama de estado. Del número de estados


diferentes se obtiene el número de flip flops.

2. Realizar la tabla de transiciones. De la tabla se obtienen


las funciones de entradas de los flip flops. Se selecciona el
tipo de flip flop para el diseño (JK, T, D)

3. Minimización de las funciones de entradas utilizando mapas


de Karnaugh.

4. Dibujar el diagrama circuital

Ejemplo de diseño: contador binario ascendente de 3 bits.

Para entender el procedimiento de diseño, sigamos los pasos


para diseñar un contador síncrono binario ascendente de 3 bits
. La cuenta será 000, 001, 010, 011, 100, 101, 110, 111.. y
así de nuevo. (En decimal corresponde a la cuenta
0,1,2,3,4,5,6,7 y de nuevo a 0).

Paso 1. Diagrama de estado:

Describimos el contador mediante un diagrama de estado, que


nos muestra la manera como avanza la secuencia cada vez que se
aplica un pulso de reloj.
El número de estados por lo que pasa el contador es de 7 por
lo que se necesitarán 3 FF para diseñarlo.
En el diseño de circuitos secuenciales en general, el diagrama
de estado es el primer paso hacia la obtención del circuito.
Para el caso de contadores por ser una secuencia directa no es
necesario el diagrama de estado ya que en la especificación de
diseño está suficientemente clara la secuencia de conteo, y de
esta se puede obtener directamente el número de flip flops
necesarios y la tabla de transiciones.

Paso 2. Tablas de transiciones:

El próximo paso es el de desarrollar la tabla de transiciones


a partir del diagrama de estado. En ella listaremos para cada
uno de los estados presentes de la secuencia, cuál debe ser el
valor de entrada de los flip flops para que al aplicarse un
pulso de reloj se pase al siguiente estado de la secuencia
(estado futuro). Para ello nos ayudamos con la tabla de
excitación de los flip flop. Podemos diseñar el contador
utilizando FF tipo JK, T o D. En este ejemplo utilizaremos FF
JK.

Si notan la primera fila estamos en el estado 000 y el próximo


estado de la cuenta debe ser el 001. En las entradas de los
flip flops deberemos poner los valores necesarios para pasar
del estado presente al estado futuro cuando baje el pulso de
reloj.

Así, para el FF2 que genera Q2, el estado presente es 0 y el


estado futuro es 0. Esto sucede cuando J2=K2=0 o cuando J2 = 0
y K2 = 1. De este modo, J2 tiene que ser cero, y K2 puede tener
cualquier valor que indicaremos en la columna correspondiente
a J2 con un 0 y en la correspondiente a K2 con una X indicando
la condición de "no importa". Así vamos obteniendo las entradas
para todos los FF y para todas las transiciones de estado.
Si notan con atención, esta representación es una tabla de
verdad de las entradas de los flip flop en función del estado
presente, por lo que podemos obtener las funciones mínimas de
estas entradas utilizando Mapas de Karnaugh.
Imagen 2. Tablas de transición.

Paso 3. Minimización de funciones de entrada de los flip flops:

De la tabla de transiciones para cada una de las entradas de


los FF obtenemos los Mapas de Karnaugh en función del estado
presente, y simplificando obtenemos las funciones de las
entradas de cada flip flop. Note que se colocó en cada casilla
el valor decimal. Este corresponde al valor decimal de la
cuenta del estado presente

Imagen 3. Reducción por medio de mapas de Karnaugh.

Paso 4. Diagrama circuital.


El paso final es obtener el diagrama circuital. Para ello
utilizamos las funciones de entrada de los flip flops para
dibujar la lógica combinacional correspondiente a las entradas
de cada flip flop y formar así el contador.
Las funciones de entrada obtenidas de los Mapas de Karnaugh
son:

J2 = K2 = Q1·Q0
J1 = K1 = Q0
J0 = K0 = 1

Note que el circuito obtenido corresponde al del contador de 3


bits analizado en la guía de contadores síncronos.

Imagen 4. Diagrama circuital.

Registros de corrimiento.

Los registros de desplazamiento son circuitos secuenciales


formados por biestables o flip-flops generalmente de tipo D
conectados en serie y una circuiteria adicional que controlará
la manera de cargar y acceder a los datos que se almacenan. En
los de desplazamiento se transfiere información de un flip-
flop hacia el adyacente, dentro del mismo registro o a la
entrada o salida del mismo. La capacidad de almacenamiento de
un registro es el número total de bits que puede contener.

El funcionamiento se realiza de manera síncrona con la señal


de reloj. Gran parte de los registros de desplazamiento reales
incluyen una señal RESET o CLEAR asíncrona, que permite poner
simultáneamente todas las salidas en "0" o estado bajo, sin
necesidad de introducir ceros seguidos. Esto permite limpiar
rápidamente el registro de desplazamiento lo cual es muy
importante a nivel práctico.

Sus funciones dentro del sistema digital son:

 Servir de almacenamiento temporal de un conjunto de bits


sobre los que se está realizando una labor de
procesamiento.
 Desplazamiento de datos a lo largo de los flip-flops.

Tipos de registros

• Entrada serie/salida serie:

Los datos deben introducirse en serie, es decir, bit a bit por


una única línea. La salida se obtendrá de la misma manera.

Imagen 5. Entrada serie/salida serie.

Entrada serie/salida paralelo:

En este tipo de registros con salida en paralelo se dispone de


la salida de cada flip-flop por lo que una vez almacenados los
datos cada bits se representa en su respectiva salida. De esta
manera todos los bits de salida estarán disponibles al mismo
tiempo.
Imagen 6. Entrada serie/salida paralelo.

Entrada paralelo/salida serie:

En este tipo de registros los bits de datos se introducen


simultáneamente a través de líneas paralelo en lugar bit a bit.
La salida serie se hace de igual modo que en el primer caso
una vez que los datos hayan sido almacenados.

Imagen 7. Entrada paralelo/salida serie.

Este dispositivo posee una entrada (pl) que estando a nivel


bajo activa todas las puertas NAND permitiendo la carga de los
datos de entrada en paralelo. Cuando a la entrada nos
encontramos un “1” el flip-flop correspondiente pasa al estado
de SET de manera asíncrona debido al nivel bajo de la puerta
superior. Por el contrario cuando la entrada es “0” el flip-
flop pasará a estado de RESET de forma asíncrona por el mismo
motivo. Este dispositivo tiene la opción de introducir también
los datos en serie a través de la entrada SER. Las salidas de
datos serie del registro son Q7 y Q7’.
Entrada paralelo/salida paralelo:

Imagen 8. Entrada paralelo/salida paralelo.

Registros de desplazamiento bidireccionales:

Son aquellos en que los datos de pueden desplazar a la izquierda


o derecha. Se puede implementar utilizando puertas lógicas que
permitan la transferencia de un bit de datos de una etapa a la
siguiente de la izquierda o de la derecha dependiendo del nivel
de una línea de control.

Posee una entrado que estando en nivel alto hace que los bits
almacenados en el registro se desplacen hacia la derecha y a
nivel bajo se desplazaran hacia la izquierdas.

Cuando este a alto las puertas impares estarán activas y el


estado de la salida de cada flip flop pasara a la entrada D
del siguiente. Cuando haya un flanco de reloj los bits se
desplazaran una posición a la derecha.

Cuando está a bajo las puertas pares estarán activas y el


estado de la salida de cada flip flop pasara a la entrada D
del anterior. Cuando haya un flanco de reloj los bits se
desplazaran una posición a la izquierda.
Imagen 9. Registros bidireccionales.

Memorias

Hay una gran diferencia entre una memoria de solo lectura (ROM)
y una memoria de acceso aleatorio (RAM): la ROM puede contener
datos sin energía y la memoria RAM no. Básicamente, la ROM está
pensada para el almacenamiento permanente, y la RAM es para
almacenamiento temporal.

Un chip ROM es un medio de almacenamiento no volátil, lo que


significa que no requiere una fuente constante de energía para
retener la información almacenada en él. Por el contrario, un
chip RAM es volátil, lo que significa que pierde toda la
información que tiene cuando se apaga.

Un chip ROM se usa principalmente en el proceso de inicio de


una computadora, mientras que un chip RAM se usa en las
operaciones normales de una computadora una vez que se ha
cargado el sistema operativo.

Escribir datos en un chip ROM es un proceso mucho más lento


que escribirlo en un chip RAM.

Un chip RAM puede almacenar múltiples gigabytes (GB) de datos,


que van de 1 GB a 256 GB por chip. Un chip ROM almacena varios
megabytes (MB) de datos, generalmente 4 MB u 8 MB por chip.

ROM de la computadora
Un buen ejemplo de ROM es el BIOS de la computadora, un chip
PROM que almacena la programación necesaria para comenzar el
proceso inicial de inicio de la computadora. El uso de un medio
de almacenamiento no volátil es la única manera de comenzar el
proceso de inicio para computadoras y otros dispositivos. Los
chips ROM también se usan en los cartuchos del sistema de
juego, como el original de Nintendo, Gameboy, Sega Genesis y
muchos otros.

El medio de almacenamiento tipo ROM más antiguo puede


remontarse a 1932 con memoria de batería. El almacenamiento
tipo ROM todavía se usa y se continúa mejorando para un mejor
rendimiento y capacidad de almacenamiento.

Imagen 10. Ejemplo memoria ROM.

RAM de la computadora

Los chips RAM también se usan en computadoras, así como en


otros dispositivos, para almacenar información y ejecutar
programas. La memoria RAM es uno de los tipos más rápidos de
memoria en su computadora y puede cambiar rápidamente entre
tareas. Por ejemplo, el navegador de Internet que está
utilizando para leer esta página se ha cargado en la memoria
RAM y se está ejecutando desde allí.
Imagen 11. Ejemplo memoria RAM.

Das könnte Ihnen auch gefallen