Ordinateurs monocarte x86

Publié par

Pendant des années, les ordinateurs monocarte ont été étroitement assimilés à des cartes-mères. Ils effectuaient des tâches similaires et s'efforçaient tous deux d'atteindre des vitesses supérieures, des graphismes plus performants et une meilleure mémoire. L'arrivée des SBC pour amateurs, comme le Raspberry Pi 3, qui effectuent des tâches basiques de manière acceptable et requièrent un investissement financier bien moins conséquent, a marqué un tournant pour les ordinateurs monocarte. Certains, comme le Pi et le BeagleBone, cherchent à viser un large public et à proposer un prix raisonnable. D'autres, comme le NVIDIA Jetson et l'Intel Joule 570x, repoussent toujours les limites de fonctionnalités des SBC.

Principes de base de l'architecture

C'est un duel vieux comme le monde : RISC ou CISC. Les utilisateurs ont tendance à faire leur choix selon leurs expériences avec les ordinateurs de bureau et les téléphones, ou d'autres interactions de haut niveau avec des appareils ancrés dans ces architectures, mais le marché des SBC a offert un aperçu plus précis des différences et avantages. 

Le processeur d'un appareil, qu'il soit RISC ou CISC, utilise des « instructions », un code spécial permettant de contrôler le matériel environnant. Ces instructions constituent le code d'assemblage, qui est l'une des couches d'abstraction finales du code binaire réel et est extrêmement granulaire, bien qu'il puisse être plus ou moins lu par un humain. 

0117 x86 SBC img1

Figure 1. Code d'assemblage A64, semblable à celui qui s'exécuterait sur le Raspberry Pi. 

RISC signifie « Reduced Instruction Set Computing », ordinateur à jeu d'instructions réduit, tandis que CISC signifie « Complex Instruction Set Computing », ordinateur à jeu d'instructions complexe. Les instructions RISC, comme celles présentées ci-dessus, sont assez simples pour être considérées comme exécutables en un seul cycle d'horloge. Elles comprennent des instructions de base telles qu'ADD, SUB (soustraction), MOV (déplacement) et BIC (bitwise bit clear). Le code RISC paraît plus long, car chaque opération doit être effectuée en plusieurs étapes simples, mais il offre une représentation un-un plus précise de la façon dont le processeur interprète le code. Le CISC permet d'effectuer des opérations complexes telles qu'IMUL (multiplication signée) et MOVS (déplacement des données de chaîne à chaîne) qui ne peuvent pas être accomplies en un seul cycle d'horloge et requièrent plusieurs lignes de code dans l'assemblage RISC. 

0117 x86 SBC img2

Ces deux architectures ont fait l'objet de livres entiers exposant des arguments détaillés. Dans notre contexte, les points à retenir sont que les programmes CISC sont plus courts, et requièrent donc moins de mémoire RAM, mais que les programmes RISC offrent des vitesses d'horloge supérieures, car les instructions plus complexes limitent la vitesse d'horloge maximale d'un processeur. Les premiers ordinateurs étaient presque entièrement conçus en CISC, mais lorsque le prix des mémoires RAM a diminué, le RISC est devenu l'architecture la plus courante. ARM utilise traditionnellement le RISC pour réaliser des économies de puissance potentielles. Les cœurs ARM sont donc généralement efficaces et sont souvent utilisés dans les conceptions intégrées ou mobiles. Intel est la plus grande entreprise utilisant toujours le CISC ; elle exploite des instructions complexes à son avantage dans des ordinateurs et serveurs haut de gamme qui n'ont pas besoin de préserver l'autonomie de la batterie ou de réduire la chaleur.

Implications pour les ordinateurs monocarte

Lorsque l'on souhaite acheter un ordinateur monocarte, il ne faut pas prendre en compte que ses préférences personnelles. Les processeurs intégrés (presque toujours RISC) dominent l'espace SBC pour amateurs en raison de leur efficacité et de leur vitesse. Le Dragonboard410c s'appuie sur le processeur Snapdragon410c de Qualcomm, que l'on retrouve dans de nombreux téléphones portables. 

