Letem světem mikroprocesorů

Transkript

Letem světem mikroprocesorů
MASARYKOVA UNIVERZITA Pedagogická fakulta
Seminární práce z
VÝPOČETNÍ TECHNIKY
LETEM MIKROPROCESOROVÝM SVĚTEM
I4004
Bartes Jan
- PENTIUM III
1. ročník Fy - Te
©1999 Jan Bartes ([email protected])
Letem mikroprocesorovým světem
OBSAH
str.
3
4
4
4
5
5
5
6
6
6
6
7
7
7
8
9
9
9
9
11
13
16
17
18
19
21
1. úvod
2. výroba mikroprocesoru
3. anatomie mikroprocesoru
3.1. registry
3.2. adresování
3.3. správa paměti
3.4. cache paměť
3.5. systém přerušení
4. Intel corporation
4.1. i4004
4.2. i8008
4.3. i8080
4.4. i8085
4.5. i8086
4.6. i8088
4.7. i80186
4.8. i80188
4.9. i80286
4.10. i80386
4.11. i80486
4.12. Intel Pentium
4.13. Intel Pentium Pro
4.14. Intel Pentium II
4.15. Intel Pentium III
5. rejstřík
6. literatura
- 2 -
©1999 Jan Bartes ([email protected])
Letem mikroprocesorovým světem
1.
ÚVOD
Na přelomu šedesátých a sedmdesátých let se objevil nový druh
elektronické součástky - mikroprocesor. Ten úplně změnil historii počítacích strojů. Staly se mnohem menší, výkonnější, levnější.
Co to vlastně je mikroprocesor? Již na první pohled zjistíme,
že je to spojení dvou slov „mikro“ a „procesor“. Mikro značí něco miniaturního a procesor věc, jenž dovede podle zadaného programu zpracovávat data. Z toho plyne, že mikroprocesor je malá
krabička se spoustou nožiček, která dovede neuvěřitelně rychle
pracovat s daty. Základní předností mikroprocesoru oproti jiným
elektronickým součástkám je programovatelnost. Druhou zásadní
vlastností je, že se jedná pouze o jeden jediný obvod a ne o
mnoha dílné zařízení.
Z předchozího odstavce je zřejmé, že mikroprocesor měl dva
předchůdce: procesory sálových počítačů a integrované obvody. Po
sálových počítačích zdědil svou univerzalitu (programovatelnost)
a po integrovaný obvodech kompaktnost a snadnou použitelnost.
Při návrhu mikroprocesoru se volí mezi koncepcí von Neumannovou a harwardskou. Zatímco von Neumannova architektura používá
jednu společnou paměť pro program a data, hardwardská architektura zavádí dvě odlišné paměti: paměť programu a paměť dat.
V dnešní době se hardwardská koncepce používá převážně u jednočipových mikroprocesorů, což jsou obvody, jenž mohou pracovat
samy o sobě. Tzn. bez různých přídavných pamětí (mají paměť integrovánu v sobě), doplňujících obvodů, apod. Pro tyto vlastnosti se „jednočipy“ používají ve spotřebičích jako jsou ledničky,
pračky,... Von Neumannova koncepce se prosadila u osobních počítačů, které oproti jednočipům nabízí větší modifikovatelnost celého systému. Toho se využívá například v osobních počítačích,
kde je paměť, sběrnice, podpůrné obvody, apod. umístěny mimo obvod, což umožňuje levnější modernizování a rozšiřování systému.
Přibližně v době vzniku 32-bitových mikroprocesorů se objevily dvě koncepce zpracování instrukcí: RISC (Reduced Instruction
Set Computer) a CISC (Complete Instruction Set Computer), které
se týkají pohledu na počet a vykonávání instrukcí programu. Zatímco RISC architektura sází na malý počet instrukcí a velice
rychlý výpočet, tak CISC zavádí velmi rozšířenou sadu instrukcí,
ale „pomalejší“ zpracování. Každá architektura má své pro a proti. V dnešní době se tyto koncepce slučují do jedné, která přejímá to nejlepší z obou.
U nejmodernějších mikroprocesorů se objevuje pojem superskalární architektura. Ta značí schopnost zpracování více instrukcí
najednou. Toho lze dosáhnout buď znásobením některých částí mikroprocesoru nebo fundovaným návrhem celého systému. Paralelní
zpracování ovšem nepřináší pouze výhody. Je jasné, že výkon superskalárního mikroprocesoru oproti klasickému sekvenčnímu se
zvýší ovšem na úkor „snadnosti“ návrhu synchronizace obvodových
částí. Další problémy nastanou např. u instrukcí, které modifikují paměť - případ kdy dvě současně prováděné instrukce modifikují stejnou paměťovou buňku.
- 3 -
©1999 Jan Bartes ([email protected])
Letem mikroprocesorovým světem
2.
VÝROBA MIKROPROCESORU
Prvním bodem výroby mikroprocesoru je jeho
návrh. Ten je testován na simulačních počítanávrh
čích a slouží k odhalení chyb. Po úspěšném
otestování funkcí se přechází k fázi výroby
simulace
křemíkových plátků, které jsou od začátku vyráběny v superčistém prostředí. Na rozdíl od
výroba křemíkových
běžné místnosti, ve které je asi 15 milionů
plátků
prachových částic na 28 400cm2, obsahuje „čistá“ místnost ve stejném objemu méně než 1
zapouzdření
prachovou částici. Křemík (hlavní složka písků) je základní součástí všech mikroprocesokonečné testování
rů.
Ten
se
musí
nejprve
vyčistit
na
99,9999999%, poté se roztaví a odlije do válcových forem, ve kterých vzniknou krystalické
obr. 2.1. výroba procesoru
ingoty. Ingoty se poté nařežou na tenké plátky, jejichž povrh se vyleští do dokonale
hladkého stavu. Z jednoho takto upraveného plátku lze vyrobit až 100
mikroprocesorů. Každý mikroprocesor je konstruován stejně jako vícepatrová budova, více vrstev materiálu spolu vytváří celek. Při výrobě
jednotlivých vrstev se používá technologie známá jako fotolitografie.
Prostřednictvím fotolitografie přenášíme postupně po jednotlivých
vrstvách design jednotlivých obvodů na křemíkový plátek. Schematický
návrh obvodů je připraven pro každou vrstvu ve formě masky či šablony.
Ta působí do jisté míry jako fotografický negativ tím, že se na křemíkový plátek přenese pouze část schématu obvodů. V závislosti na typu
vrstvy se na plátek následně nanesou různé vodivé nebo izolační materiály, umístí se přes něj maska a celý je vystaven působení ultrafialovému záření, čímž dojde k změkčení nezakrytých oblastí, které jsou
posléze rozpuštěny chemickými rozpouštědly. Celý tento proces se opakuje pro všechny vrstvy obvodů, přičemž vrstvy mají často velikost
bakteriální buňky. Poté co křemíkový plátek projde asi 250 výrobními
operacemi, je speciálními lasery nařezán na jednotlivé mikroprocesory
(polovodičový substrát - Die). Každý substrát je vložen do ochranného
pouzdra se špičkami (piny), kterými je možné mikroprocesor připojit
k jiným zařízením.
3.
ANATOMIE MIKROPROCESORU
3.1.
REGISTRY
Každý mikroprocesor dokáže pracovat s daty uloženými ve vnější paměti. Kromě toho má také malou (v porovnání s externí) vnitřní paměť
pro dočasné „bleskové“ operace s daty. Tato vnitřní paměť se dělí do
několika tzv. registrů, jejichž počet se u různých mikroprocesorů liší. Nejčastěji se setkáme s těmito registry:
• akumulátor (střadač) - univerzální registr, se kterým jako jediným lze provádět všechny operace. Moderní mikroprocesory zavádí
kvůli usnadnění více akumulátorů.
• indexový registr - umožňuje uchovávat adresu vnějších dat, které
mikroprocesor právě zpracovává.
• ukazatel zásobníku - speciální případ indexového registru. Zásobník se používá pro odkládání obsahu registrů a jejich opětovného obnovení, při zpracování podprogramu nebo přerušení.
• čítač programu - tento registr ukazuje na adresu právě prováděné
instrukce. K tomuto registru nemá programátor přístup.
• stavový registr - slouží k uchovávání některého stavu mikroprocesoru. Mikroprocesor obvykle obsahuje více stavových registrů.
- 4 -
©1999 Jan Bartes ([email protected])
Letem mikroprocesorovým světem
3.2.
ADRESOVÁNÍ
Adresovací systém mikroprocesoru umožňuje programátorovi přistupovat k paměti. Teoreticky může existovat velké množství adresovacích
modů, avšak v praxi se používají tyto:
• registr - jméno některého registru (u 80x86 DX, CX, ...). Nabízí
nejrychlejší manipulaci, díky umístění v jádře mikroprocesoru.
• nepřímá adresa - je obvykle tvořena součtem tří hodnot: dvou registrů (bázového a indexového) a explicitně zadané hodnoty.
• autorelativní adresa - používá se především u podmíněných skoků,
kdy se adresa skoku určí posunutím vůči aktuální pozici
• přímý operand - je uložen za instrukcí jako součást programu
3.3.
SPRÁVA PAMĚTI
Moderní mikroprocesory obsahují i jednotku řízení paměti, jejímž
úkolem je efektivní zpráva a rozdělování paměti běžícím programům aniž
by o její existenci věděly. Dalším neméně důležitým úkolem je ochrana
paměti jednoho programu před přístupem druhých. Tato vlastnost nachází
uplatnění v prostředí, kde běží „současně“ více programů.
3.4.
CACHE PAMĚŤ
Současné mikroprocesory dokáží pracovat mnohem rychleji než standardní paměťové obvody. To znamená, že pokud bychom chtěli synchronizovanou komunikaci paměti s procesorem vyšlo by nás to velmi draho.
Proto se přidává tzv. cache paměť, která je rychlá a pracuje jako prostředník mezi procesorem a pomalou operační pamětí. Její funkce spočívá v pravděpodobnosti použití stejných dat v krátkém časovém odstupu.
Dnes existuje soustava cache pamětí - v procesoru (řád desítek kB) a
mezi operační pamětí a procesorem (řád stovek kB).
instrukční registr
adresový registr
dekodér instrukcí
řadič
vnitřní
řídící
sběrnice
všeobecné registry
vnitřní
sběrnice
dat,
instrukcí
a výsledků
zásobníková paměť
vnitřní
sběrnice
operandů
ukazatel zásobníku
indexové registry
programový čítač
stavový registr
akumulátor
aritmeticko-logická
jednotka
obousměrný zesilovač sběrnice dat
řídící
sběrnice
datová
sběrnice
zesilovač sběrnice
adres
adresová
sběrnice
obr. 3.1 obecná struktura univerzálního mikroprocesoru
- 5 -
©1999 Jan Bartes ([email protected])
Letem mikroprocesorovým světem
3.5.
SYSTÉM PŘERUŠENÍ
Pravděpodobně všechny dnešní procesory obsahují tzv. vektorový systém přerušení. Každé přerušení je identifikováno číslem. Na určitém
místě v operační paměti je tabulka vektorů přerušení, ve které je jsou
uchovány adresy obslužných rutin. V okamžiku přerušení je stav procesoru uložen a řízení je předáno na adresu v tabulce vektorů, která je
určena číslem přerušení. Tato schopnost umožňuje použít vlastní obsluhovací rutiny jednoduchým zapsáním jejich adresy v operační paměti do
tabulky vektorů.
4. INTEL
CORPORATION
Firma byla založena Gordonem E. Moorem (moorův zákon str.)a Robertem N. Noycem v roce 1968 se záměrem konstruovat složité křemíkové čipy. Výrobní program společnosti Intel se od počátku soustředil na vývoj a výrobu integrovaných obvodů. Podle tohoto vytýčeného programu
vytvořily název firmy Integrated Electronic. Intel stál na počátku 70.
let u zrodu mikroprocesoru a dynamické paměti.
4.1. I4004
Mikroprocesor i4004 byl vyroben v roce 1970 na zakázku pro japonskou firmu Busicom. Čip , jehož autorem byl Marcian Hoff, obsahoval
2300 tranzistorů na křemíkovém plátku 3 mm x 4 mm a byl určen pro použití v kapesních kalkulátorech. 4-bitový, 108 kHz procesor se prodával
za cenu 200 dolarů, což mu zaručilo poměrně dobrou prodejnost. Mikroprocesor se od existujících integrovaných obvodů lišil především svou
schopností pracovat s instrukcemi. Obvod byl vyroben 10 mikronovou
technologií.
předchůdci i4004:
4001
4002
4003
4004
-
2,048-bit ROM paměť
320-bit RAM paměť
10-bit I/O posuvný registr
4-bit centrální procesorová jednotka (Central Processor Unit)
4.2. I8008
První osmibitový mikroprocesor i8008 byl vyvinut v roce 1971. Byl
sestaven z 3500 tranzistorů, uměl adresovat až 64 kB paměti a pracoval
na frekvenci 200 kHz. Jeho výkon se pohyboval kolem 60.000 instrukcí
budič sběrnice
vnitřní sběrnice
registr a
registr b
aritmeticko-logická
jednotka
příznaky
instrukční registr
dekodér
instrukcí
časování a řízení
obr. 4.1. blokové schéma i8008
- 6 -
systémový
zásobník
pole
registrů
©1999 Jan Bartes ([email protected])
Letem mikroprocesorovým světem
za sekundu. Byl vyráběn technologií MOS s P-kanálem se šířkou spojů 10
mikronů. Sestavu mikropočítačového systému tvoří CPU 8008 ve spojení
s obvody I/O a libovolným typem rychlých polovodičových pamětí.
Mikroprocesor i8008 obsahuje 6 osmibitových registrů dat, osmibitový střadač, 2 osmibitové pomocné registry a,b, 4 testovatelné příznakové bity, osmibitovou paralelní aritmetickou jednotku, 14-bitový programový čítač a 7 14-bitový registrů, které tvoří zásobník návratových
adres, při volání podprogramů.
4.3. I8080
Mikroprocesor i8080 byl uveden na trh v roce 1974, obsahoval 6000
tranzistorů. Použitá technologie MOS s N-kanálem se šířkou spojů 6 mikronů a základní frekvencí 2 MHz umožnila vykonávat 20 krát více instrukcí za sekundu než i4004. CPU (central processor unit) obsahuje 6
registrů dat, 4 dočasné registry, akumulátor (vše 8-bitové), 5 testovatelných příznakových bitů a 8-bitovou paralelní ALU (arithmeticallogical unit). Procesor má dvě sběrnice: 16-bitovou adresovou a 8bitovou datovou. Instrukční soubor i8080 umožňuje:
• pracovat s registry: přesuny registr<->registr, registr<->paměť
• aritmetické operace s registry a střadačem: inkrement, dekrement, binární součin nebo rozdíl střadače s registrem nebo pamětí, operace s dekadickými čísly, komparace
• logické operace: AND, OR, ekvivalence, nonekvivalence střadače
s registry a pamětí
• instrukce programového čítače: podmíněné a nepodmíněné - skoky,
volání procedur, návraty
• instrukce vstupu a výstupu
• instrukce s čítačem programu a ukazatelem zásobníku
• instrukce ošetření přerušení: povolení, zabránění, restart
• instrukce HLT
Instrukce mohou mít velikost 1, 2 nebo 3 byty. Typické jednobajtové
instrukce jsou přesuny, aritmetická a logické operace, rotace, PUSH
(uložení na zásobník), POP (vyzvednutí ze zásobníku). Mezi dvoubajtové
instrukce patří instrukce, které nahrávají následná data nebo operace
Input/Output. Instrukce skoků (JMP, CALL) patří do skupiny tříbajtových instrukcí.
4.4. I8085
Na počátku roku 1976 začat Intel vyrábět a prodávat i8085. Pracoval
na frekvenci 5 MHz a využíval 6 500 tranzistorů. i8085 je až na dvě
nové instrukce totožný s i8080.
4.5. I8086
Byl uveden v březnu 1976 a obsahoval 29 000 tranzistorů při použití
technologie HMOS se šířkou kanálu 3 mikrony. CPU může pracovat s daty
o šířce 8 nebo 16 bitů. Je taktován 4,77 MHz krystalem (později 8
MHz). i8086 byl vůbec prvním 16-bitovým mikroprocesorem a díky tomu se
stal základem nejrozšířenějších počítačů třídy IBM PC XT.
i8086 má dvanáct vnitřních šestnáctibitových registrů přístupných
přímo a dva registry přístupné nepřímo (čítač instrukcí a registr přepínačů). Mezi přímo přístupné registry patří čtveřice segmentových registrů - CS, DS, SS, ES. Zbylá osmice registrů lze označit za polouniverzální, neboť žádné dva registry nejsou ekvivalentní při použití.
Čtyři z nich jsou datové registry - AX, BX, CX, DX. Poslední čtyři registry - ukazatel zásobníku SP, base pointer BP, source index SI a
destination index DI. Instrukční soubor je oproti svým předchůdcům
doplněn o násobení, dělení, zpracování dat v dekadickém tvaru, operace
s jednotlivými bity, byty, slovy nebo bloky dat. Příjemným rozšířením
instrukční sady pro práci s řetězci je přidání sady prefixů REPx. Po-
- 7 -
©1999 Jan Bartes ([email protected])
Letem mikroprocesorovým světem
kud před instrukci pro práci s řetězci umístíme tento prefix bude se
daná operace opakovat dokud nenastane určitá podmínka(určená REP,
REPE, REPNE), nebo dokud neuplyne zadaný počet opakování.
budič sběrnice
AH AL
BH BL
CH CL
DH DL
SP
BP
SI
DI
ALU
operand 1
operand 2
příznaky
First In
First Out
fronta
Σ
dekodér
instrukcí
ES
CS
SS
DS
IP (PC)
časování a řízení
obr. 4.2. blokové schéma i8086
i8086 dovoluje adresovat až 1 MB operační paměti, která je dělena
na 64 kB bloky - segmenty, ke kterým se přistupuje pomocí segment registru v kombinaci s offset registrem. Počáteční adresy segmentů jsou
uloženy ve speciálních segmentových registrech CS, SS, DS a ES. Při
dekódování dvacetibitové adresy se segmentové registry používají jako
horních šestnáct bitů. Zbylé čtyři bity jsou doplněny nulami. Pro získání konečné adresy se k této hodnotě ještě přičte offsetový registr
(viz obr, 4.3.). O použití segmentových registrů rozhoduje systémová
logika tímto způsobem:
• registr CS - odkazy do kódu, tj. skoky, adresy podprogramů
• registr SS - operace se zásobníkem nebo pokud se používá ještě
registr BP
• registr ES - operace s řetězci bytů
• registr DS - ostatní manipulace s daty
offset
segment
0000
součet
adresa paměti
obr. 4.3. generace 20-ti bitové adresy
Adresa uvnitř segmentu je v programu určena běžným způsobem. Instrukce může obsahovat tři adresní části: základní registr, indexový
registr a posunutí. Všechny části se sečtou a vytvoří výslednou adresu. Existují však jistá omezení:
• jako základní registr se může použít pouze registr BX nebo BP
• jako indexový registr lze použít pouze registr SI nebo DI
4.6. I8088
i8088 se začal vyrábět 3 mikronovou technologií v červnu 1979. Konstrukčně vycházel z mikroprocesoru i8086 a byl sním plně instrukčně
kompatibilní. Pouze jeho externí sběrnice byla přepracována pro zapojení do 8-bitových systémů. Stejně jako i8086 byl i i8088 vyráběn v
- 8 -
©1999 Jan Bartes ([email protected])
Letem mikroprocesorovým světem
4,77 MHz verzi, kterou postupně nahradila frekvence 8 MHz. Toto zvýšení frekvence přineslo zvýšení výkonu z 0,33 na 0,75 MIPS (million instruction per second).
4.7. I80186
Následník i8086, který se objevil v červnu 1982. Byl rozšířen o dva
kanály rychlého přístupu do paměti (DMA - direct memory access), tři
programovatelné časovače, programovatelný řadič přerušení, generátor
časových impulsů a o několik málo instrukcí.
4.8. I80188
Následník i8088 se stejným rozšířením jako i80186. Byl uveden nedlouho po i80186.
4.9. I80286
Mikroprocesor i80286 se objevil v únoru 1982. Skládal se ze 134 tisíc tranzistorů s šířkou kanálu 1,5 mikronu a používal plně 16 bitovou
sběrnici. i80286 byl vůbec první mikroprocesor jenž obsahoval jednotku
řízení paměti. Tato jednotka fungovala pouze v chráněném režimu, což
byl nově zavedený režim práce mikroprocesoru, ve kterém mohlo být adresováno až 16 MB paměti skutečné a až 1 GB paměti virtuální.
V reálném režimu mohl stejně jako i8086 adresovat maximálně 1 MB paměti. Kvůli značné komplikovanosti použití chráněného režimu se téměř
nepoužíval. První verze byla taktována 6 MHz krystalem. Následovaly
verze 10 a 12 MHz. Výkon mikroprocesoru se pohyboval od 0,9 MIPS (6
MHz) až po 2,66 MIPS (12 MHz). i80286 se stal základním kamenem počítačů kompatibilních s IBM PC AT.
4.10. I80386
Říjen 1985 byl ve znamení nového mikroprocesoru - i80386. Technologický rozdíl mezi i80286 a i80386 byl stejně velký jako mezi i80286 a
i8086. Nejprve byl vyráběn technologií 1,5 (275.000 tranzistorů) a posléze 1,0 mikronu (855.000 tranzistorů). Taktovací frekvence se pohybovala mezi 16 - 33 MHz. Registry mikroprocesoru i80386 můžeme rozdělit do tří skupin:
• aplikační registry - slouží pro obyčejné datové operace. Oproti
i80286 jsou rozšířeny na 32 bitů. Kromě tohoto rozšíření se
v ničem neliší.
• systémové registry - do této skupiny patří skupina řídících registrů CRx, jenž slouží pro řízení či zjišťování stavu procesoru. Do jisté míry je lze chápat jako rozšíření registru příznaků. Dále v této skupině nalezneme registry, které obsahují adresy důležitých systémových oblastí jako jsou: tabulka vektorů
přerušení (IDT - interrupt descriptor table), globální tabulka
deskriptorů (GDT - global descriptor table), lokální tabulka deskriptorů (LDT - local descriptor table)
• ladící registry - DR0 až DR7. Rozšiřují možnosti programového
ladění.
Aplikační registry můžeme rozdělit do tří skupin (viz. obr.):
• obecné - 16-bitové registry - šest registrů shodných s i80286
32-bitové registry - osm registrů
• systémové - 32-bitové registry - EIP (čítač programu), ESP (ukazatel zásobníku)
• segmentové - 32-bitové registry - jsou známy od i8086. Zde je
tato sada rozšířena ještě o FS a GS, které nemají specifické určení.
- 9 -
©1999 Jan Bartes ([email protected])
Letem mikroprocesorovým světem
obecné registry:
řídící registry:
EIP
EAX
IP
EFLAGS
FLAGS
AX
AH AL
EBX
ECX
EDX
ESP
EBP
ESI
EDI
segmentové registry:
CS
DS
SS
ES
FS
GS
obr. 4.4. registry i80386
Instrukční sada i80386 je rozšířena o některé bitově orientované
instrukce. Bity operandu lze testovat, nastavovat na požadovanou hodnotu a měnit. Další novinkou je možnost uložení (načtení) obsahů všech
registrů do (ze) zásobníku jedinou instrukcí.
Správa paměti i80386 se skládá ze dvou samostatných vrstev: vyšší
(zajišťuje segmentaci) a nižší (zajišťuje stránkování). Mikroprocesor
i80386 zdokonaluje systém segmentů z 8086 ve dvou směrech:
• segmentový registr neobsahuje přímo adresu segmentu, ale tzv.
selektor - index do systémové tabulky (GDT), která popsuje jednotlivé segmenty. Teprve v této tabulce je uvedena adresa, na
které je segment v paměti uložen (plus řada doplňujících informací).
• offset uvnitř segmentu může být 32-bitový, diky čemuž není nutné
používat segmenty na rozšíření paměťového prostoru.
15
3
selektor
2 1 0 31
TI RPL
0
offset
GDT / LDT
8 192
položek
tabulek
popisovačů
segmentů
GDT
nebo LDT
+
63
32-bitová reálná adresa
TI - table indicator
(LDT = 1 GDT = 0)
RPL - úroveň oprávnění
0
obr. 4.5. zpracování adresy
Každý segment paměti je tedy popsán řádkem v tabulce GDT/LDT tzv.
deskriptorem. Deskriptor obsahuje všechny důležité informace o segmentu jako jsou: umístění segmentu v paměti, jeho typu a kódu ochrany obsahuje-li data nebo kód, smí-li se obsah segmentu měnit, patří-li
segment systému nebo jinému programu a podobně.Díky tomu může jednotka
správy paměti zamezit neoprávněné manipulaci s pamětí. Nedílnou součástí deskriptoru je také bit (present) informující o umístění segmentu (0 - virtuální paměť, 1 - operační paměť). Pokud systém zjistí, že
segment není v operační paměti vyvolá přerušení a je na samotném systému jak tuto událost obslouží. Deskriptor nemusí určovat skutečný paměťový segment. Mikroprocesor i80386 obsahuje několik typů deskriptoru, které slouží ke speciálním účelům. Takovým deskriptorům říkáme
brány. I80386 obsahuje velice propracovaný systém ochrany. Každý program pracující v chráněném režimu má přidělenu jednu ze čtyř úrovní
priority. Nejvyšší je vyhrazena jádru operačního systému, druhá pro
zbytek operačního systému. Na třetí úrovni mohou pracovat některé do-
- 10 -
©1999 Jan Bartes ([email protected])
Letem mikroprocesorovým světem
plňky a čtvrtá je určena pro běžné aplikace. Pokud program přistupuje
k paměti je nejprve zkontrolována priorita procesu a prioritu segmentu. Pokud je priorita programu nižší než priorita segmentu, není přístup k datům povolen. Pokud ovšem potřebuje aplikace volat služby operačního systému nebylo by to možné. Z tohoto důvodu se používají již
zmíněné brány. Brána nereprezentuje žádný paměťový prostor, ale jakýsi
vstupní bod (adresu pro volání podprogramu). Při použití brány procesor ignoruje hodnotu offsetu a nahradí ji adresou na které začíná daný
podprogram. Tím je zajištěn přístup, ale není umožněno „skákat“ kamkoli. Princip brány je použit taktéž u tabulky vektorů přerušení.
Systém stránkování představuje po segmentování druhou úroveň řízení
paměti mikroprocesoru i80386. Programy pracující v chráněném módu pracují s dvourozměrnou virtuální adresou, složenou ze selektoru a offsetu. Systém segmentů převede tuto adresu na tzv. lineární 32-bitovou
31
22 21
adresář
12 11
tabulka
stránkový adresář
0
offset
stránková tabulka
+
Fyzická paměť
CR3 DBA
31
0
31
0
obr. 4.6. převod logické adresy na fyzickou
adresu. Systém stránkování dělí celý adresový prostor na 4 kB bloky stránky. Těchto stránek (logické stránky) je v celém adresovém prostoru právě 1 045 576. Fyzická operační paměť je taktéž rozdělena na
stránky (fyzické stránky) o velikosti 4 kB, jejichž počet závisí na
kapacitě operační paměti instalované v konkrétním systému. Každé logické stránce nemusí být přiřazena stránka fyzická - vzniká prázdný
adresový prostor. Tabulka popisující rozložení stránek obsahuje pro
každou stránku přepínač (podobně jako přepínač present v deskriptoru),
který určuje fyzickou existenci dané stránky. Pokud se program pokusí
použít lineární adresu, která je součástí některé logické stránky bez
odpovídající stránky fyzické, generuje mikroprocesor přerušení a je na
operačním systému aby tuto událost obsloužil - například nahrál požadovanou stránku do paměti.
Mechanismus spojení fyzických a logických stránek se podobá mechanismu segmentů. Mikroprocesor i80386 spravuje další sadu tabulek, které obsahují pro každou logickou stránku adresu odpovídající stránky
fyzické. Tyto tabulky jsou velmi podobné tabulce deskriptorů. Jediným
rozdílem je že tyto tabulky jsou dvouúrovňové - jednoúrovňová by byla
příliš velká. Celou situaci přibližuje obr. 4.6.
4.11. I80486
Mikroprocesor i80486 byl představen v dubnu 1989. Nejdříve byl vyráběn 1,0 mikronovou technologií, kterou později vystřídala technologie 0,8 mikronu. Obsahoval 1,2 milionu tranzistorů. Taktovací frekvence se pohybovala od 25 do 66 MHz. Mikroprocesor i80486 byl oproti
i80386 doplněn o:
• jednotku operací v pohyblivé řádové čárce
• interní vyrovnávací paměť
• novou technologii blízkou RISC
Na jednom čipu je spolu s procesorem integrována jednotka operací
v pohyblivé řádové čárce (FPU - Floating-point Unit). Je to v podstatě
- 11 -
©1999 Jan Bartes ([email protected])
Letem mikroprocesorovým světem
aritmeticko-logická
jednotka
segmentovací
floatingpoint
jednotka
řídící a
ochranná
jednotka
jednotka
stránkovací
jednotka
jednotka
cache
dekodér
instrukcí
předpověď
větvení
systémový
interface
obr. 4.7. blokové schéma mikroprocesoru i80486
zařízení totožné s externím obvodem i80387, které spolupracovalo
s i80386. Nová FPU je plně kompatibilní s i80387. FPU pracuje s osmi
různými typy dat:
• word integer - 16-bitové celé číslo se znaménkem uložené ve
dvojkovém doplňkovém kódu
• short integer - 32-bitové celé číslo (taktéž znaménkové) ve
dvojkovém doplňkovém kódu
• long integer - 64-bitové celé číslo (opět znaménkové) ve dvojkovém doplňkovém kódu
• packed BCD - zhuštěné BCD číslo. 18 BCD číslic se znaménkem v
80-ti bitech. Znaménko je uloženo v bitu nejvyššího řádu stejně
jako u celých čísel.
• single precision - 32-bitové reálné číslo podle IEEE
• double precision - 64-bitové reálné číslo podle IEEE
• extended precision - 80-bitové reálné číslo podle IEEE
FPU interně pracuje pouze s 80-bitovým reálným číslem. Ostatní formáty jsou použity pro vstup a výstup. Reálná čísla jsou uložena podle
standardu IEEE 754 (Institute of Electrical and Electronic Engineers).Reálné číslo je rozloženo do tří částí:
• nejvyšší bod je označen značkou S (sign), to značí znaménkový
bit. Je-li nulový pak uložené číslo je kladné.
• exponent nese informaci o velikosti čísla
• mantisa uchovává číslice číslo
Do mantisy jsou ukládány pouze významné číslice, levostranné nuly
jsou odstraněny.Mantisa vyjadřuje číslo jako 1.xxxxx. Exponent potom
určuje počet binárních řádů o které je nutno mantisu posunout, abychom
dostali požadované číslo. Číslo lze vyjádřit matematicky: mantisa×2exponent. Mikroprocesor rozpozná, že instrukce programu je určena pro
matematický koprocesor tím, že instrukce začíná 11011 (prvních 5 bitů).
Mikroprocesor i80486 používá interní vyrovnávací paměť (cache) o
velikosti 8 kB společnou jak pro data tak pro program. Přítomnost interní vyrovnávací paměti je pro programy, které s ní nepočítají, neviditelná, proto je zachována plná kompatibilita s rodinou 80x86. Cache
je čtyřcestná asociativní paměť obsahující 4x128 klíčů. 21-bitový klíč
obsahuje nejvyšších 21 bitů fyzické adresy. Ke každému klíči je přiřazeno 16 B jako obsah položky. Kapacita této datové oblasti je 8 kB.
První slabika 16 B položky musí ležet na adrese dělitelné 16. Ke každému klíči je přiřazen jeden bit (V - valid), jenž označuje platnost
dat. Každému řádku jsou navíc určeny navíc tři bity (algoritmus LRU -
- 12 -
©1999 Jan Bartes ([email protected])
Letem mikroprocesorovým světem
last recently used), pomocí
nejdéle nepoužitý klíč.
LRU
řádek,r0 r1 r2,c0 c1 c2 c3
kterých
lze
na
klíče
c0
řádku
přibližně
určit
data
c1
c2
c3
c0
c1
c2
c3
0
n
127
21b
16B
výběr
slabiky
fyzická adresa
klíč
31
řádek
11 10
4
slabika
3
0
obsah
data
7
0
obr. 4.8. struktura vnitřní vyrovnávací paměti i80486
V roce 1992 se objevila modifikace mikroprocesoru i80486, jenž používala dvojnásobnou interní frekvenci oproti externí frekvenci sběrnice, což umožňovalo použití ve starších základních deskách, které nebyly tak nákladné. Tato modifikace byla označena 486DX2. Obecně značení
DX značí mikroprocesor s interním matematickým koprocesorem (FPU),
kdežto SX označuje mikroprocesor s mechanicky odpojenou interní FPU.
Verze SX byla díky tomu levnější a jediný rozdíl byl v rychlosti výpočtu operací s pohyblivou desetinnou čárkou.
O dva roky později (1994) byla vyvinuta další verze, jejíž výrobní
technologie 0,6 mikronu umožnila zvýšení interní frekvence na trojnásobek, označená jako DX4 (ne opravdu to není překlep). DX4 používá
snížené interní napětí na 3,3 V (DX2 - 5 V), což snižuje spotřebu
elektrické energie a množství vyzářeného ztrátového tepla na 2,5 W
(DX2 - 4 W). Je paticově i instrukčně kompatibilní s i80486. Dále byla
zvětšena interní vyrovnávací paměť na 16 kB a rozšířena správa napájení SL. Interní frekvence se vyšplhala až na 120 MHz. Mikroprocesor
i80486DX4 vyplňoval výkonnostní a cenovou mezeru mezi i80486 a Pentiem.
4.12. INTEL PENTIUM
Mikroprocesor Intel Pentium byl poprvé představen na výstavě CEBIT
’93. Nejprve se měl jmenovat Intel 586, ale protože číselné názvy nelze
chránit značkou bylo jeho jméno změněno.
Pentium bylo realizováno (první verze) technologií BICMOS se základní strukturou 0,8 mikronů a obsahovalo 3,1 milionu tranzistorů na
ploše necelého cm2 (2,16 inch2). Pentium je superskalární implementace
rodiny mikroprocesorů 80x86, což zajišťuje zpětnou kompatibilitu. Za
použití různých technologických vylepšení je schopen pracovat dvakrát
rychleji ve výpočtech s celočíselnými hodnotami a 3-7 krát rychleji
v operacích s pohyblivou desetinou čárkou než jeho předchůdce 80486
(na stejné frekvenci 66 MHz). Procesor Pentium je vytvořen na 32bitové základně, což znamená, že pracuje s 32-bitovým logickým i fyzickým adresováním. Aby bylo docíleno co nejvyššího dynamického výkonu
má implementovánu 64-bitovou interní sběrnici se speciální 64-bitová
jednotkou pro čtení a zápis.
CPU obsahuje dvě stejné cesty pro provádění instrukcí U a V. Obě
dvě výpočetní jednotky pracují paralelně a provádí celočíselné instrukce. Současné sdílení U a V bývá označováno jako párování instrukcí. Zpracování instrukce probíhá v těchto stupních:
• PF (prefetch)
- předprovádění instrukce
• D1 (instruction decode) - dekódování instrukce
- 13 -
©1999 Jan Bartes ([email protected])
Letem mikroprocesorovým světem
• D2 (address generate)- vytvoření adresy
• EX (execute)
- provedení instrukce - jednotky ALU a cache
• WB (write back)
- dokončení instrukce + aktualizování registračního souboru
předprováděcí
buffer
cache programu
předpověď větvení +
+ dekodér instrukcí
systémový
interface
stránkovací
jednotka
kontrolní
ROM
řídící a ochranná
jednotka
adresový generátor
U-pipe
V-pipe
ALU
U-pipe
V-pipe
Provázaná
FPU
(floating
point unit)
cache dat
obr. 4.9. blokové schéma mikroprocesoru Pentium
V prvním kroku (PF) se z paměti (nebo z cache paměti) načítají instrukce a díky tomu, že má CPU oddělenou datovou a instrukční (programovou) cache paměť, nedochází ke kolizím při současném předprovádění
instrukce a práci na datových jednotkách. Obě dvě předprováděcí vyrovnávací paměti pracují s Branch-Target-Buffer (BTB). BTB je použit
k tomu, aby předpověděl větvení programu, a aby zabránil přerušení výpočetní cesty v důsledku chybného předprovádění. V kroku D1 je určen
typ příkazu a objasněno zda mohou sdílet obě dvě výpočetní cesty jeden
nebo dva příkazy. Ve druhém stupni dekódování instrukce (D2) je určena
adresa. Instrukce, které požadují přímé operandy a dodatečné přemístění nebo současné bázové i indexové adresování mohou být (narozdíl od
i80486) provedeny v jednom taktu. Prováděcí fáze instrukce vykonávají
ALU jednotky a jednotka cache. Pokud příkaz potřebuje pracovat i
s jinými částmi je proveden v několika cyklech. Poslední krok - zpětné
zapsání slouží k aktualizaci stavových registrů mikroprocesoru, aby se
zabránilo chybám v následném zpracování.
Procesor Pentium obsahuje narozdíl od i486 oddělenou instrukční a
datovou rychlou vyrovnávací paměť - cache, každou o velikosti 8 kB.
Oddělení obou pamětí není pro programové prostředky viditelné, čímž je
zajištěna binární kompatibilita s ostatními členy rodiny 80x86. Obě
jednotky jsou organizovány jako tzv. dvoucestně sdružená cache. Každá
cesta se skládá ze 128 řádků o velikosti 32 B. Datová cache podporuje
současně dvě jednotky, vždy jednu z U nebo V cesty. Aby se předešlo
konfliktům na jednotkách je paměť datové cache koncipována jako osminásobně proložená. Jeden řádek (32 B) je rozdělen na osm dílů (4 B).
Takto mohou obě celočíselné prováděcí cesty paralelně pracovat
s datovou cache. Aby se předešlo konfliktům při použití fyzické adresy, má každá cache implementován oddělený Translation-Location-Buffer
(TLB), jenž převádí logické adresy na fyzické. Vnitřní paměť cache může být vypnuta externími technickými prostředky nebo programově. Datová cache může pracovat ve dvou režimech: Write Back nebo Write Through.
- 14 -
©1999 Jan Bartes ([email protected])
Letem mikroprocesorovým světem
Jednotka
pohyblivé
řádové
čárky
(Floating-point
Unit)
v mikroprocesoru Pentium je kompletně přepracovaná a nyní pracuje
s osmistupňovou výpočetní posloupností:
• PF
- předprovádění
• D1
- dekódování instrukce
• D2
- vytvoření adresy
• EX
- čtení paměti a registrů + konvertování na požadovaný formát
• X1 FP - konvertování externího datového formátu na interní
• X2 FP - prováděcí krok 2
• WF
- zaokrouhlování a zápis výsledku do registračního souboru
• ER
- chybová hlášení tj. aktualizace stavových registrů
Jednotka FPU používá osm registrů, které fungují na principu zásobníku. Výkon této nové FPU je asi 4-10 krát větší než u i486DX/33 a až
sedmkrát vyšší než u i486/50 viz. tabulka.
Instrukce
FXCH
FLD
FST
FASS/FSUB
FMUL
FDIV
Taktovací cyklus
procesoru Pentium
1 nebo paralelně
1
2
3
3
39
Taktovací cyklus
i486DX
4
3
3
10
16
73
Sběrnice procesoru Pentium je v mnoha ohledech podobná sběrnici
i486. Velmi významnou odlišností je zvětšení šířky datové sběrnice na
64-bitů. Dalším rozdílem oproti i486 je sběrnicový Pipelining - zřetězené zpracování instrukcí (zatímco se jedna instrukce provádí další se
načítá). Stejně jako u i486 je datová sběrnice paritně chráněna. Procesor sám nevykonává žádné kroky k vyhodnocení chyby parity. Ty přenechává externímu výpočetnímu systému.
Soubor instrukcí procesoru Pentium je obohacen o šest nových instrukcí, z nichž jsou nejzajímavější tyto tři:
CMPXCHG8B (Compare and exchange 8B) - existoval již u i486, ale zde
je rozšířen na 64bitové slovo.
CPUID - identifikace procesoru
CR4 - nový řídící registr mikroprocesoru, jehož hodnota může být
zjištěna pomocí standardního příkazu MOV.
Osmého ledna 1997 se začal prodávat mikroprocesor Pentium, jenž obsahoval rozšíření instrukčního souboru o 57 nových instrukcí (MMX multimedia extension). Ty zvyšují rychlost některých výpočetně náročných smyček, které se objevují v aplikacích při zpracování grafiky,
obrazu a zvuku. Nový mikroprocesor je postaven na technologii 0,35 mikronu, která dovoluje při sníženém vnitřním napětí zvýšit výkon.
V případě Pentia MMX bylo sníženo vnitřní napětí na 2,8 V (2,45 V u
verze pro mobilní počítače). Externí napájení zůstává kvůli kompatibilitě s ostatními součástkami na stejné úrovni. Toto snížení se projevilo na snížení vyzářené tepelné ztráty na 15,7 W (7,8 W mobilní verze). Mimo nové instrukce je podstatnou změnou zdvojnásobení vnitřní
paměti cache na 32 kB a přepracování algoritmu předpovědi větvení programu. Procesor dále obsahuje osm nových 64-bitových registrů MMX
(kryjí se s registry matematického koprocesoru), využívajících technologii SIMD (single instruction multiple data) to znamená, že až osm
bytů zpracovávaných stejnou instrukcí může být seskupeno do jednoho
64-bitového bloku (quadword), přesunuto do jednoho registru a naráz
zpracováno v jediném taktu (dosud se tento objem dat zpracovával
v osmi taktech). Taktovací frekvence mikroprocesoru Pentium MMX se vyšplhala na 233 MHz.
- 15 -
©1999 Jan Bartes ([email protected])
Letem mikroprocesorovým světem
Každý vytvořený mikroprocesor obsahuje alespoň minimální chybu (nic
není dokonalé). Ovšem 30. října 1994 se začala šířit panika kvůli
zjištění chyby instrukce FDIV a Intel na požádání vyměňoval vadné čipy. Chyba se projevuje při dělení dvou čísel s pohyblivou řádovou čárkou a to „pouze“ u určitých kombinací čísel. Jako test chybovosti konkrétního mikroprocesoru Pentium lze použít jakýkoli počítací program a
zadat výraz: 5505001/294911. Výsledek má být 18,66665197, kdežto chybové Pentium vrátí hodnotu 18,66600093. Chyba dělení se projevuje na
1738 kombinacích.
Další chybou trpí všechny mikroprocesory Pentium, Pentium MMX. Netrpí jí Pentium PRO a Pentium II, protože mají jinou vnitřní architekturu. Chyba se projeví jako zatuhnutí systému a je způsobena sekvencí
čtyř instrukcí. Aktuální operační systémy tuto chybu umí filtrovat a
tudíž žádné nebezpečí nehrozí.
4.13. INTEL PENTIUM PRO
Mikroprocesor Pentium Pro byl uveden na trh 11. ledna 1995. Vlastní
mikroprocesor je složen z pěti a půl miliónů tranzistorů. Technologie
výroby je BiCMOS se šířkou kanálu 0,35 mikronu.
S novým procesorem Pentium Pro začal Intel v mnohém od počátku.
Vzhled procesoru (v jehož obdélníkovém obalu jsou dva křemíkové čipy)
a zcela změněný design hlavních desek v počítačích nejmladší generace
jsou jen nejnápadnější znaky. Mezi další novinky patří tři pipelines,
jenž se starají o rychlé zpracování příkazů. Procesor Pentium Pro
zpracovává jednotlivé příkazy zcela odlišně oproti svým předchůdcům a
to tak, že všechny příkazy, které dostává „rozseká“ na malé kousky.
Nezpracovává je však postupně, ale volí co nejoptimálnější pořadí, ve
kterém mohou být příkazy nejrychleji provedeny. Aby mohl takto pracovat není potřeba žádný nový software. Pentium Pro dokáže pracovat
s dosavadní instrukční sadou procesorů Intel a díky tomu je kompatibilní se svými předchůdci.
Ovšem mnohé z triků, které měly zvýšit výkonnost procesoru i80486 a
Pentia, nyní dělají potíže. To, co se u starších mikroprocesorů staralo o rychlejší běh, způsobuje Pentiu Pro problémy. Malými sousty se
dokonale zahltí, i když by je vlastně nový přístup zpracování příkazů
měl vykonávat jako na běžícím pásu. Pentium Pro potřebuje pro optimální výkon především 32-bitové programy.
Nejnápadnějším znakem je integrovaná vyrovnávací paměť druhé úrovně
- Second level cache (L2-cache), jenž se obvykle nachází mimo hlavní
mikroprocesor. Slouží jako rychlá mezipaměť pro častěji používaná data. Díky této integraci se celkový počet tranzistorů zvětšil o dalších
15,5 miliónů tranzistorů (256 kB verze). CPU a L2 cache komunikují po
64-bitovém rozhraní. Mimoto je tato vyrovnávací paměť uspořádána tak,
že neblokuje procesor. Ten není akcemi vyrovnávací paměti ani zastavován, ani nemůže dojít ke zpoždění transakcí na procesorové sběrnici.
Pokud například nejsou potřebná data ve vyrovnávací paměti nalezena,
provede procesor okamžitě jiné instrukce. Zároveň proběhne pokus získat data chybějící v této paměti přes paměťovou sběrnici, rovněž 64bitovou. Pentium Pro zvládne až čtyři takto rozpracované instrukce najednou.
Dynamic execution je pojem, kterým Intel popsal nový přístup ke
zpracování instrukcí. Skrývá se za ním kombinace tří technik použitých
v Pentiu Pro za účelem urychlení programů. Jsou to:
• Předpověď skoků - procesor se dívá několik kroků v programu dopředu a určuje, které skoky s velkou pravděpodobností nastanou a
které skupiny instrukcí proto budou zřejmě zpracovány jako další.
• Analýza toku dat - v dalším kroku procesor zkoumá, jaké instrukce jsou závislé na jiných výsledcích a datech. Tím sestavuje optimální časový plán pro zpracování jednotlivých příkazů. Původní
pořadí příkazů přitom nemusí být zachováno - Out Of Order Execution. Díky tomu je možné obejít některé případy, které si
v Pentiu vynucují čekací stavy, protože se postupuje pouze krok
za krokem.
- 16 -
©1999 Jan Bartes ([email protected])
Letem mikroprocesorovým světem
• Spekulativní provádění - na základě časového plánu se provádí
potenciální instrukce a procesor je díky tomu smysluplně zaměstnán.
Pro uskutečnění Dynamic execution musel Intel najít nová řešení,
protože jinak by nebylo možné překonat výkony Pentia. Pipeline Pentia
se skládá z pěti stupňů, zatímco Pentium Pro jich má 14. Zatímco Pentium dovede zpracovat najednou dvě instrukce, tak Pentium Pro zvládne
v jednom taktu provést instrukce tři.
Lineární zpracování instrukcí s klasickými fázemi fetch a execute u
Pentia Pro nahrazuje tzv. instruction pool. Zde procesor sestavuje
plán pro zpracování příkazů. V něm by mohli například být čtyři příkazy, z nichž první nemůže být okamžitě proveden, protože potřebná data
se nenachází ve vyrovnávací paměti a musejí být nejprve vyzvednuta
z operační paměti. Pokud druhá instrukce závisí na první, musí tradiční CPU nejprve počkat - Pentium Pro naproti tomu může dopředu spekulativně provádět třetí a čtvrtý příkaz, pokud k nim nepotřebují předchozí výsledky. Výsledky se vrací zpět do instruction pool a tam čekají
na další zpracování.
Schopnost Out-of-order execution, jenž je klíčem k rychlosti Pentia
Pro, se v některých situacích stává brzdou. Například přečtení kompletního registru může zastavit zpracování příkazů. Pokud odpovídající
příkaz následuje bezprostředně za zápisovou instrukcí pro segment tohoto registru. Tyto stavy se vyskytují v malé míře především v 16bitových aplikacích.
Bez jakýchkoli přídavných obvodů je v multiprocesorovém systému
možno připojit až čtyři procesory Pentium Pro přímo na procesorovou
sběrnici. Každý procesor má interní potřebnou logiku, aby byla zajištěna koherence dat. Další skupiny procesorů je možno připojit na procesorovou sběrnici přes tzv. Cluster Bridge.
Aby byly možné současné přístupy na sběrnici, aniž by vznikaly
elektrické problémy, rozloučil se Intel s tradiční TTL (TranzistorTranzistor Logic). Pentium Pro namísto toho používá logiku GTL+ (Gunning Tranzistor Logic).
4.14. INTEL PENTIUM II
Procesor Pentium II byl představen 24. října 1998. Obsahoval 7,5
miliónu tranzistorů. Minimální vnitřní vzdálenost se menšila na 0,25
mikronů. Taktovací frekvence se pohybuje ve stovkách megahertzů. Intel
poprvé použil zcela novou patici nazvanou Slot 1.
Později Intel vyrobil modifikaci Pentia II, jenž neobsahovala interní vyrovnávací paměť L2 cache. Díky tomu vyplnila výkonnostní (a
cenovou) mezeru mezi Pentiem a Pentiem II. „Nový“ procesor dostal jméno CELERON. První verze Celeronu používala stejnou patici a externí systémovou frekvenci 66 MHz. Interní frekvence 266 a 300 MHz umožnila dostatečný výkon v plovoucí řádové čárce a MMX. Nejnovější verze Celeronu (MENDOCINO) dostala 128 kB interní L2 cache, jenž zvýšila počet tranzistorů na 19 miliónů. Interní frekvence se zvýšila až na 333 MHz.
Snadná přetaktovatelnost (možnost zvýšit interní frekvenci), a tím i
zvýšení výkonu, mu získala velkou popularitu. Verze uvedená 15. dubna
1999 využívá 0,18 mikronovou technologii a interní frekvenci 466 MHz.
31. července 1999 byla „vypuštěna“ 500 MHz verze, jenž obsahuje 256 kB
interní L2 cache.
Podobně jako Celeron, jenž byl určen převážně pro domácnosti, byla
uvedena verze určena pro výkonné pracovní stanice a servery - XEON.
Nejnovější verze z 5. ledna 1999 obsahuje 512 kB, 1 MB nebo 2 MB interní L2 cache. Vnitřních 7,5 miliónu tranzistorů je poháněno 450 MHz.
Xeon podporuje multiprocessing.
Modifikace Pentia II, Celeronu i Xeonu, které mají snížený ztrátový
tepelný výkon, se používají též v mobilních počítačích.
- 17 -
©1999 Jan Bartes ([email protected])
Letem mikroprocesorovým světem
4.15. INTEL PENTIUM III
Pentium III se vyrábí od 3. března 1999. Dodává se ve dvou typech
pouzder - SECC (slot 1) a SECC 2, které odpovídají pouzdrům používaných předcházející generací a je možné je integrovat do základních desek určených pro Pentium II, založených na čipové sadě 440BX AGP .
SECC 2 se od SECC odlišuje v malých detailech, které se týkají umístění čipů na desce s ohledem na odvod tepla. Mikroprocesory byly vyráběny 0,25 mikronovou technologií a jádro obsahuje více než 9,5 miliónu
tranzistorů. Stejně jako předcházející generace mikroprocesorů používá
Pentium III architekturu DIB, oddělenou paměť cache první úrovně (pro
data a instrukce) s kapacitou 2 x 16 kB, implementovanou přímo v jádře
mikroprocesoru, a 512 kB cache druhé úrovně, která pracuje na poloviční frekvenci oproti jádru. V jádře mikroprocesoru došlo v souvislosti
se zavedením KNI (Katmai new instructions) také k úpravám, které se
dotkli analýzy toku dat.
Úplnou novinkou, která vyvolala obrovské diskuse, je integrace podpory „sériových“ čísel mikroprocesorů, kdy každý mikroprocesor obsahuje zakódované sériové číslo. V podstatě nejde o nic jiného, než o rozšíření známé instrukce CPU-ID.
Katmai new instruction - je v podstatě rozšíření instrukčního souboru MMX o několik nový instrukcí, jež mají za úkol urychlit hojně se
opakující akce. Největší důraz je kladen na podporu 3D, dále na animaci a video a rozpoznávání hlasu.
U Pentia III, podobně jako u procesoru Pentium II, byla 17 května
1999 uvedena modifikace Xeon pracující na frekvenci 500 a 550 MHz. Čip
je vyroben 0,25 mikronovou technologií a obsahuje 9,5 miliónu tranzistorů. Pentium III Xeon je určen podobně jako jeho předchůdce pro pracovní stanice a výkonné (1, 2, 4, 8 procesorové) servery.
- 18 -
©1999 Jan Bartes ([email protected])
Letem mikroprocesorovým světem
5.
REJSTŘÍK
A
str.
adresa
nepřímá
autorelativní
address generate
akumulátor
architektura
hardwardská
superskalární
von Neumannova
arithmetical-logical unit
5
5
14
4
3
3
3
7
B
branch-target-buffer
brány
14
10
C
Celeron
complete instruction set computer
central procesor unit
cluster bridge
CPUID
CR4
17
3
7
17
15
15
Č
čítač programu
4
D
deskriptor
Die
direct memory access
dynamic execution
10
4
8
16
E
execute
14
G
global descriptor table
9
I
IBM PC AT
IBM PC XT
integer
long
short
word
Institute of Electrical and Electronic Engineers
instruction pool
instruction decode
interrupt descriptor table
9
7
11
11
11
12
17
14
9
K
Katmai new instructions
17
L
last recently used
local descriptor table
12
9
- 19 -
©1999 Jan Bartes ([email protected])
Letem mikroprocesorovým světem
M
Mendocino
million instructions per second
multimedia extension
17
8
15
O
operand přímý
out of order execution
5
16
P
paměť cache
packed BCD
pipelining
precision
double
extended
single
prefetch
5
11
14
11
11
11
14
R
reduced instruction set computer
registr
aplikační
indexový
ladící
obecné
segmentové
stavový
systémové
3
4
9
4
9
9
9
4
9
S
secc
secc 2
segment
selektor
single instruction multiple data
stránky
fyzické
logické
18
18
8
9
15
11
11
11
T
translation-location-buffer
15
U
ukazatel zásobníku
4
W
write
back
through
14
14
X
Xeon
17
- 20 -
©1999 Jan Bartes ([email protected])
Letem mikroprocesorovým světem
6.
LITERATURA
Bayer J., Bílek J. : Mikroprocesory - úvod, skripta ČVUT, Praha 1989
Chip 93-99
- počítačový měsíčník
Computerworld 91-99 - počítačový čtrnáctideník
www.intel.com
www.mdronline.com
www.mkdata.dk
- domovská stránka Intel Corporation
- domovská stránka Microdesign Resources
- přehled počítačových komponent
- 21 -

Podobné dokumenty

Přednáška č

Přednáška č Moderní CPU pro PC představují kombinaci obou přístupů (z vnějšku se CPU chová jako von Neumann, uvnitř harvard – oddělená cache pro instrukce a pro data)

Více

Procesory 2010

Procesory 2010 po výkonné počítače. Mezi výhody těchto čipů patří nízká cena, malé rozměry a nízká spotřeba energie. Tyto procesory jsou vyráběna pro přesně určenou specifickou činnost a mají jen malou možnost ro...

Více