Hello
WikiGuest
Einloggen
oder
Registrieren
Users
Studium
Lehrveranstaltungen
Sie sind hier:
Foswiki
>
F07_Studium Web
>
F07_RHP
(Revision 9) (Quelltext-Ansicht)
<!-- * Set USERSTYLEURL = %PUBURLPATH%/%WEB%/DokumentFormat/fonts.css --> ---+!! %FORMFIELD{"TopicClassification"}% %FORMFIELD{"Bezeichnung"}% %TOC{depth="3"}% %STARTSECTION{"no_toc"}% --- *Verantwortlich:* Prof. Dr. Thieling ---++ Lehrveranstaltung ---+++ Befriedigt Modul (MID) * aktuelle * [[BaTIN2012_RHP]] * [[BaTIN2010_RHP]] ---+++ Organisation <sticky> <table border="0"> <tr valign="top"> <td> <table border="1" cellpadding="2" cellspacing="0"> <th colspan="2">Version</th> <tr> <td>erstellt</td> <td>2011-10-14</td> </tr> <tr> <td>VID</td> <td>1</td> </tr> <tr> <td>gültig ab</td> <td>WS 2012/13</td> </tr> <tr> <td>gültig bis</td> <td/> </tr> </table> </td> <td> </td> <td> <table border="1" cellpadding="2" cellspacing="0"> <th colspan="2">Bezeichnung</th> <tr> <td>Lang</td> <td>%FORMFIELD{"Bezeichnung"}%</td> </tr> <tr> <td>LVID</td> <td>F07_RHP</td> </tr> <tr> <td>LVPID (Prüfungsnummer)</td> <td/> </tr> </table> </td> </tr> </table> </sticky><sticky> <table border="0"> <tr valign="top"> <td> <table border="1" cellpadding="2" cellspacing="0"> <th colspan="2">Semesterplan (SWS)</th> <tr> <td>Vorlesung</td> <td>%FORMFIELD{"VorlesungSWS"}%</td> </tr> <tr> <td>Übung (ganzer Kurs)</td> <td>%FORMFIELD{"UebungGanzSWS"}%</td> </tr> <tr> <td>Übung (geteilter Kurs)</td> <td>%FORMFIELD{"UebungHalbSWS"}%</td> </tr> <tr> <td>Praktikum</td> <td>%FORMFIELD{"PraktikumSWS"}%</td> </tr> <tr> <td>Projekt</td> <td>%FORMFIELD{"ProjektSWS"}%</td> </tr> <tr> <td>Seminar</td> <td>%FORMFIELD{"SeminarSWS"}%</td> </tr> <tr> <td>Tutorium (freiwillig)</td> <td>%FORMFIELD{"TutoriumSWS"}%</td> </tr> </table> </td> <td> </td> <td> <table border="1" cellpadding="2" cellspacing="0"> <th colspan="2">Präsenzzeiten</th> <tr> <td>Vorlesung</td> <td>%FORMFIELD{"VorlesungPZ"}%</td> </tr> <tr> <td>Übung (ganzer Kurs)</td> <td>%FORMFIELD{"UebungGanzPZ"}%</td> </tr> <tr> <td>Übung (geteilter Kurs)</td> <td>%FORMFIELD{"UebungHalbPZ"}%</td> </tr> <tr> <td>Praktikum</td> <td>%FORMFIELD{"PraktikumPZ"}%</td> </tr> <tr> <td>Projekt</td> <td>%FORMFIELD{"ProjektPZ"}%</td> </tr> <tr> <td>Seminar</td> <td>%FORMFIELD{"SeminarPZ"}%</td> </tr> <tr> <td>Tutorium (freiwillig)</td> <td>%FORMFIELD{"TutoriumPZ"}%</td> </tr> </table> </td> <td> </td> <td> <table border="1" cellpadding="2" cellspacing="0"> <th colspan="2">max. Teilnehmerzahl</th> <tr> <td>Übung (ganzer Kurs)</td> <td>%FORMFIELD{"UebungGanzTeilnehmer"}%</td> </tr> <tr> <td>Übung (geteilter Kurs)</td> <td>%FORMFIELD{"UebungHalbTeilnehmer"}%</td> </tr> <tr> <td>Praktikum</td> <td>%FORMFIELD{"PraktikumTeilnehmer"}%</td> </tr> <tr> <td>Projekt</td> <td>%FORMFIELD{"ProjektTeilnehmer"}%</td> </tr> <tr> <td>Seminar</td> <td>%FORMFIELD{"SeminarTeilnehmer"}%</td> </tr> </table> </td> </tr> </table> </sticky> *Gesamtaufwand:* %FORMFIELD{"Gesamtaufwand"}% ---++++ Unterrichtssprache * Deutsch ---++++ Niveau * %FORMFIELD{"Niveau"}% ---++++ Notwendige Voraussetzungen * grundlegende prozedurale Programmierkenntnisse * Grundlegende Funktionsweise eines Von-Neumann-Rechners * Grundlagen der Digitaltechnik * Automatem u. Zustandsüberführungsdiagramme ---++++ Literatur * Märtin: Rechnerarchitektur, Fachbuchverlag Leipzig (Carl Hanser) * Oberschelp/Vossen: Rechneraufbau und Rechnerstrukturen, Oldenbourg Verlag * Vogt, C: C für Java-Programmierer * Tanenbaum, Goodman: Computerarchitektur, Pearson Studium (Prentice Hall) ---++++ Dozenten * Prof.Dr.Thieling * Prof.Dr.Hartung ---++++ Wissenschaftliche Mitarbeiter * tba ---++++ Zeugnistext Rechneraufbau und hardwarenahe Programmierung ---+++ Kompetenznachweis <sticky> <table border="1" cellpadding="2" cellspacing="0"> <th colspan="2">Form</th> <tr> <td>sK</td> <td>Regelfall (bei kleiner Prüfungszahl: sMP)</td> </tr> </table> </sticky> <sticky> <table border="1" cellpadding="2" cellspacing="0"> <th colspan="2">Aufwand [h]</th> <tr> <td>sK</td> <td>10</td> </tr> </table> </sticky> *Intervall:* 3/Jahr ----- ---++ Lehrveranstaltungselemente %STARTSECTION{"Vorlesung / Übung"}% ---+++ <u>Vorlesung / Übung</u> ---++++ Lernziele ---+++++ Lerninhalte (Kenntnisse) * Grundlagen der C-Programmierung * Konstanten, Variablen, Datentypen * Ausdrücke, Anweisungen, Kontrollstrukturen * Präprozessoranweisungen * Zeiger und Zeigerarithmetik * Strukturierte Datentypen (Felder, Strukturen) * Funktionen * Standardbibliotheken * Aufbau von Mehrdateienprogrammen mit Zugriff auf Bibliotheken * Software-Entwicklungsumgebung * Compiler * Linker * Debugger * Simulator * hardwarenahe I/O-Programmierung in C * Aufbau digitaler I/O-Ports * Erreichbarkeit von I/O-Ports * Memory-Mapped-I/O * seperater I/O-Adressbereich * Zugriff auf I/O-Ports mittels Zeiger * Zugriff auf I/O-Ports mittels Treiberbibliotheken * Implementierung von Treiberbibliotheken in C * Bitbasierte Ein-Ausgabe und Auswertung von Daten mittels C * Programmierung von Aufgaben des Messens, Steuerns und Regelns in C * Realisierung von Moore- und Mealy-Automaten in C * Optimierung von zyklischen Zugriffen auf I/O-Daten * Aufbau und Funktionsweise eines dedizierten Kleinrechnersystems (z.B. Mikrocontroller) * Architekturübersicht (Register, Rechenwerk, Steuerwerk, Speicher, Busstruktur, I/O-Komponenten) * Funktionsweise, d.h. Ablauf einer Programmabarbeitung auf Basis von Registertransfers * elementare Grundlagen zur Programmierung des Kleinrechners in Assembler * Verwendung von Inline-Assembler in C-Programmen * I/O-Schnittstellen eines Rechnersystems und deren Nutzung mittels C (am Beispiel des dedizierten Kleinrechnersystems) * digitale Ports (siehe oben) * Timer/Counter (inkl. Digital-Analog-Wandlung mittel Pulsweitenmodulation) * Analog-Digital-Wandler * serielle Schnittstelle * Nutzung der I/O-Schnittstellen aus C heraus * Interrupts * Interrupt-Quellen und -Arten (extern, intern, hardware, software) * Interruptsverwaltung * Interupt-Vektor-Tabelle * Interrupts-Service-Routine * zeitlicher Ablauf der Interruptsbearbeitung * Mechanismen zur Bearbeitung konkurrierender Interrupts * Priorisierung * Unterbrechung * Problenspezifischer Einsatz dieser Mechanismen * Nutzung von I/O-Schnittstellen mittels Interrupt unter C * Laufzeitsystem für C-Programme * Unterprogrammaufruf in Assembler * Stack und Assemblerbefehle zur Stackmanipulation * Programmzustandsrettung und -wiederherstellung mittels Stack * C-Funktions-Parameterübergabe mittels Stack * Verwaltung lokalen C-Variablen mittels Stack * dynamischer Stackauf und -abbau bei geschaltelten C-Funktionsaufrufen * manuelle Interpretation des Stackinhalts mittels Debugger ---+++++ Fertigkeiten * Verstehen und erläutern der Arbeitsweise eines Kleinrechnersystems inkl. seiner I/O-Schnittstellen * Detaillierten technischen Spezifikationen von I/O-Schnittstellen interpretieren, so dass zielgerichtete sinnvolle Konfigurationen erstellt werden können * Erstellen von Treiberbibliotheken in C für verschiedene I/O-Schnittstellen mit Unterstützung ihrer Interruptfähigkeit * digitale Ports * Timer/Counter * Analog-Digital-Wandler * serielle Schnittstellen * Systemverhalten aus spezifizierenden Texten herleiten * technische Texte erfassen * implizite Angaben erkennen und verstehen * fehlende Angaben * erkennen * ableiten * erfragen * Erarbeitung von Problemlösungen aus dem Bereich Messen-Steuern-Regeln, die sich mit C-Programmen realisieren lassen * Systemverhalten aus spezifizierenden Text herleiten * Auswahl und Konfiguration der benötigten I/O-Schnittstellen * Erarbeitung eines Interruptskonzeptes * Aufstellen des Zustandsüberführungsdiagramms * Auswahl der geeigneten Spezifikationsform (Moore versus Mealy) * Bewertung der Spezifikation * Vollständigkeit * Determiniertheit * Lebendigkeit * Implementierung mittels C unter Verwendung von Treiberbibliotheken * Laufzeitsystem für C-Programme analysieren und beschreiben * dynamischer Stackauf und -abbau bei geschachtelten C-Funktionsaufrufen ermitteln und beschreiben * dynamischen Stackaufbau mittels Debugger analysieren und bescheiben ---++++ Begleitmaterial * elektronische Vortragsfolien zur Vorlesung * elektronische Übungsaufgabensammlung * elektronische Software-Entwicklungsumgebung zum Compilieren, Linken, Debuggen, Simulieren * elektronische Sammlung von Beispiel-Programmen * elektronische Tutorials für Selbststudium * Handhabung der Entwicklungsumgebung ---++++ Besondere Voraussetzungen * keine ---++++ Besondere Literatur * keine ---++++ Besonderer Kompetenznachweis * keiner %ENDSECTION{"Vorlesung / Übung"}% %STARTSECTION{"Praktikum"}% ---+++ <u>Praktikum</u> ---++++ Lernziele ---+++++ Fertigkeiten * siehe Fertigkeiten, die unter "Vorlesung/Übung->Lernziele->Fertigkeiten" aufgeführt sind * zielgerichtetes Handhaben der Software-Entwicklungsumgebung ---+++++ Handlungskompetenz demonstrieren * komplexere Aufgaben in einem Kleinteam bewältigen * Erarbeitung von komplexeren Problemlösungen aus dem Bereich Messen-Steuern-Regeln, die sich mit C-Programmen realisieren lassen * komplexere Problemstellungen verstehen und analysieren * Systemverhalten aus spezifizierenden Texten herleiten * System strukturiert analysieren * sinnvolle Teilsysteme erkennen * Schnittstellen zwischen Teilsystemen erfassen * Gesamtsystem auf Basis von Teilsystemes modellieren * Teilsysteme modellieren. Hierbei soweit möglich auf zur Vefürgung stehende Komponenten (I/O-Schnittstellen) abbilden, d.h. Komponentenauswahl und Konfiguration. * Problemlösung mittels Software-Entwicklungsumgebung in C implementieren, testen und am Zielsystem in Betrieb nehmen * Spezifiation von Teilsystemen in C * Treiberfunktion für zur Verfügung stehende Komponenten (I/O-Schnittstellen) * Interrupt-Service-Funktionen * Funktionen zur Implementierung von Zustandübergangsdiagrammen * Funktionen zur Systembedienung * ... * Compilieren der Teilsysteme * Finden syntaktischer Fehler und deren Behebung * Simulation und Debuggen von Teilsystemen * Erstellen von Teststimuli * Finden semantischer Fehler und deren Behebung * Spezifikation des Gesamtsystems in C * Simulation und Debuggen des Gesamtsystems * Erstellen von Teststimuli * Finden semantischer Fehler und deren Behebung * Gesamtsystem am Zielsystem in Betrieb nehmen ---++++ Begleitmaterial * elektronische Aufgabenstellung (Problembeschreibung) * elektronische Software-Entwicklungsumgebung zum Compilieren, Linken, Debuggen, Simulieren * elektronische Sammlung von Beispiel-Programmen * elektronische Tutorials für Selbststudium * Handhabung der Entwicklungsumgebung ---++++ Besondere Voraussetzungen * keine ---++++ Besondere Literatur * keine ---++++ Besonderer Kompetenznachweis * keiner %ENDSECTION{"Praktikum"}% %ENDSECTION{"no_toc"}%
E
ditieren
|
A
nhang
|
Druckversion (
p
)
|
H
istorie
: r9
<
r8
<
r7
<
r6
|
Querverweise (
b
)
|
Topic anzeigen (
v
)
|
Editieren
w
ikitext
|
M
ehr Topic-Aktionen
Topic-Revision: r9 - 11 Jan 2016,
GeneratedContent
F07_Studium
Einloggen
oder
Registrieren
Werkzeugkasten
Neues Topic anlegen
Index
Suchen
Änderungen
Benachrichtigungen
RSS-Feed
Statistiken
Einstellungen
Webs
F07_Studium
System
Deutsch
English
Das Urheberrecht © liegt bei den mitwirkenden Autoren. Alle Inhalte dieser Kollaborations-Plattform sind Eigentum der Autoren.
Ideen, Anfragen oder Probleme bezüglich Foswiki?
Feedback senden