Une image / un lien ci-dessous est fourni (tel quel) pour télécharger la présentation
Politique de téléchargement : le contenu du site vous est fourni TEL QUEL pour votre information et votre usage personnel ; il ne peut être vendu, concédé sous licence ni partagé sur d’autres sites sans l’accord de son auteur.Le contenu vous est fourni TEL QUEL, pour votre information et votre usage personnel uniquement.Téléchargez la présentation en cliquant sur ce lien.Lors du téléchargement, si vous ne parvenez pas à télécharger une présentation, l’éditeur a peut-être supprimé le fichier de son serveur.Pendant le téléchargement, si vous ne parvenez pas à obtenir une présentation, le fichier a peut-être été supprimé par l’éditeur.
Plan • Historiques et modes graphiques • Architecture-évolution des composants • RAMDAC (CRT/DVI) • Bus • Mémoire • Accélérateur graphique/GPU • Vertex Shader • Pixel Shader
Plan • Historiques et modes graphiques • Architecture-évolution des composants • RAMDAC (CRT/DVI) • Bus • Mémoire • Accélérateur graphique/GPU • Vertex Shader • Pixel Shader
Historique/modes graphiques • 1ère carte graphique: • Par IBM en 1981 • MDAs: Monochrome Display Adapters • Mode texte uniquement 80x25 caractères à 50Hz • Port imprimante • HGC • CGA • EGA • VGA • SVGA • XGA, SXGA, UXGA et autres
Historique/modes graphiques • MDAs • HGC: • Par Hercules (fondée en 1982) • Hercules Graphics Card (compatible MDAs) • Mode graphique monochrome 720x348 • CGA • EGA • VGA • SVGA • XGA, SXGA, UXGA et autres
Historique/modes graphiques • MDAs • HGC • CGA (contre attaque d’IBM): • Mode Graphique Couleur 320x200x4 • Essentiellement jeux vidéos • Manque de résolution pour bureautique • EGA • VGA • SVGA • XGA, SXGA, UXGA et autres
Historique/modes graphiques • MDAs • HGC • CGA • EGA (Enhanced Graphics Adapter): • Par IBM en 1984 • Résolution max: 640x350x16 couleurs • Palette de 64 couleurs • Fréquence de 60Hz • VGA • SVGA • XGA, SXGA, UXGA et autres
Historique/modes graphiques • MDAs • HGC • CGA • EGA • VGA (Video Graphic Array): • Par IBM en 1987 • Résolution 640x480x16 – 320x200x256 • Palette de 262.144 couleurs (6 bits) • 1er standard vidéo à fonctionner en analogique • SVGA • XGA, SXGA, UXGA et autres
Historique/modes graphiques • MDAs • HGC • CGA • EGA • Amélioration du VGA par IBM: • 8514/A (1987):1024x768x256 43.5Hz entrelacé640x480 60Hz non-entrelacé • … • SVGA • XGA, SXGA, UXGA et autres
Historique/modes graphiques • MDAs • HGC • CGA • EGA • Amélioration du VGA par IBM: • XGA (eXtended Graphics Array):Introduit en 1990, successeur du 8514/A512Kb/1Mb VRAM 1024x768x256 – 640x480x16bits • … • SVGA • XGA, SXGA, UXGA et autres
Historique/modes graphiques • MDAs • HGC • CGA • EGA • Amélioration du VGA par IBM: • XGA2: XGA avec fréquence plus élevées1024x768x16bits800x600x24bits • SVGA • XGA, SXGA, UXGA et autres
Historique/modes graphiques • MDAs • HGC • CGA • EGA • VGA • SVGA (SuperVGA): • Basé sur le VGA avec spécif du constructeur • Reconnu standard du mode 800x600 • ‘Video Electronics Standards Association’ propose une interface logiciel standard : le VESA SVGAou VESA BIOS Extension (VBE) • SXGA, UXGA et autres
Historique/modes graphiques • MDAs • HGC • CGA • EGA • VGA • SVGA • SXGA, UXGA… • UVGA (UltraVGA) et XGA: standard 1024x768 • SXGA (SuperXGA): standard 1280x1024 • UXGA (UltraXGA): standard 1600x1200
Plan • Historiques et modes graphiques • Architecture-évolution des composants • RAMDAC (CRT/DVI) • Bus • Mémoire • Accélérateur graphique/GPU • Vertex Shader • Pixel Shader
Architecture • RAMDAC (CRT vs DVI) • Bus • Mémoire • Accélérateur Graphique (2D)/GPU (3D) BUS Accélérateur Graphique GPU Mémoire centrale Mémoire vidéo DVI RAMDAC CRT
Architecture BUS Accélérateur Graphique GPU Mémoire centrale Mémoire vidéo DVI RAMDAC CRT • RAMDAC (CRT vs DVI) • Bus • Mémoire • Accélérateur Graphique (2D)/GPU (3D)
Architecture - RAMDAC • « Random Access Memory Digital to Analogic Converter » • Numérique -> Signal analogiquepour périphérique CRT(Cathotique Ray Tube) • Fréquence interne liée à la fréquence de rafraîchissement du moniteur • Accès à la mémoire vidéo (« framebuffer »)
Architecture - RAMDAC Du « framebuffer » au RAMDAC: Le RAMDAC peut recevoir les formats suivants: • «True Color»: 1 octet/composante => 24bits • «HiColor»: 5bits (rouge et bleu)-6bits (vert) =>16 bits (65536 couleurs)ou 5 bits/composante => 15 bits soit 2 octets (32768 couleurs) • RGBA: «True Color» avec canal Alpha (32 bits) • Fausses Couleurs: Indexation d’une palette de couleur (24bits/couleur) => envoi des couleurs indexées
Architecture - RAMDAC • Persistance rétinienne => rémanence visuelle => effet d’animation (25Hz – 30Hz) • Fréquence de rafraîchissement de l’image au minimum 50Hz (entrelacé*)Confort des yeux à fréquence >= 72Hz => Fréquence interne élevé (en Mhz) => Accès mémoire très fréquent *: Affichage des lignes paires puis impaires
Architecture - RAMDAC Calcul théorique de la fréquence interne: • Taille de l’écran: largeur x hauteur • Fréquence visuelle (ex: 75Hz): freq Freq. interne=largeur x hauteur x freq x 1.32 Raison du facteur 1.32: Canon à électron perd ~32% du temps pour les déplacements horizontaux et verticaux
Architecture - RAMDAC • Exemples: • ATI Radeon 9800: Bi-RAMDAC 400Mhz • 1600x1200 -> 120Hz (pas de 160 Hz !!) • 2048x1536 -> 85Hz (pas de 90 Hz !!) • nVidia GeForce FX 5900: Bi-RAMDAC 400Mhz • 2048x1536 -> 85Hz (pas de 90 Hz!!) • Pour assurer une résolution 1600x1200 à 85Hz,il faut un RAMDAC d’au moins: 1600x1200x85x1.32 Hz = 205 Mhz • Problème actuel: Limitation du moniteur !!
Architecture - RAMDAC • DVI (Digital Video Interface) • Specif. par ‘Digital Display Working Group’(DDWG) • Accomodation pour périph. digital ET analogique • 3 normes: • DVI-A: signaux analogiques en sortie • DVI-D: signaux digitaux en sortie • DVI-I (‘Integrated’): fait pour les 2 types de sortie • DVI-D & DVI-I: périph. digital (écran plat…) => Pas de RAMDAC !
Architecture BUS Accélérateur Graphique GPU Mémoire centrale Mémoire vidéo DVI RAMDAC CRT • RAMDAC (CRT vs DVI) • Bus • Mémoire • Accélérateur Graphique (2D)/GPU (3D)
Architecture - Bus • ISA (Industry Standard Architecture ): • 1981: 8bits à 4.7Mhz (sur les 8086) • 80286 (1984) => 16bits 6Mhz (puis 8Mhz) • Débit max de 5.5Mo/s • Goulet d’étranglement dès l’arrivé du 80386 Les - : Le bus le + lent !! Les +: Facilement utilisable & peu coûteux
Architecture - Bus • MCA (Micro Channel Architecture): • Développé et utilisé par IBM (avec ses PS/2) • Incompatible avec l’ISA => Monopole d’IBM • 1er bus à 32bits - 10Mhz (40Mo/s) • EISA (Enhanced ISA) 1988: • Développé par des constructeurs(Compaq…)pour contre-attaquer le MCA d’IBM • Architecture 32bits, compatible ISA 8/16bits • 8.33 Mhz (compatibilité ISA) - 33 Mo/s • Utilisation: application lourde (Serveurs de fichier…)
Architecture - Bus • VLB (VESA Local Bus): • En 1992 par « Video Electronics Standards Association » • Extension du bus local du processeur (port ISA étendu) • Spécifique aux cartes graphiques • Largeur: 32 bits • Fréquence externe du processeur: ~33-50Mhz • Débit: 130Mo/s (40Mo/s en pratique) • VLB 2.0 fonctionne en 64bits
Architecture - Bus • PCI (Peripheral Component Interconnect): • En 1993 par Intel en réponse au VLB • PCI 1.0: 32bits - 33Mhz => 132Mo/s (le + courant) • PCI 2.0: 64bits (33,66,133Mhz) pour serveurs ! • Meilleur que le VLB car certaines fonctionnalités: • Bus Master (transfert direct entre 2 périph. PCI) • ‘Look Ahead’ (anticipation) • ‘buffering’ (stockage temporaire de l’information => meilleur débit… • Incompatible avec l’ISA => Slots PCI+ISA • Devenu un standard, mais goulet d’étranglement !
Architecture - Bus • Port AGP (Accelerated Graphics Port): • Fin 1997 par Intel (palier au pb du PCI) • Spécifique aux cartes graphiques • Basé sur le standard PCI2.1 => 66Mhz • Architecture 32 bits • Version Pro : 110W (au lieu de 50W)
Architecture - Bus • Port AGP: • Bus Mastering (accès direct à la mémoire) • Pipelining: requête en série ( PCI attente d’ack) • SBS (Side Band Signaling) ou SBA(Side Board Adressing): 32bits du bus + 8bits (broches latérales) pour le contrôle (requêtes) et la synchro AGP<->Carte graphique • 2 modes de fonctionnement: • Mode DMA ou PIPE(local texturing): accès direct à la mémoire centrale • Mode DIME (Direct Memory Execute): traitement des textures en mémoire centrale
Architecture - Bus • Port AGP: • 1x: débit de 264Mo/s (codage sur les fronts montant) • 2x: débit de 528Mo/s (codage sur les deux front) • PIPE: envoie donnée+contrôle multiplexé… • SBA: envoie donnée+contrôle démultiplexé • 4x: débit 1Go/s (double les infos sur chaque front) • => mémoire suffisamment rapide (DDR ou RAMBUS) • «Fast Write»: accès direct mémoire vidéo • 8x: débit 2Go/s (quadruple les infos sur chaque front)Mais gain minuscule de 5% par rapport au 4x.
Architecture - Bus • Demain: PCI-Express • Très peu d’informations • PCI en série • Très performant !! • ?
Architecture BUS Accélérateur Graphique GPU Mémoire centrale Mémoire vidéo DVI RAMDAC CRT • RAMDAC (CRT vs DVI) • Bus • Mémoire • Accélérateur Graphique (2D)/GPU (3D)
Architecture - Mémoire • Importance du débit:Un écran de 1024x768x24bits à 70Hz => débit de 1024*768*3*70=157Mo/s • Multiple accès:Processeur graphique & RAMDAC => latence • DRAM (DynamicRAM): • Type FPM (Fast Page Mode): Rafraîchi très souvent=>latence(+asynchrone)=>accès en 70ns • 225Mo/s (33Mhz-50Mhz) • La plus lente et dépassé
Architecture - Mémoire • DRAM EDO (DRAM Extended Data Out): • 400Mo/s (inadaptée pour des fréquence > 66Mhz) • Accès réduit à 50-60ns (système de cache de l’adresse de la prochaine cellule à lire/écrire) • Surtout employé par 3DFX (Diamond Monster 3D et Diamond Monster 3D II) mais aussi par S3 (Virge 3D). • VRAM (VideoRAM): • 625Mo/s (30% + chère que DRAM) • Jusqu’à 80Mhz - Temps d’accès 20-25ns • « Dual Port » (grâce à 1 registre à décalage)
Architecture - Mémoire • WRAM (WindowsRAM): • 960Mo/s • VRAM avec circuit 32 bits (accessible par bloque) • Fonctionnalités 2D (transfert de mémoire…) • Matrox avec sa Millennium II • MDRAM (Multi-bankDRAM): • Accès simultanés • 500 Mo/s • Cartes S3, Hercules Dynamite 128, Tseng Labs ET 6000
Architecture - Mémoire • SDRAM (SynchronousDRAM): • Apparue en 1997 • Synchronisée avec le bus mémoire • Temps d’accès: 10-12ns • Fréquence 66Mhz à 133Mhz • 500,800,1.060 Mo/s -> 66,100,133Mhz
Architecture - Mémoire • SGRAM (SynchronousGraphicRAM): • SDRAM optimisée pour le graphique • « Single Port » • Synchronisée au bus mémoire (<=100Mhz) • Exemple: « Matrox Mystique » • Techniques: • «Masked write»: modif en 1 cycle • Mode rafale ou «Block write»: récupération et modification par bloque entier
Architecture - Mémoire • RAMBUS • Soutenue par intel • A 300Mhz, 1,2Go/s • A 400Mhz, 1,6Go/s • Enorme latence
Architecture - Mémoire • DDR-SDRAM(Double Data RateSDRAM): • 2 informations transferées par cycle: • Front montant • Front descendant • Temps d’accès: 6ns • Fréquence de 100Mhz à 200Mhz • Débit de 1.5Go/s à 3Go/s • Exemple: GeForce FX (DDR400)
Architecture BUS Accélérateur Graphique GPU Mémoire centrale Mémoire vidéo DVI RAMDAC CRT • RAMDAC (CRT vs DVI) • Bus • Mémoire • Accélérateur Graphique (2D)/GPU (3D)
Architecture – 2D • Ancêtre des accélérateurs Graphiques: • Cartes à coprocesseur graphique (carte programmable) • Début 90 avec TIGA (TMS34020), ou P9000 (Carte Diamond Viper) • Dépassé ensuite par les cartes accélératrices • MAIS principe d’architecture graphique programmable réutilisé + tard en 3D
Architecture – 2D • Accélération des traitements 2D:ligne, rectangle, curseur souris, overlay, bitBLT • Décompression MPEG2 (DVD) • Tuner TV • Acquisition vidéo • Cartes 2D seules n’existent plus • Carte 3D pure (3dfx voodoo) • Maintenant, carte 2D/3D
Architecture – GPU (3D) • Pipeline de rendu 3D (triangle en entrée): • Transformation et éclairement • Culling, clipping,… • Triangle setup • Texturing, Fog • Rasterization (Alpha, Stencil, Depth test -> Alpha blending -> Dithering -> Channel mask) -> Framebuffer
Architecture – GPU->Transform • « Planter le décors »: • Placer l’objet courant dans la scène par rapport à la caméra… • Opérations matricielles 3d (homogène) • Translations, rotations, mise à l’échelle, projection
Architecture – GPU->Lighting • Modèle de Phong • Éclairement ambiant • Propriété générale de l’environnement • Éclairement diffus • Existe pour chaque source lumineuse • Éclairement spéculaire • Existe pour chaque source lumineuse
Architecture – GPU->Lighting • Éclairement spéculaire: • Csf=sum( Cs*Lis* (v.ri) ) • Mais r=2(n.ldir)n-ldir (coûteux) n v r ldir => formule de Blinn-PhongCsf=sum( Cs*Lis* (n.hi) )avec h = ldir+v / |ldir+v| n h v ldir
Architecture – GPU->culling, clipping… • Culling: Orientation de la face (Counter Clock Wise) • Clipping: Découpe du triangle dans le volume de vision (frustum) • Projection sur l’écran (division par w) • Viewport mapping (coordonnées écran)
Architecture – GPU->triangle setup • Préparation des données pour l’étage du calcul des couleurs: • Délimitation du triangle par ses bords pour chacune de ses lignes (scanline) • Interpolation linéaire des données le long des bords (couleurs, z, coordonnées de textures…)
Architecture – GPU->Calcul de la couleur • Combinaisoncouleur d’éclairement / textures • Filtrage des textures (bilinéaire, tri linéaire…) • Différentes possibilités de combinaison • Possibilité de combinaison différente à chaque étage de texture (=> possibilité de gérer un bump-mapping) • Effet de brouillard (fog)
Connexion au compte
Connectez-vous pour publier votre contenu sur SlideServe.