Procesory RISC v pracovních stanicích a serverech - architektura PA-RISC

Pavel Tišnovský 28. 6. 2011

Dnes na chvíli odbočíme od popisu mikroprocesorů SPARC, protože se budeme zabývat 32bitovými a posléze i 64bitovými mikroprocesory PA-RISC navrženými a vyráběnými společností Hewlett-Packard. Tyto mikroprocesory mají několik vlastností společných s architekturou MIPS i mikroprocesory SPARC.

Obsah

1. Společnost Hewlett-Packard a její vliv na vývoj mikroprocesorů s architekturou­ RISC

2. Mikroprocesor FOCUS aneb mikropočítač na jediném čipu

3. Problémy provázející použití procesoru FOCUS

4. Přechod na architekturu PA-RISC

5. 32bitové mikroprocesory s architekturou PA-RISC

6. Architektura 32bitových mikroprocesorů PA-RISC

7. Instrukční sada PA-RISC

8. Instrukce využívané matematickým koprocesorem

9. Odkazy na Internetu

1. Společnost Hewlett-Packard a její vliv na vývoj mikroprocesorů s architekturou­ RISC

V předchozích částech seriálu o architekturách počítačů jsme se seznámili s původními mikroprocesory RISC-1 navrženými na universitě v Berkeley (David Patterson a Carlo H. Sequin), na něž navázaly dvě velmi úspěšné a známé série čipů – mikroprocesory řady MIPS (universita ve Stanfordu, vedoucí projektu John L. Hennessy) a taktéž mikroprocesory SPARC. Ovšem relativní jednoduchost a současně i výkonnost architektury RISC lákala k návrhu vlastních mikroprocesorů i další společnosti, jež se na začátku osmdesátých let minulého století zabývaly konstrukcí minipočítačů, pracovních stanic a posléze i osobních počítačů. Jednou z těchto společností je i firma Hewlett-Packard, která se v té době zabývala mj. i výrobou stolních a kapesních kalkulátorů, tiskáren (v roce 1984 byly na trh uvedeny modely jak laserových, tak i inkoustových tiskáren) a v neposlední řadě se některé divize Hewlett-Packard zabývaly taktéž výrobou minipočítačů, pracovních stanic a osobních počítačů.

Obrázek 1: Slavná garáž, v níž původně sídlila firmička Hewlett-Packard.

V oblasti výpočetní techniky měla firma Hewlett-Packard v první polovině osmdesátých let minulého století poměrně velmi dobrou pozici, protože vyráběla jak minipočítače řady HP 3000, tak i pracovní stanice HP 9000 Series 200 postavené na 32bitovém mikroprocesoru Motorola M68000, dále pracovní stanice HP 9000 Series 300 a HP 9000 Series 400 (i zde se využívaly 32bitové mikroprocesory firmy Motorola, konkrétně se jednalo o výkonnější čipy M68010M68040) a taktéž pracovní stanice HP 9000 Series 500, které byly postavené na mikroprocesorech FOCUS (viz též navazující kapitolu). Kromě toho společnost Hewlett-Packard vyráběla i osobní počítače kompatibilní s IBM PC, které původně obsahovaly mikroprocesor Intel 80286. Jednotlivé modely těchto osobních počítačů byly pojmenovány HP Vectra a toto pojmenování bylo později použito i u dalších osobních počítačů postavených na platformě x86.

Obrázek 2: Kapesní kalkulačka HP-35 znamenala pro mnoho inženýrů poměrně zásadní změnu jejich pracovních návyků, protože ti ji začali používat namísto logaritmických pravítek. O popularitě této kalkulačky svědčí i to, že dnes existuje několik jejích emulátorů a způsob zápisu aritmetických výrazů pomocí RPN firma HP používala i u mnoha dalších modelů kalkulaček.

2. Mikroprocesor FOCUS aneb mikropočítač na jediném čipu

