Nerwy puściły…

Intel Przyspieszył prace nad nowym 32-bitowym procesorem. Wbrew wcześniejszym zapowiedziom gruntownie zmoderrnizowana wersja Pentium III pojawi się już w połowie roku.

Poprzedni rok nie był dla procesorowego giganta zbyt szczęśliwy. Pojawienie się konkurencyjnego Athlona odebrało mu palmę pierwszeństwa na polu najszybszych procesorów 32-bitowych, problemy z RDRAM-ami i nowymi chipsetami nie pozwoliły na upowszechnienie się nowych technologii. Według wcześniejszych planów zupełnie nowe procesory miały zostać wprowadzone pod koniec bieżącego albo nawet w przyszłym roku. Teraz powinny dobrze sprzedawać się Pentium III i Celerony. Tymczasem, ku zaskoczeniu niektórych osób w lutym br. na odbywającej się dwa razy do roku konferencji IDF (Intel Developers Forum) procesorowy gigant podał do publicznej wiadomości szczegóły architektury nowego procesora. Willamette, bo o nim mowa, stanowi kontynuację rodziny Pentium. W Pentium II połączono obsługę rozkazów MMX z jądrem procesora P6, usprawniając mechanizm spekulatywnego wykonywania instrukcji, dodano też obsługę magistrali 100 MHz, w Pentium III pojawiły się instrukcje SIMD, a w wersji Coppermine dodano zintegrowany z chipem cache drugiego poziomu; jednocześnie produkowano układy o coraz cieńszych ścieżkach. O ile jednak wprowadzanie modyfikacji w procesorach poprzednich serii odbywało się techniką drobnych kroczków, o tyle według internetowych komentatorów zmiany poczynione w Willamette trzeba nazwać co najmniej dużymi. Czy rzeczywiście? Co nowego kryje się w tym 32-bitowym chipie?

BTB – Branch Target Buffer – bufor rozgałęzień
TLB – Translation Look-aside Buffer – translacyjny bufor odwzorowań
Trace Cache – bufor śledzenia wykonanych instrukcji
ľCode ROM – pamięć ROM mikrokodu

W procesorze zmieniono mechanizm dynamicznego wykonywania rozkazów. Przede wszystkim usprawniono przetwarzanie potokowe – rozbudowano kolejki, które składają się teraz z dwudziestu etapów (patrz: ramka “Przetwarzanie potokowe w procesorze Willamette”). Dlaczego? Rozbicie poszczególnych etapów na drobniejsze operacje powoduje, że do ich realizacji potrzeba mniej złożonej (w sensie ilości bramek i tranzystorów) logiki. Uproszczenie konstrukcji pozwoli łatwo zwiększyć częstotliwość zegara, przy zachowaniu tej samej technologii wytwarzania. Co ciekawe, tłumaczenie kodu x86 na mikrooperacje – dokonywane dotychczas w ramach jednego z etapów kolejki – teraz odbywa się zupełnie poza potokiem, zajmuje się tym specjalizowany dekoder mikrokodu.

Z długimi kolejkami wiąże się jednak poważne niebezpieczeństwo utraty wydajności w efekcie nietrafnego przewidywania, które instrukcje powinny być wykonywane. Przetwarzanie rozkazów przez procesor przypomina taśmę produkcyjną np. w fabryce samochodów: poszczególne instrukcje “opuszczają” kolejkę co jeden cykl zegara, co wcale nie oznacza, że są wykonywane w czasie jednego cyklu. Tak więc w przypadku konieczności usunięcia “nietrafionej” instrukcji z potoku może dojść do utraty sporej liczby cykli zegara, koniecznej do załadowania i wykonania nowego rozkazu. Na dodatek im dłuższa kolejka, tym mniejsza szansa, że będzie możliwe załadowanie instrukcji, których wykonanie nie zależy od rezultatów działania rozkazów aktualnie wykonywanych.

Powrót do koncepcji sprzed lat: podobnie jak nowe Pentium III i Celerony Willamette będzie produkowany w obudowie z nóżkami (Socket-432), niestety, niekompatybilnej z dotychczasowymi rozwiązaniami (SECC, Socket-370).

