Implementación del método gradiente conjugado en un FPGA arquitectura Spartan 6
No hay miniatura disponible
Fecha
2014-07-25
Autores
Título de la revista
ISSN de la revista
Título del volumen
Editor
Pontificia Universidad Católica del Perú
DOI
Resumen
Resolver un sistema de ecuaciones lineales simult´aneas es un problema fundamental en el
algebra lineal num´erica, y una de las etapas elementales en simulaciones cient´ıficas. Ejemplos
son los problemas de ciencias e ingenier´ıa modelados por ecuaciones diferenciales ordinarias
o parciales, cuya soluci´on num´erica est´a basada en m´etodos de discretizaci´on que conducen a
sistemas de ecuaciones lineales. Estos sistemas pueden ser resueltos de manera directa; sin embargo,
cuando el orden del sistema es demasiado grande el costo computacional se incrementa.
Ante esta situaci´on se emplean m´etodos iterativos, los cuales son m´as eficientes y tienen una
menor demanda computacional (p.e: Jacobi, Gauss-Seidel, Gradiente Conjugado, etc.).
En el presente trabajo se presenta un sistema digital basado en un procesador, un coprocesador
y una memoria externa que desarrolla el m´etodo del Gradiente Conjugado. El sistema
fue implementado en la arquitectura Spartan-6, la cual cuenta con un softprocessor de
32 bits llamado MicroBlaze y el FPGA propiamente dicho. MicroBlaze dirige el flujo del algoritmo,
adem´as de desempe˜nar las operaciones m´as sencillas (sumas vectoriales, productos
internos, divisiones, etc). En tanto, en el FPGA se implement´o un coprocesador, el cual fue
descrito en VHDL, que se encarga de la operaci´on de mayor costo computacional: el producto
Matriz - Vector. El procesador y el coprocesador se comunican mediante interfaces unidireccionales
basadas en unidades FIFO llamadas Fast Simplex Link (FSL). Se emple´o el entorno
EDK (Embedded Development Kit) de la empresa Xilinx, para configurar el procesador, los
perif´ericos y el coprocesador; y se emple´o la plataforma Atlys de la empresa Digilent para
implementar el sistema propuesto. La implementaci´on final es aproximadamente 2 veces m´as
r´apida y tiene una eficiencia de 0.25, respecto de la implementaci´on de referencia que se desarroll
´o empleando solo el procesador.
El orden que sigue la tesis es el siguiente: En el primer cap´ıtulo se presenta el contexto
de la tesis y se define puntualmente el problema que se desea resolver. En el segundo cap´ıtulo
se cubre la mayor´ıa de aspectos te´oricos necesarios. La arquitectura propuesta, y los detalles
de los componentes del sistema se especifican en el cap´ıtulo tres. Por ´ultimo, se presentan los
resultados en el cap´ıtulo cuatro, seguido de las conclusiones.
Descripción
Palabras clave
Algoritmos, Sistemas lineales, Dispositivos lógicos programables
Citación
Colecciones
item.page.endorsement
item.page.review
item.page.supplemented
item.page.referenced
Licencia Creative Commons
Excepto se indique lo contrario, la licencia de este artículo se describe como info:eu-repo/semantics/openAccess