[ Pobierz całość w formacie PDF ]
rozbudowania układów sterujących dla potrzeb nadzorowania spójności (Cache Tag Re-
covery) dwóch systemów adresowania.
Rodzina K6
Projekt tego procesora nie był w zasadzie dziełem AMD, lecz przejęty został wraz z za-
kupioną firmą NexGen. Połączenie okazało się niezmiernie korzystne dla obu stron.
Rozwijana przez NexGen nowoczesna technologia1 została zaadaptowana dla potrzeb
niezmiernie chłonnego rynku komputerów klasy PC i wypromowana przez firmę, która
wprawdzie zdobyła już pozycję w tym sektorze, ale nadal nie dysponowała atrakcyjnym
produktem, który mógłby skutecznie odpierać nieustające ataki konkurencji.
Tak więc zakupiony procesor (wtedy jeszcze o nazwie Nx686) został na tyle przebudo-
wany, by zmieścił się w podstawce Socket 7 typowej płyty głównej i zajął miejsce pro-
cesora Pentium. Uzyskany produkt końcowy otrzymał nazwę handlową K6, co miało
stanowić nawiązanie do sprzedawanego do tej pory przez AMD własnego opracowania
znanego pod symbolem K5.
K6 był jak na owe czasy konstrukcją bardzo nowoczesną i pod wieloma względami prze-
wyższał swych aktualnych konkurentów. Jądro procesora pracowało w trybie RISC. Opera-
cje w kodzie x86 rozkładane były na krótkie kody wewnętrzne, noszące tym razem miano
RISC86. Układ dekodera był niezmiernie wydajny. Pobierając jednorazowo 16 bajtów kodu
x86, produkował w ramach jednego cyklu zegarowego do 4 mikroinstrukcji (rysunek A.2).
Opuszczające dekoder mikroinstrukcje spływały do zbiornika pośredniego (Scheduler),
gdzie oczekiwały na zwolnienie właściwej dla danego rozkazu jednostki przetwarzającej.
Procesor dysponował sześcioma takim układami: dwoma dla operacji na danych całko-
witych (Integer), po jednym dla przesłań do i z pamięci, zmiennoprzecinkowego i MMX.
Wszystkie jednostki z wyjątkiem dwóch ostatnich2 mogły przetwarzać mikrokody RISC
równolegle i jednocześnie.
Wzajemne uzależnienia kodu w strumieniach równoległych rozwiązywane były poprzez
przemianowywanie rejestrów. Do dyspozycji tej funkcji oddano 32 dodatkowe rejestry
32-bitowe. Układ przepowiadania śledził zachowanie 8192 instrukcji rozgałęzień, przez
co cechował się bardzo dużą dokładnością trafień.
K6 wyposażony został w 64 KB pamięci podręcznej (tabela A.2), po 32 KB dla kodu i da-
nych, co stanowiło wartość czterokrotnie wyższą niż w przypadku Pentium i dwukrotnie
1
Płyta główna zdolna do przyjęcia procesora NexGen bazowała na specjalnie opracowywanych do tego celu
układach scalonych (Chip-Set). Winę za to ponosiła całkowita niezgodność z architekturami intelopodobnymi ,
na przykład specjalna superszybka magistrala łącząca procesor z pamięcią podręczną L2.
2
Projekt jednostki MMX przejęty został od Intela na mocy wzajemnej umowy licencyjnej. Koncepcja wyklucza
jednoczesną pracę MMX i FPU, bowiem obydwa bloki korzystają ze wspólnych rejestrów.
Dodatek A Przegląd architekt ry mikroprocesorów 1177
Rys nek A.2.
l*QI?:¦31¦bktofbp
Schemat blokowy
procesora AMD K6 I.¦Clab¦C^`eb:¦0/h?
>aaobpp
./5
0/
?o^k`e ABCLABO
Ildf` x53¦*;¦OlPC
%5.6/¦bktofbp&
A^t^
1¦OlPC
Lrq*lc*Loabo
Bub`rqflk¦Bkdfkb
31
OIP@¦ /0
lkptor`tflk
...
?RP
Clktoll
PCHBARIBO
lktboc^`b
Rkft
OIP@¦ .
Rkft
OIP@¦ -
Clktoll .¦OlPC
?o^k`e
Il^a Ptlob lkt+U lkt+V JJU CM
Rkft
Cll`h
I.¦A^t^¦C^`eb:¦0/h?
A*QI?:¦./5¦bktofbp
wyższą niż dla Pentium MMX. Na uwagę zasługuje również organizacja pamięci pośred-
niej jednostki MMU. Tablice TLB (Transaction Look-aside Buffer) dla kodu potrafiły za-
pamiętać do 128 rekordów (dla porównania Pentium Pro tylko 32).
Rodzina K6-2
W połowie 1998 roku na rynku pojawiły się procesory K6 (jądro typu Chomper) dostoso-
wane do pracy z magistralą FSB 100 MHz. Firma AMD rzuciła w ten sposób wyrazne wy-
zwanie monopolistycznej polityce Intela, ukierunkowanej na rozwój linii Pentium II i wy-
eliminowanie szeroko rozpowszechnionej podstawki Socket 7. Ponieważ obowiązująca
w tym zakresie specyfikacja dopuszczała maksymalną częstotliwość szyny FSB, wynoszącą
66 MHz, nowy wynalazek propagowany był jako podstawka Super 7 (Socket Super 7).
Prawidłowe rozpoznanie i skonfigurowanie nowego procesora wymagało obsługi ze strony
BIOS-u (ew. konieczność aktualizacji) i płyty głównej. Na straconej pozycji znalezli się
posiadacze płyt pozbawionych wyprowadzenia końcówki BF2, co uniemożliwiało ustawie-
nie mnożnika powyżej ×3,5. Trzeba też byÅ‚o zwracać uwagÄ™ na dostatecznÄ… wydajność
zródła prądowego (co najmniej 10 A).
Procesory K6-2 mogły współpracować z magistralą FSB zarówno w wersji 66 MHz, jak
i 100 MHz (tabela A.3), przy czym chipsety do tych ostatnich pochodziły wyłącznie od
1178 Anatomia PC
Tabela A.2. Podstawowe dane procesorów AMD K6
166 200 233 266(A) 300(A)
Architektura RISC 86
Technologia 0,35 µm 0,35 µm 0,35 µm 0,25 µm 0,25 µm
Zegar CPU [MHz] 166 200 233 266 300
Magistrala [MHz] 6666666666
Mnożnik (BF) ×2,5 ×3 ×3,5 ×4 ×4,5
L1 Cache (kod) 32 KB, 2×Associative (2 Ways)
L1 Cache (dane) 32 KB, 2×Associative, WB (2 Ways)
L2 Cache on Chip
Pipe-Lines 7
Pipe-Line Stages 6 (FP: 7)
Out of Order •xecution
[ Pobierz całość w formacie PDF ]