W celu zwiększenia prawdopodobieństwa doboru właściwych instrukcji do wykonania poprawiono algorytmy przewidywania skoków – nieoficjalne źródła podają, że prawdopodobieństwo trafnego przewidzenia kierunku rozgałęzienia programu wynosi aż 95%, co jest wynikiem bardzo dobrym, biorąc pod uwagę fakt, że instrukcje skoku w typowym kodzie x86 stanowią do 15% jego zawartości. Zupełnie nowym mechanizmem, który ma poprawić wydajność na tym polu, jest bufor śledzenia wykonania instrukcji (Execution Trace Cache). Jego zadanie to przechowywanie gotowych rozkazów przetłumaczonych przez jednostkę dekodującą na mikrooperacje i przekazywanie ich w odpowiedniej kolejności do potoków.

Drugim usprawnieniem, dzięki któremu Willamette zyskuje na wydajności, jest asymetryczna struktura jądra: jednostka arytmetyczno-logiczna (stałopozycyjna) pracuje z dwukrotnie większą częstotliwością niż reszta procesora. Oznacza to, że pokazany na IDF procesor taktowany zegarem 1,5 GHz po części działał z częstotliwością 3 GHz! Teoretycznie procesor będzie więc w stanie wykonać trzy miliardy operacji stałopozycyjnych w ciągu sekundy! Wspomniany mechanizm został ochrzczony mianem podwójnie wspomaganej jednostki stałoprzecinkowej (Double Pumped Integer ALU) i polega na możliwości ukończenia operacji na danych typu Integer w połowie cyklu zegarowego. Przyda się to w przypadku, gdy do wykonania jest ciąg instrukcji stałoprzecinkowych, np. cztery następujące po sobie rozkazy zostaną wykonane w ciągu dwóch cykli zegarowych.

Niestety, niewiele zmieniono w dziedzinie operacji zmiennoprzecinkowych. W przeciwieństwie do Athlona wyposażonego w trzy niezależne jednostki do wykonywania pojedynczych operacji na liczbach zmiennopozycyjnych – Willamette wciąż ma tylko jedną w pełni funkcjonalną (druga służy za pomocniczą w takich działaniach, jak np. przesyłanie danych). Usprawniono natomiast mechanizm SIMD (Single Instruction Multiple Data) – wykonywania identycznych operacji na wielu danych. SSE2 to 144 nowe instrukcje, które pozwalają między innymi operować na nowych typach danych: 128-bitowych liczbach typu integer i 128-bitowych liczbach stałoprzecinkowych podwójnej precyzji. Dodano na przykład rozkazy ułatwiające szyfrowanie danych. Dzięki wspomnianym innowacjom Willamette ma m.in. umożliwiać kompresję/dekompresję obrazu wideo w czasie rzeczywistym.

Ostatnim elementem wyróżniającym się w architekturze nowego procesora jest 64-bitowa synchroniczna magistrala systemowa, za pomocą której procesor będzie porozumiewał się z “resztą świata”. Szyna ma pracować z częstotliwością 400 MHz i osiągać maksymalną przepustowość rzędu 3,2 GB/s, czyli ponadtrzykrotnie więcej niż dotychczasowe procesory Pentium III, pracujące z magistralą maksymalnie 133 MHz. Taka częstotliwość taktowania oznacza, że chip będzie współpracował tylko z jednym rodzajem pamięci: RDRAM. Chyba, że niezależni producenci chipsetów postarają się o możliwość współdziałania z pamięciami DDR, które do tego czasu będą musiały uzyskać nominalną częstotliwość pracy 200 MHz (czyli 400 MHz, biorąc pod uwagę, że pamięci DDR transmitują dane przy opadającym i narastającym zboczu sygnału zegarowego). Chipset Tehama przeznaczony dla Willamette pod względem parametrów ma przypominać obecne układy z serii i840 i obsługiwać dwa kanały pamięci RDRAM.

