Les processeurs prennent en charge les graphismes sophistiqués pour un monde de plus en plus visuel
Avec la contribution de Electronic Products
2014-04-10
De nos jours, il ne suffit plus d'acheminer du texte brut. Pour attirer et conserver notre attention dans un monde où nos sens sont stimulés en permanence, l'affichage d'informations doit désormais séduire notre nature esthétique. Par conséquent, même des informations simples doivent être présentées dans des couleurs vives et faire usage d'ombrages complexes, d'animations et de la vidéo.
Cependant, la haute résolution, les palettes de couleurs, les animations en temps réel et la vidéo ont toutes des répercussions sur les capacités d'un processeur à construire, rendre et afficher les pages. Nous nous attendons à ce que les pages s'affichent proprement, sans scintillement ni artefact. Cependant, avec l'augmentation des résolutions d'affichage, la quantité de contenu, le traitement en arrière-plan et les mouvements de données de chaque page, ainsi que la capacité à les afficher, pèsent de plus en plus lourd sur les ressources d'un processeur, en particulier en termes de temps et de mémoire.
Cet article s'intéresse à des processeurs haut de gamme dotés d'une puissance, de ressources, et d'une rationalisation architecturale suffisantes pour prendre en charge des graphismes extrêmement complexes. Ceux-ci utilisent des chemins de données de 32 bits ou plus en interne ainsi qu'une horloge haute vitesse. La mémoire RAM avec cache haute vitesse interne ainsi que le DMA entrelacé sont importants ici aussi. Les composants, fiches techniques, didacticiels et kits de développement mentionnés ici sont disponibles sur le site Web de DigiKey.
Conditions requises et choix
La plupart des concepteurs n'auront pas la chance de voir leurs conceptions produites par millions. Par conséquent, souvent, les circuits ASIC ne constituent pas une option intéressante en termes de coût, de temps ou de gestion des risques, et il faut spécifier des FPGA dont le coût est plus élevé ou un processeur plus puissant pouvant gérer des graphismes tout en effectuant d'autres fonctions système.
La vidéo aujourd'hui n'est pas une tâche facile. Le formatage de données, l'arbitrage d'images-objets, la réalisation de superpositions et de défilements, le mélanges de couleurs, etc., impliquent des tâches utilisant un grand nombre de processus et de chemins de données. L'ombrage et le rendu en trois dimensions (3D) ajoutent un autre niveau de fonctionnalité attendue qui consomme beaucoup de temps et de ressources du processeur.
Si certains processeurs hautes performances peuvent être programmés comme processeur périphérique graphique dédié, ces composants sont généralement amenés à gérer de nombreuses tâches supplémentaires. En outre, les périphériques haut de gamme qu'ils contiennent peuvent inclure une interface tactile capacitive projetée, ainsi que du son stéréo, un protocole Ethernet et d'autres protocoles de communications afin de permettre au processeur d'application de fonctionner avec un nombre réduit d'interruptions. C'est presque comme si vous disposiez d'un autre cœur. Un DMA hautes performances et une logique d'interface de bus externe sont également généralement présents, comme de nombreuses E/S à usage général.
Une tablette standard peut compter de 1024 x 600 à 2560 x 1600 pixels dans son écran TFT. Cette large plage impose des contraintes strictes sur les performances d'un système et notamment sur la quantité de ressources mémoire nécessaires (Tableau 1). Avec une palette de couleurs complète de 24 bits, un écran 2560 x 1600 tel que celui utilisé dans certaines tablettes Samsung Galaxy, Amazon Kindle et Toshiba, consomme plus de 12 Mo de RAM pour une seule page.

