Skip to main content

Teaching

Computer Architecture

Covers computer architecture fundamentals:

  • Introduction to computer memory (SRAM, DRAM) and computer arithmetic 
  • Introduction to VLSI design
  • Pipelines and data hazards
  • Branch prediction 
  • Cache memories 
  • VLIW and superscalar 
  • Out of order execution 
  • Multithreading 
  • Virtual memory, TLB, page tables
  • Cloud computing
  • DRAM design
  • GPU design

The course comprises 

  • Three-hour lecture a week
  • A practical
  • Several home works (3-5)
  • A final exam

Advanced Computer Architecture

Dedicated to advanced topics in computer architecture, typically focusing on

  • Recent trends in chip design and computer architecture 
  • Post von Neumann computer architecture 
  • Domain specific accelerators
  • Emerging memory technologies (ReRAM, MRAM, FeFET)
  • Processing in- and using-memory (in DRAM, SRAM and other memory infrastructures) 
  • Hardware Acceleration of AI
    • Deep learning
    • Models and datasets
    • Core computations
    • AI arithmetic operations 
    • Sparsity and quantization 
    • Hardware accelerators

This course typically comprises 

  • Frontal lectures
  • Practicals
  • Student presentations  
  • Homework (paper review + presentation or a small development project)

Seminar in computer engineering

This is an annual course for postgraduate students with the following themes:

  • Frontal presentations where participants present their research work. The ability to present one's work is a critical skill which is not taught enough. This is your chance to train and perfect this trade. 
  • Guest lectures by industry specialists (technical and commercial).
  • Lectures by faculty members.
  • Entrepreneurship in computer engineering.
  • Other subjects covering recent trends in computer engineering (industry and academic).