Alfa 21264

parapamje| Mikroarkitekturë Alpha 21264.
**Alpha 21264** është një mikroprocesor RISC i zhvilluar nga Digital Equipment Corporation i lançuar më 19 tetor 1998. 21264 zbatoi arkitekturën e grupit të instruksioneve Alpha (ISA).

## Përshkrimi 
Alpha 21264 është një mikroprocesor superskalar me katër çështje me ekzekutim të jashtëzakonshëm dhe ekzekutim spekulativ . Ka një shkallë maksimale të ekzekutimit prej gjashtë instruksionesh për cikël dhe mund të mbajë katër instruksione për cikël. Ka një tubacion udhëzues me shtatë faza.

### Ekzekutimi jashtë rendit 
Në çdo fazë të caktuar, mikroprocesori mund të ketë deri në 80 instruksione në faza të ndryshme të ekzekutimit, duke tejkaluar çdo mikroprocesor tjetër bashkëkohor.

Instruksionet e dekoduara mbahen në radhët e instruksioneve dhe lëshohen kur operandët e tyre janë të disponueshëm. Radha e numrave të plotë përmbante 20 hyrje dhe radhën me pikë lundruese 15. Çdo radhë mund të lëshonte aq udhëzime sa kishte tubacione.

### Ebox 
Ebox ekzekuton integer, ngarkon dhe ruan instruksionet. Ai ka dy njësi me numra të plotë, dy njësi të ruajtjes së ngarkesës dhe dy skedarë regjistrash me numra të plotë. Çdo skedar i regjistrit të numrave të plotë përmbante 80 hyrje, nga të cilat 32 janë regjistra arkitekturorë, 40 janë regjistra të riemërtimit dhe 8 janë regjistra hije PAL. Nuk kishte asnjë hyrje për regjistrin R31 sepse në arkitekturën Alpha, R31 është i lidhur në zero dhe është vetëm për lexim.

Çdo skedar regjistri shërbente një njësi të plotë dhe një njësi të ruajtjes së ngarkesës, dhe skedari i regjistrit dhe dy njësitë e tij referohen si një "grup". Të dy grupet u caktuan U0 dhe U1. Kjo skemë u përdor pasi zvogëloi numrin e portave të shkrimit dhe leximit të nevojshëm për të shërbyer operandët dhe për të marrë rezultate, duke zvogëluar kështu madhësinë fizike të skedarit të regjistrit, duke i mundësuar mikroprocesorit të funksionojë në frekuenca më të larta të orës. Kështu, shkrimet në cilindo nga skedarët e regjistrit duhet të sinkronizohen, gjë që kërkonte një cikël orar për të përfunduar, duke ndikuar negativisht në performancën me një përqind. Ulja e performancës që rezulton nga sinkronizimi u kompensua në dy mënyra. Së pari, frekuenca më e lartë e orës e arritshme kompenson humbjen. Së dyti, logjika përgjegjëse për çështjen e udhëzimeve shmangi krijimin e situatave ku skedari i regjistrit duhej të sinkronizohej duke lëshuar udhëzime që nuk vareshin nga të dhënat e mbajtura në skedarët e tjerë të regjistrit aty ku ishte e mundur.

Grupet janë pothuajse identike me përjashtim të dy dallimeve: U1 ka një shumëzues me tubacione me shtatë cikle ndërsa U0 ka një tubacion me tre cikle për ekzekutimin e udhëzimeve të videove të lëvizjes (MVI), një shtrirje në Arkitekturën Alpha që përcakton udhëzimet me të dhëna të shumëfishta me një instruksion (SIMD). për multimedia.

Njësitë e ruajtjes së ngarkesës janë njësi të thjeshta logjike aritmetike që përdoren për të llogaritur adresat virtuale për aksesin në kujtesë. Ata janë gjithashtu të aftë të ekzekutojnë udhëzime të thjeshta aritmetike dhe logjike. Logjika e lëshimit të udhëzimeve Alpha 21264 përdori këtë aftësi, duke lëshuar udhëzime për këto njësi kur ato ishin të disponueshme për përdorim (duke mos kryer aritmetikë adresash).

Prandaj, Ebox ka katër grumbullues 64-bitësh, katër njësi logjike, dy zhvendosës fuçi, logjikë të manipulimit të bajtit, dy grupe të logjikës së degëve të kushtëzuara të ndara në mënyrë të barabartë midis U1 dhe U0.

