Duration
26h Th, 26h Pr, 40h Proj.
Number of credits
Lecturer
Language(s) of instruction
English language
Organisation and examination
Teaching in the first semester, review in January
Schedule
Units courses prerequisite and corequisite
Prerequisite or corequisite units are presented within each program
Learning unit contents
The objectives of the course is to provide to the student a deep understanding on the inner working of the modern computer. The course is organized in two parts:
- the first part is conducting the student through the basic concepts underlying processors, and explains how imperative programs can be translated into machine code;
- the second part provides knowledge on selected techniques that are mandatory for efficiency in modern computers (e.g. pipe-line, cache memory).
Learning outcomes of the learning unit
At the end of this course, the student will understand
- how semiconductor devices can be built to provide Turing-complete computing machines
- how imperative programs can be translated into processor instructions
- how modern techniques for efficient processors impact the execution of programs
This course contributes to the learning outcomes I.1, I.2, II.1, II.2, III.1, III.2, IV.5, IV.7, VI.1, VI.2, VII.1, VII.4, VII.5 of the MSc in electrical engineering.
Prerequisite knowledge and skills
Although not a prerequisite, basic knowledge of digital circuits (logic gates, flip-flops, registers, RAM, ROM) is useful; those notions will be quickly reviewed at the start of the course. We assume knowledge of binary encoding (including two's complement of signed integers) and hexadecimal encoding.
Familiarity with imperative programming is absolutely mandatory.
Planned learning activities and teaching methods
Lectures are given in English. Courses are given on Wednesday afternoon and they generally comprise two hours of ex cathedra course (interaction and question are welcome) followed by two hours of lab or problem session.
The lab sessions cover the design of a basic processor. The problem session essentially focus on the design of a microcode based processor and assembly language programming.
The course also includes programming assignments and building a processor within a digital circuit simulator.
Podcasts are provided in a best effort manner, but they are not updated. It is the responsibility of the student to be aware of the contents of the in-person theoretical and practical sessions, and to know these contents for the exam.
There is an online discussion forum to ask questions about the course. This is the preferred way of interaction. There is no guarantee that mails will be answered.
Mode of delivery (face to face, distance learning, hybrid learning)
Face-to-face course
Additional information:
The course is given during the 1st quadrimester (fall).
Podcasts are provided in a best effort manner, but they are not updated. It is the responsibility of the student to be aware of the contents of the in-person theoretical and practical sessions, and to know these contents for the exam.
Recommended or required readings
Reference text; notes and transparencies available on the course space on eCampus.
Exam(s) in session
Any session
- In-person
written exam ( open-ended questions )
Written work / report
Additional information:
For the written exam, one sheet (2 pages) with a reasonably large typeset or handwritten font (>=10pt) is allowed.
There are two main graded assignments for the course:
- the first consists in building a basic computer from logic gates on, within a simulator of digital circuits;
- the second is a little programming problem to solve using the assembly language of the above computer.
- understanding of the inner working of a basic computer;
- understanding of the inner working of a microcode based computer;
- capability to program in a simple assembly language;
- understanding of the modern hardware techniques for efficient computing.
The grade will be the weighted average of the assignment grade (30%) and of the written exam grade (70%).
There is no guaranteed support for resits.
Work placement(s)
Organisational remarks and main changes to the course
The contents of the theoretical and practical sessions, as well as the assignments and useful links, will be made available on the e-Campus space for the course.
Contacts
Teachers: Pascal Fontaine, Laurent Mathy
Phones: 04 366 28 75, 04 366 27 03
e-mails: Pascal.Fontaine@uliege.be, Laurent.Mathy@uliege.be
Assistants: Gaulthier Gain, François Piron
e-mails: Gaulthier.Gain@uliege.be, Francois.Piron@uliege.be
Student assistant: Thibaud Vanmechelen
Association of one or more MOOCs
Items online
Course material available on eCampus
Course material available on eCampus