Současnost
Současné procesory zachovávají tradiční vnitřní uspořádání procesoru, které bylo rozpoznatelné i u prvních procesorů.
Procesory obsahují
- Řadič nebo řídicí jednotka, která zajišťuje součinnost jednotlivých částí procesoru dle prováděných strojových instrukcí (jejich dekódování, načítání operandů instrukcí z operační paměti a ukládání výsledků zpracování instrukcí).
- Sada registrů pro uchování operandů a mezivýsledků. Přístup k registrům je mnohem rychlejší než přístup do operační paměti připojené k procesoru pomocí sběrnice. Registry dělíme na obecné (pracovní, univerzální) a řídící (např. čítač instrukcí, stavové registry, registr vrcholu zásobníku, indexregistry). Bitová šířka pracovních registrů je jednou ze základních charakteristik procesoru.
- Jedna nebo více aritmeticko-logických jednotek (ALU, anglicky Arithmetic-Logic Unit), které provádí nad daty aritmetické a logické operace.
- Současné CPU obsahují také matematický koprocesor (FPU, anglicky Floating Point Unit), který provádí operace s desetinnými čísly.
- Současné CPU většinou obsahují také vektorovou jednotku, která je v podstatě matematickým koprocesorem optimalizovaným pro operace s vektory desetinných čísel.
Výkon procesoru
Nejčastěji používaným vyjádřením rychlosti procesoru je takt procesoru (taktovací frekvence). V jednom taktu jsou uvnitř procesoru provedeny přesně definované operace. Kvůli různým technikám zvýšení výkonu však již dnes není frekvence rozhodujícím faktorem a nelze ji využít jako srovnání ani mezi kompatibilními procesory.
Skutečnou rychlost procesu je kombinace taktovací frekvence a dalších jeho vlastností. V procesorech typu RISC trvala každá strojová instrukce právě jeden takt, avšak instrukce byly velmi jednoduché (např. jen sečtení dvou registrů nebo přesun z registru do paměti). Naproti tomu v procesorech typu CISC trvala každá strojová instrukce různý počet taktů (jeden až řádově desítky taktů), ale instrukce byly složitější (např. vyzvednutí operandu z paměti, sečtení s obsahem registru a uložení zpět do paměti). Proto nelze tyto dvě různé rodiny procesorů přímo porovnávat na základě taktovací frekvence.
Dnes se však rozdíly mezi oběma architekturami stírají, takže díky superskalární architektuře může CISC procesor za jeden takt vykonat i několik složitých instrukcí, avšak RISC procesory mohou vykonat za takt až kolem dvanácti jednoduchých instrukcí.
Pokud je v procesoru implementován pipelining, je v procesoru najednou v různém stupni rozpracování více strojových instrukcí. Je-li současně k dispozici i superskalarita, mohou být strojové instrukce prováděny mimo pořadí (anglicky out-of-order execution), kdy je pořadí provedení strojových instrukcí změněno (při zachování správnosti výsledků) pro maximalizaci využití všech částí procesoru a tím i pro zvýšení výkonu.
Rychlost procesoru ovlivňuje též přítomnost procesorové cache, která urychluje přístupy do operační paměti typu RAM. Pokud cache není přítomna, musí procesor při čtení nebo zápisu do paměti čekat na dokončení této operace, což je typicky několik taktů sběrnice, která paměť spojuje s procesorem. Rychlost této sběrnice je typicky nižší, než takt procesoru (ve většině současných procesorů je dokonce interní takt procesoru násobkem této frekvence), a proto je toto zdržení velmi významné. Vřazení rychlé cache mezi procesor a paměť může tyto čekací stavy omezit nebo dokonce úplně eliminovat, což závisí na úspěšnosti cache v predikci následujících operací s pamětí a také na celkové velikosti cache. Proto mají současné procesory integrovánu cache ve velikosti řádově jednotek MiB. Cache může být několikastupňová (L1, L2, L3 – čím nižší číslo, tím blíže k procesoru) a může být umístěna i na základní desce počítače. Na výkonnost cache má též vliv optimalizace programu.
Rychlost procesoru je jen jedním z faktorů, které ovlivňují celkovou rychlost počítače. Mezi další faktory patří velikost dostupné operační paměti RAM, rychlost pevného disku, propustnost propojujících sběrnic, ale i rychlost dalších vstupně/výstupních součástí počítače (pro hraní her například grafická karta) a v neposlední řadě režie operačního systému.
Zdroj: Wikipedia