Implementação em FPGA de algoritmos computacionais paralelos

Nos ultimos anos, tem-se assistido a um indiscutível aumento da utilização de sistemas reconfiguráveis. Dentro destes sistemas, as FPGAs (Field- Programmable Gate Array) apresentam-se, assim, como um grande potencial, possibilitando a implementação de projectos de média/grande complexidade, tais com...

ver descrição completa

Detalhes bibliográficos
Autor principal: Figueiredo, Luís Carlos Nobre de Almeida (author)
Formato: masterThesis
Idioma:por
Publicado em: 2011
Assuntos:
Texto completo:http://hdl.handle.net/10773/3567
País:Portugal
Oai:oai:ria.ua.pt:10773/3567
Descrição
Resumo:Nos ultimos anos, tem-se assistido a um indiscutível aumento da utilização de sistemas reconfiguráveis. Dentro destes sistemas, as FPGAs (Field- Programmable Gate Array) apresentam-se, assim, como um grande potencial, possibilitando a implementação de projectos de média/grande complexidade, tais como os algoritmos de manipulação de dados. O tempo de execução e os recursos envolvidos são, de longe, os factores mais importantes a considerar. Nesta perspectiva, foi desenvolvida nesta tese uma implementação de um algoritmo de multiplicação de matrizes e foi comparado o seu tempo de execução face a implementação em software. A implementação do algoritmo na FPGA, debruça-se essencialmente em máquinas de estados finitos, com o intuito de aproveitar o paralelismo que se pode encontrar neste tipo de dispositivos. Foi, também, criada uma comunicação entre um PC de uso geral com a placa FPGA por USB, de modo a ser possível a transmissão de dados entre ambos. O sistema foi implementado e testado com exito, podendo-se observar os resultados da multiplicação através do monitor VGA, ou através do PC.