0 evaluări0% au considerat acest document util (0 voturi)
56 vizualizări6 pagini
Este documento presenta una descripción del entorno de programación OPAL, estudiando su sintaxis, sentencias y archivos de ejecución. Explica que OPAL permite implementar diseños completos en un solo dispositivo lógico programable a través de tablas de verdad, ecuaciones o diagramas de estado. Además, muestra un ejemplo práctico de diseño e implementación de un circuito de alarma de incendios usando OPAL.
Este documento presenta una descripción del entorno de programación OPAL, estudiando su sintaxis, sentencias y archivos de ejecución. Explica que OPAL permite implementar diseños completos en un solo dispositivo lógico programable a través de tablas de verdad, ecuaciones o diagramas de estado. Además, muestra un ejemplo práctico de diseño e implementación de un circuito de alarma de incendios usando OPAL.
Este documento presenta una descripción del entorno de programación OPAL, estudiando su sintaxis, sentencias y archivos de ejecución. Explica que OPAL permite implementar diseños completos en un solo dispositivo lógico programable a través de tablas de verdad, ecuaciones o diagramas de estado. Además, muestra un ejemplo práctico de diseño e implementación de un circuito de alarma de incendios usando OPAL.
Resumen Presentamos una breve descripcin de todo lo
relacionado con el entorno de programacin OPAL, estudiando su sintaxis, sentencias y dems archivos de ejecucin que se crean al momento de compilar una funcin permitindonos simular distintas aplicaciones. Diseando ejercicios y simulando los resultados seremos capaces de verificar todas las prestaciones y beneficios que tiene este entorno de programacin
Abstract We present a brief description of all related to the programming environment OPAL, studying its syntax, statements and other files which are created at the time of compile a function allowing us to simulate different applications. Designing exercises and simulating the results we will be able to check all the features and benefits that have this programming environment
I. INTRODUCCIN Los dispositivos lgicos programables, denominados PLDs (acrnimo de las palabras inglesas Programmable Logic Devices) son circuitos integrados digitales normalizados que se caracterizan porque la funcin que realizan se puede cambiar mediante la programacin de las conexiones entre los elementos que los componen, lo cual se conoce como configurabilidad. Los primeros PLD fueron realizados a mediados de la dcada de 1970 a partir de matrices lgicas programables PLA y PAL, y su desarrollo, paralelo al de la Microelectrnica, ha dado lugar a la creacin de numerosas variantes alternativas, lo que dificulta la comparacin entre los dispositivos comercializados por los distintos fabricantes. Esto impuls el trabajo en equipo de los autores para elaborar un mtodo de anlisis y clasificacin que facilite la compresin de los distintos circuitos PLD y que permita establecer mtodos de diseo de sistematicen la realizacin de sistemas basados en ellos. Uno de estos entornos de programacin de PLDs se denomina OPAL.
II. DESARROLLO DEL ARTCULO
A. Definicin OPAL.
Ilustracin 1 Definicin OPAL Si queremos implementar un circuito en OPAL, podemos utilizar bsicamente tres mtodos para describir el comportamiento del mismo:
Ilustracin 2 Mtodos de Implementacin en OPAL
Significa Open Programming Architecture Language. Es un lenguaje de descripcin de hardware que nos permite implementar diseos completos en un solo dispositivo lgico programable (PLD) como por ejemplo una GAL Esto tiene la ventaja de reducir el nmero de componentes necesarios de varias compuertas y otros dispositivos a un solo circuito integrado que realiza justo la tarea que nosotros definimos va software. M. Gallardo magallardo@espe.edu.ec D. Maya damaya@espe.edu.ec F. Quinga, fdquinga@espe.edu.ec D. Tumipamba drtumipamba@espe.edu.ec Universidad de las Fuerzas Armadas ESPE
OPAL M e t o d o s
d e
I m p l e m e n t a c i o n
Captura por tabla de verdad Captura por ecuaciones (para circuitos combinacionales) Captura por diagramas de estados (para circuitos secuenciales) 2 OPAL Adaptable a cualquier diseo. Aceptan un formato de entrada y crean otro formato de salida. El mdulo OPL2PLA requiere un archivo *.opl, y genera un archivo PLA, *.pla. Lenguaje de maquina de estado, ecuaciones boleanas multi-nivel, asi como tablas de verdad. B. Caractersticas
Ilustracin 3 Caractersticas OPAL
C. Funcionamiento
Ilustracin 4 Funcionamiento
D. Entorno OPAL
Ilustracin 5 Pantalla Principal En la parte superior se encuentran los Ttulos de las Ventanas En la parte inferior se encuentran teclas rpidas para algunas funciones y que ejecutaran la Operacin sealada con solo oprimir la tecla de funcin.
La ventana File contiene nueve opciones y al igual que los Ttulos de las Ventanas cada una de las opciones tiene tambin una letra resaltada y al oprimir alguna de ellas se seleccionara la funcin correspondiente
Ilustracin 6 Ventana View
OPL File: busca archivos con cualquier nombre; pero, con extensin OPL (.opl). PLA Map: busca archivos con cualquier nombre; pero, con extensin PLA (.pla). EQN File: busca archivos con cualquier nombre; pero, con extensin EQN (.eqn). JEDEC MAP: busca archivos con cualquier nombre; pero, con extensin JEDEC (.jed). LOG File: busca archivos con cualquier nombre; pero, con extensin LOG (.log). GAL File: busca archivos con cualquier nombre; pero, con extensin GAL (.gal). CKT File: busca archivos con cualquier nombre; pero, con extensin CKT (.ckt). LIS File: busca archivos con cualquier nombre; pero, con extensin LIS (.lis).
Ilustracin 7 Ventana Simulate La ventana Simulate permite realizar la simulacin del circuito que se acaba de disear dentro de OPAL, dentro de esta ventana se encuentran dos opciones y que con la ayuda de la ventana de bsqueda se podrn efectuar ms rpidamente la seleccin de los archivos de simulacin. El objetivo del paquete de software PLD es crear un mapa JEDEC de los estados de fusibles del PLD El mapa JEDEC contiene datos dependientes del dispositivo, como la asignacion de pines El numero de fusibles de cada termino del producto , el tipo de retroalimentacion, y asi sucesivamente 3 Device Especificamos el dispositivo en que programaremos nuestro diseo terminando con punto y coma Entradas Y Salidas Definimos los pines de entrada y de salida con su respectivo reloj, vcc y gnd(tierra). Ecuaciones EQUATIONS Esta directiva nos abre el campo para poder escribir nuestras ecuaciones Aspectos Importantes Como sabemos, un circuito secuencial requiere forzosamente de una entrada de reloj que indique a los elementos de memoria cuando trabajar. Definir los bits de estado, los cuales sern los nombres con los que nos referiremos a cada uno de los bits que juntos indicarn el nmero de estado en el que se encuentra la mquina secuencial Opalsim.- Despus de la bsqueda del archivo de simulacin (.ckt), se proceder a la generacin de un archivo (.Lst) basado en la Tabla de Estados anexada al archivo (.ckt) donde se podrn visualizar los diagramas de tiempos de la Tabla mencionada. Opalview.- Mediante esta opcin se efecta la visualizacin en pantalla de los diagramas de tiempos, para esto es necesario que exista el archivo que se cre con la opcin anterior (.Lst).
Ilustracin 8 Ventana Modules La ventana Modules posee nueve opciones, cabe hacer mencin que es una de las ventanas ms importantes dentro del paquete (Software) ya que dentro de ella se realiza la conversin (Ensamble y compilacin).
E. Diseo de Aplicaciones Opal
Al igual que en el caso de un circuito combinacional, el programa en OPAL comienza con un header en el que puede incluirse la descripcin del diseo e inmediatamente despus las definiciones del dispositivo.
Ilustracin 9 Aspectos diseo aplicaciones F. Diseo de circuitos combinacionales en OPAL
Ilustracin 10 Estructura programa OPAL K. Ejemplo
Alarma de incendios Se quiere realizar un circuito para activar la alarma de incendios (A) para la evaluacin de un edificio. Para ello se tiene un sensor de gases (G), un sensor de humos (H), y dos seales procedentes de un termmetro que indican si la temperatura en mayor de 45C (T45) y si la temperatura es mayor de 60C (T60). Debido a que a veces los sensores detectan humos y gases que no siempre proceden de incendios (por ejemplo de cigarrillos o cocinas), para evitar falsas alarmas, la seal A se activara cuando se cumplan las siguientes condiciones: Si la temperatura es mayor de 60C siempre se activara la alarma. Si la temperatura esta entre 45C y 60C se activara la alarma solo si han detectado gases o homos (o ambos). Si la temperatura es menor de 45C se activara la alarma solo si se detectan gases y humos. Resumiendo, las 4 seales binarias de entrada y salida: G: vale 1 si se detecta gas resultante de la combustin H: vale 1 se se detecta humo T45: vale 1 se la temperatura es superior a 45C T60: vale 1 se la temperatura es superior a 60C La seal de salida A (alarma) se activara a nivel alto Solucin:
Tabla de verdad: 4 Ilustracin 11 Tabla de verdad
Simplificacin por mapas de Karnaugh
Ilustracin 12 Mapas de karnaugh
Para nuestra implementaciones utilizamos el chip GAL 16V8
Ilustracin 13 Chip PLD Definimos las variables, el chip que vamos a utilizar y las ecuaciones de las funciones implementadas
Ilustracin 14 Entorno OPAL Guardamos el archivo y lo cargamos nuevamente
Ilustracin 15 Guardar Archivo
En la pestaa MODULES seleccionamos EQ2NJED y a continuacin presionamos RUN
Ilustracin 16 Ventana EQN2JED Tenemos la siguiente pantalla Ilustracin 17 Ventana EQ2NJED con RUN En la pestaa MODULES seleccionamos JED2CKT y a continuacin presionamos RUN Ilustracin 18 Ventana JED2CKT Obtenemos 5 Ilustracin 19 Ventana JED2CKT con RUN En la pestaa VIEW seleccionamos CKT File Ilustracin 20 Ventana Principal A continuacin configuramos las entradas que necesitamos para la simulacin, y presionamos en la pestaa SIMULATE la opcin OPALview Ilustracin 21 Ventana CKT Obteniendo as las simulaciones Ilustracin 22 Simulacin en OPAL III. APLICACIONES Como aplicaciones tenemos el diseo de circuitos combinacionales y secuenciales a partir de sus funciones determinadas previamente Tambin podemos utilizar este entorno en aplicaciones a partir de la Tabla de Verdad del comportamiento que tendra el circuito Podemos aplicar para PLDs y de esta forma tener menor nmero de circuitos integrados, adems que podemos utilizarlos en otras aplicaciones y bajar el costo de nuestros circuitos ya que optimizamos recursos de tiempo. Se emplean para tareas especficas empleando un solo chip
IV. CONCLUSIONES - Opal es un lenguaje que nos permite implementar diseos completos en un solo dispositivo lgico programable (PLD) reduciendo as el nmero compuertas a un solo circuito integrado que realiza una tarea especfica. - Para la implementacin de funciones en OPAL podemos emplear tanto el mtodo de Ecuaciones, o a travs de la Tabla de verdad o tambin por medio de el Diagrama de Estados. - Al implementar funciones en OPAL estamos creando distintos archivos con extensiones diferentes las mismas que nos ayudan a configurar todos los parmetros para tener una correcta simulacin de los resultados de la implementacin del circuito - Podemos emplear distintos tipos de chips para la programacin en OPAL, pudiendo ser estos del tipo PAL o del tipo GAL, sin olvidarnos de declararlo a la hora de programar. IV. RECOMENDACIONES - Familiarizarse muy bien con el entorno OPAL y con todas sus funciones y diferentes tipos de archivos. - Implementar funciones no solo con ecuaciones, sino tambin hacerlo con su Tabla de verdad o Diagrama de Estado para as verificar si los resultados de las simulaciones son los mismos. - Instalar una mquina virtual con Windows XP debido a que sistemas operativos como Windows 8 no soporta este entorno de programacin
V. REFERENCIAS
[1] Lozada, J. C. H., Contreras, A. C., & Robles, J. C. G. MIGRACIN DEL HDL PARA LA SNTESIS LGICA SOBRE DISPOSITIVOS GAL.
[2] Wakerly, J. F. (2000). Digital design (Vol. 3). Prentice Hall.
[3] Kaplinsky, C. H. (1989). U.S. Patent No. 4,847,612. Washington, DC: U.S. Patent and Trademark Office.
[4] Brown, S., & Rose, J. (1996). Architecture of FPGAs and CPLDs: A tutorial.IEEE Design and Test of Computers, 13(2), 42-57.
6
AUTORES
Francisco David Quinga Quinga, naci en Sangolqu-Pichincha-Ecuador, el 28 de Enero de 1991. Se gradu en el Colegio Particular Experimental Lev Vygotsky obteniendo el ttulo de bachiller en Ciencias Bsicas en el ao 2008. Actualmente cursa 7mo semestre de la carrera de Ingeniera en Telecomunicaciones en la Universidad de las Fuerzas Armadas ESPE. No trabaja actualmente.
Darwin Ricardo Tumipamba Guanopatin, naci en Quito el da 30 de Agosto de 1990, realizo sus estudios primarios en la escuela Fiscal Mixta Humberto Vacas Gmez, su educacin secundaria la curso en el colegio Tcnico Don Bosco, obteniendo el ttulo de bachiller en Mecnica Industrial, actualmente est cursando el sptimo semestre de la carrera de electrnica en automatizacin y control.
Miguel ngel Gallardo Bastidas, naci en Quito el da 19 de Agosto de 1988, realizo sus estudios primarios en la Academia Militar del Valle, su educacin secundaria la curso en el colegio Particular Andrew, obteniendo el ttulo de bachiller en Ciencias Bsicas, actualmente est cursando el sptimo semestre de la carrera de electrnica en automatizacin y control.
Diego Alejandro Maya Tulcanaza, naci en Quito el da 23 de Marzo de 1990, realizo sus estudios primarios en la escuela Eugenio Espejo, su educacin secundaria la curso en el colegio Tcnico Don Bosco obteniendo el ttulo de bachiller en Elctrica y Electrnica, actualmente est cursando el octavo semestre de la carrera de electrnica en automatizacin y control.