V první kapitole jsme se zmínili o tom, že některé starší pracovní stanice vyráběné společností Hewlett-Packard (například se jednalo o počítač HP 9000 Series 520) používaly procesor nazvaný FOCUS. U tohoto procesoru se na chvíli zastavíme, protože jeho architektura je poměrně zajímavá. Tento procesor je důležitý taktéž z toho důvodu, že problémy, na které společnost Hewlett-Packard v souvislosti s těmito procesory narazila, vedly k pozdějšímu rozhodnutí o vývoji RISCových procesorů HP-PA. Mikroprocesory FOCUS byly postavené na zásobníkové architektuře (k níž se v tomto seriálu ještě jednou vrátíme). Ostatně se zásobníkovou architekturou, s níž úzce souvisí i obrácená polská notace (RPN – Reverse Polish Notation), měla firma HP velmi dobré zkušenosti, protože ji použila jak u svých stolních kalkulátorů, tak i o několik let později u slavných kapesních kalkulaček HP-35 a HP-65, na něž později navázaly další více či méně úspěšné modely.

Obrázek 3: Pracovní stanice Hewlett-Packard 9000 Series 300.

Mikroprocesor FOCUS (řízený mikroprogramem!) obsahoval celkem 39 registrů o šířce 32 bitů, přičemž 31 z těchto registrů bylo pracovních, dva registry tvořily operandy aritmeticko-logické jednotky a zbylé registry měly speciální použití (P – programový čítač, PB – bázová adresa, PL – program limit, nejvyšší adresovatelná buňka paměti, S – ukazatel na vrchol zásobníku atd.). Instrukční sada tohoto procesoru obsahovala 230 instrukcí o šířce 16 bitů, popř. 32 bitů. Tato sada byla navržena takovým způsobem, aby se všechny operandy aritmetických a logických operací načítaly z operační paměti na vrchol zásobníku a posléze se operace prováděly s nejvyššími prvky uloženými na tomto zásobníku, jak je tomu u zásobníkových procesorů zvykem. Původní verze procesoru FOCUS pracovala na hodinové frekvenci 18 MHz. K hlavnímu procesoru (CPU) se navíc připojovaly tři další čipy určené pro provádění operací s hodnotami s plovoucí řádovou čárkou.

Obrázek 4: Pracovní stanice Hewlett-Packard 9000 Series 400.

3. Problémy provázející použití procesoru FOCUS

Použití procesorů FOCUS v pracovních stanicích HP 9000 Series 500 provázelo několik problémů. První z těchto problémů byl v podstatě ryze technologický – hlavní procesor CPU i matematický koprocesor FPU (realizovaný v samostatných čipech) se přehříval, proto musely být všechny tyto čipy umístěny na speciálním plošném spoji, na němž byla nanesena jednomilimetrová vrstva mědi sloužící pro odvod či spíše rozvod a vyzáření tepla (čipy byly zasazeny přímo do této vrstvy). Dalším problémem byla i samotná komplexnost čipu, která vyplývala z toho, že procesor FOCUS obsahoval ve svém mikrokódu (jednalo se o přibližně devět tisíc 38bitových mikroinstrukcí) celou funkcionalitu procesorů řady HP 3000, což mj. znamenalo i to, že procesor obsahoval přibližně 450×000 tranzistorů. To bylo na začátku osmdesátých let minulého století takřka nepředstavitelné množství, ani ne tak z technologického hlediska, jako spíše z hlediska cenového (nehledě na již zmíněnou velkou spotřebu a tepelný výkon). Ostatně je poněkud paradoxní, že takto složitý byl právě zásobníkový procesor, protože tyto typy procesorů jsou obvykle ještě jednodušší než mnohé mikroprocesory s architekturou­ RISC.

Obrázek 5: Bližší pohled na case pracovní stanice HP 9000 Series 300.

Pro porovnání s ostatními známými mikroprocesory se můžeme podívat na následující tabulku, z níž je patrné, že počet 450×000 tranzistorů překonal až mikroprocesor Intel 80486 v roce 1989:

Mikroprocesor Bitová šířka Rok prodeje Počet tranzistorů
Intel 8008 8 1972 3 500
MOS Technology 6502 8 1975 3 510
Motorola 6800 8 1974 4 100
Intel 8080 8 1974 4 500
Intel 8086 16 1978 29 000
Intel 8088 8/16 1979 29 000
Intel 80186 16 1982 55 000
Motorola 68000 32 1979 68 000
Intel 80286 16 1982 134 000
Intel 80386 32 1985 275 000
Intel 80486 32 1989 1 180 000
Pentium 32 1993 3 100 000

