Please use this identifier to cite or link to this item: http://hdl.handle.net/1843/SLSS-8GYG2K
Full metadata record
DC FieldValueLanguage
dc.contributor.advisor1Antonio Otavio Fernandespt_BR
dc.contributor.referee1Ricardo dos Santos Ferreirapt_BR
dc.contributor.referee2Wang Jiang Chaupt_BR
dc.contributor.referee3Claudionor Jose Nunes Coelho Juniorpt_BR
dc.contributor.referee4Diogenes Cecilio da Silva Juniorpt_BR
dc.creatorJose Augusto Miranda Nacifpt_BR
dc.date.accessioned2019-08-13T12:10:35Z-
dc.date.available2019-08-13T12:10:35Z-
dc.date.issued2011-03-01pt_BR
dc.identifier.urihttp://hdl.handle.net/1843/SLSS-8GYG2K-
dc.description.abstractVerifying large industrial designs is getting harder each day. The currentverification methodologies can not guarantee bug free designs. Considering that is not possible to check all states of complex designs, the verification team should define coverage levels for each integrated circuit module. If the coverage of errorprone modules is prioritized, it is possible to identify more bugs in less time. The novelty of this work is to propose a methodology that is able to build a model which points the hardware modules that are most likely to have undetected design bugs. The model is built using revision history information and complexitymetrics extracted from concurrent versioning systems and bug tracking systems. The proposed methodology allows the identification, for a specific project, of which metrics are correlated with bugs. Thus, we are able to allocate verificatio resources more efficiently and define high risk modules to be submitted to a more rigorous verification process.The proposed methodology is validated in an experimental environment composed by metrics, data, and tools. The studied metrics are extracted by comercial and open source tools. The data used in this work are repositories of processors described in hardware description languages. In order to automate the complexity and design history metrics extraction, two tools were developed. The first, BugReporter, is a tool used to help users to report project bugs, using keywords defined by BugLanguage. The second, EyesOn, automates the extraction, storage and visualization of complexity and history metrics. We present results from the use of the proposed methodology in two processors: MIPS and OpenSPARC. For each of these processors, linear, Poisson, negative binomial, and logistic models are built. In the MIPS processor, linear model presents the best results. In the OpenSPARC project, the best performance is reached by negative binomial model. In both cases, the best models use five metrics. We also discuss results from the use of history metrics in the MIPS processor. We propose an algorithm that uses the number of modifications to dynamically build a list of error-prone modules. During the modules development the list stores, in 80% of the time, the modules that had reported errors. Thus, the results achieved by the proposed methodology could be extended with new studies using other data sets and metrics.pt_BR
dc.description.resumoO processo de verificação de circuitos integrados industriais se torna mais desafiador a cada dia. As metodologias de verificação atuais não são capazes de garantir que todos os erros de um circuito integrado sejam identificados e corrigidos antes da fabricação. Como não é possível checar todos os estados de circuitos integrados complexos, a equipe de verificação deve definir níveis de cobertura para cada módulo do circuito integrado. Se a cobertura de módulos mais propensos aerros é priorizada, consegue-se identificar um maior número de erros mais rapidamente. A principal contribuição deste trabalho é propor uma metodologia para construir modelos que indiquem quais módulos de um circuito integrado são propensos a conter erros não identificados. O modelo é construído utilizando métricas de complexidade e de histórico de desenvolvimento, extraídas de sistemas de controle de versão e de sistemas de rastreamento de erros. A metodologia proposta permitedefinir, para um projeto específico, quais métricas têm correlação com o número de erros. Assim, a alocação de recursos de verificação é realizada mais eficientemente e pode-se definir módulos que devem ser submetidos a um processo de verificação mais rigoroso.A metodologia proposta foi validada a partir de um ambiente experimental composto por métricas, dados e ferramentas. As métricas estudadas são extraídas por ferramentas comerciais e de código aberto. Os dados utilizados são repositórios de projetos de processadores descritos em linguagem de descrição de hardware. Foram desenvolvidas duas ferramentas para automatizar a extração de métricas de complexidade e de histórico de desenvolvimento. A primeira, o BugReporter, é uma ferramenta que auxilia os usuários a relatar erros identificados no projeto, utilizando palavras reservadas definidas pela Bug Language. A segunda, EyesOn, automatiza o processo de extração, armazenamento e visualização das métricas de complexidade e de histórico de desenvolvimento. São apresentados resultados de utilização da metodologia proposta em dois processadores: MIPS e OpenSPARC. Para cada um dos processadores são construídosmodelos lineares, de Poisson, binomiais negativos e de regressão logística. Para o processador MIPS, o modelo que apresenta o melhor desempenho é o linear. Já no OpenSPARC, o melhor desempenho é alcançado pelo modelo binomial negativo. Em ambos os casos os modelos que apresentam o melhor desempenho utilizam cinco métricas. Finalmente, os resultados de utilização de métricas dedesenvolvimento no processador MIPS são discutidos. É proposto um algoritmo que utiliza o número de alterações para construir, dinamicamente, uma lista de módulos propensos a erros. Ao longo do desenvolvimento dos módulos, a lista contém, em 80% das vezes, os módulos relatados com erros. Assim, os resultados alcançados pela metodologia proposta abrem caminho para que novos estudossejam realizados com outros conjuntos de dados e métricas.pt_BR
dc.languageInglêspt_BR
dc.publisherUniversidade Federal de Minas Geraispt_BR
dc.publisher.initialsUFMGpt_BR
dc.rightsAcesso Abertopt_BR
dc.subjectCircuitos digitaispt_BR
dc.subject.otherCircuitos integrados Integração em escala muito amplapt_BR
dc.subject.otherCircuitos integradospt_BR
dc.subject.otherComputaçãopt_BR
dc.titleUma metodologia para identificação de módulos de circuitos integrados propensos a errospt_BR
dc.typeTese de Doutoradopt_BR
Appears in Collections:Teses de Doutorado

Files in This Item:
File Description SizeFormat 
joseaugustomirandanacifl.pdf1.66 MBAdobe PDFView/Open


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.