Bienvenue dans le troisième volet du projet de module informatique open-source Pi.MX8 ! Dans cette série d'articles, nous explorons la conception et les tests d'un système sur module basé sur un processeur i.MX8M plus de NXP.
Dans la dernière mise à jour, nous avons examiné la structure schématique du module et commencé à préparer le placement préliminaire des composants. Maintenant que nous avons placé les composants, nous avons une bonne idée de la densité de la conception et des exigences que cela impose au stackup des couches. Aujourd'hui, nous allons sélectionner un empilement de couches approprié et commencer à tracer les premières pistes.
Basé sur le placement des composants et quelques facteurs stratégiques, nous pouvons décider quelle technologie de PCB et quel stackup de couches nous aimerions utiliser pour la conception à venir. Examinons d'abord la densité des composants :
Placement des composants côté supérieur
Le placement préliminaire des composants révèle une densité de conception globalement modérée. Les composants actifs sont tous situés sur le côté supérieur de la carte, tandis que le côté inférieur contient principalement des condensateurs de découplage et d'autres circuits passifs. Le côté inférieur de la carte est donc relativement vide et nous laisse beaucoup d'espace pour le routage. L'objectif, cependant, serait d'allouer cet espace pour des fonctionnalités supplémentaires qui seront implémentées alors que le module Pi.MX8 est destiné à servir de plateforme pouvant être mise à jour et étendue sur des demandes spécifiques.
Placement des composants côté inférieur
En examinant le placement des composants à proximité des connecteurs de carte à carte, nous remarquons que de nombreux composants sont placés directement au-dessus des connecteurs sur le côté opposé de la carte. Si nous décidons d'utiliser uniquement des VIAs standards qui relient toute la pile de couches de la couche supérieure à la couche inférieure, nous ne pouvons pas placer de VIAs dans ces zones. Afin de dégager tous les broches des connecteurs de carte à carte et de router efficacement les circuits actifs situés du côté opposé des connecteurs, nous devons concevoir une méthode qui va au-delà de la simple utilisation de VIAs traversants. Pour cela, nous devrons utiliser un empilement HDI.
Utiliser un empilement HDI facilite l'expansion de la fonctionnalité du module à un stade ultérieur, car nous n'avons pas nécessairement à utiliser des VIAs traversants pour connecter des composants supplémentaires, et donc nous n'avons pas à interférer autant avec le routage et le placement des composants établis.
Pour le module Pi.MX8, nous utiliserons un empilement de couches 2+N+2. C'est un empilement de type III tel que défini dans les normes IPC-2226 et est l'un des empilements HDI les plus couramment utilisés.
Ce type d'empilement utilise deux étapes de stratification séquentielle dans le processus de fabrication afin de permettre aux micro-VIAs de connecter les trois couches les plus externes. Un VIA enterré est utilisé pour connecter l'empilement central qui ne fait pas partie du processus de fabrication séquentiel. Les pré-imprégnés et l'épaisseur des pré-imprégnés utilisés dans ce type d'empilement dépendent de la capacité de fabrication du fournisseur de PCB. L'épaisseur choisie des pré-imprégnés stratifiés séquentiellement est limitée par le rapport d'aspect du micro VIA. Contrairement aux VIAs percés mécaniquement, les micro VIAs sont créés en perçant des trous dans les pré-imprégnés à l'aide de courtes impulsions laser. Typiquement, des diamètres de VIA entre 0,08mm et 0,15mm sont utilisés. Un rapport d'aspect adapté à la fabrication en masse se situe généralement dans la plage de 0,6:1 – 0,8:1.
Un pré-imprégné mince garantira que l'exigence du rapport d'aspect n'est pas violée tout en réduisant la largeur de piste pour une trace contrôlée par impédance donnée. Pour un simple microstrip sur la couche supérieure ou inférieure avec seulement un plan de référence, cela n'est pas un problème. Nous devons cependant faire attention avec les lignes striées intégrées sous le premier plan de masse, car de courtes distances jusqu'au plan de référence au-dessus et en dessous des lignes striées pourraient résulter en des traces très étroites pour certaines interfaces contrôlées par impédance.
L'empilement final pour la carte Pi.MX8 a été créé en coopération avec le fabricant de PCB et se présente comme suit :
Empilement de couches Pi.MX8
Globalement, le module sera construit sur un empilement de 10 couches. Les couches supérieure, L2, L7 et inférieure seront utilisées comme couches de signal. Les couches L1, L3, L6 et L8 seront utilisées comme plans de masse. Les deux couches restantes L4 et L5 agiront comme plans d'alimentation. Les plans d'alimentation sont construits en utilisant une fine feuille de seulement 18μm d'épaisseur. Nous devons surveiller la chute de tension IR pour ces couches. Les plans d'alimentation sont étroitement couplés aux plans de masse voisins avec seulement un prépreg de 75μm séparant ces couches. Cela résulte en une capacité de plan supplémentaire qui peut être bénéfique pour fournir une impédance de réseau de distribution d'énergie (PDN) faible à haute fréquence. Nous vérifierons le comportement du PDN par simulation une fois que nous aurons terminé le layout.
Un autre aspect important à noter à propos de cet empilement est que nous utiliserons uniquement des microvias décalés au lieu de microvias empilés. Cela signifie que les microvias ne peuvent pas être placés directement l'un sur l'autre et doivent au contraire être décalés avec un pas d'au moins 0,35mm de centre à centre. Utiliser des microvias décalés facilite l'alignement des couches séquentielles ce qui diminue le coût de fabrication chez certains fournisseurs de PCB. Cette approche est également recommandée pour les empilements HDI utilisant plus de deux programmes de microvias pour augmenter la fiabilité des microvias. L'inconvénient de l'utilisation de microvias décalés est l'espace supplémentaire nécessaire pour répondre à l'exigence de décalage minimum. Les vides créés dans le plan de masse doivent également être pris en compte lorsqu'il s'agit de gérer le chemin de retour pour les traces voisines.
Maintenant que l'empilement des couches a été défini, l'étape suivante consiste à sortir les signaux des composants individuels. Dans cette étape, nous allons placer tous les VIAs nécessaires pour le routage des signaux et de l'alimentation sur chaque composant. Nous faisons cette étape maintenant car nous aimerions idéalement avoir tous les VIAs en place avant de commencer à connecter les composants. Même dans un empilement HDI, les VIAs prennent encore beaucoup de place. Cela est particulièrement vrai pour les VIAs qui font partie du réseau de distribution d'énergie car ils se connectent généralement à travers tout l'empilement. Placer des VIAs pendant l'étape de routage peut nécessiter la suppression de traces précédemment routées pour faire de la place pour les VIAs.
Routage de sortie sur la couche supérieure du module
Dans l'image ci-dessus, nous pouvons voir que presque toutes les broches des composants sont sorties en utilisant des VIAs ou sont laissées non connectées. Les pads non connectés seront routés sur la couche supérieure ou se verront attribuer un espace supplémentaire pour ajouter le routage de sortie plus tard. Dans ce dernier cas, il est important de se rappeler de ne placer aucune trace dans ces zones.
Pour certains composants, il sera nécessaire de remplacer localement les règles de conception prédéfinies concernant la largeur et l'espacement des pistes pour rendre possible le routage de sortie. Un exemple est le SoC i.MX8. Le petit pas des broches de seulement 0,5 mm nécessite une largeur de piste de 0,08 mm et un espacement piste à pad de 0,085 mm. En dehors de ces zones de sortie, nous aimerions continuer à travailler avec des règles de largeur et d'espacement des pistes de 100um. Il existe plusieurs façons de mettre en œuvre ce comportement dans les règles de conception. Une manière est d'utiliser des salles de conception supplémentaires qui se voient attribuer un ensemble dédié de règles. Cela permet un flux de travail de routage fluide car la largeur de la piste est automatiquement ajustée une fois que le curseur franchit la frontière de la salle de conception.
Exigences de largeur et d'espacement des pistes pour le routage de sortie du i.MX8
En utilisant des salles de conception, la largeur de la piste est automatiquement ajustée pendant le routage interactif :
Dans notre prochaine mise à jour, nous explorerons comment les règles de conception générales sont établies selon le profil d'impédance du stack de couches, ainsi que la manière d'aborder le routage sur les couches internes. Restez à l'écoute pour découvrir comment nous abordons l'agencement de la mémoire et naviguons à travers les difficultés introduites par le stackup HDI choisi !