PCIe pour les pirates : notre carte M.2 est terminée
MaisonMaison > Nouvelles > PCIe pour les pirates : notre carte M.2 est terminée

PCIe pour les pirates : notre carte M.2 est terminée

Oct 21, 2023

Nous avons commencé à concevoir une carte PCIe la semaine dernière, un adaptateur M.2 E-key vers E-key, qui ajoute un lien supplémentaire à l'emplacement E-key qu'elle transporte – utile pour utiliser pleinement quelques E-key rares mais sophistiqués. cartes-clés. À présent, le schéma est terminé, l’emplacement des composants a été déterminé et il ne nous reste plus qu’à acheminer les paires différentielles – cela devrait être simple, non ? Attachez votre ceinture.

PCIe a besoin de paires TX connectées à RX à une autre extrémité, comme UART – et ce n'est pas négociable. Les connecteurs utiliseront la dénomination côté hôte, et vice versa. Comme le montre le diagramme, nous connectons le TX du socket au RX de la puce et vice versa ; si jamais nous sommes confus, le schéma de l'ordinateur portable est là pour nous aider à clarifier les choses. Pour résumer, il suffit d'inverser les noms sur le lien arrivant au switch PCIe, puisque le switch PCIe fait office de périphérique sur la carte ; les deux liens du commutateur vont au socket E-key, et pour les besoins de ce socket, le commutateur PCIe agit en tant qu'hôte.

Lors du routage initial de cette carte, j'ai absolument oublié une autre chose importante pour le PCIe : les condensateurs série sur chaque paire de données, du côté hôte TX de la liaison. Nous avons besoin de trois paires de condensateurs ici – sur l'émission de la liaison montante du commutateur PCIe et de deux paires du côté TX du commutateur – encore une fois, la dénomination est côté hôte. Je ne m'en suis souvenu qu'après avoir fini de router toutes les paires de diff et, après quelques délibérations, j'ai décidé que c'était ma chance d'essayer les condensateurs 0201. Pour cela, j'ai pris les empreintes du merveilleux projet de [Christoph], intitulé « Effet de la phase de lune sur le tombstoning » – avec un tel nom, ces empreintes doivent être bonnes.

Nous avons déjà parlé des calculs de paires différentielles dans l'un des articles PCIe, et il y avait également une vidéo de démonstration ! Cela dit, répétons les calculs sur celui-ci – je vais montrer comment passer des « informations sur le site Web du fabricant de PCB » aux « paires de différences de largeur et de dégagement appropriées », avec quelques raccourcis amusants. Notre configuration comporte, une fois de plus, des signaux sur les couches externes, référencés à la couche de sol juste en dessous d'elles. Malheureusement, je ne comprends pas encore comment calculer l'impédance différentielle pour les couches de signaux prises en sandwich entre deux plans de masse, ce qui veut dire que si des commentateurs sont prêts à partager ces connaissances, j'apprécierais énormément votre contribution ! Pour l’instant, je ne vois pas qu’un tel arrangement présenterait un avantage tangible, de toute façon.

Cette fois, j'utilise un empilement à 4 couches de 0,8 mm, sinon la carte ne rentrera pas dans un socket M.2. Selon les règles de conception, je peux descendre à des traces et des espacements de 3,5 mil (0,09 mm), par opposition aux traces habituelles de 6 mil (0,16 mm) auxquelles je suis habitué lorsque je réalise des cartes génériques à 2 couches. Au départ, je choisis ici la variante d'empilement 7628 – la principale différence entre les empilements ici est l'épaisseur du préimprégné et la constante diélectrique, qui ont un impact sur l'épaisseur et l'espacement minimum possibles des paires de différences.

J'ai parcouru les paramètres sur la page de stackup JLCPCB et pris les paramètres de la page de commande - vous pouvez mettre ces paramètres dans la fenêtre "File => Board Setup", dans l'onglet "Net Classes". Après avoir remplacé les paramètres par défaut par ceux du processus à impédance contrôlée à 4 couches – dégagement, largeur de trace minimale, via la taille, etc. – nous obtenons de très jolis paramètres auxquels nous pouvons descendre s'il y a jamais un endroit restreint, et une capacité pour effectuer un placement de composants raisonnablement dense.

Visons aujourd’hui une impédance différentielle de 85 ohms – un excellent objectif partout où vous pouvez vous le permettre. Encore une fois, des traces sur le dessus, un plan de masse ininterrompu juste en dessous, sur toute la longueur des paires. Pour l'empilement « 7628 », cela signifie qu'il y a 0,21 mm de matériau avec 4,6 Er entre les paires et la masse – entrez ces deux valeurs dans la calculatrice, laissez l'épaisseur du cuivre à 35 um (1 once de cuivre), et nous pouvons jouer avec l'espace de trace. et des valeurs de largeur, jusqu'à notre limite de 0,09 mm – ce qui nous amène à une option de largeur de 0,225 mm / d'espace de 0,09 mm. Cependant, ce n’est pas si génial en termes d’espace.

Cependant, vous n’êtes pas obligé de vous en tenir au stackup par défaut ! Après peu de réflexion, je suis passé au stackup « 3313 » – avec 4,05 Er et un préimprégné de 0,1 mm d’épaisseur entre les couches supérieure et intermédiaire. Cela semble être un peu plus cher, mais cela semble un peu plus facile à acheminer dans le petit espace dont je dispose. Cela m'a conduit à des paires 0,135 mm/0,09 mm, tout en gardant la même impédance différentielle de 85 ohms. Maintenant, tout ce que j'ai à faire est d'entrer ces paramètres dans le tableau « Classes nettes », et chaque fois que j'appuie sur « 6 », je commencerai immédiatement à dessiner une paire différentielle d'impédance de 85 ohms.