1 Grundlagen Hardware © Dr. G. Hellberg November 2000
THEMA
Prozessoren
2 Grundlagen Hardware © 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 © 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 © 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 © 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 © Dr. G. Hellberg November 2000
Zentralprozessor
Prozessor, Hardwareeinheit für Steuerung undDatenmanipulation.Ein Prozessor besteht mindestens aus:
Leitwerk Rechenwerk, Registern und einige Teile der Eingabe-/Ausgabe-Steuerung
Wiederholung / Begriffsdefinitionen
7 Grundlagen Hardware © Dr. G. Hellberg November 2000
Leitwerk
Das Leitwerk nimmt Koordinationsfunktionen für die gesamte EDV wahr. Es steuert den Ablauf des Befehls-und Datenflusses und bestimmt durch einen Taktgeber dieProgrammablaufgeschwindigkeit. Es besteht aus logischenSchaltungen und Registern.
Wiederholung / Begriffsdefinitionen
8 Grundlagen Hardware © Dr. G. Hellberg November 2000
Rechenwerk
Das Rechenwerk, der andere Teil des Zentralprozessors, verknüpft die vom Leitwerk bezeichneten Daten. Hier werden arithmetische und logische Operationen (Vergleichen, Verschieben,Vorzeichenbestimmung, Umformen, Runden) durchgeführt. Das Rechenwerk arbeitet entweder mit rein dualen Zahlen oder ziffernweise dual codierten Dezimalzahlen. Aus technisch bedingtenVereinfachungsgründen werden in der RegelRechenoperationen in elementare Additionen aufgelöst.
Schaubild nächste Folie
Wiederholung / Begriffsdefinitionen
9 Grundlagen Hardware © 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 © 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 © 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 © 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
13 Grundlagen Hardware © 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
14 Grundlagen Hardware © Dr. G. Hellberg November 2000
Speichermedien / -arten
• Arbeitsspeicher• Pufferspeicher• Registerspeicher• Mikroprogrammspeicher• Erweiterungsspeicher• Magnetplattenspeicher• Optischer Plattenspeicher
Begriffsdefinitionen
15 Grundlagen Hardware © 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 © Dr. G. Hellberg November 2000
Zentraleinheit
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 © Dr. G. Hellberg November 2000
Arbeitsspeicher
Im Arbeitsspeicher werden die laufenden Programme und die von diesem benötigten Daten gehalten. Aus ihm entnimmt der Zentralprozessor beim Programmablauf schrittweise die Befehle und die in den Befehlen adressierten Daten, führt die verlangten Operationen aus und gibt deren Ergebnisse an den Arbeitsspeicher zurück.
Begriffsdefinitionen
18 Grundlagen Hardware © 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 © Dr. G. Hellberg November 2000
Datenfluss beim Lesen im Pufferspeicher und im Arbeitsspeicher
Begriffsdefinitionen
Arbeitsspeicher
Zentralprozessor
0
63
8 Pufferspeicherbänkezu je 2 KB
32 Bytes
8 Bytes
20 Grundlagen Hardware © 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 © 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 © 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 © 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 © 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 © 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 © 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 © 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 © 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 © 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 © 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 © 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 © 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 © 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 © 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 © 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 © Dr. G. Hellberg November 2000
Mikroprozessoren von Intel
Begriffsdefinitionen
Prozessor 8086 8088 80286 80386DX 80386SX 80486DX 80486SX
interneDatenbusbreite
16 16 16 32 32 32 32
externeDatenbusbreite
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 4096virtuelleSpeicherverwaltung
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 neininternesBefehscache
nein nein nein nein nein 8 KB 8 KB
integrierterCoprozessor
nein nein nein nein nein ja nein
maximaleTaktfrequenz in MHz
12 16 25 33 25 50 20
Leistung in Mips < 1 0,66 1,5 8 4 40 12
37 Grundlagen Hardware © 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
38 Grundlagen Hardware © Dr. G. Hellberg November 2000
Benchmark
Begriffsdefinitionen
Ein Benchmark bzw. Benchmarktest dient zurPerformanceanalyse von EDVA. Er besteht aus Programmen im Quellcode, die für die zu vergleichenden Rechner übersetzt und zur Ausführung gebracht werden. Dabei werden die Ausführungszeichen (Durchsatz, Antwortzeit) gemessen und verglichen. Standardbenchmarks sind künstliche, das heißt real nicht verwendete Programme fürMess- und Beurteilungszwecke von Teilleistungen bzw.Gesamtleistungen von EDVA.
39 Grundlagen Hardware © 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 oder auch Komponenten von anderen EDV-Herstellern bezieht und diese in eigenen Anlagen unter eigenem Namen vertreibt. Meist bietet er dabei einen Zusatznutzen in Form spezieller Software, Firmware oder Hardware; OEMs werden in diesem Sinne auch als VARs (Abkürzung von engl.: value added resellers) bezeichnet.
40 Grundlagen Hardware © 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
41 Grundlagen Hardware © Dr. G. Hellberg November 2000
Beispiel Assemblerbefehle ADD
Begriffsdefinitionen
ADD (Addition), addiert die zwei Operanden und speichert das Ergebnis im Bestimmungsoperanden (dem linken Operanden) 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
42 Grundlagen Hardware © 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)
43 Grundlagen Hardware © 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 Bit
0000 001w 11regreg
44 Grundlagen Hardware © 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
45 Grundlagen Hardware © 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
46 Grundlagen Hardware © 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 AX0000 010w data-low data-high
47 Grundlagen Hardware © 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
Top Related