Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
UNAM F.E.S.C. Laboratorio de: Dispositivos lógicos programables Grupo: 1809-A Reporte#: 6 Nombre del reporte de la práctica: Decodificador de teclado con GAL y Boole Profesor: Lourdes Maldonado López Alumno: Contreras Jiménez Martin Fecha de realización: 08/10/18 Fecha de entrega: 15/10/18 Semestre: 2019-1 Objetivos • Implementar un decodificador de teclado matricial telefónico de 12 teclas. • Obtener la representación en algebra de Boole de la tabla de verdad del decodificador • Implementar las ecuaciones de Boole dentro de un dispositivo GAL22V10. Introducción GAL (Generic Array Logic), en español Arreglo Lógico Genérico, son un tipo de circuito integrado, de marca registrada por Lattice Semiconductor, que ha sido diseñados con el propósito de sustituir a la mayoría de las PAL, manteniendo la compatibilidad de sus terminales. Utiliza una matriz de memoria EEPROM en lugar por lo que se puede programar varias veces. Un GAL en su forma básica es un PLD con una matriz AND reprogramable, una matriz OR fija y una lógica de salida programable mediante una macrocelda. Esta estructura permite implementar cualquier función lógica como suma de productos con un número de términos definido. En los PLDs no reprogramables la síntesis de las ecuaciones lógicas se realiza mediante quema de fusibles en cada punto de intersección de los pines de entrada con las compuertas. En el caso de un GAL es básicamente 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 intersección hay un fusible, el fusible se reemplaza por una celda CMOS eléctricamente borrable (EECMOS). Mediante la programación se activa o desactiva cada celda EECMOS y se puede aplicar cualquier combinación de variables de entrada, o sus complementos, a una compuerta AND para generar cualquier operación producto que se desee. Una celda activada conecta su correspondiente intersección de fila y columna, y una celda desactivada desconecta la intersección. Las celdas se pueden borrar y reprogramar eléctricamente. Las estructuras GAL son estructuras PAL construidas con tecnología CMOS, y fueron comercializadas por primera vez en 1984 por Lattice Semiconductor. Como se ha mencionado, son programables y borrables eléctricamente. Son reprogramables y más flexibles, a la salida de la matriz AND/OR hay un circuito más complejo con selectores y flip-flops que permiten implementar ecuaciones más complejas. Hay distintas arquitecturas según la versión del fabricante El circuito a la salida de la matriz se denomina macrocelda. Tienen integración baja/media. El Terminal puede funcionar como entrada o salida según la programación. Los términos productos se dibujan todos sobre una sola línea para simplificar el diagrama. Un terminal en modo salida puede reflejar la salida Q y Q negada del flip-flop para circuitos secuenciales o la entrada D y negada para circuitos combinacionales. De modo similar puede realimentar el terminal de salida o la salida Q negada del flip flop hacia otros términos. Las GAL se usan para circuitos lógicos sencillos y de complejidad media. Material · 1 GAL22V10D · 1 Teclado telefónico de 12 teclas. · 7 Resistencias de 1 KΩ · 1 Barra de 8 leds ó en su defecto 5 leds individuales. Equipo · 1 Fuente de voltaje de CD. · 1 Multímetro · 1 Programador Universal · 1 Protoboard Procedimiento Experimental 1.-Se ejecutó el software IPSLEVER. 2.- Se creó un proyecto nuevo denominado P6_PLDs con lenguaje VHDL. 3.-Se seleccionó el tipo de dispositivo activando la casilla de: • Show Obsolete Devices • Seleccione Family: GAL Device • Seleccione Device: GAL22V10D • Seleccione Package Type: 24 PDIP 4.-Se creó un archivo fuente nuevo y selecciono un tipo de proyecto VHDL Module. 5.-Se definieron las variables de entrada y salida del sistema así como la indicación de si son entradas o salidas. 6.-Apartir de la información insertada se creó el archivo mostrado. 7.-Se completó la información mostrada en el punto anterior para incluir la definición de terminales y las funciones de Boole para las variables V, W, Y y Z. 8.-Se compilo el proyecto con la opción JEDEC File. 9.-Se implementó el circuito mostrado en la figura 6.11 considerando los cables del teclado mostrados en la figura 6.2. 10.-Se comprobó el código de cada una de las teclas y el bit de validez de código. Tecla Columnas Renglones Código de tecla Bit de código valido C1 C2 C3 R1 R2 R3 R4 WXYZ V 1 011 0111 0001 1 2 101 0111 0010 1 3 110 0111 0011 1 4 011 1011 0100 1 5 101 1011 0101 1 6 110 1011 0110 1 7 011 1101 0111 1 8 101 1101 1000 1 9 110 1101 1001 1 * 011 1110 0000 1 0 101 1110 1010 1 # 110 1110 1011 1 Cuestionario 1.-Describa la función que realiza el comando LOC en el programa en VHDL. LOC sirve para hacer referencia a la asignación de pines por donde entrara o saldrá la señal. 2. Imprima la hoja técnica de la GAL22V10D y describa las características y funcionalidad de las terminales de entrada y salida. · Posee 12 terminales para entradas y otras 10 que pueden configurarse ya sea como entrada/salida. · En el modo registrado, cada macrocelda usa activamente un D-flip-flop para mantener un estado bajo el control de la entrada de datos desde la parte lógica de la macrocelda y el flanco ascendente de la señal del reloj, mientras que en el modo combinatorio se elimina el flip-flop desde la macrocélula y las salidas son controladas directamente por la lógica. · Las entradas y salidas incluyen pull-ups activos y son compatibles con la lógica transistor-transistor debido a los buffers de alta impedancia. Conclusiones · En esta práctica hicimos un decodificador para un teclado de 1 teclas utilizando la gal22v10d. · Yo utilice el programa logisim para obtener la reducción de la tabla de verdad del decodificador de teclado, para las salidas w, x, y, y z no hubo problema alguno para la reducción pero para la salida “V” debido a que eran demasiadas entradas no se redujo Bibliografía http://electronicaintegradaunexpo.blogspot.com/2008/02/gal-y-vhdl.html
Compartir