Practica 8 - IntroGAL

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 14

INSTITUTO POLITÉCNICO NACIONAL

CENTRO DE ESTUDIOS CIENTÍFICOS Y TECNOLÓGICOS 18


“ZACATECAS”

ELECTRÓNICA DIGITAL

COMPETENCIA PARTICULAR 3:
Selecciona los dispositivos lógicos programables de acuerdo a sus características para el desarrollo
de aplicaciones en los sistemas digitales.

RESULTADO DE APRENDIZAJE No. 1:


Explica la función básica de los dispositivos lógicos programables para su aplicación en los
Sistemas Digitales.

PRACTICA 8:
INTRODUCCIÓN A LA GAL
Ciclo Escolar: Agosto – Enero
OBJETIVOS
• Conocer el entorno de la plataforma de programación WINCUPL.
• Simular un circuito simple, que realice una función binaria, utilizando PROTEUS y WINCUPL.

RAP’S
• Describe la función de los elementos del software para la programación de los PLDs.
• Analiza la sintaxis del lenguaje de descripción de hardware para la programación de
los PLDs.
• Maneja la programación de los PLD utilizando un lenguaje de descripción de
hardware seleccionado.

INTRODUCCIÓN
Se analiza la estructura y funcionamiento del dispositivo GAL 22V10, el cual es un tipo de
PLD muy versátil con el que se puede realizar, entre otras cosas, el diseño de múltiples funciones
lógicas. Para este fin se realiza primeramente un análisis muy sencillo sobre el entorno de WINCUPL,
el cual es un software en el que es posible realizar la edición de las funciones lógicas que se deseen
implementar en un PLD.
Se estudian los operadores básicos (&, #, !, y $) con los que se trabaja en el entorno de
WINCUPL y se utilizan para la generación de las funciones lógicas que se desea diseñar y probar.
Se realizan algunos ejemplos y ejercicios relacionados a la creación de circuitos lógicos
utilizando compuertas lógicas así como la construcción de sus respectivas tablas de verdad con la
finalidad de poder verificar el funcionamiento de las funciones lógicas generadas en WINCUPL e
implementadas en PROTEUS.
Finalmente, se edita un archivo nuevo en WINCUPL que incluye un total de cinco funciones
de tres o más variables. Este último se simula empleando la circuitería necesaria para un caso real
(led ś , resistencias de pull up y pull down) que se usaría en un caso real y se comprueba su
funcionamiento en simulación para una futura implementación..

MARCO TEÓRICO
WINCUPL
WINCUPL es una herramienta gratuita desarrollada por la compañía ATMEL, esta última,
famosa por sus familias de microcontroladores y PLDs. WINCUPL permite transformar un código
fuente creado en lenguaje CUPL a un archivo de configuración para los dispositivos lógicos
programables.
Además, es posible simular los circuitos descritos con lenguaje CUPL con la herramienta
WinSIM Incluida con el paquete de instalación.
El manejo del lenguaje de programación para este tipo de PLDs (GAL) implica el uso de los
comandos mostrados en la tabla siguiente, los cuales servirán para la realización de las diversas
funciones booleanas a utilizar.

1
OPERADORES LÓGICOS

OPERADOR EJEMPLO DESCRIPCIÓN JERARQUÍA

! !A NOT 1

& A&B AND 2

# A#B OR 3

$ A$B XOR 4

Ejemplo 1: Realiza la siguiente función lógica utilizando los operadores de la tabla anterior:
y = A𝐵 + 𝐶̅ A
Solucion: y = (A&!B) # (!C&A)
Los acrchivos que se pueden generar con el software WINCUPL se describen a continuación:

ARCHIVO DESCRIPCIÓN

PLD Archivo creado por el usuario, este contiene en sí la descripción del hardware
a implementar dentro del sispositivo programable.

DOC Generado por WINCUPL, este contiene las ecuaciones deducidas por el
compilador a partir del archivo PLD, además anexa la descripción del
dispositivo a programar y errores existentes durantre la compilación.

ABS Generado por WINCUPL, es un archivo con datos para la simulación.

LST Generado por WINCUPL, este archivo guarda una lista detallada de los errores
encontrados en el archivo de descripción PLD, así como la línea donde se
encuentra el error.

JED Generado por WINCUPL, este archivo tiene la información que se utilizará para
“programar” el dispositivo objeto.

SI Archivo creado por el usuario, este contiene los estímulos para la simulación
de un diseño CUPL.

SO Generado por el WinSI, contiene los vectores de salida generados durante la


simulación de un archivo de descripción de hardware.

GAL 22V10.
Un GAL (Arreglo Lógico Genérico), perteneciente a la empresa LATTICE Semiconductor, es
un tipo de circuito integrado que ha sido diseñado para sustituir a la mayoría de los PAL,

2
manteniendo la compatibilidad de sus terminales. Utiliza una matriz de memoria EEPROM por lo
que se puede programar varias veces.
Un GAL es un PLD con una matriz AND reprogramable, una matriz OR fija y una lógica de
salida programable. Esta estructura permite implementar cualquier función lógica como suma de
productos con un número de términos definido.
La estructura física y distribución de pines del GAL 22V10 se muestra en la figura siguiente.

La letra I a un costado de los terminales del GAL 22V10 indican que este se puede configurar
como una entrada, mientras que los terminales asociados a las letras I/O/Q indican que se estas
pueden configurarse ya sea como entradas o como salidas. Las terminales 12 y 24 son las conexiones
a tierra y a voltaje respectivamente.
El GAL 22V10 cuenta también con una entrada de reloj, la cual puede utilizarse para realizar
el diseño de algún tipo de circuito secuencial síncrono.

DESARROLLO
Siga cada uno de los pasos que se mencionan a continuación a fin de poder efectuar
correctamente la simulación correspondiente:

Una vez iniciada la aplicación Proteus colocamos los siguientes dispositivos para
realizar el siguiente diagrama:

MATERIAL CANTIDAD
GAL 22V10 1
LOGIC PROBE 1
LOGIC STATE 1

3
Note que este circuito solo tiene dos entradas (I2 e I3 conectadas en las terminales
3 y 4 respectivamente) y una salida (IO4 conectada a la terminal 19).
Se implementará una compuerta AND en la GAL 22V10, cuya salida se representa
por la tabla de verdad descrita en la tabla siguiente.

B A Y
0 0 0
0 1 0
1 0 0
1 1 1
La salida 𝑌 de la tabla 7.4 queda representada por la siguiente función booleana:
𝒀 = 𝑨𝑩
Utilizando la información de la tabla de los operadores lógicos en WINCUPL (tabla
1), la ecuación anterior se reescribe de manera tal que pueda interpretarse en lenguaje
CUPL. De esta forma, la ecuación de salida para la compuerta AND de dos entradas se
escribe como:
𝒀 = 𝑨&𝑩
Al igual que las memorias ROM utilizan archivos con extensión .HEX o .BIN, las GAL
utilizan archivos .JED para su encriptación y funcionamiento. Para poder generar el
archivo .JED correspondiente será necesario seguir los pasos de la siguiente sección y
posteriormente probar el funcionamiento de la GAL en la simulación de la figura 7.5
GENERACIÓN DE ARCHIVO JED.
Abra el software WINCUPL.

4
En el menú Options seleccionar Devices. Deberá aparecer un cuadro como el que
se muestra a continuación.

Seleccionar la ATF 22V10B o bien ATF 22V10C.


Dar un click en OK.

5
Nuevamente en el menú Options seleccionar ahora Compiler. Deberá aparecer un
cuadro como el que se muestra en seguida.

En el menú Output Files deberá seleccionarse las casillas: JEDEC, Fuse Plot y
Equations.
En el menú General se deberá seleccionar solo la opción:
JEDEC name = PLD name.

6
Dar click en OK.
En el menú File crear un nuevo proyecto tal como se muestra:

Deberá aparecer una ventana como la que se muestra en la figura siguiente, en la


cual deberá editar los campos Name y Device. En el primero deberá escribir cualquier
nombre para el archivo que se generará y en segundo, deberá escribir g22v10. El resto de
los campos quedarán intactos.

7
Especificar el número de entradas, que en este ejemplo será dos:

Especificar el número de salidas, en este caso será solo una.

8
Especificar el número de nodos en los pines. En este caso y en cualquier otro, será
cero.

Una vez establecidos el número de entradas y salidas que tendrá el GAL 22V10 se
realiza la edición de cada una de las funciones. Para este caso la única función que se
programará es la que corresponde a la compuerta AND de dos entradas: 𝑌 = 𝐴𝐵

En la figura anterior se muestra la carátula en de edición de funciones lógicas. Puede


observarse que hay dos entradas y una salida, las cuales podrán editarse tomando en
cuenta las terminales del GAL que se esté utilizando.
Tomado en cuenta la figura 7 siguiente las dos entradas serán los pines 3 y 4.
La salida seré el pin 19:

9
Compilar el archivo editado y asegurarse de que no existan errores. Esto deberá
hacerse dando un click en el botón que se indica en la siguiente figura:

En caso de que se haya compilado exitosamente el archivo editado, deberá


generarse de manera automática un conjunto de archivos como el que se muestra en la
figura siguiente, los cuales podrá encontrar en la ubicación donde se guardó su nuevo
proyecto.

10
El archivo que se va a necesitar para la simulación es el que tiene la extensión .jed
En la simulación se deberá dar doble click sobre el GAL 22V10 y después
seleccionar el archivo .JED.
Se deberá iniciar la simulación y comprobar el funcionamiento de la compuerta
AND de dos entradas diseñada.
Para saber si es correcto su funcionamiento podrá corroborar los resultados con la
tabla de verdad AND.
IMPLEMENTACIÓN DE MULTIPLES FUNCIONES EN GAL 22V10.
Siguiendo el procedimiento de la sección anterior realice la simulación de una GAL
22V10 que cuente con un total de 5 funciones lógicas:

a) 𝑦1 = ̅̅̅̅̅̅̅̅̅̅̅̅
𝐴𝐵 + 𝐶𝐷
b) ̅̅̅̅̅̅ + 𝐴 + 𝐵𝐶
𝑦2 = 𝐴𝐵𝐶
c) 𝑦3 = 𝐴 + 𝐵 + 𝐶̅ + 𝐷 ̅
d) 𝑦4 = ̅̅̅̅̅̅̅̅̅̅̅̅̅
(𝐴𝐵 + 𝐶𝐷 )(𝐴𝐵 ̅̅̅̅̅̅̅̅̅̅̅̅̅̅
̅̅̅̅ + 𝐶̅ 𝐷
̅)
e) 𝑦5 = 𝐴𝐵̅ + 𝐶̅ 𝐴
Observe que tendrá un total de cuatro entradas y un total de cinco salidas.
Recuerde que, de la parte diagnóstica de la presente práctica, debe tener las tablas
de verdad de las primeras cuatro funciones para comprobar el funcionamiento de
cada de las funciones.
Deberá realizar también la tabla de verdad de la función 𝑦5 para probar el
funcionamiento de la simulación.
Diseñar de la función 𝑦5 su circuito lógico mediante el uso de compuertas.
Deberá utilizar en las entradas resistencias de pull on o pull down y en las salidas
led´s con resistencias.
Contesta correctamente las siguientes preguntas:
Conocimiento

