Intel P6

P6  je superskalární superpipeliningová architektura vyvinutá společností Intel a je základem mikroprocesorů Pentium Pro , Pentium II , Pentium III , Celeron a Xeon . Na rozdíl od x86 -kompatibilních procesorů předchozích generací s jádrem CISC mají procesory architektury P6 jádro RISC , které provádí složité x86 instrukce nikoli přímo, ale nejprve je dekóduje do jednoduchých interních mikrooperací.

Prvním procesorem architektury P6 byl procesor Pentium Pro, oznámený 1. listopadu 1995 , zaměřený na trh pracovních stanic a serverů . Procesory Pentium Pro byly vydány souběžně s procesory architektury P5 ( Pentium a Pentium MMX ) určenými pro osobní počítače . 7. května 1997 Intel oznámil procesor Pentium II, který nahradil procesory architektury P5. [jeden]

V roce 2000 byla architektura P6 na trhu desktopových a serverových procesorů nahrazena architekturou NetBurst , avšak architektura P6 byla vyvinuta v mobilních procesorech Pentium M a Core . V roce 2006 byly procesory architektury NetBurst nahrazeny rodinou procesorů Core 2 Duo , jejíž architektura je rovněž evolucí architektury P6. [2] [3]

Funkční zařízení

Procesory architektury P6 se ​​skládají ze čtyř hlavních subsystémů:

Objednaný subsystém předběžného zpracování

Zařízení tohoto subsystému zahrnují:

Procesory založené na jádře Tualatin navíc obsahují instrukční prefetcher ( Prefetcher ), který přednačte instrukce na základě větvené tabulky.

Prováděcí jádro s resekvenováním

Provádění mimo sekvenci, které mění pořadí, ve kterém jsou instrukce prováděny, aniž by se změnil výsledek, urychluje práci lepším rozložením požadavků na pomocné bloky a minimalizací jejich prostojů. Mezi zařízení pro organizaci výkonu se změnou pořadí patří:

Prováděcí jednotky jádra zahrnují:

Subsystém objednaného dokončení Paměťový subsystém Objem L2 procesorů architektury P6
Objem (kB) Procesory
0 Celeron Covington
128 Celeron ( Mendocino , Coppermine-128 ), Pentium III ( Coppermine pro Xbox [4] )
256 Pentium Pro , Pentium III (Coppermine, Tualatin-256 ), Xeon ( Cascades )
512 Pentium Pro, Pentium II , Pentium III ( Katmai , Tualatin ), Xeon ( Drake , Tanner )
1024 Pentium Pro, Xeon (Drake, Tanner)
2048 Xeon (Drake, Tanner, Cascades 2 MB)

Paměťový subsystém spolupracuje s hlavní pamětí. Tento subsystém zahrnuje:

Provedení instrukce

Procesor Pentium Pro

Dopravník se skládá z 12 stupňů [5] :

Provedení instrukce začíná jejím načtením a dekódováním. K tomu je vybráno 64 bajtů (dva řádky) z mezipaměti instrukcí první úrovně na adrese z vyrovnávací paměti predikce větvení. Z nich je 16 bajtů, počínaje adresou od dalšího bloku výpočtu adresy instrukce, zarovnáno a předáno instrukčnímu dekodéru, který převádí x86 instrukce na mikro-operace. Pokud instrukce odpovídá jedné mikrooperaci, dekódování se provádí jedním z dekodérů jednoduchých instrukcí. Pokud instrukce odpovídá dvěma, třem nebo čtyřem mikrooperacím, dekódování se provádí pomocí komplexního instrukčního dekodéru. Pokud instrukce odpovídá většímu počtu mikrooperací, pak jsou tvořeny plánovačem sekvence mikrooperací.

Po dekódování instrukcí se registry přejmenují a mikrooperace a data se umístí do vyrovnávací paměti - záložní stanice, odkud se v souladu s optimálním pořadím provádění a za jistoty operandů nezbytných pro jejich provedení, jsou odesílány do prováděcích jednotek (maximálně 5 instrukcí za cyklus). Stav provádění mikrooperací a jeho výsledky jsou uloženy ve vyrovnávací paměti pro změnu pořadí mikrooperací, a protože výsledky provedení některých mikrooperací mohou sloužit jako operandy jiných, jsou také umístěny do redundantní stanice.

Na základě výsledků mikrooperací je stanovena jejich připravenost na odchod do důchodu .  Pokud jsou připraveny, jsou zrušeny v pořadí poskytnutém programem, během kterého se aktualizuje stav logických registrů, stejně jako zpožděné uložení výsledků do paměti (pořadí záznamu dat je řízeno vyrovnávací pamětí pro změnu pořadí) [ 1] .

