PC-Technik - Grundlagen

Transcription

PC-Technik - Grundlagen
PC-Technik
Michael Kuhrts, Christoph Volkmann
Grundlagen
5. Ausgabe, September 2011
PCT
3
PC-Technik - Grundlagen
3
Prozessor
In diesem Kapitel erfahren Sie
D
D
D
D
wie ein Prozessor funktioniert
aus welchen Komponenten ein Prozessor aufgebaut ist
welche Betriebsmodi Intel-Prozessoren besitzen
welche Prozessoren Intel und AMD vertreiben
Voraussetzungen
D Physikalische Grundlagen
D Technisches Verständnis
3.1
Funktion der CPU
Von-Neumann-Architektur
Die meisten Computer arbeiten nach dem EVA-Pinzip, das
heißt, sie besitzen Geräte zur Eingabe, Verarbeitung und
Ausgabe von Daten. Ein populäres Konzept für den Aufbau
des Verarbeitungsgerätes ist die Von-Neumann-Architektur, die bereits 1949 vom Mathematiker John von Neumann
entwickelt wurde. Sie besteht im Wesentlichen aus vier
Funktionseinheiten:
D
D
D
D
Rechenwerk 
Steuerwerk 
Steuerwerk

Rechenwerk
Speicher


 Schnittstellen (Bussystem)
Speicher 
Ein- und Ausgabeeinheit 
Eine weitere wichtige Komponente, das Bussystem, bietet
die Schnittstellen  für die Kommunikation der einzelnen
Komponenten untereinander und mit der Außenwelt.
 Eingabe/Ausgabe
