Buscar este blog

viernes, 16 de marzo de 2012

DIA 16 DE MARZO DE 2012



Al diseñar un sistema digital es necesario representar o codificar en forma binaria la información numérica y alfanumérica que se obtiene de dicho sistema y, para ello, existen los circuitos combinatorios denominados codificadores.


Un codificador es un circuito combinatorio que cuenta con un número determinado de entradas, de las cuales sólo una tiene el estado lógico 1, y se genera un código de varios bits que depende de cuál sea la entrada excitada.

Diagrama de bloques de un codificador de 10 entradas y 4 salidas

Para ilustrar esto mejor pongamos un ejemplo. Supongamos que queremos transmitir un código binario con cada una de las pulsaciones de un teclado númerico, como puede ser el de una calculadora, en éste existen diez dígitos y al menos seis caracteres especiales y, si consideramos sólo las diez cifras, esta condición la podemos satisfacer con cuatro bit. Pero variemos el circuito de la calculadora para entender mejor el ejemplo. Modifiquemos el teclado de tal manera que al presionar una tecla se cierre el pulsador que conectará una línea de entrada.

En el interior del bloque podemos imaginar unos conductores cruzados que unen entradas y salidas entre sí. Veamos cómo han de conectarse a fin de que den los códigos deseados. Para representar los códigos de salida utilizaremos el denominado código BCD. La tabla de verdad que define este codificador es la siguiente:

Entradas
Salidas
1 2 3 4 5 6 7 8 9 0
Y4 Y3 Y2 Y1
0 0 0 0 0 0 0 0 0 1
0 0 0 0
0 0 0 0 0 0 0 0 1 0
0 0 0 1
0 0 0 0 0 0 0 1 0 0
0 0 1 0
0 0 0 0 0 0 1 0 0 0
0 0 1 1
0 0 0 0 0 1 0 0 0 0
0 1 0 0
0 0 0 0 1 0 0 0 0 0
0 1 0 1
0 0 0 1 0 0 0 0 0 0
0 1 1 0
0 0 1 0 0 0 0 0 0 0
0 1 1 1
0 1 0 0 0 0 0 0 0 0
1 0 0 0
1 0 0 0 0 0 0 0 0 0
1 0 0 1


Cuando alguna de las entradas está a 1, quiere decir que el pulsador correspondiente está accionado. Como suponemos que no hay más que un pulsador activado simultáneamente, entonces en cualquier línea de la tabla todas las entradas excepto una serán 0.

A partir de la tabla se deduce que la salida Y1 será 1 si lo es la entrada 9, ó la 7, ó la 5, ó la 3, ó la 1, de ahí que la ecuación booleana correspondiente a esta salida sea la suma de las entradas 1, 3, 5, 7 y 9. Si seguimos analizando la tabla obtendremos, de forma análoga, las ecuaciones que tienen que cumplir las salidas Y2, Y3 e Y4.

Cada una de las ecuaciones que salen de la tabla de verdad se podrán componer con puertas OR, construidas con diodos. En nuestro ejemplo, el bloque que antes habíamos diseñado imaginariamente con una trama de conductores, ahora lo conectaremos a través de diodos; y a este nuevo bloque lo denominaremos matriz de diodos.

Los tipos de codificadores más usuales en el mercado son los de matrices de diodos




Todos los diodos del codificador pueden ser sustituidos por otro correspondiente formado por la base y el emisor de un transistor. Si el colector se une a la tensión de alimentación, entonces resulta una puerta OR seguidor de emisor.





Por otro lado, en realidad sólo se requiere un transistor con emisor múltiple para cada entrada del codificador. La base está unida a la línea de entrada, y cada emisor se conecta a una línea de salida diferente de acuerdo con la lógica del codificador. Por ejemplo, la línea de entrada 7 está unida a tres diodos cuyos cátodos van a las salidas 1, 2 y 3; esta combinación puede ser sustituida por un transistor de tres emisores, conectado como se indica en la figura. El número máximo de emisores que se puede necesitar es igual al número de bits del código de salida.


Normalmente un codificador utiliza niveles de salida TTL. Si cada línea de salida del codificador va a la entrada de datos de una formación tótem, tendremos una salida en tótem. Si, por el contrario, conectamos dicha salida a la entrada de datos de una etapa de colector abierto, estaremos ante una salida en colector abierto.