### Fbox 
Fbox është përgjegjës për ekzekutimin e udhëzimeve me pikë lundruese . Ai përbëhet nga dy tubacione me pikë lundruese dhe një skedar regjistri me pikë lundruese. Tubacionet nuk janë identike, njëri ekzekuton shumicën e instruksioneve dhe tjetri vetëm shumëfishon instruksionet. Tubacioni i grumbullimit ka dy njësi pa tubacion të lidhur me të, një njësi ndarëse dhe një njësi rrënjë katrore. Shtesat, shumëzimet dhe shumica e udhëzimeve të tjera kanë një vonesë me 4 cikle, një ndarje me saktësi të dyfishtë ka një vonesë prej 16 ciklesh dhe një rrënjë katrore me saktësi të dyfishtë ka një vonesë prej 33 ciklesh. Skedari i regjistrit me pikë lundruese përmban 72 hyrje, nga të cilat 32 janë regjistra arkitektonikë dhe 40 janë regjistra të riemërtimit.

### Cache 
Alpha 21264 ka dy nivele cache, një memorie të fshehtë parësore dhe një memorie të fshehtë dytësore. Cache e nivelit të tretë (L3, ose "viktimë") e Alpha 21164 nuk u përdor për shkak të problemeve me gjerësinë e brezit.

#### Memoriet primare 
Memoria primare ndahet në memorie të veçanta për udhëzime dhe të dhëna (" arkitekturë e modifikuar e Harvardit "), përkatësisht në memorien I dhe memorien D. Të dy cache kanë një kapacitet prej 64 KB. D-cache është me porta të dyfishta duke transferuar të dhëna në të dy skajet në rritje dhe në rënie të sinjalit të orës. Kjo metodë e portimit të dyfishtë mundësoi çdo kombinim të leximeve ose shkrimeve në cache çdo cikël të procesorit. Ai gjithashtu shmangu dyfishimin e cache-së, kështu që ka dy, si në Alpha 21164. Dublikimi i cache-it kufizoi kapacitetin e cache-së, pasi kërkonte më shumë transistorë për të siguruar të njëjtën sasi kapaciteti, dhe nga ana tjetër rriti zonën e kërkuar dhe fuqinë e konsumuar.

#### B-cache 
Cache dytësore, e quajtur B-cache, është një cache e jashtme me një kapacitet prej 1 deri në 16 MB. Ai kontrollohet nga mikroprocesori dhe zbatohet nga çipat sinkron të memories statike me akses të rastësishëm (SSRAM) që funksionojnë në dy të tretat, gjysmën, një të tretën ose një të katërtën e frekuencës së orës së brendshme, ose 133 deri në 333&nbsp;MHz në 500&nbsp;MHz. B-cache u aksesua me një autobus të dedikuar 128-bit që funksionon në të njëjtën frekuencë të orës si SSRAM ose me dyfishin e frekuencës së orës nëse përdoret SSRAM me shpejtësi të dyfishtë të të dhënave . B-cache është hartuar drejtpërdrejt. 

### Parashikimi i degës 
Parashikimi i degës kryhet nga një algoritëm i parashikimit të degës së turneut. Algoritmi u zhvillua nga Scott McFarling në Digital's Western Research Laboratory (WRL) dhe u përshkrua në një punim të vitit 1993. Ky parashikues u përdor pasi Alpha 21264 ka një dënim minimal për parashikimin e gabuar të degës prej shtatë ciklesh. Për shkak të vonesës me dy cikle të cache-it të udhëzimeve dhe radhëve të udhëzimeve, dënimi mesatar i parashikimit të gabuar të degës është 11 cikle. Algoritmi mban dy tabela të historisë, Local dhe Global, dhe tabela e përdorur për të parashikuar rezultatin e një dege përcaktohet nga një parashikues Choice.

Parashikuesi lokal është një tabelë me dy nivele e cila regjistron historinë e degëve individuale. Ai përbëhet nga një tabelë e historisë së degëve me 1024 hyrje nga 10-bit. Një tabelë me dy nivele u përdor pasi saktësia e parashikimit është e ngjashme me atë të një tabele më të madhe me një nivel, ndërsa kërkon më pak pjesë të ruajtjes. Ka një tabelë parashikimi të degëve me 1024 hyrje. Çdo hyrje është një numërues i ngopjes 3-bit. Vlera e numëruesit përcakton nëse dega aktuale merret apo jo.

