1 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000 THEMA Prozessoren.
-
Upload
odelia-stroh -
Category
Documents
-
view
106 -
download
0
Transcript of 1 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000 THEMA Prozessoren.
1 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
THEMA
Prozessoren
2 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Gliederung Gliederung
• Wiederholung• Begriffsdefinitionen
• Weitere Begriffsdefinitionen• Verschiedene Speichermedien• Bus / Bussysteme• Ein-Ausgabe-Prozessor• Mikroprozessoren im Vergleich• Benchmark / OEM• Assembler Befehle
3 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Grundlagen
Wiederholung
• Adressraum• Multiplexing des Daten- und Adressbusses• Pinbelegung der 8086/8088 CPUs• EU / BIU / ALU• Eigenschaften und Aufgaben von EU und BIU• Register / Funktionsgruppen• Statusflags, Kontrollflags
4 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Gliederung Gliederung
• Wiederholung• Begriffsdefinitionen
• Weitere Begriffsdefinitionen• Verschiedene Speichermedien• Bus / Bussysteme• Ein-Ausgabe-Prozessor• Mikroprozessoren im Vergleich• Benchmark / OEM• Assembler Befehle
5 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Grundlagen
Wiederholung
• Aufbau des Zentralprozessors• Zentralprozessor, Leitwerk, Rechenwerk• Bussystem eines Mikrorechners• Prozessor CPU: Rechenwerk, Steuerwerk, Register• Arbeitszyklen: Fetch, Read, Execute, Write• CISC, RISC
6 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Zentralprozessor
Prozessor, Hardwareeinheit für Steuerung undDatenmanipulation.Ein Prozessor besteht mindestens aus:
Leitwerk Rechenwerk, Registern und meistens der Eingabe-/Ausgabe-Steuerung
Wiederholung / Begriffsdefinitionen
7 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Leitwerk
Das Leitwerk nimmt Koordinationsfunktionen für die gesamte EDVA wahr. Es steuert den Ablauf des Befehls-und Datenflusses und bestimmt einen Taktgeber dieProgrammablaufgeschwindigkeit. Es besteht aus logischenSchaltungen und Registern.
Wiederholung / Begriffsdefinitionen
8 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Rechenwerk
Das Rechenwerk, der andere Teil des Zentralprozessors,verknüpft die vom Leitwerk bezeichneten Daten. Hierwerden arithmetische und logische Operationen(Vergleichen, Verschieben, Vorzeichenbestimmung,Umformen, Runden) durchgeführt. Das Rechenwerkarbeitet entweder mit rein dualen Zahlen oder ziffernweisedual codierten Dezimalzahlen. Aus technisch bedingtenVereinfachungsgründen werden in der RegelRechenoperationen in elementare Additionen aufgelöst.
Schaubild nächste Folie
Wiederholung / Begriffsdefinitionen
9 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Aufbau des Zentralprozessors
Befehls-register
Befehls-zähler
Befehls- Operationen-decodierer steuerung
Takt-geber
Status-register
Befehle vom Arbeitsspeicher
Leitwerk Rechenwerk
Daten vom oder zum Arbeitsspeicher
Register(für Operandenu. Ergebnisse)
Akku-mulator
A L U
Befehlsadressenan den Arbeitsspeicher
interne Adressen
Prozessor-
Prozessor- interne Steuer- signale
Steuersignale zu und vonprozessorexternen Einheiten
Wiederholung / Begriffsdefinitionen
10 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Zwei verschiedene CPU-Klassen
• RISC (Reduced Instruction Set Computer) Kleiner Maschinenbefehlsvorrat (ca. 70 - 100). Sehr schnell, da Befehle nur 1-4 Taktzyklen zur Ausführung brauchen.
• CISC (Complex Instruction Set Computer) Großer Vorrat an komplexen Maschinenbefehlen (ca. 150 - 250). Instruktionen können über viele Taktzyklen gehen
Wiederholung / Begriffsdefinitionen
11 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Arbeitszyklen der 8086/8088-Prozessoren
Fetch Ein Maschinenbefehl wird aus dem Arbeitsspeicher in den Prozessor geholt.
(Read) Falls der Maschinenbefehl einen Speicher- operanden benötigt, wird dieser aus dem Arbeitsspeicher eingelesen.
Execute Der Befehl wird ausgeführt.
(Write) Falls ein Ergebnisoperand im Arbeitsspeicher abgelegt werden muss, wird er jetzt in den Arbeitsspeicher geschrieben.
Wiederholung / Begriffsdefinitionen
12 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Zentraleinheit
Zentraleinheit umfasst den oder die
Zentralprozessoren
und den
Arbeitsspeicher.
Alles was nicht zu der Zentraleinheit gehört, bezeichnet man
als Peripherie (periphere Einheit).
Begriffsdefinitionen
13 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Gliederung Gliederung
• Wiederholung• Begriffsdefinitionen
• Weitere Begriffsdefinitionen• Verschiedene Speichermedien• Bus / Bussysteme• Ein-Ausgabe-Prozessor• Mikroprozessoren im Vergleich• Benchmark / OEM• Assembler Befehle
14 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Speichermedien / -arten
• Arbeitsspeicher
• Pufferspeicher
• Registerspeicher
• Mikroprogrammspeicher
• Erweiterungsspeicher
• Magnetplattenspeicher
• Optischer Plattenspeicher
Begriffsdefinitionen
15 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Zentralspeicher
Zentralspeicher sind in der Zentraleinheit befindliche
Speicher, zu denen der bzw. die zentralen Prozessoren und
gegebenenfalls EA-Prozessoren unmittelbar Zugang haben.
Schaubild nächste Folie
Begriffsdefinitionen
16 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Zentralspeicher
ArbeitsspeicherPuffer-speicher
RegisterMikro-programm-speicher
Serviceprozessor
RegisterMikro-programm-speicher
Konsolprozessor
Mikro-programm-speicher
Zentralprozessor
Register____________________________________________
Mikro-programm-speicher
Ein-Ausgabe-Prozessor
Register____________________________________________
Begriffsdefinitionen
17 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Arbeitsspeicher
Im Arbeitsspeicher werden die laufenden Programme unddie von diesem benötigten Daten gehalten. Aus ihmentnimmt der Zentralprozessor beim Programmablaufschrittweise die Befehle und die in den Befehlenadressierten Daten, führt die verlangten Operationen ausund gibt deren Ergebnisse an den Arbeitsspeicher zurück.
Begriffsdefinitionen
18 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Pufferspeicher
Ein Puffer ist ein Speicher, der Daten vorübergehend aufnimmt, die von einer Funktionseinheit zu einer anderen übertragen werden.
Schaubild nächste Folie
Begriffsdefinitionen
19 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Datenfluss beim Lesen im Pufferspeicher und im Arbeitsspeicher
Begriffsdefinitionen
Arbeitsspeicher
Zentralprozessor
0
63
8 Pufferspeicherbänke2 KB
32 Bytes
8 Bytes
20 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Registerspeicher
Register sind Bestandteile des Prozessors. Sie haben jeweils eine beschränkte Kapazität von einem Wort (2Byte) in seltenen Fällen auch von einem Byte. Bei Bedarf können zwei Register zur Speicherung eines Doppelwortes gekoppelt werden. Register kommen an vielen Stellen von EDVA einzeln vor; insgesamt haben sie eine sehr geringe Kapazität. Sie dienen zur kurzzeitigen Speicherung von Angaben, die sofort wieder greifbar sein müssen.
Begriffsdefinitionen
21 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Mikroprogrammspeicher
Die Befehle sind in einem Rechner entweder << fest verdrahtet >>, oder sie werden ausMikroinstruktionen erzeugt, die im Mikroprogrammspeicher zur Verfügung stehen. Die Zugriffszeit liegt bei den leistungsstärkeren Großrechnern im Bereich von unter 10 ns, bei kleineren Rechnern ist sie bis zehnmal so hoch.
Begriffsdefinitionen
22 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Speicherhierarchie
Re-gister
Puffer-speicher
Arbeitsspeicher
Erweiterungsspeicher
Magnetplattenspeicher
Optischer Plattenspeicher
Abn
ehm
ende
Zug
riffs
zeit
Zunehmende K
apazität
abnehmende K
osten pro Bit
Begriffsdefinitionen
23 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Virtuelle Speicherverwaltung
Die virtuelle Speicherverwaltung wird verwendet, um einen
Mangel an realem physischen Arbeitsspeicher auszugleichen.
Es existieren zwei Verfahren:
• Paging• Swapping
Begriffsdefinitionen
24 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Demand Paging
Bei virtuellen Systemen braucht ein Programm eines aktiven
Prozesses nicht vollständig im Hauptspeicher vorzuliegen.
Ein externer Plattenspeicher dient als sogenannter virtueller
Speicher (paging area). Der virtuelle und der physikalische
Speicher werden in Seiten (engl.: pages; 1-4 KB) eingeteilt
und je nach Bedarf (engl.: demand) werden Seiten ein- und
ausgelagert.
25 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Swapping
Ist der Speicherplatz trotz Paging nicht ausreichend, oder
werden zu oft Seiten ein- und ausgelagert, können ganze
Prozesse auf einen externen Speicher (swap area)
ausgelagert werden. Dies wird vom Prozess 0 (swapper)
durchgeführt, der beim Systemstart erzeugt wird.
26 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Virtuelle Speichertechnik
Begriffsdefinitionen
Virtueller Speicher
Seite
Realer Speicher
Ablaufteil undresidente Programme
Seiten-wechsel-bereich
ständig belegter Bereich
Seite
Seiten-wechsel
27 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Gliederung Gliederung
• Wiederholung• Begriffsdefinitionen• Weitere Begriffsdefinitionen
• Verschiedene Speichermedien• Bus / Bussysteme• Ein-Ausgabe-Prozessor• Mikroprozessoren im Vergleich• Benchmark / OEM• Assembler Befehle
28 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Bus
Ein Bus ist ein Verbindungssystem zwischen digitalen Schaltwerken, das von allen angeschlossenen Einheiten (Teilnehmern) gemeinsam genutzt wird.
Begriffsdefinitionen
29 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Bussysteme
Innerhalb der Zentraleinheit unterscheidet man je nach Art der transportierten Informationen den Datenbus, den Adressbus und den Steuerbus. Ein Bus, der Prozessor(en), Arbeitsspeicher und Eingabe-Ausgabe-Schnittstelle verbindet, heißt externer Bus und dient zur Kommunikation der internen Einheiten des Prozessors (zwischen Leitwerk, Rechenwerk und deren Registern).
Schaubild nächste Folie
Begriffsdefinitionen
30 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
_________externer Steuerbus_______________ externer Adressbusexterner Datenbus
Bussystem eines Mikrorechners
Leit-werk
Rechen-werk
Zentralprozessor
prozessorientierter Datenbus
prozessorientierter Steuerbus
prozessorientierter Adressbus
ROM
RAM
E/A- ProzessorKonsolprozessorServiceprozessor
Zusatz-prozessor (en)
Arbeitsspeicher
Treibereinheit /Puffer
Begriffsdefinitionen
31 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Steuereinheit
Begriffsdefinitionen
Die Steuereinheit reglementiert und überwacht den Datentransfer, sie schaltet Komponenten ein und aus und übernimmt teilweise Verarbeitungsfunktionen (z.B. Zwischen-speicherung). Hierzu werden heutzutage regelmäßig Mikroprozessoren verwendet, die mit einem Mikroprogrammspeicher arbeiten. Damit ist eine flexible Anpassung an sich wandelnde Gerätespezifikationen und Anwendungsbedingungen möglich.
32 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Gliederung Gliederung
• Wiederholung• Begriffsdefinitionen• Weitere Begriffsdefinitionen
• Verschiedene Speichermedien• Bus / Bussysteme• Ein-Ausgabe-Prozessor• Mikroprozessoren im Vergleich• Benchmark / OEM• Assembler Befehle
33 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Ein-Ausgabe-Prozessor
Der Ein-Ausgabe-Prozessor ist eine Funktionseinheit innerhalb der Zentraleinheit, die das Übertragen von Daten zwischen den peripheren Einheiten und dem Arbeitsspeicher selbständig steuert und dabei die Daten gegebenenfalls modifiziert.
Schaubild nächste Folie
Begriffsdefinitionen
34 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Ein-Ausgabegeräte
Begriffsdefinitionen
Zentraleinheiten Steuereinheiten Ein-Ausgabegerätebzw. Rechnerverbund
Arbeitsspeicher
Zentral-pro-
zessor
EA-Pro-zes-
soren
Kanäle
Arbeitsspeicher
Zentral-pro-
zessor
EA-Pro-zes-
soren
Kanäle
Verbind-ungs-einheit
Terminalsteuer-einheit
Magnetband-steuereinheit
Magnetplatten-steuereinheit
Optische Platten-steuereinheit
Terminalsteuer-einheit
Verbind-ungs-einheit
Bildschirmgeräte
Magnetbänder
Magnetplattengeräte
Optische Plattengeräte
Drucker
usw.
--------LAN-------
Großrechner
Abteilungsrechner
Arbeitsplatzrechner
35 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Gliederung Gliederung
• Wiederholung• Begriffsdefinitionen• Weitere Begriffsdefinitionen
• Verschiedene Speichermedien• Bus / Bussysteme• Ein-Ausgabe-Prozessor• Mikroprozessoren im Vergleich• Benchmark / OEM• Assembler Befehle
36 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Mikroprozessoren von Intel
Begriffsdefinitionen
Prozessor 8086 8088 80286 80386DX 80386SX 80486DX 80486SX
interne Datenbusbreite
16 16 16 32 32 32 32
externe Datenbusbreite
16 8 16 32 16 32 32
Adreßbusbreite 20 20 24 32 24 32 32
Adreßbereich in MB 1 1 16 4096 16 4096 4096 virtuelle Speicherverwaltung
nein nein ja ja ja ja ja
Multitaskingunter- stützung
nein nein nein ja ja ja ja
internes Datencache nein nein nein nein nein nein nein internes Befehlscache
nein nein nein nein nein 8 KB 8 KB
integrierter Coprozessor
nein nein nein nein nein ja nein
maximale Taktfrequenz in MHz
12 16 25 33 25 50 20
Leistung in Mips < 1 0,66 1,5 8 4 40 12
37 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Mikroprozessoren von Intel
Begriffsdefinitionen
Prozessor Pentium Pentiu Pro Pentium MMX Pentium II
interne Datenbusbreite 64 64 64 64 externe Datenbusbreite 64 64 64 64 Adreßbusbreite 32 64 64 64
Adreßbereich in MB 4000 64000 64000 64000 virtuelle Speicherverwaltung ja ja ja ja Multitaskingunterstützung ja ja ja ja internes Datencache ja ja ja ja
internes Befehlscache ja ja ja ja
integrierter Coprozessor ja ja ja ja maximale Taktfrequenz in MHz 200 200 233 450 Leistung in Mips 110 150 110 366
38 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Gliederung Gliederung
• Wiederholung• Begriffsdefinitionen• Weitere Begriffsdefinitionen
• Verschiedene Speichermedien• Bus / Bussysteme• Ein-Ausgabe-Prozessor• Mikroprozessoren im Vergleich• Benchmark / OEM• Assembler Befehle
39 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Benchmark
Begriffsdefinitionen
Ein Benchmark bzw. Benchmarktest dient zur Leistungs-vermögensanalyse von EDVA. Er besteht aus Programmenim Quellcode, die für die zu vergleichenden Rechnerübersetzt und zur Ausführung gebracht werden. Dabeiwerden die Ausführungszeichen (Durchsatz, Antwortzeit)gemessen und verglichen. Standardbenchmarks sindkünstliche, das heißt real nicht verwendete Programme fürMess- und Beurteilungszwecke von Teilleistungen bzw.Gesamtleistungen von EDVA.
40 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
OEM
Begriffsdefinitionen
OEM Abkürzung für << original equipment manufacturer >>
bzw. << other equipment manufacturer >>. Man versteht darunter einen EDV-Hersteller, der Geräte oderauch Komponenten von anderen EDV-Herstellern beziehtund diese in eigenen Anlagen unter eigenem Namenvertreibt. Meist bietet er dabei einen Zusatznutzen in Formspezieller Software, Firmware oder Hardware; OEMs werdenin diesem Sinne auch als VARs (Abkürzung von engl.: valueadded resellers) bezeichnet.
41 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Das Zeitverhalten
Begriffsdefinitionen
Die Zeit, die der Prozessor braucht, um einen Befehl auszuführen, wird von mehreren Faktoren bestimmt.
1. Der Taktfrequenz2. Der Anzahl der Taktzyklen, die für einen Befehl benötigt
werden3. Der Anzahl der Taktzyklen, die zusätzlich benötigt
werden, um falls erforderlich die effektive Adresse (EA) eines Speicheroperanden zu bilden.
42 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Die Taktfrequenz
Begriffsdefinitionen
Bei 5 MHz beträgt die Zeit für einen Taktzyklus ca. 200 Nanosekunden, bei 8 MHz beträgt sie ca. 125 Nanosekunden. 1 Nanosekunde = 10-9 Sekunden
Der 8088-Prozessor im IBM-PC z. B. arbeitet mit einerTaktfrequenz von 4,77 MHz. Ein Taktzyklus dauert bei diesen PC‘s somit ca. 210 ns
43 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Gliederung Gliederung
• Wiederholung• Begriffsdefinitionen• Weitere Begriffsdefinitionen
• Verschiedene Speichermedien• Bus / Bussysteme• Ein-Ausgabe-Prozessor• Mikroprozessoren im Vergleich• Benchmark / OEM• Assembler Befehle
44 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Beispiel Assemblerbefehle ADD
Begriffsdefinitionen
ADD (Addition), addiert die zwei Operanden und speichertdas Ergebnis im Bestimmungsoperanden (dem linkenOperanden) ab.Erlaubte Operandenpaare sind:
LIOP Akku Reg Sreg Speicher Direktwert
Akku ja ja nein ja ja
Reg ja ja nein ja ja
Sreg nein nein nein nein
Speicher ja ja nein nein ja
REOP
45 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Beispiel Assemblerbefehle ADD
Begriffsdefinitionen
Operationen: Die Summe der beiden Operanden wird imBestimmungsoperand (LIOP) abgelegt.
Flags: O D I T S Z A P CX - -- - X X X X X
(LIOP)(LIOP) + (REOP)
46 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Beispiel Assemblerbefehle ADD
Begriffsdefinitionen
Register nach RegisterMaschinencode:
Zeit: 3 TakteBeispiele:
03 C6 ADD AX,SI03 FB ADD DI,BX02 EB ADD CH,BL02 E0 ADD AH,AL
w = 0 für 8 Bitw = 1 für 16 Bit0000 001w 11regreg
47 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Beispiel Assemblerbefehle ADD
Begriffsdefinitionen
Speicher nach RegisterMaschinencode:
Zeit: 9 Takte + EA TakteBeispiele:
03 16 ADD DX,Wort_Var03 85 ADD AX,Wort_TAB[DI]02 80 ADD AL,Byte_TAB[BX+SI]02 2F ADD CH,[BX]
w = 0 für 8 Bitw = 1 für 16 Bit0000 001w mod reg r/m adr-low adr-high
48 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Beispiel Assemblerbefehle ADD
Begriffsdefinitionen
Register nach SpeicherMaschinencode:
Zeit: 16 + EA TakteBeispiele:
01 16 ADD Wort,DX01 84 ADD Wort_TAB[DI],AX00 10 ADD [BX+SI],DL01 1F ADD [BX],BX
w = 0 für 8 Bitw = 1 für 16 Bit
0000 000w mod reg r/m adr-low adr-high
49 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Beispiel Assemblerbefehle ADD
Begriffsdefinitionen
Direktwert nach AkkumulatorMaschinencode:
Zeit: 4 TakteBeispiele:
04 03 ADD AL,305 1234 ADD AX,1234h05 0005 ADD AX,EQUATE_WERT04 05 ADD AL,EQUATE_WERT
w = 0 für 8 Bit und ALw = 1 für 16 Bit und AX
0000 010w data-low data-high
50 Grundlagen Hardware Teil II © Dr. G. Hellberg November 2000
Beispiel: Assembler UHR.asm
Begriffsdefinitionen
lesen: mov ah,02h ;Zeit auslesen int 1ah ;ch:Stunde,cl:Minute,dh:Sekunde mov stunden,ch mov minuten,cl mov sekunden,dh
mov rel_pos,0 ;relative Position jetzt noch null xor ax,ax mov al,stunden call Bcd_aus ;Ausgabe der Stunden
mov ax,videosegmov es,axmov si,pos
add si,word ptr rel_pos ;Ausgabe de Doppelpunktes mov byte ptr es:[si],':'
mov byte ptr es:[si+1],attr add rel_pos,2 ;Position einen weiter. 1. Byte ASCII-Code ;2.Byte Attribut xor ax,ax mov al,minuten call Bcd_aus
mov ax,videoseg mov es,ax
mov si,posadd si,word ptr rel_pos
mov byte ptr es:[si],':'mov byte ptr es:[si+1],attr
add rel_pos,2
xor ax,ax mov al,sekunden call Bcd_aus
pop ds pop es pop si pop di pop dx pop cx pop bx pop ax iretmarke endp