Obrázek 6: Osobní počítač řady HP Vectra s pro někoho nezbytnou nálepkou s certifikátem nejmenovaného operačního systému

4. Přechod na architekturu PA-RISC

Společnost Hewlett-Packard z důvodů popsaných v předchozí kapitole hledala náhradu za sice zpětně kompatibilní, ale drahý a interně komplikovaný procesor FOCUS. Řešením bylo využití jednodušší a zpětnou kompatibilitou s minipočítači HP 3000 nezatížené architektury RISC nazvané PA-RISC (PA je zkratka sousloví Precision Architecture) a je zajímavé a vlastně i typické, že první modely procesorů PA-RISC z roku 1986 obsahovaly méně než třetinu tranzistorů (konkrétně 115 000) v porovnání s procesorem FOCUS, a to při větším výpočetním výkonu. Postupně se PA-RISC začaly používat i v pracovních stanicích, kde původně dominovaly mikroprocesory řady Motorola M68000. V souvislosti se zpětnou kompatibilitou může být pro někoho zajímavá informace, že stařičká architektura HP 3000, která byla uvedena na trh v roce 1971, byla podporována až do konce minulého roku a některé společnosti – třetí strany – dokonce zaručují podporu této platformy až do roku 2013, popř existuje i emulátor celé platformy pro počítače PC.

Obrázek 7: Kapesní kalkulačka HP-65 je skoro stejně tak známá, jako její předchůdce HP-35, ovšem z jiného důvodu – jednalo se o první kapesní programovatelnou kalkulačku, navíc s možností trvalého záznamu programů. Programy bylo možné ukládat na magnetické kartičky, přičemž čtečka a zapisovačka těchto paměťových kartiček byla přímo součástí kalkulačky. Zajímavé je, že se jednalo o první kalkulátory, které se dostaly do vesmíru, protože byly používány v některých letech programu Apollo jako záložní jednotky pro případ výpadku hlavního naváděcího počítače.

Mikroprocesory řady PA-RISC se v několika ohledech přibližovaly oběma hlavním vývojovým větvím RISCových procesorů, tj. jak sérii mikroprocesorů MIPS, tak i sérii mikroprocesorů SPARC. Velmi podobný byl především programátorský model mikroprocesorů – ty totiž obsahovaly, podobně jako obě zmíněné série, 32 pracovních registrů o šířce 32 bitů. Taktéž základní formát instrukcí byl podobný, protože všechny instrukce měly fixní šířku 32 bitů, což znamenalo, že se z operační paměti načítala vždy celá instrukce v jednom taktu, včetně operačního kódu i operandů. Samotná instrukční sada však byla v porovnání s MIPSSPARC složitější, což byl (prý) důsledek pečlivé analýzy chování aplikací přeložených pro PA-RISC. Matematický koprocesor byl podobný koprocesoru SPARC – implementovány byly základní aritmetické instrukce a počet pracovních (FP) registrů byl zpočátku roven šestnácti, později byl jejich počet zvýšen na 32, tj. shodně s architekturou SPARC.

Obrázek 8: Čip (pevně naprogramovaný mikroprocesor) tvořící ústřední část kapesního programovatelného kalkulátoru HP-65.

5. 32bitové mikroprocesory s architekturou PA-RISC

První varianta mikroprocesoru řady PA-RISC, která nesla modelové označení TS-1, byla založena na obvodech TTL s nízkou a střední integrací, které byly umístěny na šesti deskách, takže se – striktně pojato – vlastně ani o plnohodnotný mikroprocesor nejednalo. Po této spíše testovací verzi se již pro další mikroprocesory PA-RISC začaly používat stejné technologie integrovaných obvodů VLSI, jaké používali i ostatní výrobci čipů. Mikroprocesory s označením NS-1 a NS-2 byly založeny technologii NMOS, zatímco mikroprocesory s označením CS-1 (testovací série) a PCX (prodávaný čip) používaly technologii CMOS. Celá 32bitová řada těchto mikroprocesorů byla zakončena čipem pojmenovaným PCX-L2, po němž již následovaly 64bitové varianty mikroprocesorů PA-RISC. V tabulce zobrazené pod tímto odstavcem jsou vypsány základní parametry 32bitových čipů řady PA-RISC:

