Pentium Pro - Pentium Pro

Pentium Pro
Logo Intel Pentium Pro. Svg
Obecná informace
Spuštěno 1. listopadu 1995
Přerušeno Června 1998
Běžní výrobci
Výkon
Max. Taktovací frekvence CPU 150 MHz až 200 MHz
Rychlost FSB 60 MHz až 66 MHz
Architektura a klasifikace
Min. velikost funkce 0,35 μm až 0,50 μm
Mikroarchitektura P6
Instrukční sada x86
Fyzické specifikace
Jádra
Zásuvka
Dějiny
Nástupce Pentium II Xeon

Pentium Pro je šesté generace x86 mikroprocesor vyvinutý a vyráběný společností Intel a představil 1. listopadu 1995. To představilo P6 mikroarchitektury (někdy nazývaný i686) a byl původně zamýšlel nahradit původní Pentium v celé řadě aplikací. Zatímco Pentium a Pentium MMX měly 3,1 a 4,5 milionu tranzistorů , Pentium Pro obsahovalo 5,5 milionu tranzistorů. Později byl redukován na užší roli serveru a stolního procesoru vyšší třídy a byl používán v superpočítačích, jako je ASCI Red , první počítač, který dosáhl bilionu výkonnostních značek s pohyblivou řádovou čárkou za sekundu (tera FLOPS ). Pentium Pro bylo schopné konfigurací dvou i čtyř procesorů. Přišlo to pouze v jednom tvarovém faktoru, relativně velké obdélníkové zásuvce 8 . Pentium Pro byl následován Pentium II Xeon v roce 1998.

Mikroarchitektura

200 MHz Pentium Pro s 512 KB L2 cache v PGA balíčku
200 MHz Pentium Pro s 1 MB mezipaměti L2 v PPGA balíčku.
Bez omezení Pentium Pro 256 KB
Pentium II Overdrive s odstraněným chladičem. Flip-chip Deschutes jádro je vlevo. Vpravo je mezipaměť 512 kB.

Hlavním architektem Pentium Pro byl Fred Pollack, který se specializoval na superskalitu a pracoval také jako vedoucí inženýr Intel iAPX 432 .

souhrn

Pentium Pro začlenilo novou mikroarchitekturu , odlišnou od mikroarchitektury Pentia P5 . Má oddělenou, 14stupňovou superpipelinovanou architekturu, která používala instrukční fond. Pentium Pro ( P6 ) představovalo mnoho pokročilých konceptů, které se v Pentiu nenašly, ačkoli to nebyl první ani jediný procesor x86, který je implementoval (viz NexGen Nx586 nebo Cyrix 6x86 ). Plynovod Pentium Pro měl další dekódovací stupně pro dynamický překlad instrukcí IA-32 do pufrovaných mikrooperačních sekvencí, které pak mohly být analyzovány, přeskupeny a přejmenovány za účelem detekce paralelizovatelných operací, které mohou být vydány více než jedné prováděcí jednotce najednou. Pentium Pro se tak vyznačovalo mimo provádění příkazu , včetně spekulativního provádění prostřednictvím přejmenování registru . Měl také širší 36bitovou adresovou sběrnici , použitelnou pomocí rozšíření fyzické adresy (PAE), což mu umožnilo přístup až k 64 GB paměti.

Pentium Pro má mezipaměť instrukcí 8 KB , ze které je v každém cyklu načteno až 16 bajtů a odesláno do dekodérů instrukcí . Existují tři dekodéry instrukcí. Dekodéry nemají stejnou schopnost: pouze jeden může dekódovat jakoukoli instrukci x86, zatímco ostatní dva mohou dekódovat pouze jednoduché instrukce x86. To omezuje schopnost Pentia Pro dekódovat více instrukcí současně a omezuje superskalární provádění. Instrukce x86 jsou dekódovány do 118bitových mikro operací (mikrooperací). Mikrooperace jsou podobné počítačům s omezenou instrukční sadou (RISC); to znamená, že kódují operaci, dva zdroje a cíl. Obecný dekodér může generovat až čtyři mikrooperace za cyklus, zatímco jednoduché dekodéry mohou generovat po jednom mikrooperaci za cyklus. Instrukce x86, které operují v paměti (např. Přidejte tento registr na toto místo v paměti), tedy mohou být zpracovány pouze obecným dekodérem, protože tato operace vyžaduje minimálně tři mikrooperace. Stejně tak jsou jednoduché dekodéry omezeny na pokyny, které lze přeložit do jedné mikro operace. Pokyny, které vyžadují více mikrooperací než čtyři, jsou přeloženy pomocí sekvenceru, který generuje požadované mikrooperace během více hodinových cyklů. Pentium Pro byl prvním procesorem z rodiny x86, který podporoval upgradovatelný mikrokód pod kontrolou systému BIOS a/nebo operačního systému (OS).

