Fome e Abundância: Um Paradoxo Brasileiro?

17 a 22 de outubro de 2016

Trabalho 6077

ISSN 2237-9045
Instituição Universidade Federal de Viçosa
Nível Graduação
Modalidade Pesquisa
Área de conhecimento Ciências Exatas e Tecnológicas
Área temática Automação, projetos de máquinas, equipamentos, processos e produtos
Setor Departamento de Informática
Bolsa FAPEMIG
Conclusão de bolsa Não
Apoio financeiro FAPEMIG
Primeiro autor Vanessa Cristiny Rodrigues Vasconcelos
Orientador RICARDO DOS SANTOS FERREIRA
Outros membros Fernando Ferreira Passe, JOSE AUGUSTO MIRANDA NACIF, Lucas Bragança Silva
Título Unidades Funcionais Reconfiguráveis Virtuais Em Sistemas FPGA-Processador Com Memória Compartilhada
Resumo Recentemente tem sido propostas diversas plataformas baseadas em FPGA (Field Programmable Gate Array, em português Arranjo de Portas Programável em Campo) com acesso coerente direto a memória do processador, tratando assim da dificuldade de troca de informação entre o FPGA e o processador. Entretanto, há diversos desafios em se tratando deste tipo de plataforma. Um deles é que os FPGAs são tradicionalmente vistos como complicados de se programar pela comunidade voltada ao desenvolvimento de softwares e pela comunidade dedicada a computação de alta performance, uma vez que as linguagens de descrição de hardware (HDL) não são muito amigáveis ou convidativas para os desenvolvedores destas mesmas comunidades. Além disto, para aplicações maiores, o tempo gasto para a geração e carregamento do bitstream para o FPGA pode ser muito longo, o que também é um empecilho na checagem de erros do código HDL pelo programador. Por outro lado, existe as vantagens de se trabalhar com as plataformas FPGA-Processador. O FPGA é extremamente adaptável e oferece um grau de paralelismo o qual permite acelerar o tempo de computação dos dados, aumentando assim a eficiência das aplicações. Dito isto, este artigo propõe um framework para explorar as plataformas FPGA-Processador como uma oportunidade para acelerar aplicações as quais se utilizam de fluxos de dados e de paralelismo irregular, aproveitando-se assim dos pontos fortes deste tipo de plataforma explicados acima. Uma camada virtual é mapeada dentro do FPGA, assim um grafo de fluxo de dados pode ser traduzido e dinamicamente mapeado para dentro do acelerador do FPGA. Esta camada só será carregada para o FPGA uma única vez, a fim de economizar o tempo que seria gasto lidando com o bitstream. Em resumo, o framework proposto adiciona uma camada de reconfiguração dinâmica em tempo de execução à plataforma FPGA-Processador Memória-compartilhada da Intel®, juntando assim o melhor do FPGA que é seu paralelismo abundante e diminuindo o que ele tem de mais complicado que é a complexidade de programa-lo.
Palavras-chave FPGA-Processador, Memória Compartilhada, FPGA
Forma de apresentação..... Painel
Gerado em 0,63 segundos.