Frage

Ich habe gelesen, dass der Mikroprozessor besteht aus mehreren Komponenten, die jeweils gleiche / verschiedene „Größen“. Aber wirklich, was mich verwirrt ist, was bestimmt die angegeben Größe eines Mikroprozessors als 16-Bit, 32-Bit oder 64-Bit ...

Ist es:

  1. die Fähigkeit der die ALU?
  2. die Größe des Datenbusses?
  3. die Größe des Adreßbusses?
  4. der "kleinste gemeinsame Nenner" der oben genannten?
  5. oder ein anderer Faktor, dass ich bisher kenne nicht?
War es hilfreich?

Lösung

Im Allgemeinen ist die Bit-Größe eines Prozessors ist die Größe der Mehrzweckregister. dies entspricht oft die Größe des Speicherbus und möglicherweise den Adreßbus, aber nicht unbedingt.

Zum Beispiel Intel verkauft eine Version des Chips 386 die 386SX genannt ( http: // en .wikipedia.org / wiki / Intel_80386 # The_i386SX_variant ), die intern eine 386 mit 32-Bit-Register, aber nur eine 16-Bit-Datenbus aufweist. Ich denke, dass die meisten Menschen den Chip in Betracht ziehen würden, um noch statt einem 16-Bit-Prozessor, der einen 32-Bit-Prozessor sein.

Andere Tipps

Ich denke, ich werde mal ran. Traditionell denke ich, dass „Größe“ bedeutet die Breite (Anzahl der Bits) in dem Registersatz. On "mein" erster Computer DEC PDP-8 / E die einzelnen Register vorhanden - der Speicher - war breit 12 Bits und es war ein 12-Bit-Computer, auf den PDP-11 die Register waren 16 Bit breit und es war ein 16 -Bit-Computer. IBM 370 und VAX hatten 32-Bit-Register und waren 32-Bit-Computer.

Beginnend mit den 80386 Dinge schwierig wurde. Je nach Betriebsart kann es sich vorstellen ein Real-Mode-8086, einem geschützten Modus (PM) 80286 oder eine PM 80386. Mit den 64-Bit-Prozessoren mit AMD64 oder x86-64 Sie alle der oben genannten und auch 64-Bit sein müssen PM. Also, was sind sie? Es sollte auf der Basis-Betriebsmodus des OS abhängen, die auf es läuft. Windows NT 2000, Windows XP-32, Vista-32 7-32 macht den Prozessor 32-Bit. OS mit "64" in ihnen den Prozessor 64 Bit zu machen.

In Bezug auf Busse und solche Sachen. Es gibt zwei physikalische Busse auf x86-Prozessoren Adresse + Daten und zwei logische Busse Speicher + i / o. Spezialstifte auf dem Prozessor bestimmen, ob der Betrieb Speicher oder I / O-Lesen oder Schreiben und so weiter. 8086/8088 auf der gemeinsam genutzten Daten und Adreßbussen die gleichen Pins A0-A15 mit D0-D15 / A0-A7 mit D0-D7 mit den Bits A16-A19 / A8-A19 ist streng Adresse. Auf den 80.286 waren sie getrennt, nicht sicher über die 80186/80188. Auf den 80.286 waren es 24 Adressen und 16 Datenleitungen. Auf der 80386 und 80486 waren es 32 jeweils für Adresse und Daten. Die 80386SX hatte die gleiche äußere Konfiguration wie die 80286.

Nach diesen Bussen kompliziert werden. Die Prozessoren laufen so schnell intern, dass sie mehr oder weniger ständig für ihre Caches warten, die wiederum mehr oder weniger ständig auf externen RAM warten. Um den Caches' unersättlichen Hunger nach Daten externe Speicher zu erfüllen begannen es in 64 Bit breite Brocken liefern mit dem MMX Pentium und Pentium beginnend sind beide 32-Bit-Prozessoren mit 32 Adreßleitungen aber mit 64 Datenleitungen.

Bei späteren Prozessoren der Anzahl der Adreßleitungen 36 erhöht wurde, um eine Gesamt adressierbaren externen Speicher von 64 GB ermöglicht. Die Prozessoren blieben 32-Bit-intern.

Ein Multi-Core-Prozessoren der Hunger nach Daten noch stärker ausgeprägt ist, so dass sie mehrere Sätze von Adress- und Datenbus zu faciltiate Daten können in den Prozessor vollgestopft werden. Desktop-Prozessoren können zwei oder drei und Server-Prozessoren drei auf vier. Ich bin mir nicht sicher, aber ich glaube, einige eingeschaltet haben 128 breite Datenbus Bit.

Für die modernen 64-Bit-Prozessoren ist es nicht möglich, auch 64 Adressleitungen, da hat, dass der Speicher bis zu 16 Milliarden Gigabytes erlauben würde, die heute nicht möglich ist. Einige Motherboards ermöglichen 128 GB was bedeutet, dass der Prozessor benötigt mindestens 37 Adreßleitungen.

Wie Sie Adresse und Daten sehen können Busse sind nicht mehr wirklich brauchbar Prozessorgröße zu bestimmen. Sie haben eigentlich nicht für den letzten 25 (80386 Modi) Jahre.

In C der int-Typ sollte die Registerbreite äquivalent sein. Auf AMD64 ist es nicht, weil es einfach nicht so groß ein Bedarf für 64-Bit-Ints: 32 Bit ints in den meisten Fällen nur gut tun. Die Breite eines Zeigers in C auf AMD64 64 Bits though.

Im Allgemeinen bezieht sich dies auf die Menge des Speichers (2 ^ n) Bytes ist, dass adressierbare durch die CPU. Normalerweise ist es das gleiche wie Datenbus, aber die Hardware kann mehrere accesss tun abzurufen, die Menge so ist nicht zu 100% garantiert. Manchmal ist es entspricht auch CPU-Register Größe, aber auch es anders sein kann.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top