Procesory 2010

Transkript

Procesory 2010
Střední škola, Havířov – Šumbark , Sýkorova 1/613, příspěvková organizace
ORGANIZAČNÍ A VÝPOČETNÍ TECHNIKA
PROCESORY
Ing. Bouchala Petr
 2010
Vytištěno pro vnitřní potřebu školy
PROCESORY
1.Úvod – základní pojmy
Procesor - CPU (Central Processor Unit), základní jednotka počítače, určující jeho
výkonnost. Je to logický automat na zpracování informací obsahující hlavně řadič a
aritmeticko-logickou jednotku. Je vyráběný technologií velmi vysoké integrace
(nanotechnologií). Jeho hlavní úkol je řídit a koordinovat činnost celého systému, vykonávat
matematické a logické operace.
Řadič - CU(Control Unit) výkonový obvod zpracovávající instrukce, generuje řídící signály,
je součástí CPU, nebo to jsou podpůrné obvody CPU (DMA,IRQ,IDE……). Řadič obsahuje
zejména registr instrukcí, dekodér instrukcí, generátor adres, generátor řídících signálů.
Registry - vnitřní málokapacitní paměti, slouží ke krátkodobému uchování zpracovávané
instrukce.
Vnitřní frekvence - viz. rychlost procesoru
Vnější frekvence - kmitočet, kterým se taktují ostatní zařízení MB (základní desky).
Instrukce - příkaz,část programu zpracovávaného řadičem, na základě instrukce vyhledává ve
své paměti mikrokód, který spouští .
Mikrokód - program složený z mikroinstrukcí, je uložen v ROM řadiče, pomocí mikrokódu
provede řadič funkci zadanou instrukcí.
Adresa - označení místa v paměti ROM nebo RAM, na němž se nachází hledaná instrukce
nebo mikroinstrukce
Adresování - proces při němž se generuje adresa paměťového místa, a paměťové místo se
vyhledává.
Základní operace - procesor vykonává tyto základní operace:
1.) výběr instrukce z operační paměti
2.) interpretace instrukce (dekódování, generování řídících signálů)
3.) výběr operandů a jejich zpracování
4.) případné uložení výsledků do operační paměti
Ing.Petr Bouchala
strana 2
2.Parametry procesoru
1) rychlost CPU – udává se v Hz. CPU je číslicový sekvenční synchronní obvod řízený
taktovacím kmitočtem, generovaným krystalem na základní desce. Během jednoho
taktu provede procesor jednu operaci. Je-li taktovací kmitočet 1 GHz, pak za jednu
sekundu provede miliardu operací. Rychlost je jedním z ukazatelů výkonnosti
procesoru. Overclocking – možnost přetaktování procesoru
2) šířka slova – šířka vnitřní datové sběrnice v bitech. Nebo, jak velké číslo dokáže
procesor zpracovat během jedné operace. Podle šířky datové sběrnice se říká, že
procesor je 8 mi bitový, 16 ti bitový …..
3) šířka přenosu dat – šířka vnější datové sběrnice. Parametr udává kolika bitové číslo lze
přenést do (z) CPU během jedné operace. Udává se rovněž v bitech. Čím větší šířka
přenášeného slova, tím větší množství dat se přenese v daném čase.
4) velikost adresovatelné paměti – udává velikost operační paměti, kterou je procesor
schopen používat (adresovat). Maximální velikost adresovatelné paměti jsou 4 GB pro
32 bitovou adresovou sběrnici.
5) účinnost mikrokódu – je to počet kroků, které procesor musí vykonat pro provedení
jedné instrukce (např. vynásobení nebo sečtení dvou čísel).
6) MIPS (Milion Instructions Per Second) - jednotka označující počet instrukcí
vykonaných procesorem za jednu sekundu v násobku miliónů.
7) FLOPS (Floating Point Operations Per Second) - jednotka označující počet operací
s pohyblivou řádovou čárkou za jednu sekundu.
8) Počet jednotek FPU (Floating Point Unit) – jednotka zpracovávající operace
s reálnými čísly (viz. zobrazení reálných čísel pomocí pohyblivé řádové čárky). Čím
více jednotek tím vyšší FLOPS.
9) Instrukční sada (RISC,CISC) – počet a druh instrukcí, které je procesor v rámci své
činnosti schopen vykonávat. Čím větší je instrukční soubor, tím rychleji procesor
pracuje. Instrukční sady procesorů jsou v jejich vývoji stále doplňovány
(MMX, SSE…2,3,4)
10) Počet instrukčních kanálů – maximální počet instrukcí proveditelných v jednom taktu.
11) Interní cache – realizovaná pomocí rychlých statických pamětí. Zajišťuje rychlejší
komunikaci procesoru s operační pamětí.K parametrům patří počet vyrovnávacích
pamětí, velikost a technologie přístupu k nim.
12) Počet jader – architektura s větším počtem jader, zvyšuje počet instrukčních kanálů a
tím zvyšuje multiparalelismus.
13) Architektura – určuje způsob zpracování instrukcí, počet a druh prováděcích jednotek,
je provázená novými technologiemi směřující k vyššímu výkonu.
14) Thermal Design Power (TDP) - údaj vystihující tepelný výkon procesoru ve wattech.
Společnost AMD udává TDP jakožto maximální dosažitelný tepelný výkon, přičemž
Intel jako typický. U procesorů AMD lze hodnoty TDP dosáhnout jen velmi obtížně,
u procesorů Intel je to hodnota, které bude při zátěži s jistotou dosažena. V případě
překročení TDP zasáhne ochranný mechanismus Thermal Monitor, tj. vynucené
snížení výkonu. Z TDP a napájecího napětí procesoru se vypočítá proudový odběr.
Ing.Petr Bouchala
strana 3
3.Typy procesorů
Nejjednodušší skupinou procesorů jsou tzv. mikrořadiče často označované jako MCU
(Micro Controller Unit), jejichž uplatnění je velmi široké, od běžné spotřební elektroniky až
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 rozšíření. Rovněž ve výkonnosti nedosahují vysokých hodnot.
Procesory nesoucí označení CPU (Central Processor Unit) tvoří základní řídící jednotku
počítače. Oproti předcházející skupině mají mnohem vyšší výkon, větší rozměry, je možné
je díky jejich otevřené architektuře a velkému množství vyvedených signálů lépe rozšiřovat.
Samozřejmě tyto výhody jsou zaplaceny vyšší spotřebou a ztrátovým výkonem, rovněž cena
je vysoká.
DSP (Digital Signal Processor) je určitým kompromisem mezi oběma předcházejícími
skupinami procesorů. Signálové procesory se většinou vyznačují vysokým výkonem
v oblasti zpracování matematických výpočtů a schopností zpracovávat velké objemy dat.
Součástí těchto procesorů jsou často i digitálně-analogové a analogově-digitální převodníky.
Procesory se používají například ve zvukových kartách.
NPU (Network Processors Units) –j sou nedílnou součástí všech přepínačů, směrovačů a
dalších síťových zařízení. Na rozdíl od počítačových procesorů nejste vůbec upozorňováni
na jejich výrobce, typ, kmitočet, výkon atd., i když stejně jako u PC tvoří srdce celého
zařízení. Vedoucí pozici ve výrobě síťových procesorů má společnost Broadcom. Nové čipy
společnosti Broadcom by měly umožnit výrobu levných přepínačů s porty Gigabit
Ethernetu.
4.CISC a RISC procesory
Procesory se z hlediska své vnitřní stavby dají rozdělit na dva typy:
CISC (Complete Instruction Set Computing) - jsou procesory používané ve většině
současných i dřívějších osobních počítačů. Hlavním rysem těchto procesorů je, že používají
tzv. plnou instrukční sadu, neboli se snaží mít na každou úlohu jednu instrukci. Tyto
instrukce jsou uloženy v mikrokódu, což je vlastně program vloženy do paměti procesoru.
Tento systém vytváření je z hlediska technologického jednodušší, ale instrukce se provádějí
pomaleji než u obvodového řešení. Příklady: i8086, i80486, Pentium, M68040 ...
RISC (Reduced Instruction Set Computing) - procesory s redukovanou instrukční sadou.
Obsahují jen několik základních instrukcí. Každá z nich by se měla vykonávat co nejkratší
dobu, pokud možno během jediného strojového cyklu. Instrukce jsou vytvořeny obvodově a
tudíž se většinou provádějí rychleji než u mikrokódového řešení. Stejně jako je malý počet
instrukcí je i malý počet způsobů adresování. Pro práci s pamětí se na rozdíl od CISC
procesorů používají jen dvě instrukce (Load/Store). Všechny ostatní instrukce se
vyhodnocují v registrech, kterých bývá většinou větší počet (obvykle 32). Příklady: PA8000, Power PC, R 4200, UltraSparc II ...
V dnešní době se obě architektury přibližují. Mnohé procesory nesou rysy obou typů.
Kontrolní otázky
1. Jaký je rozdíl mezi instrukcí a mikroinstrukcí?
2. Jeké základní kroky vykonává procesor?
3. Nauč se a vysvětli parametry procesoru (kap.2. body 1 až 7).
4. Vysvětli parametry procesoru (kap.2. body 8 až 14).
5. Jaké znáš typy procesorů.
6. Jaké je rozdělení procesoru podle instrukční sady, uveď rozdíly.
Ing.Petr Bouchala
strana 4
5.Základní části a činnost procesoru
Řadič
Každý procesor musí obsahovat dvě základní jednotky: řadič CU a aritmeticko logickou
jednotku ALU.
data z OP
CPU
Aritmeticko logická
jednotka
ALU
ŘADIČ
CU
řídící signály
výstup adres
data do OP
Řadič CU – je aktivní část procesoru, která zahajuje a řídí všechny činnosti
ALU – provádí pouze operace s daty a je řízená řadičem.
Na obrázku jsou nejdůležitější vstupní a výstupní vodiče (sběrnice).
Řadič má tyto hlavní úkoly: - řídí pořadí v němž jsou prováděny instrukce programů,
dekóduje instrukce, vysílá do ostatních části počítače řídící signály, čímž instrukce provádí.
Popis částí řadiče:
1.Registr adres instrukci(RAI) – obsahuje číslo od nuly až do hodnoty adresy poslední
paměťové buňky v OP. Touto hodnotou je omezena velikost OP, kterou lze k CPU připojit.
Dnes 32 bitový registr – 2 na 32 = 4GB.
Při zapnutí počítače se RAI nastaví na výchozí hodnotu, zpravidla nulu. Tímto nulovým
obsahem se na výstupu RAI objeví číslo, které odpovídá adrese první instrukce uložené v OP.
Výstup RAI je spojen s adresovou sběrnicí.
2.Registr instrukce – do tohoto registru se po datové sběrnici přivádí z OP instrukce (nalezená
pomocí adresy). Zde se uloží až do okamžiku, než je přepsaná instrukcí následující.
3.Dekodér instrukce – instrukce je přivedena z registru na dekodér, kde se dekóduje a
postupuje do generátoru řídících impulsů (GŘI). Procesem dekódování se rozumí nalezení
mikrokódu k vykonání instrukce.
4.GŘI – spuštěním mikrokódu se v určité časové posloupnosti generují řídící impulsy do
ostatních jednotek počítače.
Ing.Petr Bouchala
strana 5
Blokové schéma řadiče
Vstup dat
Registr adresy
instrukce
Registr
instrukce
Dekodér
instrukce
Generátor
řídících
impulsů
Výstup adres
Řízení ALU
řídící signály
Princip činnosti: po zapnutí počítače nebo restartu se RAI nastaví na výchozí hodnotu a na
výstupu RAI se objeví kódové číslo adresy paměťového místa OP s první instrukcí. Toto
místo se připojí na datovou sběrnici a instrukce se přenese do řadiče CPU. Zapíše se do RI.
Doba zápisu stačí k tomu, aby se kódovaná instrukce dekódovala v DI. Dekódováním se
vygenerovala vnitřní adresa pro spuštění mikrokódu a generují se řídící signály. Je-li instrukce
ukončena nebo vyžadují-li se data k vykonání instrukce, vyšle GŘI impuls do RAI, obsah
RAI se zvýší o 1 a na výstupu se objeví kód nové adresy s následující instrukcí nebo daty.
Příslušná paměťová buňka se zase napojí na datovou sběrnici a celý proces se opakuje.
V programu můžeme provádět skoky tím, že příslušnou instrukcí (např.go to) zvýšíme obsah
RAI o více než 1.
Aritmeticko logická jednotka
ALU je část CPU, která provádí matematické a logické operace s daty.
Popis částí ALU
1.Operační blok – zpracovává operandy přiváděné na dva vstupy a výsledek se předává
jedním výstupem k dalšímu zpracování.
2.Střadač – je registr, v němž se uchovávají data – 1.operand, mezivýsledky, výsledky.
3.Registr příznaků – stavový registr. Skládá se z řady jednobitových pamětí, ve kterých je
uložena 0 nebo 1, podle výsledků. Obsah stavových registrů kontroluje řadič, který na ně
příslušně reaguje. Nejčastější příznaky: CARRY – příznak přenosu – signalizuje přeplnění
střadače – přenos do vyššího řádu. ZERO – příznak nuly – nastaví se na hodnotu 1 je-li
výsledek operace nula. SIGN – signum – příznak znaménka (+,-)
Ing.Petr Bouchala
strana 6
Blokové schéma ALU
Vstup dat
ALU
řadič
Registr
příznaků
Střádač
Operační
blok
Výstup dat
Princip činnosti ALU
Činnost ALU je řízena řadičem na základě instrukcí přijatých z OP. ALU pracuje ve většině
případu na základě jedno adresových instrukcí. Chceme-li např. sečíst dvě čísla, musíme
k tomu uvést více než jednu instrukci.. CPU potřebuje znát: - adresu prvního sčítance
- adresu druhého sčítance
- adresu, kde se uloží výsledek
U počítačů s jedno adresovými instrukcemi se první sčítanec načte do střadače, odtud do
operačního bloku na první vstup a druhý sčítanec se další instrukcí načte přímo z operační
paměti na druhý vstup operačního bloku. Výsledek se uloží do střadače. Ze střadače se další
instrukcí výsledek uloží na příslušnou adresu v OP.
Kontrolní otázky:
1. Jaké jsou dvě základní části procesoru, popiš vstupy a výstupy procesoru.
2. Nakresli a popiš blokové schéma řadiče, k čemu slouží jednotlivé bloky.
3. Vysvětli princip činnosti řadiče.
4. Nakresli a popiš blokové schéma ALU, k čemu slouží jednotlivé bloky.
5. Vysvětli princip činnosti ALU
Ing.Petr Bouchala
strana 7
6.Historie výroby mikroprocesorů Intel
1971 - i 4004 - 4 bitový mikroprocesor, který mohl adresovat paměť 4 096 B.
1974 - i 8080 - 8 bitový, obsahoval 5 000 tranzistorů, 256 instrukcí, byl vyroben technologií
N-MOS, adresoval 64 KB paměti. (i8008 - adresace 16 KB)
Vnitřní struktura procesoru vytváří velkou časovou prodlevu mezi zpracováním jednotlivých
instrukcí. Ta je způsobena: generováním adresy, přesunem adresy, dekódováním adresy,
napojení datové buňky na datovou sběrnici, přesun instrukce z OP do CPU, zápis do registru
instrukce a dekódování instrukce.
Šestnácti bitové procesory
Procesor i 8086 - jeden z prvních 16 bitových mikroprocesorů (1978).
Procesor je vnitřně rozdělen na dvě jednotky(první skalární architektura):
- Bus Interface Unit (jednotka styku se sběrnicí)- stará se o všechny operace souvísející se
sběrnicí (čtení instrukcí, čtení a zápis operandů do paměti nebo V/V zařízení…)Její součástí
je čtyř bytová fronta instrukcí, do které BIU v okamžicích, kdy není jiný požadavek na
sběrnicový cyklus, připravuje následné instrukce z paměti.
- Execution Unit (výkonná jednotka) – dekóduje a provádí instrukce jejichž kód čte
z instrukční fronty. Do BIU zasílá relativní adresy operandu ( pro čtení nebo zápis ).
Výpočet adresy a vlastní přenos operandu zajišťuje opět BIU.
Oba autonomní funkční bloky představují proudový způsob zpracování instrukcí
(pipelining), který práci procesoru urychluje
I 8086
ŘÍDÍCÍ SIGNÁLY
BIU
EU
ADRESY
FRONTA
INSTRUKCÍ
DATA
Firma Intel vyráběla dále 16 bitové mikroprocesory i80186, i80286.
Procesor i80286 - již uměl pracovat v reálné nebo chráněném režimu a počet adresovacích
vodičů byl 24. Může adresovat 16 MB (224 = 16.777.216 = 16 M).
Struktura tohoto procesoru je tvořená čtyřmi na sobě nezávisle pracujícími subprocesory.
Výkon procesoru se zvyšuje taktovací frekvencí a proudovým zpracování dat.
Bus Unit – BU – sběrnicová jednotka – zajišťuje styk a spolupráci s ostatními částmi
počítačového systému.
Instruction Unit – IU – instrukční jednotka – dekóduje instrukce uložené ve frontě BU a
dekódované instrukce ukládá do své fronty. Procesor po ukončení instrukce může okamžitě
načítat již dekódovanou instrukci – zrychlení.
Execution Unit – EU – výkonová jednotka – zde se provádějí instrukce dle programu. Její
součástí je CU a ALU. Jednotka spolupracuje s AU, zejména při potřebě dalších operandů
z OP pro probíhající operace.
Adress Unit – AU – adresová jednotka – dle pokynů EU vypočítává adresu, kterou předá
BU. Kromě toho zajišťuje ochranu dat při zpracování více úloh – multitasking.
Ing.Petr Bouchala
strana 8
I 80286
AU
LOGIKA
OCHRANY
FYZICKÁ
ADRESA
BU
ADRESOVÝ REGISTR
A BUDIČ
ADRESY
ŘÍZENÍ SBĚRNIC
STYK S
KOPROCESOREM
DATOVÉ BUDIČE
ŘÍDÍCÍ
SIGNÁLY
DATA
PŘEDVÝBĚR INSTRUKCÍ
FRONTA ŠESTI
INSTRUKCÍ
EU
IU
ALU
CU
FRONTA
DEKÓD.
INSTR.
DEKODÉR
INSTR.
MNI,INTR,ERROR
Třicetidvou bitové procesory (označované jako řada x86)
i80386 - (1985) Procesor byl vyráběn technologií CH MOS III, 1.5 mikrónů a obsahoval
275 000 tranzistorů. Pouzdro má 132 vývodů. K podpoře své činnosti využíval další
podpůrné samostatné integrované obvody: i82386 (DMA kontroler), i82385 (Cache
kontroler), i80387 (matematický koprocesor) ... Procesor má možnost adresovat až 4 GB
paměti. Skalární architektura se rozrostla o další obvody.BIU (Bus Interface Unit) jednotka
pro styk se sběrnicí. IPU (Instruction Prefetch Unit) jednotka pro předvýběr instrukcí. IDU
(Instruction Decode Unit) jednotka pro dekódování instrukcí.EU (Execution Unit) jednotka
provádění instrukcí, výkonná jednotka. SU (Segmentation Unit) jednotka segmentace,
adresuje. PU (Paging Unit) stránkovací jednotka souvisí s adresováním paměti.
i80486 - kromě dalších vylepšení obsahuje tento procesor navíc cache první úrovně o
velikosti 8 KB a matematický koprocesor (FPU), pro práci s čísly s pohyblivou řadovou
čárkou.
Intel® Pentium® processor family
Pentium Overdrive - tento procesor měl být jakýmsi přechodem mezi řadou 486 a Pentiem.
Nebyl příliš úspěšný (vysoká cena, problémy s kompatibilitou).
Pentium (P54C) - procesor páté generace řady x86. (konec roku 1993). Vnitřně je procesor
64 bitový. Obsahuje některé nové rysy, jako například superskalární architektura, která
umožňuje vytvořit dvojici celočíselných front, neboť obsahuje dvě výkonné jednotky (dvě
instrukce se paralelně zpracují v přirozeném pořadí). Jednotky se označují U a V. Jednotka
U je univerzální, jednotka V umí provádět pouze jednoduché instrukce. Instrukce se provádí
v 5 fázích - předvýběr, dekódování, generování adresy, vykonání instrukce a zpětný zápis.
Z důvodů snížení počtu zbytečných vyprázdnění datovodu v důsledku podmíněných skoků,
používá Pentium metodu předpovídání větvení. Kromě statického předpovídání větvení
(např. podmínka bude splněna), používá procesor i dynamické metody, ke které využívá
zvláštní vyrovnávací paměť výsledků větvení - branch target buffer. Do ní si systém ukládá
cílové adresy a předpokládaný výsledek pro posledních 256 větvení. Toto se využívá
většinou u smyček, které se obvykle opouštějí až po několika cyklech.
Ing.Petr Bouchala
strana 9
PENTIUM
Instrukční
Cache
Predikace
skoků
Dekodér
instrukcí
Řadič
64 bit
data bus
control
Rozhraní
sběrnice
32 bit
adress bus
Data 64 bit bus
Adress 32 bit bus
Generátor
adres U
Generátor
adres V
Celočíselná
ALU
U
Celočíselná
ALU
V
ROM
řadiče
Floating
Point
Unit
Data
cache
Pentium 60 MHz, 66 MHz – 5 V, ztrátový výkon 13 W
Pentium 75, 90, 100, 120, 133, 150, 166, 200 MHz - 3.3 V, ztrátový výkon 4 – 6 W. Pentia
s interní frekvencí 133, 166, 200 MHz pracují na sběrnici, která je taktována na 66 MHz,
150 MHz Pentia mají na sběrnici 60 MHz.
Čip obsahuje na ploše 295 mm2 3,3 miliónů tranzistorů. Pouzdro (patice Socket 7) má 296
vývodů. Patice je typu ZIF (Zero Input Force - zasunování nulovou silou). Pentium obsahuje
interní cache paměť o velikosti 16 KB, která je rozdělená na 8 KB pro data a 8 KB pro
instrukce a je dvoucestně asociativní. Datová sběrnice má šířku 64 bitů, adresová sběrnice je
32 bitová.
Pentium MMX (P55C) (Matrix Math Extensions) - jedná se vylepšené Pentium, které
obsahuje navíc dvě jednotky pro zpracování nových multimediálních instrukcí, kterých je
57. Procesor obsahuje 8 nových registrů pro MMX instrukce. Cache L1 je dělená na data a
instrukce a má velikost 16 + 16 KB.. Používá techniku SIMD (Single Instruction Multiple
Data), která dovoluje zpracovat mnoho informací během jedné instrukce.
Pentium Pro - (P6) - se dostalo na trh na podzim 1995. První model byl taktován na
frekvenci 133 MHz. Pouzdro procesoru obsahuje dva čipy. Jeden je samotný procesor a
druhý je paměť cache, která má velikost 256 nebo 512 KB. Interní cache L1 je rozdělená na
část datovou a instrukční. Obě části mají po 8 KB. Používá techniky: out-of-order execution
(vykonání instrukce mimo pořadí), register renaming (přejmenování registrů). Dynamic
Execution (dynamické vykonávání instrukcí – viz rysy moderních procesorů).
Ing.Petr Bouchala
strana 10
Obr. Blokové schéma Pentium Pro
Pentium II - obsahuje dvousběrnicovou architekturu DIB (Dual Independent Bus). Jedná se
o zavedení samostatné sběrnice pro komunikaci procesoru a cache L2, která je rovněž
v pouzdru. Cache L1 je rozdělena na data a instrukce a každá z nich má velikost 16 KB.
Cache L2 má velikost 512 KB. Má všechny rysy moderního procesoru (superskalární
architektura, Out of Order, přejmenování registrů, MMX instrukce ...). Podporuje ECC na
L2 cache i systémové sběrnici. Označení pro patici je Slot 1. Procesor se zasouvá kolmo
k základní desce. Xeon je výkonnější variantou s 1 MB cache L2. Celeron - tento procesor
firmy Intel se od Pentia II lišil v prvních variantách absenci sekundární vyrovnávací paměti.
Snížila se tak cena, ale i výkon při výpočtech s pevnou řadovou čárkou. Při práci
s pohyblivou řadovou čárkou je jeho výkon srovnatelný s Pentiem II.
Pentium III - jedná se vylepšený procesor Pentium II, který obsahuje 70 SSE instrukcí pro
multimédia a 3D aplikace. Cache L1 má velikost 32 KB (16 KB pro data, 16 KB pro
instrukce), L2 obsahuje 512 KB. Procesor je vytvořen technologií 0,25 mikrónů.
Pentium M – procesor vyvíjený pro mobilní technologie, stavěl na původní architektuře
Pentia III.. Pentium IV (níže) se do notebooku nehodil pro svůj velký ztrátový výkon.
Jelikož byl procesor postaven na starší architektuře, nepodporoval multiparalelismu tak,
jako P IV a jeho výpočetní výkon byl slabý, to se projevilo zejména v multimediálních
aplikacích.
Ing.Petr Bouchala
strana 11
Pentium IV - První 65nm procesor pro stolní počítače s novou architekturou
nazvanou NetBurst, která je optimalizována pro vyšší frekvence. Procesor
používá technologie HT(Hyperthreading), která se využívá u více
vláknových úlohách. Procesor podporuje 400, 533, 800 MHz lokální sběrnici
(a vyšší). Pentium 4 podporuje nové instrukce nazvané Streaming SIMD
Extensions 2. Vedle instrukcí MMX a SSE jde o další instrukce (je jich 144),
které mají (stejně jako starší instrukce SSE) zajišťovat zpracování více dat v jednom cyklu
(SSE – single instruction multiple data) a zrychlí především výpočty v plovoucí desetinné
čárce. U těchto procesorů Intel předpokládal nárůst kmitočtu až na 10GHz. Obsahovaly 3
ALU a 2 FPU. Značnou nevýhodou byl velký ztrátový výkon.
Šedesátičtyř bitové procesory
Výkon 64 bitových procesorů bude plně využit a s příchodem 64 bitového operačního
systému Windows Vista, který bude podporovat 64 bitové aplikace.
Dvoujádrové procesory
Pentium D - první dvoujádrový procesor Intelu, který však není od základů
konstruován jako dvoujádrový, namísto toho se v podstatě jedná o dva
nezávislé čipy Prescott (Pentium4 na technologii Net Burst) spojené přes FSB,
přesně jako u dvouprocesorových systémů. Neumí tedy těžit z možných výhod
dvoujádrových procesorů. Má nejvyšší spotřebu u dosud vyrobených stolních
počítačů.
Nepodporuje HyperThreading. Podporuje EM64T, No-eXecute aVirtualizaci (ne u všech
modelů)
Pentium eXteme Edition - jádro Presler.Druhá generace dvoujádrového
procesoru. Tento však není plnohodnotným dvoujádrovým čipem, jedná se totiž
o dvě jádra Cedar Mill (Pentium4) připevněná k jedné destičce plošného spoje.
Podporuje HyperThreading, EM64T, No-eXecute aVirtualizaci.
Intel® CoreTM processor family
Intel Core 2 Duo - jádro Conroe. Nová konstrukce dvoujádrového procesoru.
Na rozdíl od P4 nebo core duo plně podporuje 64 bitové instrukce a výpočty.
Může v jednom taktu zpracovat až čtyři instrukce. Paměť cache sdílejí obě
jádra, v případě jednovláknové úlohy, využívá jedno jádro celou cache.
Podporuje EM64T, No-eXecute aVirtualizaci.Cache 2 až 4 MB
Intel Core 2 Extreme – jádro Conroe
Podporuje EM64T, No-eXecute aVirtualizaci.
Cache 4 MB.
Ing.Petr Bouchala
strana 12
Vícejádrové procesory
Core i3, Core i5, Core i7
Jedná se o čtyřjádrové procesory (vyjma Core i3) s novou koncepcí a čipovou sadou, určené
především pro víceprocesorové systémy = výkonné servery (především Core i7).
Charakteristická je nová architektura Nehalem, která se vyznačuje zejména integrovaným
řadičem pamětí do CPU, náhrada FSB s technologii QPB sběrnici QPI, i nadále se uplatňuje
HyperThreading, TM je doplněn o režim Turbo Boost a další.
Kontrolní otázky:
1. U kterého procesoru byla poprvé použita skalární architektura?
2. U kterého procesoru byla poprvé použita superskalární architektura?
3. Vysvětli pojem SIMD, u kterého procesoru byla technologie SIMD poprvé použita?
4. Které procesory patří do Intel® Pentium® processor family?
5. Které procesory patří do Intel® CoreTM processor family?
6. Který procesor použil poprvé dvousběrnicovou architekturu DIB ?
7. Který procesor byl jako první postaven na architektuře Net Burst?
8. Čím jsou charakteristické procesory s označením Core i ?
Ing.Petr Bouchala
strana 13
7.Architektura procesorů
Architekturou se rozumí vnitřní struktura procesoru a nové technologie, které změnu struktury
provázejí.Každá změna architektury vede ke zvýšení výpočetního výkonu.
Základními jednotkami, které tvoří vnitřní strukturu procesorů jsou:
řadič, který má za úkol číst operandy (data, čísla) a instrukce z operační paměti,
dekódovat je a na základě provádění mikrokódu, generovat řídící signály, tedy řídit
činnost ostatních jednotek v procesoru a počítači.
ALU, mající za úkol na základě řídících signálů z řadiče CPU provádět matematické a
logické operace. Pro práci s reálnými čísly s plovoucí (pohyblivou) řádovou čárkou
jsou v procesoru integrovány výpočetní jednotky FPU (Floating Point Unit). Nejstarší
procesory řady x86 (8086, 80186, 80286, 80386) obsahovaly pouze jednotku ALU,
která pracovala jak s celými, tak reálnými čísly s pohyblivou řádovou čárkou. Pro
zvýšení výkonu byla na základní desce patice pro připojení tzv. numerického
koprocesoru, který se využíval pro aritmetické operace s reálnými čísly s pohyblivou
řádovou čárkou (zvýšení výpočetního výkonu). Tento specializovaný procesor nesl
označení podobné hlavnímu procesoru (např. Intel 80287). ALU a FPU nazýváme
výkonné jednotky (Execution Units)
registry, jsou rychlé statické paměti typu RAM (čtení/zápis) malé kapacity uvnitř jádra
procesoru, které slouží k uchování aktuálních instrukcí, adres v paměti, operandů,
mezivýsledků a výsledků matematických a logických operací.
Ve vnitřní struktuře současných procesorů však existují další jednotky podporované novými
technologiemi pro práci s instrukcemi a daty, jejichž úkolem je co možná nejoptimálněji
zvýšit jeho operační rychlost a stabilitu bez nutnosti použít „hrubé síly“, tedy zvyšovat
základní pracovní kmitočet a napětí jádra procesoru. Vždy je nutná podpora operačního
systému a aplikace!
Veškeré jednotky uvnitř procesoru včetně technologií optimalizujících práci s instrukcemi a
daty pak tvoří tzv. architekturu (resp. mikroarchitekturu) procesoru, určující jeho vlastnosti.
Přehled architektur dvou významných výrobců procesorů pro osobní a mobilní počítače:
Firma INTEL:
8088, 8086, 80286, 80386, 80486
Pentium (Pentium Pro, Pentium MMX)
Pentium II, Pentium III + odlehčené verze označované Celeron (snížena kapacita
paměti cache)
NetBurst (Pentium 4, Pentium D, Xeon)
Core (Core Duo, Core 2 Duo, Core 2 Extreme, Core 2 Quad, Celeron)
Atom (procesory optimalizované výhradně na co nejnižší spotřebu elektrické energie)
Nehalem (řada procesorů Core i7, Core i5, Core i3)
Ing.Petr Bouchala
strana 14
Firma AMD:
Am286, Am386, Am486
AMD K5, AMD K6, AMD K6-2, K6-III
AMD K7 (Athlon, Athlon XP, Athlon MP + odlehčené verze Duron, Sempron)
AMD K8 (Athlon 64, athlon 64 X2, Turion 64, Turion 64 X2, Sempron)
AMD K10 (4-jádrové procesory Phenom, Opteron)
AMD K11 (nabídne integraci GPU1 či jeho části do jádra CPU. GPU zde bude
pracovat jako jednotka provádějící výpočetní operace, neboť GPU umí některé
druhy výpočtů, především s reálnými čísly, provádět mnohem efektivněji a rychleji
než současné procesory a jejich výkonné jednotky)
Skalární architektura (Intel 8086 až Intel 80486)
Skalární architektura vede k efektivnějšímu využití strojového času procesoru. Snaží se
odstranit „prostoje“ výkonové jednotky, které vznikají po dokončení instrukce a před
spuštěním následující. Procesor je složen z více funkčních bloků, které pracují samostatně a
umí se předzásobit instrukcemi a tím zvýšit rychlost přísunu instrukcí výkonové jednotce.
V jednom taktu mohla být dokončena pouze jedna instrukce. Skalární architektura umožňuje
pipelining – zřetězené zpracování instrukcí. Pipeline – datovod, čím je datovod delší a čím
více má stupňů, tím je lepší zpracování etap instrukcí. V případě, že dojde v programu ke
skoku, musí se celý datovod (fronta instrukcí) vyprázdnit a načíst s dlouhým zdržením
instrukce nové.
Superskalární architektura P6 (Pentium až Pentium3)
Má více prováděcích jednotek v jednom procesoru, které jsou schopné paralelního zřetězení.
V jednom taktu může být dokončeno více instrukcí - superpipelining. První superskalární
architektura byla použita u Pentia, které mělo dva datovody. U-pipe a V-pipe. V jednom taktu
mohly být dokončeny dvě instrukce, pokud byla dodržena pravidla pro řetězení instrukcí.
Řetězení instrukcí kontroluje scheduler. Aby se odstranilo vyprazdňování datovodu z důvodu
skoku v programu, začalo se používat odhadování skoků a spekulativní vykonávání instrukcí.
Architektura Net Burst (Pentium 4, Pentium D)
Pod tímto souhrnným názvem se skrývá celá řada nových technologií. Jsou to zejména:
a) Hyperpipelined Technology – technologie podporující hyperpipelining. Net Burst je
technologie umožňující zvyšování taktovacího kmitočtu. Čím je kmitočet vyšší, tím
kratší je doba zpracování jedné instrukce, doba je tak krátká, že tvoří pouze zlomek
času potřebný k přenosu další instrukce z operační paměti. Aby měly výkonové
jednotky procesoru nepřerušený přísun instrukcí, provádí se vícenásobné zřetězení hyperpipelining. Jedna instrukce je podávána z operační paměti, druhá dekódována,
třetí zpracovávána atd. Hloubka tohoto "potrubí" u procesoru Pentium 4 je 20
rozpracovaných instrukcí. Jestliže dojde k větvení programů, zdvojí se datovod a
načtou se instrukce pro obě možná pokračování programu. Podle výsledku podmínky
se zvolí instrukce z vhodného datovodu a instrukce špatného datovodu se vymažou.
b) Hyperthreading Technology - technologie umožňující programovému vybavení
„vidět“ dva procesory. Dovoluje procesoru spouštět dvě výpočtová vlákna (threads) ve
stejný okamžik.
1
GPU = Graphic Processing Unit, tedy grafický procesor, nebo též grafické jádro
Ing.Petr Bouchala
strana 15
c) QPB (Quad Pumped Bus) - podpora QDR (Quad Data Rate) sběrnice FSB,
v některých momentech umožňuje až čtyři datové přenosy najednou.
d) Execution Trace Cache - cache paměť dovolující uložit 12 dekódovaných
mikrooperací (micro-ops), u předchozích systému se v cache ukládaly pouze
nedekódované instrukce.
e) Rapid Execution Engine - dvě ALU, s dvojnásobným taktem oproti vnitřní frekvenci
procesoru
f) Advanced Dynamic Execution – nové dynamické zpracování instrukcí s větší hloubkou
spekulativního provádění a dokonalejším předvídáním větvení.
g) EIST ( Enhanced Intel SpeedStep Technology) - technologie dovolující (v závislosti na
vytížení systému) dynamicky přizpůsobovat napájecí napětí a frekvenci procesoru,
umožňuje snížit spotřebu elektrické energie a dochází k menšímu zahřívání procesoru.
h) EM64T (Extended Memory 64 Technology) – rozšíření adresace operační paměti s 32
bitů na 64 bitů. Padla hranice omezení operační paměti na 4GB.
i) XD (eXecute Disable) bit - umožňuje zakázat spouštění kódu z některých paměťových
stránek (těch, které se označí za datové). Tímto se předchází spouštění kódu, u kterého
to není cílené - např. některých typů virů.
j) Intel Virtualization Technology - slouží k hardwarové podpoře provozu více
operačních systémů na jednom fyzickém počítači současně. Možnosti této technologie
jsou široké:
• testování a ladění programů a aplikací bez nutnosti instalovat testovací verze
operačního systému na dodatečném hardwaru
• prezentace na akcích, kdy na jednom notebooku můžete předvádět Linux i Windows
zároveň
• provoz zastaralých verzí operačních systémů a aplikací, pro které se již ani nedá
koupit podporované hardware
Poznámka: Procesory P IV se vyráběly v mnoha modelech, ne všechny podporovaly uvedené
technologie.
Architektura Dual core (Pentium D – Intel Core 2 Duo)
Na jednom čipu jsou integrována dvě jádra, dva samostatné procesory. Jeden čip se fakticky
chová jako dvouprocesorový počítač. Pro dosažení optimálního výkonu vyžaduje
dvoujádrový procesor spuštění více zátěžových programů současně nebo programu speciálně
upraveného na tzv. multithreaded zpracování. Architektura využívá tyto technologie:
a) microachitektura core jejíž základní rysy jsou:
-
Wide Dynamic Execution - technika dovolující, aby každé jádro během jednoho
taktu mohlo dokončit až čtyři instrukce.K tomu používá techniku MacroFusion a Micro-Fusion. Techniky umožňující sloučení více instrukcí nebo
mikroinstrukcí do jedné.
-
Smart Memory Access - zdokonalená množina algoritmů pro předvídání, která
data budou zapotřebí a mají být tudíž zavedena z operační paměti do paměti
cache
-
Advanced Smart Cache -umožňuje jednomu jádru využít celou vyrovnávací
paměť, když druhé jádro právě nepracuje, dovoluje přenášet data přímo mezi
L1 cache paměťmi obou jader.
Ing.Petr Bouchala
strana 16
-
b)
c)
d)
e)
Advanced Digital Media Boost zdvojnásobuje reálnou rychlost zpracování instrukcí využívaných především v
multimediálních a grafických aplikacích, zvýšení výkonu je dosaženo pomocí
128bitového zpracování instrukcí SSE, SSE2 a SSE3 (dříve byly tyto instrukce
zpracovávány po 64 bitech).
EM64T
Intel Virtualization Technology
EIST
dual core
Architektura Nehalem
- Core i7, Core i5, Core i3
Integrovaný řadič paměti – paměťový řadič je integrován přímo do pouzdra procesoru.
Výhodou je velmi rychlá výměna dat mezi operační pamětí a výpočetními jednotkami
procesoru. U víceprocesorových systémů (např. servery) má každý procesor vlastní paměťový
prostor. S každým novějším procesorem lze vylepšovat také paměťový řadič.
QPI systémová sběrnice (QuickPath Interconnect) – Vysokorychlostní sériová sběrnice
skládající se ze dvou 20 bitových spojů (z toho 16 bitů pro data) pro propojení procesoru
se severním mostem čipové sady. U víceprocesorových systémů navíc umožňuje propojit
přímo jednotlivé procesory mezi sebou. Je to náhrada stávající systémové sběrnice FSB (více
viz téma „Čipové sady“).
Pozn.: obdoba sběrnice HyperTransport u procesorů AMD.
HyperThreading – viz „HyperThreading“ u architektury NetBurst. HyperThreading umožní
ze čtyř fyzických jader procesoru, učinit až osm virtuálních. Architektura Core tuto
technologii z důvodu složitosti nepodporovala. Nově se označuje jako SMT (Simultaneous
Multi-Threading).
Režim Turbo Boost (resp. Turbo Mode) – technologie, hlídající TDP procesoru a zároveň
vytížení jader procesoru. Pokud program nevyužívá všechna jádra procesoru, přepínají se
nepoužívaná jádra do úsporného nebo spánkového režimu nebo jsou kompletně odpojena od
napájení. Výsledkem je nejen úspora energie, ale hlavně snížení teploty vyzařované
procesorem. Jelikož v tu chvíli je chlazení procesoru naddimenzované, mohou být aktivní
jádra automaticky přetaktována změnou násobiče na vyšší kmitočet.
U nové verze funkce Turbo Boost má každé jádro vlastní násobič, může tedy dojít k situaci,
kdy dvě jádra budou vypnutá a zbylá dvě poběží každé na jiné frekvenci.
Ing.Petr Bouchala
strana 17
Rozšíření instrukční sady SSE 4.2 – doplnění instrukční sady SSE4 o nové SIMD instrukce
(usnadnění rozpoznávání řeči, výpočet kontrolních součtů při přenosech dat - CRC32, atd.)
Rozšíření Smart Cache o L3 cache
Architektura Nehalem využívá paměť cache o třech úrovních, přičemž zde je L2 (256 kB)
oddělená pro každé jádro a L3 je sdílená pro všechna jádra. Velikost L3 cache je 8 MB (Core
i7 a i5) nebo 4 MB (Core i3).
Ing.Petr Bouchala
strana 18
Procesor Core i7
Procesor je určen především pro výkonné víceprocesorové servery a výkonné stolní počítače.
Severní most se označuje jako obvod IOH (Input Output Hub). Obsahuje pouze řadič grafické
sběrnice PCI Express 2.0 x16 s až 36 linkami.
Řadič pamětí DDR3 je umístěn přímo na čipu procesoru a je tříkanálový. Na kanál je možné
osadit dva moduly, celkem tedy na procesor šest modulů.
Procesor Core i5
Určen především pro střední třídu počítačů, především levné jednoprocesorové servery a
běžné stolní počítače.
Přímo v procesoru je integrován pouze dvoukanálový řadič pamětí DDR3 a zároveň se zde
nachází integrovaný řadič PCI Express 2.0 x16 se 16 linkami (2x 8 linek nebo 1x 16 linek). U
některých modelů Core i5 je uvnitř procesoru navíc integrováno přímo grafické jádro
(GPU). Pro komunikaci s čipovou „sadou“ (pouze jižní most - PCH) procesoru stačí pomalé
rozhraní DMI.
Ing.Petr Bouchala
strana 19
Procesor Core i3
Vychází ze specifikací Core i5, obsahuje však pouze dvě jádra,
poloviční L3 cache (4 MB) a má vypnutý režim „Turbo Boost“.
Uvnitř procesoru se nachází integrované grafické jádro
(GPU).
Svou výbavou je nejslabší z procesorů architektury Nehalem a
je určen pro „levnější“ stolní počítače s jedním procesorem a
notebooky.
Pozn.:
Většinu zde popsaných technologií lze nalézt také u procesorů firmy AMD (pod jiným
názvem a s mírně odlišnou specifikací), proto se jimi tento výukový materiál nezabývá.
Jedná se pouze o ukázku technologií, jejichž úkolem je zvýšit rychlost zpracování instrukcí
procesorem bez nutnosti zvyšovat taktovací kmitočet a napájecí napětí jádra (větší nároky na
napájecí zdroj, větší zahřívání procesoru = problém chlazení), popřípadě snížit spotřebu
elektrické energie (vhodné především pro mobilní počítače).
Kontrolní otázky:
1. Vysvětli pojmy skalární architektura a pipelining. V čem spočívá lepší využití
strojového času procesoru. Jak jsou ošetřeny skoky a větvení v programu?
2. Vysvětli pojmy supeskalární architektura a superpipelining. V čem spočívá lepší
využití strojového času procesoru. Jak jsou ošetřeny skoky a větvení v programu?
K čemu slouží scheduler?
3. Nauč se a vysvětli pojmy Hyperpipelined Technology, hyperpipelining,
Hyperthreading Technology a QPB.
4. Ostatní pojmy s architektury Net Burst se nauč vysvětlit.
5. Jaké jsou základní rysy microarchitektury core? Vysvětli jednotlivé pojmy.
6. Jaké jsou základní rysy architektury Nehalem? Vysvětli jednotlivé pojmy.
7. Srovnej jednotlivé architektury a zjisti, jakým způsobem se zvyšuje výpočetní výkon
procesorů?
Ing.Petr Bouchala
strana 20
8.Některé rysy moderních procesorů
Paralelní zpracování dat – superpipelining, hyperpipelininig, hyperthreading, dual core, dual
core + hyperthreading.
Out-of-Order (provádění instrukcí mimo pořadí) - instrukce mohou být prováděny i v jiném
pořadí, než ve kterém byly umístěny do instrukční fronty.
Register renaming (přejmenování registrů) - procesor má více fyzických než logických
registrů a může stejným jménem označit více fyzických registrů.
Dynamické vykonávání instrukcí (dynamic Execution) -Tento způsob zpracování instrukcí
zvyšuje výkonnost procesoru tím,že data jsou zpracovávána spíše na základě logiky než na
základě pouhého seznamu instrukcí.
Dynamické vykonávání instrukcí je kombinace těchto tří metod pro zpracování dat :
1.) Vícenásobné větvení -předpovídá průchod programu několika větvemi.Tzn. procesor je
schopen předpovídat skoky nebo větvení v programu. Na základě toho pak dokáže vyhledat
místo v paměti, kde se nalézá další instrukce.
2.) Analýza toku dat - slouží k logické kontrole instrukcí a k jejich seřazení do optimálního
pořadí, bez ohledu na to, jak jsou zapsány v původním programu. Procesor si nejprve
prohlédne dekódované instrukce programu a určí, zda mohou být vykonány, či zda jsou
závislé na dokončení jiných instrukcí. Následně procesor seřadí instrukce do optimálního
pořadí a co nejúčinnějším způsobem je vykoná.
3.) Spekulativní vykonávání instrukcí - procesor si prohlíží instrukce následující za aktuálně
vykonávanou a snaží se vykonat ty z nich, které budou v blízké době potřebné. Protože
instrukce programu jsou vykonávány na základě předpovězeného větvení, jejich výsledky
jsou uloženy do společné oblasti, ze které jsou posléze načítány. Jakmile pak má být některá
z provedených instrukcí vykonána výsledným programem, jsou její výsledky načteny do
hlavních registrů procesoru a to v pořadí daném původním programem.Tento způsob
provádění instrukcí vlastně umožňuje vykonávání instrukcí dopředu a následné použití jejich
výsledků.
Mechanizmus přerušení - kromě aktuálně běžícího programu musí mikroprocesor reagovat na
podněty jiných zařízení nebo programů. Například reakce na stisk klávesy, informace o tisku
a podobně. Toho se dá docílit dvěma způsoby:
Procesor v pravidelných časových intervalech prochází všechna zařízení a kontroluje, zda pro
něj nemají nějaký signál, který by zpracoval. Tento mechanizmus je samozřejmě nevhodný
pro svou časovou náročnost a mnohdy zcela zbytečné operace.
Je vytvořen systém přerušení IRQ. To znamená, že každá operace, která potřebuje provést
zastavení aktuálního procesu, má své číslo přerušení. V operační paměti je tabulka vektorů
přerušení, který ukazuje na adresu v paměti, kde je uložen obslužný program požadovaného
přerušení. Tento systém využívají téměř všechny mikroprocesory. Procesor tedy komunikuje
s okolím třemi základními způsoby: pomocí sběrnic, přerušením (IRQ) a přes kanály přímého
přístupu do paměti (DMA - Direct Memory Access).
Quad Pumped Bus (QPB) - procesory Pentium 4 (a výše) podporují QDR (Quad Data Rate)
sběrnici, kterou Intel označuje zkratkou QPB.Tzn., že data přenášená mezi procesorem a
Northbridgem (MCH) jsou přenášeny 4x rychleji než tomu bylo u Pentií 3. Tento rychlý
přenos je způsoben tím, že procesor využívá pro přenos dat jak náběžnou, tak sestupnou hranu
signálu časovače a navíc na místo jednoho datového kanálu používá dva – jeden pro čtení a
druhý pro zápis.Tuto rychlost přenosu dat použije však procesor pouze tehdy bude-li v jedné
chvíli provádět operace čtení i zápis (viz obrázek).V praxi to tedy znamená, že kmitočet FSB
procesorů (od Pentium 4) je ve skutečnosti 4x menší než je uváděná.
Ing.Petr Bouchala
strana 21
Obr .princip přenosu dat po QDR sběrnici
Správa napájení
Díky obvodům pro správu napájení SMM (System management mode) je možno zmenšit
spotřebu procesoru.Tuto funkci obsahují všechny procesory Pentium a výše.
Tepelná ochrana
Čím je procesor výkonnější,tím vyšší má spotřebu a tím více tepla produkuje. K tomu, aby
bylo teplo z procesoru dobře a spolehlivě odváděno, slouží chladiče. Někdy však může nastat
porucha chlazení procesoru a v takovém případě se uplatní tepelná ochrana, která zabrání
zničení procesoru. Intel zavedl dvě technologie, které mohou stav kritické teploty odvrátit.
Jsou to tepelný monitor a tepelná dioda.
Tepelný monitor (Thermal monitor TM) – za použití přesného tepelného čidla na čipu
procesoru, je obvod tepelné ochrany (TCC - Thermal Control Circuit) schopen udržet teplotu
procesorového čipu v rozsahu továrních specifikací. Tepelný monitor řídí teplotu procesoru
pomocí modulace interních hodin jádra procesoru. TM1 - v případě, kdy procesor dosáhne
kritické teploty (obvykle kolem 75 stupňů Celsia), začne vkládat prázdné hodinové cykly v
poměru 50:50 (tzv. duty cycles). Polovina výpočetního času je tak fakticky eliminována
(frekvence je snížena na polovinu), což snižuje spotřebu, ale také výpočetní výkon.
TM2 - novější verze systému ochrany proti přehřátí. Namísto prázdných hodinových cyklů se
procesor přepne na nižší PState. Při stejné redukci spotřeby vykazuje tento způsob vyšší
výpočetní výkon, na druhou stranu přepínání mezi PState trvá určitý čas, takže v některých
případech může být Thermal Monitor 1 výhodnější.
PState (Performance State) - Kombinace napětí a frekvence (přesněji násobiče). Každý z
procesorů používajících šetřící technologii má definovány PState, které zvládne. Nižší napětí
umožňuje výrazně redukovat spotřebu, nevýhodou však je, že při nižším napětí musí být
frekvence nízká. Vhodným přepínáním mezi PStates je možné docílit v případě výpočetního
nevytížení nízké spotřeby a zároveň v případě potřeby zvýšit frekvenci.
Tepelná dioda - na čipu je taktéž integrována tepelná dioda. Tepelný senzor na základní desce
tak může monitorovat teplotu čipu.
Kontrolní otázky:
1. Jaké metody používá technika dynamického vykonávání instrukcí?
2. Co je to mechanizmus přerušení, k čemu slouží a jak urychluje činnost procesoru?
3. Kterými způsoby komunikuje procesor s okolím?
4. Jak funguje Quad Pumped Bus, jaký je skutečný taktovací kmitočet FSB?
5. Co je to tepelný monitor a jak funguje?
6. Co je to PState a k čemu slouží?
Ing.Petr Bouchala
strana 22
9.Instrukční sady
Instrukční sada - soubor instrukcí, kterým procesor rozumí a které byly vytvořeny s cílem
provádět určité typy výpočtů. Pokud procesor instrukční sadu nezná, dojde při pokusu o
vykonání instrukce k chybě.
Single Instruction Multiple Data (SIMD) - jedna instrukce provádí výpočet na více datech
současně. Vhodné především u multimediálních aplikací, kde je například možné zpracovávat
několik částí audia současně. Oproti klasickému způsobu jedna instrukce jedny data (Single
Instruction Single Data) je tento způsob významně rychlejší.
x86 - základní celočíselná sada instrukcí pro počítače PC. Všechny procesory zvládají tuto
sadu.
x87 - sada pro operaci s plovoucí desetinnou čárkou (Floating point - FP) určená pro
matematické koprocesory. Starší procesory 486SX či 386 vyžadovaly pro podporu x87
pořízení dalšího čipu (externího matematického koprocesoru). Všechny procesory počínaje
Pentiem mají koprocesor integrovaný a sadu x87 podporují.
MMX (MultiMedia eXtensions)- první celočíselná SIMD sada instrukcí určených k přímé
podpoře multimediální operace s obrazem, zvukem či videem. Dnes jí podporují prakticky
všechny procesory a je často vyžadována různými programy.
Enhanced MMX - Rozšíření MMX zavedené společností Cyrix. Podporuje ho většina výrobců
vyjma Intelu.
3DNow!, Enhanced 3DNow! - SIMD sada zavedená firmou AMD, která se ale nedočkala
nijak velké podpory.
SSE (Streaming SIMD Extensions) - SIMD sada z procesoru Pentium III, podporuje ve větší
míře zpracování obrazu, zpracování audia a videa (umožňuje softwarové dekódování formátu
MPEG2 při plné rychlosti), rozpoznání řeči…
SSE2 – 140 nových instrukcí v procesorech Pentium 4 pro práci s čísly v pohyblivé desetinné
čárce, práci s celými čísly, správu paměti a další. Po MMX se jedná o druhou nejpoužívanější
sadu.
SSE3 - Malé rozšíření o asi deseti instrukcích zavedené v procesoru Pentium 4 s jádrem
Prescott.
AMD64 - 64bit rozšíření x86, původně vyvíjené pod označením x86-64. Vyjma podpory 64bit
výpočtů umožňuje adresaci 64bit paměťového prostoru
EM64T - Intelem vytvořená kopie sady AMD64, rozšíření adresace operační paměti s 32 bitů
na 64 bitů.
Kontrolní otázky:
1. Jaký je rozdíl mezi SIMD a SISD?
2. Jaké znáš instrukční sady a co mají podporovat?
Ing.Petr Bouchala
strana 23
10.Identifikace procesorů
Každý procesor je možné identifikovat v zásadě dvěma způsoby - softwarově pomocí CPUID
instrukce a vizuálně pohledem na identifikační znaky uvedené na čipu procesoru. V dalším se
budeme zabývat pouze softwarovým způsobem.
CPUID instrukce
CPUID je instrukce zavedená v procesoru Pentium a podporovaná i některými pozdními
generacemi 486ky. Umožňuje zjistit některé základní údaje jako je typ procesoru,
podporované instrukce, velikosti cache atd..
Program CPU-Z využívá výstupu instrukce CPUID.
Základem identifikace procesoru jsou následující údaje:
Family - určuje architekturu procesoru. Tak například Pentium Pro, Pentium II a Pentium III
sdílí jednu architekturu nazvanou P6. Obdobně všechny typy Pentia 4 a Pentia D sdílí
architekturu NetBurst. Číslo Family je pro všechny procesory Pentium Pro, Pentium II a
Pentium III stejné a nabývá hodnoty 6. Obdobně NetBurst nabývá hodnoty 15 (F v hexa
zápisu).
Extended Family - rozšíření hodnoty Family. Výsledná Family (v programu CPU-Z zobrazená
výše v kolonce "Ext. Family") se spočte jako Family + Extended Family.
Model - určuje generaci v rámci architektury. Tak například jádro Willamette bylo z
architektury NetBurst první uvedené a mělo hodnotu model stanovenu na 0. Následovalo
vylepšené jádro Willamette s model roven 1, dále jádro Northwood s model 2 atd. Model tak
určuje závažné změny jako například změnu výrobní technologie, přidání cache atd.
Ing.Petr Bouchala
strana 24
Extended Model - rozšíření hodnoty Model zavedené ze stejného důvodu jako Extended
Family. Výsledný model (v programu CPU-Z zobrazený v kolonce Ext. Model) se spočte jako
Model + Extended Model * 16.
Stepping - čtyřbitová hodnota udávající verzi modelu. Obvykle se mění s novější revizí.
Hodnoty Family, Extended Family, Model, Extended Model a Stepping spolehlivě identifikují
typ jádra procesoru (včetně revize). Revize je jakýsi ukazatel pokročilosti vývoje jádra. Čím
novější revize, tím lepší, protože opravuje chyby a zároveň může být výkonnější, spotřebovat
méně energie a dosahovat vyšších frekvencí.
Zápis hodnot výše zmíněný se obvykle provádí v hexadecimální (šestnáctkové) soustavě a to
podle následujícího vzoru:
F27h - Family F, Model 2, Stepping 7. "h" označuje, že se jedná o hexadecimální zápis.
Pokud máme k dispozici výše uvedený zápis a víme, který výrobce procesor vyrobil, je už jen
otázkou dohledání v dokumentaci, o jaké že jádro se jedná.
Identifikace jádra je důležitá věc, sama o sobě však nestačí, potřeba je ještě jeden údaj:
BrandID - Číslo rozlišující jednotlivé typy procesorů se stejným jádrem.
Pomocí BrandID je možné rozlišit procesory Celeron od Pentií 4, procesory Athlon 64 od
Mobile Athlon 64 atd. Jednotlivé implementace BrandID se u procesorů Intelu a AMD liší a
řídí se zveřejňovanými tabulkami. Běžnému uživateli stačí použít některý z novějších
programů, viz například již zmíněné CPU-Z.
11.Výroba,výrobní technologie
Procesor je polovodičová součástka tvořená především křemíkovou destičkou (křemíkový
plátek ze kterého se vyrobí velké množství jader procesoru se nazývá “wafer”) s několika
příměsímy (v současnosti je to měď).Ještě předtím než se vývojář vůbec dotkne křemíku je
vytvořen softwarový model procesoru (označovaný jako RTL-Register Transfer Logic),při
čemž pro jednodušší testování tento model pracuje na mnohem pomalejší frekvenci než
skutečný procesor (řádově v jednotkách Hz).Souběžně s ním je testován ještě jeden
softwarový model,který však již pracuje na skutečné frekvenci procesoru.Další testy se pak
provádějí již na hardwarovém modelu,který je mnohokrát větší než skutečný
procesor.Zpravidla zabírá celou místnost.Této fázi testování se říká emulace (emulation).
Pokud všechny testy dopadnou dobře začne se samotným zhotovením procesoru.
obr.Wafer z blízka
Vlastní výroba procesoru
Procesory se už 30 let vyrábějí prakticky stejnou metodou fotolitografie, kdy se wafer o
průměru 200 mm či 300 mm ozařuje přes různé masky a tím vznikají na waferu složité
struktury tranzistorů (složitost je jako u podrobné mapy New Yorku na papíru 10x10 mm).
Ing.Petr Bouchala
strana 25
Litografické matrice jsou prozařovány zářením a jejich 4x zmenšený obraz dopadá na wafer
potažený v různých krocích odlišnými chemikáliemi(viz obr 7). Velmi kritickou při takto
jemné výrobě se stává také vlnová délka prosvěcovacího paprsku, na němž také závisí
jemnost výrobního procesu. V roce 2005 Intel počítá s uvedením stroje používajícího EUV
záření (Extreme Ultraviolet).Tento stroj umožňuje vyrábět komponenty až 30 nm technikou a
to je možná zároveň nejjemnější proces, který můžeme po klasickém Si chtít. Předpokládá se,
že fotolitografie klasického křemíku dodýchá asi kolem roku 2010, ale i po té uvidíme
zajímavé trendy ve výrobě polovodičů, jako jsou např. dvoj a tříbránové tranzistory, které
jsou schopny se přepínat ještě daleko vyššími frekvencemi než ty klasické díky nižším
spouštěcím proudům a menšímu odporu kanálu.
Obr.Schéma výroby procesoru
Obr.Šest vrstev měděných spojů (foto: elektronovým mikroskopem)
Co znamená,když se řekne “Procesor je vyráběn X mikronovou technologií”?
Procesor Pentium 4(Northwood) je vyráběn technologií 0,13 цm – toto číslo nám udává
velikost nejmenšího prvku,který je možno vyrobit.Čím menší je toto číslo tím více jader
procesorů se vejde na jeden wafer a také klesá spotřeba.
0,09 цm nebo 90nm – nejmenší prvek má velikost 0,09 (mikrometrů) či 90 (nanometrů).
Ing.Petr Bouchala
strana 26

Podobné dokumenty

Letem světem mikroprocesorů

Letem světem mikroprocesorů 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 p...

Více