Die cpu
Der Prozessor
Die verschiedenen Prozessorbauformen
In der nächsten Tabelle sieht man welcher Prozessor welches Sockel bzw. Slot benötigt und an welchen Merkmalen man es erkennen kann.
Sockelbezeichnung Prozessortyp Merkmale
Sockel 370 Celeron (Sockel-Variante) Der Sockel ist quadratisch und hat 370 Pins. An der linken Seite sind die Ecken ?abgeflacht?.
Sockel A AMD Thunderbird,
AMD Duron,
AMD Athlon XP Der Sockel A ist quadratisch und hat 462 Pins. An der oberen Seite sind die Ecken ?abgeflacht?.
Vereinzelnd sind bei den Löchern ein Zwischenraum.
Sockel 423 Pentium IV Der Sockel ist quadratisch und hat 423 Pins. Keine der Ecken sind ?abgeflacht?1
Slot 1 Pentium II,
Pentium III Der Slot 1 wird wie eine Steckkarte auf das Motherboard gesteckt. Er ist länglich. 1
Funktionsweise der CPU
Das alles was die CPU macht, kann man in 4 Schritten unterteilen: Holphase, Dekodierphase, Ausführungsphase und Schreibphase.
1) Fetch (Holphase): Aus dem Speicher evt.
in eines der Register geladen werden. Falls die gesuchte Information sich nicht im L1-Cache befindet, muss die Busschnittstelle dafür den Speicher ansprechen.
2) Decode (Dekodierphase): Die CU schaut sich den Befehl genauer, um die Arbeitschritte, die die ALU auszuführen hat, zuklären. Sie entscheidet, welche Operationen (logische Verknüpfung, Addition, Subtraktion, usw.) das Rechenwerk machen muss. Werden noch Operanten (Daten) für den Befehl benötigt, so befehligt das Steuerwerk das Adresswerk die Position der Information zu ermitteln.
3) Execute (Ausführungsphase): Das Steuerwerk wird von der ALU angewiesen, die Operation mit den geladenen Informationen auszuführen.
4) Write Back (Schreibphase): Das Ergebnis der Operation wird in einem der Register oder im Speicher gespeichert. Dies hängt vom Befehl ab. Die CPU sammelt die Daten im L1-Cache, damit sie zu einem spätern Zeitpunkt in einem schnellen Blockschreibvorgang auf das externe RAM übertragen werden können.
Aufgaben der einzelnen Funktionsblöcken auf der CPU
Die Steuereinheit (CU) ist die Kommandozentrale der CPU. Sie steuert alle Vorgänge im Inneren des Prozessors sowie seine Kommunikation nach außen.
Der Befehlszähler sucht und markiert den nächsten Befehl. Die CU holt sich diesen markierten Befehl aus dem Arbeitsspeicher/Cache und speichert ihn in einem Register zwischen, somit der CPU-Bus frei für weiter Aktionen wird. Die CU schaut sich dann im Befehlsdecoder die einzelne Bits des Kommandos genauer an. Der weitere logische und zeitliche Ablauf bei der Durchführung der Befehle ergibt sich aus einen Teil der gesammelten Informationen.
Sind darunter fest implementierte Befehle, so werden sofort die entsprechenden Schritte eingeleitet. Bei komplexeren Kommandos werden die Adresse der zugehörigen
Steuerinformation im Microcode-ROM ermittelt.
Die Ablaufsteuerung beginnt, wenn alle Informationen gesammelt sind, damit, das System zu koordinieren. Die Operanden für die Rechenbefehle werden von der BIU in die Register geladen.
Das Rechenwerk (ALU) ist für die Rechenarbeit in der CPU verantwortlich. Die ALU wird vom CU gesteuert. Das Rechenwerk holt sich dann, auf Anweisung, die beiden Operanden aus dem Registersatz. Diese werden zunächst im Hilfsregister zwischengepuffert, damit sie während der ganzen Rechenoperation stabil anliegen.
Danach wird die von der CU geforderten Rechenoperation ausgeführt. Im Ergebnisregister wir das Resultat zwischengepuffert. Jetzt kann sich die ALU der nächsten Aufgabe zuwenden. Im Statusregister landen ggf. noch Zusatzinformationen.
Die Berechnung der Adressen übernimmt die Adresseinheit (AU).
Dies war nicht immer so, bei den ersten Prozessoren über nahm die ALU diese Aufgaben. Die AU ist darauf spezialisiert und sie arbeitet vor allen parallel zur ALU.
Die Busschnittstelle (BIU) ist die Verbindung zwischen den internen Busse des Prozessors mit der Außenwelt. Die BIU enthält Puffer zur Zwischenspeicherung von Steuersignal, Daten und Adressen. Die BIU sorgt auch für eine Pegelanpassung zwischen dem externen Bussystem und dem CPU-Kern.
Der Cache
Der Cache Memory ist ein High Speed Speicher, der Daten, die der Prozessor häufig benötigt, zwischenspeichert.
Der CPU kann auf gespeicherte Daten, die im Cache gespeichert sind, rascher zugreifen als auf Befehlssätze und Daten im Hauptspeicher. Die Speicherkapazität des Cache hat direkte Auswirkungen auf der Performance des Rechners.
Da der L1-Cache im Prozessorkern sitzt, kann dieser mit dem Prozessortakt arbeiten. Dies wäre nicht möglich wenn er extern auf dem Motherboard säße, da er sonst mit der Bustaktfrequenz , der wesentlich langsamer getaktet ist als der Prozessortakt, arbeiten würde.
L1-Cache L2-Cache
ist auf dem Prozessorchip integriert befindet sich entweder extern auf dem Mainboard oder ebenfalls auf dem Prozessorgehäuse
kann 8 kB bis 32 kB groß sein kann 64 kB bis 512 kB groß sein
kann nicht erweitert werden kann, wenn er extern auf dem Mainboard sitzt, bis zu 1 MB erweitert werden und wenn er sich auf dem Prozessorgehäuse befindet nicht erweitert werden
Die verschiedenen Prozessorarchitekturen
Zurzeit gibt es zwei verschiedene. Einmal wäre da die ?Von-Neumann-Architektur? und zum anderem die Erweiterung durch ein Pipeline-Verfahren.
Der ?Von-Neumann-Rechner? bearbeitet die Befehle sequenziell, d.h. dass Der PC die Befehle oder die Daten, die aus dem Speicher stammen, Schritt für Schritt bearbeitet und das geschieht mit nur einem Prozessor. Obwohl die Daten aus demselben Speicher kommen, gibt es nur eine Bus-Verbindung für Beides dorthin.
Bei ?Von-Neumann-Architektur? werden die Befehle nacheinander bearbeitet. Dies ist beim Pipeline-Verfahren nicht so.
Der BIU wird erlaubt einen Befehl aus dem Speicher zuholen, während die CU gerade noch eine analysiert. Dadurch hat man zwei Arbeitschritte parallelisiert. Dies überträgt man dann auf alle beteiligten Funktionseinheiten und erhöht somit die Anzahl der Teilbearbeitung. Die eingehende Daten und Befehle werden beim Pipeline-Verfahren aber immer noch Schritt für Schritt verarbeitet.4
Benchmarktest
Durch ein Benchmarktest werden die Hard- oder Softwarekomponente mittels eines Testprogramms auf ihre Verarbeitungsgeschwindigkeit getestet. Diese Programme oder deren einzelne Komponenten sind gewöhnlich auf die bestimmte Hardwarekomponenten abgestimmt: die Festplatte, die CPU usw.
Auf ein ist aber zuachten die Ergebnisse verschiedener Benchmarkprogramme sind nicht vergleichbar, sondern nur von den Gleichen.
Hyper- Threading
Ein normaler CPU benutzt nur ca. 35% seiner Gesamtleistung. Damit der Prozessor mehr von seinen Ressourcen nutzt hat Intel das Hyper-Threading entwickelt. Die Multiprocessing-Anwendungen können mehrere Threads pro Prozessor gleichzeitig ausführen. Dies ist durch die Hyper-Threading-Technologie, welche in den neuen Xeon-Prozessoren zu finden ist, möglich.
Per Hyper-Threading sagt der neue Pentium 4 dem Betriebsystem, dass es noch einen zweiter Prozessor gibt. Was das Betriebsystem nicht weiß ist, dass der CPU nur virtuell ist. Ein Thread ist ein kleinster ausführbarer Teil eines Tasks. Ein Task ist ein sehr kleinen Teil eines Programms, dem ein Prozessor auf einmal bearbeiten kann. Ein Prozessor kann sogar Programmbruchstücke zu bearbeiten, die kleiner als Tasks sind. Dies funktioniert nur bis zu einer Untergrenze, die man Thread bezeichnet.
Multiprocessing
Multiprocessing nennt man ein PC, der mit zwei oder mehreren Prozessoren arbeitet. Aber viele denken, dass man dann einen schnelleren Rechner für weniger Geld hat, aber diese Rechnung geht nicht auf. Die erforderlichen Mainboards und Chipsätze für MP (Multiprocessing) sind komplexer und werden nur in wenigen Stückzahlen produziert. Dies für dazu, dass der Systempreis deutlich steigt. Viele Anwendungen laufen bei MP gar nicht schneller, bei manchen sogar langsamer.
Jede CPU hat vollen Zugriff auf die Ressourcen des Systems.
SMP-Systeme können exklusive Ressourcen (z.B. die integrierten Caches der einzelnen CPUs) zu synchronisieren. Die SMP-Unterstützung muss vom Betriebsystem erkannt werden, um sie nutzen zu können (Multitasking o. Multithreading). MP wird von Windows NT 4, Windows 2000 und Windows XP unterstützt.
Die Tasks oder Threads können auf die vorhandene CPUs aufgeteilt werden, aber das funktioniert nur wenn die Anwendung dies unterstützt. Daraus folgt das die Arbeitsgeschwindigkeit steigt.
Programme, bei denen der Aufwand für die Synchronisierung von Daten und Threads größer ist als der Zeitgewinn durch parallele Abarbeitung, sind für Multithreading nicht geeignet. Ein Singlethreaded-Variante wäre schneller, auch wenn mehrere CPUs vorhanden wäre.
Multiprocessing wird oft da eingesetzt, wo man große Datenmengen in unabhängige Segmente aufteilen lassen. z.
B. Statik, Feldberechnung, Strömungsmechanik, Bildbearbeitung, etc. Bei dem Beispiel Bildbearbeitung würde das so aussehen. Das Bild wird in mehreren Teilen aufgeteilt und bearbeitet jeder Prozessor ein Teilstück des Bildes. Wenn die CPUs diese Regionen bearbeitet haben werden die Teilergebnisse wieder zusammen gefügt.
Fazit:
MP lohnt sich nur wenn die Anwendungen, mit denen man arbeiten will, dieses auch unterstützt.
Im Serverbereich gibt es schon sehr viele MP-fähige Anwendungen. Für den Heim PC sind kaum Anwendungen bzw. Spiele draußen die Multiprocessing unterstützen.
Ganz- und Gleitkommazahlen
Eine Ganzzahl (oder eine ganze Zahl) hat keine Nachkommastelle. Ganze Zahlen, die keine Vorzeichen besitzen(?nichtnegative ganze Zahlen?), sind die natürlichen Zahlen: 0, 1, 2, 3, usw..
Ganze Zahlen, die ein Vorzeichen besitzen, können positiv oder negativ sein: 0, +1, ?1, +2, ?2, +3, ?3, u.s.w..
Gleitkommazahlen werden durch einer Größenordnung und einer Zifferfolge dargestellt. Wo in der Zifferfolge das Komma steht, bestimmt die Größenordnung.
Man spricht hier von Gleitkommazahlen, weil sich das Komma je nach der Größenordnung verschiebt.
Gleitkommazahlen mit der Ziffernfolge 15
Größenordnung Wert Größenordnung Wert
-3 0,00015 1 1,5
-2 0,0015 2 15,0
-1 0,015 3 150,0
0 0,15 4 1500,0
Der Nachteil an Gleitkommazahlen ist, dass ganze Zahlen z.B 299887231 würde als Gleitkommazahl mit drei Stellen Genauigkeit durch die Zifferfolge 300, da 299,9 aufgerundet wird, und die Größenordnung Neun dargestellt werden, man würde die Zahl 300000000 dargestellt. Gleitkommazahlen können also sehr große und kleine Zahlen darstellen, aber nicht ganz genau.
Anmerkungen: |
| impressum | datenschutz
© Copyright Artikelpedia.com