2024. április 26., péntek

Gyorskeresés

Emotion Engine - egy mérnöki remekmű

  • (f)
  • (p)
Írta: |

Egy kis betekintést nyújtok Nektek a méltán sikeres PlayStation 2 központi magjába :)

[ ÚJ TESZT ]

A proci maga

Az Emotion Engine (innentől EE) köztudottan a méltán sikeres PlayStation 2 központi processzora amit a Toshiba és a Sony közösen fejlesztett ki. Az EE tulajdonképpen egy MIPS R5900-as processzor felturbózva pár aprósággal: bónusz két vektor (lebegőpontos) társprocesszor (128bitesek), memória kontroller, DMA (közvetlen 10 csatornás memóriahozzáférő), FPU, képfeldolgozó egység, és egy grafikus interfész. Az egész prockó SIMD szervezésű

A MIPS R5900-ról annyit érdemes még tudni, hogy 10,5 millió tranzisztorból áll, 16Kb L1 Chache-ja van és két ALU-t foglal magában ami a kétutas szuperskalát tagja és egy órajel alatt 64 bitnyi adatot dolgoznak fel fejenként. Ez annyit tesz, hogy a szuperskalár két ALU-ja fixpontos feldolgozóegység és így 2x64 bitnyi adatot dolgoznak fel párhuzamosan (tehát 128 bitet).
A procinak mosolyogtatóan alacsony az üzemfrekvenciája: mindössze 295MHz. De nem szabad őt se lebecsülni. Ez a cikk éppen azért készült, mert sokan azt mondták a PC-sek közül, hogy az ő Pentium 4 processzoruk sokkal gyorsabb. Mivel a konzolos barátom, összeveszett az egyik PC-hívő haverommal ez ügyben, ezért én néztem utána mit is tud az EE. Meglepő adatok láttak napvilágot: az EE simán felveszi a versenyt egy Pentium 4 3GHz-s modelljével (Northwood), sőt kb. a háromszorosát nyújtja! Egy Athlon MP 1800 összteljesítménye 1.64 GFOLPS egy 3GHz-s Northwood P4-nek 1.98 GFOLPS (P3-800MHz - 0,284 GFOLPS, Athlon TB 1GHz - 0,486 GFLOPS), míg az EE 6.2 (!) GFLOPS lebegőpontos összteljesítménnyel bír. Hiába no, a két ALU+FPU+2 vektor egység megteszi ám a dolgát. A két vektorprocinak is van ám gyorsítótára: VU0 - 2x8Kb VU1 - 2x16Kb.

] Itt már a Graphic Synthesizerrel egybeépítve (V13)

A Sony szerint azért volt szükség a két vektorprocira, mert sok más feladat mellett ezek végzik a T&L feladatokat is: a VU0 végzi a felületek tesszallációját, azaz létrehozza a testeket alkotó poligonokat, majd ezeket továbbküldi a VU1-nek ami elvégzi a poligonok képernyőre transzformálását és (ha kell) megvilágítja azokat, ezután a Graphic Synthesizer (a PS2 grafikus procija) ráfeszíti a textúrákat a 3d-s testekre és elvégzi a szükséges effektek kiszámolását illetve bump mappingolja a felületeket.
A hangkeltés is az EE dolga: ezt a feladatot bármeik részegységre rábízhatják (FPU, VU0, VU1), de sajnos ez nem olyan jó dolog mint ahogy az elsőre hangzik: a hangkeltés sok más fontosabb feladattól is elvonhatja az erőforrást. Ezért is van az a gond, hogyha egy fejlesztőcsapat Dolby Digitalban akarja megszólaltatni játékát, akkor igencsak megnyírbálják az erőforráskészletet és ezért van az, hogy a játékok többsége "csak" ProLogic II-es hangzással mennek.
Az EE része még a memória kontroller és a DMA is ami igencsak kifinomult (3,2GB/s) sebességgel biztosítjaaz adatok áramlását a 32Mb 400MHz-es 16bites Direct RAMBUS DRAM (dynamic random acces memory) felé. A RAMBUS egyébként kétcsatornás üzemmódban működik, így 32bites, 800MHz-es az egész. Továbbá még rendelkezik az EE MPEG-II dekóderrel is és ezen felül támogatja a DVD-VIDEO formátumot is (sokan csak emiatt vettek PS2-t).

Összességében nézve az EE egy igen átgondoltan megépített erős, nagy teljesítményű és qurv@ nehezen programozható központi egység:) Nem véletlen, hogy a Sony rengeteg pénzt ölt bele a kikutatásába és legyártásába, mert így a PlayStation 2 a lehető legbiztosabb alapot kapta meg arra, hogy erős és jó tudású otthoni szórakoztató központ váljék belőle. Én fejet hajtok a Toshiba és a Sony mérnökei előtt hisz egy remekmű, ráadásul teljes egészében 128bites. Ezzel egyébként ez az első tömegtermékbe szánt iylen processzor.

Ebbe suvasztották bele :)

És a végére egy kis hivatalos rizsa:
-Órajel: 294,912 MHz
-Utasításkészlet: MIPS III, MIPS IV alrész, 107 vektor utasítás
-Chache:8kb adatchache, 16kb utasításchache (2utas)
-Scratchpad RAM: 16kb
-Fordítást elkerülő tároló (TLB): 48pontos kombinált utasítás/adat
-Vektor processzor: 4 FMAC egység,1 FDIV egység
-Vektor feldolgozó egység regiszterek: 128bit wide, 32pontos
-Képfeldolgozó egység: MPEG2 makroblokk réteg dekóder
-Közvetlen elérésű memória (DMA): 10 csatorna
-Belső adatbusz: 128bit, 150MHz, 1,2GB/s maximális effektív sebesség
-Memóriabusz: két 16bites, 400MHz DRDRAM csatorna, 3.2GB/s (max. elméleti sebesség)
-Gyártástechnológia: 0,18 micron
-Feszültség: 1,8 V
-Fogyasztás: 15W, 1,8 Volton
-Tranzisztorok száma: 10,5 millió
-Chip területe: 240 mm2
-Lebegőpont: 6,2 milliárd egyszeres pontosságú (32bit) lebegőpontos művelet másodpercenként
-Geometriai teljesítmény: 66 millió poligon/s, világítással és köddel: 36 millió poligon/s
-Képtömörítés: 150 millió pixel másodpercenként

Köszönöm, hogy végigolvastátok a cikket!
Kommenteket várok ;)

Források:
Kútfő (gyk. saját tudás, tapasztalat)
GameStar magazin
Wikipedia

Hirdetés

Copyright © 2000-2024 PROHARDVER Informatikai Kft.