- Microcontrôleur et microprocesseur
- Facteurs à prendre en compte lors de la sélection d'un MPU ou d'un MCU
- 1. Puissance de traitement
- 2. Interfaces
- 3. Mémoire
- 4. Puissance
- Conclusion
Le cerveau d'un appareil embarqué, qui est l'unité de traitement, est un déterminant clé du succès ou de l'échec de l'appareil dans l'accomplissement de la ou des tâches pour lesquelles il est conçu. L'unité de traitement est responsable de chaque processus allant de l'entrée au système à la sortie finale, donc la sélection de la bonne plate-forme pour le cerveau devient très importante lors de la conception de l'appareil, car tout dépendra de la précision de cette décision.
Microcontrôleur et microprocesseur
Les composants de traitement utilisés pour les périphériques embarqués peuvent être divisés en deux grandes catégories; Microcontrôleurs et microprocesseurs.
Les microcontrôleurs sont de petits périphériques informatiques sur une seule puce qui contiennent un ou plusieurs cœurs de traitement, avec des périphériques de mémoire intégrés aux côtés de ports d'entrée et de sortie (E / S) spéciaux et polyvalents programmables. Ils sont utilisés en particulier dans les applications où seules des tâches répétitives spécifiques doivent être effectuées. Nous avons déjà discuté de la sélection du bon microcontrôleur pour vos projets embarqués.
Les microprocesseurs, quant à eux, sont des dispositifs informatiques à usage général qui incorporent toutes les fonctions de l'unité centrale de traitement sur une puce mais n'incluent pas de périphériques comme la mémoire et les broches d'entrée et de sortie comme le microcontrôleur.
Bien que les fabricants changent maintenant beaucoup de choses qui brouillent la frontière entre les microcontrôleurs et les microprocesseurs, comme l'utilisation de la mémoire sur les puces pour les microprocesseurs et la capacité des microcontrôleurs à se connecter à une mémoire externe, des différences clés subsistent entre ces composants et le concepteur va besoin de choisir le meilleur entre eux pour un projet particulier.
En savoir plus sur la différence entre le microcontrôleur et le microprocesseur.
Facteurs à prendre en compte lors de la sélection d'un MPU ou d'un MCU
Avant de prendre toute décision sur la direction à prendre en ce qui concerne le dispositif de traitement à utiliser pour la conception d'un produit embarqué, il est important de développer les spécifications de conception. L'élaboration des spécifications de conception fournit une voie pour la préconception de l'appareil qui aide à identifier dans les détails, le problème à résoudre, comment il doit être résolu, met en évidence les composants à utiliser et bien plus encore. Cela aide le concepteur à prendre des décisions générales éclairées sur le projet et aide à déterminer dans quelle direction se déplacer l'unité de traitement.
Certains des facteurs de la spécification de conception qui doivent être pris en compte avant de choisir entre un microcontrôleur et un microprocesseur sont décrits ci-dessous.
1. Puissance de traitement
La puissance de traitement est l'un des éléments principaux (sinon le principal) à considérer lors du choix entre un microcontrôleur et un microprocesseur. C'est l'un des principaux facteurs que l'inclinaison utilise pour les microprocesseurs. Il est mesuré en DMIPS (Dhrystone Million of Instructions Per Seconds) et représente le nombre d'instructions qu'un microcontrôleur ou microprocesseur peut traiter en une seconde. Il s'agit essentiellement d'une indication de la vitesse à laquelle un appareil peut accomplir une tâche qui lui est assignée.
Bien que la détermination de la puissance de calcul exacte requise par votre conception puisse être une tâche très difficile, une estimation éclairée peut être faite, en examinant la ou les tâches, le périphérique est créé pour effectuer et quelles pourraient être les exigences de calcul de ces tâches. Par exemple, le développement d'un appareil qui nécessite l'utilisation d'un système d'exploitation complet soit Linux embarqué, Windows CE ou tout autre système d'exploitation nécessiterait une puissance de traitement aussi élevée que 500 DMIPS, sonnant comme un processeur? Oui. Pour ajouter à cela, l'exécution d'un système d'exploitation sur un appareil nécessitera une unité de gestion de la mémoire (MMU) qui augmentera la puissance de traitement requise. Les applications d'appareils qui impliquent beaucoup d'arithmétique nécessitent également un DMIPS très élevéet plus les calculs mathématiques / numériques que le dispositif doit effectuer, plus les exigences de conception penchent vers l'utilisation d'un microprocesseur en raison de la puissance de traitement requise.
Une autre implication principale de la puissance de traitement qui affecte le choix entre les microprocesseurs et les microcontrôleurs est la complexité ou la simplicité de choses comme les interfaces utilisateur. Il est souhaitable de nos jours d'avoir des interfaces graphiques colorées et interactives, même pour les applications les plus élémentaires. La plupart des bibliothèques utilisées dans la création d'interfaces utilisateur comme QT nécessitent une puissance de traitement allant jusqu'à 80 à 100 DMIPS et plus il y a d'animations, d'images et d'autres contenus multimédias à afficher, plus la puissance de traitement requise est élevée. Cependant, les interfaces utilisateur plus simples sur les écrans basse résolution nécessitent peu de puissance de traitement et peuvent être alimentées à l'aide de microcontrôleurs, car un certain nombre d'entre eux de nos jours sont livrés avec des interfaces intégrées pour interagir avec différents écrans.
Outre certaines des fonctions de base mentionnées ci-dessus, il est important de réserver une certaine puissance de traitement pour les communications et d'autres périphériques. Bien que la plupart des exemples donnés ci-dessus tendent à prendre en charge l'utilisation de microprocesseurs, ils sont généralement plus chers que les microcontrôleurs et seront excessifs lorsqu'ils sont utilisés dans certaines solutions, par exemple l'utilisation d'un microprocesseur 500 DMIPS pour automatiser une ampoule fera le coût global. du produit supérieur à la normale et pourrait finalement conduire à sa défaillance sur le marché.
2. Interfaces
L'interface à utiliser pour connecter différents éléments du produit est l'un des facteurs à considérer avant de choisir entre un microcontrôleur et un microprocesseur. Il est important de s'assurer que l'unité de traitement à utiliser possède les interfaces requises par les autres composants.
Du point de vue de la connectivité et des communications, par exemple, la plupart des microcontrôleurs et microprocesseurs possèdent les interfaces nécessaires pour se connecter aux appareils de communication, mais lorsque des périphériques de communication haute vitesse comme l'interface USB 3.0 ultra-rapide, plusieurs ports Ethernet 10/100 ou un port Gigabit Ethernet sont nécessaires, des choses inclinaison dans la direction du microprocesseur car l'interface requise pour les prendre en charge ne se trouve généralement que sur eux car ils sont plus capables de gérer et de traiter les grandes quantités de données et la vitesse à laquelle ces données sont transférées.
L'impact des protocoles utilisés pour ces interfaces sur la quantité de mémoire requise pour le micrologiciel doit être confirmé car ils ont tendance à augmenter les besoins en mémoire. En règle générale, une conception basée sur un microprocesseur doit être adoptée pour les applications qui nécessitent une connectivité à haut débit avec une grande quantité de données échangées, en particulier lorsque le système implique l'utilisation d'un système d'exploitation.
3. Mémoire
Ces deux dispositifs de traitement de données gèrent différemment la mémoire et le stockage des données. Les microcontrôleurs, par exemple, sont livrés avec des périphériques de mémoire fixes intégrés tandis que les microprocesseurs sont livrés avec des interfaces auxquelles les périphériques de mémoire peuvent être connectés. Deux implications majeures de ceci sont;
Coût
Le microcontrôleur devient une solution moins onéreuse, car il ne nécessite pas l'utilisation d'un dispositif mémoire supplémentaire tandis que le microprocesseur devient une solution coûteuse à adopter en raison de ces exigences supplémentaires.
Mémoire limitée
La mémoire fixe sur le microcontrôleur limite la quantité de données qui peuvent y être stockées. Cette situation ne s'applique pas aux processeurs car ils sont généralement connectés à des périphériques de mémoire externes. Un bon exemple de quand cette limitation peut être un problème est lors du développement du micrologiciel pour le périphérique. L'ajout de kilo-octets supplémentaires à la taille du code peut nécessiter une modification du microcontrôleur à utiliser, mais si la conception était basée sur un processeur, nous n'aurons qu'à changer le périphérique de mémoire. Ainsi, les microprocesseurs offrent plus de flexibilité avec la mémoire.
Il y a plusieurs autres facteurs basés sur la mémoire à prendre en compte, l'un d'eux est le temps de démarrage (boot). Les microprocesseurs, par exemple, stockent le micrologiciel sur une mémoire externe (généralement une mémoire NAND externe ou une mémoire flash série) et au démarrage, le micrologiciel est chargé dans la DRAM du processeur. Bien que cela se déroule en quelques secondes, cela peut ne pas être idéal pour certaines applications. Le microcontrôleur de l'autre prend moins de temps.
Pour des considérations générales de vitesse, le MCU gagne généralement en raison de sa capacité à traiter les applications les plus critiques en termes de temps en raison du cœur de processeur utilisé, du fait que la mémoire est intégrée et que le micrologiciel utilisé avec eux est toujours soit un RTOS ou du métal nu. C.
4. Puissance
Un dernier point à considérer est la consommation d'énergie. Alors que les microprocesseurs ont des modes de faible puissance, ces modes ne sont pas aussi nombreux que ceux disponibles sur un MCU typique et avec les composants externes requis par une conception basée sur un microprocesseur, il est légèrement plus complexe d'obtenir des modes de faible puissance. Outre les modes de faible puissance, la quantité réelle d'énergie consommée par un microcontrôleur est bien inférieure à ce que consomme un microprocesseur, car plus la capacité de traitement est grande, plus la quantité d'énergie nécessaire pour maintenir le processeur en marche.
Les microcontrôleurs ont donc tendance à trouver des applications où des unités de traitement à très faible puissance sont nécessaires, telles que des télécommandes, des appareils électroniques grand public et plusieurs appareils intelligents où la conception met l'accent sur la longévité de la batterie. Ils sont également utilisés lorsqu'un comportement hautement déterministe est nécessaire.
Les microprocesseurs, quant à eux, sont idéaux pour les applications industrielles et grand public qui nécessitent un système d'exploitation, sont intensifs en calcul et nécessitent une connectivité à haut débit ou une interface utilisateur avec de nombreuses informations multimédias.
Conclusion
Plusieurs autres facteurs existent et servent de déterminants pour choisir entre ces deux plates-formes et relèvent tous des performances, des capacités et du budget, mais la sélection globale devient plus facile lorsqu'une préconception de systèmes appropriée est en place et que les exigences sont clairement énoncées. Les microcontrôleurs sont principalement utilisés dans des solutions avec un budget de nomenclature très serré et avec des exigences d'alimentation strictes, tandis que les microprocesseurs sont utilisés dans des applications avec d'énormes exigences de calcul et de performances.