Mikrooperace opouštějí vyrovnávací paměť pro opětovné objednání (ROB) a vstupují do rezervní stanice (RS), kde čekají na odeslání do prováděcích jednotek. V každém hodinovém cyklu lze odeslat až pět mikrooperací do pěti prováděcích jednotek. Pentium Pro má celkem šest prováděcích jednotek: dvě celočíselné jednotky, jednu jednotku s pohyblivou řádovou čárkou (FPU), zaváděcí jednotku, jednotku adresy úložiště a jednotku dat úložiště. Jedna z celočíselných jednotek sdílí stejné porty jako FPU, a proto může Pentium Pro odeslat kromě mikro- pouze jednu celočíselnou mikrooperaci a jednu mikrooperaci s plovoucí desetinnou čárkou za cyklus ops pro další tři popravčí jednotky. Ze dvou celočíselných jednotek má pouze ta, která sdílí cestu s FPU na portu 0, plný počet funkcí, jako je posunovač , multiplikátor, dělič a podpora instrukcí LEA. Druhá celočíselná jednotka, která je připojena k portu 1, tato zařízení nemá a je omezena na jednoduché operace, jako je sčítání, odčítání a výpočet cílových adres větví.

FPU provádí operace s plovoucí desetinnou čárkou. Sčítání a násobení jsou propojeny a mají latenci tři, respektive pět cyklů. Divize a odmocniny nejsou propojeny a jsou prováděny v samostatných jednotkách, které sdílejí porty FPU. Dělení a druhá odmocnina mají latenci 18-36, respektive 29-69 cyklů. Nejmenší číslo je pro čísla s plovoucí desetinnou čárkou s jednoduchou přesností (32bitová) a největší pro čísla s prodlouženou přesností (80bitová). Dělení a odmocnina mohou pracovat současně s přidáváním a násobením, což jim brání v provádění, pouze když je výsledek třeba uložit do ROB.

Poté, co byl mikroprocesor uvolněn, byla v jednotce s plovoucí desetinnou čárkou objevena chyba , běžně nazývaná „chyba Pentium Pro a Pentium II FPU“, a Intel jako „flag erratum“. K chybě dochází za určitých okolností během převodu z plovoucího bodu na celé číslo, když se číslo s plovoucí desetinnou čárkou nevejde do formátu menšího celého čísla, což způsobí, že se FPU odchýlí od svého zdokumentovaného chování. Chyba je považována za drobnou a vyskytuje se za takových zvláštních okolností, že je ovlivněno velmi málo softwarových programů, pokud vůbec nějaké.

Mikroarchitektura Pentium Pro P6 byla v té či oné formě používána společností Intel více než deset let. Plynovod by se škáloval od počátečního začátku na 150 MHz, až po 1,4 GHz s „Tualatin“ Pentium III . Různé rysy designu budou pokračovat poté v odvozeném jádru zvaném „ Banias “ v Pentium M a Intel Core ( Yonah ), které se v roce 2006 a dále vyvine do mikroarchitektury Core ( procesor Core 2 ).

Instrukční sada

Pentium Pro (P6) zavedl nové pokyny do řady Intel; instrukce CMOVxx ('podmíněný přesun') mohou přesunout hodnotu, která je buď obsahem registru nebo paměťového místa do jiného registru, nebo ne, podle nějaké predikátové logické podmínky xx v registru příznaků, xx je kód predikátu příznaků, jak je uvedeno v podmínce pro instrukce podmíněného skoku. Například CMOVNE přesune zadanou hodnotu do registru nebo ne v závislosti na tom, zda podmínka NE (nerovná se) platí v registru příznaků, tj. Příznak Z = 0. To umožňuje vyhodnocení operací if-then-else a například ten? : provoz v C. Tyto pokyny zvyšují výkon tím, že umožňují vyhnout se nákladným instrukcím skoků a větví. Například v CMOVxx destreg1, source_operand2 je prvním operandem cílový registr, druhým zdrojový registr nebo umístění paměti. Druhý operand bohužel nemůže být okamžitou (in-line konstantou) hodnotou a taková konstanta by musela být nejprve vložena do registru. Predikátový kód xx může nabývat celého rozsahu hodnot, jak je povoleno v podmíněných větvích.

