Search result: Catalogue data in Autumn Semester 2017
|Electrical Engineering and Information Technology Master|
| Major Courses|
A total of 42 CP must be achieved during the Master Program. The individual study plan is subject to the tutor's approval.
|Computers and Networks|
| Core Subjects|
These core subjects are particularly recommended for the field of "Computers and Networks".
|227-0778-00L||Hardware/Software Codesign||W||6 credits||2V + 2U||L. Thiele|
|Abstract||The course provides advanced knowledge in the design of complex computer systems, in particular embedded systems. Models and methods are discussed that are fundamental for systems that consist of software and hardware components.|
|Objective||The course provides advanced knowledge in the design of complex computer systems, in particular embedded systems. Models and methods are discussed that are fundamental for systems that consist of software and hardware components.|
|Content||The course covers the following subjects: (a) Models for describing hardware and software components (specification), (b) Hardware-Software Interfaces (instruction set, hardware and software components, reconfigurable computing, heterogeneous computer architectures, System-on-Chip), (c) Application specific instruction sets, code generation and retargetable compilation, (d) Performance analysis and estimation techniques, (e) System design (hardware-software partitioning and design space exploration).|
|Lecture notes||Material for exercises, copies of transparencies.|
|Literature||Peter Marwedel, Embedded System Design, Springer, ISBN-13 978-94-007-0256-1, 2011.|
Wayne Wolf. Computers as Components. Morgan Kaufmann, ISBN-13: 978-0123884367, 2012.
|Prerequisites / Notice||Prerequisites for the course is a basic knowledge in the following areas: computer architecture, digital design, software design, embedded systems|
|227-0781-00L||Low-Power System Design||W||6 credits||2V + 2U||J. Beutel|
|Abstract||Introduction to low-power and low-energy design techniques from a systems perspective including aspects both from hard- and software. The focus of this lecture is on cutting across a number of related fields discussing architectural concepts, modeling and measurement techniques as well as software design mainly using the example of networked embedded systems.|
|Objective||Knowledge of the state-of-the-art in low power system design, understanding recent research results and their implication on industrial products.|
|Content||Designing systems with a low energy footprint is an increasingly important. There are many applications for low-power systems ranging from mobile devices powered from batteries such as today's smart phones to energy efficient household appliances and datacenters. Key drivers are to be found mainly in the tremendous increase of mobile devices and the growing integration density requiring to carefully reason about power, both from a provision and consumption viewpoint. Traditional circuit design classes introduce low-power solely from a hardware perspective with a focus on the power performance of a single or at most a hand full of circuit elements. Similarly, low-power aspects are touched in a multitude of other classes, mostly as a side topic. However in successfully designing systems with a low energy footprint it is not sufficient to only look at low-power as an aspect of second class. In modern low-power system design advanced CMOS circuits are of course a key ingredient but successful low-power integration involves many more disciplines such as system architecture, different sources of energy as well as storage and most importantly software and algorithms. In this lecture we will discuss aspects of low-power design as a first class citizen introducing key concepts as well as modeling and measurement techniques focusing mainly on the design of networked embedded systems but of course equally applicable to many other classes of systems. The lecture is further accompanied by a reading seminar as well as exercises and lab sessions.|
|Lecture notes||Exercise and lab materials, copies of lecture slides.|
|Literature||A detailed reading list will be made available in the lecture.|
|Prerequisites / Notice||Knowledge in embedded systems, system software, (wireless) networking, possibly integrated circuits, and hardware software codesign.|
|252-1414-00L||System Security||W||5 credits||2V + 2U||S. Capkun, A. Perrig|
|Abstract||The first part of the lecture covers individual system aspects starting with tamperproof or tamper-resistant hardware in general over operating system related security mechanisms to application software systems, such as host based intrusion detection systems. In the second part, the focus is on system design and methodologies for building secure systems.|
|Objective||In this lecture, students learn about the security requirements and capabilities that are expected from modern hardware, operating systems, and other software environments. An overview of available technologies, algorithms and standards is given, with which these requirements can be met.|
|Content||The first part of the lecture covers individual system's aspects starting with tamperproof or tamperresistant hardware in general over operating system related security mechanisms to application software systems such as host based intrusion detetction systems. The main topics covered are: tamper resistant hardware, CPU support for security, protection mechanisms in the kernel, file system security (permissions / ACLs / network filesystem issues), IPC Security, mechanisms in more modern OS, such as Capabilities and Zones, Libraries and Software tools for security assurance, etc.|
In the second part, the focus is on system design and methodologies for building secure systems. Topics include: patch management, common software faults (buffer overflows, etc.), writing secure software (design, architecture, QA, testing), compiler-supported security, language-supported security, logging and auditing (BSM audit, dtrace, ...), cryptographic support, and trustworthy computing (TCG, SGX).
Along the lectures, model cases will be elaborated and evaluated in the exercises.
|263-4640-00L||Network Security||W||6 credits||2V + 1U + 2A||A. Perrig, S. Frei|
|Abstract||Some of today's most damaging attacks on computer systems involve|
exploitation of network infrastructure, either as the target of attack
or as a vehicle to attack end systems. This course provides an
in-depth study of network attack techniques and methods to defend
|Objective||- Students are familiar with fundamental network security concepts.|
- Students can assess current threats that Internet services and networked devices face, and can evaluate appropriate countermeasures.
- Students can identify and assess known vulnerabilities in a software system that is connected to the Internet (through analysis and penetration testing tools).
- Students have an in-depth understanding of a range of important security technologies.
- Students learn how formal analysis techniques can help in the design of secure networked systems.
|Content||The course will cover topics spanning five broad themes: (1) network|
defense mechanisms such as secure routing protocols, TLS, anonymous
communication systems, network intrusion detection systems, and
public-key infrastructures; (2) network attacks such as denial of
service (DoS) and distributed denial-of-service (DDoS) attacks; (3)
analysis and inference topics such as network forensics and attack
economics; (4) formal analysis techniques for verifying the security
properties of network architectures; and (5) new technologies related
to next-generation networks.
|Prerequisites / Notice||This lecture is intended for students with an interest in securing|
Internet communication services and network devices. Students are
assumed to have knowledge in networking as taught in a Communication
Networks lecture. The course will involve a course project and some
smaller programming projects as part of the homework. Students are
expected to have basic knowledge in network programming in a
programming language such as C/C++, Go, or Python.
| Recommended Subjects|
These courses are recommended, but you are free to choose courses from any other special field. Please consult your tutor.
|227-0101-00L||Discrete-Time and Statistical Signal Processing||W||6 credits||4G||H.‑A. Loeliger|
|Abstract||The course introduces some fundamental topics of digital signal processing with a bias towards applications in communications: discrete-time linear filters, inverse filters and equalization, DFT, discrete-time stochastic processes, elements of detection theory and estimation theory, LMMSE estimation and LMMSE filtering, LMS algorithm, Viterbi algorithm.|
|Objective||The course introduces some fundamental topics of digital signal processing with a bias towards applications in communications. The two main themes are linearity and probability. In the first part of the course, we deepen our understanding of discrete-time linear filters. In the second part of the course, we review the basics of probability theory and discrete-time stochastic processes. We then discuss some basic concepts of detection theory and estimation theory, as well as some practical methods including LMMSE estimation and LMMSE filtering, the LMS algorithm, and the Viterbi algorithm. A recurrent theme throughout the course is the stable and robust "inversion" of a linear filter.|
|Content||1. Discrete-time linear systems and filters:|
state-space realizations, z-transform and spectrum,
decimation and interpolation, digital filter design,
stable realizations and robust inversion.
2. The discrete Fourier transform and its use for digital filtering.
3. The statistical perspective:
probability, random variables, discrete-time stochastic processes;
detection and estimation: MAP, ML, Bayesian MMSE, LMMSE;
Wiener filter, LMS adaptive filter, Viterbi algorithm.
|Lecture notes||Lecture Notes|
|227-0103-00L||Control Systems||W||6 credits||2V + 2U||F. Dörfler|
|Abstract||Study of concepts and methods for the mathematical description and analysis of dynamical systems. The concept of feedback. Design of control systems for single input - single output and multivariable systems.|
|Objective||Study of concepts and methods for the mathematical description and analysis of dynamical systems. The concept of feedback. Design of control systems for single input - single output and multivariable systems.|
|Content||Process automation, concept of control. Modelling of dynamical systems - examples, state space description, linearisation, analytical/numerical solution. Laplace transform, system response for first and second order systems - effect of additional poles and zeros. Closed-loop control - idea of feedback. PID control, Ziegler - Nichols tuning. Stability, Routh-Hurwitz criterion, root locus, frequency response, Bode diagram, Bode gain/phase relationship, controller design via "loop shaping", Nyquist criterion. Feedforward compensation, cascade control. Multivariable systems (transfer matrix, state space representation), multi-loop control, problem of coupling, Relative Gain Array, decoupling, sensitivity to model uncertainty. State space representation (modal description, controllability, control canonical form, observer canonical form), state feedback, pole placement - choice of poles. Observer, observability, duality, separation principle. LQ Regulator, optimal state estimation.|
|Literature||K. J. Aström & R. Murray. Feedback Systems: An Introduction for Scientists and Engineers. Princeton University Press, 2010.|
R. C. Dorf and R. H. Bishop. Modern Control Systems. Prentice Hall, New Jersey, 2007.
G. F. Franklin, J. D. Powell, and A. Emami-Naeini. Feedback Control of Dynamic Systems. Addison-Wesley, 2010.
J. Lunze. Regelungstechnik 1. Springer, Berlin, 2014.
J. Lunze. Regelungstechnik 2. Springer, Berlin, 2014.
|Prerequisites / Notice||Prerequisites: Signal and Systems Theory II. |
MATLAB is used for system analysis and simulation.
|227-0116-00L||VLSI I: From Architectures to VLSI Circuits and FPGAs||W||6 credits||5G||F. K. Gürkaynak, L. Benini|
|Abstract||This first course in a series that extends over three consecutive terms is concerned with tailoring algorithms and with devising high performance hardware architectures for their implementation as ASIC or with FPGAs. The focus is on front end design using HDLs and automatic synthesis for producing industrial-quality circuits.|
|Objective||Understand Very-Large-Scale Integrated Circuits (VLSI chips), Application-Specific Integrated Circuits (ASIC), and Field-Programmable Gate-Arrays (FPGA). Know their organization and be able to identify suitable application areas. Become fluent in front-end design from architectural conception to gate-level netlists. How to model digital circuits with VHDL or SystemVerilog. How to ensure they behave as expected with the aid of simulation, testbenches, and assertions. How to take advantage of automatic synthesis tools to produce industrial-quality VLSI and FPGA circuits. Gain practical experience with the hardware description language VHDL and with industrial Electronic Design Automation (EDA) tools.|
|Content||This course is concerned with system-level issues of VLSI design and FPGA implementations. Topics include:|
- Overview on design methodologies and fabrication depths.
- Levels of abstraction for circuit modeling.
- Organization and configuration of commercial field-programmable components.
- VLSI and FPGA design flows.
- Dedicated and general purpose architectures compared.
- How to obtain an architecture for a given processing algorithm.
- Meeting throughput, area, and power goals by way of architectural transformations.
- Hardware Description Languages (HDL) and the underlying concepts.
- VHDL and SystemVerilog compared.
- VHDL (IEEE standard 1076) for simulation and synthesis.
- A suitable nine-valued logic system (IEEE standard 1164).
- Register Transfer Level (RTL) synthesis and its limitations.
- Building blocks of digital VLSI circuits.
- Functional verification techniques and their limitations.
- Modular and largely reusable testbenches.
- Assertion-based verification.
- Synchronous versus asynchronous circuits.
- The case for synchronous circuits.
- Periodic events and the Anceau diagram.
- Case studies, ASICs compared to microprocessors, DSPs, and FPGAs.
During the exercises, students learn how to model digital ICs with VHDL. They write testbenches for simulation purposes and synthesize gate-level netlists for VLSI chips and FPGAs. Commercial EDA software by leading vendors is being used throughout.
|Lecture notes||Textbook and all further documents in English.|
|Literature||H. Kaeslin: "Top-Down Digital VLSI Design, from Architectures to Gate-Level Circuits and FPGAs", Elsevier, 2014, ISBN 9780128007303.|
|Prerequisites / Notice||Prerequisites: |
Basics of digital circuits.
In written form following the course semester (spring term). Problems are given in English, answers will be accepted in either English oder German.
|227-0197-00L||Wearable Systems I||W||6 credits||4G||G. Tröster, U. Blanke|
|Abstract||Context recognition in mobile communication systems like mobile phone, smart watches and wearable computer will be studied using advanced methods from sensor data fusion, pattern recognition, statistics, data mining and machine learning.|
Context comprises the behavior of individuals and of groups, their activites as well as the local and social environment.
|Objective||Using internal sensors and sensors in our environment including data from the wristwatch, bracelet or internet (crowd sourcing), our 'smart phone' detects our context continuously, e.g. where we are, what we are doing, with whom we are together, what is our constitution, what are our needs. Based on this information our 'smart phone' offers us the appropriate services like a personal assistant.Context comprises user's behavior, his activities, his local and social environment.|
In the data path from the sensor level to signal segmentation to the classification of the context, advanced methods of signal processing, pattern recognition and machine learning will be applied. Sensor data generated by crowdsouring methods are integrated. The validation using MATLAB is followed by implementation and testing on a smart phone.
Context recognition as the crucial function of mobile systems is the main focus of the course. Using MatLab the participants implement and verify the discussed methods also using a smart phone.
|Content||Using internal sensors and sensors in our environment including data from the wristwatch, bracelet or internet (crowd sourcing), our 'smart phone' detects our context continuously, e.g. where we are, what we are doing, with whom we are together, what is our constitution, what are our needs. Based on this information our 'smart phone' offers us the appropriate services like a personal assistant. Context recognition - what is the situation of the user, his activity, his environment, how is he doing, what are his needs - as the central functionality of mobile systems constitutes the focus of the course.|
The main topics of the course include
Sensor nets, sensor signal processing, data fusion, time series (segmentation, similariy measures), supervised learning (Bayes Decision Theory, Decision Trees, Random Forest, kNN-Methods, Support Vector Machine, Adaboost, Deep Learning), clustering (k-means, dbscan, topic models), Recommender Systems, Collaborative Filtering, Crowdsourcing.
The exercises show concrete design problems like motion and gesture recognition using distributed sensors, detection of activity patterns and identification of the local environment.
Presentations of the PhD students and the visit at the Wearable Computing Lab introduce in current research topics and international research projects.
Language: german/english (depending on the participants)
|Lecture notes||Lecture notes for all lessons, assignments and solutions. |
|Literature||Literature will be announced during the lessons.|
|Prerequisites / Notice||No special prerequisites|
|227-0377-00L||Physics of Failure and Failure Analysis of Electronic Devices and Equipment||W||3 credits||2V||U. Sennhauser|
|Abstract||Failures have to be avoided by proper design, material selection and manufacturing. Properties, degradation mechanisms, and expected lifetime of materials are introduced and the basics of failure analysis and analysis equipment are presented. Failures will be demonstrated experimentally and the opportunity is offered to perform a failure analysis with advanced equipment in the laboratory.|
|Objective||Introduction to the degradation and failure mechanisms and causes of electronic components, devices and systems as well as to methods and tools of reliability testing, characterization and failure analysis.|
|Content||Summary of reliability and failure analysis terminology; physics of failure: materials properties, physical processes and failure mechanisms; failure analysis of ICs, PCBs, opto-electronics, discrete and other components and devices; basics and properties of instruments; application in circuit design and reliability analysis|
|Lecture notes||Comprehensive copy of transparencies|
|252-0437-00L||Distributed Algorithms||W||4 credits||3V||F. Mattern|
|Abstract||Models of distributed computations, time space diagrams, virtual time, logical clocks and causality, wave algorithms, parallel and distributed graph traversal, consistent snapshots, mutual exclusion, election and symmetry breaking, distributed termination detection, garbage collection in distributed systems, monitoring distributed systems, global predicates.|
|Objective||Become acquainted with models and algorithms for distributed systems.|
|Content||Verteilte Algorithmen sind Verfahren, die dadurch charakterisiert sind, dass mehrere autonome Prozesse gleichzeitig Teile eines gemeinsamen Problems in kooperativer Weise bearbeiten und der dabei erforderliche Informationsaustausch ausschliesslich über Nachrichten erfolgt. Derartige Algorithmen kommen im Rahmen verteilter Systeme zum Einsatz, bei denen kein gemeinsamer Speicher existiert und die Übertragungszeit von Nachrichten i.a. nicht vernachlässigt werden kann. Da dabei kein Prozess eine aktuelle konsistente Sicht des globalen Zustands besitzt, führt dies zu interessanten Problemen.|
Im einzelnen werden u.a. folgende Themen behandelt:
Modelle verteilter Berechnungen; Raum-Zeit Diagramme; Virtuelle Zeit; Logische Uhren und Kausalität; Wellenalgorithmen; Verteilte und parallele Graphtraversierung; Berechnung konsistenter Schnappschüsse; Wechselseitiger Ausschluss; Election und Symmetriebrechung; Verteilte Terminierung; Garbage-Collection in verteilten Systemen; Beobachten verteilter Systeme; Berechnung globaler Prädikate.
|Literature||- F. Mattern: Verteilte Basisalgorithmen, Springer-Verlag|
- G. Tel: Topics in Distributed Algorithms, Cambridge University Press
- G. Tel: Introduction to Distributed Algorithms, Cambridge University Press, 2nd edition
- A.D. Kshemkalyani, M. Singhal: Distributed Computing, Cambridge University Press
- N. Lynch: Distributed Algorithms, Morgan Kaufmann Publ
|227-0447-00L||Image Analysis and Computer Vision||W||6 credits||3V + 1U||L. Van Gool, O. Göksel, E. Konukoglu|
|Abstract||Light and perception. Digital image formation. Image enhancement and feature extraction. Unitary transformations. Color and texture. Image segmentation and deformable shape matching. Motion extraction and tracking. 3D data extraction. Invariant features. Specific object recognition and object class recognition.|
|Objective||Overview of the most important concepts of image formation, perception and analysis, and Computer Vision. Gaining own experience through practical computer and programming exercises.|
|Content||The first part of the course starts off from an overview of existing and emerging applications that need computer vision. It shows that the realm of image processing is no longer restricted to the factory floor, but is entering several fields of our daily life. First it is investigated how the parameters of the electromagnetic waves are related to our perception. Also the interaction of light with matter is considered. The most important hardware components of technical vision systems, such as cameras, optical devices and illumination sources are discussed. The course then turns to the steps that are necessary to arrive at the discrete images that serve as input to algorithms. The next part describes necessary preprocessing steps of image analysis, that enhance image quality and/or detect specific features. Linear and non-linear filters are introduced for that purpose. The course will continue by analyzing procedures allowing to extract additional types of basic information from multiple images, with motion and depth as two important examples. The estimation of image velocities (optical flow) will get due attention and methods for object tracking will be presented. Several techniques are discussed to extract three-dimensional information about objects and scenes. Finally, approaches for the recognition of specific objects as well as object classes will be discussed and analyzed.|
|Lecture notes||Course material Script, computer demonstrations, exercises and problem solutions|
|Prerequisites / Notice||Prerequisites: |
Basic concepts of mathematical analysis and linear algebra. The computer exercises are based on Linux and C.
The course language is English.
|227-0555-00L||Fault Tolerance in Distributed Systems||W||4 credits||3G||R. Wattenhofer|
|Abstract||Fault-tolerance (failure models, consensus, agreement), replication (primary copy, 2PC, 3PC, Paxos, quorum systems), shared memory (spin locks, concurrency)|
|Objective||Become acquainted with pertinent technologies and architectures of fault-tolerant distributed systems.|
|Content||We discuss fault-tolerance issues (models, consensus, agreement) as well as replication issues (primary copy, 2PC, 3PC, Paxos, quorum systems, distributed storage) and problems with asynchronous multiprocessing (shared memory, spin locks, concurrency).|
|Prerequisites / Notice||This lecture takes place in the second half of the semester; the lecture is the second part of the lecture "Verteilte Systeme" (Distributed Systems, 252-0213-00L). Students may attend at most one of the two lectures.|
|227-0627-00L||Applied Computer Architecture||W||6 credits||4G||A. Gunzinger|
|Abstract||This lecture gives an overview of the requirements and the architecture of parallel computer systems, performance, reliability and costs.|
|Objective||Understand the function, the design and the performance modeling of parallel computer systems.|
|Content||The lecture "Applied Computer Architecture" gives technical and corporate insights in the innovative Computer Systems/Architectures (CPU, GPU, FPGA, special processors) and their real implementations and applications. Often the designs have to deal with technical limits.|
Which computer architecture allows the control of the over 1000 magnets at the Swiss Light Source (SLS)?
Which architecture is behind the alarm center of the Swiss Railway (SBB)?
Which computer architectures are applied for driver assistance systems?
Which computer architecture is hidden behind a professional digital audio mixing desk?
How can data streams of about 30 TB/s, produced by a protone accelerator, be processed in real time?
Can the weather forecast also be processed with GPUs?
How can a good computer architecture be found?
Which are the driving factors in succesful computer architecture design?
|Lecture notes||Script and exercices sheets.|
|Prerequisites / Notice||Prerequisites: |
Basics of computer architecture.
|151-0593-00L||Embedded Control Systems||W||4 credits||6G||J. S. Freudenberg, M. Schmid Daners|
|Abstract||This course provides a comprehensive overview of embedded control systems. The concepts introduced are implemented and verified on a microprocessor-controlled haptic device.|
|Objective||Familiarize students with main architectural principles and concepts of embedded control systems.|
|Content||An embedded system is a microprocessor used as a component in another piece of technology, such as cell phones or automobiles. In this intensive two-week block course the students are presented the principles of embedded digital control systems using a haptic device as an example for a mechatronic system. A haptic interface allows for a human to interact with a computer through the sense of touch.|
Subjects covered in lectures and practical lab exercises include:
- The application of C-programming on a microprocessor
- Digital I/O and serial communication
- Quadrature decoding for wheel position sensing
- Queued analog-to-digital conversion to interface with the analog world
- Pulse width modulation
- Timer interrupts to create sampling time intervals
- System dynamics and virtual worlds with haptic feedback
- Introduction to rapid prototyping
|Lecture notes||Lecture notes, lab instructions, supplemental material|
|Prerequisites / Notice||Prerequisite courses are Control Systems I and Informatics I.|
This course is restricted to 33 students due to limited lab infrastructure. Interested students please contact Marianne Schmid (E-Mail: firstname.lastname@example.org)
After your reservation has been confirmed please register online at www.mystudies.ethz.ch.
Detailed information can be found on the course website
|252-1411-00L||Security of Wireless Networks||W||5 credits||2V + 1U + 1A||S. Capkun|
|Abstract||Core Elements: Wireless communication channel, Wireless network architectures and protocols, Attacks on wireless networks, Protection techniques.|
|Objective||After this course, the students should be able to: describe and classify security goals and attacks in wireless networks; describe security architectures of the following wireless systems and networks: 802.11, GSM/UMTS, RFID, ad hoc/sensor networks; reason about security protocols for wireless network; implement mechanisms to secure|
|Content||Wireless channel basics. Wireless electronic warfare: jamming and target tracking. Basic security protocols in cellular, WLAN and|
multi-hop networks. Recent advances in security of multi-hop networks; RFID privacy challenges and solutions.
- Page 1 of 1