Anda di halaman 1dari 17

SEP SESTNM TECNM

INSTITUTO TECNOLÓGICO DE TOLUCA

PRACTICA 2

Dispositivo Lógico Programable


(GAL)

Carrera: Mecatrónica

Materia: Electrónica Digital.

Profesor:
Marco Antonio Reyes González

Alumnos:

Castañeda Morales Juan


Hernández Tenorio Arturo Alejandro
Mondragón Arzate Pablo Mauricio
Rojas caballero David

EQUIPO 2

Metepec, Estado de México, a 27 de septiembre de 2018


MATERIALES NECESARIOS

 1 Tabla de pruebas (Protoboard).


 4 Resistencias de 220 k ohm.
 Cable para conexiones de protoboard.
 3 diodos emisores de luz de cualquier color.
 Multímetro.
 1 GAL 22V10
 1 Fuente de voltaje variable o fija de 5 volts.
 2 Cables o puntas para conexión a la fuente de voltaje.
 1 Deep switch de más de 4 posiciones.
 Programador “Superpro” y computadora con ABEL instalado.

DISPOSITIVOS LOGICOS PROGRAMABLES

Un PLD (Programmable Logic Device, Dispositivo lógico programable) es un


componente electrónico empleado para la fabricación de circuitos digitales. A
diferencia de las puertas lógicas un PLD tiene una función indefinida. Antes de que
un PLD pueda ser usado en un circuito este puede ser programado.

2
Un PLD está formado por una matriz de compuertas AND y puertas OR, que se
pueden programar para conseguir funciones lógicas específicas.

Existen cuatro tipos de dispositivos que se clasifican como PLD.

1. PROM (Programmable Read Only


Memory). Memoria programable de sólo
lectura.
2. PLA (Programmable Logic Array). Matriz
lógica programable.
3. PAL (Programmable Array Logic). Matriz
lógica programable.
4. GAL (Generic Array Logic). Matriz lógica genérica.

Todos los PLD están formados por matrices programables. Esencialmente, una
matriz programable es una red de conductores distribuidos en filas y columnas con
un fusible en cada punto de intersección. Las matrices pueden ser fijas o
programables.

VENTAJAS DE LOS PLDs

Facilidad de diseño

Las herramientas de soporte al diseño con PLDs facilitan enormemente este


proceso. Estas nuevas herramientas permiten expresar la lógica de los circuitos
utilizando formas variadas de entrada tales como; ecuaciones, tablas de verdad,
procedimientos para máquinas de estados, esquemas, entre otros. La simulación
digital posibilita la depuración de los diseños antes de la programación de los
dispositivos. Todo el equipo de diseño se reduce a un software de bajo coste que
corre en un PC, y a un programador.

3
Prestaciones

Los PLDs TTL que hay en el mercado tienen tiempos de conmutación tan rápidos
como los circuitos integrados de función fija más veloces. Los PLDs ECL son todavía
más rápidos. Sin embargo, el incremento de velocidad obtenido con los dispositivos
CMOS, que ya han igualado o superado en prestaciones a los dispositivos TTL, está
provocando el abandono de la tecnología bipolar por parte de los fabricantes. En
cuanto al consumo de potencia, los PLDs generalmente consumen menos que el
conjunto de chips a los que reemplazan.

Fiabilidad

Cuanto más complejo es un circuito, más probabilidades


hay de que alguna de sus partes falle. Puesto que los
PLDs reducen el número de chips en los sistemas, la
probabilidad de un fallo disminuye. Los circuitos
impresos con menor densidad de CI son más fáciles de
construir y más fiables. Las fuentes de ruido también se reducen.

Economía

Por ejemplo, la reducción del área de las placas de circuito impreso


obtenida gracias a que cada PLD sustituye a varios circuitos
integrados de función fija. Muchas veces se consigue reducir el
número de placas de circuito impreso economizándose en
conectores. La reducción de artículos en almacén también aporta
ventajas económicas.

Seguridad

Los PLDs tienen fusibles de seguridad que impiden la lectura de los dispositivos
programados, protegiendo los diseños frente a copias.

