Les systèmes intégrés modernes exigent de plus en plus les capacités combinées d'un microcontrôleur (MCU) pour le contrôle déterministe et d'un réseau de portes programmables sur le terrain (FPGA) pour le traitement de données à grande vitesse et parallèle. La mise en œuvre des deux appareils sur une carte de circuit imprimé unique (PCB) offre des avantages importants en termes de performances, de taille et de coûts, mais elle nécessite des choix de conception judicieux et délibérés.

Architecte l'interface FPGA-MCU

La première étape du processus de conception consiste à déterminer comment les GGPP et les CUM communiqueront. Cette décision influe fortement sur les exigences en matière d'E/S, la complexité de la mise en page des BPC et le débit global du système.

Choix de la partitionnement et de l'interconnexion de la charge de travail

Les ingénieurs doivent décider quelles tâches appartiennent au MCU et qui appartiennent au FPGA. Le MCU s'occupe généralement de l'initialisation du système, de la gestion de l'interface utilisateur, des piles de protocole réseau et des lectures de capteur à faible bande passante. Le FPGA s'occupe des flux de données à grande vitesse, du traitement en temps réel des signaux et de l'émulation périphérique personnalisée.

Les normes communes d'interconnexion comprennent:

  • Interface périphérique série (SPI):[ Convient pour le contrôle et la configuration. Quad-SPI (QSPI) offre un débit plus élevé pour le transfert de données.
  • Flexible Statique Memory Controller (FSMC) / Flexible Memory Controller (FMC):[ Fournit une interface de bus parallèle, permettant au MCU d'accéder aux périphériques à mémoire FPGA ou SRAM partagé avec un débit élevé et une faible latence.
  • PCI Express (PCIe):[ Requis pour les applications à très haute bande, telles que la radio définie par logiciel ou l'acquisition de données à haute vitesse.
  • AXI Bus:[ Pour les systèmes étroitement couplés, surtout lorsqu'il s'agit d'un système sur puce (SoC) FPGA (par exemple, Xilinx Zynq). C'est l'option de performance la plus élevée, qui fonctionne à l'intérieur du paquet.

Le choix de l'interface correcte est un équilibre entre le nombre de broches, la consommation d'énergie et le taux de données. Un bus parallèle offre une vitesse élevée, mais consomme beaucoup de broches d'entrée/sortie et une puissance dynamique significative, tandis qu'un bus série comme SPI est plus simple mais intrinsèquement plus lent.

Sélection des appareils FPGA et MCU

Les appareils spécifiques choisis dicteront fortement la complexité du PCB. Les FPGA d'AMD (Xilinx) ou d'Intel (Altera) sont disponibles dans des paquets allant des BGA à points fins (balles de 0,5 mm) aux paquets à haute densité avec des milliers de balles pour les pièces haut de gamme. De même, les MCU de fournisseurs comme STMicroelectronics, NXP, ou Microchip offrent des niveaux variables de périphériques intégrés et des interfaces haute vitesse.

Conception du réseau de distribution d'électricité (PDN) pour les systèmes à signaux mixtes

Le réseau de distribution d'électricité est sans doute l'aspect le plus critique de la conception des PCB FPGA et MCU. Les FPGA ont des exigences de puissance exigeantes, y compris de multiples rails à basse tension avec des tolérances serrées (souvent moins de 3% d'ondulation) et des transitoires di/dt extrêmement élevés pendant le fonctionnement.

Topologies et séquençage des rails de tension

Un système typique peut nécessiter plusieurs rails de tension dédiés : 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) et MCU I/O (3.3V). L'utilisation d'un circuit intégré de gestion de la puissance (CMIC) dédié simplifie les exigences de séquençage complexe.

Découpling Architecture réseau

Le bruit de commutation simultané (SSN) de la logique interne de la FPGA peut provoquer des embranchements de tension massifs si ce n'est pas correctement découplé. Une stratégie de découplage à plusieurs niveaux est nécessaire pour maintenir une faible impédance dans le spectre de fréquences.

  • Capacité de la botte:[ Les condensateurs de tantale ou de polymères (47uF à 330uF) assurent un stockage d'énergie à basse fréquence pour supporter des transitoires de longue durée.
  • Découplage de fréquence moyenne: Les MLCC (1uF à 10uF) en 0402 ou 0603 gèrent les fréquences moyennes. Les diélectriques X7R ou X5R sont de série.
  • Découplage haute fréquence: Très petite valeur Les MLCC (0.1uF à 0,01uF) avec haute fréquence auto-résonne (SRF) sont placés le plus près possible des goupilles de puissance FPGA et MCU, idéalement directement sur le côté arrière de la BGA via tableau.

Il est recommandé de réaliser une simulation d'impédance PDN à l'aide d'outils comme Cadence Sigrity ou Ansys SIwave pour vérifier la cible d'impédance (généralement <10mOhm) is met up to several hundred MHz. An overview of suitable solutions is available through Portail de gestion de puissance des appareils analogiques.

Sélection des composants d'alimentation électrique

Les régulateurs de tension sont un moyen d'équilibre entre l'efficacité, le bruit et la taille. Les alimentations en mode de commutation (SMPS) sont nécessaires pour que les rails de base du FPGA et du MCU maintiennent l'efficacité et réduisent la dissipation de chaleur. La fréquence de commutation devrait être faible pour maximiser l'efficacité ou élevée pour minimiser la taille des inducteurs. L'onduleur de sortie du SMPS doit être strictement dans la tolérance de la tension de base du FPGA. Les régulateurs de faible décharge (LDO) sont recommandés pour les alimentations analogiques sensibles au bruit, telles que les PLL et les transceivers, où leur efficacité inférieure est un compromis acceptable pour une puissance propre. Texas Instruments offre un guide de sélection complet pour les solutions de gestion de puissance des FPGA.

Stratégies de mise en page et d'intégrité des signaux à grande vitesse

Le maintien de l'intégrité du signal est essentiel pour un fonctionnement fiable, d'autant plus que les vitesses d'interface augmentent pour gérer les réseaux vidéo haute résolution ou gigabit. Les règles de cumul et de routage des PCB doivent être établies au début du cycle de conception.

Conception de la mise en place des piles de PCB

Pour une carte FPGA complexe, il est recommandé d'utiliser au moins 6 à 8 couches. Une pile bien conçue de 8 couches assure un contrôle robuste de l'isolation et de l'impédance.

  • Calque 1: Signal supérieur et sol (Microstrip)
  • Couche 2: Plancher terrestre
  • Couche 3: Couche de signal (Stripline)
  • Calque 4: Plan(s) d'alimentation
  • Couche 5: Plan au sol
  • Couche 6 : Couche de signalisation (Stripline)
  • Couche 7 : Plan au sol
  • Couche 8: Signal inférieur et sol (Microstrip)

Les plans au sol dédiés adjacents aux couches de signal assurent un chemin de retour court et à faible inductance. Les traces d'impédance contrôlées (50 Ohm mono-end, 90 Ohm différentiel pour USB, 100 Ohm pour Ethernet et LVDS) doivent être spécifiées au fabricant de BPC. La normalisation de la conception d'impédance contrôlée est régie par IPC-2141A.

Interfaces critiques de routage

DDR Interfaces mémoire: La correspondance de longueur est critique pour les données, l'adresse et les lignes de commande. Tous les signaux d'un groupe doivent rester dans un décalage serré (p. ex. +/- 10 picosecondes). La largeur des traces et l'espacement doivent être calculés pour atteindre l'impédance cible.

Liens de série haute vitesse (SERDES):[ Ces interfaces nécessitent des condensateurs de couplage AC. L'emplacement de ces condensateurs doit être proche de la broche d'émetteur. Les paires différentielles doivent être acheminées avec un espacement constant et une longueur hors tout, évitant les vias chaque fois que possible. Si des vias sont nécessaires, placer les vias de couture au sol à côté du signal vias fournit un chemin de retour ininterrompu et minimise la discontinuité de l'impédance.

Clock Signals: Les sources d'horloge devraient être placées physiquement près de la FPGA. La trace d'horloge devrait être acheminée sur une couche extérieure avec un plan de sol solide directement en dessous. Une résistance de terminaison de série placée à la source peut empêcher les réflexions et réduire considérablement les jitters.

Choix du matériau PCB

La fréquence de fonctionnement des interfaces dicte le choix des matériaux PCB. La norme FR-4 est adaptée aux vitesses jusqu'à environ 1 GHz. Pour les SERDES à grande vitesse fonctionnant à 5 Gbps et plus, ou pour les interfaces RF, des matériaux à faible perte tels que Rogers 4003C ou Isola FR408 sont nécessaires. Ces matériaux ont un facteur de dissipation (Df), qui réduit l'atténuation du signal. Ils offrent également une tolérance plus stricte sur la Constant Diélectrique (Dk), ce qui permet un contrôle d'impédance plus cohérent dans le lot de production.

Contre-mesures de l'IME et de l'EMC

Pour passer les essais d'émissions de FCC ou de CE, la conception de la carte doit intégrer des contre-mesures EMC dès le départ. Les signaux à grande vitesse doivent être acheminés sur les couches internes (stripline) afin de bénéficier du blindage inhérent des plans de puissance et de sol. Les connecteurs I/O doivent inclure le filtrage, comme les étranglements à modes communs pour les paires différentielles et les billes de ferrite pour les lignes de puissance.

Gestion thermique pour les modules de calcul haute densité

La densité de puissance des FPGA modernes signifie que la gestion thermique ne peut être une post-considération. Un FPGA 10W sur une petite carte intégrée peut atteindre des températures de jonction supérieures à 100°C sans refroidissement adéquat, entraînant une dégradation des performances ou une défaillance permanente.

Conception du sentier thermique

Le principal chemin thermique d'un paquet BGA est par les boules de soudure et dans le PCB lui-même. Les vias thermiques placés directement sous le réseau de coussinets FPGA conduisent la chaleur aux plans de sol internes, qui agissent comme des épandeurs de chaleur de grande surface. Une grille de 0,3mm vias avec un minimum de 1 oz de cuivre est une pratique courante. Pour des niveaux de puissance plus élevés, un évier de chaleur dédié fixé au dessus du paquet à l'aide d'un matériau d'interface thermique (TIM) est nécessaire.

Flux d'air et intégration du système

Si le système final comprend un ventilateur pour le refroidissement actif, le cheminement de l'air doit être soigneusement considéré. La simulation MCU et d'autres composants sensibles à la chaleur, tels que les régulateurs de tension et les oscillateurs de précision, ne doivent pas être placés directement dans le parcours d'échappement à chaud du dissipateur de chaleur FPGA. La simulation de la dynamique des fluides calculateurs (CFD) à l'aide d'outils tels que FloTHERM ou Ansys Icepak est recommandée pour modéliser avec précision le comportement thermique de l'ensemble du panneau et de l'enceinte peuplés.

Sécurité et fiabilité du système

Dans de nombreuses applications industrielles et automobiles, le firmware de configuration Bitstream et MCU doit être protégé contre tout accès non autorisé, copie ou manipulation.

Cryptage sécurisé des boots et des bitstreams

La clé de décryptage est stockée dans le SRAM avec piles ou programmée dans des eFuses programmables à une seule fois au sein du FPGA. Le MCU peut orchestrer un processus de démarrage sécurisé où il authentifie d'abord son propre firmware, puis authentifie et configure le FPGA. Les périphériques de mémoire externe stockant les données de configuration doivent être dans un état connu et validé pour empêcher les attaques de retour.

Surveillance des chiens de garde et des tensions

Un minuteur de veille matériel, interne au MCU ou en tant que composant externe dédié, est essentiel pour la fiabilité du système. Le FPGA peut conduire un signal « battement de cœur » ou « actif » au MCU pour indiquer qu'il est configuré et fonctionne correctement. Si le FPGA ou le MCU ne parvient pas à assurer le service du chien de garde, le système doit effectuer un arrêt contrôlé et redémarrer.

Conception pour la fabrication et la validation

La conception pour la fabrication (DFM) et la testabilité (DFT) garantissent que la carte complexe peut être montée et validée de manière fiable dans la production.

DFM pour BGA haute densité

Les FPGA sont souvent livrés en paquets BGA à point fin (à 0.8mm ou à 0.5mm de tangage). Les traces d'acheminement entre les plaquettes d'un BGA de 0,5mm sont difficiles et nécessitent des largeurs de ligne très fines et un espacement (3 mil ou moins). Les micro-vias sont souvent nécessaires pour briser les rangées intérieures de la BGA. La conception du masque à souder et l'utilisation de la technologie via-in-pad (VIP), suivie par la planification, peuvent simplifier le ventilateur.

Stratégies d'essai pour les conseils de sens

La détection physique des signaux BGA pendant les essais de production est donc peu pratique. La détection des limites JTAG (IEEE 1149.1) est essentielle pour tester l'intégrité des joints de soudure et les interconnexions au niveau des panneaux. La chaîne JTAG doit être incluse dans la conception dès le début. Elle permet de tester automatiquement les connexions entre le FPGA et le MCU, ainsi que les connexions à d'autres appareils compatibles avec JTAG, tels que les PHY Ethernet et les composants de mémoire.

Cadre de conception de clôture

La mise en œuvre d'un système intégré intégrant un FPGA et un MCU sur un seul PCB est une tâche d'ingénierie complexe mais enrichissante. Le succès exige une approche au niveau des systèmes qui tient compte des compromis architecturaux, de l'intégrité de la puissance, de la qualité des signaux, des limites thermiques et des exigences de fabrication dès le début du projet. En planifiant soigneusement la stratégie d'interconnexion, en concevant rigoureusement le réseau de distribution d'électricité, en suivant les règles établies de mise en page à grande vitesse et en intégrant des caractéristiques thermiques et de sécurité robustes, les ingénieurs peuvent créer des plateformes informatiques puissantes, fiables et prêtes à produire.