[en] Verification of integrated circuits is a crucial process in hardware design, as it ensures that systems function correctly before fabrication. In this context, the Universal Verification Methodology (UVM) has become an essential tool. UVM is an extension of SystemVerilog that provides a structured framework for developing reusable and scalable verification environments. The importance of UVM lies in its ability to reduce development time and improve design quality by automating common tasks and promoting good verification practices. The need for UVM arises from the increasing complexity of modern digital systems. As designs become more sophisticated, manual verification becomes impractical. UVM addresses this challenge by offering a set of standard libraries and components that facilitate the creation of robust and efficient verification environments. Additionally, UVM enables the integration of advanced verification techniques, such as random test generation and coverage-driven verification, significantly improving error detection. The choice of the RISC-V architecture for this work is due to several reasons. RISC-V is an open and free instruction set architecture (ISA) that has gained popularity for its flexibility and extensibility. Unlike proprietary architectures, RISC-V allows designers to modify and extend the ISA according to their specific needs, making it ideal for research and development in both academic and professional settings. Furthermore, the growing adoption of RISC-V in the industry highlights the relevance of having solid verification environments for processors based on this architecture. The work conducted focuses on the implementation of a UVM-based verification environment for a processor with a RISC-V architecture. Initially, an exhaustive study of SystemVerilog and UVM was carried out to understand the theoretical and practical foundations of verification. During this phase, a priority queue module (PIFO) was used as a case study to develop basic verification environments and familiarize with the tools and methodologies. Subsequently, a deep analysis of the RISC-V architecture and the specific processor to be verified was performed. This analysis included the review of the RISC-V specification, the identification of the main functional blocks of the processor, and the definition of the verification objectives. With this information, the design and development of the UVM verification environment were undertaken.

[es] La verificación de circuitos integrados es un proceso crucial en el diseño de hardware, ya que garantiza que los sistemas funcionen correctamente antes de su fabricación. En este contexto, la Metodología de Verificación Universal (UVM) se ha convertido en una herramienta esencial. UVM es una extensión de SystemVerilog que proporciona un marco estructurado para desarrollar entornos de verificación reusables y escalables. La importancia de UVM radica en su capacidad para reducir el tiempo de desarrollo y mejorar la calidad del diseño mediante la automatización de tareas comunes y la promoción de buenas prácticas en verificación. La necesidad de UVM se deriva de la complejidad creciente de los sistemas digitales modernos. A medida que los diseños se vuelven más sofisticados, la verificación manual se vuelve impracticable. UVM aborda este desafío al ofrecer un conjunto de bibliotecas y componentes estándar que facilitan la creación de entornos de verificación robustos y eficientes. Además, UVM permite la integración de técnicas de verificación avanzadas, como la generación de tests aleatorios y la verificación dirigida por cobertura, lo que mejora significativamente la detección de errores. La elección de la arquitectura RISC-V para este trabajo responde a varias razones. RISC-V es una arquitectura de conjunto de instrucciones (ISA) abierta y libre, que ha ganado popularidad por su flexibilidad y extensibilidad. A diferencia de las arquitecturas propietarias, RISC-V permite a los diseñadores modificar y extender la ISA según sus necesidades específicas, lo que la hace ideal para la investigación y el desarrollo en el ámbito académico y profesional. Además, la creciente adopción de RISC-V en la industria subraya la relevancia de contar con entornos de verificación sólidos para procesadores basados en esta arquitectura. El trabajo realizado se centra en la implementación de un entorno de verificación basado en UVM para un procesador con arquitectura RISC-V. Inicialmente, se llevó a cabo un estudio exhaustivo de SystemVerilog y UVM para comprender las bases teóricas y prácticas de la verificación. Durante esta fase, se utilizó un módulo de cola prioritaria (PIFO) como caso de estudio para desarrollar entornos de verificación básicos y familiarizarse con las herramientas y metodologías. Posteriormente, se realizó un análisis profundo de la arquitectura RISC-V y del procesador específico a verificar. Este análisis incluyó la revisión de la especificación de RISC-V, la identificación de los principales bloques funcionales del procesador y la definición de los objetivos de verificación. Con esta información, se procedió a diseñar y desarrollar el entorno de verificación UVM.