Intel Pentium III

From Helionica

(Przekierowano z Pentium III)


Pentium III stanowi kontynuację architektury 32-bitowej (IA-32). Projekt rozwijał się pod kryptonimem Katmai zanim został oficjalnie przemianowany przez firmę Intel na procesor Pentium III. Zestaw nowych instrukcji określany w fazie wstępnej mianem KNI (Katmai New Instructions) lub MMX-2 przemianowany został w ślad za tym na ISSE (Internet Streaming SIMD Extensions), przy czym element SIMD (Single Instruction Multiple Data) określa znane już z techniki MMX jednoczesne przetwarzanie grupy danych przy pomocy jednego rozkazu. Główna różnica pomiędzy SIMD w wersji MMX i SIMD w wersji ISSE polega na tym, iż o ile MMX operuje na danych w formacie całkowitym, ISSE stosuje tę samą technikę również w odniesieniu do liczb zmiennoprzecinkowych.

Pentium III jest pod wieloma względami bardzo podobny do swego poprzednika czyli modelu Pentium II. Podwyższenie częstotliwości taktowania stanowi naturalny krok na drodze ewolucji w tej dziedzinie.

Spis treści

Podstawowe dane

Procesory Intel Pentium III współpracujące z magistralą 133 MHz (wersje: 533B, 600B, 533EB, 600EB, 667, 733 MHz):

  • architektura RISC
  • technologia: 0,25 μm (533B do 600B), pozostałe - 0,18 μm
  • taktowanie rdzenia (MHz): 533, 600, 533, 600, 667, 733
  • taktowanie magistrali FSB (MHz): 133
  • mnożniki: x4, x4.5, x5, x5.5
  • rozmiar pamięci cache pierwszego poziomu (L1) dla kodu: 16 kB
  • rozmiar pamięci cache pierwszego poziomu (L1) dla danych: 16 kB
  • rozmiar pamięci cache drugiego poziomu (L2) dla kodu i danych: 512 kB (taktowana z połową prędkości rdzenia dla wersji 533B do 600B), pozostałe 256 kB (taktowana z pełną prędkością rdzenia)
  • Rozmiar pamięci RAM objętej pamięcią cache: 4 GB
  • Liczba etapów przetwarzania rozkazu (w potoku): 12
  • Liczba jednostek zmiennoprzecinkowych (FPU): 1 (z potokowaniem)
  • Liczba jednostek całkowitoliczbowych: 2
  • Liczba jednostek MMX:2
  • Maksymalny pobór mocy (W): 29,7, 34,5; 17,6; 19,8; 22,0; 24,1 (dla każdej wersji?)
  • Możliwość pracy w systemie wieloprocesorowym (do 2 procesorów).

Nowe możliwości

Po nowych rozkazach ISSE oczekuje się więcej mocy obliczeniowej oddawanej do dyspozycji głównie aplikacjom bogatym w efekty 3D a także dekoderom MPEG-2. Nowe formy organizacji sterowania przepływem mają zoptymalizować proces wymiany informacji pomiędzy procesorem, pamięciami podręcznymi, magistralą AGP i pamięcią operacyjną, co jest najbardziej korzystne dla programów przetwarzających wyjątkowo szerokie strumienie danych. Do grupy tej zaliczają się systemy rozpoznawania mowy, szybkie i dokładne obliczenia w przestrzeni 3D, obróbka sekwencji video i gry komputerowe.

Udoskonalona obsługa MMX i SIMD

Ponieważ w Pentium III nie ma miejsca (stosowane w architekturach MMX i 3DNow!) ukrywanie dodatkowych rejestrów pod rejestrami FP (koprocesora matematycznego), możliwa jest równoległa praca jednostki SIMD-FP niezależnie od FP/MMX. Znika również (drugi czynnik pozytywny) ograniczenie rozmiarów XMM0 - XMM7. W przypadku MMX były one w naturalny sposób obcięte do rozmiarów swej „przykrywki", czyli maksymalnie 8 x 80 bitów.

Sterowanie przepływem i obsługa pamięci podręcznej

Instrukcje sterujące przepływem (Memory Streaming) pozwalają na określenie dokładnej strategii dla pamięci podręcznej. Decyzje takie podejmowane są jeszcze w fazie programowania, bądź to przez samego programistę, bądź przez kompilator. W szczególności możliwe jest wymuszenie przedwczesnego ładowania partii danych lub kodu (PrefetcH) oraz określenie, czy blok ten ma być przechowywany w pamięci podręcznej L1, L2, obydwu lub w żadnej z nich. Przechowywanie danych w pamięci podręcznej nie zawsze ma sens. Niejednokrotnie z góry wiadomo, iż część z nich nie będzie powtórnie przetwarzana. Po co więc zamazywać inne częściej wykorzystywane partie kodu. Nowe instrukcje sterowania przepływem nie są związane bezpośrednio z ISSE i stanowią rozszerzenia architektury, które mogą być z powodzeniem wykorzystywane niezależnie od jednostki SIMD. Nie wymagają one żadnego dodatkowego wsparcia ze strony systemu operacyjnego.

