Você está na página 1de 18

INSTITUTO POLITCNICO NACIONAL

ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA


UNIDAD CULHUACAN

CIRCUITOS LGICOS II
PRCTICA VI

Objetivo: Disear e implementar diferentes circuitos lgicos con el uso del dispositivo GAL22V10.

Material:

Computadora personal con el simulador Proteus versin 8.


El CI GAL22V10.
El software WinCupl.
De 12 a 16 resistencias de 220 o 330.
Programador de memorias.
Display de 7 segmentos (nodo o ctodo comn).
8 LEDs.

Introduccin

El circuito integrado GAL22V10 es un dispositivo lgico programable (PLD) que nos permite disear
circuitos lgicos combinatorios que requieren un alto nmero de chips para su elaboracin.

Este dispositivo nos permite tambin disear circuitos secuenciales, ya que cuenta con una entrada
de reloj y un flip flop tipo D para ese uso especfico. Este dispositivo tiene una gran ventaja con
respecto a las compuertas lgicas tradicionales, ya que a travs de un software lo podemos
configurar para realizar un diseo complejo, un ejemplo de esto sera un decodificador de BCD a 7
segmentos.

Desarrollo:

Parte I

En esta parte se nos pidi disear un circuito que realizara las siguientes funciones lgicas con las
entradas A y B:

1. Con la ayuda de WinCupl generamos el siguiente cdigo.


2. Name Compuertas ;
3. PartNo 00 ;
4. Date 13/10/2017 ;
5. Revision 01 ;
6. Designer Engineer ;
7. Company ESIME ;
8. Assembly None ;
9. Location ;
10. Device g22v10 ;
11.
12. /* *************** INPUT PINS *********************/
13. PIN 2 = a ; /* */
14. PIN 3 = b ; /* */
15.
16. /* *************** OUTPUT PINS *********************/
17. PIN 14 = inva ; /* */
18. PIN 15 = invb ; /* */
19. PIN 16 = and ; /* */
20. PIN 17 = nand ; /* */
21. PIN 18 = or ; /* */
22. PIN 19 = nor ; /* */
23. PIN 20 = xor ; /* */
24. PIN 21 = xnor ; /* */
25.
26. /* Logica del circuito */
27.
28. inva = !a;
29. invb = !b;
30. and = a & b;
31. nand = !(a & b);
32. or = a # b;
33. nor = !(a # b);
34. xor = a $ b;
35. xnor = !(a $ b);
2. simulacin en Proteus 8.

En la combinacin binaria 00 nos queda lo siguiente:

Con la combinacin binaria 01 nos muestra lo siguiente:


Con la combinacin binaria 10 queda lo siguiente:

Con la combinacin binaria 11 queda lo siguiente:

Parte II

Utilizando una GAL22V10, implementar un decodificador binario a hexadecimal que muestre en un


display de 7 segmentos el nmero decimal correspondiente al binario.
En esta parte de la simulacin mostraremos los nmeros Hexadecimales del 0 a la F.

Aqu se ve el nmero 0 con su correspondiente combinacin en binario:

Aqu podemos visualizar el nmero 1 hexadecimal con la combinacin binaria:


Numero 2:

Numero 3:
Numero 4:

Numero 5:
Numero 6:

Numero 7:
Numero 8:

Numero 9:
Numero A:

Numero B:
Numero C:

Numero D:
El numero 14 mostrado en hexadecimal con la combinacin binaria 0001 es el siguiente:

Y por ltimo, el nmero que nos falta por mostrar en el display es el 15. Y su equivalente en
hexadecimal es la letra F:
Parte III

En esta parte se pidi realizar un decodificador de 3 entradas y 8 lneas de salida, mediante una
terminal habilitar/deshabilitar las salidas, de tal forma que quede en tercer estado.

1. Para implementar su diseo con ayuda de la GAL22V10 es necesario realizar la tabla de


verdad que nos permitir realizar las funciones de salida de nuestro decodificador.

A B C S0 S1 S2 S3 S4 S5 S6 S7
0 0 0 1 0 0 0 0 0 0 0
0 0 1 0 1 0 0 0 0 0 0
0 1 0 0 0 1 0 0 0 0 0
0 1 1 0 0 0 1 0 0 0 0
1 0 0 0 0 0 0 1 0 0 0
1 0 1 0 0 0 0 0 1 0 0
1 1 0 0 0 0 0 0 0 1 0
1 1 1 0 0 0 0 0 0 0 1

2. Ya hecha la tabla de verdad realizamos el cdigo en WinCupl para que realice la funcin de
un decodificador.
3. Name Deco3a8 ;
4. PartNo 00 ;
5. Date 22/10/2017 ;
6. Revision 01 ;
7. Designer jONATHAN ;
8. Company ESIME ;
9. Assembly None ;
10. Location ;
11. Device g22v10 ;
12.
13. /* *************** PINS DE ENTRADA *****************/
14.
15. PIN [2,3,4,13] = [A,B,C,D] ; /*
*/
16.
17. /* *************** PINS DE SALIDA ******************/
18.
19. PIN [14..21] = [A0,A1,A2,A3,A4,A5,A6,A7] ; /*
*/
20.
21. /* ************* LOGICA DEL CIRCUITO ***************/
22.
23. [A0,A1,A2,A3,A4,A5,A6,A7].oe = D;
24.
25. FIELD Entradas = [A,B,C];
26. FIELD Salidas = [A7,A6,A5,A4,A3,A2,A1,A0];
27.
28. TABLE Entradas => Salidas
29. {
30. 'b'000 => 'b'00000001;
31. 'b'001 => 'b'00000010;
32. 'b'010 => 'b'00000100;
33. 'b'011 => 'b'00001000;
34. 'b'100 => 'b'00010000;
35. 'b'101 => 'b'00100000;
36. 'b'110 => 'b'01000000;
37. 'b'111 => 'b'10000000;
3. Hacemos uso de Proteus para simular nuestro circuito.

La salida S0 se activa cuando todos los bits estn en ceros:

La siguiente salida S1 se activa cuando cambiamos la combinacin:


Al colocar la combinacin 010 se activa la salida S2:

La siguiente salida se activa cuando se realiza la combinacin correcta:


La salida S4 es activada cuando los bits se ponen en 001:

Con la salida S5 colocamos la siguiente combinacin:


De acuerdo a nuestra tabla de verdad la salida S6 la obtenemos de la siguiente manera:

Para finalizar la ltima salida se genera cuando los 3 bits estn en unos:
Para activar o desactivar el tercer estado ponemos en 0 o 1 la entrada del pin 13, de tal manera
activamos o desactivamos las entradas (Outputs) de nuestro circuito, como se muestra en la
siguiente imagen:

As nosotros al colocar cualquier combinacin las salidas no se activan.

Conclusiones

La GAL22V10 es un circuito programable con el cual podemos disear circuitos lgicos


combinatorios o secuenciales de manera ms fcil, ya que este nos facilita el diseo e
implementacin de dispositivos digitales con un menor de nmero de chips y as reducimos costos,
y podemos hacer uso de herramientas informticas para la configuracin del hardware como tal.

Você também pode gostar