TEHNIČKO VELEUČILIŠTE U ZAGREBU Stručni studij računarstva
ARHITEKTURA RAČUNALA
Autor: Matko Jun Datum: 9. veljača 2009.
Sadržaj: 1. VON NEUMANNOV MODEL ARHITEKTURE RAČUNALA 2. ATMEL AVR ARHITEKTURA 3. ULAZNOIZLAZNI PRIJENOS PODATAKA 4. MEMORIJSKA HIJERARHIJA 5. VIRTUALNA MEMORIJA 6. INTEL PENTIUM 4 I AMD 64 ARHITEKTURA 7. INTEL CORE ARHITEKTURA 8. AMD K10 ARHITEKTURA 9. INTEL NEHALEM ARHITEKTURA 10. MATIČNE PLOČE I ČIPSET 11. PROCESORI 12. MEMORIJE 13. GRAFIČKE KARTICE 14. TVRDI DISKOVI
2 3 4 5 7 9 12 13 14 15 16 17 19 21
1
1. VON NEUMANNOV MODEL ARHITEKTURE RAČUNALA Von Neumannov model arhitekture računala • zajedničko pohranjivanje programa i podataka u memoriju računala • slijedno izvođenje naredbi (slijedeći korak programa ovisi o prethodnom) Aritmetičkologička jedinica (ALU) sadržava operacije zbrajanja i posmaka. Procesor je akumulatorski orjentiran. Naredbe procesora su strojne (asemblerske), one direktno barataju dijelovima sklopovlja (registrima, memorijskim lokacijama, ulaznoizlaznim jedinicama). Jedna naredba najčešće zauzima jednu riječ.
Opći oblik narebe: OPERACIJSKI KOD
NAČIN ADRESIRANJA OPERANDI / ADRESE OPERANADA
Nedostaci akumulatorski orjentirane CPU arhitekture • Akumulator je programsko usko grlo jer sve operacije moraju proći kroz njega. • Svi podaci se moraju nalaziti u memoriji zbog čega je komunikacija s memorijom intenzivna što usporava rad procesora. Riješenje tog problema je uvođenje više ravnopravnih registara → RISC arhitektura RISC arhitektura • sve operacije se mogu obavljati sa svim registrima. Operandi, njihove adrese i rezultati se mogu nalaziti u bilo kojem registru • Smanjena potreba za dohvatom podataka iz memorije
2
2. ATMEL AVR ARHITEKTURA • • •
Napredna RISC arhitektura (131 16bitna naredba, većina se izvodi u jednom ciklusu) 32 8bitna registra opće namjene (registri R26R31 mogu se koristiti kao 16bitni X,Y i Z pokazivači) Aritmetičkologička jedinica (ALU) podržava cjelobrojno množenje u dva ciklusa (8bit*8bit → 16 bit), registri su mapirani u podatkovni memorijski prostor Moguće su slijedeće kombinacije pristupa: ▪ jedan ili dva 8bitna operanda → 8bitni rezultat ▪ dva 8bitna operanda → 16bitni rezultat ▪ jedan 16bitni operand → 16bitni rezultat odvojena programska i podatkovna memorija (8 bitna dvoadresna Harvardska arhitektura) – razlika prema Von Neumannovom modelu! Flash, EEPROM I SRAM memorije su integrirane u čip čime je uklonjena potreba za vanjskom memorijom • instrukcije programa se spremaju u 16bitnu programsku memoriju (FLASH) • EEPROM memorija služi za “polutrajno” spremanje podataka • podatkovni i adresni prostor sastoji se od registara i SRAM memorije
• •
*** FLASH i EEPROM ne gube sadržaj nakon prestanka napajanja Statusni registar (SREG) I • • • • • • • •
T
H
S
V
N
Z
C
I – Omogućuje prekidni sustav T – Koriste ga naredbe za rad s bitovima kao operand I rezultat H – “Half Carry” (koristi se u BCD aritmetici) S – Bit predznaka, S = N V V – preljev (provjera ispravnosti rezultata u aritmetici dvojnog komplementa) N – Najviši bit rezultata (negativan broj) Z – Rezultat je nula (zero) C – Prijenos (carry)
Kazalo stoga • Potrebno ga je inicijalizirati prije prvog korištenja (mora pokazivati na memorijsku lokaciju iznad $60) • Stog raste prema nižim adresama Ispravna inicijalizacija pokazivača stoga: LDI R30, LOW(RAMEND) OUT SPL, R30 LDI R31, HIGH(RAMEND); mogli smo ponovno koristiti registar R30! OUT SPH, R31
3
3. ULAZNOIZLAZNI PRIJENOS PODATAKA Načini prijenosa podataka: • Bezuvjetni • Uvjetni • Prekidni • Izravan pristup memoriji (DMA) Bezuvjetni procesor ne čeka na spremnost već samo uzme raspoloživi podatak, slanja podataka je moguće samo u slučaju dovoljno brze vanjske jedinice I ako se ne zahtjeva sinkronizacija prijenosa (pr. Paljenje LEDice, uzimanje trenutnog podatka o temperaturi I sl.) Uvjetni Procesor stalno provjerava spremnost vanjske jedinice (pooling) I pri tome stalno troši svoje vrijeme (ispis podataka na printer, učitavanje podataka s tipkovnice, čitanje/pisanje podata na disk I sl.) Da bi se postigla potpuna sinkronizacija, nakon prijenosa treba provjeriti je li signal spremnosti vanjske jedinice uklonjen. Prekidni Vanjska jedinica dojavljuje procesoru kada je spremna za prijenos podataka Nema čekanja, procesor radi neki drugi posao dok ne dobije zahtjev (prekid) vanjske jedinice da obavi njen posao AVR prekidni sustav • Prekidni vektori su smješteni na početku programske memorije • Prekidni sustav se omogućuje postavljanjem I (interrupt bit) zastavice u statusnom registru (također treba omogućiti i svaki pojedini prekid koji se želi iskoristiti) • Nakon prihvata zahtjeva za prekidom izvodi se naredba koja se nalazi na adresi prekidnog vektora (lokaciji početka prekidnog potprograma), u slučaju višestrukog prekida viši prioritet ima jedinica sa nižim brojem prekidnog vektora (8 je mogućih vanjskih pekida, INT0 najveći prioritet, INT7 najmanji) • Prihvatom prekida automatski se zabranjuje daljnje prekidanje (višerazinski prekidni sustav je potrebno implementirati softverski!) Princip rada AVR prekidnog sustava 1. izvodi se glavni program, na kraju svake linije se provjerava da li ima zahtjeva za prekidom 2. U trenu kada se pojavi zahtjev za prekidom • Sprema se stanje procesora • Onemogućuje se prihvaćanje novih zahtjeva za prekidima iste ili niže razine prioriteta • određuje se adresa početka prekidnog potprograma (prekidni vektor) • poziva se I izvršava prekidni potprogram • Obnavlja se stanje procesora • Vraćamo se iz prekidnog potprograma u glavni program 3. Nastavlja se izvršavanje glavnog programa 4
Tablica važnijih prekidnih vektora za mikrokontroler ATmega128 Broj Prekidni vektor Izvor vektora 1 2 3 4 5 6 7 8 9 17
$0000 $0002 $0004 $0006 $0008 $000A $000C $000E $0010 $0020
RESET INT0 INT1 INT2 INT3 INT4 INT5 INT6 INT7 TIMER0 OVF
Opis prekida
External pin, Poweron/Watchdog reset, JTAG AVR reset External Interrupt Request 0 External Interrupt Request 1 External Interrupt Request 2 External Interrupt Request 3 External Interrupt Request 4 External Interrupt Request 5 External Interrupt Request 6 External Interrupt Request 7 Timer/Counter0 Overflow
Izravan pristup memoriji (DMA – Direct Memory Access) Prijenos podataka se obavlja direktno s memorijom I bez sudjelovanja procesora *** Za prijenos jednog podatka potreban je jedan memorijski ciklus!
4. MEMORIJSKA HIJERARHIJA Memorija je podijeljena u nekoliko razina (što brža memorija to skuplja!)
Performanse brzih računala najčešće su ograničene propusnošću (bandwidth) i latencijom (latency) memorije → usko grlo između procesora i memorije. Latencija se mjeri prema: Vremenu pristupa (access time) – vremenska razlika između zahtjeva i dolaska željene riječi Vremenu ciklusa (cycle time) – minimalno vrijeme između zahtjeva prema memoriji Pri čemu je vrijeme ciklusa veće od vremena pristupa zbog čekanja na stabilizaciju adresnih linija između pristupa memoriji. *** Od 1975. godine desktop računala I poslužitelji (serveri) koriste dinamičnu radnu memoriju (DRAM) kao glavnu a statičnu radnu memoriju (SRAM) kao priručnu (cache). 5
SRAM (Static Random Access Memory) Nema potrebe za osvježavanjem memorije – vrijeme pristupa je gotovo jednako vremenu ciklusa. Potrebna je minimalna količina energije za održavanje sadržaja memorije u stanju čekanja. Zbog ovih karakteristika se SRAM koristi za priručnu (cache) memoriju. DRAM (Dynamic Random Access Memory) Zbog dinamičke prirode strujnih krugova zahtjeva se ponovno zapisivanje podataka u memoriju nakon čitanja – potreba osvježavanja (zbog koje postoji značajna razlika između vremenu pristupa i vremenu ciklusa) DRAM arhitektura Pristupanje određenom bloku kod čitanja i pisanja izvodi se u tri koraka: 1. Pristup retku (RAS – Row Access Strobe) 2. Pristup stupcu (CAS – Column Access Strobe) 3. Pretpunjenje Svaki korak unosi kašnjenje od oko 20nS! Zbog toga uvodimo više razina memorije čija je svrha Sakriti latenciju korištenjem malih brzih priručnih memorija (cache). Priručna memorija (cache) Priručna memorija koristi predvidiva svojstva pristupa memoriji: Vremensku lokalnost – pamćenjem sadržaja nedavno dohvaćenih stranica (jer ako je memorijska lokacija dohvaćena, vjerojatno je da će opet biti dohvaćena u bliskoj budućnosti) Prostornu lokalnost – dohvatom blokova oko nedavno dohvaćenih lokacija (jer ako je neka memorijska lokacija dohvaćena velika je vjerojatnost da će i lokacija do nje biti dohvaćena u bliskoj budućnosti) Čitanje podataka iz priručne memorije Uzima se adresa procesora i pretražuju se adresne značke (address tag). Ukoliko je podatak pronađen (POGODAK), vraća se kopija iz priručne memorije. Ukoliko podatak nije pronađen (PROMAŠAJ) čita se blok podataka iz glavne memorije, vraća se podatak procesoru i osvježava se priručna memorija. Zapisivanje podataka u priručnu memoriju Ukoliko je podatak pronađen (POGODAK), podatak se zapisuje i u priručnu i u radnu memoriju (Write through) ili samo u priručnu memoriju (Write back) Ukoliko podatak nije pronađen (PROMAŠAJ), podatak se zapisuje samo u radnu memoriju (No Write Allocate) ili se blok koji sadrži podatak prethodno dohvaća u priručnu memoriju (Write Allocate) Najčešće kombinacije su: Write through I no write allocate Write back I write allocate Načini smještanja podataka u priručnu memoriju • Potpuno asocijativno preslikavanje (Fully Associative) – stranice iz radne memorije može se smjestiti u bilo koji podatkovni blok priručne memorije • Skupno asocijativno preslikavanje (Set Associative) – stranica iz radne memorije se može smjestiti u bilo koji blok unutar skupa blokova određen izrazom b = m % G (m – redni broj bloka u radnoj memoriji, G – broj grupa blokova u priručnoj memoriji) 6
•
Direktno preslikavanje (Direct Mapped) – stranica iz radne memorije može se smjestiti u točno određeni podatkovni blok priručne memorije određen izrazom b = m % B (m – redni broj bloka u radnoj memoriji, B – broj blokova u priručnoj memoriji)
Primjer: Blok 12 se može smjestiti bilo gdje kod potpuno asocijativnog preslikavanja, bilo gdje u skupu 0 kod skupnog preslikavanja (12 % 4) i samo na blok 4 kod direktnog preslikavanja (12 % 8)
Latencija priručne memorije Latencija priručne memorije je određena izrazom:
tc + (1 α) tm tc – vrijeme pristupa priručnoj memoriji α učestalost pogodaka (1 α učestalost promašaja) tm – cijena promašaja izražena potrebnim vremenom (ili brojem ciklusa) Strategije zamjene blokova Određuju koji blok treba zamjeniti kada je memorija puna • Slučajno – zamjena slučajno odabranog retka • Least Recently Used (LRU) – izbacuje se blok kojemu najdulje nije pristupano pri čemu se stanje priručne memorije treba ažurirati nakon svakog pristupa • FIFO, Round Robin – blokovi se izbacuju onim redom kako su dohvaćeni (koristi se u visoko asocijativnim priručnim memorijama) • Not Least Recently Used (NLRU) – FIFO strategija s izuzetkom nedavno dohvaćenih blokova
5. VIRTUALNA MEMORIJA Razlozi uvođenja virtualne memorije • Isti kao I kod odnosa CPU ↔ CACHE (priručna memorija) tako i kod odnosa glavne memorije (DRAM) ↔ DISK je potrebno sakriti latencije spore sekundarne memorije (hard disk). Time dobivamo privid da disk radi gotovo brzinom RAMa. • Virtualna memorija nam daje na raspolaganje velik (virtualni!) adresni prostor na raspolaganje procesima.
7
Specifičnost diska u odnosu na poluvodičke memorije: • Vrijeme pristupa 104 – 106 sporije od RAM memorije, jer ovisi o vremenu namještanja glave na traženi cilindar i vremenu rotacije potrebne da traženi sektor dođe pod glavu • Odnos propusnosti RAM ↔ DISK sličan kao i odnos propusnosti CACHE ↔ RAM (samo desetak puta sporiji) • Moguće poboljšanje performansi paralelnim korištenjem više diskova (RAID – Redundant Array of Independent Disks) Vrste adresiranja Apsolutno adresiranje – istovremeno izvođenje samo jednog programa koji ima neograničen pristup sklopovlju (RAM, U/I jedinice). Adrese u programu ovise o tome gdje će program biti učitan u memoriju. Pokazalo se pogodnijim za programere da ne moraju pisati programe koji ovise o mjestu u memoriji gdje se nalaze, stoga se koristi relativno adresiranje. Relativno adresiranje – u memoriji se nalazi dva ili više programa (npr. dok jedan čeka na dovršetak UI operacije, drugi se izvodi). Svaki program mora imati bazni (base) registar. ***Zaštita od međusobnog utjecanja nezavisnih programa je izvedena uvođenjem graničnog (bound) registra. Virtualni adresni prostor Statičko rukovanje memorijom Prisutno kod jednokorisničkih sustava. Program se dijeli na određeni broj programskih i podatkovnih blokova, pri tome se u radnoj memoriji nalaze samo oni blokovi koji su potrebni za izvođenje programa, te dio programa koji upravlja premještanjem blokova između primarne i sekundarne memorije. Svi ostali blokovi nalaze se u sekundarnoj memoriji i po potrebi se prebacuju u primarnu memoriju, taj se postupak naziva preklapanje (overlay) Dinamičko rukovanje memorijom Koristi se kod višezadaćnih sustava jer postupak preklapanja nije moguć zbog velikog broja procesa koji se nalazi u radnoj memoriji i nemogućnosti odvajanja njihovih memorijskih prostora (svaki bi proces zahtjevao vlastiti dio radne memorije). Virtualni adresni prostor stvara privid vrlo velike memorije (238 bajtova, 264 bajtova). Cilj je podijeliti memoriju na stranice (2k4k8k), pri čemu ćemo često potrebne stranice pohraniti u RAM, a ostale na disk → straničenje Straničenje • Adresa koju generira procesor interpretira se kao par • Stranična tablica sadrži fizičku adresu početka svake stranice • Stranična tablica omogućava spremanje stranica u RAM proizvoljnim redosljedom • Straničenje omogućava razdvajanje adresnih prostora pojedinih procesa (svaki proces ima vlastitu straničnu tablicu)
8
Straničenje na zahtjev (Demand Paging) • U početku se cjelokupna virtualna memorija nalazi na disku, a RAM i stranične tablice su prazni. • Pri pokretanju programa svaka se virtualna adresa mapira na fizičku adresu → referenciranje stranica. • Radni skup stranica se postupno puni u RAM (zbog prostorne i vremenske lokalnosti postupno se mijenja) Smještaj straničnih tablica Potreban prostor za smještanje straničnih tablica proporcionalan adresnom prostoru i broju korisnika. Zahtjevi za prostorom su veliki i preskupo je koristiti registre i statički ram (premalo memorije!) Moderni sustav virtualne memorije Stolna računala i poslužitelji implementiraju potpuni sustav straničenja na zahtjev. Vektorska superračunala implementiraju adresnu translaciju i zaštitu, ali ne i straničenje na zahtjev. Translacija adresa i zaštita adresnog prostora Translacija adrese i provjera prava pristupa ponavlja se kod dohvata svake naredbe i podatka, treba biti brza (u jednom ciklusu) i ne smije zauzimati puno memorije. No translacija adrese zahtjeva jedan ili više dodatnih memorijskih ciklusa. Taj problem je rješen uvođenjem mehanizma za pohranjivanje rezultata translacije za često korištene stranice. Taj se mehanizam naziva TLB (Translation Localside Buffer)
6. INTEL PENTIUM 4 I AMD 64 ARHITEKTURA Intel Pentium 4
AMD 64
Generacija (naziv)
7. generacija (Netburst)
8. generacija (K8 ili Hammer)
Radni takt procesora
1.3 – 3.8 GHz
1.0 – 3.2 GHz
Brzina sabirnice
400 – 1066 MT/s
800 – 1000 MT/s
Tehnologija proizvodnje
0.18um – 65 nm
0.13um – 65 nm
Arhitektura
32bitna
64bitna (64bitna samo ako to OS podržava, inače 32)
Vanjska sabirnica
Koristi se za vezu s memorijom
Koristi se za vezu s grafičkom karticom i ostalim procesorima
Cjevovod
20 stanja
12 + 17 stanja
Broj lokacija BTB/BHT
4096 / 4096
2048 / 16384
Procesori
Pentium 4, Pentium D, Celeron D
Athlon64/64FX/64X2, Sempron, Turion 64, Opteron MT/s – Mega transfera u sekundi
Vanjska sabirnica Intel (P4) – Vanjska sabirnica se koristi za vezu s memorijom. Daje propusnost od 4 64bitne riječi po taktu sabirnice – QDR (Quad Data Rate) zbog čega je lokalna sabirnica (Local Bus) 4 puta brža od stvarne brzine.
9
Stvarni takt (real clock) Brzina lokalne sabirnice
Prijenos podataka
100 MHz
400 MHz
3.2 GB/s
133 MHz
533 MHz
4.2 GB/s
200 MHz
800 MHz
6.4 GB/s
266 MHz
1066 MHz
8.5 GB/s
AMD 64 – Vanjska sabirnica (HyperTransport Bus) se koristi za vezu s grafičkom karticom i drugim procesorima. Broj sabirnica i propusnost ovise o procesoru – može ih biti do 3, a propusnost se kreće 3200 – 8000 MB/s AMD 64 procesori za stolna računala (Athlon64/64FX/64X2, Sempron, Turion 64) imaju jednu HyperTransport sabirnicu dok procesori za servere (Opteron) imaju dvije ili tri. Svaki procesor ima svoj memorijski kontroler i pristupa svojim memorijskim modulima Memorijski kontroler AMD 64 imaju integriran memorijski kontroler na samom procesorskom čipu, zbog čega "North bridge" čip služi samo kao veza procesora i grafičke kartice. Memorijski kontroler može pogoniti do 4 memorijska modula po kanalu, uz raspoloživa do dva kanala (broj stvarno raspoloživih memorijskih modula ovisi o matičnoj ploči) Ovaj dizajn pojednostavljuje matičnu ploču i smanjuje njen utjecaj na performanse sustava. Intel (i starije generacije AMD procesora) – memorijski kontroler je u "North bridge" čipu Cjevovod (pipeline) Cjevovod je lista stanja kroz koje instrukcija mora proći da bi se potpuno izvršila. Dulji cjevovod omogućava rad na većim frekvencijama jer je svaki pojedini stupanj manji koristi manje tranzistora. Intel P4 – 20 stanja (prijašnje generacije su imale 11). AMD 64 – 12 stanja za cjelobrojne instrukcije, 17 stanja za funkcije sa realnim (float) vrijednostima. Jedinica priručne memorije i dohvata (Memory Cache and Fetch Unit) Intel P4 – Podatkovna veza između L2 cachea i L1 podatkovnog cahcea je široka 256 bitova. • L1 podatkovni cache je veličine 8kB ili 16kB, L2 cache može biti 256kB, 512kB, 1MB ili 2MB. • BTB (Branch Target Buffer) i BHT (Branch History Table) imaju svaki po 4096 lokacija. • L1 instrukcijski cache pomaknut je na poziciju iza dekodera tako da sadrži mikroinstrukcije i preimenovan je u "Trace Cache". On sadrži vlastiti BTB sa 512 lokacija. AMD 64 – Podatkovna veza između L2 cachea i L1 podatkovnog cahcea je široka 128 bitova. • L1 instrukcijski cache osigurava jedinici za dohvaćanje još dodatnih 76 bitova, tako da mu je stvarna veličina 102kB (a ne 64kB) • BTB ima 2048 a BHT ima 16384 lokacija. BTB je memorija malog kapaciteta koja sadrži sva uočena grananja unutar programa. 10
L2 cache je kod višejezgrenih izvedbi Intel i AMD procesora odvojen, i komunikacija između L2 cache memorija je moguća samo preko FSB (Front Side Bus) sabirnice.
CISC/RISC Dekoder Prijašnje generacije Intel i AMD procesora su koristile hibridnu CISC/RISC arhitekturu (jer se zbog kompatibilnosti procesora moraju podržavati i CISC naredbe (poznate i kao x86 naredbe). Zbog toga Intel P4 i AMD 64 procesori koriste CISC/RISC dekoder, tako da interno rade s RISC instrukcijama a izvana prihvaćaju samo CISC x86 naredbe. Za CISC x86 instrukcije se korist termin "instrukcija", a za interne RISC instrukcije se koristi termin "mikroinstrukcija"(µops). Mikroinstrukcije nije moguće koristiti u programu jer nije moguće zaobići dekoder, a osim toga svaki procesor ima svoj skup mikroinstrukcija pa različiti procesori istu CISC naredbu različito dekodiraju. Intel P4 dekodira jednu x86 instrukciju po ciklusu. Ukoliko se dogodi da se jedna naredba dekodira u više od 4 mikroinstrukcije dekodiranje se preusmjerava na ROM memoriju ("Microcode ROM" ili "Microcode Instruction Sequencer" – MIS). Iz dekodera se mikroinstrukcije šalju u "Trace Cache" iz kojeg se razvrstavaju u redove za izvođenje (3 mikroinstrukcije po ciklusu). Nakon toga mikroinstrukcije idu u alokator, te u preimenovanje registara (Allocator and Register Renamer) u kojemu se alociraju potrebni resursi za izvođenje te mikroinstrukcije (na način da se omogući izvođenje mikroinstrukcija proizvoljnim ("outoforder") redosljedom). AMD 64 koristi dodatni tip instrukcija nazvan "makrooperacija" a odnosi se na naredbu koja je nastala kao rezultat dekodiranja dekodera. Kad makrooperacija dođe u odgovarajći organizator (scheduler) dodatno se dekodira u mikrooperacije. Organizator (Scheduler) I Intel P4 i AMD 64 imaju organizator koji sortira mikroinstrukcije prema tipu i raspoređuje ih za izvođenje koji instrukcije može slati proizvoljnim redosljedom ("outoforder") čime se maksimalno iskorištava procesorsko vrijeme. Dijeli se se na četiri dijela: Memory scheduler – za mikroinstrukcije iz memorijskog reda mikroinstrukcija Fast scheduler – za jednostavne mikroinstrukcije Slow/FP scheduler – za ostale/složenije instrukcije i instrukcije sa pomičnim zarezom (floating point) Simple FP Scheduler – za jednostavne instrukcije koje uključuju vrijednosti sa pomičnim zarezom Jedinice za dodjelu i izvođenje (Dispatch and Execution Units) Intel P4 • Četiri porta, u jednom ciklusu mogu rasporediti ukupno 6 mikroinstrukcija za izvođenje (od tih 6 mikroinstrukcija, jedinice koje imaju oznaku "clock x2" mogu obaviti dvije mikroinstrukcije u jednom ciklusu) • Intel P4 arhitektura ima 128 internih registara. 11
AMD 64 • Ima jednu cjelobrojnu izvršnu jedinicu više od Pentiuma no unatoč tome može izvršiti jednak broj broj instrukcija po ciklusu procesora kao i Pentium 4 (maksimalno 6 instrukcija). • AMD 64 arhitektura ima 96 internih registara.
7. INTEL CORE ARHITEKTURA • • • •
8. generacija Intelovih procesora (Bazirana na Pentium M arhitekturi iz 6. generacije, P4 arhitektura je odbačena zbog velike potrošnje i nemogućnosti efektivnog povećanja brzine takta) Cjevovod s 14 stanja Dijeljeni L2 cache kod dvojezgrenih procesora Napredno upravljanje potrošnjom energije
Jedinica priručne memorije i dohvata (Memory Cache and Fetch Unit) • L2 cache je kod višejezgrenih procesora organiziran kao dijeljena memorija, obje jezgre dijele isti L2 cache i njen sadržaj. Memorija se jezgrama dodjeljuje dinamički.
•
Poboljšana logika za predviđanje dohvata podataka traženjem uzoraka u pristupu podacima (ako je procesor dohvaćao redom podatke s adresa 100, 102 i 104, odmah će učitati i podatak s adrese 106)
CISC/RISC Dekoder • Dodana je mogućnost stapanja dviju x86 naredbi u jednu ("Macrofusion"). Svojstvo je ograničeno na kombinaciju naredbe usporedbi i uvjetnog skoka. • Dekoder može dekodirati četiri mikroinstrukcije. U svakom ciklusu dohvaća pet x86 instrukcija kako bi mogao obaviti stapanje dvije instrukcije ukoliko je to moguće. Jedinice za dodjelu i izvođenje (Dispatch and Execution Units) Pet portova, od njih tri mogu slati mikroinstrukcije 3 mikroinstrukcije po ciklusu Također koristi svojstvo preimenovanja registara i "outoforder" izvođenje naredbi. Dvosmislenost memorije (Memory Disambiguation) Tehnika ubrzavanja izvršavanja memorijski orijentiranih instrukcija (MOI) – ispituju se referencirane memorijske lokacije i na osnovi toga se određuje zavisnost instrukcija (za razliku od prijašnjih arhitektura koje su bez obzira na izvođenje instrukcija proizvoljnim redoslijedom ("outoforder") MOI obavljale redom kakvim se nalaze u programu kako ne bi došlo do nekonzistentnosti podataka). Napredno upravljanje energijom (Advanced Power Gating) Isključivanje jedinica (linije bitova kod internih sabirnica) koje se u određenom trenutku ne koriste. 12
Procesori bazirani na Core arhitekturi • Pentium DualCore (mainstream) • Celeron (low end) • Xeon (serveri i radne stanice) • Core 2 (stolna i prijenosna računala) Pristupi izgradnje višejezgrenih procesora • Jezgre na odvojenim čipovima koji se nalaze u istom pakiranju (Pentium D) – L2 cache memorije su odvojene i međusobna komunikacija je moguća samo preko FSB (Front Side Bus) sabirnice. • Obje jezgre u istom čipu – L2 cache dijele obje jezgre, komunikacija se obavlja izravno unutar čipa (nema potrebe za komunikacijom preko FSB sabirnice)
*** Četverojezgreni procesori kombinaciju oba pristupa izgradnje – dvije jezgre u istom čipu imaju zajednički cache, a ako žele komunicirati s cacheom drugog para jezgri, moraju koristiti FSB sabirnicu.
8. AMD K10 ARHITEKTURA • • •
10. generacija AMDovih procesora bazirana na 8. generaciji – K8 (K9 ne postoji) Veza između L1 instrukcijskog cachea i dekodera je proširena sa 128 na 256 bita Dodana je L3 cache memorija koja je zajednička za sve jezgre ("Balanced Smart Cache"), veličina memorije ovisi o modelu procesora
•
Dva nezavisna 64bitna memorijska kontrolera koji omogućuju dohvaćanje podataka koji nisu na uzastopnim adresama ("AMD Memory Optimizer Technology")
Optimizacija potrošnje energije • "Independent Dynamic Core Technology" – omogućava rad jezgri na različitim frekvencijama pri čemu se napon za napajanje jezgara dijeli • "CoolCore Technology" – omogućuje isključivanje određenih dijelova procesora koji se ne koriste (kod Intela "Advanced Power Gating") 13
• •
"Dual Dynamic Power Managment" – omogućava različite napone napajanja procesora i memorijskog kontrolera Korištenjem HyperTransport 3.0 sabirnice postoji mogućnost uštede energije dinamičkim mijenjanjem širine i brzine procesora Značenje prve znamenke u oznaci procesora Serija procesora
Prva znamenka u oznaci
Phenom QuadCore (Agena)
9
Phenom TripleCore (Toliman)
8
Athlon DualCore (Kuma)
6
Sthlon SingleCore (Lima)
1
Sempron LE SingleCore (Sparta)
1
*** Sempron LE 1150 označava jednojezgreni procesor, Phenom 9500 označava četverojezgreni procesor, Phenom 8450 označava trojezgreni procesor itd.
9. INTEL NEHALEM ARHITEKTURA • • • • • •
9. generacija Intelovih procesora bazirana na Core arhitekturi Core i7 procesori sa dvije do osam jezgara Prva generacija podržava brzine do 3.2GHz Trenutno se proizvode za stolna računala, očekuju se inačice za poslužitelje L2 cache memorija je zasebna za svaku jezgru Uvedena zajednička L3 cache memorija veličine 8MB (kao kod AMD K10)
• •
Tehnologija proizvodnje – 45nm (u budućnosti 32nm) Nožište LGA 1366
Memorijski kontroler Ugrađeni memorijski kontroler (za razliku od prijašnjih Intelovih arhitektura) koji podržava samo DDR3 memoriju. Sadrži tri memorijska kanala što omogućuje istovremeno komuniciranje s tri memorijska modula (u teoriji brži od dvokanalne arhitekture za 50%)
14
Vanjska sabirnica "Quickpath Interconnect" (QPI) – dva odvojena podatkovna puta (datapath), jedan za slanje, jedan za primanje podataka. Služi za komuniciranje s čipsetom ili s drugim procesorima. Ekvivalentna Hypertransport sabirnici kod AMDa. Omogućuje teoretsku brzinu transfera podataka od 12.8 GB/s (prijenos 2 16bitna podatka po ciklusu). Procesori za stolna računala imaju jednu QPI sabirnicu, dok će inačice za poslužitelje imati dvije nezavisne QPI sabirnice Jedinica za dodjelu i izvođenje Dodana je još jedna jedinica za dodjelu i sadrži 12 izvršnih jedinica Dodatni TLB (Translation Lookaside Buffer) s 512 unosa Dodatni BTB (Branch Target Buffer) Napredno upravljanje energijom "Power Control Unit" omogućuje različite napone i frekvencije na jezgrama, jedinicama izvan procesora, memorijskom kontroleru priručnoj memoriji i ulazno/izlaznim jedinicama te na taj način štedi energiju (nekorištene jezgre se mogu i u potpunosti ugasiti!). "Turbo mode" "Power Control Unit" na svakoj jezgri ima senzore za potrošnju snage i količini zagrijavanja, čime je omogućeno aktivnim jezgrama koje su opterećene privremeno "overklokiranje" (povećanje njihovih frekvencija). "Turbo mode" je dostupan samo u Extreme Edition modelima procesora "Hyperthreading" Hyperthreading tehnologija omogućava da se svaki procesor tretira kao dva procesora. Cilj je iskorištavanje nekorištenih dijelova unutar procesora. Naziva se još i "Simultaneus MultiThreading" (SMT).
10. MATIČNE PLOČE I ČIPSET Matična ploča (Motherboard) služi za povezivanje svih dijelova PC računala (procesor, memorija, grafička kartica...). Na matičnoj ploči su komponente često integrirane (zvučna, grafička, mrežna kartica, kontroleri...) Čipset (Chipset) je skup čipova na matičnoj ploči koji definira cjelokupne performanse računala. Standardizaciju funkcija čipseta je omogućilo uvođenje PCI sabirnica i korištenje mostova ("bridges") Matična ploča obično na sebi ima dva mosta: "North bridge" i "South bridge" North bridge • Naziva se i MCH (Memory Controller Hub) • Na matičnoj ploči se fizički nalazi vrlo blizu (ili odmah do) procesora – izravno su povezani. • Funkcije North bridgea: ◦ Memorijski kontroler (ako nije ugrađen u procesor) – određuje maksimalnu količinu i vrstu memorije ◦ Kontroler AGP sabirnice (ako postoji na matičnoj ploči) ◦ Kontroler PCIexpress X16 i X1 sabirnice (ako postoji na matičnoj ploči) ◦ Sučelje za razmjenu podataka sa South bridgeom 15
Northbridge ima velik utjecaj na performase računala. South bridge • Naziva se i ICH (I/O Controller Hub) • Povezan je s North bridgeom i služi za upravljanje ulaznoizlaznim i integriranim uređajima na matičnoj ploči (portovi za tvrde diskove, USB portovi, integrirani zvuk, CMOS memorija (BIOS), kontroler prekida i DMA) Southbridge ima utjecaj na svojstva i karakteristike računala, definira brzinu i broj USB portova, broj i vrstu SATA i ATA portova itd. Povezivanje mostova • Prije izvedeno PCI sabirnicom jer nije postojao problem velikog prijenosa podataka. Propusnost PCI sabirnice je 132MB/s i djelila se između svih PCI komponenti i komponenti spojenih sa South bridgeom. • Pojavom bržih grafičkih kartica i diskova nastaje problem uskog grla PCI sabirnice (samo ATA133 hard disk ima prijenos podataka 133 MB/s!), koji je privremeno riješen uvođenjem AGP porta (Accelerated Graphics Port) koji je bio izravno spojen sa South bridgeom. • Konačno riješenje problema nastalo je korištenjem posebne brze sabirnice (Dedicated Bus) za spajanje North bridge i South bridgea. Brzina te sabirnice ovisi o samom čipsetu i različito se naziva s obzirom na proizvođače (DMI, HyperTransport, QPI,Vlink …). Da bi se matična ploča mogla ugraditi u neko kućište, mora biti kompatibilna s dimenzijama tog kućišta. Postoji niz proizvođača matičnih ploča, a neki od najpoznatijih su: GigaByte, Abit, ECS, Asrock, Asus itd.
11. PROCESORI • • • •
Dva glavna proizvođača: Intel i AMD Svaki proizvođač proizvodi procesore sa svojom vrstom nožišta (socket) koja nije kompatibilna s nožištima drugog proizvođača. Intel: LGA 775 (još poznato kao Socket 775 ili Socket T) i LGA1366 (još poznato kao Socket B) AMD: AM2 i AM2+ (a uskoro se na tržištu očekuje i AM3)
LGA775 Nožište LGA 775 (Land Grid Array) sastoji se od 775 kontakata za priključivanje Intel procesora. Omogućava lakše priključivanje procesora na matičnu ploču korištenjem pločice za priključivanje procesora (Load Plate) čime se smanjuje mogućnost oštećivanja procesora prilikom ugrađivanja. Nožište podržava brzinu prednje sabirnice sve do 1600 MT/s, te sljedeće Intelove procesore: • Intel Pentium 4 (2.66 – 3.80 GHz) • Intel Celeron D (2.53 – 3.6 GHz) • Intel Pentium 4 Extreme Edition (3.2 – 3.73 GHz) • Intel Pentium DualCore (1.40 – 2.50 GHz) • Intel Core 2 Duo (1.6 – 3.33 GHz) 16
• • • •
Intel Core 2 Extreme (2.66 – 3.20 GHz) Intel Core 2 Quad (2.33 – 2.83 GHz) Intel Xeon (1.86 – 3.40 GHz) Intel Core Celeron (1.6 – 2.00 Ghz)
LGA 1366 Nožište LGA 1366 sastoji se od 1366 kontakata za priključivanje Intelovih procesora i koristi isti princip priključivanja procesora kao kod nožišta LGA 775. Nožište podržava brzinu prednje sabirnice do 6.4 GT/s i Intelove procesore iz serije Nehalem (Core i7). AM2 i AM2+ Nožišta AM2 i AM2+ sastoje se od 940 kontakata s tim da AM2 podržava brzinu prednje sabirnice do 1 GHz, a AM2+ podržava brzinu prednje sabirnice do 2.6 GHz. AM2 podržava procesore Athlon 64, Athlon 64 X2, Athlon 64 FX, te serije procesora Opteron, Sempron i Phenom. Nožište AM2+ podržava procesore Athlon 64, Athlon 64 X2, seriju Opteron procesora, te Phenom procesore Phenom X2, Phenom X3 i Phenom X3.
12. MEMORIJE Radna memorija sadržava instrukcije i podatke koje procesor koristi tijekom svog rada. Podaci iz radne memorije se brišu nakon što se računalo ugasi, što znači da ona ne služi za dugotrajno pohranjivanje podataka. • • • •
Radna memorija je realizirana kao dinamički ram – DRAM Današnji aktualni procesori i matične ploče uglavnom podržavaju memorijske module DDR2 i DDR3 DDR memorije se razlikuju po frekvenciji memorijskih ćelija, dubini spremnika za dohvat (Prefetch buffer), latenciji i potrošnji Spremnik za dohvat kod DDR memorije je dubine 2 bita, kod DDR2 memorije 4 bita a kod DDR3 8 bitova
DDR memorija Za razliku od SDRAM memorije (koja se rijetko ili uopće) više ne koristi, DDR radna memorija koristi rastući i padajući brid sinkronizacijskog signala (Rising and Falling Edges of the Clock Signal) za prijenos podataka i tako postiže skoro dvostruku brzinu (prenosi po 2 bita). DDR radna memorija ima brzinu prijenosa koja se izračunava na sljedeći način: Brzina memorijske sabirnice (MHz) * 2 (dual rate) * 64 bita koji se prenose / 8 bitova Ako je brzina sabirnice 100 Mhz, DDR radna memorija ima brzinu prijenosa: 100 X 2 X 64 / 8 = 1600 MB/s Takav modul memorije se najčešće označava PC1600, a standard se označava DDR200 DDR2 i DDR3 Za razliku od DDR memorije, DDR2 memorija za vrijeme jednog ciklusa sinkronizacijskog signala može prenijeti 4 bita. Zbog toga se brzina prijenosa podataka DDR2 memorije izračunava po sličnoj formuli kao i za 17
DDR memoriju, samo što koeficijent nije 2 (dual rate) nego 4. Isto tako DDR3 memorija za vrijeme jednog sinkronizacijskog ciklusa može prenijeti dvostruko više bitova od DDR2 memorije (njih 8), te tako postiže još veće brzine prijenosa. Oznake najčešće korištenih memorija danas (DDR2 i DDR3) i njihove karakteristike Naziv standarda
Brzina memor. sabirnice
Naziv modula
Maks. Brzina prijenosa
DDR2400
100 MHz
PC23200
3200 MB/s
DDR2533
133 MHz
PC24200 / PC24300
4266 MB/s
DDR2667
166 MHz
PC25300 / PC25400
5333 MB/s
DDR2800
200 MHz
PC26400
6400 MB/s
DDR21066
266 MHz
PC28500 / PC28600
8533 MB/s
DDR3800
100 MHz
PC36400
6400 MB/s
DDR31066
133 MHz
PC38500
8533 MB/s
DDR31333
166 MHz
PC310600
10667 MB/s
DDR31600
200 MHz
PC312800
12800 MB/s
*** DDR, DDR2 i DDR3 nisu međusobno izmjenjive! U matičnu ploču se može ugraditi samo ona vrsta memorije koju ta ploča podržava. Nepodržane memorije fizički ne stanu u utore! *** Neke matične ploče podržavaju dvije vrste memorije i sadrže fizičke utore za obje vrste. Tada smijemo koristiti samo memoriju jedne vrste (korištenje različitih tipova memorija može dovesti do oštećenja matične ploče i memorije!) Pristupanje radnoj memoriji – vrši se preko memorijskog kontrolera koji može biti ugrađen u procesor ili unutar North bridgea. Memorija je s kontrolerom povezana preko tri skupine veza: podatkovne, adresne i kontrolne veze. Veza za prijenos radnog takta memorije (Memory Clock Signal) uključena je u kontrolne veze. Dual channel tehnologija Sposobnost memorijskih kontrolera da proširuju širinu podatkovne sabirnice sa 64 na 128 bitova što rezultira teoretskim udvostručavanjem maksimalne propusnosti memorije (Maximum Theoretical Transfer Rate – MTTR). MTTR se određuje izrazom: (Brzina takta) * (broj podataka po ciklusu) * (broj bitova koji se prenose) / 8 Da bismo koristili dual channel tehnologiju moramo imati kompatibilan čipset na ploči, kompatibilan procesor te dva ili četiri memorijska modula koje podržava ta ploča. Parametri pristupa memoriji Proizvođači parametre pristupa memoriji označavaju kroz niz od četiri ili pet oznaka npr. 2321T ili 3488 (manje je bolje!) Jedinice u kojima su oznake navedene su memorijski ciklusi (koji su dva puta dulji od sabirničkih ciklusa) Oznake imaju slijedeće značenje: CLtRCDtRPtRASCMD 18
CL – CAS Latency (broj vremenskih ciklusa od zahtjeva do isporuke prvog podatka) tRCD – RAS to CAS delay (minimalno kašnjenje između RAS i CAS signala, određuje vrijeme između aktiviranja memorije i dohvata prvog podatka) tRP – RAS precharge (određuje koje vrijeme treba proteći između Precharge i slijedeće Active naredbe) tRAS – Active to Precharge Delay (određuje kad memorija može početi čitati (ili pisati u) različiti redak CMD – Command Rate (vrijeme od aktiviranja memorijskog čipa preko CS (Chip Select) pina do trenutka kad je moguće zadati bilo koju naredbu prema memoriji (može biti 1T ili 2T))
13. GRAFIČKE KARTICE • • •
Grafička kartica služi za pretvaranje podataka iz računala u prikaz na zaslonu (monitoru) Osnovna zadaća grafičke kartice je oslobađanje procesora od poslova vezanih uz generiranje slike koja se prikazuje na monitoru Dva najvažnija proizvođača grafičkih kartica su nVidia i ATI
Specifikacije Vrsta procesora (GPU): Radeon HD 4000 serija, GeForce GTX serija... Memorija: Vrsta: GDDR3, GDDR5 Količina: 512MB, 896MB, 1GB ... Takt jezgre: 500 – 800 MHz Širina memorijske sabirnice: 256, 512 bita Sučelje za spajanje na matičnu ploču: PCIe X16 Vrste priključka za monitor: VGA, DVI, HDMI, DisplayPort Hlađenje: Vodeno, Zračno Dimenzije – neke kartice su toliko velike da ponekad fizički ne stanu u kućište! GDDR memorija Posebna memorija koja se ugrađuje na grafičke kartice ("G" u nazivu GDDR predstavlja "Graphics"), puno je brža je od memorije koja se koristi u računalu i radi na drugačijem naponu. PCIexpress sabirnica • Tehnički gledano PCIexpress nije sabirnica (jer je sabirnica podatkovni put na koji se može spojiti više uređaja koji dijele taj put), već se radi o vezi između dviju "točaka" (PointtoPoint Connection) • Koristi se serijska umjesto paralelne veze (kao kod PCI) jer se kod paralelne veze koristi velik broj vodova koji kupe razne šumove iz vanjskog svijeta zbog čega je moguća komunikacija u samo jednom smjeru ("HalfDuplex"), za razliku od serijske veze kod koje je manji broj vodova i veza je dvosmjerna ("FullDuplex") • Podaci se u prenose preko dva para žica koji se još nazivaju i staze (lanes). Svaka staza omogućava brzinu prijenosa od 250 MB/s u svakom smjeru. • PCIexpress sabirnica se može sastojati od kombinacije više parova staza kojom se postižu veće performanse. Broj parova staza je 1, 2, 4, 8, 16 ili 32 iz čega i dolaze nazivi x1, x2, x4, x8, x16 i x32. Primjer: Brzina prijenosa podataka PCIexpress sabirnice x16 iznosi 4GB/s (250MB*16) *** Trenutno najjača grafička kartica na tržištu he ASUS ANTGTX295 sa 2x896MB GDDR3 memorije 19
Napredne tehnologije (SLI i CrossFire) nVidia SLI • SLI je prvotno uvela tvrtka 3Dfx Interactive 1998. godine s njihovom Voodoo 2 grafičkom karticom. Tada je kratica SLI značila „Scan Line Interleaving“ i označavala tehnologiju koja je omogućavala da svaki grafički procesor (Graphic Processor Unit) koristi jednu skupinu linija jedan grafički procesor obrađivao je neparne linije, a drugi parne linije slike na ekranu. • nVidia je 19. travnja 2001. godine kupila tvrtku 3Dfx Interactive i izdala unaprijeđenu tehnologiju za grafičke kartice sličnu prethodnom SLIu i preimenovala ju „Scalable Link Interface“ Načini SLI rada: SFR (Split Frame Rendering) – kod SLI konfiguracija s dvije grafičke kartice. Svaka obrađuje pola slike (framea) AFR (Alternate Frame Rendering) – kod SLI konfiguracija sa dvije ili tri grafičke kartice (3way SLI). Svaka kartica obrađuje jednu cijelu sliku (frame). Za vrijeme dok prvi grafički procesor obrađuje jednu sliku, drugi obrađuje slijedeću itd. AFR i SFR kombinacija – koristi se kod konfiguracija dvije grafičke kartice od kojih svaka na sebi ima po dva grafička procesora (Quad SLI system). Prvi par grafičkih procesora obrađuje prvu sliku u SFR načinu radu, a drugi par iduću sliku. SLI AA (SLI AntiAliasing) – nije cilj poboljšati performanse grafičke karitce (brzinu izvođenja) već kvalitetu slike. Vide igre se u ovom načinu rada obično izvode sporije. S jednom grafičkom karticom je moguć AA od x4 do x8, u SLI AA načinu moguće je postići AA x32! (Ovaj način rada ne podržava Windows Vista) • •
• • •
SLI se može koristiti samo na kompatibilnim matičnim pločama koje imaju dva ili tri PCIexpress X16 utora koja mora biti bazirana na čipsetu nVidie. Komunikacija između kartica uspostavljena je pomoću zasebnog konektora koji se naziva SLI most (SLI bridge). Uglavnom se ne koristi PCIexpress sabirnica (koriste je modeli GeForce kartica serija 6600, 7100 i 7300 koje ne koriste SLI most). Na početku je za korištenje SLI tehnologije bilo nužno potrebno koristiti dvije identične grafičke kartice, međutim, novije inačice pogonskih programa podržavaju i različite grafičke kartice koje su bazirane na istom grafičkom procesoru. Trostruki SLI podržavaju samo kartice GeForce 8800 GTX, GeForce 8800 Ultra, GeForce GTX 260 i GeForce GTX 280 jer trostruki SLI koristi drugačiji SLI most (svaka kartica koja podržava tu tehnologiju sadrži dva SLI konektora).
ATI CrossFire • Crossfire je tehnologija koju je razvio ATI koja omogućava ugradnju do četiri grafičke kartice u jedno računalo kako bi se povećale grafičke performanse računala. • Prednost Crossfire tehnologije prema SLI tehnologiji je to što grafičke kartice u Crossfire načinu rada ne trebaju biti bazirane na istom grafičkom procesoru (ali moraju biti iz iste "porodice" grafičkih kartica).
20
Načini CrossFire rada: „Škare“ (Scissors) – slično SFR načinu rada SLIa samo što je moguće koristiti različite grafičke kartice (sporiju i bržu) i pomoću dinamičkeraspodjele (engl. dynamic load balancing) omogućiti bržoj kartici da obradi veći dio slike, a sporijoj kartici manji dio slike. „Pločice“ (Supertiling) – ekran je podijeljen na manje dijelove zvane „pločice“ veličine 32x32 piksela i svaka grafička kartica obrađuje određeni broj tih pločica. Također koristi metodu dinamičke raspodjele. AFR – identičan kao i kod SLIa, jedna kartica obrađuje jednu sliku, a druga grafička karticu sljedeću sliku. Super AA (AntiAliasing) – isto kao i kod SLI AA, povećava se kvaliteta slike umjesto povećanja performansi (AA se može povećati i do 14X) Crossfire se može koristiti samo na PCIexpress karticama i matičnoj ploči koja sadržava dva ili četiri (u slučaju CrossfireX) utora za grafičke kartice PCIE X16. Osim toga matična ploča mora biti bazirana na AMD/ATI ili Intelovom čipsetu Generacije CrossFirea: Do sada su objavljene tri Crossfire generacije: Crossfire, Native Crossfire i CrossfireX. „Crossfire“ generacija morala je imati jednu glavnu (master) karticu zvanu „Crossfire Edition“, koja je bila drugačija od „običnih“ modela i imala je ugrađen dodatni čip nazvan „composition engine“. Osim toga za spajanje dviju kartica u Crossfire načinu rada bio je potreban poseban vanjski kabel pomoću koje se sporedna (slave) kartica preko DVI priključka spajala s konektorom DMS59 (DVI s više pinova) ili s konektorom VHDCI (Very High Density Cable Interconnect). Bile su podržane rezolucije do 2560x1600. „Native Crossfire“generacija – ne treba imati glavnu karticu i vanjski kabel za priključivanje kao prva generacija Crossfirea, već koristi mostove kao i SLI. Za spajanje highend kartica potrebna su dva mosta, jer svaka grafička kartica ima dva Crossfire konektora. Za mainstream kartice koristi se isti pristup kao i kod nVidie: kartice se spajaju preko PCIexpress sučelja, a ne preko mostova. „CrossfireX“ generacija – bazirana je na Native Crossfire tehnologiji, samo što omogućava spajanje do četiri grafičke kartice bazirane na ATI/AMD čipovima. Konektori i mostovi su isti kao i kod Native Crossfirea, samo što postoji razlika u spajanju. *** I u slučaju SLIa i CrossFirea moguće je koristiti samo jedan monitor!
14. TVRDI DISKOVI Uređaji za trajno pohranjivanje podataka u računalu Elektromehanički uređaj, sastoji se od upravljačke tehnologije i medija za pohranjivanje podataka Nova generacija diskova SSD diskova (SolidState Disk) bazirana na flash memoriji. Još uvijek nisu u širokoj upotrebi zbog velike cijene. Specifikacije Kapacitet u GB i TB Dva konektora na disku: naponski i podatkovni (različiti za sučelja ATA i SATA) Veličina cache buffera (16MB, 32MB ...) Brzina vrtnje diskova (4200, 5400, 7200, 10000 okretaja u minuti) Dimenzije 3.5" i 2.5" 21
Komponente tvrdog diska Unutarnje (unutar zatvorenog okolopa koji se naziva i Hard Drive Assembly) i vanjske nalaze se na pločici s komponentama koja se naziva upravljačka elektronika ili "logička ploča" (Logic Board)) Hard Drive Assembly (unutrašnjost diska) U unutrašnjosti se može nalaziti nekoliko ploča, na svakoj od njih je glava za čitanje i zapisivanje podataka Glave za čitanje i pisanje se nalaze na "ruci" (Arm), sve glave se pomiču zajedno jer se nalaze na istoj ruci Glava se pomiče pomoću motora koji se pomiče lijevo ili desno u ovisnosti o smjeru i jačini struje u magnetskom polju Logička ploča Služi za upravljanje tvrdim diskom. Na njoj se nalazi: • Kontroler – upravlja motorima za vrtnju diskova i pomak glava , čitanjem i pisanjem, prijenosom podataka prema procesoru ... • Motor Driver – Energetski čip prema motorima (strujno pojačalo), smješten između kontrolera i motora • Cache Buffer (RAM) – međuspremnik podataka između diska i računala • Flash ROM – Sadrži firmware diska (parametre i program koji izvršava kontroler) • ATA/SATA konverter (opcionalno) – ATA diskovi koji podržavaju i SATA sučelje (čip kontrolera je namijenjen za ATA diskove) SSD diskovi Nemaju pomičnih dijelova Ugrađuju se u kućišta od 1.8", 2.5" i 3.5" Brži su od elektromehaničkih diskova (zasad u teoriji, trenutni diskovi na tržištu (skupi!) nisu pokazali puno bolje performanse od klasičnih elektromehaničkih tvrdih diskova) RAID tehnologija (Redundant Array of Independent/Inexpensive Disks) Tehnologija spajanja tvrdih diskova kako bi im se povećale performanse, pouzdanost i/ili kapacitet. Osnovne sheme RAID polja: JBOD (engl. Just a bunch of disks) – najjednostavniji način kombiniranja diskova kojom se povećava kapacitet (npr. spajanjem dvaju diskova različitih kapaciteta u jedan), bez utjecaja na pouzdanost i brzinu diskova. Kvar jednog diska onemogućuje korištenje cjelokupnog kapaciteta diskova, a pouzdanost je manja od pouzdanosti pojedinačnih diskova. RAID 0 – povećava brzinu diskova tako da pojedinačne zapise dijeli na više diskova koji se istovremeno mogu čitati i pisati, ubrzavajući pristup onoliko puta koliko ima diskova. Koristi se koncept podjele podataka na blokove određene veličine (stripping). Pouzdanost i kapacitet jednaki su kao i kod JBODa. U slučaju korištenja dva diska, pojedinačni disk sadržavati će svaki drugi blok. RAID 1 – održava identične kopije podataka na dva ili više diskova (mirroring) čime se povećava pouzdanost (ako se pokvari jedan disk, svi podaci na njemu nalaze se na drugim diskovima). Teoretski je moguće povećati i brzinu čitanja kao kod RAID 0, jer se pojedinačni blokovi istovremeno nalaze na više diskova, međutim, u praksi to znači da se kod sekvencijalnog čitanja podataka neki blokovi moraju „preskakati“ (u primjeru s dva diska, čita se svaki drugi blok), nije moguće postići brzine kao kod RAID 0. 22
RAID 2 – uvodi korištenje zaštitnih kodova u svrhu popravljanja oštećenja pojedinih diskova što je zbog zahtjevnosti neisplativo i vrlo rijetko se koristi. RAID 3 i RAID 4 – izračunavaju pojednostavljeni zaštitni kod pomoću logičke operacije XOR. U slučaju polja s tri diska, kod zapisivanja dva bloka podataka generira se treći blok koji se sastoji od podataka prvog i drugog bloka (XOR) i svaki od blokova se zapisuje na zaseban disk. Ukoliko dođe do kvara jednog od diskova, pomoću preostala dva bloka zapisana na ispravnim diskovima može se rekonstruirati treći „izgubljeni“ blok. RAID 3 koristi male blokove i pouzdaniji je, a RAID 4 koristi veće blokove, brži je, ali i manje pouzdan. RAID 5 – izračunava dodatnu komponentu (kao i RAID 4), samo što se izračunati blokovi zapisuju na sve diskove u polju. Isto je pouzdan kao i RAID 4, ali ima bolje performanse. Zbog velikih blokova nastaju problemi u performansama kod izračunavanja dodatnih komponenata za male zapise. RAID 6 – izračunava dvije dodatne komponente, čime je omogućena rekonstrukcija podataka i u slučaju kvara na dva diska. Za zaobilaženje problema s performansama kod malih zapisa zahtijevaju veliku propusnost, brz procesor i veliku količinu priručne memorije. Osim osnovnih shema RAIDa, postoje je i kombinacije RAID shema kako bi se dobila što veća pouzdanost. Kombinacije se označavaju s oba broja RAID shema koje se koriste,tako da se dobije jedan dvoznamenkasti broj. RAID 10 označava kombinaciju RAID 1 i RAID 0 sheme – poboljšana pouzdanost (usporedivo s RAID 1) i poboljšane performanse (usporedivo s RAID 0) RAID 50 – isti princip kao i RAID 10, kombinira se RAID 5 i RAID 0 shema Za izgradnju RAID sustava potrebno je imati RAID kontroler i barem dva ili više identičnih tvrdih diskova. Neke matične ploče na sebi već imaju ugrađen RAID kontroler koji senajčešće nalazi ugrađen unutar čipseta ploče (točnije south bridgea) ili dolazi u obliku zasebnog čipa (koji ugrađujemo u neki od PCI utora)
23