Dlaczego nie mamy 33-bitowych procesorów? [Zamknięte]

9

Widziałem, że procesory i systemy operacyjne przesunęły się w górę pod względem bitów od 8-bitowych do 16-bitowych, do 32-bitowych i obecnie do 64-bitowych. Rozumiem, że ta zmiana ma na celu zwiększenie maksymalnej ilości pamięci adresowalnej przez CPU.

Nie rozumiem, dlaczego zawsze podwaja się rozmiar autobusu. Czy podwojenie rozmiaru autobusu jest decyzją arbitralną / biznesową, czy może jest inny powód?

Dlaczego nie możemy mieć 33-bitowego procesora? A jeśli to nie wystarczy, 34-bitowy procesor? 64-bit wydaje się być tak ogromnym i niepotrzebnym (drogim?) Skokiem w przestrzeni adresowej i przypuszczalnie złożonością bazowego krzemu.

Lokalny Gospodarz
źródło
3
@sawdust - Ale nie ma nic świętego w ścieżce danych, która jest wielokrotnością 8 bitów, a jeszcze mniej, mając taką, która jest potęgą dwóch wielokrotności 8 bitów.
Daniel R Hicks
7
To pytanie nie jest wcale takie złe i nie jest tak proste jak „och, ucz się binarnego derpa!”, Jak wskazuje Daniel (i moja odpowiedź). Z tego powodu będę go głosować z powrotem do zera.
Marshall Eubanks
1
Twoje pytanie zawiera fałszywe założenie. Wzrost szerokości bitów miał przede wszystkim na celu zwiększenie szerokości rejestrów ogólnego przeznaczenia. Wzrost szerokości wskaźników był historycznie wtórny.
David Schwartz
1
@sawdust Mam całkiem niezłe pojęcie o tym, jak działa binarny, co jest całkiem oczywiste z mojego pytania. Nie, dziękuję za twoją niepomocną i raczej niegrzeczną odpowiedź.
localhost
1
@marshaul: To pytanie zostało faktycznie ocenione poniżej zera? Dlaczego?? To dobre pytanie! Myślę, że downvoters prawdopodobnie jeszcze mniej rozumieli liczby binarne niż autor pytania.
HelloGoodbye,

Odpowiedzi:

7

Widziałem 12, 14, 15, 17, 18, 20, 24 i 48-bitowych procesorów. Ale przy nowoczesnej technologii VLSI (czy to już ULSI?) Dodawanie kolejnych bitów do ścieżki danych nie jest tak drogie. Twórcy wiórów wciskają na układ jak najwięcej szerokości, ponieważ zwiększa to przepustowość przy stosunkowo niewielkich kosztach dodatkowych i przy niewielkim opóźnieniu czasowym cyklu.

Osiągnięcie większej prędkości / przepustowości dzięki wąskiej ścieżce danych i krótszemu cyklowi jest znacznie trudniejsze.

Daniel R. Hicks
źródło
(Zapomniałem wspomnieć o 60-bitowych procesorach - starej serii CDC 6600).
Daniel R Hicks
Chociaż jest to interesująca odpowiedź, wciąż nie wyjaśnia, dlaczego moce dwóch wydają się być preferowane we współczesnych komputerach PC, co, jak sądzę, jest właśnie tym celem tego pytania, chociaż nie w pełni zrealizowane w momencie jego tworzenia.
HelloGoodbye,
@HelloGoodbye To nie tyle potęga dwóch, ile wielokrotność 8. 32-bitowa szyna danych może zapisać dokładnie 4 bajty w jednej instrukcji.
jiggunjer,
4

W przeciwieństwie do wielu okoliczności w komputerze, na przykład adresowania, gdzie zwiększenie długości adresu o jeden bit zwiększa ilość pamięci adresowalnej o moc 2 (i dlaczego moc 2 jest tak powszechna w pamięci), rzeczywista długość słowa procesora może być dowolną dogodną wartością.

Typowe długości słów dla procesorów (16, 32 i 64 bity) powstały w rzeczywistości jako wielokrotności liczby 8 (zamiast potęgi 2, chociaż oczywiście te poszczególne wielokrotności liczby 8 również są potęgami 2), przy czym 8 bitów jest minimalny rozmiar pojedynczego znaku , sam najmniejszy powszechnie używany typ danych pierwotnych.

Ponieważ 8 bitów jest zbyt nieprecyzyjne, aby było bardzo przydatne w przypadku wartości liczbowych (lub nawet rozszerzonych zestawów znaków, takich jak UTF-16), słowa większe niż 8 bitów pozwalają na znacznie większą wydajność podczas pracy z wartościami wykorzystującymi więcej niż tyle bitów precyzji , a wielokrotności 8 bitów (najmniejszy powszechnie używany typ danych) są nadal naturalnym wyborem, pozwalając na zapisanie liczby całkowitej (np. 2, 4 lub 8) znaków w słowie bez pozostawiania zmarnowanych, niewykorzystanych bitów.

Artykuł w Wikipedii na temat słów zawiera sekcję Wybór rozmiaru słowa z jeszcze nieco bardziej szczegółowymi szczegółami.

Marshall Eubanks
źródło
1
Nie wszystkie wielokrotności liczby 8 mają potęgę 2.
cpast
Doskonały punkt, naprawdę chciałem powiedzieć „te moce 2”. Naprawię to.
Marshall Eubanks
Istnieją komputery zbudowane z 6 i 10-bitowych „znaków”.
Daniel R Hicks
Jasne, i znowu, długość słowa może być dowolną dogodną liczbą, która nie musi opierać się na długości znaków ani niczym innym. Na przykład ALU, które rzadko działało na „znakach”, prawdopodobnie miałoby długość słowa opartą na najczęściej używanej liczbie całkowitej najmniejszej precyzji. Nie chciałem sugerować niczego nakazowego, a jedynie wyjaśnić podstawowy powód najczęstszych wyborów (i tych, o które pytał).
Marshall Eubanks