[en] The rapid advancement of Artificial Intelligence, particularly in the realm of convolutional neural networks (CNNs), coupled with the favorable capabilities of Field Programmable Gate Arrays (FPGAs), has motivated this research project. The primary objective is to establish a foundational framework by designing an initial implementation of the Lenet5 neural network. In our pursuit of implementing the neural network, we carefully considered various alternatives. Given the nature of this initial project, we made a deliberate choice to develop the neural network from scratch. This approach enabled us to gain a deeper understanding of the intricate design principles underlying Convolutional Neural Networks (CNNs) and provided us with complete control over the hardware implementation. We designed the Lenet5 Neural Network, specifically designed for handwritten digit recognition, using VHDL and the Vivado tools. Concurrently, we developed a MATLAB simulation of the network to serve as a benchmark for comparing the results obtained from the hardware implementation. The accuracy of the system was found to be excellent, with a minimum confidence of 95.22% in digit recognition. However, further work is required to optimize resource utilization, as we have exceeded the capacity of the Zedboard FPGA, which was used for system simulation, particularly in terms of Look-Up Tables (LUTs) usage. The results obtained in this project provide a strong foundation for its continuation, showcasing the viability of the implemented system. These results also highlight three key areas to focus on in future developments. Firstly, there is a need for optimizing the bit utilization for coefficient and data representation within the network. Exploring more efficient methods of filter allocation outside the on-chip memory is also crucial. Lastly, the project opens up new avenues for implementing improved algorithms that can effectively reduce the latency of the system.

[es] El rápido avance de la Inteligencia Artificial, particularmente en el ámbito de las redes neuronales convolucionales (CNN), junto con las ventajosas capacidades de las FPGAs, ha motivado este proyecto de investigación. El objetivo principal es establecer un marco fundamental mediante el diseño de una implementación inicial de la red neuronal Lenet5. En nuestra búsqueda por implementar la red neuronal, consideramos diversas alternativas de manera cuidadosa. Dado el carácter inicial de este proyecto, tomamos la decisión de desarrollar la red neuronal desde cero. Este enfoque nos permitió adquirir un conocimiento más profundo de los intrincados principios de diseño que subyacen a las Redes Neuronales Convolucionales (CNN) y nos proporcionó un control absoluto sobre la implementación del hardware. Diseñamos la Red Neuronal Lenet5, especializada en el reconocimiento de dígitos escritos a mano, utilizando VHDL y las herramientas de Vivado. De forma paralela, desarrollamos una simulación en MATLAB de la red como referencia para comparar los resultados obtenidos de la implementación en hardware. La precisión del sistema resultó excelente, con una confianza mínima del 95,22% en el reconocimiento de dígitos. Sin embargo, aún se requiere trabajo adicional para optimizar la utilización de recursos, ya que hemos superado la capacidad de la FPGA Zedboard, utilizada para la simulación del sistema, especialmente en términos del uso LUTs. Los resultados obtenidos en este proyecto proporcionan una base sólida para su continuación, demostrando la viabilidad del sistema implementado. Estos resultados también destacan tres áreas clave en las que enfocarse en futuros desarrollos. En primer lugar, es necesario optimizar la utilización de bits para la representación de coeficientes y datos dentro de la red. Explorar métodos más eficientes de asignación de filtros fuera de la memoria interna es también crucial. Por último, el proyecto abre nuevas posibilidades para implementar algoritmos mejorados que puedan reducir eficazmente la latencia del sistema.