Architectures des DSPs
Architecture générale d’un processeur                   CPU     Unité de                  Unités de     contrôle          ...
Accès à la mémoire                     4
Rappels : Bus                                                Le CPU est le maître du CPU       BUS       Périphérique    ...
Rappels: le fonctionnement basique d’uneopération de calcul                         1                         2           ...
Architecture Von Neuman                                Mémoire              CPU    BUS      Programme                     ...
Architecture Harvard                                  Mémoire Programme                 CPU                               ...
Architecture Harvard modifiée                              Mémoire Programme                              Mémoire Programm...
Accès mémoire multi-port                                           Mémoire Programme                                      ...
Cache dinstructions                                 DSP                    cache              Mémoire Programme           ...
Mémoire interne sur les processeurs C54x          Capacité en mémoire interne de différents modèles C54x   Plusieurs type...
Bus externedans une architecture Harvard modifiée                           DSP                                 Mémoire Pr...
Accès Direct à la Mémoire(DMA : Direct Memory Access)                               Mémoire Programme                     ...
Diagramme bloc du TMS320C5416                     Program/Data ROM           Program/Data RAM                             ...
Les Périphériques du C54x   Timer   Ports série       Port série synchrone       Port série bufferisé (BSP)       Por...
Architecture interne du CPU                              17
Structure interne du CPU                           18
Unité de commande   Chef d’orchestre du CPU   Chargement des instructions     Compteur   de programme (PC)     Registr...
Unités de traitement mathématique   Calculs au format fixe              Multiplieur    ou flottant                      ...
Unités de génération d’adresses   Unités de traitement spéciales     Pilotées par le séquenceur     Calculs sur des ent...
Schéma de principe des échangesCPU                              pilotage               Génération    Génération     Unités...
Fetch (lecture instruction)               Génération    Génération   Unités de Séquenceur               adresses P    adre...
Read/Write (lecture/écriture donnée)               Génération    Génération   Unités de Séquenceur               adresses ...
Diagramme bloc du TMS320C54x                         Program/Data ROM           Program/Data RAM                          ...
Structure interne du    TMS320C54x       Source : Texas Instruments       TMS320C54x DSP       Reference Set       Vol 1 :...
Bus      Le bus programme PB sert à véhiculer les      instructions et les coefficients stockés dans la      mémoire prog...
Génération   Génération                          dadresses   dadresses      Unité de controle   programme     données     ...
Unité de traitementnt mathématique    Unité arithmétique et logique(UAL)    Multiplieur-Accumulateur (MAC)    Registre ...
Accumulateurs                      ALU                                  Shifter                        ViterbiMAC         ...
Unité Arithmétique et Logique (ALU)    Ce bloc effectue des calculs arithmétiques et     logique    2 accumulateurs sur ...
Registres IMR    Registre Masque d’Interruption       TREG    Registre Temporaire  IFR   Registre de Statut d’Interruption...
Multiplieur-accumulateur (MAC)    Rôle central dans un DSP    Plus de 50% des instructions Caractéristiques principales...
Shifter (registre à décalage)    ce registre de 40 bits, sert à cadrer les données en     provenant de la mémoire ou bien...
Protocole JTAG   Permet de piloter les unités internes du DSP   Intégré par le constructeur lors de la    conception du ...
Pipelining   Instructions                        Instruction        Instruction 1    segmentées en étages                ...
Séquentiel vs pipeline   étagetemps       t1   t2      t3      t4         t5   t6   t7   t8      Fetch          F1        ...
Pipelining   Exemple du TMS320C54x   6 étages de traitement     Prefetch  (P) : Incrémentation du PC                   ...
Retards dans le pipeline   Le pipeline atteint son plein rendement une    fois qu’il est “plein”   Une retard peut se pr...
Exemple de conflit daccès mémoire     Programme et données     dans une mémoire à 1 accès par cycleP1      F1    D1     A1...
Résolution du conflit daccès mémoireProgramme et donnéesdans des mémoires accès séparés (Bus Programme/Bus Données)ou dans...
Bilan accès mémoire              Program   Data                               SARAM    DARAM               ROM      ROM   ...
TMS320C62X  Processeur àvirgule fixecomportant 2multiplieurs, 6 UALset 2 groupes de 16registres de 32 bits  Instructions d...
TMS320C62X             44
TMS320C62X : groupe opérateursChaque groupe d’opérateurs dispose de : 3 UALs + 1 multiplieur (.L, .S, .D et .M) :   .L : o...
TMS320C62X : groupe opérateurs A0 A1     a1                    N A2     x1             Y           a n xn A3    prod      ...
VLIW (Very-Long-Instruction-Word)    Parallélisme géré par le compilateur        Contrôle simple mais compilateur comple...
VLIW (Very-Long-Instruction-Word)                    inst1                    inst2 Instruction VLIW                    in...
VLIW : exemple du TMS320C62x                             Instruction de 128 bits                          8 sous-instructi...
Représentation de Nombres Réels   La représentation des nombres doit répondre à deux    exigences contradictoires:      ...
Représentation en format fixe •Aussi appelée représentation à “virgule fixe” Définition "format Qk" : La représentation Qk...
Représentation en Format Fixe  • Exemple: Q5 sur 8 bits  • Partie entière codé sur 3 bits (dont 1 de signe)  • Partie frac...
Représentation en Format Fixe    Précision: quantification uniforme de pas q                         q=2-k    Dynamique:  ...
Représentation en Format Flottant • Aussi appelée représentation en “virgule flottante” est une représentation avec une pr...
Représentation en Format Flottant• Exemples en 8 bits 01111 111       1         2         3             4         4 2 1   ...
Format virgule flottante IEEE 754   Format pour N=32 bits 1 bit       8 bits                              23 bitssigne   ...
Chap2 dsp
Prochain SlideShare
Chargement dans…5
×

