Szyna danych i wszystkie rejestry wewnętrzne mają długość 64 bitów, w porównaniu do 32 bitów w architekturze IA-32. Umożliwia to przetwarzanie 64-bitowych liczb przy pomocy jednego rozkazu kodu maszynowego oraz pozwala zaadresować 4294967296 razy więcej pamięci (nawet do 256 TB; fizyczna przestrzeń adresowa ma wielkość 264, przestrzeń adresowa pojedynczego procesu – 248). Obecnie produkowane procesory AMD mają szyne adresową szerokości 40 bitów, co pozwala zaadresować 1 terabajt pamięci.
Rejestry ogólnego przeznaczenia rozszerzono o dodatkowe 32 bity, dostępne jedynie w 64-bitowym trybie pracy. Dodano również 8 dodatkowych, 64-bitowych rejestrów ogólnego przeznaczenia oraz 8 dodatkowych 128-bitowych rejestrów SSE (również dostępnych jedynie w trybie 64-bitowym). Rozszerzenie rejestrów dokładniej wyjaśnia schemat.
Dwukrotnie większa liczba rejestrów pozwala procesorowi rzadziej odwoływać się do pamięci podręcznej (gdyż więcej danych można przechowywać w rejestrach), co znacznie przyspiesza wykonanie programów (nawet samo przekompilowanie kodu nie używającego 64-bitowych danych tak, aby wykorzystywał dodatkowe rejestry, powoduje znaczny wzrost szybkości wykonywania).
W celu skrócenia czasu dostępu do pamięci, a tym samym skrócenia czasu gdy procesor nie wykonuje żadnych rozkazów czekając na dane z pamięci, w rdzeniach procesorów rodziny K8 zintegrowano kontroler pamięci. Eliminuje to pośrednictwo mostka północnego płyty głównej (chipsetu) i przyspiesza czas odczytu i zapisu z i do pamięci.
Wadą takiego rozwiązania jest uzależnienie stosowanego rodzaju pamięci od procesora. O ile w przypadku, gdy kontroler pamięci znajduje się w mostku północnym wystarczy nowy model mostka, aby przygotować procesor do pracy z innym rodzajem pamięci, o tyle kontroler wbudowany w procesor obsługuje tylko jeden rodzaj pamięci. Różne modele procesorów K8 wymagają jednego lub dwóch kanałów pamięci DDR SDRAM.
Obsługa kodu 32-bitowego
Procesory K8 mogą pracować w jednym z 3 trybów: Legacy Mode, Long 64-bit Mode oraz Long Compatibility Mode. W domyślnym trybie Legacy są one całkowicie zgodne z 16- i 32-bitowym oprogramowaniem i systemami operacyjnymi. W tym trybie dodatkowe 64-bitowe rejestry nie są używane, a rejestry ogólnego przeznaczenia ograniczone są do 32 bitów. Również dodatkowe rejestry SSE oraz rozkazy trybu 64-bitowego są zablokowane – nie potrzeba więc emulować pracy procesora 32-bitowego, jak w procesorach o architekturze IA-64 (IntelItanium oraz Itanium 2). Emulacja musiałaby być dokonywana pod kontrolą 64-bitowego systemu operacyjnego, a wydajność sprzętowego emulatora mniejsza niż prawdziwego procesora 32-bitowego.
Rozszerzenia 64-bitowe AMD64 można wykorzystać dopiero w trybie Long, wymagającym 64-bitowego systemu operacyjnego. System narzuca procesorowi Long 64-bit Mode, wymagający wyłącznie aplikacji 64-bitowych, lub Long Compatibility Mode, w którym można wykonywać programy zarówno 64- jak i 32-bitowe (również bez konieczności emulacji ani tłumaczenia rozkazów). W trybie Long Compatibility Mode oprogramowanie 32-bitowe może korzystać z pełnej przestrzeni adresowej trybu 64-bitowego.
Biorąc pod uwagę zgodność z x86 w trybie Legacy oraz małą dostępność oprogramowania (szczególnie systemów operacyjnych) 64-bitowego, można procesory K8 traktować jako niezwykle szybkie procesory 32-bitowe. Dzięki ulepszonej architekturze serii K7 są one wydajniejsze od K7 nawet w ograniczającym trybie Legacy.
Praca wieloprocesorowa
Dzięki zastosowaniu łącza HyperTransport procesory AMD K8 są dobrze przystosowane do pracy w konfiguracjach wieloprocesorowych. W porównaniu do Athlona MP, który wymagał oddzielnego układu mostkującego na każdą parę procesorów oraz prowadzenia mnóstwa skomplikowanych ścieżek (co utrudniało zaprojektowanie i zwiększało koszty płyty głównej), zastosowanie kilku procesorów K8 jest bardzo proste i tanie w implementacji. Procesory komunikują się ze sobą przez łącze HyperTransport, które składa się z niewielkiej liczby połączeń elektrycznych, co nie wymaga drogich, wielowarstwowych płyt głównych. Tylko jeden z procesorów musi mieć połączenie z układami płyty głównej, takimi jak mostek północny (a za jego pośrednictwem magistrale PCI-Express, PCI, kontrolery dysków, karty sieciowe itp.). Ponieważ każdy z procesorów ma wbudowany kontroler pamięci, każdy ma własną magistralę danych, co eliminuje konieczność dzielenia pasma przepustowości pamięci między procesory (jak w konfiguracjach wieloprocesorowych firmy Intel), teoretycznie przepustowość podsystemu pamięci rośnie liniowo z każdym dodatkowym procesorem.
Opis układów
Poniżej znajduje się klasyfikacja procesorów AMD K8 według jąder, na których zostały zbudowane.
Jądro Clawhammer (Athlon 64, Athlon 64 FX, Mobile Athlon 64)
pamięć podręczna: 128 kb L1, 1024 kb L2 (w niektórych procesorach połowa pamięci L2 jest fabrycznie zablokowana, zwykle z powodu wad produkcyjnych w drugiej połowie; takie procesory mają tylko 512 kb L2)
¹ – pierwsza liczba oznacza rozmiar pamięci cache L1 zaś druga rozmiar cache L2 (w kilobajtach)
² – pierwsza liczba oznacza średni pobór prądu, druga – moc, trzecia – maksymalną temperaturę pracy
³ – pierwsza liczba oznacza ilość tranzystorów (w mln), druga proces technologiczny (szerokość ścieżki), trzecia powierzchnię jądra
SC – Single-Channel
DC – Dual-Channel
– procesory Athlon 64 M (Mobile) pracują z mnożnikiem zmiennym w zależności od obciążenia procesora i możliwości zasilania; liczba w tabelce określa maksymalna nominalną częstotliwość/mnożnik.
† – QDR, w odróżnieniu od DDR dla pozostałych procesorów
pamięć podręczna: 128 kb cache L1, 256 mb cache L2 (nie zależy od steppingu; w niektórych procesorach L2 ograniczone o połowę z powodu wad produkcyjnych w drugiej połowie)