Architektonické prvky

První procesory architektury P6 se ​​v době vydání výrazně lišily od stávajících procesorů. Procesor Pentium Pro se vyznačoval použitím technologie dynamického provádění (změna pořadí provádění instrukcí) a také architekturou Dual Independent Bus ,  díky které bylo odstraněno mnoho omezení šířky pásma paměti typických pro předchůdce a konkurenty. První procesor architektury P6 byl taktován na 150 MHz , přičemž nejnovější zástupci této architektury měli takt 1,4 GHz . Procesory architektury P6 měly 36bitovou adresovou sběrnici, která jim umožňovala adresovat až 64 GB paměti (s lineárním adresním prostorem procesu omezeným na 4 GB, viz PAE ).

Superskalární mechanismus pro provádění instrukcí se změnou jejich sekvence

Zásadním rozdílem mezi architekturou P6 a jejími předchůdci je jádro RISC, které nepracuje s x86 instrukcemi, ale s jednoduchými interními mikroopcemi. To odstraňuje mnohá omezení instrukční sady x86, jako je nepravidelné kódování instrukcí, operandy s proměnnou délkou a operace přenosu celého čísla z registru do paměti [1] . Mikrooperace se navíc neprovádějí v pořadí, které poskytuje program, ale v optimální z hlediska výkonu a použití třípotrubního zpracování umožňuje provedení více instrukcí v jednom cyklu [6] .

Superpiping

Procesory architektury P6 mají 12-stupňovou pipeline. To umožňuje dosáhnout vyšších taktů ve srovnání s procesory, které mají kratší pipeline se stejnou výrobní technologií. Takže například maximální taktovací frekvence procesorů AMD K6 na jádře (hloubka potrubí - 6 stupňů, 180nm technologie) je 550 MHz a procesory Pentium III na jádře Coppermine mohou pracovat na frekvenci přesahující 1000 MHz.

Aby se předešlo situaci čekání na provedení instrukce (a následně i prodlevy pipeline), na jejíchž výsledcích závisí provedení či neprovedení podmíněné větve, využívají procesory architektury P6 predikci větvení. . Procesory architektury P6 k tomu používají kombinaci statické a dynamické predikce: dvouúrovňový adaptivní historický algoritmus ( Bimodal  branch forecast ) se používá, pokud vyrovnávací paměť pro predikci větvení obsahuje historii větví, jinak se používá statický algoritmus [6] [ 7] .

Dvojitý nezávislý autobus

Za účelem zvýšení šířky pásma paměťového subsystému používají procesory architektury P6 duální nezávislou sběrnici. Na rozdíl od předchozích procesorů, jejichž systémovou sběrnici sdílelo několik zařízení, mají procesory architektury P6 dvě samostatné sběrnice: sběrnici zadní strany spojující procesor s mezipamětí druhé úrovně a sběrnici přední strany spojující procesor se severním můstkem čipové sady [6 ] .

Výhody

Procesory architektury P6 měly zřetězený matematický koprocesor ( FPU ), který umožňoval dosáhnout převahy nad svými předchůdci a konkurenty v rychlosti výpočtů reálných čísel [8] . FPU procesorů architektury P6 zůstalo nejlepší mezi konkurenty až do uvedení procesoru AMD Athlon v roce 1999 [9] .

Navíc procesory architektury P6 měly nad konkurenty převahu v rychlosti práce s cache druhé úrovně. Pentium Pro a Pentium II měly duální nezávislou sběrnici, zatímco konkurenční procesory ( AMD K5 , K6, Cyrix 6x86 , M-II) měly tradiční systémovou sběrnici, ke které byla mimo jiné připojena cache druhé úrovně [10] . S příchodem procesorů Athlon, rovněž využívajících architekturu duální nezávislé sběrnice, se výkonnostní mezera zmenšila, ale 256bitový BSB procesorů Pentium III (počínaje jádrem Coppermine) umožnil zachovat výkonnostní výhodu mezipaměti L2 oproti Procesory architektury K7, které měly 64bitový BSB. Tehdy zastaralá systémová sběrnice procesorů architektury P6 v kombinaci s velkým množstvím vyrovnávací paměti L1 v procesorech architektury K7 však neumožňovala získat výhody v šířce pásma paměti [11] .

Nevýhody