# Model procesoru Označení Rok výroby Frekvence (MHz) Výrobní proces [µm] Počet tranzistorů
1 TS-1 × 1986 8 ? 115 000
2 CS-1 × 1987 8 1.6 164 000
3 NS-1 × 1987 25/30 1.5 144 000
4 NS-2 × 1989 27.5/30 1.5 183 000
5 PCX × 1990 50 1.0 196 000
6 PCX-S PA-7000 1991 66 1.0 580 000
7 PCX-T PA-7100 1992 33–100 0.8 850 000
8 PCX-T PA-7150 1994 125 0.8 850 000
9 PCX-T' PA-7200 1994 120 0.55 1 260 000
10 PCX-L PA-7100LC 1994 60–100 0.75 900 000
11 PCX-L2 PA-7300LC 1996 132–180 0.5 9 200 000

Obrázek 9: Detail pohonné jednotky čtečky magnetických karet použitých v kapesním programovatelném kalkulátoru HP-65.

6. Architektura 32bitových mikroprocesorů PA-RISC

Mikroprocesory PA-RISC byly založeny na instrukční pipeline s pěti stupni (fázemi), podobně jako již popsané mikroprocesory MIPS, ovšem na rozdíl od těchto mikroprocesorů mohly být v případě PA-RISC instrukce pozastaveny předchozí instrukcí, což umožnilo relativně snadnou implementaci operací, jejichž provedení trvalo větší počet cyklů. Navíc u těchto mikroprocesorů existovaly mezi jednotlivými stupni pipeline „zkratky“ umožňující využití výsledků získaných v předchozí instrukci, aniž by bylo nutné čekat na úplné dokončení této instrukce, tj. na uložení výsledků zpět do registrů. Jedná se o takzvaný result forwarding, který sice vede ke komplikaci v návrhu mikroprocesorů, na druhou stranu však umožňuje eliminovat některé prázdné instrukce typu NOP, které by se jinak musely v určitých případech do programového kódu vkládat. Původně se v procesorech PA-RISC interně používala jediná sběrnice pro instrukce i data, později však došlo k oddělení interních sběrnic na instrukční sběrnici a datovou sběrnici.

Obrázek 10: Struktura moderní varianty multiprocesoru postaveného na čipech PA-RISC.

Jak jsme si již řekli v předchozích kapitolách, používaly mikroprocesory PA-RISC celkem 32 pracovních registrů o šířce 32 bitů, přičemž registr GR0 obsahoval konstantní nulu (poznávací to znak většiny RISCových procesorů :-) a registr GR31 obsahoval návratovou adresu při volání subrutiny (jump and link). Navíc měli programátoři k dispozici sedm „stínových registrů“ používaných v průběhu přerušení pro úschovu hodnot sedmi pracovních registrů. Kromě těchto registrů obsahovaly mikroprocesory PA-RISC i další typy registrů, z nichž některé jsou vypsány v tabulce pod tímto odstavcem:

Registry Význam
GR 0..GR 31 pracovní registry
SHR 0..SHR 6 stínové registry používané při přerušení
SR 0..SR 7 registry používané při skocích (space registers)
PSW Processor Status Word
CR 0..CR 31 řídicí registry
FPR 0..FPR 31 registry používané matematickým koprocesorem

Obrázek 11: Procesor PA-RISC 7100LC.

7. Instrukční sada PA-RISC