Chap2 dsp

4 525 vues

Publié le

PPROPOSE PAR Mr.Abdelhamid Helali

Publié dans : Formation
1 commentaire
3 j’aime
Statistiques
Remarques
  • merci Mr c'est très interessant
       Répondre 
    Voulez-vous vraiment ?  Oui  Non
    Votre message apparaîtra ici
Aucun téléchargement
Vues
Nombre de vues
4 525
Sur SlideShare
0
Issues des intégrations
0
Intégrations
76
Actions
Partages
0
Téléchargements
294
Commentaires
1
J’aime
3
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Chap2 dsp

  1. 1. Architectures des DSPs
  2. 2. Architecture générale d’un processeur CPU Unité de Unités de contrôle traitement Bus internes Mémoire Unité de Périphériques interne Communication et mémoire externes 3
  3. 3. Accès à la mémoire 4
  4. 4. Rappels : Bus  Le CPU est le maître du CPU BUS Périphérique bus  Il est le seul à écrire sur les bus adresse et contrôle  Le périphérique accepte adresses sur le bus données données  Lecture: il fournit la donnéeCPU Périphérique contrôle demandée  Ecriture : il récupère la donnée fournie par le CPUAdresses : sélection du périphérique  Haute impédance: il seet d’une donnée en son sein déconnecte du busDonnées : valeur de la donnée à échangerContrôle : lire / écrire / haute impédance 5
  5. 5. Rappels: le fonctionnement basique d’uneopération de calcul 1 2 CPU Mémoire 4 3 (1) Charger une instruction depuis la mémoire (2) Charger les opérandes depuis la mémoire (3) Effectuer les calculs (4) Stocker le résultat en mémoire 6
  6. 6. Architecture Von Neuman Mémoire CPU BUS Programme + Données Un seul chemin daccès à la mémoire Architecture des processeurs d’usage général (Pentium, 68000) Goulot détranglement pour laccès à la mémoire Pas de sécurisation matérielle du programme 7
  7. 7. Architecture Harvard Mémoire Programme CPU Mémoire Données Séparation des mémoires programme et données Moins de risque de corruption du programme Meilleure utilisation du CPU  Chargement du programme et des données en parallèle 8
  8. 8. Architecture Harvard modifiée Mémoire Programme Mémoire Programme + Données CPU Mémoire Données Mémoire programme contient des données Possibilité de charger 2 données en un cycle Utilisation classique en TNS  Mémoire Programme+Données → coefficients des filtres  Mémoire Données → échantillons d’entrée 9
  9. 9. Accès mémoire multi-port Mémoire Programme + Données CPU Mémoire Données Plusieurs bus de données  Accès simultané à plusieurs données  Combiné avec  mémoire multi-accès (plusieurs accès à la même mémoire en un cycle)  mémoire multi-blocs (accès simultané à deux blocs de mémoire distincts) Exemple du TMS320C54xx :  1 bus programme (P)  2 bus de lecture des données (C et D)  1 bus d’écriture des données (E) 10
  10. 10. Cache dinstructions DSP cache Mémoire Programme d’instructions + Données CPU Mémoire Données Cache = mémoire associative rapide  Contient les dernières instructions exécutées Utile en cas de boucle  Accès aux instructions sans accès en mémoire programme  Libère le bus pour des données Pas appliqué aux données  Problème de validation du temps réel 11
  11. 11. Mémoire interne sur les processeurs C54x Capacité en mémoire interne de différents modèles C54x Plusieurs types de RAM incluse sur le chip  Single access (SARAM) : un accès par cycle  Dual access (DARAM) : deux accès par cycle  Two-way shared : deux accès par cycle même depuis lextérieur DARAM découpée en blocs  Accès simultané à deux blocs de mémoire différents  2x2=4 accès par cycle en théorie (en réalité limité par le reste de larchitecture) 12
  12. 12. Bus externedans une architecture Harvard modifiée DSP Mémoire Programme + Données CPU Mémoire Données MUX Transfert entre les businternes et externe par • Limitation du nombre de brochesmultiplexage temporel • Réduction des coûts • Diminution des performances lors des accès au bus externe 13
  13. 13. Accès Direct à la Mémoire(DMA : Direct Memory Access) Mémoire Programme + Données CPU Mémoire Données interruptions DMA configuration •Accès DMA : entrées-sorties vers la mémoire interne • indépendant du CPU et des bus internes •Système dinterruptions "données reçues"/"données transmises" 14
  14. 14. Diagramme bloc du TMS320C5416 Program/Data ROM Program/Data RAM Mémoire 16K Words 128K Words JTAG Test/ interne D(15-0) Emulation Control MUXBus externe Program/Data Buses Timer A(23-0) MAC ALU DMA Muxed GP I/O 17 x 17 MPY 40-Bit ALU Ch 0 CMPS Operator 8/16-bit Host Port 40-Bit Adder Peripheral Bus (VITERBI) Ch 1 Interface (HPI) RND, SAT EXP Encoder Ch 2 Multichannel Buffered Serial Port (McBSP) Shifter Accumulators Ch 3 40-Bit ACC A Multichannel Buffered 40-Bit Barrel CPU ACC B (-16, 31)40-Bit Ch 4 Serial Port (McBSP) Ch 5 Multichannel Buffered Addressing Unit Serial Port (McBSP) 8 Auxiliary Registers PLL Clock Generator 2 Addressing Units S/W Waitstate Power Management Generator Entrées Sorties 15
  15. 15. Les Périphériques du C54x Timer Ports série  Port série synchrone  Port série bufferisé (BSP)  Port série bufferisé multi-canaux (McBSP)  Port série à multiplexage temporel (TDM) Contrôleur DMA à 6 canaux Port d’interface hôte (HPI) Broches accessibles par software  Broche XF (external flag) en écriture  Broche BIO en lecture Générateur de temps d’attente 16
  16. 16. Architecture interne du CPU 17
  17. 17. Structure interne du CPU 18
  18. 18. Unité de commande Chef d’orchestre du CPU Chargement des instructions  Compteur de programme (PC)  Registre d’instruction  Cache d’instructions Séquençage  Décodage des instructions  Pilotage des autres unités 19
  19. 19. Unités de traitement mathématique Calculs au format fixe  Multiplieur ou flottant  Multiplication et accumulation (MAC) Parallélisme entre les  ALU sous-unités  Opérations arithmétiques, logiques et de conversion entre formats Registres de données  Registre de décalage  pour stocker les opérandes et les résultats  Multiplication rapide par 2k  Unités spécialisées  Compare, Select and Store (Viterbi)  DCT 20
  20. 20. Unités de génération d’adresses Unités de traitement spéciales  Pilotées par le séquenceur  Calculs sur des entiers  Adresses mémoires Méthodes pré-programmées  Incrémentation  Décrémentation  Adressage circulaire  Incrémentation bit-reverse (pour la FFT) 21
  21. 21. Schéma de principe des échangesCPU pilotage Génération Génération Unités de Séquenceur adresses P adresses D calcul programme addr Bus data ctrl addr données Bus data ctrl Mémoire P Mémoire D périphériques 22
  22. 22. Fetch (lecture instruction) Génération Génération Unités de Séquenceur adresses P adresses D calcul programme addr Bus data ctrl addr données Bus data ctrl Mémoire P Mémoire D 23
  23. 23. Read/Write (lecture/écriture donnée) Génération Génération Unités de Séquenceur adresses P adresses D calcul programme addr Bus data ctrl addr données Bus data ctrl Mémoire P Mémoire D 24
  24. 24. Diagramme bloc du TMS320C54x Program/Data ROM Program/Data RAM Mémoire 16K Words 128K Words JTAG Test/ interne D(15-0) Emulation Control MUXBus externe Program/Data Buses Timer A(23-0) MAC ALU DMA Muxed GP I/O 17 x 17 MPY 40-Bit ALU Ch 0 CMPS Operator 8/16-bit Host Port 40-Bit Adder Peripheral Bus (VITERBI) Ch 1 Interface (HPI) Unités de RND, SAT EXP Encoder Ch 2 Multichannel Buffered calcul Shifter Accumulators Serial Port (McBSP) Ch 3 40-Bit ACC A Multichannel Buffered 40-Bit Barrel Ch 4 Serial Port (McBSP) (-16, 31) 40-Bit ACC B Ch 5 Multichannel Buffered Addressing Unit Serial Port (McBSP) Génération 8 Auxiliary Registers PLL Clock d’adresses 2 Addressing Units Generator S/W Waitstate Power Management Generator Entrées SortiesCPU 25
  25. 25. Structure interne du TMS320C54x Source : Texas Instruments TMS320C54x DSP Reference Set Vol 1 : CPU and Peripherals 26
  26. 26. Bus  Le bus programme PB sert à véhiculer les instructions et les coefficients stockés dans la mémoire programme. Ces données sont adressées par le bus d’adresse de la mémoire programme PAB  Trois bus d’accès aux données sont raccordés à l’unité centrale de calcul, à la mémoire de donnée, aux périphérique et aux circuits de générations d’adresse (programme et données). Ces bus CB, DB, et EB véhiculent les données des éléments adressés par CAB, DAB, et EAB respectivement. 27
  27. 27. Génération Génération dadresses dadresses Unité de controle programme données Bus Pprogramme Bus C / D lecture données Bus E écriture données 28
  28. 28. Unité de traitementnt mathématique  Unité arithmétique et logique(UAL)  Multiplieur-Accumulateur (MAC)  Registre à décalage  Unités spécialisées 29
  29. 29. Accumulateurs ALU Shifter ViterbiMAC 30
  30. 30. Unité Arithmétique et Logique (ALU)  Ce bloc effectue des calculs arithmétiques et logique  2 accumulateurs sur 40 bits : 39-32 31-16 15-0 AG AH AL 39-32 31-16 15-0 BG BH BL  Opérations entières et binaires  (+, -, inc, dec, et, ou, xor, shl, ...) 31
  31. 31. Registres IMR Registre Masque d’Interruption TREG Registre Temporaire IFR Registre de Statut d’Interruption TRN Registre de Transition ST0 Registre d’Etat 0 AR0 Registre Auxiliaire 0 (Index) ST1 Registre d’Etat 1 AR1-7 Registres Auxiliaires 1 à 7 PMST Registre de Contrôle de la Mémoire BK Registre d’Addressage Circulaire AL Accumulateur A (0-15) RC Compteur Répétion 1 Instruction AH Accumulateur A (16-31) RSA Première Addresse Répétition Bloc AG Accumulateur A (32-39) REA Dernière Addresse Répétition Bloc BRC Compteur Répétion d’un Bloc BL Accumulateur B (0-15) BH Accumulateur B (16-31) TIM Registre du Timer BG Accumulateur B (32-39) PRD Compteur de la Période de Timer TCR Registre de Contrôle du Timer SP Registre Pointeur de Pile 32
  32. 32. Multiplieur-accumulateur (MAC)  Rôle central dans un DSP  Plus de 50% des instructions Caractéristiques principales  Temps d’exécution = 1 cycle instruction  Structure pipeline  Un résultat par cycle horloge, si le pipeline est bien utilisé 33
  33. 33. Shifter (registre à décalage)  ce registre de 40 bits, sert à cadrer les données en provenant de la mémoire ou bien de l’accumulateur avant une opération dans ALU  Opérations de mise à l’échelle (Scaling) par puissance de deux  Indispensable pour éviter les dépassements de capacité  Son utilisation doit être maitrisée par le programmeur  Réduction de la précision des calculs  Nombre, emplacement et possibilités des Shifters très différents d’un DSP à un autre. 34
  34. 34. Protocole JTAG Permet de piloter les unités internes du DSP Intégré par le constructeur lors de la conception du chip Utile pour le prototypage et le débogage dapplications  Interruption momentanée en cours dexécution Donne accès en lecture/modification aux  Registres internes  Mémoires internes, et éventuellement externes  Ports dentrées/sorties 35
  35. 35. Pipelining Instructions Instruction Instruction 1 segmentées en étages Segmentation Exécution entrelacée de en étages plusieurs instructions  Chacune à une étage différent Fetch F1 Decode D1 Read R1 Géré par le séquenceur Execute X1 Augmentation de la Entrelacement fréquence dhorloge  Etages plus simples donc plus Fetch F1 F2 F3 F4 F5 rapides Decode D1 D2 D3 D4 Read R1 R2 R3 Execute X1 X2 36
  36. 36. Séquentiel vs pipeline étagetemps t1 t2 t3 t4 t5 t6 t7 t8 Fetch F1 F2 Decode D1 D2 Read R1 R2 Execute X1 X2 Exécution séquentielle étage temps t1 t2 t3 t4 t5 t6 t7 t8 Fetch F1 F2 F3 F4 F5 … … … Decode D1 D2 D3 D4 D5 … … Read R1 R2 R3 R4 R5 … Execute X1 X2 X3 X4 X5Chargement du pipeline Exécution avec pipeline 37
  37. 37. Pipelining Exemple du TMS320C54x 6 étages de traitement  Prefetch (P) : Incrémentation du PC (Program Counter)  Fetch (F) : Lecture de l’instruction en mémoire  Decode (D) : Décodage de l’instruction  Access (A) : Calcul des adresses des opérandes  Read (R) : Lecture des opérandes en mémoire et calcul de l’adresse du résultat  Execute (X) : Exécution et écriture en mémoire 38
  38. 38. Retards dans le pipeline Le pipeline atteint son plein rendement une fois qu’il est “plein” Une retard peut se produire  s’il existe un conflit de ressources (retard ponctuel)  accès à la mémoire  utilisation des bus  en cas de rupture de séquence (vidange du pipeline)  branchement non prévu  appel de sous-programme  interruption 39
  39. 39. Exemple de conflit daccès mémoire Programme et données dans une mémoire à 1 accès par cycleP1 F1 D1 A1 R1 X1 P2 F2 D2 A2 R2 X2 P3 F3 D3 A3 R3 X3 P4 -- -- -- F4 D4 A4 R4 X4 -- -- -- P5 F5 D5 A5 R5 X5 -- -- -- P6 F6 D6 A6 R6 Les lectures de données R1/R2/R3 sont en conflit avec les chargements dinstruction F4/F5/F6 Peut réduire les performances dau moins 50% 8
  40. 40. Résolution du conflit daccès mémoireProgramme et donnéesdans des mémoires accès séparés (Bus Programme/Bus Données)ou dans une même mémoire à accès double (DARAM) P1 F1 D1 A1 R1 X1 P2 F2 D2 A2 R2 X2 P3 F3 D3 A3 R3 X3 P4 F4 D4 A4 R4 X4 P5 F5 D5 A5 R5 X5 P6 F6 D6 A6 R6 X6 9
  41. 41. Bilan accès mémoire Program Data SARAM DARAM ROM ROM P Bus Mémoire externe A Interface D Bus C Bus D E Bus A retenir pour éviter les problèmes:  ROM/SARAM - 1 accès par bloc par cycle  DARAM - 2 accès par bloc par cycle 10
  42. 42. TMS320C62X Processeur àvirgule fixecomportant 2multiplieurs, 6 UALset 2 groupes de 16registres de 32 bits Instructions du typeRISC Le processeurpeut effectuer desopérations sur8/16/32 bits dedonnées. 43
  43. 43. TMS320C62X 44
  44. 44. TMS320C62X : groupe opérateursChaque groupe d’opérateurs dispose de : 3 UALs + 1 multiplieur (.L, .S, .D et .M) : .L : opérations arithmétiques et logiques et instruction de branchement. .S : opérations arithmétiques et logiques, de décalage, de branchement et de génération de constantes. .M : multiplieur câblé 16x16 .D : lecture, chargement et opérations arithmétiques. 16 registres de 32 bits non orthogonaux Chaque UAL est contrôlée par une instruction de 32bits. 45
  45. 45. TMS320C62X : groupe opérateurs A0 A1 a1 N A2 x1 Y a n xn A3 prod .M n 0 A4 Y . . MPY .M a1, x1, prod . ADD .L Y, prod, Y . .L A15 32 bits 46
  46. 46. VLIW (Very-Long-Instruction-Word)  Parallélisme géré par le compilateur  Contrôle simple mais compilateur complexe  Microarchitecture simple et performante  Mais taille de code importante  Généralement clusterisé (1 cluster : banc de registres + unités fonctionnelles)  Réduction de la complexité des chemins de données 47
  47. 47. VLIW (Very-Long-Instruction-Word) inst1 inst2 Instruction VLIW inst3 inst4 inst5 inst6 inst7 inst8 48
  48. 48. VLIW : exemple du TMS320C62x Instruction de 128 bits 8 sous-instructions de 32 bits 32 bits 32 bits 32 bits 32 bits 32 bits 32 bits 32 bits 32 bits L1 S1 M1 D1 D2 M2 S2 L2 + + + + + + + x x + 49
  49. 49. Représentation de Nombres Réels La représentation des nombres doit répondre à deux exigences contradictoires:  Précision: intervalle entre deux rationnels codés  doit être le plus petit possible  Dynamique: rapport entre le plus grand rationnel et le plus petit rationnel codés  doit être la plus étendue possible Dans ce contexte les unités de calcul des DSP travaillent  soit en format fixe (notation décimale)  soit en format flottant (notation scientifique) 50
  50. 50. Représentation en format fixe •Aussi appelée représentation à “virgule fixe” Définition "format Qk" : La représentation Qk du réel x correspond à la représentation complément à 2 (C2) de lentier y tel que: y round(2 k x)Propriétés: Partie fractionnaire codée sur k bits Partie entière codée sur N-k bits en C2Q0 désigne le cas particuler des entiers signés en C2 •Exemple: Le binaire 01011101 peut représenter : Q2 : 23.25 Q4 : 5.8125 Q7 : 0.7265625 51
  51. 51. Représentation en Format Fixe • Exemple: Q5 sur 8 bits • Partie entière codé sur 3 bits (dont 1 de signe) • Partie fractionnaire codée sur 5 bits • Valeurs comprises entre -4 et +3.96875 #/Poids -23 22 20 , 2-1 2-2 2-3 2-4 2-5 -4 1 0 0 0 0 0 0 0 -3.96875 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 3.9375 0 1 1 1 1 1 1 0 3.96875 0 1 1 1 1 1 1 1 52
  52. 52. Représentation en Format Fixe Précision: quantification uniforme de pas q q=2-k Dynamique: -2N-k-1 .. 2N-k-1-2-k Pour obtenir une dynamique sur l’intervalle [-1, 1[ ,utiliser le format QN-1 sur N bits Format Q15: sur 16 bits, le format Q15 permet de représenter tous les réels entre -1 et 1 avec une précision q=2-15 53
  53. 53. Représentation en Format Flottant • Aussi appelée représentation en “virgule flottante” est une représentation avec une précision finie, définie selon l’expression E x M 2• La mantisse M est exprimée sur m bits, détermine le nombre deavec un format Qm-1 en complément à 2 chiffres significatifs détermine la• L’exposant E est un entier signé sur e bits dynamiqueen binaire décalé m e N •Opération de normalisation: Pour rendre la représentation unique, M doit satisfaire en outre: 1 M 1 2 54
  54. 54. Représentation en Format Flottant• Exemples en 8 bits 01111 111 1 2 3 4 4 2 1 1 1 2 1 2 1 2 1 2 2 0.9375 2 0.46875 01111 110 1 2 3 4 4 2 0 2 1 2 1 2 1 2 1 2 2 0.9375 2 0.234375 10010 011 1 2 3 4 1 0 2 0 2 1 2 0 2 20 2 1 0.875 23 7 • La mantisse est codée sur 5 bits et l’exposant sur 3 bits en C2 55
  55. 55. Format virgule flottante IEEE 754 Format pour N=32 bits 1 bit 8 bits 23 bitssigne exposant fraction (partie fractionnaire de la mantisse) en binaire décalé C2 avec des codes spéciaux x = (-1)signe (1,fraction)2 2exposant-127 •Cas spéciaux Zéro: tous les bits à 0 Underflow: exposant = 000000002 Overflow: exposant = 111111112 56

×