Course syllabus for Computer system engineering

Course syllabus adopted 2023-02-04 by Head of Programme (or corresponding).

Overview

  • Swedish nameDatorsystemteknik
  • CodeEDA333
  • Credits7.5 Credits
  • OwnerTKDAT
  • Education cycleFirst-cycle
  • Main field of studyComputer Science and Engineering, Electrical Engineering
  • DepartmentCOMPUTER SCIENCE AND ENGINEERING
  • GradingTH - Pass with distinction (5), Pass with credit (4), Pass (3), Fail

Course round 1

  • Teaching language Swedish
  • Application code 49112
  • Maximum participants165
  • Open for exchange studentsNo
  • Only students with the course round in the programme overview.

Credit distribution

0119 Examination 4.5 c
Grading: TH
0 c0 c0 c4.5 c0 c0 c
  • 11 Okt 2024 am J
0219 Laboratory 3 c
Grading: TH
0 c0 c0 c3 c0 c0 c

In programmes

Examiner

Eligibility

General entry requirements for bachelor's level (first cycle)
Applicants enrolled in a programme at Chalmers where the course is included in the study programme are exempted from fulfilling the requirements above.

Specific entry requirements

The same as for the programme that owns the course.
Applicants enrolled in a programme at Chalmers where the course is included in the study programme are exempted from fulfilling the requirements above.

Course specific prerequisites

EDA452 Introduction to computer engineering and EDA482 Machine oriented programming or equivalent courses.

Aim

The course aims to convey how a modern computer system is constructed and how its hardware modules interact with eachother and with low- level software. Performance issues are particularly emphasized, since many design decisions are made to maximize performance at a given cost, or to minimize cost at a given performance level.

Learning outcomes (after completion of the course the student should be able to)

  • Read and write simple assembly programs for a typical three-address register machine.
  • Identify the basic types of conflicts that occur as a result of pipelining the datapath of a processor.
  • Identify and describe simple methods to avoid and work around these conflicts, describe limitations of these simple methods, and estimate their influence on performance.
  • Use arithmetic instructions (integer and floating-point) in a correct way.
  • Describe the function and performance influence of a memory hierarchy, including caches, main memory and virtual memory, including different parameters for size, block size, and associativity.
  • Compute the performance (for simple load cases) of an I/O system, particularly one consisting of processors, buses, and hard disks.
  • Identify performance bottlenecks in such a system.
  • Explain how computer system performance is defined and measured.
  • Estimate the influence of parameter changes on system performance above.
  • Give an overview of the architecture of a multicore processor.
  • Carry out a simple co-optimization of software (at assembly level) with hardware parameters to reach the best possible cost/performance ratio for a certain system. Present the carried out work in a brief written report.

Content

Lectures, group exercises and laborative work combine to convey basic insights into the design and functionality of a small computer system (with a processor, memory, and I/O). The main focus is on performance and on interaction with low-level software.

Organisation

The course contains lectures, group exercises, and lab work using a simulator of a small computer system. The laborative part ends with a hand-in task.

Literature

Pattersson&Hennessy: "Computer Organization and Design: The Hardware/Software Interface". Additional material via the course homepage in Canvas

Examination including compulsory elements

The course is examined by an individual written exam for 4,5 ECTS points and laboratory project assignments 3 ECTS points.

The Laboratory work is carried out in groups and graded with pass (P) or fail (F). One of the assignments is a project which is graded fail (F), 3, 4, 5.

The grading scale of the exam and the entire course comprises fail (F), 3, 4, 5.

The grade of the entire course is calculated as the weighted average as follows. 0, 6 and 15 points will be added to the exam points if the grade of the laboratory project is 3, 4 and 5, respectively. The grade of the entire course is then 3, 4, 5 if the number of exam points exceeds 40%/60%/80% of the total number of points in the exam. Note that one must have at least grade 3 in the laboratory project assignments as well as the exam in order to pass the entire course.

The course examiner may assess individual students in other ways than what is stated above if there are special reasons for doing so, for example if a student has a decision from Chalmers on educational support due to disability.