Druhým vývojem byla dokumentace nelegálních instrukcí UD2. Tento operační kód je vyhrazen a je zaručeno, že na P6 a všech pozdějších procesorech způsobí výjimku z nezákonných instrukcí. To umožňuje vývojářům snadno havarovat aktuální program do budoucna, když je chyba detekována softwarem.

Výkon

Navzdory pokročilé době měla architektura přejmenování registru Pentium Pro mimo provoz potíže se spuštěním 16bitového kódu a smíšeného kódu ( 8bitový s 16bitovým (8/16) nebo 16bitový s 32bitovým) (16/32), protože používání částečných registrů způsobuje časté proplachování potrubí. Specifické použití částečných registrů bylo tehdy běžnou optimalizací výkonu, protože na procesorech Intel před P6 nevznikla žádná sankce za výkon; také dominantní operační systémy v době vydání Pentium Pro bylo 16bitové DOS a smíšené 16/32bitové Windows 3.1x a Windows 95 (ačkoli ten vyžaduje 32bitový procesor 80386, velká část jeho kódu je stále 16bitová z důvodů výkonu, jako je např. USER.EXE ). Stane se tak s vysokou cenou pro systémy Pentium vedlo k vlažných prodeje mezi PC kupujících v té době. Chcete-li plně využít Pentium pro je P6 mikroarchitektury , plně 32-bit je potřeba operační systém, jako je Windows NT , Linux , Unix nebo OS/2 . Problémy s výkonem na starším kódu byly později částečně zmírněny společností Intel h Pentium II.

Ve srovnání s mikroprocesory RISC, Pentium Pro, když byl představen, mírně překonal nejrychlejší mikroprocesory RISC v celočíselném výkonu při spuštění benchmarku SPECint95, ale výkon s plovoucí desetinnou čárkou byl výrazně nižší, poloviční než u některých mikroprocesorů RISC. Celočíselný výkon Pentium Pro rychle zmizel, nejprve byl překonán MIPS Technologies R10000 v lednu 1996 a poté variantou Alpha 21164 společnosti Digital Equipment Corporation EV56 .

Recenzenti rychle zaznamenali velmi pomalé zápisy do video paměti jako slabé místo platformy P6, přičemž výkon je zde jen 10% identicky taktovaného systému Pentium v ​​benchmarcích, jako je VIDSPEED. Metody, jak to obejít, zahrnovaly nastavení kreslení VESA do systémové paměti namísto video paměti ve hrách, jako je Quake , a později se objevily nástroje jako FASTVID, které by mohly v některých hrách zdvojnásobit výkon povolením funkcí kombinujících zápis CPU. registry rozsahů typů paměti (MTRR) jsou nastavovány automaticky video ovladači Windows počínaje ~ 1997, a díky vylepšenému subsystému mezipaměti/paměti a výkonu FPU došlo k překonání hodinového formátu Pentium ve vznikajících 3D hrách střední- až do konce devadesátých let, zejména při použití NT4. Jeho nedostatek implementace MMX však snižuje výkon v multimediálních aplikacích, které tyto pokyny využívaly.

Ukládání do mezipaměti

Pravděpodobně nejnápadnějším přírůstkem Pentium Pro byla jeho mezipaměť L2 na obalu , která se pohybovala od 256 kB při zavedení až po 1 MB v roce 1997. V té době výrobní technologie neumožňovala integraci velké mezipaměti L2 do jádra procesoru. Intel místo toho umístil matrice L2 samostatně do balíčku, což mu stále umožňovalo běžet na stejné hodinové rychlosti jako jádro CPU. Navíc, na rozdíl od většiny schémat mezipaměti na základní desce, které sdílely hlavní systémovou sběrnici s CPU, mezipaměť Pentium Pro měla vlastní sběrnici na zadní straně ( Intel ji nazývá duální nezávislá sběrnice ). Z tohoto důvodu CPU mohl číst hlavní paměť a mezipaměť souběžně, což výrazně snižuje tradiční problémové místo. Mezipaměť byla také „neblokující“, což znamená, že procesor mohl vydávat více než jeden požadavek na mezipaměť najednou (až 4), čímž se snižovaly sankce za vynechání mezipaměti. (Toto je příklad MLP, Memory Level Parallelism .) Tyto vlastnosti v kombinaci vytvářely mezipaměť L2, která byla nesmírně rychlejší než mezipaměti starších procesorů na základní desce. Tato mezipaměť poskytla CPU výhodu ve vstupním/výstupním výkonu oproti starším procesorům x86 . V konfiguracích s více procesory raketově rostla integrovaná mezipaměť Pentium Pro ve srovnání s architekturami, kde každý procesor sdílel centrální mezipaměť.