1. Utilizando compuertas lógicas, realice los circuitos correspondientes a las siguientes


funciones lógicas:
a. 𝑦 = ̅̅̅̅̅̅̅̅̅̅̅̅
𝐴𝐵 + 𝐶𝐷
̅̅̅̅̅̅ + 𝐴 + 𝐵𝐶
b. 𝑦 = 𝐴𝐵𝐶
c. 𝑦 = 𝐴 + 𝐵 + 𝐶̅ + 𝐷 ̅
̅̅̅̅̅̅̅̅̅̅̅̅̅
d. 𝑦 = (𝐴𝐵 + 𝐶𝐷)(𝐴𝐵 ̅̅̅̅̅̅̅̅̅̅̅̅̅̅
̅̅̅̅ + 𝐶̅ 𝐷
̅)
2. Construya una tabla de verdad para cada una de las funciones del punto anterior.

11
Ejercicio

1. Para cada uno de los incisos de la parte diagnóstica, forme las funciones lógicas
correspondientes utilizando los operadores de la primera tabla y guiándose en el
ejemplo 1.

LISTA DE COTEJO DE LA PRÁCTICA


INDICADOR REPORTE DE PRÁCTICA PORCENTAJE CUMPLE NO CUMPLE

Portada 5

Índice de contenido 5

Índice de imágenes 5

Introducción y objetivos 10

Imágenes 5

Numero de página 5

Contenido 25

Ortografía 20

Conclusiones individuales 10

Referencias reales en formato APA 10

TOTAL %

TOTAL DE LA PRÁCTICA

ENTREGA DEL REPORTE


• El archivo se entregará de manera electrónica en formato ZIP o RAR lo siguiente:
o Reporte con sus imágenes, preguntas contestadas correctamente, tablas de
verdad de las 5 funciones y el circuito lógico correspondiente a cada una de las 5
funciones.
o Archivos para Proteus.
o Archivos con extensión .abs, .jed, .pld, .sim, Word, pdf
• El nombre del archivo será:
o ED-5IMX-0Y-ApellidosNombre
▪ X es el grupo, ejemplo 5IM3, 5IM6.
▪ Y el número de practica realizada.
▪ Ejemplo:

12
• ED-5IM1-08-JuarezGarciaBenito.rar
• No se recibirán investigaciones después de la fecha señalada de entrega y/o que no tengan
el formato y/o claves antes mencionadas.
• Fecha de entrega será publicada en la plataforma de campus virtual.

13

También podría gustarte

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy