URL study guide

https://studiegids.vu.nl/en/courses/2024-2025/XB_40009

Course Objective

1. Explain the basic concepts, historical objectives, and modern functions of digital computers. (Knowledge and understanding) 2. Describe the basic architecture and operation of digital computers. (Knowledge and understanding) 3. Use proficiently binary data representation, number representation, and arithmetic and data conversion. (Knowledge and understanding) (Applying knowledge and understanding) 4. Explain at a proficient level the architecture and operation of each of the main components of a digital computer: the basic processing unit, the hierarchical memory system, the I/O system, and the interconnectionsystem. (Knowledge and understanding) (Communication) 5. Explain at a basic level various system mechanisms for building faster single-node systems, such as pipelining and caching, and large-scale systems. (Knowledge and understanding) (Communication) 6. Demonstrate proficiency in implementing basic operations of digital computers in realistic scenarios. (Knowledge and understanding) (Applying knowledge and understanding) (Lifelong learning skills) 7. Analyze at a basic level the tradeoffs inherent to the design of digital computers, concerning among others performance (simple modeling), scalability (Amdahl's Law), availability, energy consumption, and cost. (Applying knowledge and understanding) (Making judgements) (Lifelong learning skills)

Course Content

Computers are everywhere, in industry, academia, governance, and many other activities that impact our society. But what are they? How do they work? Why do they currently work the way they do? How to analyze them and to improve their performance? Matching the requirements of the IEEE/ACM CS Curriculum, topics for this course include: the architecture, the structure, the operation, and the interconnection of computer components into computer systems, including modern architectures, data representation, assembler programming, virtual machines, the structure of translators, compiling and loading, basic operating systems concepts (I/O, interrupt handling, process).

Teaching Methods

Lectures 4h/week. Tutorial (Instructie) 2h/week. Practical work (Lab) 4h/week, from week 3. Self-study in teams. This course uses dr. Iosup's method for gamification.

Method of Assessment

(Mandatory) basic lab assignments. (Turn in to SAs) (Mandatory) final exam, written, multiple-choice. (Optional) in-class exercises, oral and written. (Optional) mid-term exam, written, multiple-choice. The results of the mid-term exam count only if the final exam is also taken by the student, and only if it increases the final grade of the student. (Optional) self-study booklet and exam pack. (Turn in to TA) (Optional) advanced lab assignments. (Turn in to SAs) All partial results (including the lab, and the mid-term and final exams) are only valid during one academic year. The end grade is the total number of points accumulated across all assessment possibilities scored divided by 1000. It is possible to score a perfect 10 as the final grade. The different course activities are graded as follows: 1) Exam, multiple-choice questions (max 7,500 points) 2) Self-study assignments, including exam preparation (max 2,000 points) 3) Lab assignments (max 4,000 points) 4) In-class activity (max 50 points per session) 5) Various bonus activities. Students do not have to complete every course activity but are free to choose their own path of advancement. There is only one resit opportunity for the exam.

Literature

Books (students can pick any):
- Carl Hamacher and Zvonko Vranesic, Computer Organization, 6th edition, McGraw-Hill Education, 2011. ISBN-13: 978-0073380650
- David A. Patterson and John L. Hennessy, Computer Organization and Design: The Hardware/Software Interface, 5th edition, Morgan Kaufmann, 2013. ISBN-13: 978-0124077263 Additional Study Materials:
- Course and Lab guides are also provided via Canvas.

Target Audience

Bachelor Computer Science (year 1).Bachelor Mathematics (year 3)

Custom Course Registration

The course includes two types of group activities: lab and self-study. Group enrolment takes place in Canvas. In the past few years, students could choose to attend lab sessions on one of two separate days. Choices are made available at the start of the course.

Recommended background knowledge

Mathematics students should have taken at least one prior course in computer programming.
Academic year1/09/2431/08/25
Course level6.00 EC

Language of Tuition

  • English

Study type

  • Premaster
  • Bachelor