Tato mnohem rychlejší mezipaměť L2 však přinesla určité komplikace. Uspořádání „mezipaměti“ mezipaměti Pentium Pro bylo jedinečné. Procesor a mezipaměť byly na samostatných matricích ve stejném balíčku a těsně propojeny vysokorychlostní sběrnicí. Tyto dvě nebo tři matrice musely být spojeny na začátku výrobního procesu, než bylo možné testování. To znamenalo, že jedna malá chybička v každé kostce vyžadovala vyřazení celé sestavy, což byl jeden z důvodů relativně nízkého produkčního výnosu a vysokých nákladů Pentium Pro. Všechny verze čipu byly drahé, zvláště ty s 1024 KB, protože to vyžadovalo dvě vyrovnávací paměti 512 kB mezipaměti a procesorovou kostku.

Dostupné modely

Taktovací frekvence Pentium Pro byla 150, 166, 180 nebo 200 MHz s externím taktem sběrnice 60 nebo 66 MHz . Někteří uživatelé se rozhodli přetaktovat své čipy Pentium Pro, přičemž 200 MHz verze často běží na 233 MHz, 180 MHz verze často běží na 200 MHz a 150 MHz verze často běží na 166 MHz. Čip byl populární v symetrických víceprocesových konfiguracích, přičemž běžné byly nastavení duálního a čtyřjádrového serveru SMP a pracovní stanice.

Ve schématu „Rodina/Model/Krokování“ společnosti Intel je Pentium Pro rodina 6, model 1, a její produktový kód Intel je 80521.

Hodiny

(MHz)

Autobus

(MHz)

L2

Mezipaměti

(KB)

Max

TDP

(W)

150 60 256 29.2
166 66 512 35
180 60 256 31.7
200 66 35
512 37,9
1024 44

Výroba

Proces použitý k výrobě procesní matrice Pentium Pro a její samostatné matrice vyrovnávací paměti se změnil, což vedlo ke kombinaci procesů použitých ve stejném balíčku:

  • Procesorová matrice 133 MHz Pentium Pro byla vyrobena procesem BiCMOS 0,6 μm.
  • Procesorová matrice 150 MHz Pentium Pro byla vyrobena procesem BiCMOS 0,50 μm .
  • Procesorová matrice Pentium Pro 166, 180 a 200 MHz byla vyrobena procesem BiCMOS o průměru 0,35 μm.
  • 256 kB L2 cache matrice byla vyrobena v 0,50 μm procesu BiCMOS.
  • Cache matrice 512 a 1024 KB L2 byla vyrobena v procesu BiCMOS 0,35 μm.

Obal

Pentium Pro (až 512 kB mezipaměti) je zabaleno v keramickém vícečipovém modulu (MCM). MCM obsahuje dvě spodní dutiny, ve kterých sídlí mikroprocesor a jeho doprovodná vyrovnávací paměť. Matrice jsou spojeny s tepelným slimákem, jehož odkrytý vrchol pomáhá přenášet teplo z forem přímo do chladicího zařízení, jako je chladič. Matrice jsou připojeny k balíku konvenčním drátovým spojením. Dutiny jsou uzavřeny keramickou deskou.

Pentium Pro s 1 MB mezipaměti používá plastový MCM. Místo dvou dutin existuje pouze jedna, ve které jsou umístěny tři matrice, spojené s obalem místo tepelného slimáka. Dutiny jsou vyplněny epoxidem.

MCM má 387 pinů, z nichž přibližně polovina je uspořádána v poli mřížky pinů (PGA) a polovina v intersticiálním poli mřížky (IPGA). Obal byl navržen pro zásuvku 8 .

