COMP40001 - Introduction to Computer Systems

The lecture contents for each week will be published in the form of slides and videos and we will hold a live Q&A session on every Friday at 13pm to 14pm BST covering the contents of that week’s lectures and tutorials.

There will be three coursework exercises (CWx in the schedule below).

Links to all the information above will be available through Piazza (Imperial login required).

Quick instructions for Digisim:

  • Download Digisim from CATE as part of the coursework given files (also available here).
  • Decompress and change into the decompressed directory: unzip Digisim.zip && cd Digisim
  • Compile: javac Digisim.java (optional, since the compressed archive already contains all the compiled files)
  • Run: java Digisim
Date Topic Type
W02 L00: Introduction Lecture
W02 L01: Number representation Lecture
W02 L02: Binary arithmetic Lecture
W02 L03: Floating point representation Lecture
W02 CW1: Data representation Coursework
W02: 16/10/2020 - 13-14pm Live Q&A Q&A
     
W03 L04: Boolean algebra and logic gates Lecture
W03 T01: Functions, propositional calculus, de Morgan’s theorem Tutorial
W03 L05: The canonical forms of combinatorial circuits and their minimisation Lecture
W03: 23/10/2020 - 13-14pm Live Q&A Q&A
     
W04 L06: Combinatorial circuit design Lecture
W04 T02: Boolean equations, circuits and Karnaugh maps Tutorial
W04 L07: Time-dependent behaviour of digital circuits with feedback Lecture
W04 CW2: Combinatorial circtuit design Coursework
W04: 30/10/2020 - 13-14pm Live Q&A Q&A
     
W05 L08: Sequential circuits and flip-flops Lecture
W05 T03: Timing in logic circuits Tutorial
W05 L09: Synchronous digital systems Lecture
W05: 06/11/2020 - 13-14pm Live Q&A Q&A
     
W06 L10: Finite state representation of digital circuits Lecture
W06 T04: Two mode counter design Tutorial
W06 L11: Traffic lights -a design example Lecture
W06: 13/11/2020 - 13-14pm Live Q&A Q&A
     
W07 L12: Registers Lecture
W07 T05: Binary sequence recogniser Tutorial
W07 L13: Registers, multiplexers, decoders, comparators Lecture
W07 CW3: Registers Coursework
W07: 20/11/2020 - 13-14pm Live Q&A Q&A
     
W08 L14: Arithmetic Lecture
W08 T06: Binary coded decimal adder Tutorial
W08 L15: The manual processor Lecture
W08: 27/11/2020 - 13-14pm Live Q&A Q&A
     
W09 L16: A manual processor (cont’d) Lecture
W09 T07: A manual processor Tutorial
W09 L17: Random access memory Lecture
W09: 04/12/2020 - 13-14pm Live Q&A Q&A
     
W10 L18: A 32-bit computer architecture Lecture
W10 L19: A 32-bit computer sequencing Lecture
W10: 11/12/2020 - 13-14pm Live Q&A Q&A