Como Iniciar um Layout de PCB FPGA Para Seu Sistema Embarcado

Zachariah Peterson
|  Criada: Junho 20, 2022  |  Atualizada: Setembro 2, 2024
Layout de PCB FPGA

Os FPGAs vêm em pacotes quad ou BGA que podem ser difíceis de planejar, especialmente com o alto número de I/Os frequentemente implementados nesses componentes. Os FPGAs oferecem muitas vantagens em termos de sua reconfigurabilidade, mas podem exigir muito esforço para dispor e rotear sem dores de cabeça. Se você nunca trabalhou com um FPGA em seu layout de PCB, temos algumas diretrizes que podem ajudá-lo a começar.

Criar um layout de PCB para FPGA é principalmente difícil porque requer um planejamento significativo que deve corresponder ao design geral do sistema. O design do sistema FPGA pode ditar onde alguns componentes precisam ser colocados e roteados no layout do PCB, e vice-versa. Se você já planejou o layout do seu sistema, então provavelmente terá mais facilidade para construir sua aplicação e implementá-la em um FPGA com sucesso. Para começar, vamos olhar como pensar sobre o empilhamento e os canais de roteamento em seu FPGA, pois esses pontos irão direcionar muitas escolhas no layout do PCB.

Empilhamentos e Roteamento em um Layout de PCB para FPGA

Para começar com um FPGA, é importante notar que os FPGAs avançados de hoje, com uma contagem moderada a alta de I/O, vêm em pacotes BGA. FPGAs em QFPs também estão disponíveis, mas os componentes mais avançados estarão disponíveis em pacotes BGA. A razão para isso é simples: você pode encaixar muito mais I/Os em um pacote BGA, e pode reduzir o tamanho do componente se um FPGA estiver embalado em um BGA.

Então, para começar, certifique-se de que o empilhamento para o layout da sua placa de circuito impresso FPGA atenda a alguns requisitos simples:

  • Intercale camadas de potência e sinal com camadas de terra na pilha de PCB
  • Use o método padrão em BGAs para determinar o número necessário de camadas de sinal para roteamento (Camadas de sinal = número de linhas com sinais/4)
  • Para I/Os de alta velocidade, certifique-se de que a camada externa seja fina o suficiente para eliminar a necessidade de estreitamento
  • Use planos de terra e/ou preenchimento de terra para suportar roteamento de alta velocidade com controle de impedância

As diretrizes aqui apresentadas aplicam-se a qualquer BGA, mas são bastante importantes em FPGAs. Um FPGA é frequentemente usado porque permite acesso a múltiplas interfaces de alta velocidade que não estão disponíveis em um componente mais lento como um MCU/MPU. Mesmo em BGAs com passo sub-mm, você não é obrigado a implementar práticas de design HDI, mas ainda deve implementar uma pilha que permita o tipo de roteamento necessário para garantir integridade de sinal, integridade de potência e EMC.

Exemplo de Pilha

O empilhamento mostrado abaixo oferece múltiplos canais de roteamento em várias camadas. Se houver mais de duas linhas/colunas de I/Os no FPGA, então você terá que dedicar múltiplas camadas de sinal a esses grupos de I/O. Camadas adicionais podem ser adicionadas para suportar outros sinais não dedicados ao FPGA, ou para outras interfaces (analógicas, SPI, etc.).

FPGA PCB stackup
Exemplo de pila de PCB de 12 camadas para um layout de PCB FPGA.

Neste empilhamento, tomamos as melhores medidas disponíveis para fornecer isolamento em diferentes canais, proporcionar espaço suficiente e camadas para o roteamento de energia, e bastante terra para controlar caminhos de retorno. A intercalação de camadas de terra entre sinal e PWR é muito importante, pois fornece o controle do caminho de retorno necessário para garantir que os requisitos de EMC sejam satisfeitos. Neste empilhamento, há apenas 1 camada de energia listada, embora a energia também possa ser roteada em camadas de sinal conforme necessário para fazer conexões com trilhos menores. Sistemas de maior corrente podem usar múltiplas camadas de energia em paralelo se necessário.

Conector de Placa para Placa SOM Fanout

O FPGA geralmente será colocado longe das bordas da placa para que os canais de roteamento possam ser estendidos para fora. No entanto, existe um método alternativo para a colocação de um FPGA. Em vez de colocar o FPGA como um componente, ele pode estar disponível em um módulo de sistema integrado (SOM) fornecido pelo fabricante da peça ou por uma empresa terceira. A colocação como um SOM requer a expansão de conectores de placa para placa que podem ter uma contagem de pinos muito alta. Um exemplo é mostrado abaixo.

FPGA board to board connector
Esta pegada de conector de prancha a prancha pode ser curvada em várias direções dependendo de onde os sinais precisam ser routados.

