Obligement - L'Amiga au maximum

Lundi 20 novembre 2017 - 01:14  

Translate

En De Nl Nl
Es Pt It Nl


Rubriques

 · Accueil
 · A Propos
 · Articles
 · Galeries
 · Glossaire
 · Hit Parade
 · Liens
 · Liste jeux Amiga
 · Quizz
 · Téléchargements
 · Trucs et astuces


Articles

 · Actualité (récente)
 · Actualité (archive)
 · Comparatifs
 · Dossiers
 · Entrevues
 · Matériel (tests)
 · Matériel (bidouilles)
 · Points de vue
 · En pratique
 · Programmation
 · Reportages
 · Tests de jeux
 · Tests de logiciels
 · Tests de compilations
 · Articles divers

 · Articles in english
 · Articles in other languages


Twitter

Suivez-nous sur Twitter




Liens

 · Sites de téléchargements
 · Associations
 · Pages Personnelles
 · Moteurs de recherche
 · Pages de liens
 · Constructeurs matériels
 · Matériel
 · Autres sites de matériel
 · Réparateurs
 · Revendeurs
 · Presse et médias
 · Programmation
 · Développeurs logiciels
 · Logiciels
 · Développeurs de jeux
 · Jeux
 · Autres sites de jeux
 · Scène démo
 · Divers
 · Informatique générale


Jeux Amiga

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Trucs et astuces

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Glossaire

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Partenaires

Annuaire Amiga

Amedia Computer

Relec

Hit Parade


Contact

David Brunet

Courriel

 