Hlavní nevýhodou prvních procesorů architektury P6 ( Pentium Pro ) byl nízký výkon při práci s tehdy rozšířeným 16bitovým softwarem. Bylo to způsobeno tím, že při práci s takovými aplikacemi bylo obtížné provádění instrukcí mimo pořadí (např. procesor Pentium Pro nemohl číst z 32bitového registru , pokud jeho 16bitová spodní část byla zapsaný dříve a příkaz, který provedl zápis, nebyl odložen [12] ). V procesoru Pentium II byl tento nedostatek opraven, což vedlo ke zvýšení výkonu při práci s 16bitovými programy o více než třetinu [13] .

Procesory architektury P6 podporovaly provoz ve víceprocesorových systémech, byla však použita sdílená systémová sběrnice, což umožnilo zjednodušit trasování základních desek, ale negativně ovlivnilo výkon subsystému procesor-paměť a omezilo maximální počet procesorů v systém [9] [14] .

Procesory architektury P6

procesor Jádro Produkční technologie Roky vydání
Pentium Pro P6 CMOS / BiCMOS , 500-350 nm 1995–1998 _ _
Pentium II Klamath, Deschutes CMOS, 350-250 nm 1997–1999 _ _
Pentium III Katmai, Coppermine, Tualatin-256 CMOS, 250-130 nm 1999-2002 _
Pentium III-S Tualatin CMOS, 130 nm 2001-2002 _
Celeron Covington, Mendocino, Coppermine-128, Tualatin-256 CMOS, 250-130 nm 1998-2002
Pentium II Xeon Kačer CMOS, 250 nm 1998-1999
Pentium III Xeon Tanner, Kaskády, Kaskády 2 MB CMOS, 250-180 nm 1999-2001
Pentium Pro (P6) Pentium II (deschutes) Pentium III (měděný min) Pentium IIIS (tualatin)
Mobilní Pentium III Celeron (Mendocino) Celeron (Mendocino) Celeron (Coppermine-128)

Evoluce architektur Intel

Poznámky

  1. 1 2 3 Čekání na Willamette - Historie architektury IA-32 a jak pracují procesory rodiny P6 . Získáno 12. srpna 2008. Archivováno z originálu 2. července 2013.
  2. Pentium M: dobrý "desktop" CPU ... který nebudeme mít (nepřístupný odkaz) . IXBT.com (26. července 2005). Datum přístupu: 16. srpna 2008. Archivováno z originálu 24. srpna 2011. 
  3. Nové víno ve starých měchích. Conroe: vnuk procesoru Pentium III, synovec architektury NetBurst? (nedostupný odkaz) . IXBT.com (9. září 2005). Získáno 16. srpna 2008. Archivováno z originálu 3. ledna 2014. 
  4. Na rozdíl od procesoru Celeron založeného na jádře Coppermine-128, který má 4kanálovou asociativní mezipaměť L2, má tento procesor 8kanálovou mezipaměť. Viz: „Svět herních konzolí. Část pátá, Upgrade Magazine, 2007, č. 28 (325), s. 24
  5. Jon Stokes. Pentium: Architektonická historie nejslavnějšího stolního procesoru světa (část I)  (anglicky)  (nedostupný odkaz) . Ars Technica (11. července 2004). Datum přístupu: 19. srpna 2008. Archivováno z originálu 28. ledna 2012.
  6. 1 2 3 Architektury X86 jsou různé ... . Získáno 11. května 2022. Archivováno z originálu dne 4. ledna 2012.
  7. http://www.pcmag.ru/issues/sub_detail.php?ID=10105&SUB_PAGE=8 – RISC Legacy: Předpověď větve.
  8. Srovnání systémů založených na Super Socket-7 a Slot-1 . Získáno 12. srpna 2008. Archivováno z originálu 2. července 2013.
  9. 1 2 Přehled procesoru AMD Athlon 600 MHz . Získáno 12. srpna 2008. Archivováno z originálu dne 4. dubna 2013.
  10. PCI bus (Peripheral Component Interconnect bus) Archivováno 4. dubna 2013 na Wayback Machine  – viz schéma
  11. 1000 MHz procesory . Získáno 12. srpna 2008. Archivováno z originálu dne 23. června 2008.
  12. Maxim Len: “ARCHITEKTURA P6: HERITAGE OF GENERATIONS” (zveřejněno na webu fcenter.ru dne 22. listopadu 2000) – záložní odkaz  (nepřístupný odkaz)
  13. http://www.pcmag.ru/issues/sub_detail.php?ID=9935&SUB_PAGE=3 - Pentium: příběh pokračuje.
  14. Dvouprocesorové systémy Socket A založené na čipové sadě AMD 760MP . Získáno 11. května 2022. Archivováno z originálu dne 23. února 2009.

Odkazy

Oficiální informace

Charakteristika procesorů architektury P6

Recenze procesoru