É uma má prática rotear sinais de alta velocidade (como um barramento SPI com clock de 4 MHz) através de vias PCB?
Percebi um bom ruído (+ -300mV) nos meus sinais de barramento SPI com níveis de 3,3V. Os traços de sinais têm apenas cerca de 5 cm de comprimento, mas passam por cerca de 5 vias cada um no caminho para o seu destino. A placa possui apenas 2 camadas, razão pela qual existem tantas vias nessas linhas.
Que tipo de ruído posso esperar (se houver) a ser introduzido por uma mudança de camada de PCB?
Muita informação boa nas respostas. Vai ser difícil escolher apenas um. Dado que um PCB via introduz cerca de 1,2nH de indutância e 0,4pF de capacitância, o consenso parece ser de que os 5 vias não afetarão significativamente um sinal de 4MHz.
Respostas:
300mV é muito para um barramento de 3.3V. O Vias não causará um problema, pois a via adiciona apenas alguns nH de indutância e se a capacitância em cada extremidade for inferior a 100pF e um traço curto for inferior a 0,1Ω, o que tornaria um ressonador RLC em torno de 1GHz e você ganhou vejo isso.
Os efeitos da linha de transmissão não se tornam visíveis até 50MHz, portanto, 4Mhz deve ficar bem.
O problema mais comum em placas de duas camadas é o ruído no modo comum devido ao aterramento inadequado (aterramento) e o ruído no modo comum. Então, eu examinaria primeiro o sistema de aterramento no projeto, para garantir que as correntes não criassem ruído de modo comum por meio de pequenos traços encadeados.
O outro problema pode estar no aterramento e onde o aterramento do osciloscópio é colocado.
fonte
Sou novato no que diz respeito a sinais de velocidade mais alta, mas acontece que eu estava pesquisando a integridade do sinal quando você fez a pergunta. Uma fonte que estou referenciando é Right the First Time, de Lee Ritchey . Você deve consultar o capítulo 25, Curvas e viés de ângulo reto: fontes potenciais de reflexões e outros problemas .
Não acredito que as vias causem problemas no seu design. Aqui está um trecho da fonte:
O capítulo continua discutindo reflexões devido a incompatibilidades de impedância da camada de PCB, no entanto, esse parece ser o caso quando as tolerâncias de fabricação não são atendidas.
fonte
O problema não é o relógio SPI ter frequência muito alta (4 MHz). Pode ser de 0,1 Hz e as bordas do sinal ainda tocam, pois é a taxa de borda que define a largura de banda. Normalmente, os pinos de E / S do microcontrolador são moderadamente fortes e podem conduzir, por exemplo, uma carga capacitiva de 30pF com tempo de subida de 4ns ou carga capacitiva de 10pF com tempo de subida de 2,5nS. Isso é forte o suficiente para gerar sinais de 100-120MHz de um MCU, de acordo com a folha de dados do STM32F207.
O que você pode estar perdendo é que, se o seu MCU não possui força de acionamento de pinos configurável, você pode diminuir os tempos de subida / queda para níveis sãos, colocando, por exemplo, resistores terminais da série de 33 ohms no dispositivo que está acionando os pinos. Dessa forma, as bordas precisam de menos largura de banda e menos toque. O SPI de 4 MHz com 5 cm de comprimento não deve ser um problema, mas verifique quais os tempos de subida / descida que seus chips precisam para funcionar.
Outro problema é que o osciloscópio pode mostrar sinais de toque apenas porque o osciloscópio ou as pontas de prova têm um limite de 100 MHz de BW e as bordas do sinal são rápidas o suficiente para ultrapassar o limite de 100 MHz de BW.
fonte
5 MHz é lento. Mas a largura de banda do sinal depende do tempo de espera.
BW = 0,35 / Tr, então é 10ns = 0,01us o BW = 0,35 / 0,01us = 35MHz
Mas se o sinal era lógica HDMI ou CML ou apenas 1ns de duração, então;
BW = 350MHz Então, temos duas regras de polegar a mais no comprimento máximo do caminho para ignorar reflexões de vias ou traços longos;
1: 1/10 Lambda, o tempo de subida de 1ns está usando v = c / sqrt (Er)
- o comprimento máximo do caminho é 8,5 cm
Para uma melhor análise, use algumas ferramentas de cálculo como Saturn PCB.exe ou ferramentas de análise usando ESL, ESR, C (pf) da sua via indutância e capacitância em um modelo para ver o resultado usando a impedância do driver VOl / Iol = Ron.
Em seguida, modele em seu simulador favorito. A minha é da Falstad
fonte