control-systems-and-automation
Considerações de projeto para implementação de sistemas Fpga incorporados e Microcontrolador em Pcbs
Table of Contents
Os modernos sistemas incorporados exigem cada vez mais as capacidades combinadas de um microcontrolador (MCU) para controle determinístico e um conjunto de portas programáveis em campo (FPGA) para processamento de dados paralelo de alta velocidade. A implementação de ambos os dispositivos em uma placa de circuito impresso único (PCB) oferece vantagens significativas em desempenho, tamanho e custo, mas requer escolhas de design cuidadosas e deliberadas. Da gestão de sequenciamento de energia complexo à manutenção da integridade do sinal em interconexões de alta velocidade, os desafios são substanciais. Este guia descreve as áreas técnicas principais que os engenheiros devem abordar para garantir um design robusto e confiável para plataformas de computação FPGA-MCU heterogêneas.
Arquitectar a Interface FPGA-MCU
O primeiro passo no processo de projeto é determinar como o FPGA e MCU se comunicarão. Esta decisão influencia fortemente os requisitos de E/S, complexidade de layout do PCB e rendimento geral do sistema.
Particionamento de carga de trabalho e Seleção de Interconectar
Os engenheiros devem decidir quais as tarefas que pertencem ao MCU e que pertencem ao FPGA. O MCU normalmente lida com a inicialização do sistema, gerenciamento de interfaces de usuário, pilhas de protocolos de rede e leituras de sensores de baixa largura de banda. O FPGA lida com fluxos de dados de alta velocidade, processamento de sinal em tempo real e emulação periférica personalizada. A interconexão entre eles deve corresponder aos requisitos de largura de banda e latência da aplicação alvo.
As normas comuns de interligação incluem:
- Interface periférica serial (SPI): Adequado para controle e configuração. Quad-SPI (QSPI) oferece maior rendimento para transferência de dados.
- Controlador de Memória Estática Flexível (FSMC) / Controlador de Memória Flexível (FMC):] Fornece uma interface de barramento paralela, permitindo que a MCU acesse periféricos mapeados por memória FPGA ou SRAM compartilhados com alto rendimento e baixa latência.
- PCI Express (PCIe):] Necessário para aplicações de largura de banda extremamente alta, como rádio definido por software ou aquisição de dados de alta velocidade.Isso requer blocos PCIe endurecidos tanto no FPGA quanto no MCU/MPU.
- AXI Bus: Para sistemas fortemente acoplados, especialmente quando se usa um FPGA Sistema-on-Chip (SoC) (por exemplo, Xilinx Zynq). Esta é a opção de desempenho mais alta, executando interna ao pacote.
Escolher a interface certa é um equilíbrio entre a contagem de pinos, consumo de energia e taxa de dados. Um barramento paralelo oferece alta velocidade, mas consome muitos pinos de E/S e potência dinâmica significativa, enquanto um barramento serial como SPI é mais simples, mas inerentemente mais lento.
Seleção de dispositivos FPGA e MCU
Os dispositivos específicos escolhidos ditarão fortemente a complexidade do PCB. FPGAs de AMD (Xilinx) ou Intel (Altera) estão disponíveis em pacotes que vão desde BGAs de ponto fino (bolas de 0,5mm) a pacotes de alta densidade com milhares de bolas para peças de ponta. Da mesma forma, MCUs de fornecedores como a STMicroelectronics, NXP ou Microchip oferecem níveis variados de periféricos integrados e interfaces de alta velocidade. Os engenheiros devem verificar compatibilidade de tensão de E/S, níveis de família lógica e adequação de pacotes para o processo de fabricação pretendido no início da fase de seleção.
Projeto de rede de distribuição de energia (PDN) para sistemas de sinal misto
A rede de distribuição de energia é, sem dúvida, o aspecto mais crítico do projeto de PCB FPGA e MCU. Os FPGAs têm exigências de energia exigentes, incluindo múltiplos trilhos de baixa tensão com tolerâncias apertadas (frequentemente menos de 3% de ondulação) e transientes di/dt extremamente elevados durante a operação.
Topologias e Sequenciamento de Tensão Ferroviária
Um sistema típico pode exigir várias trilhos de tensão dedicados: FPGA Core (0,85V-1,0V), FPGA I/O (1,8V, 2,5V, 3.3V), FPGA Transceiver (1,0V, 1,8V), MCU Core (1,2V) e MCU I/O (3,3V). Usando um Circuito Integrado de Gestão de Energia dedicado (PMIC) simplifica os requisitos complexos de sequenciamento. Muitos FPGAs exigem que a tensão central aumente antes da tensão de E/S para evitar o acesso ou o excesso de corrente. PMICs dedicados de dispositivos analógicos ou instrumentos do Texas fornecem trilhos múltiplos com sequenciamento embutido que atende às especificações rigorosas do fornecedor.
A dissociar a arquitectura da rede
O ruído simultâneo de comutação (SSN) da lógica interna do FPGA pode causar quedas de tensão maciças se não desacoplar corretamente. Uma estratégia de dissociação multi-camadas é necessária para manter uma baixa impedância através do espectro de frequência.
- Capacitância do bloco: Os condensadores de tântalo ou polímero (47uF a 330uF) fornecem armazenamento de energia de baixa frequência para suportar transientes de longa duração.
- Desacoplamento de frequência média: MLCCs (1uF a 10uF) em embalagens 0402 ou 0603 manuseiam as frequências de intervalo médio. Os dielétricos X7R ou X5R são padrão.
- Desacoplamento de alta frequência: Valor muito pequeno MLCCs (0.1uF a 0,01uF) com alta frequência de auto-ressonalidade (SRF) são colocados o mais próximo possível dos pinos de potência FPGA e MCU, idealmente diretamente na parte de trás do BGA via array.
Realizar uma simulação de impedância PDN usando ferramentas como Cadence Sigrity ou Ansys SIwave é recomendado para verificar o alvo de impedância (tipicamente <10mOhm) is met up to several hundred MHz. An overview of suitable solutions is available through Portfólio de gerenciamento de energia do Analog Devices].
Seleção do componente da fonte de alimentação
A seleção de reguladores de tensão é um ato de equilíbrio entre eficiência, ruído e tamanho. Fontes de alimentação de modo de comutação (SMPS) são necessárias para os trilhos principais tanto do FPGA quanto do MCU para manter a eficiência e minimizar a dissipação de calor. A frequência de comutação deve ser escolhida para ser baixa para maximizar a eficiência ou alta para minimizar o tamanho do indutor. A ondulação de saída do SMPS deve cair estritamente dentro da tolerância da tensão do núcleo do FPGA. Reguladores de baixa desativação (LDOs) são recomendados para fontes analógicas sensíveis ao ruído, como PLLs e transceptores, onde sua menor eficiência é um comércio aceitável para energia limpa. A Texas Instruments oferece um guia de seleção abrangente para soluções de gerenciamento de potência para FPGAs.
Estratégias de alta velocidade de layout e integridade de sinais
A manutenção da integridade do sinal é essencial para uma operação confiável, especialmente quando as velocidades da interface aumentam para lidar com a rede de vídeo de alta resolução ou gigabit. As regras de empilhamento e roteamento do PCB devem ser estabelecidas no início do ciclo de projeto.
Desenho de Pilha de PCB
Para uma placa FPGA complexa, é recomendado um mínimo de 6 a 8 camadas. Uma pilha de 8 camadas bem projetada proporciona um controle robusto de isolamento e impedância.
- Camada 1: Sinal de topo e terra (Microstrip)
- Camada 2: Avião terrestre
- Camada 3: Camada de Sinal (Stripline)
- Camada 4: Avião(s) de potência
- Camada 5: Avião Terreno
- Camada 6: Camada de Sinal (Stripline)
- Camada 7: Avião Terrestre
- Camada 8: Sinal inferior e terra (Microstrip)
Planos de terra dedicados adjacentes às camadas de sinal garantem um caminho de retorno curto e de baixa indutância. Traços de impedância controlada (50 Ohm uniple-end, 90 Ohm diferencial para USB, 100 Ohm para Ethernet e LVDS) devem ser especificados para o fabricante de PCB. A padronização do projeto de impedância controlada é regida por IPC-2141A[.
Roteamento de Interfaces Críticas
Interfaces de Memória DDR: A correspondência de comprimento é fundamental para as linhas de dados, endereço e controle. Todos os sinais dentro de um grupo devem permanecer dentro de um ajuste de tempo apertado (por exemplo, +/- 10 picosegundos). As larguras e espaçamento de traços devem ser calculados para atingir a impedância do alvo. Resistores de terminação posicionados perto do controlador de memória ou módulo de memória são frequentemente necessários para suprimir reflexões.
Links Seriais de Alta Velocidade (SERDES): Estas interfaces requerem capacitores de acoplamento AC. A colocação destes capacitores deve estar próxima do pino transmissor. Os pares diferenciais devem ser encaminhados com espaçamento constante e comprimento total, evitando via sempre que possível. Se for necessário, colocar pontos de terra ao lado do sinal vias proporciona um caminho de retorno ininterrupto e minimiza a descontinuidade da impedância.
Sinais de bloqueio: As fontes do relógio devem ser colocadas fisicamente perto do FPGA. O traço do relógio deve ser encaminhado sobre uma camada externa com um plano sólido de terra diretamente abaixo. Uma resistor de terminação de série colocado na fonte pode evitar reflexos e reduzir significativamente o nervosismo. A adesão às recomendações do vendedor, como as encontradas no Guia de Design de PCB AMD Xilinx UG482 é uma boa prática.
Seleção de Materiais PCB
A frequência de funcionamento das interfaces dita a escolha do material PCB. O padrão FR-4 é adequado para velocidades até aproximadamente 1 GHz. Para o SERDES de alta velocidade operando em 5 Gbps e acima, ou para interfaces RF, são necessários materiais de baixa perda, como Rogers 4003C ou Isola FR408. Estes materiais têm um fator de dissipação mais baixo (Df), o que reduz a atenuação do sinal. Eles também oferecem uma tolerância mais apertada na Constante Dielétrica (Dk), levando a um controle de impedância mais consistente através do lote de produção.
Contramedidas do IME e do CEM
Para passar no teste de emissões FCC ou CE, o projeto do tabuleiro deve incorporar contramedidas EMC desde o início. Sinais de alta velocidade devem ser encaminhados em camadas internas (stripline) para beneficiar da proteção inerente dos planos de potência e terra. Conectores E/O devem incluir filtragem, como estrangulamentos de modo comum para pares diferenciais e contas de ferrita para linhas de energia. Um solo sólido de chassis conectado ao plano de solo PCB através de furos de montagem é altamente eficaz na redução de emissões irradiadas. Características de crocagem de espectro de dispersão dentro do FPGA também pode ajudar a reduzir os níveis de pico de emissão.
Gestão térmica para módulos de computação de alta densidade
A densidade de potência dos modernos FPGAs significa que o gerenciamento térmico não pode ser uma reflexão posterior. Um FPGA de 10W em uma pequena placa incorporada pode atingir temperaturas de junção superiores a 100°C sem resfriamento adequado, levando à degradação do desempenho ou falha permanente.
Desenho de Caminho Termal
O caminho térmico primário para um pacote BGA é através das esferas de solda e para o próprio PCB. Vias térmicas colocadas diretamente sob o conjunto de almofadas FPGA conduzem calor para planos internos de terra, que funcionam como espalhadores de calor de grande área. Uma grade de 0,3 mm vias com um mínimo de 1 oz cobre chapeamento é prática padrão. Para níveis de potência mais elevados, um dissipador de calor dedicado ligado ao topo do pacote usando um material de interface térmica (TIM) é necessário. O dissipador de calor pode ser seguro com clipes ou fita térmica adesiva.
Fluxo de ar e integração do sistema
Se o sistema final incluir uma ventoinha para resfriamento ativo, o caminho de fluxo de ar deve ser cuidadosamente considerado. A MCU e outros componentes sensíveis ao calor, como reguladores de tensão e osciladores de precisão, não devem ser colocados diretamente no caminho de escape quente do dissipador de calor FPGA. Simulação computacional de dinâmica de fluidos (CFD) usando ferramentas como FLOTHRM ou Ansys Icepak é recomendado para modelar com precisão o comportamento térmico de toda a placa povoada e gabinete.
Considerações sobre segurança e confiabilidade do sistema
Em muitas aplicações industriais e automotivas, o bitstream de configuração FPGA e o firmware MCU devem ser protegidos de acesso, cópia ou adulteração não autorizados.
Criptografia segura de arranque e de fluxo de bits
Moderno FPGAs suporta criptografia de bitstream usando AES-256. A chave de descriptografia é armazenada em SRAM com suporte a bateria ou programada em eFuses programáveis uma vez dentro do FPGA. O MCU pode orquestrar um processo de inicialização seguro onde ele autentica seu próprio firmware primeiro, então autentica e configura o FPGA. Os dispositivos de memória externa que armazenam os dados de configuração devem estar em um estado conhecido e validado para evitar ataques de retrocesso.
Vigia e Supervisão de Tensão
Um relógio de relógio de hardware, interno para a MCU ou como um componente externo dedicado, é essencial para a confiabilidade do sistema. O FPGA pode conduzir um sinal "heartbeat" ou "vivo" para a MCU para indicar que está configurado e funcionando corretamente. Se o FPGA ou MCU não conseguir atender o cão de guarda, o sistema deve realizar um desligamento e reiniciar controlados. Os supervisores de tensão em todas as trilhos de potência críticos garantem que o sistema seja mantido em um estado de redefinição seguro se qualquer trilho cair fora de tolerância, evitando o comportamento lógico imprevisível.
Design para Fabricação e Validação
A concepção para fabricação (DFM) e testabilidade (DFT) garante que a placa complexa possa ser montada e validada de forma confiável na produção.
DFM para BGA de alta densidade
FPGAs muitas vezes vêm em pacotes BGA de ponta fina (0,8mm ou campo de 0,5mm). Rotear traços entre as almofadas de uma BGA de 0,5mm é desafiador e requer larguras e espaçamento de linha muito finas (3 milhões ou menor). Micro-vias são frequentemente necessárias para quebrar as linhas internas da BGA. O design da máscara de Solder e o uso da tecnologia via-in-pad (VIP), seguido de planarização, pode simplificar o leque-out. O fabricante de PCB deve ser consultado precocemente para confirmar as capacidades de seu processo de fabricação para perfuração e revestimento de microvia.
Estratégias de Teste para Placas Densas
A sondagem física dos sinais BGA durante o teste de produção é impraticável. Portanto, a verificação de contornos JTAG (IEEE 1149.1) é essencial para testar a integridade da junta de solda e as interconexões de nível de placa. A cadeia JTAG deve ser incluída no desenho desde o início. Permite testar automaticamente as conexões entre o FPGA e MCU, bem como as conexões para outros dispositivos compatíveis com JTAG, como PHYs Ethernet e componentes de memória. Além disso, incluindo pontos de teste para trilhos de potência chave e um console de depuração serial (UART) da MCU é altamente valioso para prototipagem inicial e diagnósticos de campo.
Finalização do Quadro de Desenho
O sucesso requer uma abordagem de nível de sistemas que aborda trocas arquitetônicas, integridade de energia, qualidade de sinal, limites térmicos e requisitos de fabricação desde o início do projeto. Ao planejar cuidadosamente a estratégia de interconexão, projetar rigorosamente a rede de fornecimento de energia, seguindo as regras de layout de alta velocidade estabelecidas e incorporando recursos térmicos e de segurança robustos, os engenheiros podem criar plataformas de computação heterogêneas poderosas, confiáveis e prontas para a produção.A estreita colaboração entre engenheiros de hardware, especialistas em layout e desenvolvedores de firmware ao longo do processo de projeto é o preditor mais confiável de um lançamento de produto bem sucedido.