![]() | ![]() |
![]() |
| ![]() |
| ||||||||||||||||
Projektovanje i proizvodnja mikroprocesora
Uzevši u obzir relativno kratko vreme od pronalaska mikroprocesora, deluje pomalo neverovatno dokle je razvoj modernih mikroprocesora uspeo da stigne
Glavni zakon koji diktira razvoj mikroprocesora, kao i praktično cele industrije čipova, formulisao je Gordon Mur (Gordon Moore), jedan od osnivača „Intela”. Mur je utvrdio zakonitost po kojoj se broj tranzistora (osnovnih elemenata) u čipovima udvostručuje svakih 18 meseci. Na prvi pogled to ne deluje upečatljivo, dok se ne sagleda da proizvodnja mikroprocesora ovu zakonitost prati već više od 35 godina! Da bismo shvatili gotovo neverovatne posledice Murovog zakona, dovoljno je da izvršimo malu računicu: ukoliko uzmemo 1973. godinu za početnu tačku u razvoju (Intel 8008 koji se smatra prvim „ozbiljnim” mikroprocesorom lansiran je 1972. godine), do 2000. je prošlo 27 godina, odnosno 27 x 12 = 324 meseci, tako da se za to vreme broj tranzistora na čipu udvostručio 18 puta! Obratite pažnju da to nije 2 x 18 već 218, odnosno 262 144 puta! Ova zavisnost nije apsolutno precizna, tako da se u nekim periodima razvoj odvijao nešto sporije, ali krajnji je rezultat da moderni mikroprocesori imaju desetine miliona tranzistora. Na primer, najnoviji „Intelov” Pentium 4 ima ih 42 miliona! Ne treba zaboraviti da su, pored toga što su neuporedivo složeniji, moderni procesori i neuporedivo brži: Intel 4004 je radio na frekvenciji od 200 kHz, dok najnoviji Pentium 4 radi na 1,5 GHz, dakle 7500 puta brže! Svi ovi podaci pokazuju ogroman progres koji je napravljen u relativno kratkoj istoriji razvoja mikroprocesora.
Inače, proces proizvodnje procesora zahteva hiljadama puta veću čistoću od najčistije operacione sale. Radnici moraju da koriste specijalna odela sa filtracijom pošto i najmanja nečistoća (na primer: u poređenju sa integrisanim tranzistorima, vlas kose deluje kao balvan) može da dovede do gubitka od jednog ili više wafera, tj. ploča sa stotinama mikroprocesora vrednih stotine hiljada dolara. Drugi interesantan podatak jeste način na koji se mikroprocesori dele po brzini. Može da bude pomalo iznenađujuće da se svi procesori iste generacije, iako različitih brzina, prave zajedno, istim procesom. Određivanje brzine vrši se testovima kojima se proverava koja je najveća brzina na kojoj svaki primerak može da radi u okviru specifikacija. Testovi moraju brzo da se izvrše kako se ne bi usporavala proizvodnja, pošto je, kao što smo već videli, vreme veliki novac u ovom biznisu. Pored toga što su vremenski limitirani, testovi moraju da zadovoljavaju rigorozne specifikacije mnogih električnih i ostalih parametara, npr. zagrevanje, nivo električnih šumova, tolerancije u naponima ulaznih i izlaznih signala, brzina rasta i pada signala itd. Većina ovih parametara je analogna po prirodi, što znači da postoji mnogo vrednosti parametara koji ne zadovoljavaju specifikacije, ali unutar kojih će sistem ipak raditi. Ovo je jedan od glavnih razloga zašto procesori mogu da se „overklokuju”: uslovi pod kojima rade u sistemu mogu da budu izvan specifikacija, ali da se ipak pravilno interpretiraju u digitalnom domenu. Na primer: specifikacija može da zahteva da nivo logičke jedinice bude 85% Vcc (napona napajanja). Međutim, procesor će praktično uvek uspeti da pročita ovaj signal kao logičku jedinicu i ako je nivo 75% ili čak i manji. U ovom konkretnom primeru razlika između 75% i 85% je tzv. margina šuma („noise margin”) koja obezbeđuje da procesor pravilno očita signale u prisustvu šumova iz raznih izvora. Overklokovani procesori će raditi sa većom verovatnoćom greške i kraćim rokom trajanja, tj. povećanom verovatnoćom katastrofalnog problema (npr. prekidanje metalne linije zbog elektromigracije). Mnogi korisnici ipak su spremni na takve kompromise. Inače, jedan od glavnih parametara koji određuje cenu procesora je tzv. „yield” tj. procenat ispravnih procesora na waferu. Što je procesor fizički manjih dimenzija, to može da se napravi više procesora na jednom waferu i manja je verovatnoća da će da bude mnogo neispravnih procesora. Zbog toga proizvođači pokušavaju da naprave procesor što je moguće manjim, da bi povećali profit. S druge strane, dizajneri i arhitekti žele što veći procesor da bi u njega mogli da stave što više funkcija i brzih keš memorija. Veličina procesorske pločice („die”) određuje cenu te zbog toga, na primer, Pentium III staje oko 300 dolara, dok procesori za servere kao što je Pentium III Xeon i Sun Ultrasparc koštaju na hiljade dolara. Jedan od najvećih problema s kojima se suočavaju dizajneri u razvoju modernih procesora jeste potrošnja električne energije („power dissipation” ili „power consumption”). Utrošena energija pretvara se u toplotu koja ima veoma nepoželjne efekte i može da dovede do katastrofalnih posledica ukoliko se ne kontroliše. Na primer, moderni procesori troše preko 50 W pri maksimalnom opterećenju. Athlon na 1,2 GHz troši 76 W, a Pentium 4 na 1,4 GHz troši 55W). Uzevši u obzir da je veličina procesorske pločice veoma mala (na primer, Intel Pentium III je 106 mm2, a Athlon 117 mm2), gustina toplote je mnogo veća nego, recimo, na ringli šporeta koja radi punom snagom! Naravno, procesor neće da radi na istoj temperaturi kao ringle pošto se neprestano hladi preko malih ventilatora. Međutim, bez intenzivnog i neprestanog hlađenja procesor bi se jednostavno istopio! Problem potrošnje struje nalazi se u prvom planu i ostaće jedan od najvećih problema zbog toga što iz Murovog zakona sledi da će potrošnja električne energije morati da raste, pošto raste i broj tranzistora u procesoru. Jasno je da, iako možemo da zamislimo procesore sa, recimo, 100 puta više tranzistora (kao što smo videli, broj tranzistora se do sada u istoriji povećao više hiljada puta), u tehnologiji koja je trenutno dostupna nemoguće je napraviti procesor koji bi trošio 100 puta više električne energije, tj. 5500 W, što bi inače bilo kao šporet sa svim ringlama i rernom uključenom punom snagom u isto vreme! Naravno, postoje metodi kojima se utiče na potrošnju. Najefektniji način smanjivanja potrošnje je preko smanjenja napona napajanja. Formula za potrošnju električne energije procesora je P = CU2f tj. potrošnja je direktno srazmerna ukupnom parazitnom kapacitetu tranzistora koji menjaju nivoe signala („switched capacitance”), kvadratu napona napajanja i frekvenciji. Zbog kvadratne zakonitosti, ukoliko npr. duplo smanjimo napon napajanja, potrošnja će se smanjiti četiri puta! Zbog toga postoji težnja da se napon napajanja smanji što je više moguće, ali donja granica je određena nivoima električnih šumova („noise margin”) u procesoru. Drugi bitan problem vezan je za jačinu struje koju procesor „vuče”. Na primer, procesor koji troši 60 W sa naponom napajanja 1,5 V vući će čitavih 40 A! Ako to uporedimo s našim primerom (šporetom), on će pod punom snagom povući oko 30 A, 25% manje! Isporuka ovoliko jake struje predstavlja veoma važan problem koji mora da se reši detaljnim i pažljivim dizajniranjem. Pored jačine struje, problem je i u brzini promena. Pošto procesor izvršava razne instrukcije u svakom ciklusu, a te instrukcije imaju različitu potrošnju, jačina struje se drastično menja iz ciklusa u ciklus. Da bismo uvideli prirodu ovog problema, moramo uzeti u obzir da ciklus procesora frekvencije 1 GHz traje samo 1 ns (nanosekundu, milijarditi deo sekunde). Električni zakon koji određuje ovaj problem (napon na induktivitetu) je U = L di/dt Ukoliko zamislimo slučaj da procesor naglo promeni struju iz jednog do drugog ciklusa, recimo za 50%, di/dt (tj. promena struje u jedinici vremena) je 40 A x 50% / 1 ns = 20 milijardi ampera u sekundi! Zbog ovako ogromnih brzina promene dovoljno je da parazitna induktivnost bude veoma mala: npr. 1 mm najobičnije žice u vazduhu ima parazitnu induktivnost oko 0,1 nH, tj. 1 desetomilijarditi deo henrija (jedinice za induktivnost). Ukoliko ovu vrednost zamenimo u gornjoj formuli dobijamo da je U = 2 V, koliko iznosi napon napajanja! Možda zvuči komplikovano, ali to u stvari znači da pod ovim uslovima procesor ne može da dobije nikakav napon napajanja ma kako dobar bio naponski izvor, pošto će ceo napon „ostati” na malim žičicama kojima se struja dovodi do procesora. A teško da će žice biti kraće od jednog milimetra. Na prvi pogled, ovaj primer deluje potpuno neverovatno: kako je moguće da procesor ne može da se napaja, kada znamo da moderni kompjuteri rade bez problema? Iznenađujući odgovor nalazi se u tehnici koja mora da se koristi u modernom dizajnu. Ona se sastoji u korišćenju velikih kondenzatora unutar samog čipa koji rade kao „rezervoari”. Drugim rečima, u uslovima brzih promena procesor ne dobija nikakvu energiju spolja (pošto je nemoguće da se ona toliko brzo isporuči), već koristi energiju uskladištenu unutar samog čipa. Tokom normalnog rada ovi kondenzatori se napune do napona napajanja. Ova tehnika zove se tehnika skladišnih kondenzatora („decoupling capacitors”) i apsolutno je neophodna u modernom dizajnu. Za unutrašnje rezervoare koriste se prazni delovi čipa, na primer delovi koji nemaju drugih funkcija. Pored korišćenja unutrašnjih rezervoara, sistem za raspodelu napajanja namerno se dizajnira se tako da se za napajanje koristi što veći broj pinova (nožica) na čipu. Inače, procesor je veoma „bučno” mesto, pošto se u najmodernijim dizajnima pojavljuju razne vrste šumova koji ranije nisu postojali. Zbog toga je za moderan dizajn potrebno uložiti mnogo više napora da bi se dokazalo da šumovi neće imati posledica po tok rada. Izvora šumova ima dosta, na primer spoljno zračenje (alfa čestice), varijacije u naponu napajanja, varijacije u nivoima signala unutar procesora, toplota procesora itd. Još jedan interesantan detalj predstavlja poređenje kvaliteta proizvodnih procesa raznih proizvođača. Vodeći proizvođači su „Intel”, IBM, AMD, „Motorola” itd. Najbitniji parametar (tzv. „minumum feature size”) jeste širina najmanjeg kanala tranzistora koji je moguće napraviti. Moderni proizvodni procesi se klasifikiju na osnovu ovog parametra, npr. najmoderniji procesi su 0,18 µm (mikrometara, „mikrona”, hiljaditih delova milimetra. U principu, svi vodeći proizvođači imaju sličan ovaj parametar, pa kvalitet jednog procesa u odnosu na drugi određuju ostali parametri. Sledeći najvažniji parametar jeste broj i karakteristika slojeva metalizacije koji se koriste za međusobno povezivanje tranzistora. Moderni procesi imaju preko šest ili više slojeva metalizacije. Broj slojeva je vrlo bitan pošto je potreban ogroman broj veza da se povežu desetine miliona tranzistora. Pored broja slojeva, bitna je i maksimalna gustina veza (tj. koliko metalne veze smeju da budu blizu jedna drugoj). Što je bliže, to bolje. Međutim, veze koje su suviše blizu predstavljaju problem pošto mogu da dovedu do greške u proizvodnji, recimo, da se dve linije jedna pored druge greskom spoje u jednu. Ovaj parametar se zove „metal pitch”. Inače, metalizacija se dugo godina pravila od aluminijuma, dok je poslednjih nekoliko godina dosta proizvođača (sem „Intela”) prešlo na bakar. U modernim procesima i dizajnima gornji slojevi se koriste za globalne signale (napon napajanja, takt) koji moraju da budu prisutni svuda na čipu. Kao što smo videli, cilj je da linije za povezivanje budu što bliže jedna drugoj, da bi se povećala gustina pakovanja. Nažalost, bliske linije dovode do drugih ozbiljnih problema, koji su sve prisutniji u modernim procesima. Ovi su problemi poznati pod terminom „cross-coupling” ili međusobne interferencije. Može se desiti da promena signala na liniji dovede do neželjenih promena na susednih linijama. Glavni uzrok interferencije su parazitne kapacitivnosti između linija, mada postoje indicije da će uskoro i međusobne induktivnosti postati ozbiljan problem. Da bismo ovo malo bolje shvatili, treba da pogledamo vertikalni poprečni presek sloja u procesoru. Vertikalna osa je debljine metalne linije koja isnosi, recimo, deo mikrona. Do nedavno, kada su širine linija bile mnogo veće od debljine, debljina se mogla zanemariti u odnosu na širinu. U modernim procesima ima slojeva kod kojih je debljina (tj. visina) veća od širine. U poprečnom preseku bliske linije deluju kao dva visoka zida jedan pored drugog. Intenzitet međusobne interferencije srazmeran je visini zida (što je viši, interferencija je veća), a obrnuto je srazmeran razmaku između zidova (što su linije bliže, interferencija je jača). Problemi međusobne interferencije veoma su bitni zbog toga što mogu da dovedu do pogrešnog očitavanja nivoa signala i katastrofalnih greški u radu. To se rešava detaljnom i pažljivom analizom svih linija kod kojih postoji mogućnost da dođe do ovih neželjenih posledica. Ova analiza oduzima sve više vremena i napora dizajnerima procesora. • • • Nadamo se da ovaj kolaž detalja daje malo bolju sliku problema s kojima se susreću dizajneri modernih mikroprocesora. U sledećem broju pokušaćemo da predstavimo još neke osnovne probleme i faze u razvoju mikroprocesora. Borislav AGAPIEV |
![]()
| ||||||||||||||||||
![]()
|
![]() | |
![]() | ![]() |
Home / Novi broj | Arhiva • Opšte teme | Internet | Test drive | Test run | PD kutak | CeDeteka | WWW vodič • Svet igara Svet kompjutera Copyright © 1984-2018. Politika a.d. • Redakcija | Kontakt | Saradnja | Oglasi | Pretplata • Help • English | |
SKWeb 3.22 |