Projeto de uma rede neural em hardware digital para o reconhecimento de dígitos manuscritos

Detalhes bibliográficos
Ano de defesa: 2025
Autor(a) principal: Santos, Thiago Henrique dos
Orientador(a): Cabrera Riaño, Fabian Leonardo
Banca de defesa: Não Informado pela instituição
Tipo de documento: Dissertação
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Não Informado pela instituição
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
Link de acesso: https://repositorio.ufsc.br/handle/123456789/269831
Resumo: Dissertação (mestrado) - Universidade Federal de Santa Catarina, Centro Tecnológico, Programa de Pós-Graduação em Engenharia Elétrica, Florianópolis, 2025.
id UFSC_7bd9b3ef2e26092fe8629e9caefb4c6a
oai_identifier_str oai:repositorio.ufsc.br:123456789/269831
network_acronym_str UFSC
network_name_str Repositório Institucional da UFSC
repository_id_str
spelling Universidade Federal de Santa CatarinaSantos, Thiago Henrique dosCabrera Riaño, Fabian Leonardo2025-11-03T23:30:04Z2025-11-03T23:30:04Z2025394450https://repositorio.ufsc.br/handle/123456789/269831Dissertação (mestrado) - Universidade Federal de Santa Catarina, Centro Tecnológico, Programa de Pós-Graduação em Engenharia Elétrica, Florianópolis, 2025.Este trabalho explora o desenvolvimento de um acelerador de hardware para inferência em aplicações de aprendizado de máquina em pequena escala, com foco na classificação de imagens em escala de cinza. Por meio do estudo de Redes Neurais Artificiais (RNAs), descreve-se a implementação de um sistema otimizado para reduzir área e atrasos, especialmente nos blocos de multiplicação e soma. Para isso, adotou-se a seleção criteriosa de arquiteturas de somadores no formato carry-save e a implementação de multiplicadores configurados a partir da multiplicação de dois fatores relacionados aos bits específicos dos pesos recebidos. Nessa abordagem, o bit mais significativo (MSB) é responsável pela indicação de sinal, de maneira que permite uma representação simplificada e uniforme para resultados positivos e negativos. A arquitetura carry-save possibilita que somas em cascata sejam executadas de forma mais eficiente, uma vez que o tratamento separado dos vetores de carry e de soma reduz a propagação de atrasos entre estágios consecutivos. O objetivo é obter uma solução eficiente quanto ao uso de memória e consumo de energia, mantendo precisão e desempenho. O sistema utiliza memória RAM de 32 x 350 bits e apresenta, para o bloco do neurônio digital, consumo de potência de 28,04 uW/MHz. Projetado na tecnologia CMOS de 65 nm, ocupa área de 0,115 mm2, incluindo a interface serial, o bloco de memória e a lógica do neurônio, chamado Digineuron. O projeto suporta o cálculo de um neurônio de 64 entradas em cada ciclo de relógio, armazenando na memória a configuração de até 32 neurônios organizados em diferentes camadas, com a frequência máxima de operação de 131 MHz. O desenvolvimento partiu de um protótipo inicial, já fabricado e avaliado em bancada. As medições preliminares evidenciaram imprecisões nas operações matemáticas devido ao overflow nos vetores de carry dos somadores, valores de escala insuficientes e deslocamento de bits na interface utilizada. As melhorias implementadas no segundo protótipo incluíram a correção do overflow, aumento do número de escalas, introdução de um vetor de bias (que no protótipo inicial era tratado como peso) e ajustes gerais na arquitetura. O novo modelo foi validado por simulação, resolvendo inicialmente o problema XOR, comprovando a capacidade de tratar problemas não linearmente separáveis, e posteriormente testado no problema de classificação MNIST. Os resultados de acurácia do segundo protótipo foram de 92,96% (treinamento), 92,84% (teste) e 92,70% (validação), enquanto a implementação em software obteve 93,49%, 92,94% e 92,87%, respectivamente, demonstrando que a aplicação em circuito apresenta desempenho próximo ao obtido em software.Abstract: This work explores the development of a hardware accelerator for inference in Tiny Machine Learning applications, focusing on grayscale image classification. Through the study of Ar- tificial Neural Networks (ANNs), it describes the implementation of a system optimized to reduce area and delays, especially in the multipliers and adders. For this purpose, a careful selection of carry-save adder architectures was adopted, along with the implementation of multipliers configured from the multiplication of two factors related to specific bits of the received weights. In this approach, the most significant bit (MSB) is responsible for the sign indication, in a way that allows a simplified and uniform representation for positive and negative results. The carry-save architecture enables cascaded additions to be performed more efficiently, as the separate handling of carry and sum vectors reduces delay propaga- tion between consecutive stages. The goal is to achieve a solution that is efficient in terms of memory usage and energy consumption, while maintaining accuracy and performance. The system uses a 32 x 350 bits of RAM and, for the digital neuron block, has a power consumption of 28.04 µW/MHz. Designed in 65 nm CMOS technology, it occupies an area of 0.115 mm2, including the serial interface, the memory block, and the neuron logic, called Digineuron. The design supports the computation of one neuron with 64 inputs per clock cycle, storing in memory the configuration of up to 32 neurons organized in different layers, with a maximum operating frequency of 131 MHz. The development started from an initial prototype, already fabricated and evaluated on the bench. Preliminary measurements re- vealed inaccuracies in mathematical operations due to overflow in the carry vectors of the adders, insufficient scaling values, and bit-shifting issues in the interface used. The improve- ments implemented in the second prototype included overflow correction, an increase in the number of scales, the introduction of a bias vector (which in the initial prototype was treated as a weight), and general architectural adjustments. The new model was validated through simulation, initially solving the XOR problem, demonstrating its ability to handle nonlinearly separable problems, and subsequently tested on the MNIST classification prob- lem. The accuracy results of the second prototype were 92.96% (training), 92.84% (testing), and 92.70% (validation), while the software implementation obtained 93.49%, 92.94%, and 92.87%, respectively, demonstrating that the in-circuit application performs close to that obtained in software.92 p.| il., tabs.porEngenharia elétricaInferência (Lógica)Aprendizado do computadorRedes neurais (Computação)Projeto de uma rede neural em hardware digital para o reconhecimento de dígitos manuscritosinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisreponame:Repositório Institucional da UFSCinstname:Universidade Federal de Santa Catarina (UFSC)instacron:UFSCinfo:eu-repo/semantics/openAccessORIGINALPEEL2255-D.pdfPEEL2255-D.pdfapplication/pdf1866637https://repositorio.ufsc.br/bitstream/123456789/269831/-1/PEEL2255-D.pdf67e935a369b6bc1d09131de114880f35MD5-1123456789/2698312025-11-03 20:30:05.175oai:repositorio.ufsc.br:123456789/269831Repositório InstitucionalPUBhttp://150.162.242.35/oai/requestsandra.sobrera@ufsc.bropendoar:23732025-11-03T23:30:05Repositório Institucional da UFSC - Universidade Federal de Santa Catarina (UFSC)false
dc.title.none.fl_str_mv Projeto de uma rede neural em hardware digital para o reconhecimento de dígitos manuscritos
title Projeto de uma rede neural em hardware digital para o reconhecimento de dígitos manuscritos
spellingShingle Projeto de uma rede neural em hardware digital para o reconhecimento de dígitos manuscritos
Santos, Thiago Henrique dos
Engenharia elétrica
Inferência (Lógica)
Aprendizado do computador
Redes neurais (Computação)
title_short Projeto de uma rede neural em hardware digital para o reconhecimento de dígitos manuscritos
title_full Projeto de uma rede neural em hardware digital para o reconhecimento de dígitos manuscritos
title_fullStr Projeto de uma rede neural em hardware digital para o reconhecimento de dígitos manuscritos
title_full_unstemmed Projeto de uma rede neural em hardware digital para o reconhecimento de dígitos manuscritos
title_sort Projeto de uma rede neural em hardware digital para o reconhecimento de dígitos manuscritos
author Santos, Thiago Henrique dos
author_facet Santos, Thiago Henrique dos
author_role author
dc.contributor.none.fl_str_mv Universidade Federal de Santa Catarina
dc.contributor.author.fl_str_mv Santos, Thiago Henrique dos
dc.contributor.advisor1.fl_str_mv Cabrera Riaño, Fabian Leonardo
contributor_str_mv Cabrera Riaño, Fabian Leonardo
dc.subject.classification.none.fl_str_mv Engenharia elétrica
Inferência (Lógica)
Aprendizado do computador
Redes neurais (Computação)
topic Engenharia elétrica
Inferência (Lógica)
Aprendizado do computador
Redes neurais (Computação)
description Dissertação (mestrado) - Universidade Federal de Santa Catarina, Centro Tecnológico, Programa de Pós-Graduação em Engenharia Elétrica, Florianópolis, 2025.
publishDate 2025
dc.date.accessioned.fl_str_mv 2025-11-03T23:30:04Z
dc.date.available.fl_str_mv 2025-11-03T23:30:04Z
dc.date.issued.fl_str_mv 2025
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv https://repositorio.ufsc.br/handle/123456789/269831
dc.identifier.other.none.fl_str_mv 394450
identifier_str_mv 394450
url https://repositorio.ufsc.br/handle/123456789/269831
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv 92 p.| il., tabs.
dc.source.none.fl_str_mv reponame:Repositório Institucional da UFSC
instname:Universidade Federal de Santa Catarina (UFSC)
instacron:UFSC
instname_str Universidade Federal de Santa Catarina (UFSC)
instacron_str UFSC
institution UFSC
reponame_str Repositório Institucional da UFSC
collection Repositório Institucional da UFSC
bitstream.url.fl_str_mv https://repositorio.ufsc.br/bitstream/123456789/269831/-1/PEEL2255-D.pdf
bitstream.checksum.fl_str_mv 67e935a369b6bc1d09131de114880f35
bitstream.checksumAlgorithm.fl_str_mv MD5
repository.name.fl_str_mv Repositório Institucional da UFSC - Universidade Federal de Santa Catarina (UFSC)
repository.mail.fl_str_mv sandra.sobrera@ufsc.br
_version_ 1851759172970872832