A basic pre-requisite for this course should be a participation in the previous "Computer System Fundamentals" course or basic understanding of hardware logic, implementations of binary and floating point operations and basic processor structure. A programming course (is already a pre-requisite for Dr. Masson's course) or data structures course is also necessary.