Prof. Dr. Wolfgang Matthes

FH Dortmund

FB Informations- und Elektrotechnik

 

 

     

             Lehrarchiv Rechnerarchitektur und Programmierung (RUP)

 

 

   

 

 

 

 Wo echter Hang zum Nachdenken, nicht bloß zum Denken dieses oder jenes Gedankens, herrschend ist, da ist auch Progressivität.

 

 Novalis

Die Lehrveranstaltung betrifft  die Grundlagen der Rechnerarchitektur und der maschinennahen, leistungsbezogenen Programmierung. Hierbei werden Mikrocontroller, Prozessoren mittleren Leistungsvermögens und Hochleistungsprozessoren betrachtet.

Die weitaus meisten der heutigen informationsverarbeitenden Einrichtungen enthalten Mikrocontroller oder Prozessoren. Viele Aufgaben der Informationsverarbeitung werden mit Hochleistungsprozessoren gelöst. Der Praktiker muß in der Lage sein, das jeweils Geeignete auszuwählen und zweckmäßig einzusetzen. Hierzu sind Kenntnisse der grundsätzlichen Zusammenhänge und Wirkprinzipien erforderlich. Die Studierenden sollen in der Lage versetzt werden, die typischen Systemhandbücher zu verstehen, verschiedene Architekturen zu beurteilen und diese Kenntnisse beim Programmieren anzuwenden.

Inhaltsübersicht: 

Rechnerarchitektur und Programmiermodell - Entwicklungsgeschichte - Datenstrukturen - Maschinenbefehle - Registermodelle - Speicheradressierung - Speicherverwaltung - Unterbrechungssystem - Ein- und Ausgabe - Prozessorstrukturen - Steuerungsprinzipien - Auslegung von Hochleistungsprozessoren - virtuelle Speicher - Speichersubsysteme - E-A-Subsysteme - Sondervorkehrungen (Kaltstart, Maschinenzeit, Schutzvorkehrungen usw.) - Mehrprozessorsysteme und Parallelverarbeitung -  virtuelle Maschinen - auf Leistung programmieren.

In der Vorlesung werden die Grundlagen der Rechnerarchitektur  vorgestellt und näher erläutert. Die praktischen Übungen beginnen mit dem Schreiben einfacher Programme aus dem Bereich der Embedded Systems. Die Studierenden sollen sich hierbei ein Gefühl für die Nützlichkeit und Brauchbarkeit der verschiedenen Architekturprinzipien erarbeiten. Weitere Übungen betreffen den Umgang mit besonderen Datenstrukturen (Gleitkommazahlen, SIMD-Daten usw.), die systemnahe Programmierung, die Leistungsmessung und den Leistungsvergleich. Programmiersprachen: Assembler,  C, PowerBasic. Plattformen: verschiedene Starterkits, PCs unter Windows bzw. (wenn wir direkt an die Hardware heran müssen) DOS oder Linux.

Abschlußleistung: Klausur.

Datenstrukturen

Maschinenbefehle

Speicheradressierung

Speicherverwaltung (Text)

Speicherverwaltung (Abbildungen)

Der Einzelprozesor (Text)

Der Einzelprozessor (Abbildungen)

Architekturbeispiele (Text)

Architekturbeispiele (Abbildungen)

Wenn der Arbeitsspeicher zu klein ist...

Stackorganisation für Laufzeitsysteme typischer Programmiersprachen

Prozessorarchitekturen - Übersicht über verschiedene Wirkprinzipien

Steuerungsprinzipien

Caches

Befehlsformate

Mikrobefehle

Darstellung natürlicher und ganzer Binärzahlen

Elementare logische Operationen

Grundlagen der Adreßrechnung

Adreßrechnung (Kurzübersicht)

Interrupts (1)

Interrupts (2)

 

- Viel Erfolg beim Studium! -

 

 

 

   

 

 Die Lehrveranstaltung RUP wird derzeit nicht angeboten.

 

Aktuelles:

 

Kurzübersicht

Zum Üben

Prozessorsimulator P/F:  

Zum Ausführen

Zum Spielen und Entwickeln

Das Skriptmaterial ist zunächst noch provisorisch. Es wird später aktualisiert.