More than a timing resilient template : a case study on reliability-oriented improvements on blade - Kuentzer, Felipe Augusto (2018)
À medida que o projeto de VLSI avança para tecnologias ultra submicron, as margens de atraso adicionadas para compensar variabilidades de processo de fabricação, temperatura de operação e tensão de alimentação, tornam-se uma parte significativa do período de relógio em circuitos síncronos tradicionais. As arquiteturas resilientes a variações de atraso surgiram como uma solução promissora para aliviar essas margens de tempo projetadas para o pior caso, melhorando o desempenho do sistema e reduzindo o consumo de energia. Essas arquiteturas incorporam circuitos adicionais para detecção e recuperação de violações de atraso que podem surgir ao projetar o circuito com margens de tempo menores. Os sistemas assíncronos apresentam potencial para melhorar a eficiência energética e o desempenho devido à ausência de um sinal de relógio global. Além disso, os circuitos assíncronos são conhecidos por serem robustos a variações de processo, tensão e temperatura. Blade é um modelo que incorpora as vantagens de projeto assíncrono e resilientes a variações de atraso. No entanto, o Blade ainda apresenta desafios em relação à sua testabilidade, o que dificulta sua aplicação comercial ou em larga escala. Embora o projeto visando testabilidade com Scan seja amplamente utilizado na indústria, os altos custos de silício associados com o seu uso no Blade podem ser proibitivos. Por outro lado, os circuitos assíncronos podem apresentar vantagens para testes funcionais, enquanto o circuito resiliente fornece feedback contínuo durante o funcionamento normal do circuito, uma característica que pode ser aplicada para testes concorrentes. Nesta Tese, a testabilidade do Blade é avaliada sob uma perspectiva diferente, onde o circuito implementado com o Blade apresenta propriedades de confiabilidade que podem ser exploradas para testes. Inicialmente, um método de classificação de falhas que relaciona padrões comportamentais com falhas estruturais dentro da lógica de detecção de erro e uma nova implementação orientada para teste desse módulo de detecção são propostos. A parte de controle é analisada para falhas internas, e um novo projeto é proposto, onde o teste é melhorado e o circuito pode ser otimizado pelo fluxo de projeto. Um método original de medição de tempo das linhas de atraso também é abordado. Finalmente, o teste de falhas de atrasos em caminhos críticos do caminho de dados é explorado como uma consequência natural de um circuito implementado com Blade, onde o monitoramento contínuo para detecção de violações de atraso fornece a informação necessária para a detecção concorrente de violações que extrapolam a capacidade de recuperação do circuito resiliente. A integração de todas as contribuições fornece uma cobertura de falha satisfatória para um custo de área que, para os circuitos avaliados nesta Tese, pode variar de 4,24% a 6,87%, enquanto que a abordagem Scan para os mesmos circuitos apresenta custo que varia de 50,19% a 112,70% em área, respectivamente. As contribuições desta Tese demonstraram que, com algumas melhorias na arquitetura do Blade, é possível expandir sua confiabilidade para além de um sistema de tolerância a violações de atraso no caminho de dados, e também um avanço para teste de falhas (inclusive falhas online) de todo o circuito, bem como melhorar seu rendimento, e lidar com questões de envelhecimento.