Está en la página 1de 13

INSTITUTO POLITECNICO NACIONAL

CENTRO DE ESTUDIOS CIENTIFICOS Y TECNOLOGICOS


ESTANISLAO RAMIREZ RUIZ
SISTEMAS DIGITALES

PRCTICAS
UNIDAD DE APRENDIZAJE: Electrnica Digital
UNIDAD 3
PROFESOR: Aleida Gmez Hurtado
PRACTICA :
ALUMNO:

FECHA:
BOLETA:

RAPs relacionados con la prctica:


1. Maneja la programacin de los PLD Utilizando un lenguaje de hardware y
software seleccionado.
Objetivos:

Comprender el lenguaje de programacin de los PLDs


Programar una GAL, para que cumpla la funcin de una compuerta
seleccionada.

Introduccin:
-PLD:
(Programmable Logic Device - Dispositivo Lgico Programable). Un PLD es un
componente electrnico empleado para la fabricacin de circuitos digitales
reconfigurables.
A diferencia de las puertas lgicas, que tienen una funcin fija, un PLD tiene una
funcin indefinida al momento de fabricarse. Antes de que un PLD pueda ser
usado en un circuito, este puede ser programado, esto es, reconfigurado.
Los primeros dispositivos lgicos programables fueron presentados por Motorola
(el XC157 en 1969), Texas Instruments (el TMS2000 en 1970, basado en las
memorias ROAM de solo lectura de IBM, poda ser programado alterando la capa
de metal durante la produccin del circuito integrado). Justamente esta empresa
comenz a llamarlos "dispositivos lgicos programables" (Programmable Logic
Array).

-GAL:
GAL (Generic Array Logic), en espaol Arreglo Lgico Genrico, son un tipo de
circuito integrado, de marca registrada por Lattice Semiconductor, que ha sido
diseados con el propsito de sustituir a la mayora de las PAL, manteniendo la
compatibilidad de sus terminales.
Un GAL en su forma bsica es un PLD con una matriz AND reprogramable, una
matriz OR fija y una lgica de salida programable mediante una macro celda. Esta
estructura permite implementar cualquier funcin lgica como suma de productos
con un nmero de trminos definido.
En los PLDs no reprogramables la sntesis de las ecuaciones lgicas se realiza
mediante quema de fusibles en cada punto de interseccin de los pines de
entrada con las compuertas. En el caso de un GAL es bsicamente la misma idea
pero en vez de estar formada por una red de conductores ordenados en filas y
columnas en las que en cada punto de interseccin hay un fusible, el fusible se
reemplaza por una celda CMOS elctricamente borrable (EECMOS). Mediante la
programacin se activa o desactiva cada celda EECMOS y se puede aplicar
cualquier combinacin de variables de entrada, o sus complementos, a una
compuerta AND para generar cualquier operacin producto que se desee. Una
celda activada conecta su correspondiente interseccin de fila y columna, y una
celda desactivada desconecta la interseccin. Las celdas se pueden borrar y
reprogramar elctricamente.
-WINCUPL:
Es un potente compilador lgico para diseos realizados en Dispositivos Lgicos
Programables especficos, simples y complejos. El Universal Compiler
Programmable Logic tiene una IDE (Integrated Development Enviroment) y un
Simulador llamado WinSIM creados para la edicin, el diseo y comprobacin de
programacin de dispositivos (como PLD y FPGA).
El compilador de WinCUPL genera los archivos siguientes:
-Un archivo JEDEC (filename.JED) para descargarse con un programador o
emplearse con un simulador.
-Un archivo absoluto (filename.ABS) para usarse por CSIM, el mdulo de
simulacin de CUPL.
-Un archivo de lista (filename.LST) que muestra los errores en el archivo fuente
original.
-Un archiv0 de documentacin (filename.DOC) que contiene ecuaciones lgicas
expandidas, tablas de smbolos, trminos productos e informacin del mapa de
fusibles.
2

-Un archivo en formato PLA (filename.PLA) para ser usado por otros mdulos o
programas tcnicos.

Pueden emplearse los 4 operadores lgicos fundamentales NOT, AND, OR y


XOR:
Operador
!
&
#
$

Descripcin
NOT
AND
OR
XOR

Ejemplo
!A
A&B
A# B
A$ B

Precedencia
1
2
3
4

Compuertas lgicas

DESARROLLO:
Desarrollo de programacin de wincpul
1. Primero abrimos el software wincpul el cual aparece con la siguiente interface.

2. Se tiene que seleccionar en la barra superior las siguientes pestaas para crear un
nuevo proyecto.

3. Posteriormente saldr una pantalla como la siguiente en la cual lo que tenemos


que colocar son el nombre del proyecto y otras especificaciones que no son muy
especficas pero el Device en este caso ocupamos la gal G16V8