Parashikuesi global është një tabelë e historisë së degëve me një nivel të vetëm, me 4096 hyrje. Çdo hyrje është një numërues 2-bit i ngopjes; vlera e këtij numëruesi përcakton nëse dega aktuale merret apo jo.

Parashikuesi i zgjedhjes regjistron historinë e parashikuesve lokalë dhe globalë për të përcaktuar se cili parashikues është më i miri për një degë të caktuar. Ajo ka një tabelë të historisë së degëve me 4,096 hyrje. Çdo hyrje është një numërues ngopjeje 2-bitësh. Vlera e numëruesit përcakton nëse përdoret parashikuesi lokal apo global.

### Ndërfaqja e jashtme 
Ndërfaqja e jashtme përbëhej nga një autobus i të dhënave me shpejtësi të dyfishtë 64-bitësh (DDR) me dy drejtime dhe dy autobusa adresash dhe kontrolli të njëanshëm 15-bitësh, një për sinjalet me origjinë nga Alpha 21264 dhe një për sinjalet me origjinë nga sistemi. Digital e licencoi autobusin për pajisje mikro të avancuara (AMD), dhe më pas u përdor në mikroprocesorët e tyre Athlon, ku u njoh si autobusi EV6.

## Adresimi i memories 
CPU Alpha 21264 mbështet adresën virtuale 48-bit ose 43-bit (përkatësisht hapësirë adresash virtuale 256 TiB ose 8 TiB), e zgjedhur nën kontrollin IPR (duke përdorur regjistrin e kontrollit VA_CTL). Alpha 21264 mbështet një adresë fizike 44-bit (deri në 16 TiB memorie fizike). Kjo është një rritje nga CPU-të e mëparshme Alpha (43-bit virtual dhe 40-bit fizik për Alpha 21164, dhe 43-bit virtual dhe 34-bit fizik për Alpha 21064 ). 

## Fabrikim 
Alpha 21264 përmbante 15.2 milionë transistorë. Logjika përbëhej nga afërsisht gjashtë milionë transistorë, me pjesën tjetër të përmbajtur në cache dhe tabelat e historisë së degëve. Vdekja ishte 16.7&nbsp;mm me 18.8&nbsp;mm (313,96&nbsp;mm²).  Është fabrikuar në 0.35&nbsp;μm proces plotësues metal  oksid  gjysmëpërçues (CMOS) me gjashtë nivele ndërlidhjeje.

## Paketimi 
Alpha 21264 u paketua në një grup rrjeti me pin intersticial qeramik 587-pin (IPGA).

Alpha Processor, Inc. më vonë shiti Alpha 21264 në një paketë Slot B që përmban mikroprocesorin e montuar në një tabelë të qarkut të printuar me B-cache dhe rregullatorët e tensionit. Dizajni kishte për qëllim të përdorte suksesin e mikroprocesorëve të bazuar në slot nga Intel dhe AMD. Slot B fillimisht u zhvillua për t'u përdorur edhe nga AMD's Athlon, në mënyrë që API të mund të merrte materiale për Slot B me çmime mallrash në mënyrë që të reduktonte koston e Alpha 21264 për të fituar një pjesë më të gjerë të tregut. Kjo nuk u materializua kurrë pasi AMD zgjodhi të përdorte Slot A për Atlonet e tyre të bazuara në slot.

## Derivatet 
### Alfa 21264A 
parapamje| Alfa 21264A
**Alpha 21264A**, me emrin e koduar **EV67** ishte një tkurrje e Alpha 21264 e prezantuar në fund të 1999. Kishte gjashtë versione: 600, 667, 700, 733, 750, 833&nbsp;MHz. EV67 ishte mikroprocesori i parë Alfa që zbatoi zgjerimin e numërimit (CIX), i cili zgjeroi grupin e instruksioneve me udhëzime për kryerjen e numërimit të popullsisë . Është fabrikuar nga Samsung Electronics në 0.25&nbsp;μm proces CMOS që kishte 0.25&nbsp;transistorë μm por 0.35&nbsp;μm shtresa metalike. Die kishte një sipërfaqe prej 210&nbsp;mm². EV68 përdorte një furnizim me energji 2.0 V. Ai shpërndau një maksimum prej 73 W në 600&nbsp;MHz, 80 W në 667&nbsp;MHz, 85 W në 700&nbsp;MHz, 88 W në 733&nbsp;MHz dhe 90 W në 750&nbsp;MHz.
### Alfa 21264B 
**Alpha 21264B** është një zhvillim i mëtejshëm për rritjen e frekuencave të orës. Kishte dy modele, një i fabrikuar nga IBM, me emrin e koduar **EV68C** dhe një nga Samsung, me emrin e koduar **EV68A** .