Dossier : Le PowerPC en 2007
(Article écrit par Mathias Parnaudeau et extrait d'Amiga Impact - mars 2007)


Depuis l'abandon du PowerPC par Apple, certains voient la mort annoncée du PowerPC pour le marché des ordinateurs de bureau ou même... son extinction pure et simple. Bien entendu, c'est mal connaître le monde du PowerPC. C'est pourquoi il est nécessaire d'éclaircir la situation du PowerPC en cette année 2007. Nous allons donc revenir sur ce qu'est le PowerPC, ses domaines d'utilisation et ses perspectives d'avenir.

1. L'architecture PowerPC

Elle a été définie en 1991 par IBM, Apple et Motorola sur les bases de l'architecture Power d'IBM, déjà utilisée pour ses serveurs. A la fin de l'année suivante le modèle 601 sortait des cartons. Les règles établies et appliquées alors seront valables pour tous les futurs processeurs (603, 604, G3, G4, G5, ...) :
  • Architecture superscalaire de type RISC, fonctionnement en Load/Store avec un grand nombre de registres à disposition.
  • Implémentation 64 bits assurant une compatibilité binaire avec l'ensemble des applications 32 bits.
  • Mise en oeuvre facilitée du contrôleur (403 GA pour IBM et MPC 505 pour Motorola) au processeur haut de gamme (PowerPC 620 à l'époque).
  • Intégration prévue dans des systèmes multiprocesseurs.
  • Fonctionnement en big endian (gros boutiste), par défaut, mais aussi en little endian (petit boutiste).
Ainsi furent érigées les exigences d'un processeur de nouvelle génération (64 bits, orientation multiprocesseurs...). Bien qu'Apple et l'Amiga aient choisi le PowerPC comme successeur des 68k, ces deux technologies n'ont rien en commun mis à part le fait d'être gros boutiste et d'avoir été concernées de près ou de loin par Motorola.

Au niveau des registres du processeur, on distingue :
  • Les registres d'usage général (General-purpose registers, GPR) : 32 registres entiers sans usage prédéfini, ce sera ensuite l'ABI choisie qui tendra à typer certains registres.
  • Les registres flottants (Floating-point registers, FPR) : 32 registres pour les calculs en simple ou double précision.
  • Les registres spéciaux (Special-purpose registers, SPR) parmi lesquels on retrouve LR (link register) qui contient l'adresse de retour à laquelle sauter en fin de fonction, CTR (count register) qui facilite la mise en place d'une boucle lorsque le nombre d'itérations est connu, DAR (Data Access Register) qui indique l'adresse accédée (vous savez, celle qui cause une exception quand on écrit là où il ne faut pas)...
Évoquons aussi le registre spécial CR (condition register) de 32 bits qui est en fait vu comme 8 groupes de 4 bits. Lors d'une comparaison, on peut indiquer quel groupe va être affecté et chacun des 4 bits prendra une valeur en fonction du résultat de la comparaison : inférieur à (bit 0), supérieur à (bit 1), égal à (bit 2) et overflow (bit 3). Cela permet une souplesse incroyable et il est même possible de comparer ces groupes entre eux ! Par exemple, ce serait tout à fait adapté pour une boucle qui continuerait tant que "(a < 50) && (b == 0)". Au lieu d'évaluer tour à tour les deux comparaisons et tester deux sauts conditionnels, on réduit ces derniers à un seul.

Le jeu d'instructions propose également de puissantes opérations sur les bits, des chargements ou sauvergardes de registres multiples... Contrairement à d'autres processeurs (68k par exemple), le registre de conditions n'est pas mis à jour à chaque calcul, il doit l'être demandé explicitement en ajoutant un point à l'instruction, par exemple "add. r3, r4, r5" qui déposera la somme des registres r4 et r5 dans r3 et mettra à jour le registre de condition CR0.

Voilà une évocation générale pour situer le fonctionnement d'un PowerPC, dont on retrouve le coeur dans les processeurs Power et Cell. Ceux-là ne seront pas explicitement abordés dans la suite de cet article mais il peut être intéressant de savoir que le Power6 est prévu pour mi-2007, avec les caractéristiques suivantes : double coeur, fréquence de 5 GHz, présence de VMX (l'autre nom d'AltiVec), etc. La consommation prévue est la même que celle des Power5 pour des performances doublées.

2. De l'embarqué au supercalculateur

En juin 2005, le site spécialisé LinuxDevices présente un article dans lequel il indique que le PowerPC est la troisième architecture embarquée la plus populaire (derrière ARM et x86) et possède le meilleur taux de croissance. Les domaines concernés sont l'automobile, la défense, le médical, les réseaux, les imprimantes...

L'embarqué donne l'impression de performances modestes par rapport à l'informatique de bureau. Certes, les processeurs sont plus lents, consomment moins... mais les cartes possèdent des caractéristiques qui pourraient bien être recherchées : format réduit, faible consommation, haute intégration. On parle de "System-On-Chip" (SoC, ou système sur puce), c'est-à-dire qu'un même processeur intègre bien sûr un coeur mais aussi par défaut des contrôleurs USB, PCI, Ethernet... Certains SoC orientés multimédia peuvent proposer de la décompression matérielle... la faible puissance devient alors toute relative.

Prenons le cas de l'Efika 5200B et de son MPC5200 de chez Freescale. Le coeur est un PowerPC 603e à 400 MHz. Si on s'arrête à ce chiffre, on a l'impression de revenir 10 ans en arrière, aux premières cartes PowerUP de Phase5. Si on y regarde de plus près, on constate déjà qu'il ne consomme que 850 mW tout en étant pourvu de nombreux contrôleurs (PCI, ROM/RAM/Flash, Ethernet, deux USB 1.1, ATA, SPI...) ainsi qu'un composant intégré AC97 pour le son.

PowerPC
Efika 5200B

Un autre exemple ? Que penser du modeste PPC405 à 162 MHz ? Ridicule, non ? Et bien non ! A l'image de l'Amiga 500 et de ses coprocesseurs, la philosophie ici est bien de ne pas tout laisser faire au processeur. C'est pourquoi le SoC STB034xx d'IBM possède un décodeur audio/vidéo MPEG-2 ainsi qu'un décodeur audio Dolby Digital. Pas étonnant qu'avec son interface IDE intégrée, il soit dédié à l'enregistrement de vidéo numérique (set-top box, terminal satellite...). Le tout pour une consommation de 2,5 W. Et c'était il y a cinq ans !

Pour un plus vaste aperçu des différents modèles de PowerPC, consultez cette page : linuxdevices.com/articles/AT4313418436.html#ppc.

Enfin, abordons le cas du PPC440 d'AMCC, qui se voit décliné en différents modèles, dont le 440EP qui équipe la carte Sam. A nouveau, on retrouve un haut degré d'intégration : nombreux contrôleurs (SDRAM DDR, PCI, Flash, USB 1.1 et 2.0, Ethernet, SPI...). Il ne consomme que 3 W à 533 MHz et la carte sera livrée cadencée à 667 MHz. Pas de quoi casser la baraque ?

PowerPC
Sam440ep

Alors intéressons-nous au BlueGene/L : il s'agit tout simplement du supercalculateur le plus rapide du monde ! D'accord il utilise 131072 processeurs mais auriez-vous imaginé que leur coeur soient des PowerPC 440, les mêmes qui équipent la carte Sam ? Là où d'autres calculateurs utilisent des processeurs à 2 GHz, le BlueGene/L préfère des 440 à 700 MHz (d'où l'évocation de "l'athlète au coeur lent") qui offrent moins de contraintes thermiques, ce qui permet d'en concentrer plus dans les armoires.

PowerPC
Blue Gene/L

N'a-t-on pas dit en présentation que le PowerPC avait été pensé pour un usage multiprocesseur ?

3. Jouer avec le PowerPC

Passionnés d'Amiga, sachez qu'avec nos machines PowerPC, une chance unique s'est présentée : celle d'avoir du matériel performant (à défaut d'être dernier cri) avec la possibilité d'utiliser des périphériques standards tout en gardant le processeur comme originalité et distinction par rapport au monde du PC. Les nostalgiques pourraient retrouver la fraîcheur du début dans ces nouvelles cartes. La puissance supplémentaire apporte un réel confort et l'accès à de nouveaux logiciels qui manquaient (bien que d'autres se fassent encore attendre). On espérait depuis des années puis les cartes sont arrivées avec des OS aujourd'hui bien plus matures et fournis qu'il y a deux ou trois ans. Pourtant, certains n'ont pas supporté la rupture avec le 68k, d'autres l'insuffisance de cette révolution.

Pourquoi ne pas profiter du fait que des cartes soient disponibles pour l'embarqué pour s'y intéresser. D'autant qu'il existe des cartes :
  • Efika 5200B : la carte fabriquée par bPlan à base de MPC5200 et sur laquelle on attend de voir arriver MorphOS ou qui sinon peut servir de serveur Linux discret.
  • Kurobox : une carte et son joli boîtier, très ouverte aux développeurs et "hackers", avec une scène dynamique.
  • DreamBox : un décodeur satellite sur lequel on peut installer Linux et qui offre le décodage MPEG-2 et même plus sur certains modèles, apparemment de quoi faire une jolie station multimédia.
  • BlackDog : un serveur Linux qui tient dans la main et alimenté à 100% par le port USB, là encore une communauté s'est formée autour de ce produit (basé sur un coeur 405).
PowerPC
DreamBox 600

On peut également trouver des cartes prototypes pour l'embarqué dans le marché de l'occasion. C'est de cette manière que j'ai pu acquérir une carte DHT Walnut avec son PowerPC 405 pour 65 euros. De quoi jouer avec et en apprendre plus sur l'embarqué, les chargeurs d'amorçage (bootloaders), Linux, la gestion des périphériques... autant de notions qui complètent ce que m'apporte l'Amiga et qui pourra peut-être lui servir en retour.

Dans l'informatique de bureau, on ne compte plus les Power Mac disponibles d'occasion. On en vient à regretter non pas que nos OS soient Open Source mais qu'ils ne puissent être portés sur des machines comme celles-ci.

PowerPC
Power Mac G5

Question développement, le PowerPC est bien soutenu grâce au marché de l'embarqué. Il existe aussi des outils gratuits comme ceux de l'incontournable DENX Software, auteur d'U-Boot. Il propose des outils de développement et de compilation croisée, des binaires de Linux... Et à propos de Linux, il existe aussi des spécialistes du PowerPC comme TerraSoft et sa distribution Yellow Dog, la première à gérer la PlayStation 3 et son processeur Cell.

Les PowerPC ont un jeu d'instructions commun mais il peut être épaulé par d'autres instructions comme DLMZB (Determine Left-Most Zero Byte) disponible sur 405 et 440 et qui permet d'améliorer grandement la rapidité des fonctions de manipulation des chaînes de caractères. IBM propose aussi une bibliothèque pour les flottants qui permet de multiplier les performances par 3 ou 4 : www-03.ibm.com/chips/power/powerpc/newsletter/sep2003/ppc_process_at_work2.html.

Bien sûr, ça peut aller bien au-delà, l'extension la plus connue étant l'AltiVec ou VMX qui est une unité de calcul ultra puissante.

Le grand nombre de registres, des instructions puissantes, de multiples registres de conditions... tout cela représente autant de pistes pour optimiser du code existant. Il y a énormément de ressources disponibles sur Internet (on retombe fréquemment sur l'excellent site d'IBM, comme ici : www-128.ibm.com/developerworks/linux/library/l-ppc/. L'assembleur PowerPC est logique, performant et passionnant !

4. Power.org

Cette organisation regroupe plus d'une quarantaine de sociétés et d'acteurs de taille : IBM, Freescale, Sony, Toshiba, Thales, Xilinx, etc. Le but est de fédérer les efforts pour définir des standards communs pour le PowerPC, le Power et le Cell. Le jeu d'instructions est déjà uniformisé sous l'appellation Power ISA 2.03 ; les PowerPC 405 et 440 lui sont d'ailleurs conformes. Mais au niveau matériel, il existe aussi des spécifications rassemblées sous le terme Power Architecture Platform Reference (PAPR) comme l'avaient été auparavant les PReP et CHRP.

IBM, le fer de lance de Power.org, est en pleine mutation ! Car il s'agit bien de promouvoir sa technologie en consolidant le socle des acteurs. Après s'être séparé du PC (qu'il avait défini il y a 25 ans) en le revendant à Lenovo en 2005, IBM oriente ses développements vers le PowerPC. Autour de son architecture Power, cela fait près de 20 ans qu'IBM fait évoluer ses processeurs (sortie prévue du Power6 cette année), ses serveurs et calculateurs, son Unix (AIX), ses outils de développement (compilateur XL C/C++, IDE Eclipse...).

On remarque aussi un intérêt marqué pour l'Open Source avec des efforts sur Linux On Power ou encore là l'ouverture du code source d'Eclipse qui fonctionne en autonomie aujourd'hui grâce à sa propre fondation. Très régulièrement, des articles sont diffusés et on apprécie les enseignements prodigués. Des conférences et tutoriels sont aussi annoncés sur Power.org et IBM a récemment lancé un concours autour du Cell et auprès des étudiants du monde entier.

Le Cell n'est pas en reste car malgré ses particularités, son coeur est PowerPC. C'est pourquoi il est naturellement intégré au sein des discussions et des décisions à venir sur Power.org.

Pour finir sur une note concrète concernant ce faisceau de professionnels, la société PA Semi a annoncé récemment (5 février 2007, voir www.linuxdevices.com/news/NS5899190894.html) la sortie de son processeur PowerPC (PWRficient PA6T-1682M) : 64 bits, double coeur, pourvu de l'unité de traitement VMX (souvenez-vous : AltiVec) et cadencé à 2 GHz, avec une consommation annoncée imbattable de 5 à 13 W en utilisation courante. Ce processeur est proposé avec une carte d'évaluation bien fournie : ports DDR2, IDE, PCI, USB 2.0, Ethernet 1 GB, etc. qui ressemble fort à une carte mère d'ordinateur de bureau !


[Retour en haut] / [Retour aux articles]