Mapeamento e posicionamento de módulos processantes em sistemas dinamicamente reconfiguráveis baseados em redes intrachip.

Detalhes bibliográficos
Ano de defesa: 2014
Autor(a) principal: Gomes Filho, Jonas
Orientador(a): Não Informado pela instituição
Banca de defesa: Não Informado pela instituição
Tipo de documento: Tese
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Biblioteca Digitais de Teses e Dissertações da USP
Programa de Pós-Graduação: Não Informado pela instituição
Departamento: Não Informado pela instituição
País: Não Informado pela instituição
Palavras-chave em Português:
Link de acesso: http://www.teses.usp.br/teses/disponiveis/3/3140/tde-31122015-104807/
Resumo: Sistemas Dinamicamente Reconfiguráveis (SDRs) tem sido aceitos como alternativa importante para diminuir os custos de circuitos digitais. Porém, eles adicionam novas dimensões no projeto de Sistemas sobre Silício (System-On-Chip, SoC). Apesar de novas metodologias terem sido propostas por fabricantes de FPGA para lidar com a complexidade deste tipo de circuitos, as soluções ainda são muito específicas. Considerando-se que o uso de recursos de comunicação robustos em SoCs complexos atuais é generalizado, os meios de comunicação estruturados, como rede Intrachips (Network-On-Chip, NoCs), foram incluídas em sistemas dinamicamente reconfiguráveis, gerando-se arquiteturas de SDRs baseadas em NoCs, ou de SDR-NoCs. Arquiteturas de SDR-NoCs podem ser simples ou complexas. As arquiteturas de SDR-NoCs simples são aquelas com topogias regulares e diretas e Módulos Processantes (MPs) homogêneos. As arquiteturas de SDR-NoCs complexas são aquelas com topologias irregulares e indiretas com MPs heterogêneos. O mapeamento é a fase no fluxo de projeto do SoC que visa encontrar a melhor localização das unidades de processamento da aplicação junto à topologia da NoC, de tal forma que as métricas de interesse podem ser otimizadas. O problema do posicionamento lida com a alocação otimizada de recursos (cores) dentro do dispositivo reconfigurável. No mapeamento de SDR-NoCs, a capacidade de reconfiguração no tempo acrescenta uma nova dimensão ao problema de mapeamento, uma vez que diferentes cores são atribuídos ao mesmo roteador, mas estão presentes no dispositivo em momentos distintos. Para arquiteturas de SDR-NoCs complexas, o problema de mapeamento está fortemente associado ao problema do posicionamento e convém tratá-los em conjunto. Até o presente momento, o problema de mapeamento e posicionamento para SDR-NoCs não tem sido tratados adequadamente. Neste trabalho são apresentadas soluções para o mapeamento e/ou posicionamento de MPs para arquiteturas SDR-NoCs tanto simples quanto complexas. Primeiramente, uma estratégia de mapeamento é proposta para arquiteturas simples, de uma forma que torna possível a utilização de estratégias de mapeamento clássicas anteriores (sem reconfiguração) para SDRs. Os resultados mostram a redução de até 38%, no atraso médio da NoC e de até 41% de economia de energia comparando a melhor solução com a média de soluções aleatórias. Em uma segunda fase, o problema de mapeamento e posicionamento são tratados em conjunto para arquiteturas SDR-NoCs complexas: uma formalização do problema é proposta e um algoritmo exato, semi-exaustivo, é implementado e utilizado para a a sua análise. Devido à alta complexidade do problema, um segundo algoritmo genético (Genetic Algorithm, GA) foi implementado para que casos maiores possam ser resolvidos. Vários tipos de crossover e metodologias de GAs são comparadas para se obter a melhor solução. Os resultados mostram que a melhor solução GA obteve, em média, custos de comunicação com 4% de penalidade quando comparada com a melhor solução, sendo que o algoritmo apresenta bons tempos de execução.