Instrukční sada mikroprocesorů PA-RISC je oproti procesorům MIPS a SPARC složitější, protože obsahuje i relativně komplexní instrukce, v nichž se kombinuje více operací (například posun a následný součet). Ovšem základ instrukční sady se stále drží klasických RISCových tradic – základem jsou aritmetické a logické instrukce prováděné s dvojicí pracovních registrů s uložením výsledku do registru třetího (takzvané tříadresové operace), které jsou doplněny instrukcemi typu Load&Store a samozřejmě též nepodmíněnými a podmíněnými skoky. Instrukce typu Load&Store byly určeny pro načtení/uložení bajtu, 16bitového slova i 32bitového slova, přičemž u některých čipů bylo možné volbou jednoho bitu v PSW určit endianitu těchto operací. Zajímavá a důležitá je ovšem existence instrukce LOAD AND CLEAR WORD provádějící atomickou operaci načtení slova s jeho vynulováním, kterou lze využít pro implementaci semaforu, popř. i dalších synchronizačních nástrojů.

Obrázek 12: Procesor PA-RISC 7300LC.

Instrukce skoku se rozdělovaly podle toho, zda se jednalo o skok podmíněný nebo nepodmíněný. U nepodmíněných skoků bylo pro adresu vyhrazeno sedmnáct bitů v instrukčním slově, což umožňovalo skok v rozsahu ±256kB (skoky na adresy dělitelné čtyřmi), zatímco u podmíněných skoků byla relativní adresa uložena ve dvanácti bitech, takže skok bylo možné provést v adresním rozsahu ±8 kB. Zajímavá byla taktéž implementace operace porovnání současně se skokem, přičemž porovnávat se mohla hodnota jednoho pracovního registru buď s druhým pracovním registrem (COMPARE AND BRANCH IF TRUE = COMBT, COMPARE AND BRANCH IF FALSE = COMBF), popř. s konstantou (COMPARE IMMEDIATE AND BRANCH IF TRUE = COMIBT, COMPARE IMMEDIATE AND BRANCH IF FALSE = COMIBF). Kromě toho též existovaly skokové instrukce typu ADD AND BRANCH IF TRUE = ADDBT a ADD AND BRANCH IF FALSE = ADDBF.

Obrázek 13: Mikroprocesor s instrukční sadou MIPS. Čipy obsahující jádra těchto RISCových mikroprocesorů se v současnosti používají v mnoha vestavěných zařízeních, například přehrávačích videa, routerech atd. I když se jedná o málo známou skutečnost, patří mikroprocesory MIPS mezi jedny z nejrozšířenějších typů procesorů současnosti a možná i překonávají v celkovém počtu prodaných kusů architekturu i386/x86_64.

widgety

8. Instrukce využívané matematickým koprocesorem

První verze matematických koprocesorů pro mikroprocesory PA-RISC měly poměrně jednoduchou instrukční sadu obsahující instrukce pro provádění základních aritmetických operací s registry FPR0FPR15 a později též s registry FPR16FPR31 (všechny tyto registry měly šířku 64 bitů). Kromě čtveřice aritmetických operací součtu, rozdílu, součinu a mocniny měli programátoři k dispozici operaci pro výpočet absolutní hodnoty a taktéž instrukci pro výpočet druhé odmocniny. Kromě toho dokázal matematický koprocesor provádět různé konverze, zejména převody mezi numerickými hodnotami uloženými v systému plovoucí řádové čárky (FP – Floating Point) a hodnotami s pevnou řádovou čárkou (FX – Fixed Point). Všechny tyto operace, včetně operace pro zaokrouhlení výsledku či pro porovnání dvou číselných hodnot (k dispozici bylo všech šest testů na relace mezi dvojicí numerických hodnot), jsou vypsány v následující tabulce:

# Instrukce Význam
1 COPR Identifikace koprocesoru
2 FCPY Kopie hodnoty
3 FABS Výpočet absolutní hodnoty
4 FSQRT Výpočet druhé odmocniny
5 FRND Zaokrouhlení na celé číslo
6 FCNVFF Konverze FP na FP
7 FCNVXF Konverze FX na FP
8 FCNVFX Konverze FP na FX
9 FCNVFXT Konverze FP na FX s explicitním zaokrouhlením směrem k nule
10 FCMP Porovnání dvou hodnot
11 FTEST Test příznakových bitů
12 FADD Součet dvou hodnot
13 FSUB Rozdíl dvou hodnot
14 FMPY Součin dvou hodnot
15 FDIV Podíl dvou hodnot

