14
Reporte 3: “Convertidores de Código” Laboratorio de Electrónica Digital Fecha: 21 de Octubre 2015 Guevara Casas Kenneth Guzmán Zenteno Rodrigo Rodríguez Urías José Fernando Ruiz Salcedo Jorge Andrés 1. Introducción En la presente práctica se describe la forma de implementar la conversión entre diferentes códigos mediante circuitos lógicos, es decir con la utilización de circuitos integrados (compuertas) y un despliegue lógico utilizando Tabas de Verdad, Mapas de Karnaugh y Álgebra Booleana. 2. Marco Teórico Dentro de una computadora o cualquier sistema digital, la información se almacena y transfiere a través de distintos códigos binarios (es decir, que manejan la información con valores de 0’s y 1’s). En algunas de estas operaciones de transmisión y procesamiento de información son más eficaces unos códigos que otros, es por esto que se utilizan circuitos combinacionales “convertidores de código” cuya función es cambiar los datos de un código binario a otro. Se suelen implementar mediante dispositivos lógicos programables. La información que corre por los sistemas digitales utilizan, comúnmente, los códigos mostrados a continuación. [1] Código binario: es un sistema numérico usado para la representación de textos, o procesadores de instrucciones

CONVERSORES DIGITALES

Embed Size (px)

DESCRIPTION

BINARIOGRAYEXCESO 3BCD

Citation preview

Page 1: CONVERSORES DIGITALES

Reporte 3: “Convertidores de Código”

Laboratorio de Electrónica Digital

Fecha: 21 de Octubre 2015

Guevara Casas KennethGuzmán Zenteno RodrigoRodríguez Urías José FernandoRuiz Salcedo Jorge Andrés

1. Introducción

En la presente práctica se describe la forma de implementar la conversión entre

diferentes códigos mediante circuitos lógicos, es decir con la utilización de circuitos

integrados (compuertas) y un despliegue lógico utilizando Tabas de Verdad, Mapas de

Karnaugh y Álgebra Booleana.

2. Marco Teórico

Dentro de una computadora o cualquier sistema digital, la información se almacena y

transfiere a través de distintos códigos binarios (es decir, que manejan la información

con valores de 0’s y 1’s). En algunas de estas operaciones de transmisión y

procesamiento de información son más eficaces unos códigos que otros, es por esto que

se utilizan circuitos combinacionales “convertidores de código” cuya función es

cambiar los datos de un código binario a otro. Se suelen implementar mediante

dispositivos lógicos programables. La información que corre por los sistemas digitales

utilizan, comúnmente, los códigos mostrados a continuación. [1]

Código binario: es un sistema numérico usado para la representación de textos, o procesadores de instrucciones de computadora, utilizando el sistema binario (sistema numérico de dos dígitos, o bit: el "0" /cerrado/ y el "1" /abierto/), a diferencia del Sistema Decimal, donde son permitidos 10 cifras (del 0 al 9).

Código gray: es un tipo especial de código binario que no es ponderado (los dígitos que componen el código no tienen un peso asignado). Su característica es que entre una combinación de dígitos y la siguiente, sea ésta anterior o posterior, sólo hay una diferencia de un dígito. Por eso también se le llama Código progresivo.

Código bcd: es un tipo de código que utiliza 4 dígitos binarios para representar un dígito decimal (0 al 9). Cuando se hace conversión de binario a decimal típica no hay una directa relación entre el dígito decimal y el dígito binario. Con ayuda del BCD es más fácil ver la relación que hay entre un número decimal (base 10) y el número correspondiente en binario (base 2).

Page 2: CONVERSORES DIGITALES

Código exceso 3: es un código binario sin peso que guarda una estrecha relación con el código BCD 8421 por el hecho de que cada grupo de 4 bits solo pueden representar a un único dígito decimal (del 0 al 9), y deriva su nombre de exceso 3 debido a que cada grupo de 4 bits equivale al número BCD 8421 más 3.