EV68A është fabrikuar në 0.18&nbsp;μm proces CMOS me ndërlidhje alumini . Ajo kishte një madhësi prej 125&nbsp;mm², një e treta më e vogël se Alpha 21264A, dhe përdorte një furnizim me energji 1.7 V. Ai ishte i disponueshëm në vëllim në 2001 në frekuencat e orës 750, 833, 875 dhe 940&nbsp;MHz. EV68A shpërndau një maksimum prej 60 W në 750&nbsp;MHz, 67 W në 833&nbsp;MHz, 70 W në 875&nbsp;MHz dhe 75 W në 940&nbsp;MHz. 

EV68C është fabrikuar në 0.18&nbsp;μm proces CMOS me ndërlidhje bakri. Ai u provua në fillim të vitit 2000 dhe arriti një frekuencë maksimale të orës prej 1.25&nbsp;GHz.

Në shtator 1998, Samsung njoftoi se do të prodhonte një variant të Alpha 21264B në një 0.18&nbsp;μm proces i varfëruar plotësisht silikoni në izolues (SOI) me ndërlidhje bakri që ishte në gjendje të arrinte një frekuencë orësh prej 1.5&nbsp;GHz. Ky version nuk u materializua kurrë.

### Alfa 21264C 
**Alpha 21264C**, me emrin e koduar **EV68CB** ishte një derivat i Alpha 21264. Ishte në dispozicion në frekuencat e orës 1.0, 1.25 dhe 1.33&nbsp;GHz. EV68CB përmbante 15.5 milionë transistorë dhe mat 120&nbsp;mm². Është fabrikuar nga IBM në 0.18&nbsp;μm proces CMOS me shtatë nivele të ndërlidhjes së bakrit dhe dielektrike me nivel të ulët K. Ai ishte i paketuar në një rrjetë rrjeti tokësor qeramik (CLGA) me 675 jastëkë me çipa rrotullues, me përmasa 49,53 me 49,53&nbsp;mm. EV68CB përdorte një furnizim me energji 1.7 V, duke shpërndarë një maksimum prej 64 W në 1.0&nbsp;GHz, 75 W në 1,25&nbsp;GHz dhe 80 W në 1.33&nbsp;GHz. 

### Alfa 21264D 
**Alpha 21264D**, me emrin e koduar **EV68CD** është një derivat më i shpejtë i fabrikuar nga IBM.

### Alfa 21264E 
**Alpha 21264E**, me emrin e koduar **EV68E**, ishte një derivat i anuluar i zhvilluar nga Samsung i shpallur për herë të parë më 10 tetor 2000 në Forumin e Mikroprocesorit 2000, i planifikuar për t'u prezantuar rreth mesit të vitit 2001. Përmirësimet ishin me një frekuencë më të lartë operimi prej 1.25&nbsp;GHz dhe shtimi i një memorie të fshehtë dytësore 1,85 MB. Ai do të fabrikohej në një proces CMOS 0,18 mikrometrash me ndërlidhje bakri.

Pajisjet mikro dixhitale dhe të avancuara (AMD) kanë zhvilluar të dyja chipet për Alpha 21264.

### 21272/21274 
Digital **21272**, i njohur gjithashtu si **Tsunami**, dhe 21274, i njohur gjithashtu si **Typhoon**, ishin çipat e parë për Alpha 21264. Çipi 21272 mbështeti shumë përpunim në një ose dy drejtime dhe deri në 8 GB memorie, ndërsa 21274 mbështeti përpunim me shumë drejtime një, dy, tre ose katër drejtime, deri në 64 GB memorie dhe të dy mbështetnin një ose dy 64- biti 33&nbsp;Autobusët PCI MHz. Ata kishin autobus memorie 128- deri në 512-bit i cili funksiononte në 83&nbsp;MHz, duke dhënë një gjerësi bande maksimale prej 5,312 MB/s. Chipset mbështeti 100&nbsp;MHz e regjistruar ECC SDRAM.

