12.04.2013 Views

pdf (90) - Faculdade de Informática - pucrs

pdf (90) - Faculdade de Informática - pucrs

pdf (90) - Faculdade de Informática - pucrs

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

2.4.1.2 Exemplo <strong>de</strong> comparação entre um sistema RTR com reconfiguração extrínseca e um<br />

sistema estático<br />

A seguir será justificado o tempo <strong>de</strong> configuração <strong>de</strong> uma aplicação RTR, segundo a abordagem<br />

apresentada acima. A aplicação analisada é a implementação <strong>de</strong> uma re<strong>de</strong> neural que usa o algoritmo<br />

<strong>de</strong> aprendizagem por retro-propagação em FPGAs (<strong>de</strong>nominada RRANN-Runtime Reconfigured Neu-<br />

ral Network) [ELD94]. Como mostrado na Figura 2.6, o algoritmo é particionado em três estágios:<br />

pós-alimentação (feed-forward), retro-propagação (back-propagation) e atualização. Esse processo<br />

<strong>de</strong> três estágios é repetido até que o algoritmo <strong>de</strong> treinamento convirja.<br />

Figura 2.6: Três estágios do algoritmo <strong>de</strong> treinamento por retro-propagação.<br />

Como sugerido na Figura2.6, o algoritmo é executado da seguinte forma:<br />

1. Configuração dos recursos do FPGA com o processador neural <strong>de</strong> pós-alimentação, e compu-<br />

tação dos dados;<br />

2. O circuito <strong>de</strong> retro-propagação é configurado e entra em execução;<br />

3. O circuito <strong>de</strong> atualização é implementado e executa, completando uma iteração do algoritmo.<br />

Este processo <strong>de</strong> reconfiguração e execução continua até os resultados do algoritmo <strong>de</strong> treinamen-<br />

to convergirem. Uma vez que a abordagem RTR requer todo hardware apenas por um estágio por vez,<br />

o algoritmo inteiro po<strong>de</strong> ser executado com menos recursos do que em uma abordagem estática.<br />

Este processo é uma reconfiguração em tempo <strong>de</strong> execução extrínseca, isto é, o sistema como um<br />

todo é reconfigurado dinamicamente, mas a reconfiguração do dispositivo é estática, uma vez que é<br />

interrompida a execução <strong>de</strong> uma <strong>de</strong>terminada lógica para que outra seja configurada e executada. Ain-<br />

da assim é uma abordagem dinâmica, e a possibilida<strong>de</strong> <strong>de</strong> substituir controle e aritmética associados<br />

a um algoritmo inativo por outros estágios incrementa a eficiência do hardware.<br />

Na Tabela 2.2 são mostrados os parâmetros <strong>de</strong> comparação entre o sistema estático e o sistema<br />

dinâmico, para uma re<strong>de</strong> <strong>de</strong> 60 neurônios. Como mostrado, o circuito RTR completa o algoritmo<br />

com um terço do hardware necessário para o sistema estático. Essa redução em hardware fornece um<br />

incremento máximo na <strong>de</strong>nsida<strong>de</strong> funcional ( ) <strong>de</strong> 168% sobre a alternativa estática.<br />

Para calcular a <strong>de</strong>nsida<strong>de</strong> funcional <strong>de</strong> cada sistema, o tempo total <strong>de</strong> operação ( ) e a área<br />

27<br />

( ) <strong>de</strong>vem ser <strong>de</strong>terminados. O tempo <strong>de</strong> execução e área <strong>de</strong> uma re<strong>de</strong> neural executando RRANN

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!