Lecture: Computer Engineering
The most important facts about my basic lecture "computer engineering" are summarized in the following:
- Courses: AIW, CI, ET, GES, IIW, LUM, MECH
- Duration: 6 ECTS lecture (incl. exercises)
- Exam: written
- Zeitraum: Winter semester
- Location: Building H, Great Lecture Hall I
Content (Commented university calender)
1. Introduction
- Principles of digital design
- Analog versus Digital
- Gates and flip-flops
- Aspects of digital design
- Integrated cicuits
- Digital devices
- Time-to-market
2. Number Systems and Codes
- General positional number systems
- Representation of numbers
- Binary arithmetic
- Number and character codes
- Codes for detecting and correcting errors
- Codes for serial data transmission
- Binary prefixes
3. Digital Circuits
- Logic signals and gates
- Logic families
- CMOS logic
- CMOS circuits: electrical behavior
- CMOS input and output structures
- Bipolar logic
- CMOS logic families
- CMOS/TLL interfacing
4. Combinational Logic Design (Principles)
- Switching algebra
- Combinational-circuit analysis
- Combinational-circuit synthesis
- Minimization
- Timing hazards
5. Combinational Logic Design (Practices)
- Documentation standards
- Timing of digital circuits
- Decoders and encoders
- Three-state devices
- Multiplexers and demultiplexers
- Exclusive-OR gates and parity circuits
- Comparators
- Adders and subtractors
- Combinational multiplier
- Barrel shifter
- Arithmetic and logic unit (ALU)
6. Sequential Logic Design (Principles)
- State concept and clock signal
- Bistable elements
- Asynchronous latches
- Synchronous latches
- Synchronous flip-flops
- Overview: latches and flip-flops
- Clocked synchronous state-machine analysis
- Clocked synchronous state-machine design
- Designing state machines using state diagrams
- Sequential-circuit design with VHDL
- Decomposing state machines
7. Sequential Logic Design (Practices)
- Sequential-circuit documentation standards
- Latches and flip-flops
- Counters
- Shift registers
- Iterative versus sequential circuits
- Synchronous design methodology
- Impediments to synchronous design
8. Memory, PLDs, CPLDs und FPGAs
- ROM, SRAM, DRAM, SDRAM
- Programmable logic devices (PLDs)
- Complex programmable logic devices (CPLDs)
- Field-programmable gate arrays (FPGAs)
9. Microprocessor Technology (Principles)
- Computer history
- Von Neumann architecture
- Components of a microprocessor system
Literature
- S. Voigt, Lecture notes „Computer Engineering" (German)
- J. Wakerly, Digital Design: Principles and Practices, 4th edition, 2010, Pearson Prentice Hall, ISBN: 978-0-13-613987-4
- D. Hoffmann, Grundlagen der Technischen Informatik (German), 2nd edition, 2010, Carl Hanser Verlag, ISBN: 978-3-446-42150-9
Lecture resources
- Lecture notes (9 chapters, 495 Figures, 688 slides, 350 pages)
- Exercises (12 exercise sheets incl. solutions, 159 slides, 83 pages)
- Quizzes (44 questions incl. solutions, 89 slides, 47 pages)
Note: All resources of the lecture, e.g., lecture notes, exercises, quizzes, exam templates, exam results etc. are provided for downloading in the "e-learning" portal (Stud.IP)!
Evaluation (German; Students lecture evaluation)
- Winter semester 2010/11 (pdf-Download)
- Winter semester 2011/12 (pdf-Download)
- Winter semester 2012/13 (pdf-Download)
Webcast of the lecture (German; full access via TUHH account)
- Motivation, Organisatorisches & Literatur
- Kapitel 1: Einführung in die Technische Informatik
- 1.1 Grundlagen der Digitaltechnik
- 1.2 Analog versus Digital
![]() |
2. Lecture (18.10.2012) |
- 1. Kapitel: Einführung in die Technische Informatik
- 1.3 Gatter und Flipflops
- 1.4 Aspekte der Digitaltechnik
- 1.5 Integrierte Schaltkreise
- 1.6 Digitale Systeme
- 1.7 Time-to-Market
- 2. Kapitel: Zahlendarstellung & Codierung
- 2.1 Zahlensysteme
![]() |
3. Lecture (23.10.2012) |
- 2. Kapitel: Zahlendarstellung & Codierung
- 2.1 Zahlensysteme (Forts.)
- 2.2 Rechnerinterne Zahlenformate
- 2.3 Arithmetische Operationen im Dualsystem
![]() |
4. Lecture (25.10.2012) |
- 2. Kapitel: Zahlendarstellung & Codierung
- 2.4 Zahlen- und Zeichencodes
- 2.5 Fehlererkennende und -korrigierende Codes
- 2.6 Codes zur seriellen Datenübertragung
- 2.7 Binäre Vorsätze für Zweierpotenzen
- 2. Kapitel: Zahlendarstellung & Codierung
- Zusammenfassung
![]() |
6. Lecture (01.11.2012) |
- 3. Kapitel: Digitale Schaltungstechnik
- 3.1 Logische Signale und Gatter
- 3.2 Logikfamilien
- 3.3 CMOS-Logik
- 3.4 CMOS-Schaltungstechnik: Elektrisches Verhalten
![]() |
7. Lecture (06.11.2012) |
- 3. Kapitel (Digitale Schaltungstechnik)
- 3.4 CMOS-Schaltungstechnik: Elektrisches Verhalten
![]() |
8. Lecture (08.11.2012) |
- 3. Kapitel (Digitale Schaltungstechnik)
- 3.4 CMOS-Schaltungstechnik: Elektrisches Verhalten (Forts.)
- 3.5 CMOS-Schaltungen für Ein- und Ausgänge
![]() |
9. Lecture (13.11.2012) |
- 3. Kapitel (Digitale Schaltungstechnik)
- 3.5 CMOS-Schaltungen für Ein- und Ausgänge (Forts.)
- 3.6 Bipolare Logik und TTL-Schaltungstechnik
![]() |
10. Lecture (15.11.2012) |
- 3. Kapitel (Digitale Schaltungstechnik)
- 3.6 Bipolare Logik und TTL-Schaltungstechnik (Forts.)
- 3.7 CMOS-Logikfamilien
- 3.8 CMOS/TTL-Schnittstelle
- Zusammenfassung
![]() |
11. Lecture (22.11.2012) |
- 4. Kapitel: Schaltnetze (Grundlagen)
- 4.1 Boolesche Algebra
- 4.2 Analyse kombinatorischer Schaltungen
![]() |
12. Lecture (27.11.2012) |
- Kapitel 4: Schaltnetze (Grundlagen)
- 4.3 Synthese kombinatorischer Schaltungen
- 4.4 Minimierungsverfahren
![]() |
13. Lecture (29.11.2012) |
- 4. Kapitel: Schaltnetze (Grundlagen)
- 4.4 Minimierungsverfahren (Forts.)
![]() |
14. Lecture (04.12.2012) |
- Kapitel 4: Schaltnetze (Grundlagen)
- 4.5 Störimpulse bei digitalen Schaltungen
- Kapitel 5: Schaltnetze (Anwendungen)
- 5.1 Standards zur Dokumentation
![]() |
15. Lecture (06.12.2012) |
- 5. Kapitel: Schaltnetze (Anwendungen)
- 5.1 Standards zur Dokumentation (Forts.)
- 5.2 Zeitverhalten digitaler Schaltungen
- 5.3 Decodierer und Codierer
- 5.4 Tri-State-Logikgatter und Bussysteme
- 5.5 Multiplexer und Demultiplexer
![]() |
16. Lecture (11.12.2012) |
- 5. Schaltnetze (Anwendungen)
- 5.6 Präfix-Logik, und Paritätsschaltungen
- 5.7 Komparatoren
![]() |
17. Lecture (13.12.2012) |
- 5. Kapitel: Schaltnetze (Anwendungen)
- 5.8 Addierer und Subtrahierer
- 5.9 Multiplizierer
- 5.10 Barrel-Shifter
- 5.11 Arithmetisch-Logische Einheit (ALU)
- 6. Kapitel: Schaltwerke (Grundlagen)
- 6.1 Zustandsbegriff und Taktsignal
- 6.2 Bistabile Speicherelemente
- 6.3 Asynchrone Speicherelemente
![]() |
18. Lecture (18.12.2012) |
- 6. Kapitel: Schaltwerke (Grundlagen)
- 6.3 Asynchrone Speicherelemente (Forts.)
- 6.4 Synchrone taktzustandsgesteuerte Speicherelemente
![]() |
19. Lecture (20.12.2012) |
- 6. Kapitel: Schaltwerke (Grundlagen)
- 6.5 Synchrone taktflankengesteuerte Speicherelemente
- 6.6 Übersicht: Latches und Flipflops
- 6.7 Analyse von Schaltwerken
![]() |
20. Lecture (08.01.2013) |
- Evaluierung der Lehrveranstaltung
- 6. Kapitel: Schaltwerke (Grundlagen)
- Wiederholung: 6.7 Analyse von Schaltwerken
![]() |
21. Lecture (10.01.2013) |
- 6. Kapitel: Schaltwerke (Grundlagen)
- 6.8 Klassisches Design von Schaltwerken
- 6.9 Design von Schaltwerken mit Zustandsübergangsgraphen
![]() |
22. Lecture (15.01.2013) |
- 6. Kapitel: Schaltwerke (Grundlagen)
- 6.9 Design von Schaltwerken mit Zustandsübergangsgraphen (Forts.)
- 6.10 Design von Schaltwerken mit VHDL
![]() |
23. Lecture (17.01.2013) |
- 6. Kapitel: Schaltwerke (Grundlagen)
- 6.10 Design von Schaltwerken mit VHDL (Forts.)
- 6.11 Hierarchische Schaltwerkstrukturen
- 7. Kapitel: Schaltwerke (Anwendungen)
- 7.1 Standards zur Dokumentation
- 7.2 Latches und Flipflops
- 7.3 Zähler
- 7.4 Schieberegister
![]() |
24. Lecture (22.01.2013) |
- 7. Kapitel: Schaltwerke (Anwendungen)
- Wiederholung: 7.4 Schieberegister
- 7.5 Iterative Schaltnetze versus Schaltwerke
- 7.6 Design-Methodik für synchrone Systeme
- 7.7 Problematik bei synchronen Designs
![]() |
25. Lecture (24.01.2013) |
- 7. Kapitel: Schaltwerke (Anwendungen)
- Wiederholung: 7.7 Problematik bei synchronen Designs
- 8. Kapitel: Speicher, PLDs, CPLDs & FPGAs
- 8.1 Speicher
- 8.2 Programmable Logic Devices (PLDs)
![]() |
26. Lecture (31.01.2013) |
- 8. Kapitel: Speicher, PLDs, CPLDs & FPGAs
- 8.2 Programmable Logic Devices (PLDs) (Forts.)
- 8.3 Complex Programmable Logic Devices (CPLDs)
- 8.4 Field-Programmable Gate Arrays (FPGAs)
- Besprechung der Ergebnisse zur Lehrevaluation
- 9. Kapitel: Mikroprozessortechnik (Grundlagen)
- 9.1 Historisches
- 9.2 Von-Neumann-Architektur
- 9.3 Komponenten eines Mikroprozessors