Upgradujte cesty

V roce 1998 byl vydán procesor Pentium II Overdrive 300/333 MHz pro Socket 8. Díky 512 kB mezipaměti s plnou rychlostí byl vyroben společností Intel jako možnost upgradu pro majitele systémů Pentium Pro. Podporoval však pouze obousměrné bezlepkové vícenásobné zpracování, nikoli čtyřcestné nebo vyšší, což z něj neudělalo použitelný upgrade pro čtyřprocesorové systémy. Tyto speciálně zabalené procesory Pentium II Xeon byly použity k upgradu ASCI Red , který se stal prvním počítačem, který dosáhl výkonnostní značky teraFLOPS s procesorem Pentium Pro a poté prvním, který po upgradu na procesory Pentium II Xeon překročil 2 teraFLOPS.

Jak se rozšířily základní desky Slot 1 , několik výrobců vydalo slotové adaptéry, jako například Tyan M2020, Asus C-P6S1, Tekram P6SL1 a Abit KP6. Sloty umožňovaly použití procesorů Pentium Pro se základními deskami Slot 1. Čipová sada Intel 440FX výslovně podporovala jak procesory Pentium Pro, tak Pentium II, ale čipové sady Intel 440BX a pozdější Slot 1 výslovně nepodporovaly Pentium Pro, takže sloty Socket 8 neviděly široké využití. Když Intel představil procesory Socket 370 Celeron a Pentium III, začaly se popularita slotů ve formě adaptérů Socket 370 až Slot 1 znovu zvyšovat .

Základní specifikace

Pentium Pro

Pentium II Overdrive

  • Mezipaměť L1: 16, 16 KB (data + pokyny)
  • Mezipaměť L2: externí čip 512 kB na modulu CPU taktovaný na rychlost CPU
  • Zásuvka: Zásuvka 8
  • Multiplikátor: Uzamčeno na 5 ×
  • Sběrnice na přední straně: 60 a 66 MHz
  • VCore: 3,1–3,3 V (má integrovaný regulátor napětí)
  • Výroba: 0,25 μm
  • Clockrate: Based on the Deschutes -generation Pentium II
  • První vydání: 1997
  • Podporuje technologii MMX

Možnosti sběrnice a více procesorů

Pentium Pro používalo ve své sběrnici na přední straně signalizaci GTL+ . Pentium Pro bylo možné použít samostatně až na čtyřcestné provedení. Rovněž byly postaveny osmicestné počítače Pentium Pro, ale ty používaly více autobusů.

Design sběrnice Pentium Pro byl ovlivněn Futurebusem , sběrnicí Intel iAPX 432 a prvky sběrnice Intel i960 . Futurebus byl zamýšlen jako vyspělý autobus, který měl nahradit VMEbus používaný u Motorola 68000 z konce 70. let, ale pokud spočítáte všechny zvraty, stagnuje v normalizačním výboru více než deset let. Iniciativa Intel iAPX 432 byla také komerčním selháním, ale v tomto procesu se naučili, jak vybudovat sběrnici s dělenými transakcemi na podporu víceprocesorového systému bez mezipaměti. Server i960 dále vyvinul sběrnici iAPX 432 s rozdělenými transakcemi tak, aby zahrnovala protokol koherence mezipaměti, což skončilo sadou funkcí, která velmi připomíná původní ambice Futurebus.

Hlavním architektem i960 byl specialista na superskalitu Fred Pollack, který byl také vedoucím inženýrem Intel iAPX 432 a hlavním architektem čipu i686, Pentium Pro. Nepochybně důvěrně znal celou tuto historii. Pentium Pro bylo navrženo tak, aby zahrnovalo 4cestnou sběrnici koherentní sběrnice mezipaměti s dělenou mezipamětí SMP jako povinnou funkci každého vyrobeného čipu. To také sloužilo k odepření přístupu konkurence k soketu pro produkci klonovaných procesorů.

Zatímco Pentium Pro nebylo úspěšné jako stroj pro masy, díky špatné 16bitové podpoře Windows 95 se stalo velmi úspěšným v prostoru souborového serveru díky pokročilému integrovanému designu sběrnice, který zavedl mnoho pokročilých funkcí, které měly dříve byly k dispozici pouze v segmentu drahých pracovních stanic na komoditním trhu.

Konkurenti Pentium Pro/6. generace

Viz také

Reference

externí odkazy