Pergunta

Como o retiming trabalho em matrizes sistólica (usado em processadores de sinal)? Eu li que há alguma noção de atraso negativa que é usado, mas como pode um atraso ser negativo e se isso é apenas uma abstração, em seguida, como ele ajuda?

Foi útil?

Solução

O modelo básico de retiming é que você tem frentes de onda de registos interligados por um bando de lógica de combinações, e você está melhorando o tempo ou a área do circuito resultante por reposicionar os registros em diferentes pontos no circuito de tal forma que todos os caminhos através a lógica ainda passa pelo mesmo número de registros. Para um exemplo simples, digamos que você tem uma porta AND alimentando um registo, o caminho mais longo para a entrada do registo é 12ns, o caminho mais longo a partir da saída do registo é 6ns, o atraso da porta AND é 3NS, e você precisa para obter o tempo de ciclo de relógio até 10 ns. Você poderia conseguir isso eliminando o registo e substituindo-o por dois registros, um em cada entrada da porta AND, com clock pelo mesmo relógio como o registro original. Agora você ter reduzido o caminho mais longo entrada para 9NS, expandiu o caminho de saída para 9NS, e conheceu o seu ciclo de clock objetivo. Com efeito, você adicionou -3ns ao tempo efetivo chegada ao registo (e acrescentou +3 ns ao tempo de saída efetiva).

A versão do artigo original de Leiserson e Saxe modificado em retiming está disponível aqui . Wikipedia tem um decente, embora curta, artigo sobre o assunto com alguns links. Se você tem acesso a IEEE Xplore ou a Biblioteca Digital ACM, uma busca através dos trabalhos da Conferência Design Automation ou a Conferência Internacional sobre design Computer-Aided procurando retiming deve render muitos artigos - esta tem sido uma área de pesquisa ativa durante anos .

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top