Además de los puntos mencionados, podemos añadir que los PLDs facilitan el
ruteado de las placas de circuito impreso debido a la libertad de asignación de

4
patillas que proporcionan. Permiten realizar modificaciones posteriores del diseño y
en ocasiones hacen posible la reutilización de circuitos impresos con algunos fallos,
mediante una reasignación de los PLDs.

NOTA: Durante la realización de la práctica se empleó una GAL 22V10 la cual


posee buenas características para la fase del desarrollo y el prototipo de
circuitos. A continuación, se mencionan las características de cada uno de los
PLDS principales, incluida la GAL.

CLASIFICACION DE PLDs

Se clasifican de acuerdo con su arquitectura, es decir, la ordenación funcional de


los elementos internos que proporciona al dispositivo sus características específicas.

1. Memoria programable de sólo lectura (Programmable Read Only Memory,


PROM).

Está formada por un conjunto fijo de puertas AND (no programable) conectadas
como decodificador y una matriz programable OR.
Se utiliza como memoria direccionable y no como
dispositivo lógico.

5
2. Matriz lógica programable PLA (Programmable Logic Array).

Es un PLD formado por una matriz AND programable y una matriz OR programable.
También se denomina FPLA (Field Programmable Logic Array) debido a que es el
usuario y no el fabricante el que la programa.

3. Matriz lógica programable PAL (Programmable Array Logic).

Se ha desarrollado para superar ciertas desventajas de la PLA, tales como largos


retardos debidos a fusibles adicionales que resulta de la utilización de dos matrices
programables y la mayor complejidad del circuito. La PAL básica está formada por
una matriz AND programable y una matriz OR fija con la lógica de salida.

4. Matriz lógica genérica GAL (Generic Array Logic).

Es el desarrollo más reciente (1985). Al igual que la PAL se forma con una matriz
AND programable y una matriz OR fija. Las dos principales diferencias son:

6
1. Es reprogramable: usa la tecnología 𝑬𝟐 CMOS (Electrically Erasable
CMOS) CMOS borrable eléctricamente en lugar de fusibles.
2. Tiene configuraciones de salida programables.

Una GAL permite implementar cualquier


expresión en suma de productos con un
número de variables definidas. Para el
proceso de programación se lleva a cabo
activando o desactivando cada celda
E2CMOS con el objetivo de aplicar las
combinaciones adecuadas de variables a
cada compuerta AND y obtener así la suma
de productos.

GAL (Internamente) ¿Cómo se observa?

Dentro de una GAL, cada fila está conectada a la entrada de una puerta AND, y
cada columna a una variable de entrada o a su complemento. Dependiendo de la

7
distribución de las celdas que estén activadas (ya sean variables de entrada o sus
complementos) se obtiene un producto, pero debió a que todas las celdas son
reprogramables, se pueden activar o desactivar las celdas a la compuerta según sea
necesario, y de esta manera obtener cualquier operación producto que se desee.

Para poder programar y reprogramar una GAL se utiliza un programador OPAL, o


en su defecto se utiliza la técnica de programación de circuitos en los chips
secundarios.

Las celdas E2CMOS activadas conectan a las variables deseadas (o sus


complementos) con las apropiadas entradas de las puertas AND. Una celda
E2CMOS se encuentra desactivada cuando ninguna variable o su complemento la
utilizan para un determinado producto (por lo tanto desconecta la fila y la columna).
En cambio una celda activada logra conectar de forma efectiva su correspondiente
fila y columna.

PROGRAMA HDL ABEL (ADVANCED BOOLEAN EQUATIONS LANGUAGE)

ABEL es un lenguaje de descripción de hardware (HDL) que permite:

1. Describir un circuito digital.


2. Definir vectores de test para comprobar el funcionamiento del programa.
3. Generar el mapa de fusibles para programar los PLD´s (disposisitivo lógico
programable).

Es un lenguaje de Bajo nivel muy cercano a la circuitería que representa y es eficaz


para describir sistemas digitales desde LSI (pequeña escala de integración), MSI
(Gal y los FPGA)

8
Estructura de un archivo fuente ABEL

