WikiDer > Wortbreite
Wortbreite ist die Breite von a Maschinenwort in Bits in a Computer. Normalerweise ist dies die Wortbreite, die die Mikroprozessor intern verwendet, um seine Berechnungen durchzuführen, d. h. die Breite des Datenregister und der mathematischer Teil. Es gibt 4, 8, 16, 32 und 64 Bit Prozessoren. Motorola entwickelte einst einen 1-Bit-Prozessor, der für industrielle Anwendungen sehr beliebt war.[1]
Wortbreite
Die Wortbreite von a Prozessor bestimmt, wie viele Daten der Prozessor pro Taktimpuls Operationen durchführen. Ein Prozessor mit einer größeren Wortbreite kann daher Operationen mit mehr Daten pro Taktimpuls ausführen. Somit kann ein 32-Bit-Prozessor doppelt so viele Daten pro Taktimpuls bewegen wie ein 16-Bit-Prozessor.
Wenn Zahlen hinzugefügt werden, kann ein 32-Bit-Prozessor Zahlen von 0 bis 4.294.967.295 (232 - 1) während ein 16-Bit-Prozessor von 0 bis 65.535 (216 - 1) kann sich summieren. In diesem Fall wird der 32-Bit-Prozessor nur dann schneller, wenn Zahlen größer als 65.535 auftreten, da der 32-Bit-Prozessor diese Zahlen mit einem Additionsbefehl addieren kann, während der 16-Bit-Prozessor keinen Befehl zum Addieren so großer Zahlen hat und daher muss die Bedienung mit separaten, separaten Anweisungen simuliert werden.
vergrößern
Aus dem Obigen ist ersichtlich, dass die Erhöhung der Wortbreite in einem Prozessor einen anwendungsabhängigen Vorteil bietet:
- beim Verschieben von Daten verdoppelt sich die Geschwindigkeit
- beim Addieren kleiner Zahlen bleibt die Geschwindigkeit gleich
- beim Addieren großer Zahlen erhöht sich die Geschwindigkeit um ein Vielfaches, viele einzelne Anweisungen werden durch 1 Anweisung ersetzt
Die Erhöhung der Wortbreite hat auch Nachteile für die Geschwindigkeit, da dem Prozessor größere Datenblöcke zugeführt werden müssen. Da die Geschwindigkeit von Erinnerung endlich ist, ist hier ein Prozessor mit größerer Wortbreite im Nachteil. Eine größere Wortbreite führt normalerweise auch dazu, dass der Programmcode mehr Platz beansprucht. Ein letzter Effekt besteht darin, dass einige Befehle mit einer größeren Wortbreite langsamer werden. Dies ist vergleichbar mit einer Multiplikation auf dem Papier, bei der die Zahlen zusammengefügt werden; je größer die Zahlen, desto mehr Arbeit wird die Berechnung erfordern. Der Computer führt die Multiplikation auf genau die gleiche Weise durch. Bei einem Additionsvorgang wird die Additionseinheit doppelt so breit ausgeführt, so dass kein zusätzlicher Arbeitsaufwand anfällt. Dies ist bei der Multiplikation nicht möglich; eine Multiplikation auf dem Papier wird mit größeren Zahlen nicht nur breiter, sondern auch länger.
Im Allgemeinen hat sich die Verdoppelung der Wortbreite in der Computergeschichte positiv ausgewirkt. Jeder Wechsel zu einer größeren Wortbreite hat jedoch einen immer kleineren Effekt. Dadurch wird es wohl noch 128-Bit-Prozessoren geben, aber ob es jemals 1024-Bit-Prozessoren geben wird, ist sehr fraglich.
Adressierbarer Speicher
Im einfachsten Design eines Prozessors gibt es sowohl für den Programmierer als auch für den Prozessordesigner eine Zeiger aus der Nummer eines der Bytes im Speicher. Hat ein Prozessor eine Wortbreite von 32 Bit, dann sind maximal 232 = 4.294.967.296 verschiedene Bytes bezeichnet. Das ist die maximale Speichermenge, die ein solcher Prozessor verwenden kann, in diesem Fall 4Gibibyte. Bei einem 16-Bit-Prozessor sind das 64kibibyte und nur 256 Byte bei einem 8-Bit-Prozessor. Dies sind kleinere Mengen als normalerweise erwünscht, und daher verwenden Prozessoren mit kleinen Wortbreiten oft ein komplizierteres System.
Das MOS 6502, ein 8-Bit-Prozessor, nutzte die ersten 256 Byte Speicher für die sogenannte Nullseite. Eine 16-Bit-Zahl könnte dann irgendwo in der Nullseite platziert werden, und der Prozessor hatte einen speziellen Nullseiten-Adressierungsmodus, so dass in dieser Nullseite platzierte Zeiger effizient verwendet werden können. Dadurch konnte der 6502 64 Kibibyte Speicher verarbeiten.
Das Intel 8086, ein 16-Bit-Prozessor, verwendet das berühmte Segment/Offset-System. Hier bestand ein Zeiger aus zwei 16-Bit-Werten, dem Segment und einem Offset. Der tatsächliche Speicherplatz wurde wie folgt berechnet:
Dadurch konnte der 8086 maximal 1 . halten Megabyte zur Erinnerung. Aufgrund einer Designentscheidung von IBM war dies IBM-PC auf 640 kibibyte reduziert. Da spätere Computer oft über 1 MiB Speicher verfügten, wurden Tools entwickelt, um die verbleibenden 384 KiB nutzen zu können, die sogenannten erweiterter Speicher Manager, die im KONFIG.SYS musste aufgenommen werden. Der Einsatz war jedoch begrenzt.
Immer größere Wortbreiten
Der Grund, warum in den 1970er Jahren nicht mit größeren Wortbreiten begonnen wurde, liegt an den zur Verfügung stehenden Fertigungstechniken. Damals konnte man höchstens ein paar tausend Transistoren an einem Chip Stellen, wobei beim Design eine äußerst sparsame Transistorpolitik verfolgt werden musste.
Da eine größere Wortbreite mehr Transistoren erfordert (schließlich brauchen die zusätzlichen Bits auch Logik, um sie zu verarbeiten), blieb in den frühen Jahren keine andere Wahl, als die Wortbreite zu reduzieren. Neben All-in-One-Prozessoren gab es auch Stückchenverfügbaren Bausteinen, die es Computerherstellern ermöglichten, ihre eigenen Prozessoren mit Wortbreiten ihrer Wahl zusammenzustellen. Solche Prozessoren bestanden dann aus Dutzenden von ICist auf a PCB und kann nicht mit aktuellen Prozessoren verglichen werden.
In den frühen 1980er Jahren war die Anzahl der Transistoren weniger problematisch, und 32-Bit-Prozessoren ermöglichten Designvereinfachungen und erforderten nicht viel mehr Transistoren als 16-Bit-Prozessoren. Dies lag unter anderem daran, dass bis zu 4 GB Speicher ausreichten und die oben beschriebenen komplexeren Speicheradressierungssysteme überflüssig wurden.
16-Bit-Prozessoren wurden jedoch hauptsächlich aufgrund der Beschränkungen des Leiterplattendesigns gewählt. Aufgrund des engen Timings, das für die Erinnerung an die Zeit erforderlich war, gab es beim Design von Leiterplatten sehr wenig Freiheit. Es war daher sehr schwierig, genügend Strompfade für einen 32-Bit-Prozessor auf einer Leiterplatte zu bekommen.
Damals war die Revolution des Heimcomputers brach aus und es gab zusätzlichen Druck auf die Computerhersteller, ihre Leiterplatten einfach zu halten. Folglich musste der Siegeszug des 32-Bit-Prozessors bis in die zweite Hälfte der 1980er Jahre warten.
Heutzutage ist das Design der gedruckten Schaltungen auf einem Hauptplatine immer noch keine einfache Sache. Eine Anzahl von Techniken hat es ermöglicht, den gegenwärtigen Stand der Technik zu erreichen. Eine wichtige Entwicklung sind die modernen Speicher, die eine gewisse Verzögerungszeit berücksichtigen. Moderne Mainboards bestehen zudem aus vielen Lagen gedruckter Schaltungen, die übereinander geklebt werden.
Einige bekannte oder beliebte Prozessoren nach Wortbreite
4-Bit
- Intel 4004 (1971), gilt als der erste Mikroprozessor (monolithisch Zentralprozessor)
8 Bit
- Intel 8008 (1972), Nachfolger des 4004
- Intel 8080 (1974), verwendet in Altar 8800
- MOS 6502 (1975), verwendet in der Kommodore 64 und der Nintendo-Entertainment-System
- Zilog Z80 (1976), Befehlssatz kompatibel mit dem 8080, aber etwas umfangreicher
16-Bit
- Intel 8086 (1978), erster Prozessor aus der x86-Familie/Architektur
- Intel 8088 (1979), wie 8086, jedoch mit 8-Bit externem Datenbus
- Motorola 68000 (1979), 32-Bit-Register, aber 16-Bit für Datenbus und Akkumulator, unter anderem verwendet in Apple Macintosh und Sega Mega Drive
32-Bit
- Motorola 68020 (1984), Nachfolger des 68000, voll 32-Bit
- Intel 80386 (1985), x86-Architektur, weit verbreitet in IBM-kompatiblen PCs
- PowerPC 601 (1993), zuerst PowerPC-Prozessor
- Intel Pentium (1993), x86-Architektur, weit verbreitet in IBM-kompatiblen PCs
- PowerPC G4 (1999), verwendet unter anderem in der in Power-Mac
64-Bit
- IBM RS64 (1997), verwendet in IBM AS/400- und RS/6000Systeme
- Intel Itanium (2001), verwendet die IA-64Befehlssatz, der nicht abwärtskompatibel ist mit x86
- AMD Athlon 64 (2003), erster 64-Bit-Prozessor für den Consumer-Markt, zuerst mit x86-64Befehlssatz (der mit x86 abwärtskompatibel ist)
| Quellen, Anmerkungen und/oder Verweise |