Motorola 68881

Le Motorola 68881 est un coprocesseur mathématique destiné à travailler en complément à la famille de microprocesseurs m68k de Motorola.

Motorola 68881

Le Motorola 68882 est une version améliorée du 68881, mais tout à fait compatible pour le reste.

Utilisation

Les 68881 et 68882 ont été utilisés comme coprocesseurs optionnels dans beaucoup de modèles d'Atari, d'Amiga, de Macintosh.

Formats de nombre

Motorola 68881

Le Motorola 68881 connaît quatre formats de nombre :

Précision étendue, sur 12 octets
95signe
94-80exposant
79-64toujours à zéro
63-0mantisse


Précision double (IEEE), sur 8 octets
63signe
62-52exposant
51-0mantisse


Précision simple (IEEE), sur 4 octets
31signe
30-23exposant
22-0mantisse


Précision packed, sur 12 octets
95signe de la mantisse
94signe de l'exposant
93-9200, ou NAN ou infini si 11
91-80les trois chiffres décimaux les moins significatifs de l'exposant
79-76le chiffre décimal le plus significatif de l'exposant mantisse
75-68pas tenu en compte
67-64le chiffre le plus significatif de la mantisse
63-0mantisse

Registres de données et de contrôle

Ses 8 registres de données (de FP0 à FP7) ont une largeur de 10 octets (80 bits), bien que la taille d'un réel de précision étendue puisse s'étendre sur 12 octets.

Il possède en outre 3 registres de contrôle :

FPCR (Floating Point Control Register), 32 bits dont seuls les premiers sont utilisés
3-0 ?zéro
5-4ROUNDméthode d'arrondissement
00 : au plus proche
01 : zéro
10 : moins l'infini
11 : plus l'infini
7-6PRECprécision de l'arrondissement
00 : étendu
01 : simple
10 : double
11 : réservé
8INEX1sortie décimale inexacte
9INEX2opération inexacte
10DZdivision par zéro
11UNFLunderflow
12OVFLoverflow
13OPERRerreur d'opérande
14SNANsignal Not-A-Number
15BSUNBranch/Set in UNorderd


FPSR (Floating Point Status Register), 32 bits divisé en 4 octets
7-0exception accrue
2-0toujours à zéro
3INEX!INEX2!OVFL
4DZ
5UNFL & INEX2
6OVFL
7BSUN!SNAN!OPERR
15-8statut des exceptions
8INEX1 : sortie décimale inexacte
9INEX2 : opération inexacte
10DZ : division par zéro
11UNFL : underflow
12OVFL : overflow
13OPERR : erreur d'opérande
14SNAN : signal Not-A-Number
15BSUN : Branch/Set in UNorderd
23signe d'un quotient
22-17quotient
24NAN : Not A Number
25I : infini
26Z : zéro
27N : négatif
31-28zéro


FPIAR (Floating Point Instruction Address Register) est le registre d'adresse de l'instruction en cours.

Puissance

68881

  • 155,000 transistors par composant
  • 16MHz version procure 160 KFLOPS
  • 20MHz version procure 192 KFLOPS
  • 25MHz version procure 240 KFLOPS

68882

  • 176,000 transistors par composant
  • 25MHz version procure 360 KFLOPS
  • 33MHz version procure 475 KFLOPS
  • 40MHz version procure 576 KFLOPS
  • 50MHz version procure 720 KFLOPS


  • Portail de l’informatique
  • Portail de l’électricité et de l’électronique
Cet article est issu de Wikipedia. Le texte est sous licence Creative Commons - Attribution - Partage dans les Mêmes. Des conditions supplémentaires peuvent s'appliquer aux fichiers multimédias.