Publicación:
Simplificación del hardware complementario de funcionamiento del nanochip El Gran Jaguar y optimización de software de lectura de Python usando multihilos y multiprocesamiento

dc.contributor.authorRac Pocón, Katherine Arletth
dc.contributor.educationalvalidatorEsquit, Carlos
dc.date.accessioned2025-11-04T15:15:17Z
dc.date.issued2025
dc.descriptionFormato PDF digital — 162 páginas — incluye gráficos, tablas y referencias bibliográficas.
dc.description.abstractEn este proyecto se desarrolló e implementó un sistema de comunicación que combina la funcionalidad de una FPGA y una Raspberry Pi, diseñado específicamente para el procesamiento eficiente de señales en tiempo real. Como parte de los objetivos a cumplir, se incluyó la descripción en Verilog de nuevas celdas generadas por la última versión de la síntesis lógica. Otro objetivo fue la simplificación del hardware, eliminando la Tiva C para que las señales fueran recibidas directamente por la Raspberry Pi. Finalmente, el objetivo más importante fue implementar nuevas técnicas de procesamiento en Python, como multithreading y multiprocessing, para garantizar que el audio se reproduzca en tiempo real. Primero, se desarrolló el código en la Raspberry Pi, comenzando con pruebas de funciones como el reloj, el envío de la señal de inicio y la recepción de los 8 bits. Para estas pruebas se utilizó un Arduino Nano como simulador de la FPGA. Una vez que las técnicas de procesamiento aplicadas tuvieron éxito, se incorporaron los otros bits de configuración inicial, incluyendo el reset y la selección de idioma. Para reproducir el audio, se seleccionó la librería gTTS, que utiliza la voz de Google y permite elegir el idioma en el que se pronunciará el texto. Para cumplir con el objetivo de procesar señales en tiempo real, se emplearon procesos en paralelo, colas para gestionar las frases y limpieza de recursos al analizar. En cuanto a las simulaciones, se siguió la documentación heredada de promociones anteriores, que incluyó la creación de nuevos proyectos y la documentación de las black boxes. Las simulaciones se realizaron en el programa ISE Design; primero, se creó el proyecto y se seleccionó el modelo de la FPGA. Luego, se agregaron los códigos de la síntesis lógica y las black boxes. Dado que se realizaron cambios en la síntesis, se generaron nuevas black boxes que fueron añadidas al documento en Verilog. Para su creación, fue necesario consultar los documentos proporcionados por TSMC. Además, se elaboró un archivo .ucf para defi nir la conexión física de los pines de entrada y salida. Las simulaciones en ISim incluyeron configuraciones de pines como el reloj, reinicio, selección de idioma e inicio, verificando su funcionamiento y aprendiendo a manejar los pines de configuración. Para futuros trabajos, se sugiere incorporar una memoria no volátil en la FPGA, lo que permitiría conservar la configuración incluso después de apagar el dispositivo, eliminando la necesidad de recargar los datos en cada inicio. También se recomienda el desarrollo de una interfaz gráfica que facilite la interacción del usuario, permitiendo configuraciones intuitivas como la selección de idioma o ajustes de las configuraciones.spa
dc.description.abstractIn this project, a communication system was developed and implemented, combining the functionality of an FPGA and a Raspberry Pi, specifically designed for eficient real-time signal processing. One of the objectives included describing new cells in Verilog, generated by the latest version of logical synthesis. Another goal was to simplify the hardware by removing the Tiva C, allowing the signals to be received directly by the Raspberry Pi. Finally, the most important objective was to implement new processing techniques in Python, such as multithreading and multiprocessing, to ensure real-time audio playback. First, the code was developed on the Raspberry Pi, starting with tests of functions like the clock, sending the start signal, and receiving the 8 bits. An Arduino Nano was used as an FPGA simulator for these tests. Once the applied processing techniques succeeded, the additional configuration bits were incorporated, including reset and language selection. For audio playback, the gTTS library was selected, as it uses Google's voice and allows choosing the language for text pronunciation. To achieve real-time signal processing, parallel processes were employed, queues were used to manage the phrases, and resources were cleaned up upon completion. Regarding the simulations, the documentation inherited from previous cohorts was followed, including the creation of new projects and the documentation of Black boxes. The simulations were conducted using the ISE Design software. First, the project was created, and the FPGA model was selected. Then, the logical synthesis codes and Black boxes were added. Since changes were made to the synthesis, new Black boxes were generated and added to the Verilog document. For their creation, it was necessary to consult the documentation provided by TSMC. Additionally, a .ucf le was prepared to define the physical connection of input and output pins. Simulations in ISim included configurations for pins such as the clock, reset, language selection, and start, verifying their functionality and learning how to handle the configuration pins. For future work, it is suggested to incorporate non-volatile memory into the FPGA, which would allow the configuration to persist even after powering o the device, eliminating the need to reload data upon each startup. It is also recommended to develop a graphical interface to facilitate user interaction, enabling intuitive configurations such as language selection or adjustments to settings.eng
dc.description.degreelevelPregrado
dc.description.degreenameLicenciado en Ingeniería Electrónica
dc.format.extent162 p.
dc.format.mimetypeapplication/pdf
dc.identifier.urihttps://repositorio.uvg.edu.gt/handle/123456789/6221
dc.language.isospa
dc.publisherUniversidad del Valle de Guatemala
dc.publisher.branchCampus Central
dc.publisher.facultyFacultad de Ingeniería
dc.publisher.placeGuatemala
dc.publisher.programLicenciatura en Ingeniería Electrónica
dc.relation.referencesJ. D. los Santos, Diseño de un sumador/restador completo de 32 bits con tecnología CMOS en un proceso de 28 nanómetros usando aplicaciones de diseño de la empresa Synopsys, Tesis de grado, Dpto. de Electr. Ciudad de Guatemala, Guatemala, 2014.
dc.relation.referencesS. Rubio, Definición del Flujo de Diseño para Fabricación de un Chip con Tecnología VLSI CMOS, Tesis de grado, Dpto. de Electr. Ciudad de Guatemala, Guatemala, 2019.
dc.relation.referencesL. Najera, Implementación de circuitos sintetizados a nivel netlist a partir de un diseño en lenguaje descriptivo de hardware como primer paso en el ujo de diseño de un circuito integrado, Tesis de grado, Dpto. de Electr. Ciudad de Guatemala, Guatemala, 2019.
dc.relation.referencesE. Mancio, Implementación y verificación de la funcionalidad de código obtenido durante la síntesis lógica de arquitectura del nano chip Gran Jaguar utilizando una plataforma de desarrollo con un FPGA Xilinx Virtex-5 Genesys, Tesis de grado, Dpto. de Electr. Ciudad de Guatemala, Guatemala, 2022.
dc.relation.referencesL. Gómez, Procesamiento de las señales generadas por un circuito integrado con tecnología de 180nm usando librerías de diseño de TSMC montado en un FPGA Digilent Genesys Board demostrando el funcionamiento mediante una aplicación y sintetizador digital, Tesis de grado, Dpto. de Electr. Ciudad de Guatemala, Guatemala, 2022.
dc.relation.referencesDigilent, Genesys FPGA Board Reference Manual, Washington, USA, Abr. 2016, Acceso: May. 1, 2024. [En línea]. Disponible: https://digilent.com/reference/ _media/genesys:genesys_rm.pdf.
dc.relation.referencesDigilent, Genesys 2 Reference Manual, Digilent, 2022, Acceso: May. 5, 2024. [En línea]. Disponible: https : / / digilent . com / reference / programmable - logic / genesys - 2/reference-manual.
dc.relation.referencesAMD, ISE Design Suite, Xilinx, 2023, Acceso: Jul. 5, 2025. [En línea]. Disponible: https://www.xilinx.com/products/design-tools/ise-design-suite.html.
dc.relation.referencesISE In-Depth Tutorial, 14.1 ed., Xilinx, USA, Abr. 2012, Acceso: Jun. 4, 2024. [En línea]. Disponible: https://docs.amd.com/v/u/en-US/ise_tutorial_ug695.
dc.relation.referencesSynthesis and Simulation Design Guide, 14.4 ed., Xilinx, USA, Dec. 2012, Acceso: Jul. 4, 2024. [En línea]. Disponible: https://docs.amd.com/v/u/en-US/sim.
dc.relation.referencesXilinx, Virtex-5 Libraries Guide for HDL Designs, 14.7 ed., Xilinx, USA, Oct. 2, 2013, Acceso: Jul. 10, 2024. [En línea]. Disponible: https://docs.amd.com/v/u/enUS/virtex5_hdl.
dc.relation.referencesXilinx, ISim In-Depth Tutorial, 14.1 ed., Xilinx, USA, May. 8, 2012, Acceso: Jul. 10, 2024. [En línea]. Disponible: https://gab.wallawalla.edu/~larry.aamodt/ engr435/xilinx_14/ug682_isim_tutorial.pdf.
dc.relation.referencesXilinx, ISim User Guide, 14.3 ed., Xilinx, USA, Oct. 16, 2012, Acceso: Jul. 11, 2024. [En línea]. Disponible: https://docs.amd.com/v/u/en-US/plugin_ism.
dc.relation.referencesR. González, Python PARA TODOS, España: Creative Commons Attribution, 2016, Acceso: May. 1, 2024. [En línea]. Disponible: https : / / persoal . citius . usc . es / eva.cernadas/informaticaparacientificos/material/libros/Python%20para% 20todos.pdf
dc.relation.referencesPython, Applications for Python, Sitio o cial de Python, 2023, Acceso: May. 1, 2024. [En línea]. Disponible: https://www.python.org/about/apps/.
dc.relation.referencesD. Sondak, Python Multiprocessing, Harvard IACS, 2020, Acceso: May. 9, 2024. [En línea]. Disponible: https://harvard-iacs.github.io/2020-CS205/lectures/H1/ presentation/Lecture_H1.pdf.
dc.relation.referencesPython, multiprocessing Process-based parallelism, Documentación o cial de Python, 2024, Acceso: May. 4, 2024. [En línea]. Disponible: https://docs.python.org/3/ library/multiprocessing.html.
dc.relation.referencese. a. Anderson J., An Intro to Threading in Python, Real Python, 2019, Acceso: May. 8, 2024. [En línea]. Disponible: https : / / realpython . com / intro - to - python - threading.
dc.relation.referencesPython, threading Paralelismo basado en hilos, Documentación oficial de Python, Nov. 16, 2023, Acceso: May. 8, 2024. [En línea]. Disponible: https://docs.python. org/es/3.8/library/threading.html.
dc.relation.referencesR. Pi, Raspberry Pi 3 Model B, Raspberry Pi Foundation, Reino Unido, 2020, Ac ceso: Abr. 29, 2024. [En línea]. Disponible: https : / / us . rs - online . com / m / d / 4252b1ecd92888dbb9d8a39b536e7bf2.pdf.
dc.rights.accessrightsinfo:eu-repo/semantics/openAccess
dc.rights.coarhttp://purl.org/coar/access_right/c_abf2
dc.rights.licenseAtribución-NoComercial-SinDerivadas 4.0 Internacional (CC BY-NC-ND 4.0)
dc.rights.urihttps://creativecommons.org/licenses/by-nc-nd/4.0/
dc.subject.armarcCircuitos lógicos
dc.subject.armarcAnálisis de sistemas
dc.subject.armarcDiseño lógico -- Informática
dc.subject.armarcCircuitos integrados digitales
dc.subject.armarcProcesamiento electrónico de datos
dc.subject.armarcComputadores electrónicos digitales
dc.subject.armarcProcesamiento de datos en tiempo real
dc.subject.ddc620 - Ingeniería y operaciones afines
dc.subject.ocde2. Ingeniería y Tecnología
dc.subject.odsODS 9: Industria, innovación e infraestructura. Construir infraestructuras resilientes, promover la industrialización inclusiva y sostenible y fomentar la innovación
dc.titleSimplificación del hardware complementario de funcionamiento del nanochip El Gran Jaguar y optimización de software de lectura de Python usando multihilos y multiprocesamiento
dc.title.translatedSimplification of the complementary operating hardware of the El Gran Jaguar nanochip and optimization of Python reading software using multithreading and multiprocessing
dc.typeTrabajo de grado - Pregrado
dc.type.coarhttp://purl.org/coar/resource_type/c_7a1f
dc.type.coarversionhttp://purl.org/coar/version/c_970fb48d4fbd8a85
dc.type.contentText
dc.type.driverinfo:eu-repo/semantics/bachelorThesis
dc.type.versioninfo:eu-repo/semantics/publishedVersion
dc.type.visibilityPublic Thesis
dspace.entity.typePublication

Archivos

Bloque original

Mostrando 1 - 1 de 1
Cargando...
Miniatura
Nombre:
Katherine Arletth Rac Pocon.pdf
Tamaño:
5.53 MB
Formato:
Adobe Portable Document Format

Bloque de licencias

Mostrando 1 - 1 de 1
Cargando...
Miniatura
Nombre:
license.txt
Tamaño:
14.49 KB
Formato:
Item-specific license agreed upon to submission
Descripción: