1 / 67

Arhitektura AMD procesora

Arhitektura AMD procesora. Student: Konstantin Simić, 151 /04 Profesor: dr. Dejan Simi ć. Sadržaj. O kompaniji AMD Arhitektura 32-bitnih procesora AM486 DX Blok dijagram Registri Instrukcije Athlon Blok dijagram Kratak pregled 3D NOW! Instrukcija. Sadr žaj (nastavak).

terrel
Download Presentation

Arhitektura AMD procesora

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Arhitektura AMD procesora Student: Konstantin Simić, 151/04 Profesor: dr. Dejan Simić

  2. Sadržaj • O kompaniji AMD • Arhitektura 32-bitnih procesora • AM486 DX • Blok dijagram • Registri • Instrukcije • Athlon • Blok dijagram • Kratak pregled 3D NOW! Instrukcija Arhitektura AMD procesora

  3. Sadržaj (nastavak) • Arhitektura 64 bitnih procesora • Poređenje 32 bitne i 64 bitne arhitekture • Primena 64 bitne arhitekture • AMD 64 arhitektura i Athlon 64 procesor • Registri • Instrukcije Arhitektura AMD procesora

  4. O kompaniji AMD • Kompanija Advanced Micro Devices osnovana je 1969. godine. • 1969. – Prvi proizvod je AMD9300 “shift registar”. • 1974. – AMD ima 1500 zaposlenih. Profit iznosi oko 26.5 miliona US$. • 1975. – Am9101, 8080A i Am2900 Arhitektura AMD procesora

  5. O kompaniji AMD • 8080A je bio klonirana verzija Intel-ovog 8080 procesora. • Am2900 bio je “bit-slice” procesor. • Osamdesetih godina XX veka, AMD masovnije počinje da proizvodi klonove Intel-ovih x86 procesora. • 1981. – AMD uvodi standard za kvalitet INT.STD.1000. Arhitektura AMD procesora

  6. O kompaniji AMD • 1986. – EEPROM kapaciteta od 1 miliona bitova. Saradnja sa SONY-jem. • 1991. – Am386, alternativa 80386 procesora. • 1994. – Am486. • 1997. – Saradnja sa NextGen-om na proizvodnji AMD K6 procesora Arhitektura AMD procesora

  7. O kompaniji AMD • 1998. – Pojava 3DNow! tehnologije i njena implementacija na K6-2 procesor. • 1999. – Athlon • 2000. – MirrorBit i PowerNow tehnologije i pojava Athlon procesora na frekvenciji većoj od 1 GHz. Arhitektura AMD procesora

  8. O kompaniji AMD • 2001. – Prvo AMD-ovo multiprocesorsko rešenje. • 2002. – Proizvodnja procesora u 0.13 mikronskom procesu. Proizveden procesor AMD Alchemy™ Au1100. • 2003. – Prvi AMD 64 procesori, Opteron i Athlon 64. Arhitektura AMD procesora

  9. O kompaniji AMD • 2004. – Sempron, oslabljena verzija Athlon 64 procesora. Iste godine, AMD objavljuje prvi procesor sa dva jezgra. Arhitektura AMD procesora

  10. AMD-ovi procesori Arhitektura AMD procesora

  11. 32 bitni procesori AM486 DX Athlon

  12. AM486 DX Blok dijagram Registri Instrukcije

  13. AM486 • 0.7 mikronska tehnologija • Preko milion tranzistora • Često korišćene instrukcije izvršavaju se u jednom ciklusu • 100 % kompatibilni sa 386 procesorima(downward compatibility) • Write-back cache Arhitektura AMD procesora

  14. AM486 • Dva režima rada: • real address mode (real mode) • AM486 procesor radi kao veoma brz 8086 procesor. Ovaj režim prvenstveno služi za podešavanje procesora za rad u protected mode-u. • virtual address mode (protected mode) • omogućava upravljanje memorijskim straničenjem (eng. paging). Arhitektura AMD procesora

  15. Blok dijagram (AM486) Arhitektura AMD procesora

  16. Registri • Osnovni registri • Registri opšte namene • Pokazivač instrukcija (Instruction Pointer) • Registri sa flag-ovima • Segmentni registri • System Level registri • Kontrolni registri • Registri sistemskih adresa • Registri za rad sa operacijama u pokretnom zarezu • Registri podataka • Tag Word • Status Word • Pokazivači na instrukcije i podatke (Instruction And Data Pointers) • Control Word • Debug i Test registri Arhitektura AMD procesora

  17. Registri opšte namene • Ima ih osam: EAX, EBX, ECX, EDX, ESI, EDI, EBP i ESP. • Oni mogu da skladište adrese ili podatke. • Podržavaju operande podataka dužine od 1, 8, 16 ili 32 bita • Dužina polja je od 1 do 32 bita. • Adresni operandi mogu biti 16 ili 32 bita. Arhitektura AMD procesora

  18. Pokazivač instrukcija • Ovo je 32-bitan registar EIP i on sadrži adresu sledeće instrukcije koja će biti izvršena. • Drugačije se naziva brojač naredbi (Program Counter). Arhitektura AMD procesora

  19. Registri sa flag-ovima • Procesorski flag-oviskladište informacije o pojedinim procesorskim funkcijama. • Oni se nalaze u registrima sa flag-ovima. • Kod AM486, naziv ovog registra je EFLAGS koji sadrži i podregistar FLAGS (od 0. do 15. bita) koji se najviše koristi za izvršavanje 8086 i 80286 koda. Arhitektura AMD procesora

  20. Registri sa flag-ovima Arhitektura AMD procesora

  21. Registri sa flag-ovima • AC (alignment check, bit 18) omogućava generisanje grešaka pri pozivanju adrese koja nije složena (misaligned). • VM (virtual 8086 mode, bit 17), ukoliko se uključi (postavi na vrednost 1), omogućava 8086 virtuelni režim u Protected Mode-u rada procesora. • RM (resume flag, bit 16) se koristi kod breakpoint-a debug registra. Ukoliko se uključi, svaka greška kod debug-ovanja se ignoriše pri izvršavanju sledeće instrukcije. Arhitektura AMD procesora

  22. Registri sa flag-ovima • NT (nested task, bit 14) je flag koji se koristi u Protected Mode-u. On služi kao indikator da li je trenutno izvršavan zadatak povezan sa nekim drugim zadatkom. • IOPL (Input/Output Privilege Level, bitovi 13 i 12) pokazuje najveću vrednost CPL (current privilege level) dozvoljenu za izvršavanje ulazno-izlaznih instrukcija bez generisanja izuzetka broj 13 ili konsultovanja IO Permission Bitmape. • OF (overflow flag, bit 11) dobija vrednost 1 ukoliko se umesto rezultata operacije dobije greška overflow. Do overflow greške može doći, recimo, pri traženju veoma velikog stepena nekog broja. Arhitektura AMD procesora

  23. Registri sa flag-ovima • DF (direction flag, bit 10) definiše da li se ESI i/ili EDI registri inkrementiraju ili dekrementiraju u toku izvršavanja string instrukcija. • IF (INTR enable flag, bit 9, kada je uključen, dozvoljava detekciju spoljnih prekida signaliziranih na INTR pinu. • TF (trap enable flag, bit 8) kontroliše generalizaciju izuzetka 1 pri debugovanju. • SF (sign flag, bit 7) je uključen ako je prvi bit rezultata jedan (ako je rezultat negativan). U protivnom, SF se resetuje. Arhitektura AMD procesora

  24. Registri sa flag-ovima • ZF (zero flag, bit 6) ima vrednost jedan ukoliko su svi bitovi rezultata 0. • AF (auxilliary carry flag, bit 4) koristi se radi pojednostavljenja operacija sabiranja i oduzimanja • PF (parity flags, bit 2) je uključen ukoliko je poslednjih osam bitova operacije sadržan neparan broj jedinica. • CF (carry flag, bit 0) je uključen ako operacija rezultuje sabiranjem ili oduzimanjem u high-order bitu. Arhitektura AMD procesora

  25. Segmentni i System Level registri • Segmentni registri (ima ih 6, to su: CS, SS, DS, ES, FS i GS) skladišti vrednosti segment selector-a koje identifikuju trenutno adresibilne segmente memorije. • System Level registri kontrolišu operacije na on-chip cache memoriji, zatim on-chip jedinici za rad sa pokretnim zarezom, kao i mehanizme za straničenje i segmentaciju. Arhitektura AMD procesora

  26. Set registara za rad sa operacijama u pokretnom zarezu • Sastoji se od registara podataka, tag word registra, kontrolnog registra, statusnog registra i pokazivača na instrukcije i podatke. Arhitektura AMD procesora

  27. Set registara za rad sa operacijama u pokretnom zarezu Arhitektura AMD procesora

  28. Registri podataka • Postoji 8 registara podataka (od R0 do R7) dužine po 80 bita. • Svaki od ovih registara je podeljen na tri polja: • znak (dužine 1 bita) • eksponent (15 bitova) • mantisu (64 bita). • FPU registrima je moguće pristupiti na dva načina: kao steku ili fiksnom setu registara gde se instrukcije izvršavaju uz pomoć posebnih registara. Arhitektura AMD procesora

  29. Registri podataka • TOP polje statusne reči identifikuje trenutni registar vrha steka. • Operacija PUSH dekrementira TOP polje i učitava vrednost u novi registar na vrhu, a operacija POP sklanja vrednost sa vrha steka i zatim inkrementira TOP. Arhitektura AMD procesora

  30. Još neki registri... • Tag word obeležava sadržaj svakog numeričkog registra podataka. On prvenstveno služi da optimizuje performanse FPU-a i upravljanja stekom tako što smanjuje razliku između praznih i punih registarskih lokacija. • Status word (statusna reč) je 16-bitni registar koji ima ulogu da prati ukupno stanje rada FPU. • Debug registri, kojih ima šest, omogućavaju on-chip podršku za debugovanje. Oni služe za postavljanje breakpoint-a. Arhitektura AMD procesora

  31. Instrukcije • Setovi instrukcija AM486 DX procesora mogu da se podele u jedanaest kategorija operacija: • Transferi podataka • Aritmetičke • Operacije pomeranja i rotiranja (Shift i Rotate) • Manipulacija sa stringovima • Manipulacija sa bitovima • Kontrolni transferi • Podrška viših programskih jezika • Podrška operativnog sistema • Kontrola procesora • Operacije za rad u pokretnom zarezu • Kontroler operacija za rad u pokretnom zarezu Arhitektura AMD procesora

  32. Instrukcije • Instrukcije AM486 procesora mogu da budu: • nulaadresne • jednoadresne • dvoadresne ili • troadresne. • Većina nulaadresnih instrukcija je veličine od samo jednog bajta (npr. CLI, STI). Arhitektura AMD procesora

  33. Instrukcije • Jednoadresne instrukcije obično su dužine 2 bajta • Prosečna veličina instrukcija je 3.2 bajta. • Kod AM486 procesora odjednom se u proseku može uzeti deset instrukcija, zbog 32-bitnog reda čekanja. Arhitektura AMD procesora

  34. Instrukcije • Primeri opštih instrukcija sa dva operanda su: • Register to Register • Memory to Register • Memory to Memory • Immediate to Register • Register to Memory • Immediate to Memory Arhitektura AMD procesora

  35. Instrukcije • Operandi mogu biti dužine od 8, 16 ili 32 bita. • U opštem slučaju, pri izvršavanju 486 ili 386 mikroprocesorskog koda (32-bitni kod), operandi su osmobitni ili tridesetdvobitni • Pri izvršavanju 80286 ili 8086 instrukcija (16-bitni kod), operandi su osmobitni ili šesnaestobitni. Arhitektura AMD procesora

  36. Athlon Blok dijagram Pregled 3D Now! instrukcija

  37. AMD Athlon • Athlon procesor se zasniva na sedmoj generaciji x86 mikroarhitekture koju karakteriše: • superpipeline paralelizam i • superskalarna mikroarhitektura. • Ima 22 miliona tranzistora • L1 cache je dvostruki (128 KB = 64 KB + 64 KB) Arhitektura AMD procesora

  38. AMD Athlon • Ovaj procesor poseduje: • Dvosmernu tablicu predviđanja (Prediction Table), koja služi za predviđanje grananja, odnosno skokova • Više paralelnih dekodera x86 instrukcija • Više celobrojnih i decimalnih raspoređivača (Scheduler) koji služe za nezavisno, superskalarno, out-of-order izvršavanje instrukcija. Arhitektura AMD procesora

  39. AMD Athlon • AMD Athlon se, čim se pojavio, proizvodio sa K7 jezgrom. • Kasnije su implementirana sledeća jezgra: • Thunderbird (0.18 mikronska tehn.) • Thoroughbred (0.13 mikronska tehn.) • Barton (0.13 mikronska tehn.) Arhitektura AMD procesora

  40. AMD Athlon • Athlon ne izvršava direktno x86 instrukcije. • Pomoću tri dekodera x86 instrukcija, x86 instrukcije se prevode u makrooperacije fiksne dužine. • To omogućava jednostavnije korišćenje pipelining-a. Arhitektura AMD procesora

  41. Blok dijagram Arhitektura AMD procesora

  42. Dekoderi instrukcija Arhitektura AMD procesora

  43. Pipelining kod Athlon-a Arhitektura AMD procesora

  44. 3D Now! instrukcije • Athlon procesori su obogaćeni setom instrukcija, nazvanim 3D Now Enhanced koji, pored već postojeće 21 3D Now instrukcije (koje su koristile FP instrukcije u cilju ubrzavanja (akceleracije) trodimenzionalne grafike), obuhvataju i 24 novih instrukcija, koje karakteriše sledeće: • Dvanaest instrukcija koje poboljšavaju multimedijalna celobrojna izračunavanja. Ovo se primenjuje najviše u programima za prepoznavanje glasa i montažu video materijala. • Sedam instrukcija koje ubrzavaju pomeranje podataka u cilju detaljnije grafike i funkcionalnosti dodataka (plugins) za Internet browsere. • Pet instrukcija za procesiranje digitalnog video signala, što poboljšava performanse komunikacionih aplikacija. Arhitektura AMD procesora

  45. 64 bitni procesori Poređenje 32 bitne i 64 bitne arhitekture Primena 64 bitne arhitekture Athlon 64 procesor

  46. 64 bitni procesori • Prvi 64-bitni procesor je bio R4000, proizvođača MIPS Technologies, koji datira iz davne 1991. godine. • On se koristio za SGI grafičke radne stanice i pokretao je 64-bitni operativni sistem IRIX, zasnovan na UNIX-u. Arhitektura AMD procesora

  47. 64 bitni procesori • Nakon ovog procesora, kompanije kao što su IBM, SUN i HP, napravile su svoje 64 bitne procesore za velike serverske sisteme. • 64 bitni procesori počeli masovnije da se proizvode kada je Intel 2001. objavio svoj serverski 64 bitni procesor Itanium. • 2003 – AMD je proizveo procesore Opteron i Athlon 64, koji je već namenjen za krajnje korisnike. Trenutno je to jedini 64-bitni procesor za krajnje kućne korisnike. Arhitektura AMD procesora

  48. 64 bitni procesori • 64 bitna arhitektura se zasniva na korišćenju 64-bitnih registara umesto dosadašnjih 32-bitnih. • Upotreba većih registara dolazi do izražaja pri radu sa celim brojevima većim od 32 bita, što je relativno neuobičajeno za današnji softver. Arhitektura AMD procesora

  49. 64 bitni procesori • Kada je reč o FP operacijama, 64-bitni registri daju veću preciznost, jer može da stane više brojeva iza decimalnog zareza. • Međutim, kod x86 arhitekture, FP registri su 80-bitni, tako da se ovde ne dobija prednost u odnosu na 32-bitnu arhitekturu. Arhitektura AMD procesora

  50. 32-bit vs. 64-bit Arhitektura AMD procesora

More Related