Çipi përbëhej nga tre pajisje, një çip C, një çip D dhe një çip P. Numri i pajisjeve që përbënin chipset-in ndryshonte siç përcaktohej nga konfigurimi i chipset-it. Çipi C është çipi i kontrollit që përmban kontrolluesin e memories. Kërkohej një çip C për çdo mikroprocesor.

Çipi P është kontrolluesi PCI, duke zbatuar një 33&nbsp;Autobus PCI MHz. 21272 mund të ketë një ose dy çipa P.

Çipi D është kontrolluesi DRAM, që zbaton aksesin në/nga CPU-të dhe në/nga çipi P. 21272 mund të ketë dy ose katër çipa D dhe 21274 mund të ketë dy, katër ose tetë çipa D.

21272 dhe 21274 u përdorën gjerësisht nga Digital, Compaq dhe Hewlett Packard në AlphaServers të nivelit fillestar deri në atë të mesëm dhe në të gjitha modelet e AlphaStation. Ai u përdor gjithashtu në produktet e palëve të treta nga Alpha Processor, Inc. (i njohur më vonë si API NetWorks) si p.sh. motherboard-in e tyre UP2000+.
### Irongate 
AMD zhvilloi dy çipa të përputhshëm me Alpha 21264, **Irongate**, i njohur gjithashtu si **AMD-751**, dhe pasardhësi i tij, **Irongate-2**, i njohur gjithashtu si **AMD-761** . Këto çipa janë zhvilluar për mikroprocesorët e tyre Athlon, por për shkak të licencimit të AMD, autobusi EV6 i përdorur në Alpha nga Digital, Athlon dhe Alpha 21264 ishin të pajtueshëm për sa i përket protokollit të autobusit. Irongate u përdor nga Samsung në pllakat e tyre amë UP1000 dhe UP1100. Irongate-2 u përdor nga Samsung në motherboard-in e tyre UP1500.

## Shihni gjithashtu 
* AlphaVM : Një emulator i plotë i sistemit DEC Alpha që funksionon në Windows ose Linux. Ai përmban një emulator me performancë të lartë të CPU-së Alpha.
* Grumbullim shumëfijesh
* Alfa 21364
* Alfa 21464

## Shënime 
## Referime 
* Compaq Computer Corporation (korrik 1999). *Manuali i referencës së harduerit të mikroprocesorit Alpha 21264* .
* Compaq Computer Corporation (qershor 2001). *Manuali i referencës së harduerit 21264/EV68CB dhe 21264/EV68DC* .
* Compaq Computer Corporation (mars 2002). *21264/EV67 Manuali i Referencës së Hardware-it të Mikroprocesorit* .
* Compaq Computer Corporation (mars 2002). *Manuali i referencës së harduerit të mikroprocesorit 21264/EV68A* .
* Gronowski, Paul E. et al. (1998). "Dizajni i mikroprocesorit me performancë të lartë". *IEEE Journal of Solid-State Circuits*, Vëllimi 33, Numri 5, fq. 676 &#x2013; 686.
* Gwennap, Linley (28 tetor 1996). "Digital 21264 Sets New Standard". *Raporti i mikroprocesorit*, Vëllimi 10, Numri 14. Burimet e MicroDesign.
* Kessler, RE; McLellan, EJ dhe Webb, DA (1998) "Arkitektura e mikroprocesorit Alpha 21264". *Punime të Konferencës Ndërkombëtare për Dizajnin Kompjuterik: VLSI në Kompjuterë dhe Përpunues* . fq.&nbsp;&#x2013; .
* Kessler, RE (1999). "Mikroprocesori Alpha 21264". *IEEE Micro*, Mars &#x2013; Prill 1999. fq.&nbsp;&#x2013; .
* Leibholz, Daniel dhe Razdan, Rahul (1997). "Alpha 21264: Një mikroprocesor i ekzekutimit jashtë rendit 500 MHz". ''Procedurat e Compcon '97* . fq.&nbsp;&#x2013; .
* Matson, M. et al. "Zbatimi i qarkut të një mikroprocesori RISC Superscalar 600 MHz". *Punime të Konferencës Ndërkombëtare për Dizajnin Kompjuterik: VLSI në Kompjuterë dhe Përpunues'' . fq.&nbsp;&#x2013; .