Les produits électroniques réels deviennent progressivement plus intelligents, tant par la mise en œuvre d'une application embarquée que par des connexions retour à une plateforme ou application cloud. Les équipes de développement embarqué doivent travailler ensemble pour créer ces nouvelles générations de produits. Un domaine où l'ingénieur en conception de PCB, le développeur embarqué, et même l'ingénieur MCAD peuvent être retardés dans la finition d'un projet est dans la sélection des E/S. Cela se produit chaque fois que vous avez des connecteurs, des périphériques et un processeur hôte.
Ainsi, pour aider à simplifier les choses pour les deux parties, je souhaite partager certaines de mes expériences de travail avec les développeurs embarqués pour optimiser la sélection des E/S et le processus global pour compléter la conception du PCB. Avec un peu de collaboration en amont, vous pouvez rendre le routage du PCB et le développement embarqué plus faciles en aval.
Je suis d'avis que chaque membre de l'équipe de développement devrait comprendre ce dont les autres membres de l'équipe ont besoin pour réussir. Il s'agit également d'une utilisation efficace des ressources, d'éviter les bourbiers d'ingénierie qui prennent des jours à résoudre, et d'arriver rapidement sur le marché.
|
|
|
|
|
|
|
|
|
|
|
|
J'ai mis une astérisque (*) sur les entrées de la liste des broches parce que le processus exact d'attribution des E/S dépend du composant spécifique utilisé pour exécuter l'application embarquée. S'agit-il d'un MCU simple, où les E/S disponibles sont fixées à des emplacements spécifiques, ou est-ce un FPGA qui peut avoir un agencement de broches personnalisé dans certaines banques ? L'autre aspect concerne les connecteurs : le brochage est-il standardisé, est-il défini par une autre carte dans l'assemblage, ou peut-il être personnalisé ?
C'est là que nous pouvons commencer à voir le défi impliqué dans un designer de PCB et un développeur embarqué travaillant ensemble sur la sélection des E/S. Comment les deux parties peuvent-elles se réunir et définir les brochages, la sélection des E/S et, en fin de compte, la disposition du PCB ?
À mon avis, cela fonctionne mieux lorsque le brochage sur le processeur principal est flexible, c'est-à-dire que l'application sera instanciée dans un FPGA. Dans ce cas, les E/S peuvent être définies par le développeur dans la logique du dispositif, et le résultat est que le concepteur de PCB devra travailler avec les affectations de broches qui lui sont données.
Le problème est le suivant : si les affectations des broches sont données sur une base individuelle, vous pourriez ne pas obtenir un routage optimal, résultant en un enchevêtrement de connexions se croisant les unes les autres pour atteindre les composants. Au lieu de cela, si le développeur embarqué donne simplement des affectations de banques au concepteur de PCB, alors le concepteur de PCB peut choisir des broches au sein d'une banque pour réaliser des connexions optimales.
En attribuant des banques sur un FPGA au lieu d'un brochage spécifique, le concepteur peut utiliser un outil comme le pin swapping pour déplacer les affectations d'E/S au sein d'une banque de broches. Si le pin swapping est souhaitable, alors un symbole schématique personnalisé pourrait être nécessaire afin de séparer correctement les broches dans leurs banques respectives. L'utilisation d'un symbole personnalisé permet un regroupement beaucoup plus rapide des broches pour les opérations de pin swapping lors du routage du PCB.
À mon avis, cela fonctionne mieux lorsque le brochage du processeur principal est fixe, c'est-à-dire un MCU et ses périphériques. Dans un MCU, les emplacements des E/S sont essentiellement fixes. Vous pouvez avoir une certaine flexibilité quant à la manière dont chaque E/S est utilisée, par exemple lors de l'utilisation d'un groupe de GPIOs. Cependant, les affectations de broches ou de fonctions pour les interfaces standard peuvent être fixes (par exemple, les broches SPI, ADC, PWM, I2C, etc.).
Dans ce cas, je pense qu'il est préférable que le concepteur de PCB sélectionne les broches qu'il utilisera pour correspondre avec différents composants. Le concepteur de PCB doit choisir dans un brochage fixe, donc il devra travailler sur la manière de placer les composants de telle sorte que la disposition du PCB soit résolvable. Une fois placés et routés, c'est le travail du concepteur de PCB d'indiquer au développeur embarqué quelles broches sont utilisées pour certaines fonctions.
Lorsque le brochage de votre connecteur est standardisé, c'est alors un peu un joker. Je dis cela parce que « standardisé » peut signifier deux choses différentes :
Si aucune de ces situations n'est applicable, alors votre brochage est personnalisable. Dans les projets où j'ai travaillé avec d'autres cartes dans un assemblage plus large, nous avions souvent la liberté de définir un brochage, généralement parce que nous construisions les deux cartes. Dans tous les cas, les deux parties doivent travailler ensemble pour déterminer un brochage « meilleur » de manière objective pour le connecteur et comment cela s'aligne avec le processeur.
Les équipes qui ont besoin de collaborer sur des produits complexes peuvent accéder à un ensemble complet de fonctionnalités de conception collaborative en utilisant Altium Designer®. Tous les intervenants impliqués dans la conception de produits peuvent accéder à un ensemble complet d'outils pour la conception de PCB qui peuvent soutenir les tâches de développement embarqué, ainsi que les fonctionnalités de conception de câbles et de harnais. Lorsque vous avez terminé votre conception et que vous souhaitez libérer les fichiers à votre fabricant, la plateforme Altium 365™ facilite la collaboration et le partage de vos projets.
Nous n'avons fait qu'effleurer la surface de ce qui est possible avec Altium Designer sur Altium 365. Commencez votre essai gratuit d'Altium Designer + Altium 365 dès aujourd'hui.