Course Content (Syllabus)
Section 1: Karnaugh map with entered variables, Sequential machines, FSMs with complex transition conditions, Setup and hold time, Metastability, Hazard free circuits, Asynchronous inputs to synchronous circuits, Clock skew.
Section 2: Digital systems architecture, Data paths, Register Transfer Level (RTL), Microoperations, Bus techniques, Arithmetic Logic Unit (ALU), Register file, Timing issues, Pipelining.
Section 3: Control unit of digital systems, Algorithmic State Machines (ASM), Hardwired control, Control unit design methods, Single cycle architecture, Multi cycle architecture, Control units of programmable systems, Performance increase techniques: pipeline, hazards.
Section 4: Circuit design with VHDL Design flow, Code structure, Data types, Operators and Attributes, Concurrent code, Sequential code, Signals and Variables, State machines, Designs of typical circuits, Practice on Modelsim, description of circuits, simulation, synthesis.
Section 5: System design with VHDL, Packages and Components, Functions and Procedures, Design of typical systems, Creation and use of Test-benches for design verification.
Additional bibliography for study
1. Logic and Computer design fundamentals, Third and Fourth edition, M. Morris Mano, Charles R. Kime, Pearson International Edition, 2008
2. Σχεδιασμός κυκλωμάτων με τη VHDL, Volnei A. Pedroni, Εκδόσεις Κλειδάριθμος, 2007
3. RTL Hardware Design Using VHDL, Pong P. Chu, John Wiley & Sons, 2006
4. Advanced FPGA Design: Architecture, Implementation, and Optimization, Steve Kilts, John Wiley & Sons, 2007
5. The Designer’s Guide to VHDL, Third Edition, Peter J. Ashenden, Jim Lewis, Morgan Kaufmann, 2008
6. Digital Engineering Design: A Modern Approach, Richard F. Tinder, Prentice Hall, 1991