Verificação de equivalência de circuitos com aceleração por largura e aprendizado de cláusulas de conflito
Carregando...
Arquivos
Data
Autor(es)
Título da Revista
ISSN da Revista
Título de Volume
Editor
Universidade Federal de Minas Gerais
Descrição
Tipo
Dissertação de mestrado
Título alternativo
Primeiro orientador
Membros da banca
Luis Humberto Rezende Barbosa
Diogenes Cecilio da Silva Junior
Antonio Otavio Fernandes
Diogenes Cecilio da Silva Junior
Antonio Otavio Fernandes
Resumo
Verificação de equivalência de sistemas digitais é uma técnica amplamente usada atualmente na indústria de fabricação e projeto de circuitos integrados. Ela permite verificar se duas implementações diferentes de uma mesma funcionalidade possuem comportamento idêntico, como por exemplo, uma versão original esua contraparte otimizada por alguma metodologia conhecida (retiming), ou então a implementação antes e depois de sua síntese. Diversos métodos são utilizados atualmente nessa área com bastante eficiência, envolvendo algoritmos que utilizam BDDs e SAT. No entanto, a crescente complexidade dos sistemas digitais atuais e a dificuldade de se verificar a equivalência decorrente dessa complexidade motivam a busca de novas soluções. Este trabalho propõe uma ferramenta de verificação, baseada nos seguintes pontos: particionamento dos circuitos em largura, um resolvedor SAT paralelo e reaproveitamento de cláusulas de conflito encontradas pelo resolvedor SAT por indução em circuitos sequenciais. Esperamos com estas técnicas resolver problemas maiores e mais rapidamente do que as soluções existentes.
Abstract
Equivalence checking (EQ) is a very common formal verification method used in the semiconductor industry. It makes possible to verify if two different implementation of the same design have the same functional behavior which is very useful to make sure that the design still behaves correctly after optimizations (likeretiming) or synthesis. Several known methods are used efficiently, involving techniques like BDDs and SAT. However, the increasing complexity of digital designs turns EQ into a harder problem, motivating the research for new alternatives in this field. This work proposes a equivalence checking tool, based on the following points: design partitioning by width, a parallel SAT solver, and SAT conflict clause learning by applying induction when unrolling sequential circuits. We aim to solve bigger problems faster than the existing solutions in some cases.
Assunto
Eletrônica digital Testes, Computação, Circuitos integrados Verificação, Circuitos eletrônicos Verificação
Palavras-chave
circuitos eletronicos