Dentro de los codificadores podemos distinguir varios tipos, como el descrito anteriormente de células con diodos, y los denominados codificadores con prioridad.

Codificadores con prioridad y señal de habilitación

Circuito integrado típico de un codificador con prioridad

Vamos a prescindir ahora de la condición supuesta anteriormente y referida a que en cualquier momento sólo puede haber un pulsador accionado. Si, de un modo fortuito, se pulsan simultáneamente varias teclas, vamos a dar prioridad y codificar la línea de datos de orden superior. Por ejemplo, si se excitan las entradas 5 y 6, lo que se desea es que la salida sea la que corresponde a la entrada 6. Para seguir el mismo procedimiento, a fin de entender este tipo de codificadores, describamos su tabla de verdad:

Entradas
Salidas
9 8 7 6 5 4 3 2 1 0
Y4 Y3 Y2 Y1
0 0 0 0 0 0 0 0 0 1
0 0 0 0
0 0 0 0 0 0 0 0 1 X
0 0 0 1
0 0 0 0 0 0 0 1 X X
0 0 1 0
0 0 0 0 0 0 1 X X X
0 0 1 1
0 0 0 0 0 1 X X X X
0 1 0 0
0 0 0 0 1 X X X X X
0 1 0 1
0 0 0 1 X X X X X X
0 1 1 0
0 1 X X X X X X X X
1 1 1 0
1 X X X X X X X X X
1 0 0 1


Esta tabla corresponde a un codificador con prioridad de 10 a 4 líneas. La X indica que esa entrada puede tomar cualquier valor, es decir, puede ser 0 ó 1, por lo que el estado X es irrelevante. No obstante, ahora habrá que tener en cuenta un 0 en la tabla, mientras que en el caso anterior podíamos ignorarlo, ya que dicha tabla viene determinada únicamente por los 1 en su diagonal. Si analizáramos los distintos valores que toman las salidas, e intentáramos expresar su ecuación booleana correspondiente, veríamos que son ecuaciones bastantes complicadas.

Para construir mediante puertas la tabla de verdad anteriormente citada, se utilizarán puertas AND-OR de dos y cuatro entradas. Normalmente, este tipo de lógica se fabrica en un chip integrado a escala media, cuya prioridad codifica diez líneas - decimal a cuatro líneas BCD.

Entre las aplicaciones de este tipo de codificadores destacan la codificación de pequeños teclados, la conversión analógica a digital y el control de perturbaciones en los ordenadores.

Finalmente, señalaremos que la mayor aplicación de los codificadores se da en el campo de la construcción, a partir de ellos mismos, de los denominados multiplexores.



Decodificador

Saltar a: navegación, búsqueda
Un decodificador o descodificador es un circuito combinacional, cuya función es inversa a la del codificador, esto es, convierte un código binario de entrada (natural, BCD, etc.) de N bits de entrada y M líneas de salida (N puede ser cualquier entero y M es un entero menor o igual a 2N), tales que cada línea de salida será activada para una sola de las combinaciones posibles de entrada. Estos circuitos, normalmente, se suelen encontrar como decodificador / demultiplexor. Esto es debido a que un demultiplexor puede comportarse como un decodificador.
Si por ejemplo tenemos un decodificador de 2 entradas con 22=4 salidas, en el que las entradas, su funcionamiento sería el que se indica en la siguiente tabla, donde se ha considerado que las salidas se activen con un "uno" lógico:

Ejemplo decodificador.
Tabla de verdad para el decodificador 2 a 4
Entradas Salidas
A B D3 D2 D1 D0
0 0 0 0 0 1
0 1 0 0 1 0
1 0 0 1 0 0
1 1 1 0 0 0
Un tipo de decodificador muy empleado es el de siete segmentos. Este circuito decodifica la información de entrada en BCD a un código de siete segmentos adecuado para que se muestre en un visualizador de siete segmentos.

Aplicaciones del Decodificador

Su función principal es la de direccionar espacios de memoria. Un decodificador de N entradas puede direccionar 2N espacios de memoria.
Para poder direccionar 1kb de memoria necesitaría 10 bits, ya que la cantidad de salidas seria 210, igual a 1024.
De esta manera:
  • Con 20 bits tengo 220 que es 1Mb.
  • Con 30 bits tengo 230 que es 1Gb.

