Técnicas e Ferramentas de validação de sistemas digitais
Por: Josiane Lourenço • 13/6/2018 • Relatório de pesquisa • 549 Palavras (3 Páginas) • 220 Visualizações
Técnicas e ferramentas de validação de sistemas digitais.
Os sistemas digitais passam por várias etapas durante seu desenvolvimento. Cada uma dessas etapas corresponde, grosseiramente, a uma descrição diferente do sistema, que é incrementalmente mais detalhada e que possui sua própria semântica específica e conjunto de primitivos. A figura abaixo mostra as
[pic 1]
A Figura 1.0 apresenta um fluxo de projeto conceitual das especificações para a Otimização do design. O fluxo na figura mostra uma abordagem de cima para baixo que é muito simplificada. As especificações do projeto são geralmente apresentadas como um documento que descreve um conjunto de funcionalidades que a solução final terá que fornecer e um conjunto de restrições que deve satisfazer. Nesse contexto, o design manual é o processo inicial de derivar uma solução potencial e realizável a partir dessas especificações e requisitos. Isso às vezes é chamado de modelagem e inclui atividades como tradeoffs de software e design de microarquitetura. Entre os resultados desta fase de projeto está uma descrição funcional de alto nível, geralmente um programa de software em C ou em uma linguagem de programação similar, que simula o comportamento do projeto com a precisão de um ciclo de clock e reflete a partição do módulo. É utilizado para análise de desempenho e também, como modelo de referência para verificar o comportamento dos projetos mais detalhados desenvolvidos nas etapas seguintes.
As próximas fases de projeto consistem na Síntese e Otimização do design . O resultado geral dessas fases é gerar um modelo detalhado de um circuito, otimizado com base nas restrições de projeto. O modelo detalhado produzido neste momento descreve o projeto em termos de seus componentes lógicos básicos, como AND, OR, NOT ou XOR, além dos elementos de memória. Otimizar a gate-level description para restrições como a temporização e os requisitos de energia é um aspecto cada vez mais desafiador dos desenvolvimentos atuais e geralmente envolve várias iterações de tentativas de tentativa e erro antes de chegar a uma solução que atenda aos requisitos. Essas otimizações podem, por sua vez, introduzir erros funcionais que exigem verificação adicional.
Usualmente, validação de sistemas digitais refere-se ao uso de técnicas com o objetivo de assegurar que a implementação de um sistema digital está de acordo com uma especificação funcional de alto nível.
A Figura 1.0 ilustra as etapas de desenvolvimento de um circuito integrado. A etapa 1 consiste na especificação do funcionamento do circuito integrado em alto níıvel. Na etapa 2, esta especificação é implementada em nível de transferência de registradores (RTL, do inglês Register Transfer Level) através de uma linguagem de descrição de hardware, normalmente Verilog HDL [IEE01b] ou VHDL[IEE93] (do inglês Very High Speed Integrated Circuit Hardware Description Language). O processo de verificação acontece entre as etapas 1 e 2. Utilizando as técnicas descritas no decorrer deste texto, o comportamento do código RTL é confrontado com o comportamento descrito na especificação. Na etapa 3, a implementação em nível RTL é sintetizada por uma ferramenta que irá gerar netlists, as quais serão utilizadas na etapa 4, que é o processo de fabricação final do circuito integrado em silício. O processo de teste de um circuito integrado tem o objetivo de encontrar erros durante o processo de manufatura, através da comparação do comportamento das netlists com o circuito integrado (etapas 3 e 4) .
...