net/publication/274370958
CITATION READS
1 477
3 authors, including:
Some of the authors of this publication are also working on these related projects:
All content following this page was uploaded by Bárbaro Maykel on 01 April 2015.
Resumen ⎯ El diseño actual de sistemas digitales usando como la visualización correcta de información, y
tecnologías de hardware reconfigurables exige del reuso considerando además que para cualquier aplicación diseñada
para poder garantizar soluciones racionales y en tiempos para un Kit de desarrollo, primero se deben obtener los
razonables. Como resultado fundamental de esta módulos de control de señales de entrada y salida para los
investigación se tiene el diseño en VHDL de un conjunto de periféricos del Kit, con lo cual se pierde un tiempo en el
controladores que pueden ser embebidos en FPGAs para diseño de la aplicación, se propuso como uno de los
comunicar el sistema diseñado con los periféricos más objetivos de este trabajo obtener varios cores de
comunes de un kit de desarrollo, y una metodología para el controladores para periféricos que casi siempre están
reuso de estos módulos. Los controladores implementados presentes en los kit de desarrollo, y que a su vez sean cores
son: VGA, PS2-Mouse, PS2-Teclado, LCD, RS232 TX y independientes de la tecnología de FPGA [1].
RS232 RX. Este conjunto de controladores son de gran uso
en múltiples aplicaciones y serán nuevos módulos que se Haciendo uso del lenguaje VHDL y del Kit de Desarrollo
incorporarán como una nueva biblioteca de la herramienta Spartan-3E de Xilinx se han implementado y verificado los
de desarrollo de Xilinx, junto a otras aplicaciones ya siguientes controladores de periféricos: Controlador para
creadas en el Departamento de Telecomunicaciones y Teclado PS/2, Controlador para Mouse PS/2, Controlador
Electrónica de la Universidad de Pinar del Río, que VGA, Controlador para LCD y Controlador para
permiten el prototipado rápido de aplicaciones sobre Comunicación RS-232. Estos controladores se han
FPGAs. encapsulado en una librería que es usada en el flujo de
diseño de FPGAs de Xilinx permitiendo un prototipado
Palabras Claves ⎯ FPGAs, Reuso, Periféricos, Xilinx rápido de aplicaciones. En pocas horas, tanto el estudiante
como un investigador, puede tener su prototipo funcionando
INTRODUCCIÓN correctamente sin perder tiempo en el diseño del
controlador. El prototipado rápido es especialmente útil
La industria electrónica ha impulsado considerablemente el dentro del campo docente y en los diseños complejos que
desarrollo de los sistemas digitales basados en FPGAs, requieran de rapidez en su implementación. Las
debido fundamentalmente a su versatilidad, a sus altas características propias de las FPGAs las hacen muy
capacidades de integración, bajo coste y una arquitectura interesantes para realizar esta actividad [3],[4].
flexible con posibilidades de implementaciones paralelas [1],
[2]. Cada día son más complejos los diseños que pueden ser DESARROLLO
empotrados en estos dispositivos y por ello el diseño para el
reuso se ha convertido en una práctica habitual en los A continuación se presentarán los resultados de la
últimos años. implementación de diferentes controladores, y el desarrollo
de un mini-procesador de texto con interfaz gráfica como
Desde su surgimiento, el mercado de los FPGAs se ha aplicación que permite mostrar una metodología de
colocado en un estado donde hay dos grandes productores prototipado rápido.
que lo lideran, ellos son: Xilinx y Altera. Por otra parte,
aprovechando la disponibilidad de herramientas software, de Controlador para Teclado PS/2
hardware cada vez más potentes y asequibles y los adelantos Un teclado estándar PS/2 para PC es un dispositivo que se
en las tecnologías de fabricación de los circuitos integrados, encarga del rastreo de teclas, de evitar los rebotes y de
los HDLs (Lenguajes de Descripción de Hardware) logran trasmitir, mediante una trama perfectamente establecida, los
imponerse como herramientas imprescindibles en el resultados de las manipulaciones sobre sus teclas. A cada
desarrollo de nuevos sistemas, fundamentalmente Verilog y una de las teclas se le asigna un código de uno o dos bytes,
VHDL que se han estandarizado. Aparejado al desarrollo de llamado código de Rastreo de Teclado o código SCAN.
los circuitos FPGAs ha estado la evolución de Kit de Estos códigos son los que se trasmiten para indicar que se
desarrollos que facilitan el trabajo de implementación y esta pulsando una tecla determinada. El teclado PS/2 se
verificación así como la enseñanza de estas materias. comunica mediante un protocolo serie síncrono, por lo que
utiliza una señal de reloj que indica cuando el dato esta
Considerando como elementos importantes en el diseño de disponible. Esta señal de reloj tiene un periodo comprendido
un sistema digital con FPGAs la recepción de datos entre 80 us y 100 us. Mientras no se oprima ninguna tecla
proveniente de periféricos externos y su procesamiento, así ambas señales datos y reloj están a un nivel alto. En la
Figura 1 se muestra un diagrama de las señales PS2 para Controlador para Mouse PS/2
Teclado. El protocolo de transmisión del Mouse es idéntico al descrito
para el Teclado. Internamente el mouse contiene un
La trama completa se compone de 11 bits. El primer bit es mecanismo de detección de movimientos en los ejes, y un
de inicio y siempre es “0”, a continuación están los 8 bits del microcontrolador que posee internamente envía los datos de
dato a trasmitir (código SCAN) enviándose primero el movimientos y los eventos relacionados con la pulsación de
menos significativo, el décimo es el bit de paridad y por las teclas. El controlador creado envía un comando de
último el bit de parada que siempre es “1” lógico. El inicialización (F4) para que el mouse funcione normalmente.
protocolo de comunicación para el Teclado PS/2 es
bidireccional, pero el core diseñado solo se ocupa de El mouse envía al sistema paquetes de tres bytes que
controlar la información que viaja desde el teclado hacia el contienen información sobre el movimiento y el estado de
FPGA. los botones. Ver Figura 3. En el primer byte se envía el
FIGURA. 1 estado de los botones, en el segundo byte su ubicación en
coordenadas cartesianas con respecto al eje X y el tercer
byte su ubicación con respecto al eje Y. Estos datos de
ubicación se envían en complemento a 2 para poder tener en
cuenta los semi-ejes negativos. La señal de reloj que se
encarga de sincronizar estos datos tiene la misma frecuencia
que la usada en el controlador de teclado. A continuación se
En la Figura 2 se muestra el esquema modular del muestra un diagrama que describe el proceso de envio de los
controlador para el Teclado PS/2 realizado en VHDL y en la datos PS2 para Mouse.
Tabla I se muestran los recursos ocupados por este módulo
dentro del FPGA. FIGURA. 3
FIGURA. 2
TABLA I FIGURA. 4
Number of Slice 24 out of 4656 0%
FIGURA. 7
TABLA IV
Number of Slice 310 out of 4656 6%
AGRADECIMIENTOS
Al Ministerio de Educación Superior, a la Agencia Española
de Cooperación Internacional para el Desarrollo, a la
Universidad de Alcalá de Henares y a la Universidad de
Pinar del Río por el financiamiento brindado para la
En la Figura 11 se muestra una imagen de la aplicación adquisición de Kit de Desarrollos, para la capacitación de
funcionando. Se puede notar la presencia solamente de un profesores y el desarrollo de proyectos de investigación.
mouse, un teclado un monitor y el Kit de Desarrollo Spartan-
3E. Entre el Kit y el mouse se puede notar la presencia de
una pequeña placa que fue necesario implementar, debido a REFERENCIAS BIBLIOGRÁFICAS
que el Kit solamente posee un puerto PS2.
[1] López B. M. e Iglesias M. E., “Implementación de controladores para
periféricos del Kit de Desarrollo Spartan-3E de Xilinx”, Tesis de
FIGURA. 11 Grado, Departamento de Telecomunicaciones y Electrónica,
Universidad de Pinar del Río, 2008.
[2] Falcón W., “Optimización de Diseños sobre FPGAs e Implementación
Paralela del Decodificador para LPDC”, Tesis de Doctorado. Escuela
Politécnica Superior de la Universidad de Mondragón, 2004.
[3] Kission P., Jerraya A., Moussa I., “Hardware Reuse”, Workshop on
Libraries, Component Modelling, and Quality Assurance, Toledo,
April 1997.
[4] Jiménez F.J., Gadea R., Colom R.J., Martínez M., Ballester F.J. y
Toledo J.F., “Diseño para el reuso: metodología basada en VHDL y
validación mediante implementacion en FPGAs”. Ponencia de la
XXVI Reunión Bienal R.S.E.F. 1997.