1 / 45

Contenido de la presentación (1):

Download Presentation

Contenido de la presentación (1):

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Instituto Politécnico NacionalMaestría en Ciencias en Ingeniería de CómputoAsignatura:Programación de Sistemas de CómputoReporte Final del Proyecto:“Programación de una Interfaz Grafica de Usuario en ambiente GNU/Linux para la Transmisión Serial de Datos y Configuración del dispositivo FPGA embebido en la Tarjeta de Desarrollo DE2 para la Recepción y Despliegue Visual de los mismos.”Alumno: José Raúl García Ordaz

  2. Contenido de la presentación (1): • Introducción • Objetivos • Justificación • Antecedentes Teóricos y Estado del Arte • Descripción del Sistema • Análisis y Diseño del Sistema • Funcionamiento del Puerto Serie RS232 Presentación Final

  3. Contenido de la presentación (2): • Programación de la Interfaz Gráfica de Usuario • Configuración del dispositivo FPGA embebido en la Tarjeta de Desarrollo DE2 • Desarrollo Experimental y Resultados Obtenidos • Conclusiones • Trabajos Futuros • Recomendaciones • Bibliografía Presentación Final

  4. Introducción (1) • Para el desarrollo de los Sistemas Digitales modernos se hace uso de programas conocidos como Entornos de Desarrollo Integrado ó IDE (Integrated Development Environment). • Un IDE es un entorno de programación que típicamente consiste en un editor de código, un compilador, un depurador y, de acuerdo a la aplicación, un constructor de Interfaz Gráfica de Usuario (GUI). Presentación Final

  5. Introducción (2) • Tal es el caso de Programas como: • MPLAB de Microchip • C++Builder de Borland • KDevelop de KDE • ISE WebPack de Xilinx • Para este proyecto se hace uso de dos herramientas en particular: • Qt de Qt Software (antes conocido como Trolltech y recientemente adquirido por Nokia) Presentación Final

  6. Introducción (3) • Quartus II de Altera • El uso combinado de dichas herramientas dará como resultado la implementación de un sistema que deberá cumplir con los siguientes: Presentación Final

  7. Objetivos (1): • Objetivo General: • “Implementar un Sistema constituido por una Interfaz Gráfica de Usuario en ambiente GNU/Linux, que sea capaz de enviar datos a través del puerto serie de la computadora y configurar el dispositivo FPGA embebido en la tarjeta de desarrollo DE2 de Altera, de modo que posibilite la adquisición del dato por medio del receptor serie (RXD) empotrado en dicha tarjeta, para su posterior despliegue en forma visual.” Presentación Final

  8. Objetivos (2): • Objetivos Específicos: • Revisar la teoría del funcionamiento del puerto serie RS232. • Aprender a programar el puerto serie RS232 en ambiente GNU/Linux. • Aprender a usar el entorno de programación Qt. • Conocer las características de la tarjeta de desarrollo DE2 de Altera. • Familiarizarse con el lenguaje Verilog-HDL. Presentación Final

  9. Justificación (1) • Se eligió este proyecto debido a que implica el uso del entorno de programación Qt para desarrollo de Software, así como del IDE Quartus II, mediante el uso de Verilog-HDL, el cual está orientado a la programación de Dispositivos de Lógica Programable. • Ésta combinación permite adquirir conocimientos que se complementan y que servirán de base para poder diseñar en el futuro Sistemas Digitales más complejos. Presentación Final

  10. Justificación (2) • En cuanto a la elección de los IDE Qt y Quartus II y del lenguaje Verilog-HDL como elementos para el diseño del sistema, se debe a que en la actualidad se encuentran entre los más ampliamente utilizados tanto en el área académica como en la industria, algunos ejemplos de lo anterior se indican en la siguiente sección. Presentación Final

  11. Antecedentes Históricos y Estado del Arte (1) • Transmisión Serial de Datos y el Puerto Serie RS232 • En una PC, el puerto serie típico es el RS232, el cuál es una interfaz que designa una norma que se ha utilizado para conectar al ordenador con todo tipo de periféricos como impresoras, módems ó ratones. Presentación Final

  12. Antecedentes Históricos y Estado del Arte (2) • Dado el avance tecnológico de las interfaces de transmisión de datos y a la baja velocidad de transmisión que posee la norma RS232, ésta ha caído en desuso siendo desplazada por interfaces seriales más rápidas como el USB, el FireWire ó el Serial ATA. Presentación Final

  13. Antecedentes Históricos y Estado del Arte (3) • Los IDE para el desarrollo de Interfaces Gráficas de Usuario para ambiente GNU/Linux más utilizados son, sin duda, KDevelop, GTK+ y Qt. El primero orientado al uso bajo el entorno gráfico KDE y el segundo y tercero al entorno de Gnome. Presentación Final

  14. Antecedentes Históricos y Estado del Arte (4) • Qt (Pronunciado “cute” por sus creadores), es un IDE desarrollado por la compañía noruega Qt Software. • Se encuentra disponible además del ambiente GNU/Linux, para plataformas como Windows, Mac OS y Embedded Linux. • Usado para el desarrollo de aplicaciones como Google Earth y Skype. Presentación Final

  15. Antecedentes Históricos y Estado del Arte (5) Presentación Final

  16. Antecedentes Históricos y Estado del Arte (6) • Xilinx y Altera son las dos compañías más grandes que fabrican y distribuyen dispositivos lógicos programables, las cuales proveen también software IDE para el análisis, síntesis y simulación de HDL para la implementación en sus dispositivos. Presentación Final

  17. Antecedentes Históricos y Estado del Arte (7) • Durante la década de los setenta, se crearon varios HDL como IDL de IBM, TI-HDL de Texas Instruments, ZEUS de General Electric • Durante la década de los ochenta aparecieron lenguajes como ABEL, AHDL, VHDL y Verilog. Siendo los dos últimos, los lenguajes de descripción de Hardware más usados actualmente. Presentación Final

  18. Antecedentes Históricos y Estado del Arte (8) • Desarrollado por la compañía Gateway Design Automation en 1983. Fue diseñado tomando características del lenguaje HDL más popular en ése tiempo llamado HiLo así como de lenguajes de programación tradicionales como C. • En 1995 el lenguaje se volvió un estándar de IEEE. El estándar completo se describe en el documento “Verilog Hardware Description Language Reference Manual”. El estándar es llamado Std. 1364-1995. Presentación Final

  19. Antecedentes Históricos y Estado del Arte (9) • Entre las características principales de Verilog-HDL se encuentran las siguientes: • Notación formal y estandarizada. • Disponibilidad pública. • Independencia de la tecnología de diseño. • Independencia de los proveedores. • Capacidad descriptiva en distintos niveles de abstracción. • Reutilización del código. Presentación Final

  20. Antecedentes Históricos y Estado del Arte (10) • Dispositivos de Lógica Programable • Un dispositivo de lógica programable es un CI cuya estructura interna está formada por un arreglo de compuertas y en un principio no se especifican sus interconexiones, además cuenta con una tecnología que le permite programar y reprogramar sus funciones lógicas permitiendo que sea el diseñador lógico en campo, quien especifique las funciones del dispositivo sin necesidad de reemplazarlo físicamente. Presentación Final

  21. Antecedentes Históricos y Estado del Arte (11) • Los dispositivos FPGA (Field Programmable Gate Array), son arreglos de compuertas programables por campo y están constituidos por una matriz de LABs (Logic Array Blocks), los cuales son interconectados entre ellos para poder generar un sistema en específico. Presentación Final

  22. Descripción General del Sistema Propuesto Presentación Final

  23. Funcionamiento del Puerto Serie RS232 Diagrama de tiempo de la transmisión serie Bits de inicio y de paro Presentación Final

  24. Programación de la Interfaz Gráfica de Usuario (1) Presentación Final

  25. Programación de la Interfaz Gráfica de Usuario (2) Inicio Abrir puerto Si Error? No Escribir en el puerto Fin Presentación Final

  26. Programación de la Interfaz Gráfica de Usuario (3) stty -F /dev/YOUR_TERMINAL_DEVICE 300 Presentación Final

  27. Programación de la Interfaz Gráfica de Usuario (4) Presentación Final

  28. Programación de la Interfaz Gráfica de Usuario (5) Presentación Final

  29. Programación de la Interfaz Gráfica de Usuario (6) Presentación Final

  30. Configuración del Dispositivo FPGA embebido en Tarjeta de Desarrollo DE2 (1) Presentación Final

  31. Configuración del Dispositivo FPGA embebido en Tarjeta de Desarrollo DE2 (2) Presentación Final

  32. Configuración del Dispositivo FPGA embebido en Tarjeta de Desarrollo DE2 (3) Presentación Final

  33. Configuración del Dispositivo FPGA embebido en Tarjeta de Desarrollo DE2 (4) Presentación Final

  34. Configuración del Dispositivo FPGA embebido en Tarjeta de Desarrollo DE2 (4) Presentación Final

  35. Configuración del Dispositivo FPGA embebido en Tarjeta de Desarrollo DE2 (5) Presentación Final

  36. Configuración del Dispositivo FPGA embebido en Tarjeta de Desarrollo DE2 (5) Presentación Final

  37. Serial in – Data Out Presentación Final

  38. Presentación Final

  39. Presentación Final

  40. Reporte de Resultados • Al término del proyecto se alcanzaron los siguientes resultados: • Se logró la Transmisión serial del dato desde la Interfaz Gráfica de Usuario. • Se logró la adquisición del dato mediante el módulo programado en el FPGA. • Se desplegó dicho dato en el display de 7 segmentos. • NOTA: Solo se envía y recibe 1 byte(Caracteres 0 – F) Presentación Final

  41. Conclusiones • Se logró alcanzar el objetivo planteado haciendo uso de las IDE Qt (C++) y Quartus II (Verilog-HDL). • Entender el funcionamiento básico de un protocolo (RS232) , lenguaje (C++, Verilog-HDL), herramienta IDE (Quartus II, Qt ) permitió alcanzar el resultado. • Combinando estas herramientas y lenguajes se tiene un gran potencial para el diseño y desarrollo de sistemas digitales mucho más complejos. Presentación Final

  42. Trabajos Futuros • Mejorar la GUI de Qt para enviar la información desde un cuadro de texto. • Mejorar la lógica del código para lograr la adquisición de una cadena de caracteres y no sólo un byte. • Desplegar dicha cadena en el LCD embebido y no sólo en el LCD. • Crear un módulo TXD, para el envío de datos hacia el PC. Presentación Final

  43. Recomendaciones • Promover el uso de herramientas de software libre. • Combinar diseño de SW y HW. Presentación Final

  44. Bibliografía • Unix Programación Avanzada. Francisco M. Márquez. Ed. Alfaomega. • Digital Design, Principles and Practices. Jhon F. Wakerly. Ed Prentice Hall • Diseño Digital. M. Morris Mano. Ed. Prentice Hall. • A Verilog HDL Primer. J. Bhashker. Ed. SPG • C++ GUI Programming with Qt 3. Jazmín Blanchette, Mark Summerfield. Ed. Prentice Hall in association with Trolltech Press Presentación Final

  45. Links de Interés • http://es.tldp.org/COMO-INSFLUG/COMOs/Programacion-Serie-Como/ • http://trolltech.com/ • ftp://sunsite.unc.edu/pub/Linux/docs/LDP/programmers-guide/ • http://www.altera.com Presentación Final

More Related