Course Syllabus



This is an introductory course on the structure and functionality of modern computing systems. The syllabus includes the following topics:

  • Description of the basic organization of a modern computer system.
  • Introduction to machine language (assembly) for the MIPS processor.
  • Support of functions and procedures in the hardware. Stack.
  • Representation of integers and floating point numbers.
  • Measuring CPU performance.
  • Single cycle MIPS CPU micro-architecture.
  • MIPS pipelined microarchitecture. Structural, data and control hazards in a pipeline. Data forwarding and pipeline stalling.
  • Interrupts and Exceptions
  • Branches and branch predictions schemes. Static and Dynamic branch prediction.
  • Memory hierarchy and caches. System performance with a memory hierarchy. Cache techniques for performance optimizations.
  • Virtual memory and virtual machines.
  • Main Memory (DRAM) Design and Organization.

         If there is time, we will discuss the following topics:

  • Basic concepts of parallel computer architecture
  • Data-level parallelism (SIMD)
  • Thread-level parallelism
  • Multicore architectures
  • Intel's x86 ISA

Instructors



Nikolaos Bellas

Associate Professor, ECE Department, University of Thessaly

37 Glavani Str., Office : B3.7

Email: nbellas@inf.uth.gr

Phone: 24210-74704

Personal Website

 

Lectures



When:

Mondays 10:00-12:00

Wednesdays 15:00-18:00

 

Where:

Saratsis Hall

Office Hours



Instructor Office Hours (Room B3.7)

Tuesdays, Wednesdays: 13:00-15:00 

 

Teaching Assistants' Office Hours (Room A2)

Wednesdays: 13:00-14:00

Thursdays: 16:00-18:00

Labs



Every Friday 11:15 - 15:00

Room: A1

Textbook



Οργάνωση και Σχεδίαση Υπολογιστών, Τόμοι Α & Β (4η έκδοση)
Patterson & Hennessy
ISBN 978-960-461-351-9
Εκδόσεις Κλειδάριθμος, 2010

Grading



  1. All students that have registered for ECE232 for first time AND are in the second year of their studies will be able to register for the ECE232 Labs if they choose. Their final grade will depend on:
  • Two midterm exams (35%). First midterm accounts for 15%.
  • Final Exam (35%)
  • Labs and Homeworks (30%). Not all Labs carry the same weight for the final grade.

          The final grade will be computed according to the following equation:

           Final Grade = 0,15 * First Midterm + 0,2 * Second Midterm + 0.35 * Final Exam + 0.3 * Labs >= 5

           The following constraints apply:

  • Midterms Average >= 3, and
  • Final Exam >= 3, and
  • Labs >= 5

2. The grade of the remaining students (i.e. those not taking the Labs) will depend 100% on the grade of the Final Exam.