Top Banner

Click here to load reader

Cell Procesor

Jun 19, 2015

ReportDownload

Documents

igor-prsa

UNIVERZITET U BIHAU TEHNIKI FAKULTETElektrotehniki odsjek Informatika

Seminarski rad iz predmeta: Arhitektura raunara Cell procesor(Cell Broadband Engine Architecture)

Studenti: Igor Pra Aladin Halilagi

Br. Indexa: 173 177

SadrajSadraj ................................................................................................................................. 1 Uvod ..................................................................................................................................... 2 Moor-ov zakon................................................................................................................... 2 Arhitektura Cell procesora ................................................................................................. 3 PPE (Power Processing Element) ..................................................................................... 5 SPE (Synergistic Processing Element) .............................................................................. 6 SPU (Synergistic Processing Unit)................................................................................. 7 SPU Pipeline ................................................................................................................. 8 Lokalna memorija (Local Store) ..................................................................................... 9 MFC (Memory Flow Controller).....................................................................................10 EIB (Element Interconnect Bus)........................................................................................12 Ulazno/izlazno suelje FlexIO........................................................................................13 MIC (Memory Interface Controller) ...................................................................................14 Programiranje Cell procesora ...........................................................................................15 Pervasively Data Parallel Computing................................................................................15 Data-parallel conditional execution ...................................................................................16 Aplikacije za Cell procesor................................................................................................17 Zakljuak.............................................................................................................................19 Literatura.............................................................................................................................20

1

UvodGlavno podruje razvoja novih procesora je orjentirano na kompatibilnost i kontinuiranost. Stoga je trite procesora dominirano sa x86 kompatibilnim procesorima ve gotovo dva desetljea. Nekoliko novih koncepata je pokualo stei neki udio u tritu, ali nisu bili u stanju prevladati stari koncept kompatibilnosti. Cell procesor je novi pokuaj u iskoritavanju rastueg broja tranzistora po ipu na efikasan nain. Novi procesor je namijenjen za trite igraih konzola i potroake elektronike radi poveanja kvalitete ovih proizvoda. Ovaj pristup vodi do irenja i ako svatko ima dva ili vie cell procesora u televizoru, igraoj konzoli ili PDA, pojavljuje se interesantno pitanje: ta je mogue uraditi sa ovim procesorom? Razvoj procesora je poeo 2000. godine, kada su tri kompanije Sony, Toshiba i IBM osnovale istraivaku grupu sa ciljem razvoja novog procesora koji bi odgovarao zahtjevima multimedijalnih aplikacija. Sony je imao iskustvo u dizajniranju procesora i programiranju kroz razvoj Play Station 1 i 2 igraih konzola. Njihova vizija je bila postii da Play Station 3 (PS3) bude bri 100 puta od prethodnika PS2. Toshiba je nudila iskustvo u podruju razvoja i proizvodnje u velikim koliinama. IBM predstavlja tradicionalnog proizvoaa i dizajnera procesora, pogotovo u 90nm SOI tehnologiji sa bakarnim oienjem. Sve tri kompanije su imale budue planove za koritenje ove nove tehnologije, Sony je elio ugraditi Cell u PS3, Toshiba u HDTV ureaje i IBM u servere i radne stanice. Njihov cilj je bio napraviti vienamjenski procesor sa visokim taktom i visokom propusnou. Postojalo je vie razloga da se ne izabere klasian x86 nego potpuno novi dizajn. Memorijska latencija je prilino visoka u tradicionalnom x86 dizajnu, zbog postojanja von Neumann-ovog uskog grla izmeu procesora i memorije. Druga negativna injenica je poveana instrukcijska latencija zbog kompleksne logike za rasporeivanje instrukcija pri izvravanju van reda (out of order execution) i sloja kompatibilnosti koji prevodi ISA CISC (x86) instrukcije u RISC instrukcije unutar same jezgre. Ke memorijska hijerarhija zauzima mnogo prostora na ipu te je teka za kontrolu programerima. Sve navedene osobine modernih procesora vode do relativno dugog kontrolnog logikog puta koji ograniava maksimalni takt koji se moe postii.

Moor-ov zakonMoor-ov zakon tvrdi da se broj tranzistora na ipu udvostrui svaki 18 mjeseci. Time se postavlja pitanje, ta uraditi sa svim tim novim tranzistorima? Mogu li oni uiniti brim procesor? Odgovor je ne, oni ga mogu uiniti irim. Mnogi proizvoai procesora pokuavaju poboljati brzinu procesora radei posao paralelno, praktino izvoei vie procesorskih instrukcija paralelno. Ali pri tome se pojavljuju zavisnosti u podacima koje onemoguuju ovakav rad. Ako procesorska instrukcija obrauje podatak koji prethodna instrukcija daje kao izlaz one se nemogu izvravati paralelno. Postoji vie trikova za pronalaenje vie paralelizma u kodu, kao to je super-skalarno izvoenje van reda koji veinom koristi Tomasulo-vu emu ili spekulativno izvravanje. Ali sve ove eme uvode veu sloenost u kod i poveavaju kritini put. Time se ograniava frekvencija takta (jer se najdui put mora nanovo uitavati svakog ciklusa) i poveava latencija instrukcija. Pipeline pomae maskirajui instrukcijsku latenciju i poveavajui ciklus sata dijelei kritini put u vie dijelova, ali uvodi probleme zastoja, pranjenja i ponovnog punjenja. Svi ovi problemi su dobro poznati dananjim arhitektima procesora i vode do efekta da dvostruki broj tranzistora daje samo 1,4 puta bolju preformansu. To je efektivno veliko rasipanje tranzistora svake godine. Novi koncepti viejezgrenih procesora su uvedeni da bi odgovorili na to pitanje i dajui zadatak programeru u paralelizaciji koda.

