VIA, VIA, a tak, gdzieś słyszałem... Autor: shadow | Data: 18/07/03
| Firma VIA kojarzy się głównie z produkowanymi przez nią chipsetami - jak popularnie określa się układy sterującymi pracą płyt głównych. Niewiele konkurencyjnych produktów wywołuje tyle emocji, co konstrukcje tejże korporacji - dlaczego? Z różnych przyczyn. Niektórym nie odpowiadała umiarkowana (by użyć delikatnego określenia) wydajność wczesnych rozwiązań, inni mieli pretensje o wypuszczanie jakby nie do końca dopracowanych układów. Wszak powszechnie uważa się, że dopiero drugi z danej serii - oznaczony zazwyczaj dodatkową literką A - odpowiada pierwotnemu zamysłowi producenta.
No, ale nie popadajmy w skrajności - układy VIA są ciekawą alternatywą dla często znacznie droższych chipsetów innych rynkowych potentatów. Rozsądna, niewygórowana cena to niezaprzeczalna zaleta. Trzeba też przyznać, że to VIA wprowadzała na masowy rynek nowe rozwiązania - chociażby szynę 133 MHz, czy związane z nią pamięci PC-133. |
|
MVP3 i Athlon XP?
Dzisiaj jednak przyjrzymy się pewnemu ciekawemu - powiedzmy - zjawisku. Postanowiliśmy zbadać, jak duże są różnice między kolejnymi implementacjami ukłądów VIA. Czytając dokumentację niezwykle popularnego kilka lat temu zestawu MVP3, natkniemy się na wzmianki o obsłudze pamięci Double Data Rate (DDR). Co ciekawe, w nowszej wersji dokumentu zostały one usunięte. Ciekawe, prawda? Czyżby zatem i późniejsze układy (serii KX/KT-133) zdolne były wykorzystać pamięć DDR? Po co więc kolejne, pośrednie ich mutacje? Obudziło to w nas podejrzenie, że tak naprawdę dokonywano kosmetycznych zmian, odblokowując kolejne bloki logiczne chipsetu.
By zweryfikować tak postawioną tezę, zajęliśmy się kilkuletnią płytą główną opartą o MVP3. Był to Epox MVP3-G5, wyposażony w 2 MB pamięci cache L3. Postanowiliśmy zainstalować na niej procesor AMD Athlon XP, do tego wykonany w wymiarze technologicznym 0,13 mikrometra. Powstał pewien problem - jak wykonać przejściówkę? Pierwsza kwestia to protokół transmisyjny - procesory Socket A oficjalnie posługują się zupełnie inną szyną komunikacji z north bridge. Problem? Gdzie tam, dla nas nic trudnego. Konwerter stanów logicznych, który został nam z czasów prac nad naszym CPU - TwojePC G7 (info) - okazał się być tym, czego potrzebowaliśmy. Ba, nie było nawet większego problemu z rozstawem nóżek procesora (gdyż sam z siebie jakoś nie chciał w ten Socket 7 włazić). Po krótkiej serii doświadczeń, około 14 Athlonów XP później (nauka - jak wiecie - wymaga poświęceń), mieliśmy rozwiązanie. Po wstawieniu CPU do kuchenki mikrofalowej, w ciągu 25 minut dochodzi do serii skomplikowanych
transformacji termicznych. Innymi słowy, nasze Athlony samorzutnie dokonały
konwersji podstawki, rozjeżdżając się wewnątrz kuchenki. Tutaj uwaga -
radzimy zachować szczególną ostrożność przy zeskrobywaniu ostrymi
narzędziami CPU ze ścianek - uszkodzić można tak jądro, jak i samą
mikrofalówkę. Wracając jednak do tematu - gdy piny same się już rozsunęły,
pozostało tylko usunąć zbędne - to jest te, które nie mieszczą się w Socket 7.
Jeszcze tylko zmiana napięcia, mnożnik ustawiamy na 2x, i...
... a jednak. Athlon XP rewelacyjnie działa na zabytkowej płycie MVP3.
Małe wyjaśnienie
Jak sądzę, Czytelnicy nie dali się nabrać na ten niewinny w swym zamyśle
żart. Nie, Athlonów też nie radzimy wkładać do kuchenek mikrofalowych.
Pozwoliłem sobie dokonać tej (kolejnej, jakby nie było) mistyfikacji, by
zwrócić Waszą uwagę na pewną nieudokumentowaną cechę chipsetów VIA - dający
się programować identyfikator układu. Możemy dowolnie nim manipulować, w
efekcie oszukując programy testujące. Rodzi się pytanie - po co to komu?
Otóż po premierze każdej kolejnej generacji chipów, większość producentów
dostarcza sterowniki, które nie "wiedzą" jeszcze o ich istnieniu.
Przykładowo, sterownik AGP może nie rozpoznać obecności odpowiedniego mostka
północnego, i odmówić współpracy. W rezultacie płyta pracować będzie ze
sztucznie obniżoną wydajnością. Konkretny przykład - za czasów wprowadzenia
KX-133 zastanawiały zdecydowanie lepsze wyniki płyty Asus K7V w niektórych
zastosowaniach. Wyszło na to, że chipset "przedstawiał" się jako obsługiwany
przez dostępny wtedy driver AGP (viagart.vxd) układ MVP3.
Jak zmienić identyfikator chipsetu?
Zajmijmy się teraz praktyczną stroną zagadnienia. Jak przeprogramować
ten numerek? Posłużymy się tutaj znanym programem WPCREDIT, którego
autorem jest twórca WCPUID - H.Oda!. Umożliwia on edycję
rejestrów konfiguracyjnych urządzeń PCI, zarazem też chipsetu. To doskonałe
narzędzie, tym ciekawsze, że dostępne są do niego pliki z opisami
wielu popularnych chipsetów. Dodatki te nie będą nam potrzebne - rejestry, które
zmienimy, nie są udokumentowane. No dobrze, do roboty.
Spójrzmy na zrzut ekranu programu. Kolorem
czerwonym zaznaczyłem identyfikator chipsetu mojej płyty głównej - KT-266A
(swoją drogą odpowiada też KT-266 i KT-333).
Numer identyfikacyjny to 0x3099 (szesnastkowo). Właśnie te dwa bajty
chcemy zmienić. Ale skąd odwrócenie liczby w rejestrach (99 30)? Wynika ono
ze sposobu zapisu liczb przez procesory x86. Ważne, byśmy wpisując numer
również dokonywali takiego przestawienia.
Niestety, próba zapisu pod pozycje 02 oraz 03 zakończy się porażką.
Nagłówka zazwyczaj nie można zmieniać - tak jest i tym razem. Zastosować
musimy pewien trick - do rejestru 0xFC (lub 0xFD, jeśli mamy starszy
chipset) - wpisujemy wartośc 1. Włączy to tryb programowania ID chipsetu.
Następnie w rejestrach 0xFE i 0xFF umieszczamy numer, którym przedstawiać ma
się north bridge. Poniżej widać wpisaną wartość 98 05 (czyli 0x0598) - to
własnie identyfikator MVP3.
Gotowe? Możemy już wyczyścić jedynkę z rejestru 0xFC (0xFD) - wyłączając tryb zapisu.
Identyfikator został zmieniony.
Efekty
Spójrzmy teraz na efekty. Oto nowa wersja płyty AsRock K7VT2 na KT400:
A to jeszcze większa ciekawostka. Athlon i fragment chipsetu dla Pentium
4, który miał zwać się P4X800:
Kilka słów na koniec
Tak oto światło dzienne ujrzała mała tajemnica układów VIA. Jak z niej
praktycznie skorzystać? Hmm, to juz pozostawiam Czytelnikom - jeśli na nic
nie wpadniecie, pocieszać się można, że to chyba
najtańszy "upgrade" płyty ;)
Dodatek: Tabelka ID wybranych chipsetów VIA
VP3 | 0x0597 |
MVP3 | 0x0598 |
KX-133 | 0x0391 |
KT-133/133A | 0x0305 |
KT-266/266A/333 | 0x3099 |
KT-400 | 0x3189 |
Pro/133/133A | 0x0691 |
Pro+ | 0x0693 |
Pro 266 | 0x3091 |
KLE-133 | 0x3112 |
CLE-266 | 0x3123 |
P4X266A | 0x3128 |
ProSavage PM-133 | 0x0605 |
|