Smazaný obsah Přidaný obsah
Jtyml (diskuse | příspěvky)
Bez shrnutí editace
Jtyml (diskuse | příspěvky)
Bez shrnutí editace
Řádek 16:
 
==Filozofie designu neRISCových mikroprocesorů==
Na začátku počítačového průmyslu se programovalo vyhradně v [[assembleru|assembler]] nebo [[strojovém kódu]], který se vyznačoval jednoduchými instrukcemi. Proto se CPU návrháři snažili, aby instrukce dělalidělaly stenéstejné množství práce jako FEASIBLE. S příchodem programovacích jazyků vyšší úrovně přicházejí také specializované instrukce, které jsou prímo implementovány do centrálních mechanismů těchto jazyků. Dalším obecným cílem bylo zajistit všechny možné adresovací módy pro každou instrukci tzv. ortogonita. Ta usnadňuje implementaci kompilátoru. Proto mají často aritmetické operace stejné výsledky jako operandy přímo v paměti (s vyjímkou registrů).
V této době byl postoj takový, že design hardwaru byl vyspělejší než desing kompilátoru. Což bylo důvodem k vykonávání jednotlivých částí hardwaru nebo mikrokódu samostatně nikoli v omezené paměti kompilátoru (nebo jeho vygenerovaného kódu). Filozofie tohoto designu byla zpětně pojmenována jako komplexní instrukční výpočetní sada (complex instruction set computing - CISC), poté prisla RISCová filozofie mikroprocesorů.
CPU měli relativně málo registrů a to zejména z těchto důvodů:
Řádek 22:
*Velký počet bitů vyžaduje velký počet instrukčních bitů jako registr specifikací, což zpřehldňije kód (viz níže).
*CPU registry jsou dražší než externí paměťová místa, velké registrové sady byly značně těžkopádné s omezenými obvody na desce nebo čipovou inteligencí.
Významnou silou podporovanou složitost byla velmi omezená hlavní paměť (několik kilobytů). Proto bylo výhodnější pro mnoho informací uchovávaných ve složitějších počitačových programech, což vede k funkcím, které jsou složitěji zakódované, promennáproměnná délka instrukce, data načítá stejně jako je počítá. Tyto problémy byly s vyšší prioritou než nsadnésnadné dekódování těchto instrukcí.
 
Steně důležité bylo, že hlavní paměti byly docela pomalé (běžný typ paměti byla paměť s feritovým jádrem); díky velkému množství informací, jedna mohla snížit frekvenci CPU, který má přistup k těmto prostředkům. Moderní počítače se setkávají s podobnými limitujícími faktory: hlavní paměti jsou ve sovnání s CPU pomalé, rychlé vyrovnávací paměti (cache paměti) jsou omezené svojí velikostí. To může částečně vysvětlit, proč dokažou vysoce zakódované instrukční sady být stejně užitečné jako RISC procesory v moderních počítačích.
 
==Filozofie designu RISCových mikroprocesorů==
V polovině 70. let 19. století prokázali výzkumní pracovníci IBM (zejména John Cocke), že většina kombinací z těchto ortogonálních adresních módů a instrukcí nebyla použita ve většině programů generovaných kompilátory používaných v této době. Tím se ukázalo, že je v mnoha případech obtížné napsat kompilátor s omezenou schopností využívat funkce, které poskytuje klasické CPU.