Às vezes, me envolvo em conversas por mensagem de texto com amigos que se tornam completamente caóticas. É muito fácil fazer cinco perguntas em um único texto, e tentar responder a tudo faz com que nossa cadeia de mensagens fique completamente desincronizada. Só depois de três mensagens de texto é que eu realmente respondo a tudo o que meu amigo perguntou, e nesse momento já mudamos para um tópico completamente novo.
O atraso de sinal entre circuitos lógicos em uma PCB ou em um CI não é algo que você normalmente precisa pensar até estar trabalhando com um sistema de alta velocidade. À medida que as taxas de dados e a capacidade nas PCBs continuam a aumentar, levar em conta o atraso é crítico para garantir que os dados digitais permaneçam sincronizados em todo o seu sistema.
Se você não está familiarizado com o atraso de propagação (mais apropriadamente chamado de atraso de transmissão) em PCBs, vou explicá-lo aqui. Um sinal digital requer uma certa quantidade de tempo para se mover entre dois pontos em uma PCB. Se você está tentando manter vários sinais em uma rede ou em um sistema inteiro sincronizados, então você precisa garantir que os sinais cheguem a vários pontos na sua placa simultaneamente.
Note que o atraso de propagação, neste sentido, refere-se ao atraso de transmissão para sinais que viajam entre dois pontos em uma PCB. Isso não deve ser confundido com a definição de atraso de propagação que você encontrará em livros didáticos de eletrônica digital.
Se os sinais estiverem fora de sincronia, a taxa de erro de bits no seu sistema pode aumentar. Ao processar dados digitais em paralelo, os sinais na sua rede devem ser sincronizados, portanto, você deve igualar o comprimento de todas as trilhas na sua rede ao comprimento da trilha mais longa. Compensar o desvio também é crítico no roteamento de pares diferenciais. Meandrar é a melhor maneira de aplicar pequenos atrasos às linhas de sinal enquanto mantém a impedância.
Os sinais em diferentes geometrias de trilha experimentarão atrasos de propagação ligeiramente diferentes. Se você está trabalhando com uma placa controlada por impedância, a fórmula para o atraso de propagação será relativamente simples e dependerá da constante dielétrica relativa do substrato da placa. Ao trabalhar com sistemas de ~100 Mbps ou superior, você precisará considerar o atraso de propagação em toda a sua placa, e é uma boa ideia usar design controlado por impedância.
Certifique-se de que seu software de design de PCB possui as ferramentas de análise de que você precisa
Ao processar dados em paralelo, erros adicionais de dados podem se acumular se o atraso de propagação entre os bits não for compensado adequadamente. Certos paralelos dentro de uma rede podem exigir maior atraso se a saída de bits menos significativos determinar as etapas de processamento aplicadas a bits mais significativos.
Esta consideração generalizada pode parecer estranha, mas tome o seguinte como exemplo. Suponha que você esteja projetando um somador de transporte para uso em uma PCB ou em um CI. Esse dispositivo é basicamente uma série de somadores de 1 bit que processam bits de entrada em paralelo. Os bits que compõem os dois números digitais a serem adicionados devem ser inseridos em cada somador em paralelo, e cada somador pode gerar um bit de transporte.
O somador para o LSB produzirá um bit de transporte para o próximo bit mais significativo, e assim por diante até o MSB. A saída do LSB para o próximo bit mais alto experimentará algum atraso de propagação. Você também precisará levar em conta o desvio total devido ao tempo de subida dos portões lógicos em cada somador. O bit de transporte e os bits de entrada em cada somador precisam permanecer sincronizados, e o atraso de propagação e o desvio acumulado no bit de transporte exigem que os bits de entrada em dígitos mais altos sejam ligeiramente atrasados.
O atraso total entre cada dígito é igual ao atraso de propagação para o sinal viajando entre somadores, mais o dobro do tempo de subida de todo o circuito lógico nos somadores (assumindo que ambos os somadores são da mesma família lógica). Quando você está trabalhando apenas com alguns bits em baixa velocidade, isso não desincronizará os sinais entre os bits. Mas quando você está trabalhando, por exemplo, com números de 32 bits a 1 Gbps ou mais, o atraso no bit de transporte alcançando o MSB será 32 vezes maior que o atraso de propagação de transporte entre somadores vizinhos.
Este é um atraso muito significativo que pode desincronizar os dados através do somador. Para compensar o atraso na entrada de dados nos somadores para dígitos mais altos, você realmente precisará adicionar algum atraso aos bits de entrada que alcançam cada somador. Bits sucessivamente mais altos exigirão mais atraso.
A maneira mais fácil de fazer isso é serpentear as trilhas que levam aos somadores para dígitos mais altos. Isso compensará o atraso de propagação e o desvio acumulado no bit de transporte. Dígitos mais altos requerem um maior atraso, mas o par de bits de entrada para o somador ainda precisa ser sincronizado. A maneira mais fácil de aplicar esse atraso é serpentear pares de trilhas que levam a cada somador. Certifique-se de permitir um espaço extra entre pares de trilhas para cada somador ao aplicar o serpenteamento.
Garanta que você pode confiar nos resultados da sua simulação
Note que esses problemas com o atraso na chegada de bits sucessivos não se aplicam apenas a somadores. Eles realmente se aplicam a qualquer circuito lógico para processamento paralelo onde a saída do processamento de um bit é usada como entrada para o processamento do próximo bit.
Componentes (por exemplo, FPGAs) que podem ser usados para processamento paralelo podem ter uma estrutura de linha de atraso que acumula atraso de transporte entre bits sucessivos. Esses valores podem alcançar dezenas de picossegundos por bit. Quando você está trabalhando com números grandes em alta velocidade, bits em dígitos mais altos podem se desincronizar do LSB. Se você está projetando de acordo com padrões específicos que exigem uma baixa taxa de erro de bit, compensar o atraso nas linhas de sinal de entrada é uma solução simples para prevenir erros de bit.
Então, como você pode garantir a integridade dos dados no seu próximo sistema digital de alta velocidade? Você precisa de ferramentas de roteamento que facilitem a compensação de atraso entre elementos na sua PCB. As ferramentas avançadas de roteamento e simulação no Altium Designer® podem ajudá-lo a evitar problemas de integridade de sinal e manter as taxas de erro de bit baixas.
Agora você pode baixar uma versão de avaliação gratuita e descobrir se o Altium é adequado para você. Fale com um especialista da Altium hoje para saber mais.