Además para la ejecución de esta práctica se hizo uso de las compuertas universales AND, OR Y NOT, pero las compuertas descritas a continuación son de gran ayuda al momento de simplificar aún más el trabajo hechopor los mapas K.

Compuerta XNOR: es una puerta lógica digital cuya función es la inversa de la puerta OR exclusiva (XOR). La versión de dos entradas implementa la igualdad lógica, comportándose de acuerdo a la tabla de verdad de la derecha. Una salida ALTA (1) resulta si ambas las entradas a la puerta son las mismas. Si una pero no ambas entradas son altas (1), resulta una salida BAJA (0).

Compuerta XOR: más conocida por su nombre en inglés XOR, realiza la función booleana A'B+AB'. Su símbolo es el más (+) inscrito en un círculo. La ecuación característica que describe el comportamiento de la puerta XOR es:

Desarrollo experimental

En la Tabla 1 aparece el código binario y el código Gray, con la cual se realizará la

comparación necesaria para los convertidores lógicos de código binario a código gray y

viceversa.

Tabla 1. Código Binario y código Gray

BINARIO GRAY

B3 B2 B1 B0 G3 G2 G1 G0

0 0 0 0 0 0 0 0

0 0 0 1 0 0 0 1

0 0 1 0 0 0 1 1

0 0 1 1 0 0 1 0

0 1 0 0 0 1 1 0

0 1 0 1 0 1 1 1

0 1 1 0 0 1 0 1

0 1 1 1 0 1 0 0

1 0 0 0 1 1 0 0

1 0 0 1 1 1 0 1

1 0 1 0 1 1 1 1

1 0 1 1 1 1 1 0

Page 3: CONVERSORES DIGITALES

1 1 0 0 1 0 1 0

1 1 0 1 1 0 1 1

1 1 1 0 1 0 0 1

1 1 1 1 1 0 0 0

CONVERTIDOR DE BINARIO A GRAY

Para iniciar, se observa que B3=G3. Después para que G2 sea obtenida tenemos el mapa k de la Figura 1:

B1B0|B3B2 00 01 11 10

00 0 1 0 1

01 0 1 0 1

11 0 1 0 1

10 0 1 0 1

Figura 1 Mapa K para la salida G2

Por lo que

G2=B3 ∙ B2+B3∙ B2

G2=B3⊕B2

Para la salida G1 se realiza el siguiente mapa k de la Figura 2:

B1B0|B3B2 00 01 11 10

00 0 1 1 0

01 0 1 1 0

11 1 0 0 1

10 1 0 0 1

Figura 2 Mapa K de la salida G1

Con lo cual se obtiene

G1=B2 ∙ B1+B2∙ B1

G1=B2⊕B1

Por último para la salida G0 se realiza el mapa k de la Figura 3:

Page 4: CONVERSORES DIGITALES

B1B0|B3B2 00 01 11 10

00 0 0 0 0

01 1 1 1 1

11 0 0 0 0

10 1 1 1 1

Figura 3. Mapa K para la salida G0

Con lo que resulta

G01=B0 ∙ B1+B0 ∙ B1

G1=B1⊕B0

Entonces el diagrama que representa los resultados de la conversión de B3, B2, B1 Y B0 a G3, G2, G1 y G0 es el mostrado en la Figura 4.

U1

XOR

U2

XOR

U3

XOR

B3

B2

B1

B0

G3

G2

G1

G0

Figura 4. Circuito lógico de conversión Binario a Gray

CONVERTIDOR DE GRAY A BINARIO

Ahora utilizando también la tabla de verdad de la Tabla 1, se realiza la comparación entre el código Gray y binario. Como ya está descrito antes B3=G3. Para la salida B2 se cuenta con el mapa k de la Figura 5:

G1G0|G3G2 00 01 11 10

00 0 1 0 1

01 0 1 0 1

11 0 1 0 1

10 0 1 0 1

Figura 5. Mapa k para la salida B2

Page 5: CONVERSORES DIGITALES