Visualizador de siete segmentos

 

El visualizador de siete segmentos (llamado también display) es una forma de representar números en equipos eléctronicos. Está compuesto de siete segmentos que se pueden encender o apagar individualmente. Cada segmento tiene la forma de una pequeña línea. Se podría comparar a escribir números con cerillas o fósforos de madera.

Contenido

 [ocultar

Funcionamiento

El display de 7 segmentos o visualizador de 7 segmentos es un componente que se utiliza para la representación de números en muchos dispositivos electrónicos debido en gran medida a su simplicidad. Aunque externamente su forma difiere considerablemente de un diodo LED (diodos emisores de luz) típico, internamente están constituidos por una serie de diodos LED con unas determinadas conexiones internas, estratégicamente ubicados de tal forma que forme un número 8.

A cada uno de los segmentos que forman el display se les denomina a, b, c, d, e, f y g y están ensamblados de forma que se permita activar cada segmento por separado consiguiendo formar cualquier dígito numérico. A continuación se muestran algunos ejemplos:
  • Si se activan o encienden todos los segmentos se forma el número "8".
  • Si se activan sólo los segmentos: "a, b, c, d, e, f," se forma el número "0".
  • Si se activan sólo los segmentos: "a, b, g, e, d," se forma el número "2".
  • Si se activan sólo los segmentos: "b, c, f, g," se forma el número "4".
Muchas veces aparece un octavo segmento denominado p.d. (punto decimal).

Los diodos led trabajan a baja tensión y con pequeña potencia, por tanto, podrán excitarse directamente con puertas lógicas. Normalmente se utiliza un codificador (en nuestro caso decimal/BCD) que activando un solo pins de la entrada del codificador, activa las salidas correspondientes mostrando el número deseado. Recordar también que existen display alfanuméricos de 16 segmentos e incluso de una matriz de 7*5 (35 bits).

Los hay de dos tipos: ánodo común y cátodo común.

En los de tipo de ánodo común, todos los ánodos de los leds o segmentos están unidos internamente a una patilla común que debe ser conectada a potencial positivo (nivel “1”). El encendido de cada segmento individual se realiza aplicando potencial negativo (nivel “0”) por la patilla correspondiente a través de una resistencia que límite el paso de la corriente.

En los de tipo de cátodo común, todos los cátodos de los leds o segmentos están unidos internamente a una patilla común que debe ser conectada a potencial negativo (nivel “0”). El encendido de cada segmento individual se realiza aplicando potencial positivo (nivel “1”) por la patilla correspondiente a través de una resistencia que límite el paso de la corriente.

Los segmentos pueden ser de diversos colores, aunque el display más comúnmente utilizado es el de color rojo, por su facilidad de visualización.

También existen displays alfanuméricos de 14 segmentos que permiten representar tanto letras como números. El display de 14 segmentos tuvo éxito reducido y sólo existe de forma marginal debido a la competencia de la matriz de 5x7 puntos.
Si bien hoy este tipo de displays parecen antiguos u obsoletos. Ya en la actualidad es muy común el uso de vistosos displays gráficos, incluso con posibilidad de colores a un bajo costo. Sin embargo el display de 7 segmentos sigue siendo una excelente opción en ciertas situaciones en las que se requiera mayor poder lumínico y trabajo en áreas hostiles, donde los displays podrían verse afectados por condiciones ambientales adversas. Aún no se ha creado otro dispositivo de señalización que reúna características como este en cuanto a: Buen poder lumínico, claridad, sencilla implementación, bajo costo y robustez.

Circuitos integrados utilizados para controlarlo

Para controlar un visualizador de siete segmentos normalmente se emplean circuitos integrados especialmente diseñados para este fin y que simplifican mucho el diseño del circuito.
Uno de ellos es el circuito integrado 74LS47, con este circuito integrado podemos formar los números del 1 al 9 según conectemos las cuatro patas principales al polo positivo o negativo de nuestra fuente de alimentación. Para saber el código para formar los diferentes números debemos descargar la hoja de datos desde internet.

Hay otros circuitos más complejos o específicos ... por ejemplo el CD4028, el cual posee un contador en su interior y con un reloj de entrada va mostrando a la salida cada dígito del 0 al 9.

 





No hay comentarios:

Publicar un comentario