Modyfikowanie procesora Celeron 300A na Slot I do działania w systemie wieloprocesorowym

Kategoria: Retro | 19/02/2025 | Komentarzy: 0
Pod koniec lat 90. Intel wprowadził na rynek serię procesorów Celeron, która stała się popularna ze względu na swoją przystępną cenę i dobrą wydajnością w podstawowych zastosowaniach. Jednak Celerony z rodziny Slot 1 (np. Celeron Mendocino) były często postrzegane jako "okrojone" wersje swoich bardziej zaawansowanych odpowiedników - Pentium II i III. Jednym z głównych ograniczeń Celeronów (oprócz braku albo okrojonej pamięci cache) była niezdolność do pracy w systemach wieloprocesorowych (SMP - Symmetric Multiprocessing). Intel celowo wyłączył możliwość pracy w trybie SMP w Celeronach, aby zachować różnicę między segmentami rynku. Ale czy na pewno? Okazuje się, że z odrobiną wiedzy i chęci eksperymentowania, można to zmienić!
Na projekt skusiła mnie płyta główna, którą ostatnio dostałem - Intel OR840 (Outrigger). Dwuprocesorowa płyta główna na Slot 1 zaprojektowana z myślą o Pentium III. Na czas pisania artykułu posiadam trzy procesory Celeron oraz dwa procesory Pentium II pod Slot 1. Z tych trzech Celeronów, są dwa legendarne Celerony 300A. Pomyślałem, że fajnie byłoby stworzyć konfigurację, w której wykorzystam oba te procesory w jednym systemie, dodatkowo podkręcone do 450 MHz. (poprzez zmianę FSB z 66 MHz do 100 MHz). Co ciekawe płyta główna ta nie obsługuje procesorów z mniejszym FSB niż 100 MHz, przez co włożenie takiego Celerona 300A powoduje "automatyczny" overclock z 300MHz do 450MHz (FSB gdy ma być ustawione na 66 MHz, jest po prostu 100 MHz) - więc tą część już mamy załatwioną bez zakrywania/zamalowywania pinów.
Co blokowało SMP w Celeronach? W procesorach Slot 1 mamy dwa wejściowe piny: BR0# oraz BR1#. Są one wykorzystywane przy uruchomieniu do przydzielenia procesorom ich ID w systemach SMP. W przypadku Celeronów pod Slot 1, problemem był pin BR1# (Bus Request 1), który jest w nich zwarty na stałe do VCore (2V) na płytce PCB procesora. Powoduje to, że procesor nigdy nie może się stać drugim procesorem. Intel zmodyfikował tylko płytkę procesora a nie cały rdzeń (modyfikacja rdzenia była by za droga). Aby przywrócić funkcjonalność SMP, konieczne jest fizyczne odłączenie tego pina od VCore, podłączenie go do niewykorzystanego rezystora na PCB (aby zrobić pull-up do 1.5V) i podłączenie do pina na złączu.
W tytule artykułu jest wspomniany Celeron 300A, ale modyfikacja ta działa też na innych wersjach Celerona pod Slot I.
Modyfikację wykonałem według starego artykułu ze strony cpu-central.com. Dla osób, które chcą dokonać tej modyfikacji na podstawie mojego artykułu – nie biorę odpowiedzialności za ewentualne uszkodzenia sprzętu lub procesora!
Pracę rozpocząłem od odłączenia pinu BR1# na procesorze od zasilania.
Odłączenie tego pinu powinniśmy wykonać wiertłęm o średnicy 0.5mm (zobacz oryginalny artykuł z cpu-central.com, by zobaczyć jak to trzeba dokładniej wykonać aby nie uszkodzić PCB ani procesora). Jako, że nie posiadam takiego wiertła użyłem takiego wkrętaka co miałem pod ręką z drobną szpiczastą końcówką (obrazek poniżej). "Wiercąc" końcówką w przelotce, uważając odpowiednio na ścieżki obok, udało mi się odłaczyć pin ten od zasilania. To czy odłączyliśmy pin można sprawdzić miernikiem na teście przewodzenia, sprawdzając czy pin jest złączony z pinem po prawej od przodu procesora jak na obrazku jeszcze niżej.
Po odłaczeniu pinu BR1#, postanowiłem sprawdzić czy nie zepsułem czegoś innego. Przylutowałem przewód i połączyłem go z powrotem z VCore (na zdjęciu, przewód jest połączony z kondensatorem - jest on także połączony z VCore, było mi wygodniej się pod niego przylutować). Dla tych, którzy są ciekawi, jakiego drutu używam, jest to emaliowany drut z starego silnika. Jeszcze wcześniej przed wlutowaniem tego przewodu sprawdziłem czy procesor nie działa i tak - nie działał, czyli odłączyłem ten pin dobrze.
Procesor zadziałał! Nie uszkodzilem niczego innego. Najtrudniejsza cześć tej modyfikacji za nami. Następne pozostaje nam: użycie jednego rezystora z drabinki rezystorowej RP6 do podciągnięcia pinu BR1# do 1.5V (pin ten wymaga podciągnięcia do poprawnego działania) oraz podłączenie go do swojego pinu na złączu.
Połączyłem BR1# z podciągnięciem, zostalo pociągnięcie drutu na drugą stronę (stronę "B") i podlutowanie się pod złączę - dokładniej pod pin B75. Przy lutowaniu przewodu pod złączę, należy uważać by nie przesadzić z cyną. Nadmiar cyny na złączu może doprowadzić do uszkodzeń socketu Slot 1 w płytach głównych.
Wszystko wykonałem. Teraz pora na test... działa! Procesor sam odpala normalnie. Aby jednak sprawdzić procesor w konfiguracji dwóch procesorów potrzebowałem jeszcze drugiego zmodyfikowanego Celerona 300A. Tych Celeronów miałem dwa jak pisałem wcześniej, więc mając już doświadczenie przystąpiłem do tej samej roboty. Skracając całą historię - udało się także bez problemów. Mając dwa zmodyfikowane Celerony 300A, przystąpiłem do głównego testu.
Miałem kompatybilne chłodzenie tylko pod jeden procesor, więc do drugiego przyczepiłem radiator używając trytytki. Do całego zestawu dołożyłem 512MB RAMu typu RDRAM (zapomniany Rambus) w konfiguracji 4 x 128MB oraz grafikę Nvidia Quadro FX 700 (użyłem tej grafiki, ponieważ była pierwsza z wyjściem DVI, którą wyciągnąłem z pudła z kartami). Na system podłączyłem dysk HDD wielkości 120 GB.
Zwieram piny PWR SW, patrzę na kartę diagnostyczną (nie zatrzymuje się na żadnym kodzie), brzęczyk pika i mam obraz! W BIOSie pokazują mi się dwa procesory Celeron z 128KB cache. Jak wspominałem, płyta wymusza 100 MHz FSB, więc moje Celerony są już podkręcone do 450 MHz.
Postanowiłem zainstalować Linuxa Debiana na test. Aby nie wypalać żadnych płyt CD, postanowiłem użyć karty CompactFlash z GRUBem oraz instalką Debiana w wersji netinstall. Nie byłem pewny czy ta płyta obsługuje USB boot, więc zrobiłem to tak. Setup się uruchomił, jeszcze na czas pisania artykułu Debian 12 obsługuje procesory 32 bitowe z serii P6. W trakcie instalacji, setup dwa razy się zawiesił z błędami kernela ale za trzecim razem się udało (prawdopodobnie przez overclock - muszę podkręcić delikatnie napięcia na tych Celeronach aby polepszyć stabilność poprzez zasłonięcie odpowiednich pinów na slocie procesora). Sukcesywna instalacja potrwała z półtorej godziny. Debian bez problemu odpala z dysku i pokazuje w systemie dwa procesory. Tutaj Neofetch z tego systemu:
Dwa działające procesory Celeron 300A w jednym systemie podkręcone do 450 MHz!
Podsumowując, projekt okazał się nie tylko sukcesem, ale także satysfakcjonującą lekcją na temat retro sprzętu. Udało się osiągnąć dwie rzeczy: wykorzystać dwa procesory Celeron 300A w trybie SMP oraz podkręcić je do 450 MHz, co w końcówce lat 90. mogło stanowić naprawdę imponującą konfigurację.
Co dalej? Jeśli znajdę czas, planuję przetestować tę konfigurację w zastosowaniach z epoki - od starych serwerowych systemów operacyjnych, benchmarków po gry i aplikacje wymagające większej mocy obliczeniowej. Jak wspominałem wcześniej, być może spróbuję również delikatnie podnieść napięcia w celu poprawy stabilności.
W przypadku pytań lub sugestii zapraszam do komentarzy - chętnie podzielę się dodatkowymi szczegółami lub wysłucham waszych opinii :)
Komentarze
Brak komentarzy.Dodaj komentarz