CS2100 Computer Organisation

2 minute read

Published:

Academic Year 2022 - 2023
Semester 1

NUSMods Description

The objective of this module is to familiarise students with the fundamentals of computing devices. Through this module students will understand the basics of data representation, and how the various parts of a computer work, separately and with each other. This allows students to understand the issues in computing devices, and how these issues affect the implementation of solutions. Topics covered include data representation systems, combinational and sequential circuit design techniques, assembly language, processor execution cycles, pipelining, memory hierarchy and input/output systems.

Review

This module is taught by Prof Colin Tan and Prof Prabhu. We had to watch lots of lecture videos (around 5hrs) per week and then there is 1hr of labs, 1hr of tutorials. Labs are generally easy, I breezed through it and left the lab as soon as I was done with the demonstration. Tutorials were tedious to do, but not hard once you get it.

There is a midterm and a final. For midterms, I actually was very nervous in the morning, even though I was actually quite prepared. The nerves got to me when I scored 18/25 (25th percentile) due to carelessness. This is where I start to realise that if the exams are too easy, the tendency is that it is going to turn out badly for me. Alas, I thought I could recover my grades over the finals, but I felt really ill during the period and I messed up the finals as well. That was unfortunate, but I learnt that I cannot have everything go well too. Ended up with a B+ (expected a B given the lack of confidence)

I think this is the most hand-sore module I have ever taken. Do not get me wrong, I do not find the topics hard to understand, it is just very tedious to do certain questions. I particularly struggled with the last 2 chapters (Pipelining and Caching). There are many things during each question that you can trip up on or get careless about without you even knowing. I honestly could not understand why people find this module easy. Sure the content (excluding pipelining and caching) was easy and fun to me, but doing the questions becomes a chore. Finals were done on the worst platform possible for the nature of this module: Examplify. Apparently it was a good idea to put circuits on the screen of the computer where it becomes super hard to trace. =/