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

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

Le Motorola 68881 connaît quatre formats de nombre :

+ Précision étendue, sur 12 octets Bits Description95 signe94-80 exposant79-64 toujours à zéro63-0 mantisse

+ Précision double (IEEE), sur 8 octets Bits Description63 signe62-52 exposant51-0 mantisse

+ Précision simple (IEEE), sur 4 octets Bits Description31 signe30-23 exposant22-0 mantisse

+ Précision packed, sur 12 octets Bits Description95 signe de la mantisse94 signe de l'exposant93-92 00, ou NAN ou infini si 1191-80 les trois chiffres décimaux les moins significatifs de l'exposant79-76 le chiffre décimal le plus significatif de l'exposant mantisse75-68 pas tenu en compte67-64 le chiffre le plus significatif de la mantisse63-0 mantisse

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 Bits Champ Description3-0 ? zéro5-4 ROUND méthode d'arrondissement 00 : au plus proche 01 : zéro10 : moins l'infini11 : plus l'infini7-6 PREC précision de l'arrondissement00 : étendu01 : simple10 : double11 : réservé8 INEX1 sortie décimale inexacte9 INEX2 opération inexacte10 DZ division par zéro11 UNFL underflow12 OVFL overflow13 OPERR erreur d'opérande14 SNAN signal Not-A-Number15 BSUN Branch/Set in UNorderd

+ FPSR (Floating Point Status Register), 32 bits divisé en 4 octets Bits Description7-0 exception accrue2-0 toujours à zéro 3 INEX!INEX2!OVFL4 DZ5 UNFL & INEX26 OVFL7 BSUN!SNAN!OPERR15-8 statut des exceptions8 INEX1 : sortie décimale inexacte9 INEX2 : opération inexacte10 DZ : division par zéro11 UNFL : underflow12 OVFL : overflow13 OPERR : erreur d'opérande14 SNAN : signal Not-A-Number15 BSUN : Branch/Set in UNorderd23 signe d'un quotient22-17 quotient 24 NAN : Not A Number 25 I : infini 26 Z : zéro 27 N : négatif31-28 zéro

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

Puissance

68881 155000 transistors La version 16 MHz procure 160 KFLOPS La version 20 MHz procure 192 KFLOPS La version 25 MHz procure 240 KFLOPS

68882 176000 transistors La version 25 MHz procure 360 KFLOPS La version 33 MHz procure 475 KFLOPS La version 40 MHz procure 576 KFLOPS La version 50 MHz procure 720 KFLOPS

Notes et références

Voir aussi Articles connexes Liste des microprocesseurs Motorola Liens externes

68881 Catégorie:Coprocesseur arithmétique