🏫
Module Reviews
  • Welcome
  • School of Computing
    • CP2106 Independent Software Development Project (Orbital)
    • CS1010J Programming Methodology
    • CS1231 Discrete Structures
    • CS2030 Programming Methodology II
    • CS2040 Data Structures and Algorithms
    • CS2100 Computer Organisation
    • CS2102 Database Systems
    • CS2103 Software Engineering
    • CS2105 Introduction to Computer Networks
    • CS2106 Introduction to Operating Systems
    • CS3103 Computer Networks Practice
    • CS3223 Database Systems Implementation
    • CS3230 Design and Analysis of Algorithms
    • ES2660 Communicating in the Information Age
    • IS1103 IS Innovations in Organisations and Society
  • NUS Business School
    • ACC1701 / ACC1002 Accounting for Decision Makers
    • BSP1702 / BSP1004 Legal Environment Of Business
    • BSP1703 / BSP1005 Managerial Economics
    • BSP2701 Global Economy
    • DAO1704 / DSC1007 Decision Analytics using Spreadsheets
    • DAO2702 / DSC2008 Programming for Business Analytics
    • DAO2703 / DSC2006 Operations and Technology Management
    • DBA3701 / DSC3214 Introduction To Optimisation
    • DBA3712 / DSC3224 Dynamic Pricing & Revenue Management
    • DOS3701 / DSC3201 Supply Chain Management
    • DOS3703 / DSC3203 Service Operations Management
    • ES2002 Business Communication for Leaders
    • FIN2704 / FIN2004 Finance
    • FSP4003 Field Service Project
    • MKT1705 / MKT1003 Principles of Marketing
    • MNO1706 / MNO1001 Organisational Behavior
    • MNO2705 / MNO2007 Leadership and Decision Making under Uncertainty
  • Other faculties
    • GEH1035 Phy’cal Qns from Everyday Life
    • GEQ1000 Asking Questions
    • GER1000 Quantitative Reasoning
    • GESS1025 / GES1035 Singapore: Imagining the Next 50 Years
    • GET1004 / GEK1531 Cyber Security
    • LAM1201 Malay 1
    • LAM2201 Malay 2
    • MA2001 / MA1101R Linear Algebra I
    • MA1521 Calculus for Computing
    • PC1141 Introduction to Classical Mechanics
Powered by GitBook
On this page
  • What it is about
  • Assessment components
  • Comments
  • Tutorials
  • Laboratory
  • Mid-terms and Finals
  • Other information

Was this helpful?

  1. School of Computing

CS2100 Computer Organisation

Module: CS2100 Computer Organisation

Semester taken: AY 2019/20 Semester 1

Lecturer: Dr Soo Yuen Jien

Tutor: Mr Tan Hong Jie Uriel

Textbook: Digital Logic Design, 2nd ed., Tan Tuck Choy, Aaron, 2011. McGraw-Hill

What it is about

This module takes a turn in the usual coding that CS students are used to doing and moves towards a more physical approach as it handles mainly hardware components. The main goal is to learn how instructions are being processed in the CPU and identifies the bottlenecks involved in executing a certain line of code, which is especially useful in knowing how to best optimise code. You will also get to build your own circuit and touch a very little bit of C programming.

Assessment components

  • 10 Labs: 13%

  • 3 Assignments: 12%

  • 11 Tutorials: 5%

  • Mid-terms: 20%

  • Finals: 50%

Comments

I had quite a lot of fun in taking this module, especially since the lecturer is the famous “Uncle Soo”. He really can make a difficult content become easy to understand and comprehend, and I really enjoyed listening to his lecture webcasts (though I always play at 2x speed since he tends to speak rather slowly). The use of animations were great in explaining abstract concepts such as pipelines.

Tutorials

The tutorials are 1 hour per week. Most of the time, we will be discussing questions in the tutorial and also to clarify any doubts in the module. Only some of the answers are given to students, but the TAs will generally have access to all the answers. Hence, if your TA is nice, he/she will share the full answers with the class, which is very helpful for learning and revision nearing the final examinations.

There are also regular assignments that need to be completed throughout the course of the semester. The assignments are generally easy as it is possible for you to discuss answers with others taking the same module as you. Difficulty-wise, it should be rather similar to how the tutorials are.

Laboratory

The labs requires you to do all sorts of things related to the module, especially the concepts taught in the lecture a week prior. It starts off relatively easy, as you are only required to do some simple coding in C to have an understanding of how it works. However, it progressively gets more difficult as you work with the digital circuits in the laboratory rooms. The tougher ones are those that requires you to wire the circuit so that a specific output is obtain for a given set of inputs.

The 1 hour lab sessions are definitely not sufficient for the labs in the later half of the module. Hence, it is important for you to read up beforehand what the lab is about, and to prepare (and if possible, test) the circuit diagram before you assemble it physically in the lab. It is a mad rush for time, so work smart and maybe take a quick glance at how others are doing it so that you are doing fine.

Mid-terms and Finals

The mid-terms and finals were all written questions and covers all the material taught so far. The tougher ones are those that requires you to trace the output for a given circuit diagram, which can be very tedious and different from how you trace code. This is entirely dependent on the amount of practice that you had for such questions.

Both the mid-terms and finals allow for a cheatsheet to be brought in. Keep your notes concise for easy reference and you should not have much difficulty with the paper. Be careful of traps in some of the questions, though.

Overall, this module is very different from other modules that Computing students are used to taking, as there is no much code being written. Hence, there is often this love-hate relationship with this module as students do not understand the point of learning and taking this module. However, I believe that this module helps in understand how the computer executes instructions, which is extremely helpful for cutting-edge applications that require that tiny bit of speed improvement.

Other information

Assignment workload: There are 10 in-lab assignments and 3 take-home lab assignments

Project workload: There were no projects.

Readings: None

Recommended if: A compulsory module for some computing majors and a rather interesting exposure to the internal workings of the computer.

Rating: 4.5/5. Overall a very well organised module

Expected grade: A- (was a little worried about finals as I forgot where the venue was, but overall was good)

Actual grade: A

PreviousCS2040 Data Structures and AlgorithmsNextCS2102 Database Systems

Last updated 3 years ago

Was this helpful?

Some aspects of this module requires your boolean algebra that you briefly covered in . Fret not if you forgot some or most of it, as there will be some revision for you during the lectures.

CS1231