Obrázek 14: Mikroprocesor PA RISC firmy Hewlett-Packard, který je na této fotografii zobrazen spolu s dalšími podpůrnými obvody a paměťmi cache, jež jsou nedílnou součástí prakticky všech procesorů s architekturou­ RISC.

9. Odkazy na Internetu

  1. Hewlett Packard PA-8800 RISC (LOSTCIRCUITS)
    http://www.los­tcircuits.com/mam­bo//index.php?op­tion=com_conten­t&task=view&id=42&I­temid=42
  2. PA-RISC 1.1 Architecture and Instruction Set Reference Manual
    http://h21007­.www2.hp.com/por­tal/download/fi­les/unprot/pa­risc/pa1–1/acd.pdf
  3. Fotografie mikroprocesorů HP PA (stránka 1)
    http://www.chip­db.org/cat-pa-risc-592.htm
  4. Fotografie mikroprocesorů HP PA (stránka 2)
    http://www.chip­db.org/cat-pa-risc-592.htm?page=2
  5. Fotografie mikroprocesorů HP PA (stránka 2)
    http://www.chip­db.org/cat-pa-risc-592.htm?page=3
  6. PA-RISC (Wikipedia)
    http://en.wiki­pedia.org/wiki/PA-RISC
  7. The Great CPU List: Part VI: Hewlett-Packard PA-RISC, a conservative RISC (Oct 1986)
    http://jbayko­.sasktelwebsi­te.net/cpu4.html
  8. HP 9000/500 FOCUS
    http://www.open­pa.net/system­s/hp-9000_520.html
  9. HP FOCUS Microprocessor (Wikipedia)
    http://en.wiki­pedia.org/wiki/HP_FO­CUS
  10. HP 3000 (Wikipedia)
    http://en.wiki­pedia.org/wiki/HP_3000
  11. The SPARC Architecture Manual Version 8 (manuál v PDF formátu)
    http://www.spar­c.org/standar­ds/V8.pdf
  12. The SPARC Architecture Manual Version 9 (manuál v PDF formátu)
    http://develo­pers.sun.com/so­laris/articles/spar­cv9.pdf
  13. SPARC Pipelining
    http://www.aca­demic.marist.e­du/~jzbv/archi­tecture/Projec­ts/S2002/SPAR­C/pipelining.html
  14. SPARC Instruction
    http://www.aca­demic.marist.e­du/~jzbv/archi­tecture/Projec­ts/S2002/SPAR­C/inst_set.html
  15. OpenSPARC
    http://www.open­sparc.net/
  16. History of SPARC systems 1987 to 2010
    http://www.spar­cproductdirec­tory.com/histo­ry.html
  17. Sun-1 (Wikipedia)
    http://en.wiki­pedia.org/wiki/Sun-1
  18. Sun-2 (Wikipedia)
    http://en.wiki­pedia.org/wiki/Sun-2
  19. Sun-3 (Wikipedia)
    http://en.wiki­pedia.org/wiki/Sun-3
  20. Sun386i (Wikipedia)
    http://en.wiki­pedia.org/wiki/Sun386i
  21. Sun 386i/250
    http://sites.in­ka.de/pcde/si­te/sun386i.html
  22. SPARC Instruction Set
    http://www.aca­demic.marist.e­du/~jzbv/archi­tecture/Projec­ts/S2002/SPAR­C/inst_set.html
  23. MIPS Architecture Overview
    http://tams-www.informatik.uni-hamburg.de/ap­plets/hades/web­demos/mips.html
  24. MIPS Technologies R3000
    http://www.cpu-world.com/CPUs/R3­000/
  25. CPU-collection: IDT R3010 FPU
    http://www.cpu-collection.de/?tn=0&l0­=co&l1=IDT&l2=R3010+F­PU
  26. The MIPS R2000 Instruction Set
    http://suraj.lum­s.edu.pk/~cs423a0­5/Reference/MIP­SCodeTable.pdf
  27. Maska mikroprocesoru RISC 1
    http://www.cs­.berkeley.edu/~pat­trsn/Arch/RIS­C1.jpg
  28. Maska mikroprocesoru RISC 2
    http://www.cs­.berkeley.edu/~pat­trsn/Arch/RIS­C2.jpg
  29. The MIPS Register Usage Conventions
    http://pages.cs­.wisc.edu/~cs354–2/beyond354/con­ventions.html
  30. C.E. Sequin and D.A.Patterson: Design and Implementation of RISC I
    http://www.eec­s.berkeley.edu/Pub­s/TechRpts/1982/CSD-82–106.pdf
  31. Berkeley RISC
    http://en.wiki­pedia.org/wiki/Ber­keley_RISC
  32. Great moments in microprocessor history
    http://www.ib­m.com/developer­works/library/pa-microhist.html
  33. Microprogram-Based Processors
    http://resear­ch.microsoft.com/en-us/um/people/gbe­ll/Computer_Struc­tures_Principles_an­d_Examples/csp0167­.htm
  34. Great Microprocessors of the Past and Present
    http://www.cpushac­k.com/CPU/cpu­1.html
  35. A Brief History of Microprogramming
    http://www.cs­.clemson.edu/~mar­k/uprog.html
  36. Architecture of the WISC CPU/16
    http://www.ece­.cmu.edu/~koop­man/stack_com­puters/sec4_2­.html
  37. Zásobníkový procesor WISC CPU/16 (Root.CZ)
    http://www.ro­ot.cz/clanky/pro­gramovaci-jazyk-forth-a-zasobnikove-procesory-16/#k03
  38. Writable instruction set, stack oriented computers: The WISC Concept
    http://www.ece­.cmu.edu/~koop­man/forth/roches­ter87.pdf
  39. The Great CPU List: Part X: Hitachi 6301 – Small and microcoded (1983)
    http://jbayko­.sasktelwebsi­te.net/cpu2.html#Sec2Par­t10
  40. What is RISC?
    http://www-cs-faculty.stanfor­d.edu/~erober­ts/courses/so­co/projects/2000–01/risc/whatis/
  41. RISC vs. CISC
    http://www-cs-faculty.stanfor­d.edu/~erober­ts/courses/so­co/projects/2000–01/risc/risccisc/
  42. RISC and CISC definitions:
    http://www.cpushac­k.com/CPU/cpu­AppendA.html
  43. The Evolution of RISC
    http://www.ib­m.com/developer­works/library/pa-microhist.html#si­debar1
  44. SPARC Processor Family Photo
    http://thenet­workisthecompu­ter.com/site/?p=243
  45. SPARC: Decades of Continuous Technical Innovation
    http://blogs.o­racle.com/onthe­record/entry/spar­c_decades_of_con­tinuous_techni­cal
  46. The SPARC processors
    http://www.top500­.org/2007_over­view_recent_su­percomputers/spar­c_processors
  47. Maurice V. Wilkes Home Page
    http://www.cl­.cam.ac.uk/ar­chive/mvw1/
  48. Papers by M. V. Wilkes (důležitá je především jeho práce číslo 35)
    http://www.cl­.cam.ac.uk/ar­chive/mvw1/list-of-papers.txt
  49. Microprogram Memory
    http://free-books-online.org/com­puters/advanced-computer-architecture/mi­croprogram-memory/
  50. First Draft of a report on the EDVAC
    http://qss.stan­ford.edu/~god­frey/vonNeuman­n/vnedvac.pdf
  51. Introduction to Microcontrollers
    http://www.pic24mi­cro.com/cisc_vs_ris­c.html
  52. Reduced instruction set computing (Wikipedia)
    http://en.wiki­pedia.org/wiki/Re­duced_instruc­tion_set_compu­ter
  53. MIPS architecture (Wikipedia)
    http://en.wiki­pedia.org/wiki/MIP­S_architecture
  54. Very long instruction word (Wikipedia)
    http://en.wiki­pedia.org/wiki/Ve­ry_long_instruc­tion_word
  55. Classic RISC pipeline (Wikipedia)
    http://en.wiki­pedia.org/wiki/Clas­sic_RISC_pipe­line
  56. R2000 Microprocessor (Wikipedia)
    http://en.wiki­pedia.org/wiki/R2000_(mi­croprocessor)
  57. R3000 Microprocessor (Wikipedia)
    http://en.wiki­pedia.org/wiki/R3000
  58. R4400 Microprocessor (Wikipedia)
    http://en.wiki­pedia.org/wiki/R4400
  59. R8000 Microprocessor (Wikipedia)
    http://en.wiki­pedia.org/wiki/R8000
  60. R10000 Microprocessor (Wikipedia)
    http://en.wiki­pedia.org/wiki/R10000
  61. SPARC (Wikipedia)
    http://en.wiki­pedia.org/wiki/Sparc
  62. CPU design (Wikipedia)
    http://en.wiki­pedia.org/wiki/CPU_de­sign
  63. Control unit (Wikipedia)
    http://en.wiki­pedia.org/wiki/Con­trol_unit
  64. Microcode (Wikipedia)
    http://en.wiki­pedia.org/wiki/Mi­crocode
  65. Microsequencer (Wikipedia)
    http://en.wiki­pedia.org/wiki/Mi­crosequencer
  66. Maurice Wilkes (Wikipedia)
    http://en.wiki­pedia.org/wiki/Mau­rice_Wilkes
  67. Micro-operation (Wikipedia)
    http://en.wiki­pedia.org/wiki/Mi­cro-operation
  68. SPARC Tagged Data – otázka
    http://compiler­s.iecc.com/com­parch/article/91–04–079
  69. SPARC Tagged Data – odpověď #1
    http://compiler­s.iecc.com/com­parch/article/91–04–082
  70. SPARC Tagged Data – odpověď #2
    http://compiler­s.iecc.com/com­parch/article/91–04–088
