Diseño de un banco de test con metodología UVM (Universal Verification Methodology)

Vaca Fierro, Pedro (2017). Diseño de un banco de test con metodología UVM (Universal Verification Methodology). Proyecto Fin de Carrera / Trabajo Fin de Grado, E.T.S.I. y Sistemas de Telecomunicación (UPM), Madrid.

Description

Title: Diseño de un banco de test con metodología UVM (Universal Verification Methodology)
Author/s:
  • Vaca Fierro, Pedro
Contributor/s:
  • Garrido González, Matías J.
Item Type: Final Project
Degree: Grado en Ingeniería Electrónica de Comunicaciones
Date: 19 July 2017
Subjects:
Freetext Keywords: Circuitos integrados Lenguajes de verificación
Faculty: E.T.S.I. y Sistemas de Telecomunicación (UPM)
Department: Ingeniería Telemática y Electrónica
Creative Commons Licenses: Recognition - No derivative works - Non commercial

Full text

[img]
Preview
PDF - Requires a PDF viewer, such as GSview, Xpdf or Adobe Acrobat Reader
Download (3MB) | Preview
[img] Archive (ZIP) (Anexos) - Users in campus UPM only
Download (178kB)

Abstract

En este PFG se ha diseñado un banco de test para un circuito multiplicador BCD (en inglés Binary-Coded Decimal) de 4 dígitos que cumple con las siguientes restricciones de diseño: El DUT (en inglés Device Under Test) se corresponde con un multiplicador BCD de 4 dígitos cuya especificación se incluye en un anexo al final de este documento. El test del circuito se ha diseñado siguiendo una metodología UVM (Universal Verification Methodology). El test se ha escrito en lenguaje SystemVerilog. El test contiene código fuente de autoverificación. El test está basado en una simulación con estímulos aleatorios restringidos. El test define una estrategia de cobertura. Dentro de la estrategia definida la cobertura es del 100%. UVM (Universal Verification Methodology) es una metodología estandarizada para la verificación de circuitos digitales. Esta metodología, que se apoya en una extensa biblioteca de componentes en lenguaje SystemVerilog, es una herramienta potente al tiempo que versátil, ya que permite introducir al sistema un rango de estímulos aleatorios acotados entre un rango de valores y estudiar si la respuesta que el sistema da para cada uno de ellos es la prevista. Esto permite a los desarrolladores del sistema tener una confianza razonable en que el comportamiento del sistema será correcto para una amplia variedad de estímulos en sus entradas. En este PFG, en primer lugar, se ha estudiado la metodología UVM. Para ello, además de la lectura de documentación, se han realizado sendos cursos proporcionados por el fabricante de herramientas CAD Mentor Graphics. Con objeto de consolidar el aprendizaje de la metodología, se han realizado implementaciones de todos los bancos de test propuestos en estos cursos. Finalmente, los conocimientos adquiridos en esta primera fase del trabajo se han utilizado para la implementación del test del multiplicador BCD. El test es capaz de generar secuencias aleatorias de estímulos, comprobar automáticamente los resultados y generar un informe sobre la cobertura alcanzada. Todos los bancos de test han sido realizados utilizando la herramienta de simulación QuestaSim. Abstract: This Final Degree Project exposes the design of a testbench for a 4-digit BCD (Binary-Coded Decimal) multiplier circuit that comply the following design constraints: The DUT (Device Under Test) corresponds to a 4-digit BCD multiplier whose specification is included in an annex at the end of this document. The circuit test is designed according to UVM (Universal Verification Methodology) methodology. The test is written in SystemVerilog language. The test contains self-test source code. The test is based on constrained random simulation. The test defines a coverage strategy. Within the defined strategy, the coverage is 100%. UVM (Universal Verification Methodology) is a standardized methodology for verification of digital circuits. This methodology, which is based on an extensive library of components in SystemVerilog language, is a powerful and versatile tool, since it allows to introduce to the system a range of randomized stimuli bounded between a range of values and to study if the answer that the system for each of them is the expected one. This fact allows system developers to have reasonable confidence that the system behavior will be correct for a wide variety of input stimuli. In this Final Degree Project, firstly, the UVM methodology has been studied. To consolidate the UVM learning, in addition to reading documentation, have been conducted courses provided by the manufacturer of CAD tools Mentor Graphics. To consolidate the learning of the methodology, implementations of all test banks proposed in these courses have been implemented. Finally, the knowledge acquired in this first phase of the work has been used for the implementation of the BCD multiplier test. The test can generate random sequences of stimuli, automatically check the results and generate a report on the coverage achieved. All the test banks were made using the QuestaSim simulation tool.

More information

Item ID: 52474
DC Identifier: http://oa.upm.es/52474/
OAI Identifier: oai:oa.upm.es:52474
Deposited by: Biblioteca Universitaria Campus Sur
Deposited on: 03 Oct 2018 07:18
Last Modified: 03 Oct 2018 07:18
  • Logo InvestigaM (UPM)
  • Logo GEOUP4
  • Logo Open Access
  • Open Access
  • Logo Sherpa/Romeo
    Check whether the anglo-saxon journal in which you have published an article allows you to also publish it under open access.
  • Logo Dulcinea
    Check whether the spanish journal in which you have published an article allows you to also publish it under open access.
  • Logo de Recolecta
  • Logo del Observatorio I+D+i UPM
  • Logo de OpenCourseWare UPM