Por lo que

B2=G3 ∙G2+G3 ∙G2

B2=G3⊕G2

Ahora para la salida B1 se realiza el mapa k de la Figura 6:

G1G0|G3G2 00 01 11 10

00 0 1 0 1

01 0 1 0 1

11 1 0 1 0

10 1 0 1 0

Figura 6. Mapa k para la salida B1

Por lo que

B1=(G¿¿3∙ G2 ∙ G1)+(G3 ∙G2 ∙G1)+(G3 ∙G2 ∙G1)+(G3 ∙ G2 ∙ G1)¿

B1=G3 (G2 ∙ G1+G2 ∙ G1 )+G3(G2 ∙G1+G2∙ G1)

B1=G3 (G2⊕G1 )+G3(G2⊕G1)

B1=G3⊕G2⊕G1

Por ultimo para la salida B0 se realiza el mapa k que se encuentra en la Figura 7

G1G0|G3G2 00 01 11 10

00 0 1 0 1

01 1 0 1 0

11 0 1 0 1

10 1 0 1 0

Figura 7. Mapa k para la salida B0

Con lo que resulta

B0=(G3∙ G2∙ G1 ∙G0)+(G¿¿3 ∙ G2∙ G1∙ G0)+(G3 ∙G2 ∙G1 ∙G 0)+(G3∙ G2∙ G1∙ G0)+(G3 ∙G2 ∙G1 ∙G0)+(G3 ∙G2 ∙G1 ∙G0)+(G3 ∙G2 ∙G1 ∙G0)+(G3 ∙G 2 ∙G 1 ∙ G0)¿

B0=G3 ∙G2 (G1 ∙ G0+G1 ∙G0 )+G 3 ∙ G2 (G1 ∙G 0+G1 ∙G 0 )+G3 ∙ G2 (G 1 ∙G0+G1∙ G0 )+G3 ∙ G2(G1 ∙G0+G1 ∙G0)

B0=(G1⊕G0)(G3 ∙G2+G3 ∙G2)+(G1 ∙G0+G1 ∙G 0) (G3 ∙ G2+G3 ∙ G2)

Page 6: CONVERSORES DIGITALES

B0=(G1⊕G0)(G3⊕G2)+(G1 ∙G0+G1 ∙G 0) (G3⊕G2)

B0=(G1⊕G0)(G3⊕G2)+(G1⊕G0 )(G3⊕G2)

B0=G3⊕G2⊕G1⊕G0

Entonces el circuito lógico queda representado como se muestra en la Figura 8.

U1

XOR

U2

XOR

U3

XOR

G3

G2

G1

G0

B3

B2

B1

B0

Figura 8. Circuito lógico de conversión Gray a Binario

La tabla 2 muestra la tabla de verdad para la conversión de código BCD a exceso 3, y viceversa.

Tabla 2. Código BCD y código Exceso 3

BCD CODIGO EXCESO 3

A B C D W X Y Z

0 0 0 0 0 0 1 1

0 0 0 1 0 1 0 0

0 0 1 0 0 1 0 1

0 0 1 1 0 1 1 0

0 1 0 0 0 1 1 1

0 1 0 1 1 0 0 0

0 1 1 0 1 0 0 1

0 1 1 1 1 0 1 1

1 0 0 0 1 0 1 0

1 0 0 1 1 1 0 1

Page 7: CONVERSORES DIGITALES

CONVERTIDOR BCD A EXCESO 3

La obtención de las salidas se hizo a través del mapa k de la Figura 9, los cuales se muestran a continuación. Para la salida W se elaboró el mapa k de la Figura 9.

AB|CD 00 01 11 10

00 0 0 0 0

01 0 1 1 1

11 X X X X

10 1 1 X X

Figura 9. Mapa k para la salida W

W=A+BD+BC

Ahora para la salida X se realiza el mapa k de la Figura 10.

Ahora para Y se realiza el mapa k de la Figura 11.

Y=/C/D + CD