Tableau 1 : Écrans de tablette standard / mémoire page.
Même avec un bus de données d'une largeur de 32 bits, 368 640 000 transferts de mémoire 24 bits à un seul cycle doivent avoir lieu chaque seconde pour redessiner complètement un flux vidéo de 30 images par seconde. Cela représente 2,7 ns par transfert, c'est beaucoup demander pour un processus qui rend et déplace des données. Même si vous n'effectuez pas de décodage en temps réel de formats vidéo compressés tels que MPEG, le rendu n'est pas une tâche aussi simple que vous le pensez.
La RAM avec cache haute vitesse interne et les vitesses de l'interface de bus externe constituent un autre facteur. À des vitesses d'horloge élevées, les états d'attente sur la RAM du bus externe affaiblissent les processeurs et diminuent les performances. Une interface SDRAM sur l'interface de bus externe de votre processeur peut actualiser les pages en arrière-plan et ainsi permettre au processeur de se concentrer totalement sur le rendu.
Un processeur hautes performances peut être dédié au contrôle des graphismes, notamment s'il peut déplacer des données entrantes et sortantes très rapidement. Un exemple d'interface SDRAM haute vitesse bien implémentée se trouve dans le dispositif Freescale MPC8245LVV333D, architecturé sur le cœur du Power PC MPC603e de la société et qui fait partie de la série MPC82xx. Ce processeur 32 bits à 352 broches présente une vitesse d'horloge de 333 MHz, et certains dispositifs de la gamme sont même encore plus rapides. Le processeur est disponible en versions 2, 1,8 et 1,5 V, ce qui peut permettre de réduire la consommation dans ce dispositif de 4,5 millions de transistors.
Le MPC8245 combine l'architecture Power PC et un pont PCI pour permettre aux concepteurs de développer rapidement des systèmes à l'aide de périphériques conçus pour PCI et autres interfaces standard. Le cœur peut fonctionner à différentes fréquences, ce qui permet au concepteur de faire un compromis sur les performances pour réduire la consommation d'énergie. La commande et la synchronisation SDRAM sont gérées indépendamment par l'unité de contrôle périphérique, qui entrelace également la fonctionnalité DMA dans la logique d'interface de bus externe, permettant le transfert de données haute vitesse autonome aux écrans et laissant la puissance du processeur libre pour exécuter le rendu en arrière-plan (Figure 1).

Figure 1 : Un bloc processeur rationalisé associé à une interface mémoire externe haute vitesse avancée est un bon candidat pour un processeur graphique dédié et peut agir en tant que périphérique semi-autonome de haut niveau. Cela peut être suffisant pour certaines applications.
L'interface SDRAM prend en charge jusqu'à 2 Go de SDRAM. Le bus à bande passante élevée peut utiliser des cycles de transfert de 32 ou 64 bits. Le contrôleur DMA intégré permet d'éclater les opérations de regroupement et prend en charge le chaînage DMA, qui relie automatiquement les tampons DMA. Ceci élimine une autre tâche du programme du microprocesseur principal.
Texas Instruments, développeur de longue date et pionnier en matière de graphismes et d'imagerie numériques, offre de sérieux concurrents avec ses outils et processeurs OMAP35x. La plateforme OMAP combine un cœur Cortex™-A8 ARM® superscalaire puissant de 600 MHz intégré avec quatre processeurs d'applications OMAP possibles.
L'OMAP3530 est tout particulièrement intéressant : il présente un excellent traitement des graphismes, images et vidéos et offre une prise en charge directe pour le streaming vidéo, les jeux 2D/3D mobiles et la capture vidéo. L'OMAP3530 contient un accélérateur graphique et des ports de sortie et d'entrée vidéo dédiés.
Le support DMA 64 canaux et l'interface DDR basse consommation sont particulièrement importants. À l'instar d'autres processeurs, la RAM occupe une grande partie de la puce, et dans ce cas, la RAM de 64 Ko à usage général inclut généralement une ligne de balayage ou deux à la fois. La disponibilité de jusqu'à 256 Ko de RAM cache de niveau 2 intégrée est également utile, dans la mesure où elle peut contenir des modèles et des informations graphiques d'arrière-plan. Notez également que 96 Ko de RAM supplémentaires sont disponibles pour l'utilisation et le rendu DSP. Le dispositif 3530 comprend également un accélérateur graphique matériel.
La prise en charge de ces composants est assurée par les fabricants d'outils de développement tiers et par TI. Le dispositif BeagleBoard de Circuitco Electronics prend en charge l'OMAP3530 et démontre les connexions aux interfaces SDRAM, S-Video et DVI-D, ainsi que tous les signaux d'interface LCD (Figure 2). Un module de formation sur BeagleBoard est disponible en ligne sur le site de DigiKey, ainsi qu'une illustration vidéo montrant comment utiliser les produits BeagleBoard fonctionnant sous Linux pour commander un miniprojecteur, qui peut être une interface vidéo intéressante.

