Document related concepts
no text concepts found
Transcript
Descripción de hardware para interfase con puerto paralelo tipo IEEE 1284 Trapanotto, A.; Brengi, D.; Tropea, S. Introducción En el diseño de circuitos digitales complejos las distintas funciones se dividen jerárquicamente en módulos independientes llamados IP (Intellectual Property) con el objetivo de facilitar su posterior reutilización. Los módulos IP se describen a través de su comportamiento y su arquitectura de interconexión utilizando lenguaje de descripción de hardware VHDL[1], y se pueden implementar tanto en FPGA (Field Programmable Gate Array) como en ASIC (Application Specific Integrated Circuit) para producción masiva. Se presenta en este trabajo el desarrollo de una IP que hace de puente (módulo de interconexión) entre el puerto paralelo de una computadora en modo EPP[2] (Enhanced Parallel Port) y cualquier otro módulo IP que utilice interfase Wishbone[3]. Descripción Experimental En el proceso de desarrollo de un circuito digital complejo se describen diversos módulos IP que componen la arquitectura del sistema digital. Para poder interconectar estos módulos dentro de un mismo diseño se requiere un método flexible pero estandarizado de interconexión de módulos IP. La arquitectura de interconexión Wishbone es una de las más utilizadas para este fin en los diseños IP de libre uso y distribución[4][5]. Con este diseño se logra aprovechar el hardware adicional que casi todas las computadoras modernas incorporan a su puerto paralelo para trabajar en modo EPP. Esta extensión esta especificada en el estándar IEEE 1284 y permite transferencias de entrada y salida de información a alta velocidad y el direccionamiento de varios dispositivos utilizando el puerto paralelo. Diseñando periféricos externos que utilicen este modo de comunicación se pueden aprovechar las ventajas de esta extensión. El módulo IP desarrollado permite a la FPGA comunicarse hacia el exterior en modo EPP y se conecta dentro de la misma FPGA, con cualquier periférico ó módulo IP compatible con la arquitectura Wishbone. Resultados INSTITUTO NACIONAL DE TECNOLOGÍA INDUSTRIAL Se han logrado prototipos de laboratorio implementando esta interfase como nexo entre la computadora y diversos módulos, aprovechando las capacidades avanzadas del puerto paralelo. Se realizo una aplicación en la que se capturan los datos desde un encoder y se los transfiere a la computadora a través de un circuito implementado en una FPGA Altera EPM7128. El programa que se ejecuta en la computadora fue desarrollado en lenguaje “C” utilizando sistema operativo Debian GNU/Linux[6]. El acceso del programa al puerto paralelo de la computadora se baso en la librería libieee1284[7] . Conclusiones Este trabajo autogenerado se ha aplicado exitosamente a la lectura de un encoder a través del puerto paralelo de la computadora como parte de un equipo desarrollado para una importante empresa nacional. Se espera en el futuro aplicar el puente desarrollado para trabajos que involucren periféricos con modulación por ancho de pulso, E/S digitales, microcontroladores, controladores especiales, y buses de comunicación específicos. Esto permitirá resolver problemas de alta complejidad utilizando el puerto paralelo y un solo chip FPGA con todos los módulos de descripción de hardware funcionando en su interior. Referencias [1] “Very high speed integrated circuits Hadrware Description Language” (http://www.vhdl.org/, verificado 29/sep/04). [2] Interfacing the Enhanced Parallel Port (http://www.beyondlogic.org/epp/epp.htm, verificado 29/sep/04). [3] “The Wishbone System-on-chip (Soc) Interconnect Architecture for Portable IP Cores” (http://www.opencores.org/projects.cgi/web/wishbone/wishbone, verificado 29/sep/04). [4] Opencores.org (http://www.opencores.org/, verificado 29/sep/04). [5] Navegando en busca del “Free Hardware” (http://utic.inti.gov.ar/free_hardware/, verificado 29/sep/2004). [6] Debian GNU/Linux (http://www.debian.org/, verificado 29/sep/04). [7] libieee1284 (http://cyberelk.net/tim/libieee1284/, verificado 29/sep/04). Para mayor información contactarse con: Andrés Trapanotto – andres_t@inti.gov.ar 1