Bachelor, Vollzeit, Dual
- Campus Hagenberg
- E-Mail hsd@fh-hagenberg.at
- Telefon +43 5 0804 22400
- Infoblatt downloaden Anfrage stellen
Studienplan
Module
Grundlagen
1. | 2. | 3. | 4. | 5. | 6. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Grundlagen der Digitaltechnik |
4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Grundlagen der DigitaltechnikSowohl der Hardware- als auch der Software-Entwurf benötigt als Fundament die technische Informatik. Zahlensysteme unterscheiden sich durch die verfügbaren Ziffern, aber nicht im Aufbau und Rechenoperationen. Sie erfahren, wie Zahlen in einem Rechner dargestellt werden und welchen Einschränkungen die Wertebereiche und Darstellungsgenauigkeiten unterliegen. Sie verstehen auch die Funktionsweise der digitalen Grundbausteine der kombinatorischen und sequentiellen Logik – besonders aber deren spezielle Eigenschaften. Dieses Modul basiert einerseits auf praxisnahen Beispielen, zeigt Ihnen aber auch, wie die Komplexität von Schaltungen theoriegestützt handhabbar wird und wie die Schaltalgebra und endliche Automaten dazu verwendet werden. Grundlagen der Digitaltechnik
Zahlensysteme, Zahlen- und Zeichencodes, Fixkomma- und Gleitkommazahlen, Schaltalgebra, Kombinatorische Schaltungen, Minimierung von Schaltfunktionen, Multiplexer, Encoder, Addierer, Aufbau einer exemplarischen ALU, Sequentielle Schaltungen, Endliche Automaten, Flipflops, Schaltwerkentwurf, Zähler, Schieberegister, synchrone und asynchrone sequentielle Schaltungen, Register, Speicher, Aufbau einer mikroprogrammierten CPU. Grundlagen der Digitaltechnik
Praktische Beispiele zur den Themen der Vorlesung - begleitet durch den Einsatz computerunterstützter Werkzeuge. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Software-Entwicklung und Algorithmen |
8 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Software-Entwicklung und AlgorithmenSoftware bereichert unser Leben heute in vielfältiger Weise. Wenn es unsere Grundbedürfnisse wie Kommunikation oder Mobilität betrifft: Moderne technische Geräte oder Dienstleistungen aus unserem Alltag werden erst durch Software möglich. Die erforderlichen Grundkenntnisse für die Entwicklung dieser Software vermittelt dieses Modul. Vorkenntnisse sind dabei nicht nötig - von der Programmierung über den Software-Entwicklungszyklus bis zur Algorithmik wird alles sukzessiv erarbeitet und anhand praktischer Beispiele gemeinsam umgesetzt. Mit diesem Modul legen Sie das Fundament für die professionelle Software-Entwicklung, wie es für die Entwicklung kreativer Lösungen benötigt wird. Software-Entwicklung 1
Programmiersprache C bzw. C++, praktische Umsetzung von Algorithmen in der Programmiersprache, gezielter Einsatz der Software-Entwicklungsumgebung zur Ablaufanalyse und Fehlersuche, Compilier-/Link-/Ladevorgang, Präprozessor, Gültigkeitsbereich und Lebensdauer, Felder und Strukturen, Listen und Bäume, Rekursionen, Speicherabbildung, Bitoperationen, Inline-Assembler, grundlegende Software-Testmethoden. Einführung in Algorithmen und Datenstrukturen: elementare Programmbausteine, Begriff des Datentyps, Anweisungen zur Ablaufsteuerung, Prozeduren und Funktionen, Ein-/Ausgabe, Darstellungsarten von Algorithmen, Methodik des Programmentwurfs, Spezifikation von Algorithmen, Abstraktionsschichten, Struktur und Entwurf von Algorithmen, Begriff der strukturierten Programmierung, Modulkonzept und Geheimnisprinzip, Datenkapselung, durch Tabellen spezifizierte Algorithmen, Besonderheit der Gleitkommazahlen, statische und dynamische Datenstrukturen, dynamische Speicherverwaltung, rekursive Algorithmen, Entrekursivieren. Software-Entwicklung 1
Begleitende, praktische Übungen im Einsatz von modernen Software-Entwicklungsumgebungen, standardisierten Programmiersprachen und Bibliotheken, Grundzüge der methodischen Software Entwicklung. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Einführung und Labor Elektronik |
9 | 1 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Einführung und Labor ElektronikIn zunehmendem Maße interagieren moderne digitale Geräte sowohl mit der analogen als auch mit der digitalen Welt. Das HSD-Studium hebt den starken Zusammenhang beider Aspekte heraus und macht diese Systeme für die Studierenden in der Theorie ebenso wie der darauf aufbauenden Praxis beherrschbar. Dieses Modul legt den Grundstein für das Verständnis analoger und digitaler elektronischer Schaltungen, ohne dass Vorkenntnisse nötig sind. Im Labor werden Ihnen praktische Fertigkeiten zum Aufbau von Prototypen elektronischer Schaltungen und dem professionellen Umgang mit Messgeräten vermittelt. Circuits & Electronics 1
Einführung und Grundlagen zur Analyse und zum Entwurf elektronischer Schaltungen: Elektrischen Grundgrößen, Analyse linearer Netzwerke, Überführung einer graphischen Schaltungsdarstellung in ein geeignetes mathematisches Modell und dessen Analyse, Modellierung elektronischer Bauelemente mit Hilfe idealisierter Grundelemente – das Konzept der Ersatzschaltung innerhalb eines Betriebsbereiches, Modellierung des in digitalen Schaltungen besonders wichtigen MOSFET, Anwendung der Groß- und Kleinsignalmodellierung. Circuits & Electronics 1
Vertiefung des Stoffes der Vorlesung anhand von praktischen Übungsbeispielen, Verwendung von Simulationswerkzeugen begleitend zur behandelten Theorie. Circuits & Electronics 1
Circuits & Electronics 2
Vertiefung der Erkenntnisse aus Vorlesung und Übung durch die Umsetzung in praktischen Labor-Versuchen und -Messungen. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Algebra und Analysis |
6 | 6 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Algebra und AnalysisMathematik ist die Basis für alle technischen Fächer im Bereich der Elektronik, der digitalen Signalverarbeitung, der System- und Nachrichtentechnik und für viele weiteren Ingenieurdisziplinen. Der sichere Umgang mit mathematischen Methoden unterstützt Sie im zielorientierten Problemlösen bei allen technischen Entwicklungsaufgaben. Algebra und Analysis 1
Elementare Funktionen, Folgen und Reihen, Grenzwerte von Funktionen, Differentialrechnung: Ableitung elementarer Funktionen, Differentiationsregeln Extremwerte, Newtonverfahren, Taylorpolynome, Taylorreihen, Regel de l`Hospital; Integralrechnung: Unbestimmtes und Bestimmtes Integral, Integrationsregeln; Lineare Algebra: Lineare Gleichungen. Algebra und Analysis 1
Beispiele zur Vertiefung und praktischen Anwendung des Stoffes der Vorlesung. Algebra und Analysis 2
Lineare Algebra: Vektoren, Matrizen, Gauß-Algorithmus; komplexe Zahlen; gewöhnliche Differentialgleichungen: Differentialgleichungen erster Ordnung, Homogene Differentialgleichungen zweiter Ordnung, Inhomogene Differentialgleichungen zweiter Ordnung, Interferenz; Differentialrechnung in 2 Variablen: Geometrische analytische Eigenschaften, Kettenregel, Exemplarische Behandlung Partieller Differentialgleichungen. Algebra und Analysis 2
Beispiele zur Vertiefung und praktischen Anwendung des Stoffes der Vorlesung. |
Hardware
1. | 2. | 3. | 4. | 5. | 6. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Elektronik und Schaltungstechnik |
6 | 4.5 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Elektronik und SchaltungstechnikDen Brückenschlag von der angewandten Physik über die Elektronik hin zur Digitaltechnik, der auch die Basis des Moduls "Einführung & Labor Elektronik" bildet, setzt dieses Modul fort. Die inhaltliche Ausrichtung orientiert sich konsequent an den technischen Gegebenheiten aktueller Computersysteme, bei denen hohe Verarbeitungsleistung bei gleichzeitig geringem Energieverbrauch im Vordergrund steht. Während die Schaltungen im Grundlagenmodul in vereinfachter, idealisierter Form betrachtet wurden, wird nun auch das zeitliche und räumliche Verhalten mit in die Analyse einbezogen. Für das Verständnis der Effekte, die in schnellen digitalen Schaltungen auftreten, ist dies eine unbedingte Voraussetzung. Circuits & Electronics 2
Operationsverstärker (idealisierte wie in der an die Realität angenäherten Form) als Grundbaustein der analogen Schaltungstechnik, Analyse und des Entwurfs von Netzwerken unter Beteiligung von Energiespeichern, Zeitabhängigkeit der elektrischen Größen im Sinne von Ausgleichsvorgängen, Schaltungen erster und zweiter Ordnung, Modellierung des MOSFET unter Beteiligung parasitärer Effekte der Gate-Kapazität zur analogen Realisierung einer digitalen Schaltfunktion. Circuits & Electronics 2
Vertiefung des Stoffes der Vorlesung anhand von praktischen Übungsbeispielen, Verwendung von Simulationswerkzeugen begleitend zur behandelten Theorie. Circuits & Electronics 3
Quasistationäre elektromagnetische Vorgänge und Erscheinungen in Hinsicht auf deren technische Anwendungen, Methoden zur Lösung physikalischer und technischer Aufgabenstellungen auf dem Feld des Elektromagnetismus, dynamischer elektromagnetischer Vorgänge und elektromagnetischer Wellen, elektromagnetische Welle in der 1-dimensionalen Form (Ausbreitung über eine homogene Leitung), Kettenschaltungen linearer ausdehnungsfreier Bauelemente, Analyse von Netzwerken bei nicht-sinusförmiger zeitlich veränderlicher Anregung, Analyse und Synthese von Netzwerken mit Hilfe von Zweitoren (Vierpole). Circuits & Electronics 3
Vertiefung des Stoffes der Vorlesung anhand von praktischen Übungsbeispielen, Verwendung von Simulationswerkzeugen begleitend zur behandelten Theorie. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Computer-Architektur und -Design |
4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Computer-Architektur und -DesignDie Performance von eingebetteten Software-Systemen hängt wesentlich davon ab, inwieweit Software-Enwickler:innen die zugrundeliegende Hardware-Architektur verstehen. Die Entwickler:innen der Embedded-Hardware müssen wissen, wie sie die Anforderungen der Software-Entwicklung bestmöglich unterstützen. Dieses Modul erklärt den Aufbau und die prinzipielle Funktionsweise einfacher RISC- und CISC-CPUs und verdeutlicht die Unterschiede anhand der Programmierung in Maschinensprache. Im Besonderen werden die Zusammenhänge zwischen der Hardware-Struktur und den zeitlichen Abläufen bei der Programmausführung dargestellt. Anhand konkreter Assemblerprogramme erlernen Sie die Grundlagen der hardwarenahen Programmierung für ARM-Mikrocontroller - die weltweit meistgenutzten CPUs für eingebettete Systeme. Computer Organisation & Design
Einführung in die Rechnerarchitektur: Aufbau eines Computers, Zusammenwirken und Funktionsweise der einzelnen Systemkomponenten (Prozessor, Speicher, I/O-System), Performance-Kennzahlen, Befehlsarchitektur, Einführung in Assembler: Adressierungsarten, Befehlsklassen; Datenpfad, Steuerwerk (FSM, Mikroprogrammiert), RISC/CISC, Single-Cycle-CPU, Multi-Cycle-CPU, Parallele Architekturen, Parallel-Rechner, Superskalar-Rechner, Pipelining. Computer Organisation & Design
Mikroprogrammierung, Programmieren in ARM-Assembler, Berechnung der kritischen Pfad in Single-Cycle- und Multicycle-CPUs, Abarbeiten von Programmen mit Pipelining. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Signale und Systeme |
3.5 | 4 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Signale und SystemeWie funktioniert eine mobile Nachrichtenübertragung, wie ein ABS-System? Fragen, die ohne Methodenkenntnisse zu Signalen und Systemen nicht beantwortet werden können. In diesem Modul erwerben Sie das notwendige Methodenwissen dafür. Zunächst stehen die Methoden der Verarbeitung der realen, zeitkontinuierlichen Signale im Vordergrund. In modernen eingebetteten Systemen werden die Signale jedoch zeitdiskret verarbeitet. Sie erfahren, wie zeitkontinuierliche Signale diskretisiert werden und wie sie wieder fehlerfrei aus dem diskretisierten Signal rekonstruiert werden können. Mithilfe der Fourier- und der z-Transformation analysieren Sie zeitdiskrete Signale und lernen dabei diese mächtigen Werkzeuge zur Entwicklung komplexer Systeme der Regelungs- und Nachrichtentechnik anzuwenden. Signale und Systeme
Charakterisierung von Signalen, Charakterisierung von Systemen, Laplace Transformation (Einführung, Anwendung der Laplace Transformation auf Signale und lineare zeitinvariante Systeme, Lösung von linearen Differentialgleichungen mit der Laplace Transformation, Übertragungsfunktionen, Frequenzgang, Impulsantwort, Sprungantwort, Stabilität, Anwendungen), Beschreibung analoger Signale und Systeme im Frequenzbereich (Fourierreihen, Fourier Transformation), Faltung, Auto- und Kreuzkorrelationen von determinierten Signalen, Einführung in die stochastische Signaltheorie. Signale und Systeme
Einführung in MATLAB und Anwendung des Simulationstools auf die in der Vorlesung behandelten Konzepte. Digitale Signalverarbeitung
Abtasttheorem (Abtastung analoger Signale, Anti-Aliasing Filter, Rekonstruktion), z-Transformation, Beschreibung zeitdiskreter Signale im Frequenzbereich (zeitdiskrete Fouriertransformation, DFT, FFT, Fensterung und Spektralanalyse), Zeitdiskrete LTI-Systeme (Impulsantwort, Beschreibung mit Differenzen-gleichungen, Übertragungsfunktion, Frequenzgang, Pol- und Nullstellen), Digitale Filter (FIR- und IIR-Filter, Analyse und Entwurf), Spektralanalyse, Korrelation. Digitale Signalverarbeitung
Experimentelles Anwenden der Verfahren der Digitalen Signalverarbeitung mithilfe von Simulations-Werkzeugen. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Chip-Design: Simulation, Synthese, Methodik |
3 | 4 | 5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Chip-Design: Simulation, Synthese, MethodikDieses Modul vermittelt in drei Semestern die Fähigkeit, digitale integrierte Schaltungen selbständig zu entwerfen und in einem FPGA zu verwirklichen. Sie erlernen die Chipentwicklung auf der Basis der Hardwarebeschreibungssprache VHDL. Am Beginn steht die detaillierte Auseinandersetzung mit VHDL und der Funktionsweise eines Simulators. Letzterer ist das wichtigste Werkzeug bei der Chip-Entwicklung, da ein Entwurf mit seiner Hilfe schon vorab "zum Leben erweckt" werden kann. Ab dem dritten Semester erlernen Sie das Erstellen von Hardwarebeschreibungen, die sich nicht nur zur Simulation, sondern auch zur Realisierung als Chip eignen. Für das praxisnahe Arbeiten steht Ihnen dazu ein Prototypensysteme zur Verfügung, mit dem Sie ihre eigenen Entwürfe auf einer industriell weit verbreiteten FPGA-Familie erproben können. Abschließend erlernen Sie Methoden, die auch in großen industriellen Projekten, z.B. beim Design von Mikroprozessorkernen oder Signalverarbeitungseinheiten, zum Einsatz kommen. Chip-Design: Simulation
Motivation des Hardwareentwurfs mit Hardwarebeschreibungssprachen, sequentielle Sprachelemente von VHDL; Variable, Signals und Prozesse im Simulationszyklus; Attributes, Verzögerung, Trägheit, Transport und Inertial Delay; Idealisierung: Delta-Delay; Strukturbeschreibung: entity, architecture, instantiation; Spracherweiterungen: package, Standarderweiterungen nach IEEE: 9-wertige Logik, concurrent Statements, Busse: resolution. Chip-Design: Simulation
Begleitende praktische Übungen mit modernster, industriell eingesetzter Simulations-Software. Chip-Design: Synthese
Synthese digitaler Schaltungen mittels einer Hardwarebeschreibungssprache: Realisierungsmöglichkeiten: TTL, FPGA, Standardzellen und structured ASIC; Überlick über den Entwurfsablauf; Synthesesemantik: Typen, Operatoren, statements; Gefahren asynchroner Schaltungen, vollsynchroner Entwurf, Register und komplexere speichernde Strukturen (Zähler,...); Zustandsautomaten (FSM); IEEE-Standarderweiterungen: package ieee.numeric_std. Chip-Design: Synthese
Begleitende praktische Umsetzung der Hardware-Synthese auf einem FPGA-basierten Rapid-Prototyping-System (SandboxX). Chip-Design: Entwurfsmethodik
Interner Aufbau eines FPGA-Bausteines am Beispiel des eingesetzten Prototyping-Systems; Einsatz von technologiespezifischen Zellen (RAM, ROM, ...); Entwurfsmethode: FSMD mit implizitem Datenpfad; Entwurfmethode: Trennung von Datenpfad und Steuerwerk; Entwurfsbeispiel: Realisierung eines Schnittstellenprotokolls; Kommunikation über ein Memory-Mapped-Protokoll: Entwurf eines Peripheriegerätes für eine CPU; Technologiesimulation: Post-Layout-Simulation; Umgang mit asynchronen Signalen und Clock-Domain-Crossing. Chip-Design: Entwurfsmethodik
Begleitende praktische Umsetzung auf einem FPGA-basierten Rapid-Prototyping-System. |
Embedded Computing
1. | 2. | 3. | 4. | 5. | 6. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Mikroprozessortechnik |
4.5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MikroprozessortechnikMikroprozessoren sind das Kernstück jedes Embedded-Systems. Das Modul "Mikroprozessortechnik" vermittelt Expertenwissen über Architekturen und Programmierung von 8-, 16-, 32- und 64-Bit Mikroprozessorsystemen. Systemstrukturen, Busse und Interrupt- und Eventsysteme sowie Caches und DMA-Controller sind die Schwerpunkte. Anhand von praktischen Beispielen lernen Sie die wichtigsten Peripherieeinheiten kennen und Sie wissen, wie deren Besonderheiten bei der Software-Erstellung zu berücksichtigen sind. Mikroprozessortechnik
Mikroprozessor: Timer, Uart, parallele Ports, Speicherzugriffe, Waitstates, Output und Input, Adress-Datenbus. Systemstrukuten und Busse: synchroner und asynchroner Bus, dezentrale/zentrale Bus Arbitration, Daisy-Chain, I/O-Mapped, memory-mapped, Bus-Signale, Handshaking. Interruptstrukturen: Priorisierung von Interrupts - zentral und dezentral, Pending Interrupt, Nested Interrupt, Autovektoren, Traps, Exeptions. Cache: Typen von Cache (vollassoziativ, direct mapped, teilassoziaitv), Cache-Kohärenz (MESI-Kohärenzprotokoll), L1, L2 Cache, Cache Clear/ Flush, Write Through, Copy-Back, Bus Snooping. Speicher: virtueller, realer Speicher, Segmentierung, Seitenverwaltung, Zugriffsschutz, Segment- und Seitendeskriptoren, TLB, MMU. Mikroprozessortechnik
Praxisrelevante Übungen mit industriell eingesetzten Mikroprozessoren. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Embedded Software Entwicklung |
3 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Embedded Software EntwicklungEmbedded Systems - wie z.B. Antiblockiersysteme bei Autos, Pulsmesser, elektrische Zahnbürsten, TV-Fernbedienungen, … - verfügen über wenig Speicher und beschränkte Ressourcen. Aus diesem Grund erfolgt die Programmierung meistens in der Programmiersprache C. Die Programmierung von Embedded Systems unterscheidet sich von der Software-Entwicklung auf PCs. Sie wird daher auch Firmware-Entwicklung genannt. Dieses Modul vermittelt Spezialwissen im Umgang mit aktuellen Mikrocontroller-Plattformen und die Besonderheiten in der Erstellung von Firmware. Sie lernen dabei die Vorteile von Assembler und der Programmiersprache C sowie die Design-Prinzipien von hardwarenaher Softwareware kennen. Sie können Race-Conditions erkennen und vermeiden und Sie beherrschen die Abschätzung von Latenzzeiten und Jitter für Echtzeitanforderungen. Hardwarenahe Programmierung
Programmierung von Mikrocontrollern in C und Assembler, Makroprogrammierung, Inline-Assembler, Einsatz von Bibliotheken, Compilerdirektiven, Besonderheiten der Erstellung von Firmware, ARM Development Tools, Bibliotheken für ARM, Trace und Debugfunktionen. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kommunikation in Embedded Systems |
5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kommunikation in Embedded SystemsEmbedded Systems sind typischerweise vernetzt und kommunizieren untereinander und mit der Cloud. Die Schwerpunkt-Themen dieses Moduls sind fortgeschrittene Kenntnisse von standardisierten Kommunikationsprotokollen und die Fähigkeit, eigene Kommunikationsschnittstellen zu definieren und zu realisieren. Sie erwerben tiefgreifendes Wissen über die Prinzipien, Gemeinsamkeiten und Unterschiede von folgenden Kommunikationsprotokollen: ISO/OSI Schichtenmodell, serielle Schnittstellen, Feldbus-Systeme, CAN-Bus, Ethernet, TCP/IP, USB. Kommunikationsnetze
Kommunikationssysteme und Übertragungsverfahren: Grundlagen für Kommunikationsprotokolle, ISO/OSI Schichtenmodell, Strukturen von Kommunikationsnetzen; Serielle Schnittstellen: RS485, RS422, RS232, Handshaking (Hardware, Software); CRC: Codierungsgrundlagen, algebraische Grundlagen, Polynomdivisionen, Generatorpolynom, Anwendungen in der Praxis; I²C: Busarbitration, Multimastermode, High Speed I²C, 7- und10-bit Adressierung; Feldbus-Systeme: Aufgaben von Feldbussysteme, Anwendungen in der Praxis, Layer2 und Layer1 von verschiedenen Feldbussystemen, Arbitrationsverfahren bei Feldbussen, CAN-Bus; TCP/IP: Protokollbeschreibung, Anwendungen und Adaptierungen für Embedded Systems. USB: Hardwarearchitektur, USB1.0, USB1.1, USB2.0, Layer1 und 2, USB-Deskriptoren, Enumeration, Firmwaretreiber. Firewire: Hardwarearchitektur, Layer 1 und 2, Arbitration, asynchron, isochron, Tree identification. Kommunikationsnetze
Ausgewählte Themen der Vorlesung werden computer-unterstützt durch konkrete Implementierungen geübt. |
Software
1. | 2. | 3. | 4. | 5. | 6. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Angewandte Software-Entwicklung |
7 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Angewandte Software-EntwicklungNachdem Sie mit den Grundprinzipien der Software-Entwicklung vertraut sind, werden in diesem Modul weiterführende Kenntnisse vermittelt, die für die Umsetzung von Projekten aus der Informatik bedeutsam sind. Dabei liegt der Fokus auf tiefergehenden Konzepten aus dem Bereich der Algorithmen: die Beurteilung von Laufzeitkomplexitäten von Algorithmen, der Entwurf von Schnittstellen, die technischen Umsetzung von Abstraktion und Kapselung und vieles mehr. Nach der Absolvierung des Moduls beherrschen Sie im professionellen Umfeld den versierten Umgang mit Bibliotheken, wie der C++ Standard-Library und der C++ Standard-Template-Library, und besitzen das Know-how zur Entwicklung typunabhängiger, generischer Algorithmen. Software-Entwicklung 2
Suchen, Sortieren, Zufallszahlen, Hashing, Exhaustionsalgorithmen, Topologisches Sortieren, Nichtdeterministische Algorithmen, Komplexitätsanalyse und O-Notation, Grammatik und EBNF, Exceptions; C++ Standard Library, Streams, Manipulatoren, Dateioperationen; Schnittstellen-Entwurf, Abstrakter Datentyp, Klasse und Objekt, Funktions-Templates, Klassen-Templates, Operator Overloading, Standard Template Library (STL) mit Iteratoren, Algorithmen, Sequence-Containern und assoziativen Containern, Funktoren, Negator, Binder; Entwurf generischer Algorithmen. Praktische Umsetzung mit C++. Software-Entwicklung 2
Praktische, computerunterstützte Anwendung derThemen der Vorlesung. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Betriebssysteme |
4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
BetriebssystemeDie Aufgabe eines Betriebssystems ist es, den Applikationen ein besseres, einfaches, klares Modell des Computers zur Verfügung zu stellen. Sie lernen in diesem Modul, was sich hinter diesem Modell verbirgt, wie ein modernes Betriebssystem funktioniert, wie es aufgebaut ist und welche Konzepte software-technisch realisiert werden. Der ergänzende, praktische Übungsbetrieb im Labor rundet die erworbenen Kenntnisse der Vorlesung ab und festigt das Verständnis für die Software-Schicht "Betriebssystem". Grundlagen der Betriebssysteme
Betriebssystemarchitekturen, Kernel, Prozess- und Threadkonzept, Scheduling und Scheduling-Algorithmen, Speicherverwaltung, virtueller Speicher: Einfaches Paging, mehrstufiges und invertiertes Paging, Paging- Algorithmen, Entwurfskriterium für Paging-Systeme, Speicher-Segmen-tierung, Dateisysteme: Benutzersicht und Implementierung, virtuelle Maschinen, Systemdienste, Kernel- und User-Mode, aktuelle Betriebs-systeme in der Praxis (Unix/Linux, MS-Windows, …). Grundlagen der Betriebssysteme
Makefiles, Grundlagen der C-Programmierung, Debugging, Elementare I/O-Funktionen, Standard I/O-Funktionen, Error-Handling, Dateien und Verzeichnisse: Zugriffsfunktionen und -rechte, Environment eines Prozesses und Prozesshierarchie, Erzeugen und Warten auf Prozesse. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Software-Architektur und Design-Pattern |
5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Software-Architektur und Design-PatternDie Entwicklung anspruchsvoller Software erfordert Kreativität, Präzision, Lernfähigkeit und die Bereitschaft, immer wieder neue Sachverhalte zu durchdringen und intelligent zu strukturieren. Vor dem eigentlichen Coden steht die Entwicklung der Software-Architektur, dem Grundgerüst der Software-Applikation. Die bereits im Softwareentwurf erworbenen Kenntnisse samt der objektorientierten Programmierung dienen als Grundlage für diese Lehrveranstaltung und bilden die Basis für die Erstellung moderner Software-Architekturen in allen Anwendungsbereichen. Erfinden Sie das Rad nicht neu - nutzen Sie die in der Praxis bewährten Entwurfsmuster (Design-Pattern) für einfache und elegante Lösungen vieler spezifischen Probleme des objektorientierten Softwareentwurfs. SW-Architektur und Design-Pattern
Software-Entwurfsmethodiken, Objekt-orientierte Analyse (OOA), Objekt-orientiere Modellierung und Design (OOD), grundlegende Architektur-Pattern (Grobdesign), klassische Design Pattern, Design Prinzipien wie Design by Contract, Open-Closed Prinzip und Liskov Substitution Principle; Objekt-orienterte Programmierung (OOP), begleitendes Dokumentationswesen, Erstellung von Systemdokumentationen. SW-Architektur und Design-Pattern
Praktische Umsetzung der Konzepte aus der Vorlesung mit Objekt-orienterter Programmierung in C++. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Parallele Software, Prozesse und Threads |
5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Parallele Software, Prozesse und ThreadsModerne Prozessoren verfügen über mehrere Rechenkerne. Damit eine Software-Applikation davon profitieren kann, etwa um Rechenoperationen zu beschleunigen, muss parallele Software entwickelt werden. Moderne Chip-Multiprozessor-Systeme benötigen hierfür Konzepte wie das Multiprocessing oder Multithreading. Richtig angewandt ist das nicht nur ein sehr spannendes, sondern auch anspruchsvolles Terrain. Darüber hinaus wird Ihnen in diesem Modul die Interprozesskommunikation für den Datenaustausch innerhalb eines Computersystems, als auch die Netzwerkprogrammierung für den Austausch von Informationen in ganzen Rechnernetzen vermittelt. Das umfasst die Kommunikation im Internet, wie auch Cluster-, Cloud- und Gridcomputing. Parallele SW/Systemprogrammierung
Systemnahmes Programmieren, Multiprocessing, Multithreading, funktionale Parallelität und Datenparallelität, Parallelisierungstechniken für Multicore-Systeme und Message Passing-Systeme, Surface-Volume-Effekt, OpenMP, Speedup, Scheduling, Deadlock, Race Condition, Starvation, Synchronisationstechniken, Reentrancy, Thread-Safety, Client-Server-Prinzip, Interprozesskommunikation (lokal und rechnerübergreifend); Behandlung der Konzepte und Techniken in den Betriebssystemen Unix und Windows. Parallele SW/Systemprogrammierung
Praktische Umsetzung der Konzepte der Vorlesung mit C und C++. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Systemmodellierung und agile Prozessmodelle |
3 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Systemmodellierung und agile ProzessmodelleWie entwickelt man ganze Systeme? Wie geht man dabei möglichst versiert vor? Diese Fragen aus der Praxis beantwortet dieses Modul. Im Mittelpunkt steht die Methodik des Entwurfs von softwareintensiven Systemen mit modernen Modellierungssprachen. Hier werden iterative und agile Prozessmodellen wie XP, Scrum, Kanban und TDD vorgestellt und es wird auf die Prinzipien der evolutionären Vorgangsweise in der modernen Systementwicklung eingegangen. Mit diesem Modul verfügen Sie über das nötige Wissen, software-lastige Projekte mit unterstützenden Werkzeugen systematisch zum Erfolg zu führen. Projektmanagement und System-Modellierung
Technisches Projektmanagement: Erstellung von Anforderungsdokumenten wie Lasten- und Pflichtenhefte, Review-Techniken, Risikomanagement, Ressource-Management, Zeit- und Kostenschätzung, Milestones, Projektplanung mittels Projektstrukturplan und Projektablaufplan, Release-Planung, Rollenverteilung, Kompetenz und Verantwortung. Einführung in die Modellierung mit UML, Anwendung der UML für die Analyse und den Entwurf von Software-Systemen, Behandlung von klassischen und agilen Software-Prozessmodellen, agile und iterative Software Entwicklung, Softwaretest-Methodik, Komponententest, Methodik der Fehler- und Performanceanalyse von Software, Software-Metriken, Techniken zur Verbesserung von existierenden Programmcode (Refactoring). Projektmanagement und System-Modellierung
Vertiefen der Konzepte der Vorlesung durch den praktischen Einsatz moderner Software-Werkzeuge begleitend zu den jeweiligen Software-Projekt-Phasen. |
Praxis und Personal Skills
1. | 2. | 3. | 4. | 5. | 6. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Projektmanagement |
5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ProjektmanagementJedes Projekt umfasst neben den Sachaufgaben auch Managementaufgaben zur Planung und Koordinierung der Arbeiten. Dieses Modul konzentriert sich hierbei auf technisches Projektmanagement, welches Themengebiete wie die Erstellung von Anforderungsdokumenten (Lasten- und Pflichtenhefte) sowie Review-Techniken und Risikomanagement umfasst. Weiters erwerben Sie in diesem Modul die Fähigkeit, richtiges Ressourcenmanagement zu betreiben (Zeit- und Kostenschätzung), die Projektplanung mittels Projektstrukturplan und Projektablaufplan durchzuführen und mit Milestones das Projekt zu steuern und damit zum Erfolg zu führen. Projekt-Engineering
Projektmanagement und System-Modellierung
Technisches Projektmanagement: Erstellung von Anforderungsdokumenten wie Lasten- und Pflichtenhefte, Review-Techniken, Risikomanagement, Ressource-Management, Zeit- und Kostenschätzung, Milestones, Projektplanung mittels Projektstrukturplan und Projektablaufplan, Release-Planung, Rollenverteilung, Kompetenz und Verantwortung. Einführung in die Modellierung mit UML, Anwendung der UML für die Analyse und den Entwurf von Software-Systemen, Behandlung von klassischen und agilen Software-Prozessmodellen, agile und iterative Software Entwicklung, Softwaretest-Methodik, Komponententest, Methodik der Fehler- und Performanceanalyse von Software, Software-Metriken, Techniken zur Verbesserung von existierenden Programmcode (Refactoring). Projektmanagement und System-Modellierung
Vertiefen der Konzepte der Vorlesung durch den praktischen Einsatz moderner Software-Werkzeuge begleitend zu den jeweiligen Software-Projekt-Phasen. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Fachsprache Englisch |
2 | 2 | 1.5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Fachsprache EnglischEnglisch ist DIE Sprache der Kommunikation in internationalen Projekten und DIE Sprache der Literatur über High-Tech-Entwicklungen. Teamarbeit, Umgang mit Fachliteratur, mündliche und schriftliche Arbeit von fachbezogenen Inhalten, überzeugtes und selbstsicheres Auftreten in alltäglichen Situationen wie z.B. Vorstellungen von sich und anderen, Small-Talk, Vertreten der eigenen Meinung, Streitgespräche, Einbringen und Bearbeitung von Beschwerden, sowie die Beherrschung von Vorstellungsgesprächen sind Themen dieses Moduls. Sie präsentieren mündliche und schriftliche Arbeitsergebnisse und fachbezogene Inhalte und üben ein überzeugtes und selbstsicheres Auftreten. Fachsprache Englisch 1
Es werden grammatikalische Schwerpunkte aufgefrischt und vertieft, der fachspezifische bzw. alltägliche Wortschatz erweitert und wichtige Redewendungen vermittelt, um eine Verbesserung des schriftlichen und mündlichen Ausdrucks zu erreichen. Themenbereiche sind, unter anderem, Bewerbungsunterlagen, Einstellungsgespräche, sowie aktuelle fachspezifische und allgemeine Themen. Fachsprache Englisch 2
Erweiterung des fachspezifischen bzw. alltäglichen Wortschatzes; wichtige Redewendungen, um eine Verbesserung des schriftlichen und mündlichen Ausdrucks zu erreichen. Themenbereiche sind, unter anderem, Ursache und Wirkung, Voraussagen, Einblicke (historisch, gegenwärtig und zukünftig) in Computer Firmen wie HP, IBM, Google, Microsoft sowie andere IT Hot-Spots. Fachsprache Englisch 3
Schärfung des fachspezifischen bzw. alltäglichen Wortschatzes; wichtige Redewendungen, um eine Verbesserung des schriftlichen und mündlichen Ausdrucks zu erreichen. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Business Management |
1.5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Business ManagementSie lernen die Grundprinzipien des Wirtschaftens und erfahren, was es für die Gründung eines eigenen Startups braucht. Sie wissen nach Abschluss des Moduls nach welchen Kriterien heute Unternehmen zu führen sind (Kundenorientierung statt Shareholder-Value-Prinzip, Überlebensfähigkeit statt Gewinnorientierung, Spezialisierung statt Diversifikation, Nutzen- statt Produktorientierung, Adaptivität statt Langfristplanung, uvm.) und sind mit den wesentlichen unternehmerischen Instrumenten vertraut. Dieses Modul behandelt die wichtigsten Rechtsformen und Sie können die verschiedenen Beschäftigungsverhältnisse einordnen und sind mit den nötigen ökonomischen Grundbegriffen vertraut. In diesem Modul stehen jene Inhalte im Vordergrund, die eine zuverlässige Orientierung in der Unternehmens-, Finanz- und Wirtschaftswelt ermöglichen. Business Management
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Sozialkompetenz |
1 | 1 | 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SozialkompetenzPräsentationstechnik
Planung und Strukturierung von Präsentationen, Präsentationstypen, Visualisierungsregeln, Erstellung von Handouts, Stellenwert der Umgebung, Vor- und Nachteile unterschiedlicher Präsentationsmedien, Stellenwert des richtigen Medienmix, Übung von Präsentationen mit Videoanalyse, Umgang mit Nervosität. Kreativitäts- und Kommunikationstechnik
Kennenlernen und Üben von Methoden zur Ideenfindung (Brainstorming, Reizworttechnik, Brainwriting, Mindmapping, etc.), Einführung in die Moderationstechnik, Grundlagen der Teamarbeit (Gruppennormen, Rollen, Leistungsverhalten, Risikobereitschaft etc.), Kommunikationsmodelle, Üben der freien Rede, Stellenwert verbaler und non-verbaler Kommunikation, Argumentationsmuster, effektive Zuhören als Mittel der Konfliktprophylaxe, aktives Zuhören. Projekt- und Team-Arbeit
Rollen innerhalb des Projektteams, Struktur von Entscheidungsprozessen, Informationsfluss, Grundlage für effektive Kommunikation in Gruppen, kommunikative Prozesse in Gruppen, Grundlage der Gesprächsführung, Schwierigkeiten und Konflikte, Konfliktmanagement. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Studienprojekt |
4 | 3 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
StudienprojektDie Studienprojekte starten im 4. Semester und werden bis zum Ende des 5. Semesters in Teams von 4-6 Studierenden bearbeitet. Projektthemen kommen von den zahlreichen Industrie-Partnern oder aus dem Forschungsbereich der FH-OÖ - der größte seiner Art innerhalb Österreichs. Nicht selten aber hat das Projektthema seinen Ursprung direkt bei den Studierenden selbst. Ein Coach begleitet das Team mit fachlicher Expertise. Die Projektleitung liegt bei den Studierenden. Das Team agiert wie ein kleines Unternehmen - mit genauer Aufgabenteilung, Projektplanung, selbst definierten Zielvorgaben und allem was dazugehört. Der Themenbereich "Arbeiten und Konfliktlösungen im Team" wird anhand konkreter Situationen unter Leitung eines 2. Coaches aufgearbeitet. Die Rollen innerhalb des Projektteams, die Struktur von Entscheidungsprozessen, der Informationsfluss, die Gesprächskultur, Schwierigkeiten und Konflikte und mögliches Konfliktmanagement werden dabei thematisiert. Projektarbeit
Projektarbeit
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Bachelorarbeit |
2 | 11 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
BachelorarbeitBachelorarbeiten sind eigenständige, selbständig abzufassende, wissenschaftliche, schriftliche Arbeiten. Damit weisen Sie ihre Fähigkeiten nach, ausbildungsrelevante Aufgabenstellungen und Zusammenhänge selbstständig und mit wissenschaftlichen Methoden bearbeiten und die Ergebnisse klar darzustellen zu können. Die Bachelorarbeit selbst umfasst eine systematische Aufarbeitung des Stands der Technik und verwandter Arbeiten und in den meisten Fällen eine prototypenhafte Implementierung eines konkreten Hardware- oder/und Software-Systems. Bei der Erstellung der Bachelorarbeit werden Sie individuell von einem Professor oder einer/einem Mitarbeiter:in der Forschungsgruppe des Studiengangs betreut. Seminar Bachelorarbeit I
Bachelorarbeit I
Verfassen einer Bachelorarbeit zu einem Kernthema aus dem Studium auf wissenschaftlicher Grundlage. Bachelorarbeit II
Seminar Bachelorarbeiten
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Berufspraktikum |
18 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
BerufspraktikumIm Berufspraktikums wird das im Studium erworbene theoretische und praktische Wissen in der beruflichen Praxis angewendet. Im Regelfall wird das Praktikum in facheinschlägigen gewerblichen/industriellen Unternehmen oder in Forschungseinrichtungen (im In- oder Ausland) absolviert. Die Tätigkeit erfolgt in einem Aufgabengebiet im Rahmen des Qualifikationsprofils des Studiengangs. Sie werden bei der Suche nach geeigneten Praktikumsstellen unterstützt durch die Bereitstellung von Kontakten zu qualitativ hochwertigen Praktikumstellen und durch die Präzisierung und Vereinbarung der konkreten Projektarbeiten. Berufspraktikum
Im Rahmen des Berufspraktikums arbeiten die Studierenden in einem Unternehmen, das im Berufsfeld des Studiengangs angesiedelt ist, an konkreten Aufgabenstellungen und Projekten mit, um so Erfahrungen im professionellen Umfeld zu sammeln und die während des Studiums erworbenen Kenntnisse praktisch zu vertiefen. Die Integration in das Unternehmens und die Arbeit des Projektteams sowie die dabei gewonnenen persönlichen Erfahrungen sind wichtige Elemente des Praktikums. Zusätzlich werden persönliche Interessen, Neigungen und eine profunde Einschätzung des Berufsfelds in realsozialer Umgebung weiterentwickelt. Kurz gesagt: Arbeiten an einem konkreten Thema in der industriellen Praxis. |
Wahlmodule
1. | 2. | 3. | 4. | 5. | 6. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Chip-Design: ASICs |
5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Chip-Design: ASICsNach Absolvierung dieses Moduls verfügen Sie über tiefgehende Kenntnisse zum digitalen Schaltungsentwurf mit einer ASIC-Standardzellen-CMOS-Technologie wie sie bei modernen, digitalen, integrierten Schaltungen zur Anwendung kommt. Sie verstehen die Verwendung und das Funktionsprinzip der statischen Timing-Analyse und des Clock-Trees im Detail und können eine Post-Synthese-Simulation mit SDF-Timing durchführen. Sie haben Ihre Kenntnisse zum vollsynchron-sequentiellen Schaltungsentwurf in VHDL anhand einer 16bit-RISC-CPU vertieft und haben Wissen aufgebaut, wie eine asynchrone Komponente anzukoppeln ist. Darüber hinaus verstehen Sie die Grundzüge des CMOS-Halbleiterherstellungsprozesses und den Aufbau von digitalen Standardzellen-Bibliotheken für die Synthese und die Simulation (basierend auf dem VITAL-Standard). Chip-Design: ASICs
Umsetzen des bisher erlernten anhand einer komplexen digitalen Schaltung (16bit RISC-Prozessor), inkl. Architekturanalyse, VHDL-Modellierung, Simulation, Synthese (auf der Basis einer ASIC-Library), statischer Timinganalyse. Übersicht zum State-of-the-art ASIC-Entwurf: Auswirkung der RTL-Modellierung auf das Synthese-Ergebnis, Clock-Tree, Timing-Annotation (SDF), Aufbau und Inhalt von Simulation- (VITAL)- und Synthesis-Libraries, Übersicht zum Herstellungsprozess (CMOS). Vorlesung und Übung sind stark ineinander verschränkt. Chip-Design: ASICs
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Mikroelektronik und Schaltungstechnik |
5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Mikroelektronik und SchaltungstechnikDieses Modul vertieft zu einem die schaltungstechnischen Grundlagen aus den Modulen der Semester 1 – 4, zum anderen werden diese aber auch in die Breite geführt. Nach Abschluss des Moduls beherrschen Sie den Umgang mit parasitären Effekten, wie sie in realen digitalen und analogen Schaltungen eine Rolle spielen. Insbesondere wird deren Modellierung und Simulation auf der Ebene ausdehnungsloser Elemente vermittelt. Die genaue Kenntnis der zu Grunde liegenden physikalischen Zusammenhänge wird da vermittelt, wo dies zum Verständnis des Verhaltensmodells notwendig ist. Das Modul ist auf einen Ausschnitt der Mikroelektronik und Halbleiterschaltungstechnik beschränkt. Dieser ist aber so gewählt, dass die den Schaltungen zugrunde liegenden Prinzipien und Methoden in die Kompetenz der TeilnehmerInnen übergehen und somit als Basis für den selbstständigen Ausbau in der beruflichen Praxis oder in weiterführenden Modulen eines Master-Studiums dienen. Mikroelektronik und Schaltungstechnik
SPICE-Simulationsmodelle für elektronische Bauelemente: Aufbau, Genauigkeit, Quellen; IBIS-Modellierung von Chip-I/O: Einbindung von IBIS-Modellen in die SPICE-Simulation. Modellierung der Diode, Analyse nichtlinearer Schaltungen (mit Dioden), Zenerdiode und Suppressordiode, Kapazitätsdiode, Leuchtdiode, Fotodiode; Schaltungsbeispiele mit Dioden; Ebers-Moll-Ersatzschaltbild des BJT, Logische Funktionsrealisierung mit bipolaren Elementen (TTL,...), Kleinsignalersatzschaltung des BJT, Arbeitspunkteinstellung; Transistorschaltungen: Stromquellen, Stromsenken, Stromspiegel, Differenzverstärker, Oszillatoren, Synthesizer und Funktionsgeneratoren (PLL), Kippstufen, Logikfamilien, Speicherfamilien, Spannungsversorgung: Spannungsstabilisierung und –referenz, lineare Spannungsregler, Schaltregler Fortgeschrittene Schaltungstechnik des MOS-Transistors: Latch-Up-Effekt, Miller-Kapazität, Überspannungsschutz Elektrische Ebene digitaler Datenübertragung: Signalpegel, Schwellspannung, Störabstand, dynamisches Verhalten, gängige Definitionen der elektrischen Ebene bei unsymmetrischer Leitungsführung (CMOS, TTL, SSTL, PCI,...), differentielle Signalführung (LVDS, USB,...), Potentialtrennung durch optische und magnetische Kopplung; ADC und DAC: Idealer Umsetzer, statische Fehler bei der Umsetzung, dynamische Fehler bei der Umsetzung; DAC-Verfahren: R2R-Netzwerk, Pulsweitenmodulation; ADC-Verfahren: Parallelumsetzer, Wägeverfahren, Wägeverfahren nach dem switched-capacitor-Prinzip, Pipelined-ADC, Sigma-Delta-ADC; Außenbeschaltung von ADC und DAC: Analoge Pegelumsetzung, Tiefpassfilter, Sample&Hold-Eingänge, Differentielle ADC-Eingänge Mikroelektronik und Schaltungstechnik
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
System-on-Chip-Design |
5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
System-on-Chip-DesignDie Methodik des Entwurfs von komplexen System-on-Chip-Systemen zur effizienten Verarbeitung digitaler Signale ist Thema dieses Moduls. Sie realisieren eine Simulationsstrecke einer bit-genauen (bit-true) Simulation in Matlab und optimieren deren Parameter, um ein Konzept für eine effiziente Implementierung in digitaler Hardware zu entwickeln. Sie lernen dabei die wichtigsten Bausteine der digitalen Signalverarbeitung kennen und können diese in Festkomma-Arithmetik auf einem FPGA real umsetzen. System-on-Chip-Design
Konzepte zur Systemsimulationen und Hardware-Implementierung von Algorithmen der Digitalen Signalverarbeitung in unterschiedlichen Anwendungsgebieten: Fixed-Point-Arithmetik, das Fractional-Format, Quantisierungseffekte bei der AD-Wandlung, Quantisierungseffekte bei der Umsetzung von Algorithmen der digitalen Signalverarbeitung in Fixed-Point-Arithmetik (Quantisierung von Filterkoeffizienten, quantisierte Arithmetik), Skalierung, Optimale Strukturen zur Hardware-Implementierung. Systemsimulation in VHDL: Lesen und Schreiben von Dateien aus der VHDL-Simulation; Simulation eines Systems zur digitalen Verarbeitung von Signalen in Fixed-Point-Arithmetik; Signalverarbeitung mit abstrakten Datentypen. Realisierung des Systems zur Verarbeitung digitaler Signale auf einem FPGA-Prototypenboard. Implementation komplexer Strukturen zur digitalen Signalverarbeitung auf einem FPGA (Arithmetik, Verzögerungen, …). System-on-Chip-Design
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Robotik und Regelungstechnik |
5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Robotik und RegelungstechnikDie Robotik betrachtet Manöver, d.h. definierte Aufgaben, die ein Roboter verrichten soll. Der Begriff Roboter soll dabei entsprechend großzügig aufgefasst werden: Eine Maschine, die durch Greifen, Heben, Transportieren, Manipulieren usw. eine mechanische Arbeit verrichtet. Diese Arbeit besteht aus Prozessabläufen, die einer Automatisierung in der Form einer Steuerung und/oder Regelung bedürfen. Nach der Absolvierung des Moduls beherrschen Sie die Grundlagen der Steuerungs- und Regelungstechnik und ihre Anwendung im Bereich der Robotik. Dieses Know-how ist die notwendige Basis für die klassische Industrie Robotik sowie der mobilen Robotik. Robotik und Regelungstechnik
Vermittlung der Grundlagen, Verfahren und Werkzeuge zum Entwurf von analogen und digitalen Regelkreisen (unter Verwendung geeigneter Simulationstools wie beispielsweise MATLAB/SIMULINK): Modellbildung von Regelstrecken im Zeit- und Frequenzbereich, Intuitiver Reglerentwurf mit Hilfe von einfachen Reglern (Zweipunktregler, PI-Regler), Vorstellung wichtiger Reglertypen (P, PI, PID, Lead/Lag), Systematischer Reglerentwurf mit Hilfe des Frequenzkennlinienverfahrens (zeitkontinuierlicher und digitaler Entwurf), Verifikation mit Hilfe der Simulation. Robotik: Vermittlung der Grundlagen, Verfahren und Werkzeuge zur Analyse und zum Entwurf der Kinematik und Dynamik von Robotern. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Nachrichtenübertragung |
5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
NachrichtenübertragungWas ist Information? Wie funktionieren eine drahtlose und mobile Nachrichtenübertragung und eine Nachrichtenübertragung über ein Glasfaserkabel? Wie wird die Nachricht im Sender physikalisch repräsentiert? Wie kann die Nachricht trotz Störungen durch Rauschen und Verzerrungen fehlerfrei im Empfänger rekonstruiert werden? Diese und weitere zentrale Fragen werden in diesem Modul erklärt und vertieft behandelt. Neben den klassischen analogen Übertragungstechniken Amplitudenmodulation (AM) und Frequenzmodulation (FM) lernen Sie die Pulscodemodulation (PCM) sowie die modernen, digitalen Übertragungsverfahren kennen. Nachrichtenübertragung
Eigenschaften von Übertragungskanälen, Basisbandsignale, Bandpasssignale, äquivalente Basisbandsignale, trägermodulierte Übertragung, Analoge Modulationsverfahren: (AM, FM, PM, Sender- und Empfängerstrukturen, Einflüsse linearer Verzerrungen, additive Rauschstörungen), Pulscodemodulation (PCM): Quantisierungsrauschen, optimale Quantisierung, nichtlineare Kompandierung, S/N Verhältnis bei Übertragungsfehlern, differentielle PCM, Digitale Übertragung: digitale Übertragung im Basisband (Nyquist-Kriterien, Matched-Filterung, Pulsformung, Bitfehlerwahrscheinlichkeit), Digitale Modulationsverfahren (lineare und nichtlineare Modulationsverfahren), Prinzipien der Demodulation, Übertragung unter Impulsinterferenz-Bedingungen), digitale Bandpassübertragung. Nachrichtenübertragung
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Mikroprozessor-Labor |
2.5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Mikroprozessor-LaborDieses Modul behandelt die Analyse von Mikroprozessorsystemen und zeigt Ihnen zielgerichtete Konzepte zur Fehlersuche. Besonderes Augenmerk wird auf den Zusammenhang zwischen Prozessorarchitektur (Caches, Pipeline, Bus- und Speicherhierarchien) und dem Zeitverhalten des Mikroprozessorsystems gelegt. Darüber hinaus können Sie anschließend On-Chip Trace- und Debugging-Hardware, Oszilloskope, Logik- und Protokollanalysatoren einsetzen, um die richtige Funktionsweise von Mikroprozessorsystemen messtechnisch nachzuweisen bzw. Fehler zu lokalisieren. Mikroprozessor-Labor
Analyse und Messung von 32-Bit Mikrocontrollersystemen: Messungen mit einem Oszilloskop, Programmanalyse mit On-Chip Debugging- und Tracing-Modulen, Analyse von Adress/Daten-Bus und Kommunikationsschnittstellen mit Oszilloskopen, Übergang von C – Assembler - Hardware, Interruptlatenz, Caches, DMA-Controller, Pipelining, zeitliche Einschränkung bei der Programmabarbeitung, non-intrusive Debugging. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Linux Device Drivers |
2.5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Linux Device DriversLinux in meinem WLAN-Router und in meinem Drucker? Ja, sicher! Die Anbindung bzw. Einbindung von Geräten in das Betriebssystem Linux ist nicht nur auf Desktop-PCs, sondern auch in Embedded Systems und in einem SoC (System-on-Chip) der Schlüssel für ein leistungsfähiges und gleichzeitig flexibles Gesamtsystem. Der Zugriff auf externe Geräte erfolgt in einem modernen Betriebssystem von einer User-Mode-Applikation über Systemaufrufe, Gerätetreiber und IO-Zugriffe. Dieses Modul vermittelt Ihnen die Fähigkeit, Linux-Device-Treiber selber zu entwickeln und zu testen. Linux Device Drivers
Linux Versionsverwaltung, Cross Compilation, Inbetriebnahme ARM FPGA Plattform, IO-Zugriffe, Debugging, Tracing, Device Tree, Platform Driver, Character Device, Linux Subsysteme, Linux Synchronisation, Linux Signalisierung. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Embedded Visualization with Qt |
2.5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Embedded Visualization with QtIm Mittelpunkt des Moduls steht die Entwicklung von plattformunabhängigen Visualisierungen für Embedded- und Desktop-Systeme. Es wird die methodische Vorgangsweise anhand spezieller Cross-Compiler für das Visualisierungs-Framework (Qt) samt aktueller deklarativer Programmierung (QML) vermittelt. Durch Einbindung des Hardwaresystems (Raspberry Pi, inkl. Sensorik und Touchscreen) können Sie hardware-spezifische Aspekte von z.B. OpenGL-basierten Animationen untersuchen und die optimale Usability auf eingebetteten Systemen erproben und analysieren. Embedded Visualization
Einführung und Grundprinzipien der Embedded Visualization, methodische und konzeptionelle Vorgangsweisen, praktische Umsetzung mit dem Qt-Framework auf der embedded Raspberry-Plattform (Raspbian Grundlagen, Qt Grundlagen, Qt Signal und Slots, Qt Development-Tools für C++, Qt Kits, Cross Compiler Toolchains, Embedded Linux Build-Systeme (Yocto), Responsive GUI Design, Qt-Designer, Qt Layouts, Qt Widgets, Qt Mainwindow, Qt Model View Programming, Qt SQL interface, Qt proxy models, Qt virtual keyboards, Qt Event system, Qt Quick (QML), Qt Quick animations and transitions). |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Künstliche Intelligenz, Machine Learning |
2.5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Künstliche Intelligenz, Machine LearningIn diesem Modul werden aktuelle AI-Technologien und deren Fähigkeiten vorgestellt. Dadurch werden Sie in die Lage versetzt, für Aufgabenstellungen die richtigen AI-Komponenten auszuwählen und miteinander zu vernetzen, um auch komplexere Problemstellungen prototypisch zu lösen. Weiters wird Ihnen die Kompetenz vermittelt, wie solche Prototypen für den Produkteinsatz verändert und getestet werden müssen. Einführung in die Künstliche Intelligenz
Definition und Kontext von AI und Machine Learning, Ansätze zur Entwicklung und Realisierung von AI Systemen, AI Komponenten, Frameworks und deren Fähigkeiten, Einsatz in Produktivsystemen, Forschungsbereiche und offene Probleme, Übungsbeispiele in Python basierend auf Tensorflow |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data Engineering & Cloud Computing |
2.5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data Engineering & Cloud ComputingDie wichtigsten Grundlagen des relationalen Datenbankentwurfs (inkl. Datenmodellierung) sind die Hauptthemen des Moduls. Sie beherrschen die Anwendung von relationalen Datenbanken und sind mit den Einsatzmöglichkeiten und den Verwendungsarten vertraut. Darüber hinaus kennen Sie die wichtigsten Aspekte von modernen Themengebieten wie "Internet of Things" (IoT), "Cloud Computing", sowie die Konzepte der Datenanalyse in Verbindung mit "Big Data" und können in diesen Bereichen auch Datenbanken sinnvoll einsetzen. Data Engineering
Dieses Modul vermittelt die Inhalte in Form eines interaktiven Vortrages mit theoretischen Basisinformationen und praktischen Modellierungs- und Programmier-Beispielen. Grundkonzepte: (1) Datenmodellierung mit dem ER-/EER-Modell, (2) Relationales Modell, (3) Funktionale Abhängigkeiten und Normalisierung, (4) SQL. Weitere ausgesuchte Aspekte im Bereich der relationalen Datenbanken sind Sichten, Datensicherheit, Transaktionen und Mehrbenutzersynchronisation. Weiterführende Konzepte sind Datenbank-Anbindung (Datenbankzugriff in eigenen Anwendungen), Cloud-Computing, Big Data, Internet of Things. Zu den angeführten Themen werden auch praktische Übungen durchgeführt. Zusätzlich erwerben die Studierenden in einem größeren Übungsprojekt weiteres praktisches Wissen, mit dem sie Aufgabenstellungen im Bereich von relationalen Datenbanken im Kontext von Cloud Computing lösen kön-nen. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Design of Printed-Circuit-Boards |
2.5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Design of Printed-Circuit-BoardsSie erwerben theoretische und praktische Grundkenntnisse im Entwurf von Schaltplänen und Layouts für Leiterplatten. Sie können mit diesem Basiswissen Hardware-Prototypen von der Idee bis zum fertigen Prototypen selbstständig entwickeln. Mit den erworbenen Kenntnissen bekommen Sie einen guten Einblick in die Problematik der Leiterplattenentwicklung und müssen Diskussionen mit Experten in diesem Bereich nicht scheuen. Äußerst wichtig sind die erworbenen Kenntnisse für den Umgang mit der elektromagnetischen Verträglichkeit, die für jedes Produkt mit elektronischen Komponenten relevant sind. PCB-Design
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Freies Wahlfach |
2.5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Freies WahlfachFreies Wahlfach
|
Kontakt
E-MailE hsd@fh-hagenberg.at
TelefonT +43 5 0804 22400