Los elementos básicos que componen un archivo fuente de ABEL-HDL (Módulo) se


pueden dividir en 5 secciones principales:

1. Cabecera.
2. Declaraciones.
3. Descripción de Lógica.
4. Vectores de prueba.
5. Fin.

La sección de encabezado Puede constar de los siguientes elementos:

1. Módulo (requerido). 2.Interfaz (nivel inferior, opcional). 3.Título.

La sección de declaraciones puede constar de los siguientes elementos:

1. Declaración de palabras clave.

2. Interfaz y de bloque funcional de


Declaraciones.

3. Declaración de señales (números de


nodo pasador y opcional).

9
4. Declaración de constantes.

5. Declaración de Macro.

6. Declaración de librerías.

7. Declaración de dispositivos (uno por módulo).

ESTRUCTURA GRAFICA

PROGRAMADOR

El programador es la herramienta económica universal que nos permitirá programar


nuestro circuito lógico programable, en este caso la GAL, superpro 610, funciona
mediante una interfaz de control mediante conexión USB 2.0 a un software instalado
en la Computadora.

En esta práctica se empleó el programador: SUPER PRO 610 P CON

 Motor de procesamiento con algoritmo ultra rápido ARM9 32 Bit MCU + Linux.

10
 Velocidad de programación hasta un 30% más rápido que SuperPro 500P.
 Programas dispositivos con Vcc tan bajo como 1.2V.
 Conductores universales de 48 pines interconstruidos.
 Dispone de programar / probar de circuitos integrados y memorias lógicas TTL
/ CMOS.
 Algoritmos de programación único fabricante IC aprobados proporcionan una
alta fiabilidad. Verificación Vcc al ( +5% ~ -5%) y ( 10 % ~ 10%) mejora la
fiabilidad de programación.
 Proporciona protección de sobre corriente y sobretensión para la seguridad
del chip y hardware de programación .
 Compatible con Windows XP / Vista / 7/8 ( 32/64 bit)

PROCEDIMIENTO

Para la realización de una correcta programación de la GAL para implementación en


un sistema digital como el caso del comparador de dos bits, debemos siempre de
considerar los siguientes pasos:

1. Ver que hace el sistema, analizar la lógica del sistema por lo tanto debemos conocer
ya previamente las tres funciones simplificadas que describen el sistema comparador.
2. Analizar la matrícula de la GAL a emplear para posteriormente revisar su hoja de
datos.
3. Iniciar con la programación en ABEL, seguir el esquema de la estructura gráfica y la
teoría vista en clase para cada uno de los elementos básicos que componen un
archivo de fuente ABEL HDL. (Instalar el programa previamente).
4. Instalar e iniciar el programador” Superpro”, para conectar y programar la GAL.
5. Armar el circuito con la GAL ya programada y realizar pruebas de funcionamiento.

11
Paso 1

Deseamos analizar un sistema digital que posee dos entradas (x,y) de dos bits y
cuya función va ser comparar las salidas arrojando tres diferentes posibilidades,
cuando “x” es mayor que “y”, cuando “x” es igual a “y” y cuando “y” es mayor que “x”.

Las funciones obtenidas en la práctica:

̅̅̅̅̅̅̅̅̅̅̅
A. 𝑓1(𝑥 = 𝑦) = (𝐴 ⊕ 𝐶) ̅̅̅̅̅̅̅̅̅̅̅
(𝐵 ⊕ 𝐷)
̅̅̅̅̅̅̅̅̅ + 𝐴̅𝐶
B. 𝑓2(𝑥 < 𝑦) = 𝐵̅ 𝐷(𝐴⨁𝐶)
C. 𝑓3(𝑥 > 𝑦) = 𝐴𝐶̅ + 𝐵𝐶̅ 𝐷
̅ + 𝐴𝐵𝐷
̅

Paso 2

Utilizaremos una GAL 22V10

Nota: Su voltaje de operación respecto a tierra recomendado es de +4.75 a +5.25


Volts.

Paso 3

Captura de realización de practica en HDL con ABEL.

Se introdujo el código siguiendo las características mencionadas en la estructura


