"False"
Skip to content
printicon
Main menu hidden.
Syllabus:

Computer Organization and Architecture, 7.5 Credits

Swedish name: Datorers uppbyggnad och arkitektur

This syllabus is valid: 2017-07-24 and until further notice

Course code: 5DV193

Credit points: 7.5

Education level: Second cycle

Main Field of Study and progress level: Computing Science: Second cycle, has only first-cycle course/s as entry requirements

Grading scale: Pass with distinction, Pass with merit, Pass, Pass with distinction, Pass, Fail

Responsible department: Department of Computing Science

Established by: Faculty Board of Science and Technology, 2017-09-29

Contents

The course provides a fundamental and detailed review of the development of modern processors, especially those with a reduced instructional set-up (RISC). RISC processors are used with few exceptions in all sorts of computers, especially in modern IT equipment such as mobile phones, tablets and nodes in the Internet of Things (IoT) system.

The course consists of two parts:
Part 1 theory, 4.5 credits
This part of the course covers:

  • how the performance of a computer is measured and the principal factors which limit design, such as the power wall;
  • the instruction set of a modern RISC processor, including how constructs in high-level languages are realized;
  • the representation of both fixed- and floating-point numbers, together with hardware algorithms for fixed-point arithmetic operations;
  • basic processor organization, data and control paths,instruction-level parallelism, pipelining, and multiple issue;
  • memory structure, including memory hierarchies, cache memories, and virtual memory; storage and input / output devices and their interface to the processor and memory;

Part 2, laboratory, 3 credits.
In the laboratory part some of the theories and techniques discussed in the theoretical part are put into practice. This part consists of two mandatory assignments.

Expected learning outcomes

Knowledge and Understanding
After having completed the course the student will be able to: 

  • describe and analyze instructional set-up of a modern processor with a reduced instruction set (RISC); (FSR 1)
  • formulate different instructions in an imperative high-level language based on an RISC processor's instructions; (FSR 2)
  • describe how fixed-point and floating-point numbers are represented in a computer and how hardware is used to perform arithmetic operations on integers; (FSR 3)
  • describe and explain data and control flow in a modern RISC processor; (FSR 4)
  • discuss how pipelining in a processor functions and describe how hazards are resolved in various ways, including bubbles, flushes, and forwarding; (FSR 5)
  • analyze and explain how the memory is organized and managed in a modern computer, including virtual and physical memory, address translation, multilevel, unified and multi-page associative cache memories, translation buffer and page table; (FSR 6)

Skills and Abilities
After having completed the course the student will be able to: 

  • calculate the performance of a modern digital computer from parameters such as processor speed, cycles per instruction, and profiling results for various algorithms in a benchmark; (FSR 7)
  • compute how large a cache must be, given the size of the index, the size of the tag, and the level of associativity; (FSR 8)
  • compute the performance of various forms of memory from given parameters; (FSR 9)
  • discuss input-output units, including hard disks and solid-state disks (SSDs), how they communicate with the processor, and how their performance is computed; (FSR 10)
  • design, implement, and document (with a user manual in English) an assembler for a modern RISC processor which reads words from instruction memory and decomposes them into the individual fields which may be fed to an emulator; (FSR 11)
  • design, implement, and document (with a user manual in English) an emulator for a modern RISC processor; which models faithfully the flow of control (without pipeline); (FSR 12)

Required Knowledge

Univ: To be admitted you must have (or equivalent) 90 ECTS-credits including 60 ECTS-credits in Computing Science or 2 years of completed studies within a study programme (120 ECTS-credits). In both cases, including the courses "C-programming and Unix" (5DV088) and Digital Electronics (5EL006) or equivalent.

Proficiency in English equivalent to Swedish upper Secondary course English A/5. Where the language of instruction is Swedish, applicants must prove proficiency in Swedish to the level required for basic eligibility for higher studies.

Form of instruction

Education consists of lectures and mandatory computer based assignments. In addition to scheduled activities, individual work with the material is also required.

Examination modes

Examination on Part 1 (FSR 1–10) is done by written exam in halls. The grades given on this part are Fail (U), Pass (3) or Pass with Merit (4), or Pass with Distinction (5).
 
The examination of Part 2 (FSR 1, 3, 4, 11, 12) consists of two mandatory assignments that are reported in writing. The part is assessed with one of the grades Fail (U) or Pass (G).
 
On the course as a whole, the grade given are Fail (U), Pass (3) or Pass with Merit (4), or Pass with Distinction (5). To be pass the course, both parts must be passed. The grade given on the course as a whole is the same as the grade on Part 1.

For all students who do not pass the regular examination there is another opportunity to do the examination. A student who has passed an examination may not be re-examined. A student who has taken two tests for a course or segment of a course, without passing, has the right to have another examiner appointed, unless there exist special reasons (Higher Education Ordinance Chapter 6, section 22). Requests for new examiners are made to the head of the Department of Computing Science.

Examination based on this syllabus is guaranteed for two years after the first registration on the course. This applies even if the course is closed down and this syllabus ceased to be valid.

TRANSFER OF CREDITS
Students have the right to be tried on prior education or equivalent knowledge and skills acquired in the profession can be credited for the same education at Umeå University. Application for credit is submitted to the Student Services / Degree. For more information on credit transfer available at Umeå University's student web, www.student.umu.se, and the Higher Education Ordinance (Chapter 6). A refusal of crediting can be appealed (Higher Education chapter 12) to the University Appeals Board. This applies to the whole as part of the application for credit transfer is rejected.

Other regulations

This course may not be used towards a degree, in whole or in part, togehter with another course of similar content. If in doubt, consult the student counselors at the Department of Computing Science and / or the program director of your program.

In particular, this course can not, in whole or in part, be used in a degree together with 5DV118 with the same name. The overlap between these two is 7.5 credits.

Course connections to programmes and degrees
The course is a central course in Master of Science Programme in Computing Science and Engineering.
 

Literature

  • Valid from: 2021 week 30

    Computer organization and design : the hardware/software interface
    Patterson David A., Hennessy John L.
    Sixth edition. : Amsterdam : Morgan Kaufmann : 2020 : 1 volume :
    ISBN: 9780128201091
    Mandatory
    Search the University Library catalogue
    Reading instructions: This is the MIPS edition of the book. There is also an ARM edition, but it's the MIPS edition that is used on the course.

  • Valid from: 2017 week 30

    Computer organization and design : the hardware/software interface
    Patterson David A., Hennessy John L.
    5. ed. : Oxford : Morgan Kaufmann : [2013], cop. 2014 : xxii, 575, 83, 87, 24 p. :
    ISBN: 9780124077263 (pbk.)
    Mandatory
    Search the University Library catalogue