2

Arhitektura Cell procesoraArhitektura Cell procesora je patentirana od strane Ken Kuturagi-ja iz kompanije Sony 1999. godine. On je napravio razliku izmeu softverske i hardverske elije (cell). Softverska elija je program sa pridruenim podacima, a hardverska elija je izvrna jedinica sa mogunosti izvravanja softverske elije. U osnovnom dizajnu on nije utvrdio nikakvu fiksnu arhitekturu, softverske elije mogu slobodno plutati okolo i biti obraene na bilo kojoj dostupnoj hardverskoj eliji. Vie ovakvih hardverskih elija mogu stvoriti vei elijski raunar (sam po sebi). Naravno ovo je samo arhitektonska vizija, procesori u realnom svijetu su vezani za jedan ip i plutajue elije su jo uvijek samo fikcija. Osnovni princip Cell procesora je isti, te se on sastoji od: PPE (PowerPC Processing Element) koji se ponaa kao glavni procesor za rasporeivanje zadataka (softverskih elija), MFC (Memory Flow Controler) koji slui kao suelje izmeu izvrnih i memorijskih jedinica, Vie SPE (Synergistic Processing Elements), koji su hardverske elije sa vlastitom memorijom, i EIB (Element Interconect Bus) preko koje su svi elementi povezani u jedinstven sistem.

Slika 1. Blok dijagram Cell procesora.

Iz ovoga se moe zakljuiti da je Cell procesor kombinacija PowerPC procesora sa 8 malih vektorskih procesora (koprocesora). Sve ove jedinice su povezane preko EIB (Element Interconect Bus) sabirnice i komuniciraju sa vanjskim ureajima ili drugim procesorom preko FlexIO suelja. Ovaj procesor nudi 256 GFlop operacija sa pominim zarezom jednostruke preciznosti. U nastavku rada e biti opisane svaka od komponenti posebno, sa posebnim osvrtom na SPE jedinicu jer ona prestavlja glavnu osobinu ovog Cell procesora.

3

Slika 2. Detaljniji prikaz unutranje organizacije Cell procesora.

Prototip je proizveden sa 90nm SOI tehnologijom i 8-slojnim bakrenim oienjem. Sastoji se od 241 miliona tranzistora na ipu povrine 235 mm i troi 60-80 W. Radni takt procesora je 4 GHz pri naponu od 1,1V. IBM virtualizacijska tehnologija je ukljuena u PPE.

Slika 3. Fotografija prototipa Cell procesora sa naznaenim dijelovima.

4

PPE (Power Processing Element)PPE je dvo-nitni 64-bitni RISC procesor opte namjene koji odgovara specifikacijama PowerPC arhitekture verzija 2.02, sa Vector/SIMD Multimedijalnim Ekstenzijama (VMX), koje su usporedive sa SSE ekstenzijama kod x86 procesora. Njegova arhitektura je veoma jednostavna da bi omoguavala visok radni takt. Stoga, on koristi samo izvoenje u redu sa dubokim super skalarnim dvosmjernim pipelinom koji ima vie od 20 stepeni. Programi pisani za PowerPC 970 procesor se mogu izvoditi bez modifikacije na Cell procesoru. PPE se sastoji od dvije glavne jedinice, PPU (Power Processor Unit) i PPSS (Power Processor Storage Subsystem), kao to je prikazano na slici. PPE je odgovoran za cjelokupnu kontrolu sistema. On izvrava operativni sistem za sve aplikacije koje rade na Cell procesoru.

Slika 4. Osnovni blok dijagram PPE jedinice.

PPU jedinica vri kontrolu i izvravanje instrukcija. Ona ukljuuje cijeli set 64-bitnih registara PowerPC procesora, 32 128-bitna vektorska registra, 32 KB instrukcijski ke prvog nivoa i 32 kB podatkovni ke prvog nivoa, jedinicu instrukcijske kontrole, load-store jedinicu, jedinicu za cjelobrojno raunanje, jedinicu za raunanje sa pominim zarezom, vektorsku jedinicu, jednicu sa predvianje grananja te jedinicu za kontrolu virtuelne memorije. PPU podrava istovremeno izvravanje dvije niti i moe se posmatrati kao dvo ulazni multiprocesor sa dijeljenim tokom po