básica de un programa para programación de PLD

12
Captura de pantalla

Paso 4

Instalación de superpro 610 P.

13
Paso 5

Construcción del circuito comparador con tres funciones distintas armado con la Gal
programada.

RESULTADOS

Una vez realizados todos los pasos anteriores establecidos en el procedimiento lo


que prosiguió fue el ensamblaje del circuito utilizando de la GAL, esto nos demostró
que la GAL es muy eficiente al momento de armar nuestros sistemas de modo que
se optimizó en costo y en espacio.

Los resultados se resumen a que cuando nosotros teníamos cada uno de los tres
circuitos de la práctica armados por separado funcionaban a la perfección pero se
ocuparon una gran cantidad de compuertas para lograr el resultado deseado de cada
función correspondiente al comparador, sin embargo nuestro trabajo en esta práctica
lo redujo todo a un solo circuito integrado en este caso programable.

14
Dentro de este circuito lógico, nosotros logramos introducir nuestras funciones
reducidas utilizando ISPLEVER, lo cual nos demuestra también que por muy
complejo que el sistema sea, siempre existirán dispositivos lógicos que puedan ser
programados para simplificar la construcción del mismo sistema.

Lo más laborioso para esta práctica fue la parte de la programación con respecto a la
lógica y el familiarizarse con la interfaz de ISPLEVER, pero una vez que se
comprende su estructura simple se vuelve más fácil y se adquiere una mejor lógica
de programación.

15
CONCLUSIONES

Castañeda Morales Juan

Al realizar la práctica se observó la eficiencia que tienen este tipo de integrados


como lo es la Gal, es muy factible su uso ya que se emplean menos componentes
que los que se vieron en la primera práctica y por ende la funcionalidad de la práctica
es muy buena al no tener conectado muchos componentes, la programación en Abel
es muy práctica y muy accesible a los usuarios por la forma del lenguaje que utiliza
para programar.

Hernández Tenorio Arturo Alejandro

En la práctica se comprobó el circuito comparador, utilizando la gal22v10 y se


observo como por medio de la programación se pueden introducir funciones sin la
necesidad de utilizar una gran cantidad de compuertas lógicas brindando de esa
manera un circuito más compacto y mucho mas flexible al momento de trabajar con
este debido a que si se desea se puede reprogramar para quitar o agregar alguna
función.

Mondragón Arzate Pablo Mauricio


Rojas caballero David

16
REFERENCIAS

Torres, H. (2017). Compuertas Lógicas. marzo 12,2018, de HETPRO Sitio web:


https://hetpro-store.com/TUTORIALES/compuertas-logicas/

Cidead. (2016). Puertas Lógicas. marzo 13, 2018, de Laboratorio Virtual de Lógica
Binaria Sitio web:
http://recursostic.educacion.es/secundaria/edad/4esotecnologia/quincena6/pdf/quince
na6.pdf

L.Floyd Thomas. (2010). Fundamentos de electronica-sistemas digitales. marzo 20,


2018, de Electronica Sitio web:
https://ecadigitaliiequipo7.wordpress.com/2010/03/08/dispositivos-logicos-
programables-pld/

Lattice. (1998). GAL22V10 Generic Array Logic. marzo 17, 2018, de Semiconductor
Corporation Sitio web: http://web.mit.edu/6.115/www/document/gal22v10.pdf

Desconocido. (2011). Dispositivos Lógicos Programables y Memorias. marzo 19,


2018, de Desconocido Sitio web:
https://www.infor.uva.es/~jjalvarez/asignaturas/fundamentos/apuntes/digital/Tema4_
memorias.pdf

García A., Mitsiu A. (2012). Descripción de una GAL. marzo 17, de Circuitos Lógicos
programables Sitio web: http://wiki-pita.blogspot.mx/2012/08/descripcion-de-una-
gal.html

Reyes, M. (2018). Programación HDL ABEL. marzo 19, 2018, de Instituto


Tecnoloogico de Toluca Sitio web:
file:///C:/Users/USUARIO/Desktop/Programacion_ABEL.pdf

17

Anda mungkin juga menyukai