mikroprocesor
Mikroprocesor (zkráceně µP či uP) je v informatice označení pro centrální procesorovou jednotku (zkratka CPU, anglicky central processing unit), která je jako celek uložena do pouzdra integrovaného obvodu[1] nebo do několika integrovaných obvodů.[2] Postupně zpracovává jednotlivé instrukce programu, čímž realizuje požadovanou funkci.
Mikroprocesor představuje příklad sekvenčního logického obvodu, který pro uložení dat používá dvojkovou soustavu.
Tato elektronická součástka je ukryta nejenom v osobních počítačích (jedná se o poměrně malou skupinu mikroprocesorů), ale např. ve spotřební elektronice, CNC strojích, automobilech. Ve všech odvětvích techniky se setkáváme s trendy automatického řízení (například v oblastech těžkého průmyslu, letectví, automobilů, lékařství, telekomunikací nebo energetiky.
Předchůdce mikroprocesorů byly elektronické CPU vyrobené z oddělených TTL integrovaných obvodů.
Tranzistor změnil situaci ve vývoji elektroniky, zejména proto, že se jednalo o elektronickou součástku bez pohyblivých částí. Jedná se o součástku, která dokázala v mnoha oblastech efektivně nahradit do té doby používané elektronky a relé.
Vývoj mikroprocesorů dosud sleduje Mooreův zákon týkající se stálého zvyšovaní výkonu v čase. Tento zákon nám říká, že se „komplexnost integrovaného obvodu s ohledem na minimální cenu komponent zdvojnásobí každých přibližně 18 měsíců“, což se ve všeobecnosti i překvapivě dělo od začátku 70. let. Od samotných začátků jako mozek kalkulaček viděl zvyšující se výkon k dominanci mikroprocesorů v každé jiné formě počítače; každý systém od největšího mainframe (sálový počítač) po nejmenší handheld dnes v jádře používá mikroprocesor.
Významné 8bitové procesory
Po Intel 4004 později následoval Intel 8008, první 8bitový procesor. Tyto procesory jsou předchůdci tržně úspěšného Intel 8080, Zilog Z80 a odvozené 8bitové procesory Intel 8bit.
Konkurenční architektura Motorola 6800 byla klonována a vylepšena firmou MOS Technology pod názvem MOS Technology 6502, čímž soupeřila s popularitou Z80 v osmdesátých letech.
Z80 i 6502 se soustředily na nízkou cenu, dosaženou díky kombinaci malého pouzdra a jednoduchými požadavky na sběrnici a integrované obvody. Ty byly poskytovány jako oddělený čip (např. Z80 obsahoval paměťový kontrolér). Byly to právě tyto vlastnosti, které umožnily start „revoluci“ domácích počítačů na začátku osmdesátých let, která nakonec produkovala polo-užitečné stroje za 99 USD.
Motorola představila osmibitový procesor MC6809 v srpnu 1974. Jiný z prvních 8bitových procesorů byl Signetics 2650, vyráběný společností stejného jména.
Výchozí návrh mikroprocesoru ve světě vesmírného letu byl RCA 1802 od Radio Corporation of America (též známy jako CDP1802, RCA COSMAC), který NASA použila v programu vesmírných sond Voyager a Viking v sedmdesátých letech a na palubě sondy Galileo na Jupiter (1989-1995). CDP1802 byl použit proto, že má velmi nízkou spotřebu a protože jeho výrobní proces zajišťoval lepší ochranu proti kosmickému záření a elektrostatickým výbojům než jakýkoli jiný procesor té doby; proto se o 1802 hovoří jako o prvním procesoru se zvýšenou odolností vůči radiaci.
Rozdělení (mikro)procesorů
Podle instrukční sady
Podle instrukční sady se dělí na procesory (CPU) s úplnou instrukční sadou CISC (Complex Instruction Set Computing) a procesory s redukovanou instrukční sadou ), RISC ( Reduced Instruction Set Computing), VLIW a EPIC.
Mezi představitele CPU s instrukční sadou CISC patří mikroprocesory řady x86-64. Představitelé CPU s instrukční sadou RISC jsou mikroprocesory ARM, SPARC, MIPS, PowerPC a Alpha. Mezi představitele VLIW patří zejména mikroprocesory Tilera a některé GPU fy AMD a představitelé instrukční sady typu EPIC jsou mikroprocesory IA-64 a ev. mikroprocesory Elbrus.
Podle šířky slova (v bitech)
Jedním ze základních ukazatelů procesoru je počet bitů, tj. šířka operandu (slova), který je procesor schopen zpracovat v jednom kroku. První procesory byly 4bitové, což bylo dáno tím, že často pracovaly přímo s čísly v desítkové soustavě. Brzy přišly 8bitové procesory, u nichž se zjednodušeně dá říci, že umí přímo počítat s čísly od 0 do 255, zatímco 16bitový procesor s čísly od 0 do 65535 (tj. 0 až 216-1) atd. Operace s většími čísly pak musí být rozděleny do několika kroků. Procesory se slovem 32bitů byly dlouho dostačující, ale protože kvůli návrhu dokázaly přímo adresovat jen 4 GB virtuální paměti, byly nahrazeny procesory 64bitovými.
Existovaly i procesory, které měly exotické šířky slova, například 10 nebo 24 bitů (například DSP z řady Motorola 56000). V počítačích se však prosadily procesory s šířkou slova danou mocninou 2 (kvůli jednodušší manipulaci a vzájemné zaměnitelnosti jednotlivých operandů).
Podle architektury procesoru
Procesory RISC s redukovanou sadou strojových instrukcí a CISC procesory s velkým počtem strojových instrukcí. Jako výhodnější[zdroj?] se ukazují instrukční sady typu RISC, avšak některé architektury z důvodu zachování zpětné kompatibility pracují i se strojovým kódem typu CISC (Intel x86). Procesory RISC jsou velmi úspěšné např. v mobilních telefonech nebo v superpočítačích, protože jednodušší architektura se projevuje nižší spotřebou energie.[3]
Podle podpory operačního systému
Pro jednoduché aplikace nemusí procesor integrovat jednotku pro správu a ochranu paměti (MMU, anglicky memory management unit), případně podporovat ochranu paměti nebo privilegovaný režim. Pro provoz plnohodnotných operačních systémů (například Windows NT a vyšší tj. XP, 7, 8 ..., Linux, Mac OS X atd.) je jednotka správy a ochrany paměti nezbytná. Bez zmíněné podpory v procesoru jsou velmi omezené možnosti primitivního multitaskingu, současné práce více uživatelů na jednom počítači nebo virtualizace.
Podle stupně integrace
Jednočipový mikropočítač nebo také mikrokontrolér (MCU) obsahuje kromě procesoru i další obvody, jako jsou časovače (timery a watchdog timery), nevolatilní paměť (EEPROM, FLASH nebo ROM) a volatilní paměť (typicky SRAM), dále vstupně výstupní obvody, takže je schopen samostatné funkce. Za průkopníky v této kategorii můžeme považovat 8bitový procesor Intel i8051, který poprvé integroval všechny základní periferie (jádro procesoru, paměť RAM, EEPROM, čítače a časovače) na jediném čipu a 16bitový technologický procesor Siemens SAB 80C166, který poprvé integroval A/D převodníky, komunikační linky a masivní systém čítačů/časovačů/přerušení. Následníky řady 80166 dnes[kdy?] vyrábí Infineon (řada C167 a C166 SV2) a SGS Thomson (řada ST10). V současnosti v oblasti jednočipových mikropočítačů a mikrokontrolérů převažují obvody založené na architektuře ARM.
Podle specializace
Digitální signálový procesor (DSP) je zaměřen na zpracování signálu. DSP jsou optimalizovány na co nejrychlejší opakování jednoduchých matematických algoritmů, zaměřených na zpracování signálu. Typickou aplikací DSP je filtrace signálu pomocí filtrů FIR a IIR nebo Fourierova analýza. DSP se dnes používají především ve spotřební elektronice a v telekomunikační technice. Současné DSP obsahují proti svým předchůdcům navíc také rychlé komunikační linky, aby bylo možné přenášet velký datový tok, protékající těmito procesory. Můžeme rovněž pozorovat snahy o spojení výhod DSP a mikroprocesorů, ať už je to cestou rozšiřování DSP o periferie nebo rozšiřováním mikrokontrolérů o DSP jednotky.
Podle počtu jader
V současnosti[kdy?] jde vývoj směrem k integraci více jader, tedy více procesorů do jediného čipu. Tento trend můžeme pozorovat u procesorů pro osobní počítače. Procesory se tedy dělí na jednojádrové a vícejádrové. Zvyšování počtu jader je v podstatě vynuceno fyzikálními omezeními (např. rychlostí šíření elektrického signálu, technologií daným ztrátovým výkonem čipu, ...). Integrací většího počtu jednodušších jader je možné dosáhnout při stejné výrobní technologii na stejné ploše křemíku pro některé aplikace (více náročných paralelních výpočtů) mnohem vyšší výpočetní výkon, než použitím jediného složitého jádra.
Podle implementace
Mikroprocesor může být vytvořen jako jednoúčelový obvod určený přímo k velkosériové výrobě, ale může být implementován také jako firmware běžící v programovatelném hradlovém poli. Jádro jednoduchých 8bitových mikroprocesorů se skládá z 5 až 10 tisíc hradel.
Základní parametry mikroprocesoru
Díky složitosti procesorů není možné stanovit několik jednoduše srozumitelných obecných parametrů, které by umožnily objektivní srovnání různých procesorů. Následující tabulka umožňuje zhruba srovnat hlavní rysy současných procesorů.
Parametr | Popis | Jednotka | běžný rozsah |
---|---|---|---|
Výkon CPU (celočíselný) | Počet základních operací provedených za jednu sekundu | IPS (např. soft. Dhrystone) | jednotky až stovky GIPS (gigaops) |
Výkon FPU (desetinný) | počet desetinných operací v jednoduché nebo dvojnásobné přesnosti, které zvládne provést mikroprocesor za sekundu | FLOPS (např. soft. Whetstone) | až jednotky TFLOPS (teraflops) |
Řada | Oficiální označení velikosti tranzistorů | nm | 10000 nm (roku 1971), 1500 nm (1982), 600 nm (1994), 90 nm (2004), 14 nm (2014) 7 nm (2019) |
Výrobní proces | Skutečná velikost hradla tranzistorů | nm | 45 nm (2004), 25 nm (2014) |
Šířka slova | Maximální bitová šířka operandů instrukcí | bit | 4 – 64 (nebo FP vektory až 8x64bit) |
Počet jader | Počet a typ jader integrovaných v procesoru | číslo | běžně 1 – 16 jader |
Efektivita strojového kódu | Počet instrukcí potřebných pro provádění běžných operací | IP/cyklus hodin | 1 – 5 (CISC), 1 – 12 (RISC) |
Šířka externí datové sběrnice | Maximální počet bitů, které je možné během jedné operace přenést z/do čipu | bit | 8 – 128 |
Frekvence externí datové sběrnice (FSB) | Maximální frekvence přístupu do externí paměti RAM | Hz | stovky MHz |
Interní paměť cache | Kapacita rychlé interní vyrovnávací paměti integrované přímo na čipu procesoru | Byte | i několik MiB (většinou 4-12MiB) |
Velikost adresovatelné paměti | Velikost externí paměti, kterou je procesor schopen přímo používat | Byte | u 32bitových CPU řádově 4 GiB i více |