Hardware fuer Eingebettete Systeme WS 19/20
ACHTUNG: Die Veranstaltung beginnt bereits am Montag (07.10.)!
Motivation
Eingebette Systeme sind Rechner, die tief im Inneren von
Maschinen aller Art ihren Dienst versehen, meistens ohne
nach aussen als Rechner in Erscheinung zu treten. Sie ermoeglichen
den so ausgestatteten Maschinen ein ausserordentlich flexibles
Verhalten, sowie die Moeglichkeit, allein durch Austausch von Software
das Verhalten anzupassen (u.a. auch Fehler zu berichtigen). Wegen der
hohen heute moeglichen Integrationsdichte packt man haeufig einen
Prozessor mitsamt der von der Maschine sonst noch benoetigten digitalen
Hardware auf einen Chip und entwirft somit Hard- und Software in enger
Abstimmung ("Hardware/Software-Codesign").
Literatur
1. David Money Harris, Sarah L. Harris: "Digital Design and Computer
Architecture", Morgan Kaufmann 2013
2. John F. Wakerly: "Digital Design, Priciples & Practices",
Pearson International Edition 2006
3. David A. Patterson, John L. Hennessy: "Computer Organization & Design,
The Hardware/Software Interface", Morgan Kaufmann 2013
4. Peter J. Ashenden: "The Designer's Guide to VHDL",
Morgan Kaufmann 2008
5. Donald E. Thomas, Philip R. Moorby: "The Verilog Hardware Description
Language", Kluwer Academic Publishers 2008
Themen
1. Hardware-Entwurf
Kombinatorische Digitalschaltungen ("Schaltnetze")
Sequentielle Digitalschaltungen ("Schaltwerke")
Moore- und Mealy-Automaten
Speicher und programmierbare Logikbausteine
2. Rechnerarchitektur
Instruction-Set-Architecture
Arithmetik
Datenpfad und Steuerung
Pipelining
Eingabe/Ausgabe
3. Werkzeuge
Hardware-Beschreibungssprachen
Simulatoren
Synthesewerkzeuge
4. Projekt: Digitaler Tongenerator ("Synthesizer")
Eigenschaften von Toenen
Digitale Tonerzeugung
Hardware/Software-Interface
Betriebsprogramme
Hier entsteht gerade ein
Manuskript
zur Veranstaltung.
Praktikum
Organisation: Zweiergruppen (auch einzeln moeglich)
Beratungen zwischen den Gruppen werden gerne gesehen
Kopieren von Code ist aber natuerlich verboten
Aufgaben und Termine
[in eckigen Klammern: ungefaehre Bearbeitungszeit]
Einstieg: Character Display
Aufgabe 1: Drucktaste, LED, Lauflicht
[1 Woche]
Aufgabe 2: VGA-Testbild-Generator
[1 Woche]
Aufgabe 3: Character-Display
[2 Wochen]
Aufgabe 4: Integration in ECO32
[1 Woche]
Projekt: Digitaler Synthesizer
Aufgabe 5: Grundlagen der Tonerzeugung
[2 Wochen]
Aufgabe 6: Polyphonie
[1 Woche]
Aufgabe 7: Klangfarben
[1 Woche]
Aufgabe 8: Huellkurven
[2 Wochen]
Aufgabe 9: Effekte
[2 Wochen]
Deadline Projektabgabe und Demonstration: 22.01.20
Leistungsnachweis und Notengebung
Der Leistungsnachweis fuer diesen Kurs wird durch einen
arbeitsfaehigen Synthesizer erbracht. Dabei setzt sich die
erzielte Note aus dem Umfang und der Funktionsfaehigkeit
der im Verlauf des Kurses gebauten Komponenten zusammen.
VGA-Testbild-Generator: 5%
Character Display: 25%
Integration in ECO32: 10%
Tonerzeugung: 20%
Polyphonie: 10%
Klangfarben: 5%
Huellkurven: 25%
Effekte: 15%
Ja, Sie haben richtig gerechnet: man kann auch dann 100%
erzielen, wenn man nicht alles perfekt hinbekommen hat... :-)