Hauptkomponenten des Verarbeitungsgerätes
Im PC sind wesentliche Teile dieser Architektur in einem zentralen Baustein zusammengefasst, der Central
Processing Unit (CPU). Die CPU kontrolliert den kontinuierlichen Datenfluss zwischen den einzelnen Funktionseinheiten. Die Daten entstammen dem Arbeitsspeicher oder den angeschlossenen Geräten (Tastatur,
Laufwerke etc.). Nach der Verarbeitung wird das Ergebnis an den Arbeitsspeicher oder an ein Gerät geschickt.
Die CPU lädt eigenständig den nächsten auszuführenden Befehl zur Datenverarbeitung. Die eigentliche
Arbeit der CPU ist dann das Berechnen und Verschieben von Daten.
Der Von-Neumann-Rechner arbeitet sequenziell, Befehle und Daten aus dem Speicher werden also schrittweise nacheinander abgearbeitet. Das Bussystem entpuppt sich dabei oft als Flaschenhals, weil vor und nach
jedem Verarbeitungsschritt dieselben Leitungen verwendet werden müssen. Eine Verbesserung gelang mit
der Entwicklung einer hierarchisch gegliederten Speicherstruktur, bestehend aus Registern und verschiedenen Speicherebenen (Cache-Ebenen). Häufig genutzte Daten und Befehle können dabei in schnellen separaten Cache-Speichern abgelegt werden. Darüber hinaus erreichen neue CPU-Generationen durch eine feinere
Aufteilung der Funktionseinheiten und eine Erweiterung der Befehlssätze bereits eine teilweise parallele
Arbeitsweise. So können pro Ausführungszyklus mehrere Daten verarbeitet werden. Durch die Entwicklung
von Systemen mit mehreren Prozessoren oder Prozessorkernen wurde diese Parallelisierung in den letzten
Jahren immer weiter vorangetrieben.
20
© HERDT-Verlag
3
Prozessor
Die folgende Tabelle gibt eine Übersicht über die Funktionseinheiten einer CPU:
Funktionseinheit
Funktion
IDU
Instruction Decode Unit
Befehlsdecoder: Alle eingehenden Befehle, die den Prozessor als Programm
erreichen, werden in einen Mikrocode übersetzt und an die ausführende Einheit übergeben.
EXU
Execution Unit
Ausführungseinheit: Alle Befehle, die nun im Mikrocode vorliegen, werden
ausgeführt.
COL
Control Logic
Kontrolleinheit: Sie sorgt für eine Kontrolle im Ablauf der Mikrocodes.
BIL
Bus Interface Logic
Bussteuereinheit: Sie überwacht und steuert den Bus.
ALU
Arithmetic Logic Unit
Arithmetisch-logische Einheit: Sie ist zuständig für die Ausführung arithmetischer (Addition, Subtraktion, Multiplikation, Division) und logischer Rechenoperationen (UND, ODER, NICHT).
FPU
Floating Point Unit
Fließkomma-Rechner: Von ihm werden Berechnungen mit Fließkommazahlen
durchgeführt.
DC
Data Cache
Daten-Cache-Speicher: Er dient als schneller Datenzwischenspeicher.
CC
Code Cache
Befehls-Cache-Speicher: Er dient als schneller Befehlszwischenspeicher.
Steuerwerk oder Leitwerk
Das Steuerwerk ist die mitunter umfangreichste Zusammenfassung unterschiedlicher Funktionsblöcke. Es
besteht aus den verschiedenen Kontrolleinheiten, in denen sämtliche Vorgänge im Computer kontrolliert und
gesteuert werden.
Befehlsdecoder
Der Befehlsdecoder (IDU - Instruction Decode Unit) ist auf dem Prozessor oft mehrmals in einer parallelen
Anordnung vorhanden. Dies erlaubt eine kürzere Zeitspanne für die Befehlsdurchführung. Auch die Ausführungseinheit (EXU - Execution Unit) ist bei vielen Prozessoren mehrmals vorhanden.
Rechenwerk
Zum Rechenwerk gehören neben der ALU (Arithmetic Logic Unit) und der FPU (Floating Point Unit) auch
Register, in denen Daten zwischengespeichert werden können. Nur mithilfe der arithmetisch-logischen
Einheit (ALU) kann der Prozessor Gleichheits- und Ungleichheitsprüfungen sowie Größenbestimmungen
durchführen. Nur dann können alle Anweisungen eines Programms abgearbeitet werden.
Fertigungstechniken
Die CPU basiert auf der Mikrochiptechnologie. Dabei werden - derzeit bis zu 1,2 Milliarden - Transistoren als
elektronische Schalter auf einem nur wenige Quadratzentimeter großen Träger aus Halbleitermaterial (meist
Silizium) implantiert, dem Mikrochip. Von diesem leitet sich auch die Bezeichnung Mikroprozessor ab. Funktion und Aufgabengebiet des Prozessors werden durch Anzahl und logische Verknüpfung der Transistorfunktionen festgelegt. Der "nackte" Mikrochip wird auch als Die (engl. Plättchen) bezeichnet.
Zum Schutz vor mechanischen Belastungen werden die Mikrochips in einem Gehäuse aus Kunststoff oder
Keramik untergebracht. Leistungsfähige moderne Prozessoren besitzen meist eine Abdeckung aus Metall
(Heatspreader), welche die entstehende Wärme auf eine größere Fläche abführt und das empfindliche
Prozessor-Die schützt. Von außen zugängliche Kontakte sorgen für den elektrischen Anschluss.
© HERDT-Verlag
21
3
PC-Technik - Grundlagen
Im Rhythmus von ein bis zwei Jahren wird die Fertigungstechnik verbessert und erlaubt die Herstellung von
immer kleineren Strukturen. Ein Pentium 4 (Northwood) von 2002 wurde noch im 130-nm-Prozess gefertigt,
beim heutigen i7-Prozessor (Sandy Bridge) sind es nur noch 32 nm. Die Verkleinerung erlaubt eine Reduzierung der Spannung sowie eine Erhöhung des Taktes und der Transistorzahl. Dadurch kann eine neue Prozessorgeneration entweder deutlich weniger Energie bei gleicher Leistung verbrauchen oder bei gleichem
Energieverbrauch deutlich leistungsfähiger sein.
Da die Erhöhung des Takts ab einer Grenze von etwa 4 GHz zunehmend schwieriger wurde und die Kühlung
extrem hoch getakteter Prozessoren kaum noch zu bewerkstelligen war, sind 2005 die Hersteller Intel und
AMD dazu übergegangen, mehrere (niedriger getaktete) Prozessorkerne in einem Prozessor
zusammenzufassen (Multicore).
Inzwischen gibt es kaum noch Prozessoren mit nur einem Kern und die Anzahl der Kerne in einem Prozessor
im Serverbereich liegt inzwischen bei 12. Bei normalen Desktopcomputern sind es immerhin schon sechs
Kerne pro CPU, Tendenz steigend.
3.2
Leistungsmerkmale moderner Prozessoren
Leistungsmerkmale der CPU
Um die Eigenschaften moderner Prozessoren zu beschreiben, gibt es zahlreiche Kenngrößen und Technologien:
D
D
D
D
D
D
D
D
Taktfrequenz (intern und extern)
Art des Befehlssatzes oder Möglichkeiten zur parallelen Abarbeitung von Befehlen (Multi-Threading)
Anzahl der CPU-Kerne im Prozessorgehäuse (Muticore-Prozessoren)
Größe der Caches, Vorhandensein von Level-3-Cache
Geschwindigkeit der Speicheranbindung
Prozessorarchitektur
Busbreite (64 Bit)
Vorhandensein der Befehlssatzerweiterungen zur Beschleunigung bestimmter Berechnungen (SSE,
früher MMX und 3dNow!)
Das Zusammenwirken aller dieser Faktoren bestimmt die Leistungsfähigkeit eines Prozessors. Dabei kann ein
Flaschenhals oder Schwachpunkt an einer Stelle dafür sorgen, dass die Leistung sofort dramatisch einbricht.
Es ist daher fast unmöglich, anhand von ein paar Zahlen die tatsächliche Leistung abzuschätzen. Dennoch gilt
weiterhin das Prinzip "Viel hilft viel": Mehr Prozessorkerne, ein höherer Takt und viel Cache lassen eine
höhere Leistung erwarten.
Taktfrequenz/CPU-Geschwindigkeit
Die CPU verarbeitet Daten und Befehle in einem festgelegten Rhythmus, der durch einen Taktgeber (clock) festgelegt wird. Die Anzahl der Taktimpulse pro Sekunde, die der Taktgeber abgibt, ist im physikalischen Sinne eine
Frequenz und wird deshalb in Hertz angegeben. Bei modernen Prozessoren liegt diese Frequenz im GigahertzBereich.
1 GHz = 1 Milliarde Taktimpulse pro Sekunde = 1.000 MHz
1 MHz = 1 Million Taktimpulse pro Sekunde
Jede Anweisung eines Programms, die von der CPU ausgeführt wird, erfordert eine bestimmte Anzahl von
Taktimpulsen. Je höher die Taktfrequenz ist, desto schneller können einzelne Programmanweisungen bearbeitet werden. Eine Aufgabe, die von einer CPU mit 1 GHz in 30 Sekunden ausgeführt wird, kann theoretisch
auf einer vergleichbaren 2-GHz-CPU in 15 Sekunden ablaufen. Ein doppelt so hoher Takt bedeutet hier tatsächlich doppelte Geschwindigkeit. Für den Leistungsvergleich von CPUs der gleichen Familie und Generation
eines Herstellers kann also die Taktrate als Leistungsmerkmal herangezogen werden.
22
© HERDT-Verlag
3
Prozessor
Bei einem Prozessorkern stimmt diese Theorie mit der Praxis auch recht gut überein, bei Prozessoren mit
mehr als einem Kern wird es allerdings schwieriger. Damit eine Aufgabe mit mehr als einem Prozessorkern
schneller abgearbeitet werden kann, muss diese Aufgabe in Teilaufgaben (Threads) zerlegbar sein, die nun
gleichzeitig von den Prozessorkernen bearbeitet werden. Selbst in diesem Fall sind zwei Kerne niemals genau
doppelt so schnell wie einer, da nicht alle Aufgaben parallelisierbar sind und ein beträchtlicher Verwaltungsaufwand entsteht.
In der Praxis sorgt der technische Fortschritt durch Verbesserungen in der Prozessorarchitektur dafür, dass bei
manchen Aufgaben eine Doppelkern-CPU sogar mehr als doppelt so schnell ist wie eine (ältere) Einkern-CPU
bei gleichem Takt. Auf Multi-Threading und Multicore-Prozessoren wird später noch eingegangen.
Die Taktfrequenz wird oft mit der "Geschwindigkeit" einer CPU gleichgesetzt und als ausschlaggebender
Faktor beim Prozessor- oder Computerkauf missbraucht: höhere Taktfrequenz = höhere Leistung. Dieser
Vergleich ist aber grob vereinfachend und so wenig aussagekräftig wie der Vergleich von maximalen Motordrehzahlen verschiedener Automodelle. Die tatsächliche Leistung einer CPU hängt unter anderem auch
davon ab, wie viele Befehle je Taktzyklus gleichzeitig verarbeitet werden können, wie viele Prozessorkerne
vorhanden sind, wie schnell die Anbindung an den Speicher und wie groß der Cache ist. Hier gibt es deutliche
Unterschiede zwischen verschiedenen Herstellern und Prozessorarchitekturen, die an der Taktfrequenz nicht
erkennbar sind. Leider sind all diese Informationen aus der CPU-Bezeichnung oft gar nicht ersichtlich.
Moderne Computersysteme verfügen über einen variablen Taktgeber, der im Chipsatz der Hauptplatine
enthalten ist und zur Steuerung der Hauptplatinengeschwindigkeit und der Geschwindigkeit der CPU dient.
Zu Zeiten des Intel Pentiums leiteten sich noch sämtliche Taktfrequenzen im System aus einem einzigen
Taktsignal ab, bei Prozessoren wie dem AMD Phenom oder der Core-i-Reihe von Intel können die Geschwindigkeiten unabhängig voneinander eingestellt werden.
Die Prozessoren tauschen ihre Daten zwar mit der Taktgeschwindigkeit der Hauptplatine aus, können intern
jedoch mit einem Vielfachen dessen rechnen. Der variable Taktgeber wird auf die benötigte Taktgeschwindigkeit der Hauptplatine eingestellt. Bei älteren Prozessoren ist dies der Front-Side-Bus-Takt (FSB), bei neueren Prozessoren mit integriertem Speichercontroller übernimmt diese Rolle ein Referenztakt oder Systemtakt.
Die interne Rechengeschwindigkeit des Prozessors ergibt sich dann aus diesem Takt multipliziert mit einem
halb- oder ganzzahligen Multiplikator. Dieser Multiplikator wurde früher ebenfalls auf der Hauptplatine
eingestellt, ist bei modernen Prozessoren meist von außen nicht mehr zu steuern oder fest vom Hersteller des
Prozessors vorgegeben. Ausnahmen bilden die Spitzenmodelle beider Hersteller, die als Extreme Edition oder
Black Edition gehandelt werden. Hier ist der Multiplikator frei wählbar. Neuere Techniken erlauben dem
Prozessor sowohl das automatische Absenken des Multiplikators zum Energiesparen (bei AMD Cool'n'Quiet,
Intel SpeedStep) als auch das automatische Heraufsetzen, falls bei mehreren Kernen nur einer beschäftigt ist
(Intels Turbo Boost und AMDs Turbo Core)
Einige Beispiele zur Berechnung der Taktfrequenz bei Prozessoren
Prozessor
interne CPUTaktfrequenz
Multiplikator
FSB-Takt/
Referenz-/
Systemtakt
Taktfrequenz des Mainboards
Intel Pentium 4 2,8
1 x 2,8 GHz
21
133 MHz FSB
533 MHz (FSB 133 MHz x 4)
Intel Core 2 Quad Q9550
4 x 2,83 GHz
8,5
333 MHz FSB
1,33 GHz (FSB 333 MHz x 4)
Intel Core i5 2500K
4 x 3,3 (3,7) GHz 33 (37)
100 MHz System
QPI 2,4 GHz
AMD Phenom X3 8600
3 x 2,3 GHz
11,5
200 MHz Referenz
HyperTransport 1,8 GHz
AMD Phenom II X6 1100T 6 x 3,3 (3,7) GHz 16,5
200 MHz Referenz
HyperTransport 2 GHz
(effektiver Systemtakt oder
HyperTransport- bzw. QPI-Takt)
Die Leistungsfähigkeit der Prozessoren messen
Benchmarks
Benchmarking (Benchmark = engl. Maßstab) von Hardware bedeutet die Messung der Leistungsfähigkeit der
einzelnen Komponenten. Dabei werden die zu vergleichenden Komponenten nacheinander in denselben
Computer eingebaut und mit verschiedenen Benchmark-Programmen getestet. Im Testcomputer sind hochwertige, schnelle Geräte verbaut, um die Leistungsfähigkeit der zu testenden Hardware nicht einzuschränken.
© HERDT-Verlag
23
3
PC-Technik - Grundlagen
Um eine möglichst schnelle Aussage über die Leistungsfähigkeit zu gewinnen, werden in erster Linie synthetische Benchmark-Programme wie 3dMark für Spiele-Performance oder PCMark für die Gesamtleistung
genutzt. Sie können aber auch mit Ihren bevorzugten Anwendungen die Zeit messen, die ein Testsystem
benötigt, um eine große Datei bzw. ein Video zu komprimieren oder eine Grafik zu rendern. So kann für
spezielle Ansprüche das richtige System ermittelt werden. Zahlreiche Software ist besonders gut für CPUs
eines bestimmten Herstellers optimiert und so kann ein Prozessor für einen bestimmten Aufgabenbereich am
besten geeignet sein, der bei den üblichen Benchmarks nicht an der Spitze steht. Weitere Faktoren neben der
puren Rechenleistung sind auch: Anschaffungskosten für das Gesamtsystem, Energieverbrauch/Abwärme,
Zukunftssicherheit sowie Garantieleistungen und Herstellersupport.
Passmark
Den kommerziellen Performance Test von Passmark gibt es auch in einer 30-Tage-Testversion. Er eignet sich
gut zur schnellen Einschätzung der Leistungsfähigkeit und besonders zum Vergleich mit zahlreichen, auch
älteren Systemen. Im weiteren Verlauf des Kapitels finden Sie eine Vergleichstabelle mit Prozessoren der letzten Jahre, die auch die Ergebnisse des Passmark-Performance-Tests enthält (http://www.cpubenchmark.net/).
SiSoftware Sandra
Die kommerzielle Informations- und Diagnosesoftware Sandra von SiSoftware gibt es auch in einer kostenlosen Lite-Version. Sie gibt detaillierte Informationen zur Hard- und Software und enthält auch mehrere
Benchmarks (http://www.sisoftware.net/).
MIPS
Diese Kenngröße steht für die Abkürzung Millions of Instructions per Second (Millionen Anweisungen
pro Sekunde) und gibt an, wie viele Programmanweisungen eine CPU pro Sekunde bearbeiten kann. MIPS ist
ein wesentlich aussagekräftigeres Leistungsmerkmal als die Taktfrequenz, zur genauen Leistungseinstufung
jedoch nur bedingt geeignet. Gebräuchlich ist inzwischen auch die Angabe in GIPS (Giga-IPS, also Milliarden
Anweisungen).
GFLOPS
Gemessen werden hierbei die Giga Floating-Point Operations per Second (Milliarden Gleitkomma-Operationen pro Sekunde). Vor 20 Jahren waren es noch MFLOPS (Millionen Operationen). Gleitkomma-Operationen spielen für die Leistungsfähigkeit bei mathematisch-physikalischen Berechnungen eine wesentliche Rolle.
Prozessorkomponenten und Befehle
CISC
CISC ist die Abkürzung für Complex Instruction Set Computing und bezieht sich auf die Anzahl verschiedener Befehle, die ein Prozessor versteht. Dies ist ein wichtiges Merkmal der Prozessor-Architektur. CISCProzessoren verfügen über einen umfangreichen Befehlssatz, mit dem auch komplexe Operationen eines
Programms durch Aufruf eines einzelnen Befehls ausgeführt werden können. Dabei können die Befehle eine
unterschiedliche Länge haben und werden als Mikrocode während der Ausführung im Prozessor interpretiert.
Die x86-kompatiblen CPUs (also die CPU im PC und seit 2006 im Mac) sind der Hauptvertreter der CISC-Architektur.
RISC
RISC steht für Reduced Instruction Set Computing. RISC-Prozessoren verfügen über einen eingeschränkten
Befehlssatz, können diese Befehle aber meist vollständig in einem Taktzyklus ausführen. Umfangreichere
Befehle werden vor der Bearbeitung in mehrere einfache Teile mit fester Länge zerlegt und nacheinander
verarbeitet. Die Befehle sind sehr einfach und im Prozessor fest verdrahtet. Mikrocode gibt es nicht; dafür
verfügen RISC-Prozessoren über viele Register, die sehr schnelle Verschiebeoperationen und Zugriffe erlauben. Entsprechende Programmierung vorausgesetzt, können RISC-Prozessoren eine Leistung erreichen, die
deutlich über derjenigen vergleichbarer CISC-Prozessoren liegt. Zur RISC-Architektur zählen z. B. die POWERProzessorfamilie von IBM, der SPARC von Sun (Oracle) bzw. Fujitsu und schließlich die ARM-Familie, die in
zahlreichen Handys und MP3-Playern zu finden ist.
24
© HERDT-Verlag
Prozessor
3
Verschmelzung von RISC und CISC
Bei modernen x86-Prozessoren gibt es keine klare Trennung mehr zwischen RISC und CISC, denn alle Prozessoren enthalten Elemente aus beiden Welten. Die Anzahl der Register ist kontinuierlich erhöht worden wie
bei RISC, außerdem werden komplexe Befehle während der Laufzeit in RISC-Befehle übersetzt. Mikrocode
wird kaum noch verwendet. Im Gegenzug wurde auch der Befehlssatz der Prozessoren mit RISC-Wurzeln
stetig komplexer.
Inzwischen setzen sämtliche x86-CPUs alle komplexeren Befehle intern in RISC-Befehle um und haben sich
damit dieser Architektur stark angenähert. Auf der anderen Seite sind x86-CPUs durch das Hinzufügen
zahlreicher neuer Befehlssatzerweiterungen wie MMX und SSE heute komplexer und damit weiter vom RISCIdeal entfernt als jemals zuvor.
Letzten Endes ist der Unterschied zwischen RISC und CISC im neuen Jahrtausend ziemlich belanglos geworden. Viel aussagekräftiger ist die Unterscheidung x86-kompatibel oder nicht.
Pipelining
Die Befehlsausführung in einer CPU kann in mehrere Abschnitte unterteilt werden:
D
D
D
D
D
Ein Befehl wird geladen.
Der Befehl wird decodiert.
Die erforderlichen Daten (Operanden) werden geladen.
Die im Befehl beschriebene Operation wird ausgeführt.
Die Ergebnisse werden zurückgespeichert.
Jeder dieser fünf Abschnitte wird in der Von-Neumann-Architektur nacheinander in einem einzelnen Taktzyklus von der CPU ausgeführt. Damit sind im einfachsten Fall für die Ausführung eines kompletten Befehls
fünf Taktzyklen erforderlich.
Das Pipelining stellt demgegenüber in der CPU Funktionseinheiten bereit, die jeden der einzelnen Abschnitte
unabhängig voneinander bearbeiten. Wird ein Befehl im ersten Taktzyklus von einer Funktionseinheit geladen, wird er im nächsten Taktzyklus von der zweiten Funktionseinheit decodiert. Die erste Funktionseinheit
kann parallel dazu bereits den nächsten Befehl laden usw. Insgesamt entsteht so nach dem Prinzip der Eimerkette ein System, bei dem jede Funktionseinheit in jedem Taktzyklus ihre Aufgabe erledigt und nicht mehr
auf die Ausführung der übrigen Abschnitte warten muss. Die Befehlsverarbeitung ist so erheblich effektiver,
allerdings wird nach wie vor je Taktzyklus nur ein Befehl von der CPU geladen.
64-Bit-Prozessoren
2003 führte AMD mit den Athlon-64-Prozessoren die 64-Bit-Technologie (AMD64) im Desktop-Bereich ein. Im
Gegensatz zu "echten" 64-Bit-Prozessoren (Sun UltraSPARC-, IBM-Power-, Alpha- und Intel-Itanium-Prozessor)
arbeitet der Athlon 64 intern mit einem 32-Bit-Prozessor, dessen Register im 64-Bit-Modus adressiert werden
können. Daher ist der Prozessor uneingeschränkt zu heutiger 32-Bit- und sogar alter 16-Bit-Software abwärtskompatibel. Aufgrund des Markterfolges der AMD64-Prozessoren zog Intel ab 2004 mit dem Befehlssatz
Intel64 (früher EM64T) nach. Moderne Prozessoren ab dem Pentium 4 (Prescott) sind dank Intel64 ebenfalls in
der Lage, 64-Bit-Befehle zu verarbeiten.
D
D
64-Bit-Desktop: UNIX, Linux, alle Windows-Generationen seit XP Professional 64 Bit
64-Bit-Server: viele Linux-Distributionen, Windows 2003 Server, 2008 Server und Small Business Server
2008 und Nachfolger, Windows Home Server 2011
Grundsätzlich werden beim Einsatz von 64-Bit-Betriebssystemen entsprechende 64-Bit-Treiber benötigt. Dies
ist besonders beim Einsatz älterer Hardware und Peripherie problematisch.
© HERDT-Verlag
25
3
PC-Technik - Grundlagen
Superskalare Architektur
Eine CPU mit superskalarer Architektur kann je Taktzyklus mehrere Befehle entgegennehmen. Dazu wird die
Anzahl der Funktionseinheiten erhöht. Superskalare Prozessoren besitzen die Hardware für jeden Abschnitt
der Verarbeitung mehrmals. Wird beispielsweise die Anzahl der Funktionseinheiten vervierfacht, können vier
Befehle gleichzeitig von der CPU verarbeitet werden. Moderne PC-Prozessoren verwenden meistens eine
Kombination aus Pipelining und superskalarer Architektur.
Hyper-Threading
Intel führte 2002 die Hyper-Threading-Technologie ein (HTT). Dabei wird dem Betriebssystem vorgegaukelt,
dass es sich bei einem Prozessorkern um zwei Kerne handelt. Mit dieser Prozessorerweiterung ist es dem
Prozessor möglich, mehrere Arbeitsschritte (Threads) gleichzeitig abzuarbeiten, sofern die Software dies
unterstützt. Bei gleichem Takt werden so die Prozessorressourcen besser ausgenutzt und die Leistung des
Computers kann gesteigert werden. Folgende Systeme unterstützen derzeit Hyper-Threading:
D
Intel Pentium-4 mit HT-Erweiterung (ab 3 GHz), Intel-Atom sowie zahlreiche Core i5, Core i7 und
neuere Intel-Xeon-Serverprozessoren
D
Zahlreiche AMD-Prozessoren ab dem Athlon 64 X2 und AMD Opteron melden zwar dem Betriebssystem die Fähigkeit zum Hyper-Threading, dies ist aber nicht der Fall. Allerdings arbeitet auch AMD
an einem ähnlichen Verfahren wie HTT.
D
Betriebssysteme mit Hyper-Threading-Unterstützung sind Linux, Windows XP und alle Nachfolger
sowie Windows Server 2003 und alle Nachfolger.
Multi-Threading
Früher verfügte jeder Prozessor nur über einen Kern und konnte jeweils nur einen Prozess (Thread) zum
Zeitpunkt X bearbeiten. Wenn jedoch im System mehrere Prozessoren/Prozessorkerne vorhanden sind oder
ein Prozessor mehrere Threads (Prozesse) gleichzeitig verarbeiten kann, wird dies als Multi-Threading bezeichnet. Entsprechend angepasste Programme (Bild-, Videobearbeitung und PC-Spiele) laufen als parallele
Prozesse ab, was die Verarbeitungsgeschwindigkeit erhöht. Seit Windows XP unterstützen die MicrosoftBetriebssysteme Multi-Threading und den Betrieb mit mehr als einem Prozessorkern.
Da der Trend zu immer mehr Prozessoren und vor allem Prozessorkernen geht, ist es zunehmend wichtiger,
die Abläufe in einer Software so weit wie möglich zu parallelisieren, um das Potenzial der Multicore-CPUs
auszuschöpfen.
Multicore-Prozessoren
Als Multicore-Prozessor bezeichnet man eine CPU, bei der zwei oder mehr Prozessorkerne in einem
Prozessorgehäuse vereint sind. Entsprechend angepasste Programme (Bild- und Videobearbeitung sowie
Computerspiele) laufen als parallele Prozesse ab, was die Verarbeitungsgeschwindigkeit erhöht.
Die Entwicklung dieser Bauart kann die Rechenleistung steigern, ohne die produzierte Abwärme und den
Stromverbrauch wesentlich zu erhöhen. Heute verfügen so gut wie alle Prozessoren auf dem Markt über
mehr als einen Kern.
Cache
Die CPU ist mit schnellen Zwischenspeichern versehen, in denen häufig verwendete Daten (Data Cache) und
Befehle (Code Cache) abgelegt werden können. Ein Cache kann mit höheren Taktraten angesprochen werden
als der externe Arbeitsspeicher. "Cache" bedeutet 'Versteck', und zwar wird der langsame Hauptspeicher vor
dem Prozessor versteckt. So lassen sich die Zugriffszeiten auf benötigte Daten deutlich reduzieren und die
CPU wird für bestimmte Anwendungen leistungsfähiger. Die erzielbare Leistungssteigerung hängt unter
anderem von der Größe dieses Caches, der Busbreite und der Taktrate ab, mit der er angesprochen wird.
Verschiedene Prozessorfamilien verfügen über unterschiedlich leistungsfähigen Cache.
26
© HERDT-Verlag
3
Prozessor
Der Cache besteht meist aus mehreren Ebenen. Ein kleiner Level-1-Cache ist auf dem CPU-Chip selbst untergebracht (on-die) und erlaubt maximale Zugriffsgeschwindigkeiten. Ein deutlich größerer Level-2-Cache
kann entweder on-die oder im Prozessorgehäuse angeordnet sein. Bei modernen Multicore-Prozessoren gibt
es für jeden Kern eigene L1- und L2-Caches. Die Topmodelle von Intel und AMD besitzen außerdem einen von
allen Kernen gemeinsam genutzten großen Level-3-Cache, der sich ebenfalls on-die befindet. Vor allem der
große L3-Cache sorgt für die enormen Transistorzahlen heutiger CPUs von mehr als 1 Milliarde.
Die folgende Tabelle zeigt die Entwicklung der Cache-Größen bei Intel-Prozessoren für Desktop und Server.
Prozessor
Kerne
L1 (pro Kern) L2
L3
(gemeinsam)
Intel Pentium (P54)
Desktop
1
16 kB
extern
-
Intel Pentium 4 (Prescott)
Desktop
1
12 kB + 16 kB
1 MB
-
Intel Core 2 Duo (Conroe)
Desktop
2
32 kB + 32 kB
4 MB gemeinsam
-
Intel Core i7 (Bloomfield)
Desktop
4
32 kB + 32 kB
256 kB pro Kern
8 MB
Intel Xeon E7 (Westmere-EX)
Server
10
48 kB
256 kB pro Kern
30 MB
Systemleistungsvergleich
Die folgende Tabelle zeigt eine Auswahl an Prozessoren der letzten Jahre und ihre wichtigsten Daten.
Um die Leistungsfähigkeit direkt vergleichen zu können, wurde der Passmark ausgewählt.
Prozessor
Kerne Sockel Takt
FSB
(virt.)
[GHz] MHz
(eff.)
Multi max. max. max. TransisVolt TDP
Temp toren/
Watt °C
Größe
Herst.- PassProz.
mark
seit
Pentium 4 2,8
GHz
1
478
2,8
200
(800)
14
1,5
70
75 °C
55 Mio.
131 mm²
130 nm 420
Aug.
2002
Pentium 4 672 1 (2)
775
3,8
200
(800)
19
1,4
115
71 °C
169 Mio.
135 mm²
90 nm
640
Nov.
2005
Intel Pentium
D950
2
775
3,4
200
(800)
17
1,3
130
69 °C
376 Mio.
280 mm²
65 nm
931
Dez.
2005
Intel Core 2
Duo 8400
2
775
3,0
333
9
(1.333)
1,36
65
72 °C
420 Mio.
107 mm²
45 nm
2251
Jan.
2008
Intel Atom
330
2 (4)
437
1,6
133
(533)
1,16
8
85 °C
94 Mio.
26 mm²
x2
45 nm
661
Juni
2008
Intel Core 2
Quad Q9650
4
775
3,0
333
9
(1.333)
1,36
95
71 °C
820 Mio.
214 mm²
45 nm
4.623
Jan.
2008
Intel Core i7
920
4 (8)
1366
2,66
(2,93)
133
(-)
20
(22)
1,38
130
68 °C
731 Mio.
263 mm²
32 nm
5.564
Nov.
2008
Intel Core i5
2500K
4
1155
3,3
(3,7)
100
(-)
33
(37)
1,38
65
69 °C
995 Mio.
216 mm²
32 nm
7.263
Jan.
2011
Intel Core i7
995X
6 (12)
1366
3,6
(3,85)
133
(-)
27
(29)
1,38
130
68 °C
1.170 Mio. 32 nm
248 mm²
AMD Athlon
XP 3200+
1
462
2,2
200
11
1,6
77
85 °C
55 Mio.
101 mm²
130 nm 499
Mai
2003
AMD Athlon
64 4000+
1
939
2,4
200
12
(1.000)
1,5
89
71 °C
114 Mio.
90 nm
655
Mai
2005
AMD Athlon
64 X2 6000+
2
AM2
3,0
200
15
(1.000)
1,35
125
65 °C
227 Mio.
90 nm
1646
Feb.
2007
AMD Phenom
X4 9600
4
AM2+
2,3
200
11,5
(1.600)
1,25
95
64 °C
463 Mio.
65 nm
2328
Dez.
2007
© HERDT-Verlag
12
10.945 März
2010
27
3
PC-Technik - Grundlagen
Prozessor
Kerne Sockel Takt
FSB
(virt.)
[GHz] MHz
(eff.)
Multi max. max. max. TransisVolt TDP
Temp toren/
Watt °C
Größe
Herst.- PassProz.
mark
seit
AMD Phenom
II X4 965
4
AM3
3,4
200
17
(2.000)
1,4
125
62 °C
758 Mio.
45 nm
4280
Aug.
2009
AMD Phenom
II X6 1100T
6
AM3
3,3
200
16,5
(2.000)
1,4
125
62 °C
904 Mio.
45 nm
6618
Dez.
2010
AMD A8-3850
4
FM1
2,9
100
29
(2.000)
1,4
100
-
1.450 Mio. 32 nm
228 mm²
6173
Feb.
2011
Intel Core i5
2520M
2 (4)
1023
2,5
(3,2)
100
(-)
25
(32)
1,4
35
100 °C 624 Mio.
149 mm²
32 nm
3619
Feb.
2011
Intel Core i7
2920XM
4 (8)
988
2,5
(3,5)
100
(-)
25
(35)
1,4
55
100 °C 995 Mio.
216 mm²
32 nm
7662
Jan.
2011
AMD Phenom
II N970
4
S1g4
2,2
200
11
(1.800)
?
35
100 °C 234 Mio.
117 mm²
45 nm
2758
Jan.
2011
AMD A83530MX
4
FS1
1,9
(2,6)
200
9,5
(2.000) (13)
1,45
45
100 °C 1.450 Mio. 32 nm
228 mm²
4527
Mai
2011
Übersichten über aktuelle Prozessorleistungen finden Sie im Internet auf den Homepages der Prozessorhersteller oder EDV-Zeitschriftenverlage:
D
D
D
D
http://www.intel.com/deutsch/
http://www.amd.com/de-de/
http://www.pc-erfahrung.de/prozessor/cpu-prozessortabelle.html
http://www.tomshardware.com/de/charts/prozessoren,6.html
Ein Programm zum Auslesen der Informationen aus einem Prozessor steht z. B. unter http://www.cpu-z.de/.
3.3
Betriebsmodi des Prozessors
Allgemeines zu den Prozessor-Betriebsmodi
Seit der Entwicklung des 80286-Prozessors bieten die neueren Prozessortypen wesentlich mehr Möglichkeiten, als in der Regel genutzt werden. Eine wesentliche Rolle spielt hierbei das Betriebssystem DOS. DOS
wurde für die 8086/88-CPU entwickelt und verschließt sich bis heute den wesentlichen Möglichkeiten der aktuellen Prozessoren.
Hauptsächlich war bei Intel mit der Vorstellung des 80286-Prozessors daran gedacht worden, in die Welt des
Multitaskings einzusteigen. Die neuen Prozessortypen mussten in der Lage sein, einen 8086/88-Prozessor zu
emulieren. Die Lösung war, die neueren Prozessortypen in verschiedene Betriebsmodi zu schalten.
Der Real (Address) Mode
Ein Prozessor der Klasse 80286 und höher verhält sich im Real
Mode wie eine 8086/88-CPU. Die neueren Prozessoren sind aber
gegenüber der 8086/88-CPU wesentlich leistungsfähiger und
schneller. Für das Betriebssystem DOS macht es aber keinen
Unterschied, ob es mit einem 8086/88 arbeitet oder mit einem
höheren Prozessortyp.
Nach dem Bootvorgang arbeitet ein Prozessor der Klasse 80286
und höher stets zuerst im Real Mode. Erst durch einen speziellen
Programmbefehl wird der Prozessor in den erweiterten Modus
(Protected Mode) geschaltet. Dies geschieht bei aktuellen Betriebssystemen schon ganz früh im Bootvorgang. Danach wird der
Real Mode nicht mehr aktiviert.
28
RAM
INTEL
80286/80386
im Real Mode
Max.
1 MB
Der Real Mode
© HERDT-Verlag
3
Prozessor
Die größten Nachteile eines im Real Mode betriebenen Prozessors sind der nicht vorhandene Schutz der
Programme voreinander (s. u.) sowie die Begrenzung des adressierbaren Speichers auf 1 MB, da in diesem
Modus nur 20 Adressleitungen genutzt werden.
Der Protected (Virtual Address) Mode
Die erste neue Betriebsart, die mit dem 80286-Prozessor
möglich wurde, ist der Protected Mode. Der Prozessor kann
durch einen Maschinenbefehl umgeschaltet werden und
verhält sich dann gänzlich anders als im Real Mode. Vergessen sind die 1-MB-RAM-Grenze und die feste Einteilung des
Hauptspeichers.
RAM
Codesegment 2
INTEL
80286/80386
Alle wichtigen Daten können somit irgendwo im zur Verfügung stehenden Hauptspeicher abgelegt werden. Diese Tatsache birgt allerdings gewisse Risiken in sich. Es muss dafür
gesorgt werden, dass die Daten im RAM nicht von einem
anderen Programm plötzlich überschrieben werden. Zu diesem Zweck wurden Schutzmechanismen eingebaut, die dafür sorgen, dass die Daten auch wieder aufgefunden und
vor allem nicht versehentlich überschrieben werden (Protec- Der Protected Mode
tion - Schutz). Der Protected Mode bietet im Einzelnen folgende Schutzmechanismen:
Datensegment 2
Codesegment 1
Datensegment 1
Überwachung mittels Privilegstufen
Die Daten jedes laufenden Programms werden aufgeteilt in einen Bereich für den Programmcode, das Codesegment, und einen Bereich für die zu bearbeitenden Daten, das Datensegment. Diesen Code- bzw. Datensegmenten wird eine Privilegstufe von 0 bis 3 zugeordnet. Je niedriger die Privilegstufe ist, desto geschützter
ist ein Programm bzw. sind dessen Daten.
Sollte ein Programm, dem die Privilegstufe 3 zugeteilt wurde, versuchen, auf ein Segment zuzugreifen, das
durch die Privilegstufe 0 geschützt ist, erkennt der Prozessor eine Fehlersituation und meldet dies über einen
Interrupt dem Betriebssystem. Dieses entscheidet, welche Aktionen erforderlich sind, und beendet in den
meisten Fällen das fehlerhafte Programm.
Speicherbereichsschutz
Der Protected Mode ist für ein Multitasking-Betriebssystem ausgelegt. Demnach muss jedem laufenden Programm ein eigener, privater Speicherbereich zur Verfügung gestellt werden. Will ein Programm auf einen
bestimmten Speicherplatz zugreifen, kann die CPU feststellen, ob dieser Speicherplatz zum privaten Bereich
des Programms gehört.
Ist dies nicht der Fall, wird wiederum über einen Interrupt dem Betriebssystem dieser fehlerhafte Zugriff mitgeteilt und von diesem entsprechend behandelt; und gegebenenfalls wird das fehlerhafte Programm beendet.
Speichersegmentattribute
Verwendet ein Betriebssystem den Prozessor im Protected Mode, können an die Code- und Datensegmente
bestimmte Attribute vergeben werden. Einem Segment kann z. B. das Attribut "nur Lesen" zugeordnet werden. Sollte ein laufendes Programm versuchen, in ein solches "schreibgeschütztes" Segment zu schreiben,
wird wiederum über einen Interrupt die Kontrolle dem Betriebssystem übergeben.
Grundsätzlich erhält jedes Speichersegment ein Attribut, das es als Codesegment oder Datensegment kennzeichnet. Sollte versucht werden, ein Datensegment auszuführen oder ein Codesegment zu verändern, bedeutet dies wiederum eine Verletzung der Schutzmechanismen.
© HERDT-Verlag
29
3
PC-Technik - Grundlagen
Der Virtual Real Mode
Ein weiterer Betriebsmodus für Intel-Prozessoren,
allerdings erst ab der 80386-Reihe, ist der virtuelle Real Mode. Der Trick dabei ist, dass ein
80386-Prozessor in der Lage ist, mehrere 8086/
88-CPUs zu emulieren.
Jetzt kann in jedem dieser virtuellen Real Modes
ein Programm völlig ungestört von anderen ablaufen. Jedem der laufenden Programme wird
vorgegaukelt, dass es seinen eigenen 8086/88Prozessor zur Verfügung hat. Die älteren Windows-Betriebssysteme wie 95, 98 und Me arbeiteten in diesem Modus, wenn sie DOSAnwendungen ausführten.
RAM
INTEL
Virtual Machine 3
80386
im Virtual
Real Mode
Virtual Machine 2
Virtual Machine 1
z. B.: Windows 98
Der Anwender konnte nun mehrere Programme
starten und über vordefinierte TastenkombinaDer Virtual Real Mode
tionen zwischen den Tasks wechseln. Er konnte
dann immer die Anwendung in dem Zustand vorfinden, in dem er sie verlassen hatte.
Heutige Betriebssysteme unterstützen diesen
Modus nicht mehr, man kann ihn jedoch durch
virtuelle DOS-Maschinen per Software emulieren.
3.4
Aktuelle Prozessoren
Intel-Prozessoren für den Desktop-PC
Intel Pentium 4
Der Pentium 4 von Intel bietet als Einkern-CPU ausreichend Leistung für Büroarbeiten
und das Internet. Er war von 2000 bis 2006 mit Taktfrequenzen von 1.300 - 3.800 GHz
erhältlich.
In einigen Modellen wurde das Hyper-Threading eingeführt, das einen virtuellen zweiten Prozessorkern bereitstellte. Parallel laufende oder gut angepasste Software lief
damit um einiges schneller.
Die Prozessoren waren für die Sockel 428, 478 und Sockel T (775) verfügbar.
Intel Pentium 4
Im Bild kann man den silbernen Heatspreader sehen, der den empfindlichen Prozessor
schützt und die Abwärme auf eine größere Fläche ableitet. Moderne Prozessoren
verfügen alle über einen Heatspreader und sehen daher alle fast gleich aus.
Intel Celeron D
Der Celeron D von Intel ist eine abgespeckte Ausführung des Pentium 4. Er bietet ausreichend Leistung für
Büroarbeiten und das Internet. Er war von 2004 bis 2007 mit Taktfrequenzen von 2.133 - 3.333 GHz erhältlich.
Bei gleicher Taktfrequenz war der Celeron stets langsamer als der P4.
Die Prozessoren waren für die Sockel 478 und Sockel T (775) verfügbar.
30
© HERDT-Verlag
Impressum
Matchcode: PCT
Autoren: Michael Kuhrts, Christoph Volkmann
Redaktion: Martin Dausch, Andrea Weikert
Produziert im HERDT-Digitaldruck
5. Ausgabe, September 2011
HERDT-Verlag für Bildungsmedien GmbH
Am Kümmerling 21-25
55294 Bodenheim
Internet: www.herdt.com
E-Mail: info@herdt.com
© HERDT-Verlag für Bildungsmedien GmbH, Bodenheim
Alle Rechte vorbehalten. Kein Teil des Werkes darf in irgendeiner Form (Druck, Fotokopie, Mikrofilm oder einem
anderen Verfahren) ohne schriftliche Genehmigung des Verlags reproduziert oder unter Verwendung elektronischer Systeme verarbeitet, vervielfältigt oder verbreitet werden.
Dieses Buch wurde mit großer Sorgfalt erstellt und geprüft. Trotzdem können Fehler nicht vollkommen ausgeschlossen werden. Verlag, Herausgeber und Autoren können für fehlerhafte Angaben und deren Folgen weder
eine juristische Verantwortung noch irgendeine Haftung übernehmen.
Wenn nicht explizit an anderer Stelle des Werkes aufgeführt, liegen die Copyrights an allen Screenshots beim
HERDT-Verlag. Sollte es trotz intensiver Recherche nicht gelungen sein, alle weiteren Rechteinhaber der verwendeten Quellen und Abbildungen zu finden, bitten wir um kurze Nachricht an die Redaktion.
Die in diesem Buch und in den abgebildeten bzw. zum Download angebotenen Dateien genannten Personen und
Organisationen, Adress- und Telekommunikationsangaben, Bankverbindungen etc. sind frei erfunden. Eventuelle
Übereinstimmungen oder Ähnlichkeiten sind unbeabsichtigt und rein zufällig.
Die Bildungsmedien des HERDT-Verlags enthalten Verweise auf Webseiten Dritter. Diese Webseiten unterliegen
der Haftung der jeweiligen Betreiber, wir haben keinerlei Einfluss auf die Gestaltung und die Inhalte dieser Webseiten. Bei der Bucherstellung haben wir die fremden Inhalte daraufhin überprüft, ob etwaige Rechtsverstöße
bestehen. Zu diesem Zeitpunkt waren keine Rechtsverstöße ersichtlich. Wir werden bei Kenntnis von Rechtsverstößen jedoch umgehend die entsprechenden Internetadressen aus dem Buch entfernen.
Die in den Bildungsmedien des HERDT-Verlags vorhandenen Internetadressen waren zum Zeitpunkt der Erstellung der jeweiligen Produkte gültig. Sollten Sie die Inhalte nicht mehr unter den angegebenen Adressen finden,
sind diese eventuell inzwischen komplett aus dem Internet genommen worden oder unter einer neuen Adresse zu
finden.