Uaktualnianie pamięci operacyjnej na podstawie pamięci podręcznej

W Pentium III zmodyfikowane zostały bufory zapisu i poprawiono mechanizm grupowania następujących po sobie odwołań do pamięci (Write Combining). Cykle zapisu (w odniesieniu do pewnego konkretnego bloku danych) mogą odbywać się poprzez pamięć podręczną (Write Through) lub bez jego udziału czyli bezpośrednio do pamięci.

Wsparcie ze strony oprogramowania

By móc czerpać korzyści z techniki ISSE konieczna jest stosunkowo głęboka ingerencja w istniejące już aplikacje. Zmiany nie ograniczają się do ponownego skompilowania poszerzonego kodu ale często dotyczą całych algorytmów, tak by stworzyć możliwość równoległego przetwarzania danych zmiennoprzecinkowych. Gwoli ścisłości warto wspomnieć, iż wiele algorytmów nie poddaje się takim zabiegom.

Obsługa nowych możliwości przez systemy operacyjne

Możliwości oferowane przez rozszerzenia architektury o SIMD nie są tak łatwe do wykorzystania w praktyce jak MMX czy też 3DNow!, ponieważ nie wystarczy samo przeprogramowanie aplikacji, tak by posługiwały się nowymi rozkazami. Główną barierę stanowi grupa nowych rejestrów, o których istnieniu nic nie wiedzą wielozadaniowe systemy operacyjne. 3D-Now! (podobnie jak MMX) korzysta jedynie z ośmiu oryginalnych 64-bitowych rejestrów MM0 - MM7, które naprzemiennie przydzielane są dla operacji INT i FP.

Sytuacja ulega zmianie w przypadku ISSE. Przełączaniu procesora do kolejnych programów korzystających z instrukcji SIMD grupy I i II musi towarzyszyć zabezpieczanie i odtwarzanie zawartości rejestrów XMM. Jeżeli któryś z programów podejmie pracę z danymi przejętymi z innego modułu, katastrofa jest nieunikniona. Pentium III dysponuje parą rozkazów fxsave/fxstore, która zabezpiecza i restauruje zarówno rejestry MMO - MM7 (przynależne do jednostek MMX/FPU) jak i XMMO - XMM7 obsługiwane przez SIMD-FP. Omawiana para instrukcji przemieszcza w sumie 352 bajty.

Microsoft Windows 95

Windows 95 należy niestety do grupy systemów, która nie pozwala na posługiwanie się rozkazami SIMD. Procesor Pentium III musi być zaprogramowany tak by nie wykraczał poza zakres, w którym porusza się Pentium II. Bez obawy można wykorzystać wywołania z grupy III i IV co poprawia nieco dostęp do pamięci i daje kilka nowych rozkazów MMX. W sumie jednak nie należy się spodziewać znaczących efektów z zastosowania nowego procesora w ramach tego systemu operacyjnego.

Microsoft Windows 98

W lepszej sytuacji znajdują się użytkownicy Windows 98 (Wersja pierwotna Windows 98 rozpoznaje Pentium III jako Pentium II ale mimo tego nowy procesor jest prawidłowo konfigurowany i może używać ISSE w pełnym zakresie. Zainstalowanie pierwszej nakładki z poprawkami (ServicePack 1 usuwa ten drobny błąd), bowiem spełnia on wszystkie niezbędne wymagania gwarantujące zabezpieczenie treści krytycznych rejestrów XMM. Aplikacje mogą w tym wypadku operować całą gamą nowych rozkazów. Wszystkie programy (nawet takie, które nie wiedzą nic o istnieniu nowych rozkazów) korzystające DirectX 6.1 używają (poprzez bibliotekę) wsparcia ISSE w formie pośredniej. Funkcje tej biblioteki odwołują się bowiem już do nowych rozkazów.

Microsoft Windows NT 4.0

W przypadku Windows NT 4.0 wymagana jest nakładka ServicePack 4 i dodatkowy sterownik programowy przygotowany przez firmę Intel. Z powodu braku wsparcia DirectX, korzyści mogą przynieść wyłącznie aplikacje, które same posługują się instrukcjami ISSE.

Zobacz w sieci


Lista mikroprocesorów produkowanych przez firmę Intel

(4-bitowe): 4004 | 4040 
(8-bitowe): 8008 | 8080 | 8085 
(x86): 8086 | 8088 | 286 | 386 | 486 | Pentium OverDrive | Pentium | Pentium Pro | Pentium II | Celeron | Pentium III | Pentium 4 | Pentium M | Xeon
(IA-64): Itanium | Itanium 2
(inne): iAPX 432 Intel i860 | Intel i960 |


Artykuł zawiera udostępnione na licencji GNU FDL treści pochodzące w pierwotnej wersji z artykułu Intel Pentium III w polskiej Wikipedii. Lista autorów.



Bestsellery informatyki