Willamette będzie początkowo wytwarzany w technologii 0,18 mikrometra, następne wersje będą miały ścieżki o szerokości 0,13 mikrona. W ramach jednej struktury poza układami wykonawczymi, rejestrami, jednostkami stało- i zmiennoprzecinkowymi oraz pamięcią cache pierwszego poziomu zintegrowana zostanie pamięć cache drugiego poziomu. Dzięki temu można będzie zrezygnować ze skomplikowanych i drogich obudów typu SECC na rzecz rozwiązań socketowych (FC-PGA). Intel ogłosił, że pierwsze egzemplarze będą taktowane zegarem powyżej 1 GHz. Można się spodziewać, że historia się powtórzy i częstotliwość taktowania ostatniego Pentium III będzie jednocześnie najniższą częstotliwością zegara Willamette. Niemniej o tym, jakie to będą konkretnie wartości nie ma na razie żadnych informacji. CPU jako następca PIII będzie procesorem środka – ogniwem pośrednim pomiędzy Timną (chipem ze zintegrowanym sterownikiem graficznym i pamięcią L2-cache), Celeronami oraz Itanium (64-bitowym monstrum, o którym pisaliśmy w poprzednim miesiącu), prawdopodobnie ostatnim realizującym pochodzący z zamierzchłej epoki kod x86.

Komentarz

Jerzy Michalczyk, szef działu hardware magazynu komputerowego CHIP

Spektakularny pokaz prototypowego Willamette, pracującego przy standardowym chłodzeniu z częstotliwością 1,5 GHz, przyciągnął niemal wszystkich uczestników konferencji IDF. Dowiódł, że procesorowy gigant ma w zanadrzu bat na konkurencję i nie zawaha się go użyć. Kiedy? Zgodnie z zapowiedziami pierwsze CPU powinny trafić na rynek już w drugiej połowie roku. Czy tak się rzeczywiście stanie? Sam procesor jest już prawdopodobnie gotowy do produkcji, gorzej z chipsetami oraz pamięciami RDRAM – na tym polu wciąż jest wiele do zrobienia (przede wszystkim konieczny jest spadek cen!).

Wydłużone potoki to jedno z podstawowych usprawnień wprowadzonych w Willamette. Według konstruktorów takie podejście pozwoli na uzyskanie znacznie wyższych częstotliwości taktowania, dzięki zmniejszeniu liczby bramek koniecznych do zrealizowania poszczególnych etapów. Z drugiej strony pomyłka przy doborze instrukcji do niekolejnego ich wykonywania może kosztować dwukrotnie więcej cykli zegarowych niż w przypadku PIII.

Czy Intelowi uda się dotrzymać słowa? Prawdopodobnie nie. Krążące w Internecie plotki o problemach z przeznaczonymi dla Pentium III chipsetami i820 i i840 dają wiele do myślenia. Informacje o “trudnym dzieciństwie” chipsetów potwierdza mała dostępność płyt głównych zbudowanych na bazie wspomnianych układów oraz wciąż wysoka cena pamięci RDRAM, która nie przyczynia się do wzrostu popularności nowej technologii. Intel wykonał nawet drobny krok wstecz – może lepiej nazwijmy go półobrotem – wprowadzając do wspomnianych chipsetów obsługę kości SDRAM, pierwotnie nie zamierzoną. Czy tak samo postąpi w przypadku Tehamy (jest to nazwa chipsetu przeznaczonego dla Willamette). Być może tak, nic bowiem nie wróży rychłej popularności RDRAM-om – ani rynek, ani opinia publiczna, ani wyniki testów, w których porównanie wydajności rambusowych kości z nowymi pamięciami typu DDR SDRAM wypada zdecydowanie na korzyść tych ostatnich.

Intel jednakże o tzw. DDR-ach nie chce nawet słyszeć, tłumacząc się, wbrew logice, ich niewystarczającą wydajnością. O dziwo, pamięci te doskonale sprawdziły się już w kartach graficznych, a i niezależne testy próbnych egzemplarzy płyt głównych obsługujących DDR-y wskazują na wzrost wydajności w stosunku do braku takowego u RDRAM-ów. Działania Intela przypominają gonitwę w zaklętym kręgu: z jednej strony firma wprowadza nowy procesor, z drugiej nowy procesor nie będzie miał z czym współpracować albo też sprzęt ten będzie bardzo drogi i trudno dostępny. Czy więc Willamette ukaże się już we wrześniu, czy też firma poczeka na upowszechnienie się RDRAM-ów? Zobaczymy. Może Intel znowu wykona jakiś krok wstecz, o pardon – zaatakuje z półobrotu?

Więcej:bezcatnews