4. Despus saldrn unas pantallas en las cuales tendremos que mencionar cuantas
entradas y salidas de nuestro gal. En nuestro caso configuramos 3 entradas y 8
salidas debido a que necesitamos una salida por cada compuerta necesaria y dos
entradas para mostrar los bits ingresados.
*NOTA: se mostrara una 3 pantalla donde no es necesario poner nada solo dejar
el 0 que viene por default.
4

5. Despus se mostrara la siguiente pantalla donde nos muestra la configuracin de


nuestros pines de entrada y salida y podemos ponerle diferentes variables para
poder desarrollar nuestro programa. Se muestran el siguiente orden del programa
1.- configuracin del programa, 2.- pines de entrada, 3.- pines de salida. Para
escribir el codigo. Como se muestra a continuacion.

6. Procedemos a configurar el programa para ver que nos genere un archivo.jed el


cual es el que se quema en una gal, al igual que este es el que nos sirve para
simulacin en Proteus. Tambien se tienen que colocar otras opciones para que se
logre compilar corroctamente nuestro programa.

7. Continuamos compilando el programa dando click en las siguientes pestaas o


simplemente oprimiendo la tecla F9.

8. Si no hemos guardado nuestro programa nos aparecer la siguiente notificacin


en la que simplemente damos click en SI para que la guarde.

9. Una vez hecho esto nos aparecer una pantalla que nos dir que ya no tiene
ningn problema con la compilacin del programa.

10. En caso de que exista algun error aparecera en la parte inferior los errores con los
que cuenta el programa.

11. Se debe mostrara una pantalla indicando que se generaron los archivos
correspondientes a nuestro programa

12. Una vez compilado nuestro proyecto podemos cerrar el programa de winculp y
pocder a la simulacion en proteus.
13. Se hace el armado conforme a nuestras especificaciones de los pines que se hizo
en el programa de wincupl. Se muestra la implementacin de la GAL
14. Se procede a dar click en la gal para cargar el archivo.jed parecido al proceso para
cargar los arvchivos.hex a una memoria o a un pic.

15. Comprovamos el funcionamiento de nuestro programa. Se observa que el dato de


entrada en binario es 0001 pasa a traves de la GAL y sale hacia el display en decimal
1

Actividad: debers realizar su programa y simulacin para cada uno as


como su aplicacin que se menciona a continuacin indica la versin del
8

simulador, el nombre del programador o versin y la matricula del


dispositivo . Esta es la seccin que deber entregar impresa a la profesora.
Realice como en el ejemplo del archivo en electrnico que se le est mostrando
como guia.
La funcin de :
a)
b)
c)
d)
e)
f)
g)

Motor a pasos
Matriz con un mensaje
Detector de humedad
Datos en LCD
Telescopio
Opcional, lo elige el equipo
COMPUERTAS BASICAS AND, OR, NAND, NOR, XOR, XNOR Y NOT

CUESTIONARIO:
1. Que sofware se ocupo para hacer la programacion de la gal?
a)maxloader
b)MPLAB
c)wincupl
d)proteus
2. Cual es el simbolo correspondiente a la operacin logica OR en wincupl?
a)
b)&
c)#
d)!
3. Cual es el simbolo correspondiente a la operacin logica NOT en wincupl?
a)!
b)
c)#
d)%
4. Cual es el simbolo correspondiente a la operacin logica AND en wincupl?
a)
9

b)&
c)!
d)%
5. Cul es la extencion del archivo que se genera?
a).HEX
b).JED
c).JPG
d).ASM
6. Cul es el significado de las siglas PLD?
a) Programmable Logic Device
b) Read-Only memory
c) Peripheral Interface Controller
d) Random-access memory
7. Cul es el significado de las siglas GAL?
a) Read-Only memory
b) Peripheral Interface Controller
c) Random-access memory
d) Generic array logic

8. Qu representa un x en los diagramas de los PLDs?


a) Plano Programable
b) una operacin AND
c) una operacin OR
d) una operacin NOT
9. Quin fue el primero en desarrollar PLD?
a) Motorola y Texas
b) Microchip y Fairchild
c) ST y AD
d) Toshiba y Panasonic
10. Cul es la representacin para la extensin de las variables utilizadas?
a) Var
b) .ext
c)
d) =

Actividad

anota 10 preguntas del tema con opcin mltiple as como las anteriores.
10

Conclusin:

Fuentes de informacin:
11

http://www.alegsa.com.ar/Dic/pld.php
http://electronicaintegradaunexpo.blogspot.mx/2008/02/gal-y-vhdl.html
http://es.slideshare.net/crayolo/ejemplos-de-win-cupl
http://www.utm.mx/~fsantiag/Sist_Dig/04_Programacion_de_SPLDs_con_WinCU
PL.pdf

12

13