Dependendo da pegada do conector de placa para placa, você pode precisar de alguma estratégia de fanout e regras de design que poderia usar em um FPGA. É comum ver vários conectores agrupados em um arranjo quadrado ao redor da placa SOM ou nas bordas.

Planejamento para Roteamento

Como podemos ver de toda a discussão acima, o layout e roteamento eficazes de PCB com um FPGA são todos sobre trabalhar com BGAs, então as mesmas estratégias de roteamento usadas em outros BGAs se aplicarão em FPGAs. Existem algumas estratégias simples que são necessárias para rotear sinais para fora de um grande FPGA:

  • Certifique-se de que a pegada BGA do seu FPGA está correta e cumpre com os requisitos de DFM
  • Selecione o fanout apropriado para o seu BGA para que os sinais possam alcançar os pinos
  • Crie canais em cada camada onde interfaces específicas serão roteadas
  • Organize periféricos ao redor dos I/Os para evitar roteamento de ida e volta ao redor da placa
  • Aproveite as regras de design para garantir controle de impedância
  • Defina a geometria do seu par diferencial de modo que a impedância seja dominada pelo espaçamento traço-terra, e não pelo espaçamento traço-a-traço

Outros desafios de colocação normalmente envolveriam a colocação de capacitores nos pinos de alimentação ao redor do FPGA para fornecer desacoplamento. Com pacotes BGA, isso é muito mais conveniente porque você pode colocar esses capacitores entre os pinos no lado de trás do FPGA. Certifique-se de especificar via-in-pad na sua documentação de fabricação se estiver usando capacitores de maiores dimensões. Se você está trabalhando com alguns dos padrões de sinalização mais rápidos, então deve optar por tamanhos de pacote menores (sub-0402) para garantir a resposta mais rápida possível na sua rede de desacoplamento.

FPGA PCB layout
Capacitors nos pinos de trás de uma BGA.

Para sinais de altíssima velocidade, onde é necessária uma correspondência precisa de comprimento em um barramento paralelo grande (como DDR4 ou superior) e entre múltiplos pares diferenciais (como em PCIe), você precisará incluir os tempos de voo através do FPGA. FPGAs fisicamente grandes podem exigir que os sinais percorram o componente para que um sinal saia de um bloco lógico e alcance um pino de E/S. Às vezes, estes estão em lados opostos do FPGA, então haverá um grande atraso de propagação adicionado ao tempo de viagem do sinal. Esse tempo de voo adicional pode ser incluído nas informações de atraso do pacote-pino para o FPGA. Se o seu sinal estiver passando por um via, não esqueça de incluir o atraso do via (veja o link anterior).

Quando você precisar colocar um FPGA em seu layout de PCB e rotear sinais para outros componentes, use o melhor conjunto de recursos de layout de PCB em Altium Designer®. Uma vez que você tenha completado sua PCB e estiver pronto para compartilhar seus projetos com colaboradores ou seu fabricante, você pode compartilhar seus projetos concluídos através da plataforma Altium 365™. Tudo o que você precisa para projetar e produzir eletrônicos avançados pode ser encontrado em um único pacote de software.

Apenas começamos a explorar o que é possível fazer com o Altium Designer no Altium 365. Comece sua avaliação gratuita do Altium Designer + Altium 365 hoje.

Sobre o autor

Sobre o autor

Zachariah Peterson tem vasta experiência técnica na área acadêmica e na indústria. Atualmente, presta serviços de pesquisa, projeto e marketing para empresas do setor eletrônico. Antes de trabalhar na indústria de PCB, lecionou na Portland State University e conduziu pesquisas sobre teoria, materiais e estabilidade de laser aleatório. A experiência de Peterson em pesquisa científica abrange assuntos relacionados aos lasers de nanopartículas, dispositivos semicondutores eletrônicos e optoeletrônicos, sensores ambientais e padrões estocásticos. Seu trabalho foi publicado em mais de uma dezena de jornais avaliados por colegas e atas de conferência, além disso, escreveu mais de dois mil artigos técnicos sobre projeto de PCB para diversas empresas. É membro da IEEE Photonics Society, da IEEE Electronics Packaging Society, da American Physical Society e da Printed Circuit Engineering Association (PCEA). Anteriormente, atuou como membro com direito a voto no Comitê Consultivo Técnico de Computação Quântica do INCITS, onde trabalhou em padrões técnicos para eletrônica quântica e, no momento, atua no grupo de trabalho P3186 do IEEE, que tem como foco a interface de portas que representam sinais fotônicos com simuladores de circuitos da classe SPICE.

Recursos relacionados

Documentação técnica relacionada

Retornar a página inicial
Thank you, you are now subscribed to updates.