Figure 2 : Le BeagleBoard tire profit de l'architecture de processeur OMAP et sert de plateforme de développement/test puissante, notamment pour les conceptions Linux embarquées. Il convient bien à la commande d'affichage et aux miniprojecteurs.
Logic PD transforme le SOMOMAP3530-11-1782JFIR en une plateforme d'évaluation et de développement prenant en charge l'OMAP3530, et combinant un processeur ARM Cortex-M8 et un processeur DSP TMS320C64x. Même s'il est davantage destiné au développement du traitement de signaux, il constitue aussi un outil de développement de plateforme utilisable.
Alternatives multicœurs
Une puce multiprocesseur peut représenter une bonne alternative à l'implémentation d'une carte multiprocesseur. S'il est possible de rencontrer des limitations de la bande passante lors du partage de la même mémoire ou des mêmes bus périphériques, les processeurs multicœurs ont prouvé leur capacité à fonctionner lorsque les tâches sont partitionnées de façon efficace.
Freescale propose une gamme technologique multicœur largement reconnue et prise en charge, avec sa puissante série de processeurs i.MX 6 basés sur ARM 8 à ARM 11, avec différentes versions jusqu'au dispositif à quatre cœurs à 1,2 GHz avec une interface DDR 3 64 bits et deux interfaces DDR 2 32 bits.
Le dispositif MCIMX6L3DVN10AA, un composant Freescale i.MX6sololite adapté aux graphismes 2D et 3D, est un processeur sans ROM à 432 broches avec un seul cœur de 1 GHz. La RAM intégrée de 256 Ko et l'alimentation de seulement 0,95 V constituent des avantages remarquables.
Ces composants sont évolutifs et conçus pour le multimédia et les graphismes. Un bloc accélérateur graphique matériel dédié gère les images vectorielles, 2D et 3D et libère le processeur de ces opérations gourmandes en données. Un autre bloc dédié appelé traitement d'images gère les fonctions d'amélioration, d'inversion, de rotation, de défilement, de redimensionnement et de mélange, pour n'en citer que quelques-unes. Enfin, un autre bloc matériel dédié interface avec les caméras et les écrans (Figure 3).

Figure 3 : De meilleures performances peuvent être obtenues lorsque des blocs matériels dédiés et améliorés peuvent tirer profit des bus haute vitesse et des pools de mémoire. Cela permet de fournir des niveaux de performances semblables aux circuits ASIC à moindre coût avec plus de périphériques intégrés.
Le dispositif MCIMX6S5DVM10AB à 624 broches de Freescale est également une conception sans ROM avec un matériel graphique dédié et un processeur ARM Cortex-A9. Les cœurs doubles et quadruples sont situés plus haut dans la chaîne et absorbent des fonctionnalités que les monocœurs ne peuvent tout simplement pas gérer en temps réel. Par exemple, la gamme i.MX6 comprend aussi des dispositifs à quatre cœurs à 1,2 GHz comme le MCIMX6Q5EYM10AC. Ces composants sont aussi dotés de moteurs graphiques 2D doubles, et prennent en charge la 3D, avec quatre shaders supplémentaires.
En résumé, un circuit ASIC peut constituer une solution efficace pour fournir des vidéos et des graphismes sophistiqués, mais la plupart des concepteurs ne peuvent se permettre ni le coût ni le temps nécessaires à sa spécification. Heureusement, comme cet article l'a démontré, il existe une grande variété de processeurs haut de gamme de qualité qui offrent des capacités et des fonctionnalités vidéo bien conçues à ces fins.
Pour plus d'informations sur les composants mentionnés dans cet article, cliquez sur les liens fournis pour accéder aux pages produits du site Web de DigiKey.
Avertissement : les opinions, convictions et points de vue exprimés par les divers auteurs et/ou participants au forum sur ce site Web ne reflètent pas nécessairement ceux de DigiKey ni les politiques officielles de la société.