Computer Architectures (B-KUL-H05D3A)

3 ECTSEnglish28 Second term
POC Elektrotechniek

This course gives the student a detailed insight into the architecture and organization of modern computer systems. After this course students should be able to:
1. Explain the differences between commercially available computer systems and choose the best suited architecture for a given application
2. Use hardware knowledge to optimize the execution of computer applications, and application knowledge to optimize underlying hardware
3. Critically discuss current trade-offs of modern computer architectures, illustrate them with a real life example, and grasp new developments and trends in the field of computer architectures.

The goal of the exercise sessions is to understand and apply knowledge from theoretical ex-cathedra sessions, and from the studied material.

  • analyze and evaluate computer architectures
  • understand the inside of microprocessors and computers
  • design (simple) computer architectures

To be able to follow this course, you should have had either the following bachelor course or elective master course at KU Leuven:

  • Digitale elektronica en processoren (B-KUL-H01L1A)

  • Computerarchitectuur en systeemsoftware (B-KUL-H01P5A)

  • Computer Architectures and the HW/SW Interface (B-KUL-H0O38A)

If you followed you bachelors elsewhere, you should have had a course that teaches:

  • digital logic
  • gates, circuits and combinational logic (Boolean algebra, Karnaugh maps, tri-state logic,…)
  • sequential logic (flipflops, counters, state machines, ...)
  • computer arithmetic (number representations and arithmetics)
  • Instruction set architectures
  • basis processor architectures (single cycle processor, pipelined processors, caches and virtual memory)


This course unit is a prerequisite for taking the following course units:
H03F6A : Industriële stage: Elektrotechniek / Industrial Internship: Electrical Engineering
H05H2A : Compute Platforms for AI and Embedded Processing
H05W9A : Bedrijfservaring: Elektrotechniek / Industrial Experience: Electrical Engineering
H05B9B : Advanced Platform Architectures and Mapping Methods for Embedded Applications (No longer offered this academic year)
H09L9A : P&D Electronics and Chip Design
H09M0A : P&D Information Systems and Signal Processing
H0E85A : Hardware Security
H0E91A : P&D ICT Security and Networks

This course is identical to the following courses:
H05D5A : Computerarchitecturen

Activities

2.41 ects. Computer Architectures: Lecture (B-KUL-H05D3a)

2.41 ECTSEnglishFormat: Lecture18 Second term
POC Elektrotechniek

Topics covered are:

  • Enhancing Processor Performance with advanced memory techniques
  • Enhancing Processor Performance with advanced parallelization techniques
    • super scalar processing
    • multi-treading and multi-core
    • GPU and application specific processsors
  • System level processor design considerations
    • An overview of Computer Architectures for Desktop, Server, and Embedded Computers

Study cost: 1-10 euros (The information about the study costs as stated here gives an indication and only represents the costs for purchasing new materials. There might be some electronic or second-hand copies available as well. You can use LIMO to check whether the textbook is available in the library. Any potential printing costs and optional course material are not included in this price.)

Handouts of slides + (loosely followed) reference book:

Computer Architecture: A Quantitative Approach
John L. Hennessy, David A. Patterson

0.59 ects. Computer Architectures: Exercises and Laboratory Sessions (B-KUL-H05D4a)

0.59 ECTSEnglishFormat: Practical10 Second term
POC Elektrotechniek

In 3 exercise sessions, we will optimize a specific RISC-V processor to improve performance for a target application. This is done through hardware modifications to the processor, and instruction set design. 

A fourth exercise session will practice pen-and-paper architectural design for processors, preparing for the exam.

Design and improve a processor in verilog to run given code more efficiently.

Evaluation

Evaluation: Computer Architectures (B-KUL-H25D3a)

Type : Partial or continuous assessment with (final) exam during the examination period
Description of evaluation : Written, Report
Type of questions : Open questions
Learning material : Calculator


The project given in the exercise sessions will have to be submitted and is graded, as part of the final grade of this course. The information and knowledge passed in the lectures and the 4th exercise session is evaluated at the exam during the examination period.

During the exam, only non-graphical calculators are allowed.

When retaking this exam, the grade given on the project will be maintained, and be combined with the new evaluation of the exam during the 3rd examination period.