Na początek – Revision G
Poprawka G to procesor, który ma być wytwarzany już w wymiarze technologicznym 65 nm, do którego AMD podchodzi jak pies do jeża. Nic w tym zresztą dziwnego. AMD stosuje ten sam proces technologiczny co IBM – uzyskiwany przez IBM uzysk procesorów Cell, nie przekraczający 20 procent, sam za siebie określa poziom dojrzałości stosowanej technologii. Nic więc dziwnego w tym, że FAB 36 w Dreźnie wciąż pracuje na wymiarze 90 nm. Wprawdzie proces 90 nm daje mniej układów z wafla, ale za to... działających! Co z tego, że 65 nm to dwa razy więcej układów, skoro w procesie 90-nanometrowym uzysk wynosi ponad 80%, a w 65-nanometrowym – zaledwie 25%?
Kiedy możemy się spodziewać 65-nanometrowych Athlonów 64? Kryształowa kula mówi, że najwcześniej po wakacjach, najpóźniej – pod koniec roku. A co będą miały w środku?
Rozsądek podpowiada, że architektura „mniejszego” procesora AMD powinna być zgodna z tym, co znamy z obecnych procesorów tej marki. Nic nowego, poza zmniejszeniem wymiarów i usprawnieniami technologicznymi. Zresztą mówi tak nie tylko kryształowa kula – to samo mówi porównanie obrazów chipów – 90- i 65-nanometrowego.
Na pierwszy rzut oka nie widzimy tu niczego nowego – wszystkie bloki funkcjonalne procesora mają takie same lokalizacje, nie przybyło nic nowego. I nie należałoby się temu dziwić – połączenie wdrożenia nowego procesu technologicznego ze zmianami konstrukcyjnymi układu nie jest najszczęśliwszym pomysłem i producenci starają się go unikać. Ale... poprawka G to nie tylko mniejszy wymiar technologiczny i nowy proces.
Patrząc wnikliwiej dostrzeżemy drobną, ale bardzo istotną różnicę - cztery bloki pamięci mikrokodu, w miejscu dotychczasowych trzech. Z tego w oczywisty sposób wynika, że proces dekodowania jest czteropotokowy. Za tym w oczywisty sposób idzie dalsza czwórdrożność i, rzeczywiście - scheduler jednostki ALU również wygląda na czterodrogowy.
Skuteczny rywal Conroe?
Jak niedawno pokazywaliśmy, głównym czynnikiem dającym Conroe ogromną przewagę wydajności nad Pentium D i dość sporą nad K8, jest czterodrogowość, dająca możliwość wykonania czterech operacji w jednym cyklu. Wygląda na to, że Poprawka G daje K8 szansę, jeśli nie na prześcignięcie Conroe w wyścigu wydajności, to przynajmniej na dogonienie go. A do prześcigania pozostanie na razie technologia.
Nowa technologia
Jeśli już mowa o usprawnieniach technologicznych, to tandem AMD/IBM zrobił w ciągu ostatnich dwóch lat bardzo wiele. Niektórym z osiągnięć warto się przyjrzeć z bliska, a takim osiągnięciem jest przede wszystkim „okiełznanie” technologii „rozciąganego krzemu”. Strained Silicon to technologia opracowana co prawda przez IBM, ale rozpropagowana przez Intela – mamy z nią do czynienia w procesorach Northwood i Prescott, wykorzystywana jest także, oczywiście, w Conroe. O co tu chodzi? Przewodność elektryczna krzemu jest, delikatnie mówiąc, umiarkowana, co wynika przede wszystkim ze struktury krystalicznej tego pierwiastka. W przypadku przewodnictwa typu N – duża koncentracja atomów krzemu stanowi poważną przeszkodę na drodze ruchu elektronów. Lekarstwem jest rozciągnięcie struktury krzemowego kryształu tak, by jego przewodność elektryczna wydatnie wzrosła. Najprostszym rozwiązaniem jest wykorzystanie faktu, że proces krystalizacji w technologii epitaksjalnej dopasowuje strukturę krystaliczną do podłoża. Wystarczy więc podłoże o luźniejszej strukturze krystalicznej. Takim materiałem jest SiGe, stop krzemu z germanem, z którego wręcz bez umiaru korzystają producenci stosujący rozciągany krzem.
Ale nałożenie monokryształu krzemowego na warstwę SiGe ma poważną wadę – im dalej od podłoża, tym efekt rozciągnięcia staje się słabszy. To widzimy w intelowskim wykorzystaniu „rozciąganego krzemu”, szczególnie w przypadku kanału typu P, który zostaje „ściśnięty” dzięki rozciągnięciu sąsiadujących obszarów przez wkładki SiGe.
Tymczasem w procesie AMD/IBM wprowadzono coś, co otrzymało nazwę „Dual Liner” - czynnikiem odpowiednio rozciągającym lub ściskającym górną warstwę jest materiał izolacyjny pokrywający układ.
Dual Liner pozwala uzyskać rozciągnięcie struktury krystalicznej krzemu nie tylko na poziomie podłoża, ale także w najwyższej warstwie krzemu, w której znajduje się kanał tranzystora. Kolejne usprawnienie procesu odkształcania struktury krystalicznej to utrwalanie odkształceń, pozostających nawet po usunięciu czynnika odkształcającego, uzyskiwane w procesie amorfizacji i rekrystalizacji krzemu. Warto pamiętać, że proces technologiczny AMD/IBM jest procesem w technologii SOI (Silicon On Insulator), w którym podłożem jest wprawdzie wciąż krzemowy wafel, ale pokryty izolacyjną warstwą dwutlenku krzemu (jasna warstwa poniżej kanałów tranzystorów, ta, na której napisano NMOS i PMOS).
Efekty? Już je znamy – ograniczenie poboru mocy dwurdzeniowego procesora do 85 W. Pomimo 90-nanometrowej technologii. Nie koniec na tym. Zwróćmy uwagę na fakt, że z dwóch tranzystorów, tworzących parę CMOS, stanowiącą podstawę konstrukcji większości współczesnych układów scalonych, tranzystor z kanałem typu N jest tym sprawniejszym, zaś prawdziwą kulą u nogi jest kanał tranzystora typu P. Dlaczego? Wyjaśnienie jest wręcz anegdotyczne. Otóż przewodnictwo typu P polega na tym, że nośnikami ładunku elektrycznego są tak zwane dziury – „puste miejsca” w sieci krystalicznej, w których, w wyniku domieszkowania krzemu innymi pierwiastkami, brakuje elektronów. Prowadzi to w oczywisty sposób do wniosku, że przez półprzewodnik typu P prąd przepływa w wyniku przemieszczania się dziur, pustych miejsc, czyli po prostu – niczego! No nie – cudów nie ma – tu również mamy do czynienia z ruchem elektronów. Przemieszczają się one „z dziury do dziury” – chyba nie trzeba tłumaczyć, dlaczego taki proces jest wolniejszy. W rezultacie pary tranzystorów CMOS buduje się tak, aby obydwa tranzystory miały ten sam czas przełączania – kanał typu N jest sztucznie przedłużany, zaś kanał P – skracany do granic możliwości.
Tu ujawnia się przewaga zespołu AMD/IBM nad pracującym w osamotnieniu Intelem. W procesie technologicznym AMD/IBM zastosowano nie tylko rozciągnięty krzem w kanałach tranzystorów typu N, ale także „ściśnięcie” krzemu w kanałach typu P, które u Intela realizowane jest jedynie na poziomie podłoża, bez korekty górnej warstwy.
Usprawnienia technologii to jednak za mało, jak na przewagę Conroe, więc po Revision G nie należy się spodziewać wydajnościowych rewelacji, oczywiście poza potencjalną możliwością przyspieszenia zegara. Ale 3,5 GHz to chyba wszystko, czego możemy oczekiwać, jeśli weźmiemy pod uwagę, że stała czasu 65-nanometrowych tranzystorów typu P (czyli tych wolniejszych) wytwarzanych w 65-nanometrowym procesie AMD/IBM wynosi 1,25 ns – tyle samo, co intelowskich tranzystorów 90-nanometrowych.
Ka osiem i pół
K8L - z tym procesorem fani AMD wiążą wiele nadziei. Ale... już sama nazwa mówi, że zbyt wiele nie należy się spodziewać. Wystarczy przypomnieć znaczenie litery L w liczbowej notacji rzymskiej.... Tak, tak – mamy do czynienia z "K8.50", a nazwa nadana przez AMD ma swoje uzasadnienie. W pierwszych prezentacjach na Microprocessor Forum układ ten nazywany był "K8++", dopiero później „pół” zostało zakamuflowane jako rzymskie L...
Projekt K8++ rozpoczęto już dość dawno temu, gdy procesory Athlon 64, dominujące nad układami Intela w większości benchmarków, wyraźnie „dawały ciała” w operacjach SSE i FP. Było to w pełni uzasadnione – pracując z dużo wolniejszymi zegarami, musiały być w tego rodzaju działaniach słabsze, tu nie daje się wiele zrobić modyfikując architekturę. A jądro K8L powstało przede wszystkim właśnie w celu miażdżącego pokonania intelowskiej architektury NetBurst na zmiennoprzecinkowym polu walki.
Widać to na pierwszy rzut oka – patrząc na floorplan układu K8L (fotek chipu jeszcze nie ma) wyraźnie widzimy, w lewej górnej części układu, obok bloku jednostki FP/SSE, drugą taką samą jednostkę. Oczywiście dopatrzymy się również i w K8L czterodrogowego dekodera instrukcji, jaki pojawił się w Revision G.
I obok czwórdrożnego dekodowania druga jednostka FP/SSE ma stanowić broń K8L, dając teoretycznie podwojenie, zaś w praktyce około 50-procentowy wzrost wydajności procesora w tego typu operacjach. Kilka szczegółów rozwiązania jest wciąż niejasnych. Hans de Vries, mistrz tropienia ścieżek w krzemowych mozaikach, widzi nowy zespół jednostek FP/SSE jako sterowany tym samym, trójdrożnym schedulerem, z jakiego korzystają dotychczasowe jednostki.
Z fotki, z której korzystał Hans, rzeczywiście można odnieść takie wrażenie. Ale przecież nie miałoby żadnego sensu podwajanie liczby jednostek wykonawczych bez możliwości zapewnienia im zajęcia, a do tego służy scheduler. Trójdrożny scheduler nie zagospodaruje w żaden sposób sześciu jednostek. Dlatego, jako bardziej prawdopodobne rozwiązanie, widzę coś takiego:
Możliwe jest zarówno podwojenie schedulera, jak i zwiększenie jego szerokości... 6-drogowy scheduler? Dlaczego nie, zmieści się bez problemów w budżecie tranzystorów (to jedno z ograniczeń, z jakimi muszą się liczyć projektanci).
Lista dodatków
Podwojenie jednostek zmiennoprzecinkowych to nie jedyne, chociaż najbardziej spektakularne usprawnienie architektury K8, zawarte w K osiem i pół.
Przyjrzyjmy się im po kolei. Na dzień dobry widzimy pamięć cache trzeciego poziomu, wyglądającą „na oko” na 2 MB – tyle samo, co suma pamięci cache L2 czterech jąder. Nie ma na razie żadnych informacji na temat trybu pracy cache L3, jednak trudno przypuszczać, by był to tryb exclusive, w którym dane przechowywane są tylko na jednym poziomie cache. Z drugiej strony – cache o tej pojemności, pracująca w trybie inclusive, byłaby nieporozumieniem. Jedynym uzasadnieniem jej obecności przy takim trybie pracy byłaby rola bufora, rozdzielającego dane i kod, pobierane na potrzeby czterech rdzeni ze wspólnego kontrolera pamięci.
Kolejne usprawnienie, ukryte pod określeniem „Dual 128 bits loads per cycle” to poszerzona do 256 bitów szyna pomiędzy systemem cache i jądrem. Ściślej mówiąc, dwuportowe pamięci cache L1 i L2 umożliwiają dwie równoczesne operacje ze 128-bitowym słowem. Dotychczas system cache K8 pozwalał na dwie 64-bitowe operacje równocześnie. Logiczną konsekwencją poszerzenia szyn podsystemu cache, w pewnym stopniu uzasadniającą istnienie cache trzeciego poziomu, jest poszerzenie pobrań wyprzedzających (prefetch) z 16 do 32 bajtów. Towarzyszy mu usprawnienie układu predykcji rozgałęzień kodu.
Kolejnym usprawnieniem jest możliwość przekolejkowywania operacji load, która sprawia, że proces pobrań i zapisów do pamięci RAM staje się dla procesora równie przezroczysty, jak w zastosowanym w Conroe systemie Memory Disambiguation. Może nawet sprawniejszy – wspólna cache L3 w K8L wygląda na dwuportową, podczas gdy cache L2 w Conroe osiągana jest przez oba jadra w systemie kolejki FIFO (first in, first out). Jednak nie da się ukryć, że jeden poziom cache więcej przekłada się na co najmniej kilkanaście cykli zegara oczekiwania...
W rozszerzenia listy instrukcji nie będziemy się wdawać, wystarczy jeśli powiemy wyraźnie, że są zgodne z tymi, które zawiera Conroe. I tyle byłoby o usprawnieniach jądra K8, zawartych w wersji „połówkowej”.
Duże zmiany w otoczeniu
Enhancent Crossbar. Przełącznik krzyżowy, zapewniający komunikację pomiędzy jadrami, pamięciami cache i resztą otoczenia procesora już w przypadku dwujądrowego K8 zasługiwał na rozbudowę. W układzie z czterema jądrami dwudrożna konstrukcja przełącznika staje się koniecznością, a cztery drogi połączeń stanowiłyby chyba optimum.
Przyspieszony HyperTransport, HT-3, to oczywiście radość, ale przede wszystkim dla serwerowych wersji procesora, przeznaczonych do konfiguracji wieloprocesorowych, w których występuje konieczność dostępu do pamięci RAM obsługiwanej przez inny procesor. Dla indywidualnego użytkownika jednoprocesorowej maszyny – kwiatek do kożucha. Za to interesująco wygląda...
Enhanced Direct Connect Architecture and Northbridge. Nie sposób oprzeć się wrażeniu, że w procesorze znajdziemy aż dwa dwuszynowe kontrolery pamięci DDR2, w dodatku z możliwością przejścia na DDR3...
Na początek – serwery
Pierwsze wersje procesorów z jądrem K8L będą najprawdopodobniej przeznaczone do zastosowań serwerowych. Świadczy o tym przede wszystkim zestaw interfejsów, zawierający aż cztery 16-torowe łącza HyperTransport 3.0. Pozwala to na utworzenie czteroprocesorowej konfiguracji (16 wysokowydajnych jąder) z pełną szybkością transmisji przez HT, zaś ośmioprocesorowej (32 rdzenie) po rozdzieleniu HyperTransportów w wiązki o mniejszej szerokości. W obydwu przypadkach dostęp do pamięci przypisanej do innego procesora wymaga tylko jednego przesłania. Obsługę wieloprocesorowości potraktowano w K8L bardzo poważnie, wprowadzając istotne usprawnienia w obsłudze zapewniającego spójność cache protokołu MOESI.
A co z desktopami? Plany AMD w tej materii nie zostały ujawnione, a może nawet jeszcze nie są sprecyzowane. Teraz będą spekulacje. AMD zapowiedziało demonstrację czterojądrowego K8L przed końcem bieżącego roku. Biorąc pod uwagę fakt, że na razie nie ma zdjęć chipu, a jedynie floorplan, jest jeszcze dużo do zrobienia, a czasu niewiele. Tymczasem zbliża się wdrożenie procesu technologicznego 65 nm. Jak już wspomnieliśmy wcześniej, w tym procesie będą początkowo produkowane Athlony 64 Revision G, nie odbiegające funkcjonalnie od obecnych. W tym samym czasie powinny się rozpocząć próby tapingu (uzyskania działających układów) jedno- i dwurdzeniowych układów z jądrem K8L. Taki proces zajmuje zwykle około pół roku... Koniec spekulacji – miało być „bez zmyśleń”.
Nie jest tak źle z AMD
Pomimo tego, że główny cel ataku K8L, jakim były procesory Intela o architekturze NetBurst, zniknął nagle z celownika, riposta AMD zapowiada się bardzo atrakcyjnie. Wystarczy zauważyć, że im bardziej wymagająca aplikacja, tym bardziej zmienia się relacja pomiędzy osiągami Core 2 Duo i Athlonów 64 X2.
W SYSmarku 2004 przewaga Core 2 jest wręcz miażdżąca, za to w zagregowanych wynikach testów gier przewaga Conroe zauważalnie maleje...
...aby w aplikacjach o charakterze profesjonalnym, również zagregowanych, zmaleć jeszcze bardziej.
Już poprawka G ma szanse znacząco zmienić relację pomiędzy wydajnością Athlonów 64 X2 i Core 2 Duo, ale... zauważmy, że w większości aplikacji profesjonalnych najbardziej liczy się wydajność zmiennoprzecinkowa, a tej K8L będzie miał pod dostatkiem. Co do wyższości Core 2 Duo w zadaniach arytmetyczno-logicznych – usprawnienia wprowadzone w jądrze K8L co najmniej ją zniwelują.
Tym niemniej na przeznaczone do komputerów PC procesory z jądrem K8L poczekamy jeszcze co najmniej około roku. A przez ten czas wydajnościowym królem rynku desktop będzie Intel Core 2 Duo. Później – wyglada na to, że obie architektury zapewnią tę samą wydajność w zastosowaniach desktopowych, natomiast procesory AMD zyskają wyraźną przewagę w zastosowaniach profesjonalnych. I to nawet jeśli nie spełnią się nasze spekulacje związane z projektem Mitosis. Najgorsze dla fanów AMD jest jednak coś innego – wciąż nie wiemy, czy desktopowe układy z jądrem K8L będą zgodne z dotychczasowym planem zasilania i będzie je można zastosować w posiadanych płytach. Na to pytanie odpowiedź przyniesie 65-nanometrowa Revision G. Już niedługo, najpóźniej przed końcem roku.