Bestandteile Computer
Rechenwerk
führt alle Rechenoperationen aus
Arbeitsspeicher
Aufbewahrung Programme und Daten
Rechenwerk holt sich Operanden ab und schreibt zurück
Steuerwerk
steuert Bestandteile
holt sich Programm Befehl für Befehl aus Arbeitsspeicher und führt diese mit Rechenwerk aus
Eingabegeräte
holen Daten ab (Tastatur, Maus,…)
Ausgabegeräte
stellen Daten dar (Bildschirm, Lautsprecher,…)
Zentraleinheit
Rechen- und Steuerwerk hängen eng zusammen
nennt sie Prozessor
Damit vereinfachte Sicht: (Sind mit BUS verbunden)
Prozessor
Periphre Geräte
Binäre SIgnale
Datentransport durch binäre elektrische Spannungen
0V für binäre 0
5V für binäre 1
rechteckiger idealisierter Spannungsverlauf
aus physiklaischen Gründen nicht möglich
Taktimpulse
Umschalttakt
Abfragetakt
Takt
Wechsel, die Flanke
positiv
negativ
Taktsteuerung
alle Vorgänge synchron
Abstraktion der kontinuierlichen Zeit zu diskreten Zeitpunktfolgen
übliche Taktfrequenz 2000MHz und mehr
bei Großrechnern weniger
Addition dauert einen Takt
Lichtgeschwindigkeit: 300000 km/s oder 1 Fuß/Nanosekunde
bei 3 Ghz: 10 cm Wellenlänge
Externe Busse: wesentlich langsamere Takte
Elektronische Schalter
Transistoren
um nahezu rechteckige Spannungsverläufe zu erzeugen
Abstraktion: Elektronische Schalter existieren.
Wie kann man mit ihnen arbeiten?
Welche Arten gibt es?
Schaltnetze - ohne Speicherverhalten
Schaltwerke - mit Speicherverhalten
Schaltnetze
kein Speicherverhalten
Ändert sich der Eingang, ändert sich der Ausgang
Grundlage: Boolsche Algebra
Verknüpfungen von zwei oder mehr Signalen
Kombination von vielen einzelnen zu komplexen Funktion
Logische Verknüpfungen - Übersicht
Symbole
Halbaddierer
Volladdierer
Logische Verknüpfungen
Nullfunktion
Konjunktion
Inhibition 2
Identität 2
Antivalenz
Disjunktion
Peirce
Äquivalenz
Negation 2
Implikation 2
Sheffer
Eins
Symbole nach DIN40 700 (halbrund) und DIN 40 900
Zwei EInträge liefern Summe und Carry
Volladierer
Zwei Eingänge und ein Carry liefern Summe und Carry
optimierte Variante existiert
Schaltwerke
Speicherverhalten benötigt
Ausgangssignal abhängig vom Eingangssignal und Zustand
Eingangssignal ändert Zustand, dieser wird beibehalten bis durch erneutes Eingangssignal geändert
Lichthupe, Fernlicht/Abendlicht
FlipFlops
Ausgang wird Eingang des anderen Gatters
wichtige Anwendungsbereiche
Speicher (Register)
Verzögerungsglieder
Taktgeber
Weitere Flip-Flops
bisher RS FlipFlop
R=S=1 nicht erlaubt
1en auf R und S wirken sich jerderzeit aus
synchrones RS-FlipFlop
Takteingang T, nur bei positiver Taktflanke wirken sich R und S aus
synchrones JK-FlipFlop
zusätzliche Sicherung: J=K=1 bedeutet Zustand invertieren
synchrones D-FlipFlop
Schaltungen und deren Aufgabe
Benötigte Schaltungen
Register
Speicher für n Bits (meist Wort)
Addition einstelliger Dualzahlen
Addition n-stelliger Dualzahlen
Akkumulator
sammelt die Ergebnisse fortlaufender Additionen
Englisch: ALU: Arithmetic Logic Unit
Speicherwerk
Millionen von Bytes linear adressiert
n Leitungen zur Adressangabe
eine Steuerleitung (lesen/ schreiben)
Selektionsleitung (Lese-/SChreibzeitpuntk)
m Leitungen als Ausgabe
Lesen ist nichtzerstörendes Lesen
Schreiben überschreibt alten Werte
Speicher ist flüchtig
steuert Abläufe im Rechen- und Speicherwerk
welche Operation wird ausgeführt, welche Speicheradresse gelesen, welche geschrieben?
Programmausführung
Befehle
LOAD <adr>
ADD <adr>
IFZERO <adr>
STORE <adr>
STOP
…
mit diesen Befehlen können weitaus kompliziertere Struktuen, wie Fallunterscheidungen und Schleifen gebaut werden
Befehlsregister und Befehlszähler
zur Ausführung eines Programms benötigt
Befehlsregister, speichert gerade ausgeführten Befehl zwischen
Befehlszähler, enthält Adresse des nächsten Befehls
normalerweise wird Befehlszähler einfach erhöht - um Länge des aktuellen Befehls
bei Sprüngen wird direkt auf Sprungziel gesetzt
Programmausführung als Algorithmsus
Befehlszyklus:
Anfangszustand: Der Befehlszähler enthält Adresse des ersten Befehls.
Schritt 1: Bringe den Befehl, dessen Adresse im Befehlszähler steht, aus dem Speicher in das Befehlsregister und erhöhe zugleich den Inhalt des Befehlszählers um die Länge des Befehls.
Schritt 2: Führe den im Befehlsregister stehenden Befehl aus und gehe anschließend wieder nach Schritt 1 zurück.
Befehlsarten
Transportbefehle
Wort aus Speicher in Akku oder umgekehrt
LOAD, STORE
Arithmetische Befehle
Operand aus Speicher holen und mit Akku Operationen ausführen
ADD, MULT
unbedingter Sprungbefehl
lädt Befehlsadressteil in Befehlszähler
JUMP
bedingter Sprungbefehl
nächster Befehl oder lädt Befehlsadressteil in Befehlszähler abhängig von einem Test
IFZERO
Zusammenfassung Steuerung
Program als Folge von Befehlen im Speicher
Programmablauf ist Zyklus:
Befehle holen
Befehl ausführen
Befehl holen
Befehlsausführung typischerweise Datentransport zwischen Speicehr- und Rechenwerk und/oder Operation im Rechenwerk
Von-Neuemann-Recher Architektur
Rechenwerk + Steuerwerk = CPU
Speicher
speichert Daten
und Befehle (Programme)
I/O: Ein- und Ausgabe
Harvard- Architektur
Daten und Befehle in verschiedenen Speichern
Signalprozessoren (DSP)
Periphere Geräte
eigentliche Ein-/Ausgabegeräte: Tastatur, Maus, Bildschirm, Drucker, Plotter, ...
externe Speicher: Disketten, Magnetplatten, optische Platten, magneto-optische Platten, Bänder, ...
Verbindungen zu anderen Rechnern oder technischen Apparaturen
Externe Speicher
nicht flüchtig - “Langzeitgedächtnis“
Kapazität wesentlich größer als Hauptspeicher
Blockweise Übertragung (z.B. 2048 Byte)
Zugriffszeit erheblich langsamer als Hauptspeicher
Systembusse
Verbindung zwischen CPU und Speicher sowie CPU und Peripheriegeräten
Programmunterbrechung
In der Regel wird ein Programm nicht bis zum Ende ausgeführt, sondern häufig unterbrochen
Unbedingt notwendig für die Kommunikation mit der Peripherie
Ein externes Signal kann die normale Arbeit der Zentraleinheit unterbrechen,
um z.B. Daten eines externen Gerätes in den Hauptspeicher zu schreiben
Komplexere Peripherie hat heute meist eigenen Prozessor, der die Zentraleinheit unterbrechen kann und umgekehrt.
Programmunterbrechungsverwaltung
insgesamt sehr schwierig
was tun bei fast gleichzeitigen Unterbrechungssignalen?
was tun bei Unterbrechungssignal während Unterbrechungsabarbeitung
wo werden für möglich Serie von Unterbrechungen die temporären Daten zwischengespeichert
Englisch: Interrupt, IRQ - Interupt Request
Interen Programmunterbrechung
z.B Fehler bei Division durch 0
moderne Mikroprozessoren haben komplizierte Hardware- Unterstützung für Behandlung Programmunterbechung verschiedener Dringlichkeit
4 Abstraktionsschichten Hardware
Elektronik: elektronische Schaltkreise, die binäre elektrische Signale erzeugen, verknüpfen und speichern
Schaltungslogik: Schaltnetze und Schaltwerke zur Verknüpfung und SPeicherung von Daten
Rechnerarchitektur: Addierer und Register werden zu Prozessoren, diese mit Bussen und E/A- EInheiten zu Rechnerarchitektur zusammengefasst
Programmierung: Aus Sicht des Programmierers ein Gerät, das Daten speichert und Befehle ausführt
Abstraktion und Schichtung sind zentrale Konzepte der Informatik
3-Schichten- Software- Architekturen
7- Schichten ISO/OSI Referenzmodell
Speicherhirachie
Last changed2 years ago