« »

Vorlesung

Vorschau der Datei

1. Alles ist eins – außer der Null

Themen: Syllabus. Geschichtlicher Hintergrund. Zahlen- und Stellenwertsysteme. Binärsystem. Schaltungen und Wertetabellen. Logische Gatter. Halbaddierer und Addierer. Gatterverzögerung. Transistoren.

Vorschau der Datei

2. Struktur von Computersystemen und HW/SW-Schnittstellen

Themen: Hardware- und Softwareebenen. Literatur. Computeraufbau. Funktionsweise einer Maus als motivierendes Querschnitts-Beispiel für Hardware, Zustände, Schnittstellen, Datenübertragung, Berechnungen und Anzeige.

Vorschau der Datei

3. Minimierung und Endliche Automaten

Themen: Logikfunktionen und Boolesche Algebra. Minterme. Normalformen. Schaltungssynthese. Minimierung (algebraisch, KV-Diagramme, Quine-McCluskey-Algorithmus). Schaltwerke. Latches. Flipflops. Endliche Automaten (Moore und Mealy). Zeitdiagramme.

Vorschau der Datei

4. Rechnerarithmetik

Themen: Stellenwertsysteme. Oktal- und Hexadezimalzahlen. Ganze Zahlen im Einerkomplement, Zweierkomplement und Exzess-Code. Wertebereiche. Fest- und Gleitkommazahlen. Zeichendarstellung in ASCII, ISO-Latin-1 und Unicode.

Vorschau der Datei

5. Speicher

Themen: Arbeitsspeicher: Statisch und Dynamisch, Adressierung, Entwurfsziele. Performance-Lücke. Speicherhierarchie. Lokalität. Caches: Funktionsweise, Aufbau, Organisationsformen, Schreibverfahren, Ebenen, Austauschverfahren.

Vorschau der Datei

6. Von Bits zu Prozessoren

Themen: Wiederholung: Endliche Automaten, Kombinatorische Logik, Volladdierer, Multiplexer, Register. RISC-V als Prozessorarchitektur. Übersetzung von Hochsprachen in Assembler: Instruktionen, Direktiven, Pseudoinstruktionen, Kontrollfluss. Datenpfad eines RISC-V-Prozessors. Steuerwerk. Instruktionsaufbau mit Opcodes, Immediates, Registern, Formaten.

Vorschau der Datei

7. Von Pipelines und Kontrollpfaden

Themen: Wiederholung: RISC-Prozessorstruktur, Register, Programmzähler, Speicher, Instruktionsaufbau. Datenpfad einer Immediate-Instruktion. Steuerwerk: Multiplexer, Schreibsteuerung. Pipelining: Grundprinzip, Stufen, erweiterter Datenpfad, Konflikte. Prozessor-Performance: Latenz, Durchsatz, Zyklen pro Instruktion.

Vorschau der Datei

8. Ein- und Ausgabe

Themen: Ein- und Ausgabegeräte: Schnittstellen, Busse, Controller, I/O-Register. Beispiele: Tastatur, Grafikkarte, IDE-Festplatte, Ethernet. Character vs. Block Devices vs. Beschleuniger. Exceptions vs. Traps vs. Interrupts. Interrupts bei RISC-V: CLINT, PLIC, CSRs, mcause. Adressräume. Interrupts vs. Direct Memory Access vs. Polling bei Gerätetreibern. Betriebssystemaufgaben. Unix-API für Gerätezugriff: Everything is a file, Abstraktionen, Systemaufrufe, Gerätetreiber. Serielle und parallele Datenübertragung. UARTs und RS232.

Vorschau der Datei

9. Vom Programm zum Prozess

Themen: Schritte der Quellcode-Übersetzung. Präprozessor. Compiler: Lexikalische Analyse, Syntaxanalyse, Semantische Analyse, Codeerzeugung, Codeoptimierung. Assembler: Speichersektionen und -layout, Heap und Stack. Linker. Loader. ELF-Dateien und -sektionen. Funktionen bei RISC-V: Registerkonventionen, Stackstruktur, RÜcksprung, Label. Ausblick auf Betriebssysteme.