Se você está trabalhando com um dispositivo de alta velocidade, provavelmente precisará rotear pares diferenciais entre componentes. Muitas PCBs de alta velocidade incluem interfaces diferenciais que requerem valores específicos de impedância no modo ímpar/diferencial, e o designer de layout da PCB terá que especificar essas restrições de geometria no seu Editor de PCB para garantir que as trilhas tenham os valores de impedância corretos.
A maneira mais rápida e precisa de fazer isso é integrar o cálculo de impedância e a configuração de regras de design em um único fluxo de trabalho. O Altium Designer ajuda você a fazer isso com o recurso Layer Stack Manager, que passará seu resultado de cálculo para o Editor de Regras e Restrições de PCB. Outras características, como limite de comprimento de desacoplamento, limite de comprimento total de trilha e limites de desigualdade de comprimento/atraso.
Quando você precisa usar pares diferenciais em seu dispositivo, precisará definir quais redes utilizarão sinalização diferencial para se conectar aos seus componentes. Simplesmente colocar uma rede não é suficiente, uma rede precisa ser especificamente indicada como parte de um sinal diferencial. O editor de esquemático e de layout no Altium Designer® inclui funções de definição de redes, e você pode definir pares diferenciais dentro de uma rede de sinal. Primeiro, você precisará selecionar alguns componentes que se comunicarão entre si, colocá-los no seu esquemático e definir quais portas usarão sinalização diferencial.
Aqui, temos três objetivos:
Para começar, vamos olhar o esquemático abaixo e definir os pares diferenciais que precisamos usar para criar nosso sinal diferencial. Este esquemático contém um Controlador USB/Ethernet LAN9514I-JZX da Microchip, um conector de borda e alguns conectores USB blindados. Estes componentes podem ser encontrados no Painel de Pesquisa de Partes do Fabricante dentro do Altium Designer. Por brevidade, vamos apenas olhar para a "Parte A" desta lista de pinos, etiquetada com o designador "U1A" no esquemático. Algumas das saídas serão conectadas ao conector de borda da placa, e outras redes serão roteadas para os conectores USB.
Controlador USB/Ethernet e algumas conexões no Altium Designer
Observe que, neste esquemático, defini as saídas USB como pares diferenciais com um símbolo de diretiva especial. Você pode especificar quais conexões são pares diferenciais clicando no menu “Place”. Destaque a opção “Directives” e selecione “Differential Pair”. Você poderá colocar o símbolo da diretiva nas conexões que deseja que funcionem como pares diferenciais. Simplesmente selecione todas as redes que farão parte de um par diferencial.
Em seguida, cada metade de um par diferencial é definida como positiva ou negativa usando o nome da sua rede. A extremidade positiva deve ser nomeada usando “_P” no final do rótulo da rede, e a extremidade negativa deve ser nomeada usando “_N”. Eu fiz isso para as linhas USB1-USB3 no esquemático acima. Podemos fazer o mesmo para as linhas RX na parte inferior esquerda de U1A. Note que normalmente elas seriam conectadas a um circuito de terminação magnética e Bob Smith antes de serem roteadas para um conector RJ45, mas vamos apenas usar a situação simples acima para ilustrar o roteamento de pares diferenciais.
O roteamento dos seus pares diferenciais com sucesso requer a configuração de Classes de Par Diferencial e Classes de Rede. O objetivo aqui é agrupar vários pares juntos para que as mesmas regras de design possam ser aplicadas a todos os pares no grupo. Este grupo é uma Classe de Par Diferencial, e você aplicará requisitos de geometria e requisitos de correspondência de comprimento no editor de Regras de Design.
Uma vez que precisamos definir uma Classe de Par Diferencial, adicionaremos isso a cada diretiva. Defini classes USB1 e USB3 para cada uma das conexões mostradas no esquemático. Se você clicar duas vezes no símbolo da diretiva, poderá definir classes e regras de design para uma conexão em um par diferencial. Você também pode clicar com o botão direito do mouse no símbolo da diretiva e clicar em “Propriedades”. Isso abrirá uma caixa de diálogo que permite especificar um rótulo, classes e regras para um par diferencial. Aqui, adicionaremos a “Classe de Rede de Par Dif.” a cada par e atribuiremos um nome de classe para esta rede. Isso é mostrado abaixo para USB1_P.
Definindo uma classe de rede de par diferencial
Você também precisará adicionar regras de design a esta diretiva. Isso pode ser feito dentro do diálogo mostrado acima para aplicar uma regra de design a uma rede individual. Se você quiser fazer algo como ajuste de comprimento para um par diferencial, ou para um grupo de pares diferenciais, é melhor fazer isso no Editor de PCB. Se você criar uma regra a partir do diálogo acima, uma nova regra de design será criada que se aplica apenas a esta rede. Como queremos aplicar correspondência de comprimento às conexões individuais de USB1 a USB3, podemos apenas definir as Classes de Par Diferencial mostradas acima e esperar até que o esquemático seja capturado para definir uma regra de design para estas redes.
Antes de capturar seu esquemático e começar o roteamento, você precisa criar um novo PcbDoc que inclua um perfil de impedância para seus pares diferenciais. Para este exemplo simples, criei uma PCB de 4 camadas com um perfil de impedância de extremidade única (50 Ohm, nomeado S50) e um perfil de impedância para par diferencial (90 Ohm, nomeado D90). O perfil de impedância para par diferencial será usado para as linhas USB, pois estas precisam ter uma impedância diferencial definida. Você pode fazer isso através do Gerenciador de Pilhas de Camadas dentro do Editor de PCB. Meu empilhamento e perfil de impedância são mostrados abaixo.
Note que defini o espaçamento entre as trilhas no par diferencial para ser o valor padrão de 5 mil. No entanto, você pode considerar alterar isso, leia este artigo para orientação sobre como definir o espaçamento de trilha do seu par diferencial.
Definindo um perfil de impedância para roteamento de par diferencial
Neste ponto, podemos capturar o esquemático como um layout e rotear os pares diferenciais que definimos. Eu defini pares diferenciais para o restante das conexões entre o FPGA e o conector. Primeiro, adicione uma nova PCB ao seu projeto e capture seu esquemático. Você pode fazer isso abrindo sua PCB vazia e clicando no menu “Design”, seguido por “Importar Alterações De…”. Note que um Room será criado por padrão a menos que você desmarque a opção no diálogo de Ordem de Mudança de Engenharia.
Antes de rotear, precisamos definir regras de design para as redes de pares diferenciais em nosso esquemático. Isso é feito abrindo o diálogo Design -> Regras no Editor de PCB. Aqui, precisamos definir as seguintes regras para estas redes cumprirem a especificação USB:
Quando você define as regras de design para esses pares, você pode criar uma regra para cada rede e selecionar o perfil de impedância que deseja usar. Isso é mostrado abaixo.
Definindo regras de design para redes individuais
Uma vez que estamos trabalhando com múltiplos pares diferenciais que precisam das mesmas regras de design, uma opção melhor é criar uma única regra de design que se aplique à nossa Classe de Par Diferencial. Para verificar e criar classes, abra o diálogo Design -> Classes no Editor de PCB. Desça até a entrada de Classes de Par Diferencial, clique com o botão direito e crie uma nova classe. Contanto que você tenha definido seus pares diferenciais corretamente no esquemático, agora você pode adicionar esses pares à sua nova classe. Isso é mostrado na imagem abaixo.
Definindo uma classe para um grupo de pares diferenciais USB
Agora, você pode ir ao editor de regras de design e selecionar a classe de rede que acabou de criar para a tolerância de comprimento e restrições de roteamento, assim como foi feito para redes individuais. Sob a entrada "Onde o Objeto Corresponde" na janela de regra de design, selecione a Classe de Par Diferencial que você definiu na janela acima. A regra de design agora se aplicará a todas as redes na classe (USB1, USB2 e USB3). Isso aplicará o perfil de impedância que você definiu no Gerenciador de Pilha de Camadas, contanto que você selecione a opção na janela de regra de design.
Regras de design adicionais que podem ser necessárias para garantir impedância consistente e manter a integridade do sinal incluem:
A maioria dessas configurações de regras pode ser encontrada na seção de Alta Velocidade do Editor de Regras e Restrições de Design de PCB.
Agora é hora de importar as alterações do esquemático e iniciar o layout da PCB. Trabalhamos bastante na parte inicial para definir as restrições antes de criar o layout da PCB, mas agora as regras de design que configuramos garantirão que as trilhas roteadas tenham a impedância requerida, espaçamento e regras de correspondência de comprimento conforme os pares são roteados. Depois de organizar os componentes da maneira que deseja, selecione a opção Roteamento Interativo de Par Diferencial no topo da janela do Editor de PCB.
A imagem abaixo mostra o componente com o qual queremos trabalhar em meio ao roteamento. Quando você usa o roteador interativo, você só precisa clicar em uma extremidade da rede, e ambas as trilhas serão roteadas em conjunto conforme você se move pela placa.
Embora não seja ideal permitir que obstáculos caiam entre os traços em seu par diferencial, o roteador pode mover automaticamente os traços ao redor do obstáculo durante o roteamento. Para ilustrar, um resistor foi colocado no caminho de roteamento como mostrado abaixo. À medida que os traços se aproximam do componente, eles serão automaticamente movidos ao redor do componente com a menor folga possível. Você pode então clicar no lado oposto do componente para definir seu roteamento ao redor do componente, e pode continuar roteando em direção ao destino.
Note que isso pode acionar um erro de regra de design para o comprimento máximo não acoplado, mas geralmente a evitação de obstáculos será seguida aqui à medida que você se move ao redor do componente.
Para componentes mais complicados, como BGA com alta contagem de esferas ou um conector SMD com espaçamento estreito entre pinos, você precisará usar uma estratégia de fanout para criar conexões para suas trilhas. Configurações adicionais de roteamento nesses componentes podem ser controladas criando um objeto Room ao redor do componente. Você pode então especificar restrições, como distâncias de segurança, dentro desta região usando a consulta personalizada "Within Room" ao definir regras de design. Isso permite controlar a redução entre pinos, comprimentos de desacoplamento, segmentos paralelos e distâncias de segurança apenas dentro da região do room, o que minimiza quaisquer desajustes de impedância olhando para os pinouts dos componentes.
A imagem abaixo mostra dois pares diferenciais roteados. Este é um processo rápido e fácil graças às ferramentas de roteamento interativo no Altium Designer. Neste ponto, você pode aplicar ajuste de comprimento a cada par, ou entre vários pares. Dê uma olhada neste artigo para ver como aplicar ajuste de comprimento a pares diferenciais.
Roteamento de par diferencial concluído no Altium Designer
Você também pode usar o pacote xSignals para examinar a integridade do sinal dessas redes, ou de um grupo de redes. Examinar um grupo de redes requer a definição de uma classe xSignals a partir do diálogo Design -> Classes, assim como foi feito para criar uma Classe de Par Diferencial. Isso permite que você examine as bordas de subida e descida dos sinais, e qualquer overshoot/undershoot. Outras regras de design de alta velocidade podem ser aplicadas a este layout da mesma forma que foi feito para tolerância de comprimento e impedância diferencial. As regras de design mostradas aqui são a chave para um roteamento rápido e fácil de pares diferenciais.
Altium Designer unifica as informações do seu design com suas ferramentas de roteamento, garantindo que seu próximo dispositivo funcionará conforme o previsto. O ambiente integrado no Altium Designer permite que todas as suas ferramentas se comuniquem usando o mesmo motor de design orientado por regras. As melhores ferramentas de esquemático, CAD, simulação e roteamento são exatamente o que você precisa para criar as melhores PCBs.
Fale hoje com um especialista em Altium Designer se você quiser aprender mais sobre o Altium Designer.