Detalhes bibliográficos
Ano de defesa: |
2023 |
Autor(a) principal: |
França, Alexandre Bazyl Zacarias de |
Orientador(a): |
Gomes, José Gabriel Rodríguez Carneiro,
Oliveira, Fernanda Duarte Vilela Reis de,
Nedjah, Nadia |
Banca de defesa: |
Não Informado pela instituição |
Tipo de documento: |
Tese
|
Tipo de acesso: |
Acesso aberto |
Idioma: |
por |
Instituição de defesa: |
Universidade Federal do Rio de Janeiro (UFRJ)
|
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: |
https://www.repositorio.mar.mil.br/handle/ripcmb/846568
|
Resumo: |
As redes neurais convolucionais, especialmente as embarcadas em dispositivos com requisitos de baixo consumo de energia, apresentam um desafio significativo: equilibrar a alta precisão esperada das redes neurais, o tempo de resposta e as demandas de recursos computacionais, lógicos e de memória. Este trabalho apresenta três arquiteturas de hardware para redes neurais convolucionais com alto grau de paralelismo e reutilização de componentes implementadas em um dispositivo programável. O primeiro projeto, denominado arquitetura com memória, utiliza a quantidade de memória necessária para armazenar os dados de entrada e os resultados intermediários. O segundo projeto, denominado arquitetura sem memória, define e explora um padrão específico de sequenciamento da entrada para evitar o uso de memória RAM. O terceiro projeto, denominado arquitetura com memória cache, é uma solução intermediária, onde a padronização da sequência de entrada também é explorada mas uma memória auxiliar é utilizada para armazenar alguns resultados intermediários e, consequentemente, melhorar o tempo de processamento. Comparamos as três arquiteturas em termos de potência, área e tempo de processamento. Permitir o uso de memória aumenta o custo geral de hardware, mas reduz o tempo de processamento. Na outra extremidade, dispensar completamente o uso de memória aumenta o nível de paralelismo mas compromete o tempo de processamento. O balanceamento entre uso de memória e desempenho é alcançado na arquitetura com memória cache que otimiza o tempo de processamento mas com custo em termos de recursos de hardware. |