Por último para la salida Z se efectúa el mapa k de la Figura 12

Figura 10. Mapa k para la salida X

Figura 11. Mapa k para la salida Y

AB|CD

00 01 11 10

00 0 1 1 1

01 1 0 0 0

11 X X X X

10 0 1 X X

AB|CD

00 01 11 10

00 1 0 1 0

01 1 0 1 0

11 X X X X

10 1 0 X X

Page 8: CONVERSORES DIGITALES

Z=/D

El diagrama lógico a realizar esta dibujado en la figura 13.

Figura 13. Circuito lógico de conversión BCD a Exceso 3

CONVERTIDOR EXCESO 3 A BCD

Para el convertidor de exceso 3 a BCD utilizamos la misma Tabla 2; para obtener las ecuaciones de conversión mediante mapas de karnaugh. El mapa K de la salida A se muestra en la Figura 14.

WX|YZ 00 01 11 10

00 x X 0 X

01 0 0 0 0

11 1 X X X

10 0 0 1 0

Figura 14. Mapa k para la salida A

Figura 12. Mapa k para la salida Z

AB|CD

00 01 11 10

00 1 0 0 1

01 1 0 0 1

11 X X X X

10 1 0 X X

Page 9: CONVERSORES DIGITALES

A=WX+YZW

Ahora la figura 15 muestra el mapa k para la salida B.

WX|YZ 00 01 11 10

00 x X 0 X

01 0 0 1 0

11 0 X X X

10 1 1 0 1

Figura 15. Mapa k para la salida B

B=/X/Y+/X/Z+XYZ

Para la salida C, en la Figura 16 se efectúa su mapa k.

WX|YZ 00 01 11 10

00 x X 0 X

01 0 1 0 1

11 0 X X X

10 0 1 0 1

Figura 16. Mapa k para la salida C

C=/YZ + Y/Z

Y por último en la Figura 17 se encuentra el mapa k para la salida D.

WX|YZ 00 01 11 10

00 x X 0 X

01 1 0 0 1

11 1 X X X

10 1 0 0 1

Figura 17. Mapa k para la salida D

D = /Z

El diagrama lógico de este convertidor es el mostrado en la Figura 18.

Page 10: CONVERSORES DIGITALES

Figura 18. Circuito lógico de conversión Exceso 3 a BCD3. Resultados

Mediante la implementación en protoboards se comprobaron las tablas de verdad que se

encuentran descritas en la Tablas 1 y 2, controlando las entradas con un DIP switch y

las salidas se mostraban mediante leds. En las siguiente imágenes se observa a

implementación del convertidor Binario a Gray (Figura 19) y el convertidor lógico

contrario Gray a Binario (Figura 20).

Figura 19. Convertidor Binario a Gray

Figura 20. Convertidor Gray a Binario

Page 11: CONVERSORES DIGITALES

En las siguientes imágenes se encuentran la implementación del Circuito lógico de conversión de BCD a Exceso 3 (Figura 21) y el que hace el proceso lógico contrario (Figura 22)

Figura 21. Convertidor BCD a Exceso 3

Figura 222. Convertidor Exceso 3 a BCD.

Conclusiones

En esta práctica, además de poder observar cómo es que los convertidores de código

funcionan, se realizó la secuencia lógica detrás de la construcción de cada uno de ellos,

desde la comparación bit por bit en las tablas de verdad, su representación y

simplificación en los mapas k y por último, la implementación del circuito lógico. Es lo

que nuestras computadoras o cualquier dispositivo digital realiza pero de manera

interna, con código establecido en sus memorias.

Referencias

[1] Santiago, Castro, Perez, Rioseras, Electronica Digital: Introduccion a la lógica

digiral, Alfa Omega,

[2] Convertidores de código IPN ESIME. Visitado el 14/10/2015 en el sitio:

http://aguilarmicros.mex.tl/imagesnew2/0/0/0/0/2/1/4/2/9/6/a_conv_cod.pdf