Obligement - L'Amiga au maximum

Lundi 29 mai 2017 - 02:12  

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


Soutien

N'hésitez pas à soutenir le projet Obligement



Contact

David Brunet

Courriel

 


Actualité : L'ère du 68060 approche
(Article écrit par David Coronat et extrait d'Amiga News - février 1994)


GVP travaille sur une carte accélératrice 68060 pour Amiga 4000, et Commodore a annoncé que la nouvelle gamme d'Amiga à venir utilisera le nouveau processeur de Motorola.

Présentation

Le 68060, décrit en détail par un document de Motorola, semble être plein de promesses. Il allie une architecture 32 bits, comprenant plusieurs unités de traitement en parallèle, à une consommation réduite permettant des fréquences élevées de fonctionnement.
  • Jusqu'à trois fois les performances d'un 68040 à 25 MHz.
  • Mode utilisateur 100% compatible avec le 68040.
  • Exécution simultanée de deux instructions arithmétiques sur des nombres entiers.
  • Unité de calcul en virgule flottante (FPU - Floating Point Unit) compatible au standard IEEE.
  • Cache de branchement pour minimiser le temps de latence pendant les branchements.
  • Deux gestionnaires de mémoire (MMU - Memory Management Units) indépendants.
  • Deux caches de 8 ko chacun à accès simultanés.
  • "Surveillance" des bus (voir plus loin).
  • Bus 32 bits d'adresse et de données non multiplexés.
  • Contrôle de la puissance consommée.
  • Deux versions à ce jour : 50 et 66 MHz.
L'unité de traitement des nombres entiers

Elle est chargée d'exécuter les opérations logiques et arithmétiques, elle est composée d'un contrôleur d'acquisition d'instructions, d'un contrôleur d'exécution d'instructions, et d'un cache de branchement.

Le contrôleur d'acquisition d'instructions

Il est composé d'une chaîne d'acquisition des instructions et d'une liaison par circuits logiques au cache de branchements. La chaîne d'acquisition consiste en quatre étapes, permettant d'acquérir les instructions en mémoire avant leur utilisation effective par le contrôleur d'exécution d'instructions.

L'acquisition continue des instructions permet de laisser le moins longtemps possible le contrôleur d'exécution inactif, d'où des performances machine accrues. Chaque instruction doit passer par ces quatre étapes avant l'exécution :
  • Calcul de l'adresse de l'instruction.
  • Acquisition de l'instruction.
  • Prédécodage de l'instruction (*).
  • Mise en attente dans le tampon mémoire d'instructions, jusqu'à ce que le contrôleur d'exécution soit libre.
(*) En effet, chaque instruction est en fait un microprogramme, composé d'instructions élémentaires très simples qu'il faut décoder à la manière d'un interpréteur pour que le microprocesseur puisse les exécuter.

Le contrôleur d'exécution d'instructions

Son architecture comprend deux chaînes d'exécution d'instructions, une logique de liaison avec l'unité de calcul en virgule flottante, ainsi qu'avec les caches et les gestionnaires de mémoire.

Les deux chaînes d'exécution sont indépendantes et peuvent fonctionner simultanément sur deux instructions différentes au cours du même cycle machine. Résultat : on peut avoir virtuellement et vu de l'extérieur des instructions qui s'exécutent en des temps inférieurs à la durée d'un cycle machine !

Chaque exécution d'instruction s'exécute en six phases :
  1. Décodage de l'instruction.
  2. Calcul de l'adresse de l'opérande éventuel de l'instruction.
  3. Acquisition de l'opérande.
  4. Exécution effective, avec manipulation de l'opérande.
  5. Restitution du résultat.
  6. Renvoi du résultat soit en mémoire, soit dans les caches.
Si le décodage de l'instruction met en évidence des opérations à effectuer en virgule flottante, alors l'étape 4 est exécutée par l'unité de calcul en virgule flottante.

Le cache de branchements

Il est prévu pour contenir la ligne de code à laquelle pointent les instructions de branchement présentes dans la chaîne d'acquisition d'instructions. Ainsi, dès qu'une telle instruction se présente, et qu'il y a branchement effectif, la chaîne d'acquisition des instructions se continue à l'endroit indiqué par le cache de branchements, au lieu de continuer de façon séquentielle. Ceci permet d'effectuer les branchements à la place du contrôleur d'exécution, ce qui fait gagner du temps machine.

L'unité de traitement des nombres en virgule flottante

Fonctionnant en parallèle avec l'unité de traitement des entiers, elle permet de multiples calculs en virgule flottante avec compatibilité IEEE. De plus, elle est compatible avec le MC68040 et les coprocesseurs MC68881 et MC68882. Comme cette unité est intégrée au 68060, cela élimine les accès à des coprocesseurs extérieurs, pour une rapidité de traitement accrue.

Les instructions IEEE non implémentées de façon matérielle dans le 68060 sont émulées logiciellement pour une compatibilité IEEE complète.

La gestion de la mémoire et des adresses

Elle est effectuée par les deux gestionnaires de mémoire (MMU). L'un d'eux est destiné aux instructions, l'autre aux données ; et chacun d'eux contient un cache d'adressage.

Le 68060 peut en effet adresser jusqu'à 4 Giga-octets. Bien que la plupart des systèmes comportent a ce jour beaucoup moins de 4 Go de mémoire, cette quantité peut être atteinte par l'utilisation de mémoire virtuelle (à la GigaMem).

Les MMU sont donc là pour gérer cette quantité impressionnante de mémoire, par pages de 4 ou 8 ko, et permettent quelques fonctions utiles. Par exemple, il est possible de protéger l'accès de certaines zones mémoire. Ils fonctionnent bien entendu en parallèle avec les autres unités du 68060, toujours dans un but d'accroissement de puissance machine.

Les caches d'instructions et de données

Le 68060 utilise doublement la technologie des caches, car il possède un cache pour les instructions, et un autre cache indépendant pour les données (8 ko chacun). Ceci permet de réduire de manière substantielle les accès externes en mémoire.

Le caractère indépendant des caches autorise des acquisitions de données et d'instructions simultanées, tout en laissant libres les bus externes pour les autres unités de traitement. Ce genre de superposition d'activités permet au microprocesseur d'exécuter de multiples instructions en interne pendant un accès externe en mémoire pour une autre instruction.

A noter aussi, le 68060 a la capacité d'assurer une cohérence entre ses caches et la mémoire externe utilisée sur le moment. En effet, il peut surveiller le bus externe pendant son utilisation par d'autres unités, ce qui lui permet de mettre à jour les caches ou pas. On peut configurer (à l'aide d'un drapeau) les cycles de bus externes comme "surveillables" ou non, et dans le cas où la surveillance est autorisée, le circuit chargé de celle-ci a un accès prioritaire aux caches par rapport aux unités d'exécution des instructions.

La gestion de consommation

Le 68060 a une architecture de faible consommation, due à l'utilisation de logiques statiques. Seules les commutations des circuits logiques utilisés entraînent une consommation, donc le 68060 ne consomme que lorsqu'il travaille. En fait, cela rend la consommation proportionnelle à la quantité d'instructions traitées par seconde, et donc à la fréquence. Comme il travaille à 50 ou 66 MHz, on comprend la tactique de Motorola visant à gérer la consommation intelligemment de manière à faire des économies. En effet, il faut savoir que plus un composant consomme, plus il chauffe : donc, pour de hautes consommations, la température peut devenir dangereuse pour le composant lui-même.

Pour parer à cela, le 68060 est alimenté en 3,3 V au lieu de 5 V, d'où une chute de consommation de 40 à 60%. Ensuite, il est possible de désactiver la plupart des unités de traitement et des gestionnaires, pour des économies de température. Enfin, l'instruction LPSTOP permet de bloquer les circuits actifs du microprocesseur, arrêtant ainsi l'exécution. Dans ce mode d'attente, la consommation est très largement réduite. On faire tout redémarrer grâce à une interruption, ou un réinitialisation du microprocesseur.

Un mot pour finir

Le tout dernier de la série des 680x0 paraît posséder des capacités fortement alléchantes : de plus, sa compatibilité avec ses prédécesseurs doit permettre de développer rapidement des logiciels qui pourront exploiter sa puissance. Maintenant, nous n'avons plus qu'à attendre la série des Amiga 5000, à base de 68060, pour se faire une idée plus concrète de ses capacités.


[Retour en haut] / [Retour aux articles]