Našli jste v článku chybu?
Podnikatel.cz: Udělali jsme velkou chybu, napsal Čupr

Udělali jsme velkou chybu, napsal Čupr

Lupa.cz: Další Češi si nechali vložit do těla čip

Další Češi si nechali vložit do těla čip

Vitalia.cz: Tohle jsou nejlepší česká piva podle odborníků

Tohle jsou nejlepší česká piva podle odborníků

Lupa.cz: Jak se prodává firma za miliardu?

Jak se prodává firma za miliardu?

Vitalia.cz: Opuncie je plod kaktusu. Pozor na trny

Opuncie je plod kaktusu. Pozor na trny

DigiZone.cz: Ginx TV: pořad o počítačových hráčích

Ginx TV: pořad o počítačových hráčích

Podnikatel.cz: EET pro e-shopy? Postavené na hlavu

EET pro e-shopy? Postavené na hlavu

Vitalia.cz: Test dětských svačinek: Tyhle ne!

Test dětských svačinek: Tyhle ne!

Vitalia.cz: Inspekce našla nelegální sklad v SAPĚ. Zase

Inspekce našla nelegální sklad v SAPĚ. Zase

DigiZone.cz: Koncesionářské poplatky pro RTVS

Koncesionářské poplatky pro RTVS

DigiZone.cz: Funbox 4K v DVB-T2 má ostrý provoz

Funbox 4K v DVB-T2 má ostrý provoz

Podnikatel.cz: Instalatér, malíř a elektrikář. "Vymřou"?

Instalatér, malíř a elektrikář. "Vymřou"?

120na80.cz: Hrbatá prsa aneb mýty o implantátech

Hrbatá prsa aneb mýty o implantátech

Lupa.cz: Aukro.cz mění majitele. Vrací se do českých rukou

Aukro.cz mění majitele. Vrací se do českých rukou

Vitalia.cz: Jak Ondra o astma přišel

Jak Ondra o astma přišel

Vitalia.cz: Kterou dýni můžete jíst za syrova?

Kterou dýni můžete jíst za syrova?

Podnikatel.cz: Byla finanční manažerka, teď cvičí jógu

Byla finanční manažerka, teď cvičí jógu

Vitalia.cz: 5 pravidel proti infekci močových cest

5 pravidel proti infekci močových cest

Vitalia.cz: Voda z Vltavy před a po úpravě na pitnou

Voda z Vltavy před a po úpravě na pitnou

Lupa.cz: Hackeři mají data z půlmiliardy účtů Yahoo

Hackeři mají data z půlmiliardy účtů Yahoo