Publicación: Automatización de la etapa de síntesis lógica, optimización del proceso de instalación de las aplicaciones de Synopsys y documentación de los pasos de front-end y back-end para el diseño del circuito integrado El Gran Jaguar
| dc.contributor.author | Hernández Guarcas, Kevin David | |
| dc.contributor.educationalvalidator | De Los Santos, Jonathan | |
| dc.date.accessioned | 2026-03-06T20:01:41Z | |
| dc.date.issued | 2025 | |
| dc.description | Formato PDF digital — 755 páginas — incluye gráficos, tablas y referencias bibliográficas. | |
| dc.description.abstract | El presente trabajo se centra en tres puntos principales. El primero consiste en la mejora del proceso de automatización en la etapa de síntesis lógica, con el objetivo de lograr la síntesis lógica de cualquier circuito descrito en Verilog. El segundo punto es la optimización del proceso de instalación automatizada de las aplicaciones de Synopsys. Finalmente, el trabajo busca documentar todo el proceso realizado en las partes de front-end y back-end del flujo de diseño de circuitos, con el n de comprender mejor el uso de las herramientas de Synopsys, la estructura seguida y los scripts empleados para automatizar los procesos, haciendo posible que este proceso sea replicable para cualquier tecnología. El trabajo se ha estructurado en secciones organizadas de manera secuencial para abordar los diferentes puntos clave. Estas secciones son: Implementación de un servidor NFS: se explica cómo se configuró un servidor NFS para facilitar el intercambio de archivos entre los miembros del equipo de trabajo. Librerías de TSMC: se detallan las librerías de TSMC utilizadas en el proceso. Jerarquía de directorios: se describen las mejoras realizadas en la jerarquía de directorios, con el objetivo de optimizar la organización de archivos y asegurar una síntesis ordenada y e ciente de cualquier circuito. Flujo de diseño para la síntesis lógica: se describe el flujo de diseño seguido para llevar a cabo la síntesis lógica de los circuitos. Desarrollo en Verilog: se explica cómo diseñar circuitos, testbench y módulos de pines de entrada y salida en Verilog, con el n de entender su construcción. Configuración de herramientas y scripts: se aborda la configuración y el uso de las herramientas y scripts empleados en esta primera etapa, para entender su funcionamiento. Resultados de síntesis de circuitos: se presentan los resultados de la síntesis de varios circuitos, con el objetivo de veri car que el script desarrollado permite la síntesis tanto de circuitos combinacionales como secuenciales. Mejoras del script utilizado para la síntesis lógica: se presentan mejoras significativas en uno de los scripts, con el propósito de simplificar la síntesis de circuitos y permitir al usuario una interacción más directa y e ciente desde la terminal. Script de instalación de aplicaciones Synopsys: se explica un script que mejora el proceso de instalación de las aplicaciones de Synopsys, incluyendo la descarga e instalación de todas las dependencias necesarias antes de proceder con la instalación de dichas aplicaciones. Los resultados obtenidos fueron satisfactorios, ya que se lograron cumplir con los objetivos establecidos. Se construyó una jerarquía de directorios que permite organizar de manera e ciente los archivos necesarios y generados durante el proceso de síntesis lógica de cualquier circuito. Además, se desarrollaron tres nuevos scripts para la síntesis lógica que permiten realizar la síntesis del circuito original y del circuito sintetizado, junto con el módulo de pines de entrada y salida, de manera automática. Esto elimina la necesidad de realizar la síntesis dos veces de forma manual, como se hacía en años anteriores. También se llevó a cabo con éxito la síntesis lógica de varios circuitos, tanto síncronos como asíncronos, comenzando con un circuito not, and, xor y or, seguido de ALU, sumadores de 4, 16 y 32 bits, contadores de 2, 4 y 8 bits, un restador de 16 bits, multiplicadores y divisores de 32 bits, y el nanochip El Gran Jaguar. Este proceso permitió identificar aspectos clave a considerar al sintetizar circuitos secuenciales dependientes del reloj, algo que no se había realizado en años anteriores. Además, se mejoró el proceso de descarga de las aplicaciones de Synopsys mediante un nuevo script, que crea todas las dependencias iniciales (directorios, permisos, instalación de bibliotecas y aplicaciones, y creación de llaves de seguridad RSA para la conexión al servidor de Synopsys) y lleva a cabo la instalación del instalador de Synopsys, lo cuales son pasos necesarios antes de descargar las aplicaciones. En este trabajo se elaboró la documentación necesaria, tanto escrita como en formato de video, para facilitar la comprensión del funcionamiento y uso de las diversas herramientas empleadas en el proceso de síntesis lógica. Para futuras investigaciones en esta línea de trabajo, sería interesante implementar y sintetizar diseños más grandes o con arquitecturas más sofisticadas, con el fin de validar la robustez y escalabilidad del proceso. Un ejemplo de esto podría ser un microcontrolador nibbler de 4 bits, y luego escalarlo a uno de 8, 16 y 32 bits. También sería valioso contar con una interfaz gráfica que permita interactuar directamente con el sistema para ingresar las librerías a utilizar, los archivos de entrada a sintetizar, y para interactuar de manera directa con la aplicación de DVE o Waveview, con el objetivo de visualizar las señales tanto del circuito original como del sintetizado en una misma interfaz, evitando así la interacción a nivel de comandos. En cuanto al script que permite la descarga e instalación de las aplicaciones de Synopsys (APPS.sh), se podrían realizar mejoras. Actualmente, en este script, la variable apps_real contiene directamente los nombres iniciales de las aplicaciones. Sin embargo, Synopsys puede cambiar esos nombres, lo que generaría un error si el nombre de la aplicación no coincide al intentar descargarla. Para solucionar esto, se podría mejorar el proceso para que la variable no contenga directamente los nombres de las aplicaciones, sino que haga referencia a los nombres contenidos en el archivo myproductsrev.txt, que contiene todos los nombres de las aplicaciones. De esta manera, si los nombres que contiene el archivo cambian, también se actualizaría la variable apps_real , evitando así errores al intentar descargar alguna aplicación. | spa |
| dc.description.abstract | The present work focuses on three main points. The first consists of improving the automation process in the logic synthesis stage, with the aim of achieving the logic synthesis of any circuit described in Verilog. The second point is the optimization of the automated installation process of Synopsys applications. Finally, the work seeks to document the entire process carried out in the front-end and back-end stages of the design ow, in order to better understand the use of Synopsys tools, the structure followed, and the scripts used to automate the processes, making this procedure replicable for any technology. The work has been structured into sections organized sequentially to address the key aspects. These sections are: Implementation of an NFS server: explains how an NFS server was configured to facilitate le sharing among team members. TSMC libraries: details the TSMC libraries used in the process. Directory hierarchy: describes the improvements made to the directory hierarchy, aiming to optimize le organization and ensure an orderly and eficient synthesis of any circuit. Design ow for logic synthesis: describes the design ow followed to carry out the logic synthesis of circuits. Development in Verilog: explains how to design circuits, testbench, and input/out put pin modules in Verilog, in order to understand their construction. Configuration of tools and scripts: addresses the configuration and use of the tools and scripts employed in this first stage to understand their operation. Synthesis results: presents the results of the synthesis of several circuits, with the aim of verifying that the developed script allows the synthesis of both combinational and sequential circuits. Improvements to the logic synthesis script: presents significant improvements in one of the scripts, with the purpose of simplifying circuit synthesis and allowing more direct and eficient interaction from the terminal. Installation script for Synopsys applications: explains a script that improves the installation process of Synopsys applications, including downloading and installing all the necessary dependencies before proceeding with the installation of said applications. The results obtained were satisfactory, as the objectives set were achieved. A directory hierarchy was built that allows eficient organization of the les needed and generated during the logic synthesis process of any circuit. In addition, three new scripts were developed for logic synthesis that automatically perform the synthesis of the original circuit and the synthesized circuit, together with the input/output pin module. This eliminates the need to perform the synthesis twice manually, as was done in previous years. The logic synthesis of several circuits was also successfully carried out, both synchronous and asynchronous, starting with not, and, xor, and or circuits, followed by ALU, adders of 4, 16, and 32 bits, counters of 2, 4, and 8 bits, a 16-bit subtractor, 32-bit multipliers and dividers, and the nanochip El Gran Jaguar. This process allowed the identification of key aspects to consider when synthesizing sequential circuits dependent on the clock, something that had not been done in previous years. In addition, the download process of Synopsys applications was improved through a new script, which creates all the initial dependencies (directories, permissions, installation of libraries and applications, and creation of RSA security keys for connection to the Synopsys server) and carries out the installation of the Synopsys installer, which are necessary steps before downloading the applications. In this work, the necessary documentation was prepared, both written and in video format, to facilitate the understanding of the operation and use of the various tools employed in the logic synthesis process. For future research in this line of work, it would be interesting to implement and synthe size larger designs or designs with more sophisticated architectures, in order to validate the robustness and scalability of the process. An example of this could be a nibbler microcontro ller of 4 bits, and then scale it to one of 8, 16, and 32 bits. It would also be valuable to have a graphical interface that allows direct interaction with the system to input the libraries to be used, the input les to be synthesized, and to directly interact with the DVE or Waveview application, with the objective of visualizing the signals of both the original and synthesized circuit in the same interface, thus avoiding command-level interaction. Regarding the script that allows the download and installation of Synopsys applications (APPS.sh), improvements could be made. Currently, in this script, the variable apps_ real directly contains the initial names of the applications. However, Synopsys may change these names, which would generate an error if the application name does not match when attempting to download it. To solve this, the process could be improved so that the variable does not directly contain the application names, but instead references the names contained in the myproductsrev.txt le, which includes all the application names. In this way, if the names contained in the le change, the apps_real variable would also be updated, thus avoiding errors when trying to download an application. | eng |
| dc.description.degreelevel | Pregrado | |
| dc.description.degreename | Licenciado en Ingeniería Electrónica | |
| dc.format.extent | 755 p. | |
| dc.format.mimetype | application/pdf | |
| dc.identifier.uri | https://repositorio.uvg.edu.gt/handle/123456789/6333 | |
| dc.language.iso | spa | |
| dc.publisher | Universidad del Valle de Guatemala | |
| dc.publisher.branch | Campus Central | |
| dc.publisher.faculty | Facultad de Ingeniería | |
| dc.publisher.place | Guatemala | |
| dc.publisher.program | Licenciatura en Ingeniería Electrónica | |
| dc.relation.references | J. de 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, en Trabajo de graduación en modalidad de Tesis, Facultad de Ingeniería Universidad del Valle de Guatemala, 2014. | |
| dc.relation.references | S. Rubio, Definición del Flujo de Diseño para Fabricación de un Chip con Tecnología VLSI CMOS, en Trabajo de graduación en modalidad de Tesis, Facultad de Ingeniería Universidad del Valle de Guatemala, 2019. | |
| dc.relation.references | L. Nájera, Implementación de circuitos sintetizados a nivel netlist a partir de un diseño en lenguaje descriptivo de hardware como primer paso en el flujo de diseño de un circuito integrado, en Trabajo de graduación en modalidad de Tesis, Facultad de Ingeniería Universidad del Valle de Guatemala, 2019. | |
| dc.relation.references | C. Cruz, Ejecución y utilización de un flujo de diseño para el desarrollo de un chip con tecnología nanométrica: Extracción de componentes parásitos y simulaciones en HSPICE, en Trabajo de graduación en modalidad de Tesis, Facultad de Ingeniería Universidad del Valle de Guatemala, 2020. | |
| dc.relation.references | M. Flores, Corrección de anillo de entradas/salidas y pruebas de antena y ERC para la definición del flujo de diseño del primer chip con tecnología nanométrica desarrollado en Guatemala, en Trabajo de graduación en modalidad de Tesis, Facultad de Ingeniería Universidad del Valle de Guatemala, 2020. . | |
| dc.relation.references | M. Sibrian, Verificación de reglas de diseño (DRC) para el desarrollo de un flujo funcional de un circuito integrado con tecnología nanométrica, en Trabajo de graduación en modalidad de Tesis, Facultad de Ingeniería Universidad del Valle de Guatemala, 2020 | |
| dc.relation.references | J. Ruano, Definición del flujo en la herramienta VCS para la simulación de HDLs en la Fabricación de un Chip con Tecnología Nanométrica CMOS, en Trabajo de graduación en modalidad de Tesis, Facultad de Ingeniería Universidad del Valle de Guatemala, 2020. | |
| dc.relation.references | E. Torres, Diseño de un circuito integrado con tecnología de 180 nm usando librerías de diseño de TSMC: Ejecución y simulación para la etapa de síntesis lógica, en Trabajo de graduación en modalidad de Tesis, Facultad de Ingeniería Universidad del Valle de Guatemala, 2021. | |
| dc.relation.references | J. Ruiz, Diseño de un circuito integrado con tecnología de 180 nm usando librerías de diseño de TSMC: ejecución de la fase de verificación física Layout vs Schematic (LVS), en Trabajo de graduación en modalidad de Tesis, Facultad de Ingeniería Universidad del Valle de Guatemala, 2021. | |
| dc.relation.references | J. Shin, Diseño de un circuito integrado con tecnología de 180 nm usando librerías de diseño de TSMC: ejecución de la síntesis física, validación de reglas eléctricas y corrección de errores obtenidos, en Trabajo de graduación en modalidad de Tesis, Facultad de Ingeniería Universidad del Valle de Guatemala, 2021. | |
| dc.relation.references | J. Ayala, Diseño de un Circuito Integrado con Tecnología de 180 nm Usando Libre rías de Diseño de TSMC: Ejecución de la Síntesis Física, Verificaciones de Antena y Corrección de Errores Obtenidos, en Trabajo de graduación en modalidad de Tesis, Facultad de Ingeniería Universidad del Valle de Guatemala, 2021. | |
| dc.relation.references | I. Arévalo, Diseño de un circuito integrado con tecnología de 180 nm utilizando libre rías de diseño de TSMC: Simulación en PrimeSim y análisis de errores, en Trabajo de graduación en modalidad de Tesis, Facultad de Ingeniería Universidad del Valle de Guatemala, 2022. | |
| dc.relation.references | J. Ponce, Diseño de un circuito integrado con tecnología de 180 nm utilizando librerías de diseño de TSMC: Implementación de un alternativo flujo de diseño proporcionado por Synopsys con las herramientas PrimeTime y TetraMAX, en Trabajo de graduación en modalidad de Tesis, Facultad de Ingeniería Universidad del Valle de Guatemala, 2022. | |
| dc.relation.references | E. 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 plata forma de desarrollo con un FPGA Xilinx Virtex-5 Genesys, en Trabajo de graduación en modalidad de Tesis, Facultad de Ingeniería Universidad del Valle de Guatemala, 2022. | |
| dc.relation.references | L. 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, en Trabajo de graduación en modalidad de Tesis, Facultad de Ingeniería Universidad del Valle de Guatemala, 2022. | |
| dc.relation.references | N. Prado, Diseño de un circuito integrado con tecnología de 180 nm, utilizando las librerías de diseño de TSMC y las librerías educativas de Synopsys: corrección de errores de densidad y polisilicio, verificación DRC y antena., en Trabajo de graduación en modalidad de Tesis, Facultad de Ingeniería Universidad del Valle de Guatemala, 2024. | |
| dc.rights.accessrights | info:eu-repo/semantics/openAccess | |
| dc.rights.coar | http://purl.org/coar/access_right/c_abf2 | |
| dc.rights.license | Atribución-NoComercial-SinDerivadas 4.0 Internacional (CC BY-NC-ND 4.0) | |
| dc.rights.uri | https://creativecommons.org/licenses/by-nc-nd/4.0/ | |
| dc.subject.armarc | Ingeniería de software | |
| dc.subject.armarc | Computer network protocols | |
| dc.subject.armarc | Diseño asistido por computadora | |
| dc.subject.armarc | Network File System (Computer network protocol) | |
| dc.subject.armarc | Verilog (Computer hardware description language) | |
| dc.subject.ddc | 620 - Ingeniería y operaciones afines::629 - Otras ramas de la ingeniería | |
| dc.subject.ocde | 2. Ingeniería y Tecnología | |
| dc.subject.ods | ODS 9: Industria, innovación e infraestructura. Construir infraestructuras resilientes, promover la industrialización inclusiva y sostenible y fomentar la innovación | |
| dc.title | Automatización de la etapa de síntesis lógica, optimización del proceso de instalación de las aplicaciones de Synopsys y documentación de los pasos de front-end y back-end para el diseño del circuito integrado El Gran Jaguar | |
| dc.title.translated | Automation of the logical synthesis stage, optimization of the installation process of Synopsys applications, and documentation of front-end and back-end steps for the design of the integrated circuit El Gran Jaguar | |
| dc.type | Trabajo de grado - Pregrado | |
| dc.type.coar | http://purl.org/coar/resource_type/c_7a1f | |
| dc.type.coarversion | http://purl.org/coar/version/c_970fb48d4fbd8a85 | |
| dc.type.content | Text | |
| dc.type.driver | info:eu-repo/semantics/bachelorThesis | |
| dc.type.version | info:eu-repo/semantics/publishedVersion | |
| dc.type.visibility | Public Thesis | |
| dspace.entity.type | Publication |