Ces types de cartes révèlent les meilleures performances possibles du cœur, offrant ainsi la meilleure expérience de développement et d'expérimentation. Ces cartes peuvent exécuter Android comme un téléphone, mais utiliser un affichage 1080 HDMI et accepter un clavier/une souris USB, comme un ordinateur de bureau standard, permettant ainsi à un développeur de ne plus basculer entre des environnements virtuels. Malheureusement, ces cartes n'atténuent pas forcément tous les inconvénients d'un processeur intégré. Les processeurs mobiles tels que le Snapdragon 410 utilisent 1.8V GPIO, qui peut être difficile à intégrer avec des capteurs ou d'autres types de matériel. Les développeurs peuvent également rencontrer des limitations inhérentes liées à la mémoire ou à la vitesse dans le cœur, s'ils essaient de l'utiliser en tant qu'ordinateur de bureau.

Une carte telle que l'Intel Joule 570x, cependant, est conçue de manière plus descendante qu'ascendante. Intel reste un grand nom des cartes-mères et de l'informatique hautes performances ; son défi consiste donc à développer tout un cœur CISC de manière descendante pour pouvoir l'utiliser dans un SBC. Les processeurs tels que l'Intel Pentium peuvent consommer plus de 20 watts lorsqu'ils traitent des charges élevées, ce qui requiert une gestion thermique bien plus importante que l'on ne pourrait le croire avec un ordinateur monocarte. 

Le processeur Atom que l'on retrouve sur les nouveaux SBC Joule est donc le résultat des efforts menés pour intégrer un maximum de puissance de traitement possible dans un cœur adapté aux applications de consommation d'alimentation inférieures. La gamme Atom utilise l'architecture x86, qui est techniquement une architecture CISC qui s'inspire du RISC sous certains aspects, et est en fait plutôt hybride que strictement CISC. Elle peut incontestablement gérer des instructions complexes, mais elle utilise une opération secondaire pour réguler ces instructions, afin de réduire l'impact des instructions longues sur le débit. 

Tester le même projet sur un cœur développé de manière ascendante ou descendante peut être très difficile. Lorsque vous avez besoin d'une puissance de calcul minimale et d'un petit facteur forme, le Raspberry Pi est un excellent point de départ et les cartes plus chères seraient sans doute un choix exagéré. Quant aux projets tels que des fermes de serveurs, des centres multimédia ou même des équipements de jeu, il peut être très difficile de les mener à bien sur des cartes intégrées basées sur processeur. La vitesse et les performances ne sont pas du tout à la hauteur et vous pourriez avoir à utiliser des programmes non familiers en raison des contraintes liées au système d'exploitation. Les cartes basées sur CISC ressemblent davantage à un ordinateur de bureau correct, en matière de performances et de disponibilité des programmes courants, car le x86-64 est utilisé dans la plupart des ordinateurs commerciaux. Si vous choisissez la bonne carte pour votre application, vous éviterez de vous retrouver avec un système trop puissant, ou d'essayer de jouer à StarCraft sur une configuration possédant le même processeur que votre téléphone.  


Si vous souhaitez en savoir plus, abonnez-vous à notre newsletter pour obtenir les dernières informations.

Abonnez-vous

Actualité

Sorry, your filter selection returned no results.

Nous avons mis à jour notre politique de confidentialité. Prenez un moment pour lire les changements. En cliquant sur "J'accepte", vous acceptez la clause de confidentialité d'Arrow Electronics ainsi que les conditions d'utilisation.

Notre site Internet place des cookies sur votre appareil pour améliorer votre expérience et pour améliorer notre site. Pour en savoir plus sur les cookies que nous utilisons et la façon de les désactiver, cliquez ici. Des cookies et des technologies de suivi peuvent être utilisés à des fins de marketing. En cliquant sur « Accepter », vous consentez au placement de cookies sur votre appareil et à notre utilisation de technologies de suivi. Cliquez sur « En savoir plus » pour de plus amples informations et instructions sur la façon de désactiver les cookies et les technologies de suivi. Même si l'acceptation des cookies et technologies de suivi est volontaire, leur désactivation peut entraîner un mauvais fonctionnement du site Internet et certaines publicités peuvent être moins pertinentes pour vous. Nous respectons votre confidentialité. Lisez notre politique de confidentialité ici.