DM548, 2020 — Material

The main text book is

William Stallings: Computer Organization and Architecture — Designing for Performance, Global Edition, 10th edition, Pearson, 2015.

It can be bought in the book store.

Introduction

Supplemental Material

  • Video, “What’s Your Computer Actually Doing?”, Tom Scott

  • Video, “Von Neumann Architecture”, Computerphile

  • Video, “EDSAC Rebuild (Cambridge University’s 1st Computer)”, Computerphile

  • Video, “Punch Card Programming”, Computerphile

  • Video, “Mainframes and the Unix Revolution”, Computerphile

  • Video, “The Factory of Ideas: Working at Bell Labs”, Computerphile

  • Video, “UNIX Special: Profs Kernighan & Brailsford”, Computerphile

  • Video, “Bell Labs’ Research (Prof Brian Kernighan)”, Computerphile

  • Video, “Is it the End for Moore’s Law?”, Computerphile

  • Video, “Hello (World) Abstraction!”, Computerphile

Instruction Sets and x86-64 Assembly

Additional Resources

Supplemental Material

  • Video, “Characters, Symbols and the Unicode Miracle”, Computerphile

  • Video, “Endianness Explained With an Egg”, Computerphile

  • Video, “GOTO, Goto & Goto”, Computerphile

  • Video, “Essentials: Hidden Pointers”, Computerphile

  • Video, “Bootstrapping EDSAC: Initial Order”, Computerphile

  • Video, “Hello World (Assemblers, Considered Harmful?!)”, Computerphile

  • Video, “Wheeler Jump”, Computerphile

  • Video, “ESSENTIALS: Subroutines & The Wheeler Jump”, Computerphile

  • Video, “What is Bootstrapping?”, Computerphile

Computer Arithmetic

Supplemental Material

  • Video, “Binary Addition & Overflow”, Computerphile

  • Video, “Binary: Plusses & Minuses (Why We Use Two’s Complement)”, Computerphile

  • Video, “Floating Point Numbers”, Computerphile

  • Video, “Floating Point Numbers (Part1: Fp vs Fixed)”, Computerphile

  • Video, “Floating Point Numbers (Part2: Fp Addition)”, Computerphile

  • Video, “Why Use Binary?”, Computerphile

  • Video, “Where did Bytes Come From?”, Computerphile

Digital Logic

Supplemental Material

  • Video, “AND OR NOT”, Computerphile

  • Video, “XOR & the Half Adder”, Computerphile

  • Video, “How Computer Memory Works”, Computerphile

  • Video, “Flip Flops, Latches & Memory Details”, Computerphile

  • Video, “Addressing Memory (Pt1)”, Computerphile

A Top-Level View and Interconnection Structures

Supplemental Material

Cache Memory

Internal and External Memory

Supplemental Material

  • Video, “Magnetic Media (Floppies and Tapes)”, Computerphile

  • Video, “Error Detection and Flipping the Bits”, Computerphile

  • Video, “Error Correction”, Computerphile

  • Video, “Multiple Dimension Error Correction”, Computerphile

  • Video, “Correcting Those Errors”, Computerphile

  • Video, “The Perfect Code”, Computerphile

  • Video, “Error Correction & International Book Codes”, Computerphile

  • Video, “Reed Solomon Encoding”, Computerphile

  • Video, “Hamming codes, h■w to ov■rco■e n■ise”, 3Blue1Brown

  • Video, “Hamming codes part 2, the elegance of it all”, 3Blue1Brown

I/O

RISC

Superscalar Processors

Additional Resources

Parallel Processing and Multicore

Additional Resources

  • Video, “Multiple Processor Systems”, Computerphile

  • Video, “Additional Processors”, Computerphile

  • Ring Interconnect

  • Mesh Interconnect

  • Video, “What’s Behind Port Smash?”, Computerphile

  • PortSmash, snoop on another process in processors with simultaneous multi-threading (SMT), e.g., HyperThreading.

  • Zen

Control Unit and Microprogramming

System Programming in C

Additional Resources

Supplemental Material

  • Video, “‘C’ Programming Language: Brian Kernighan”, Computerphile

  • Video, “Why C is so Influential”, Computerphile

  • Video, “Essentials: Pointer Power!”, Computerphile

Exercise Sessions

See the Exam section for a link to a selection of old exam sets.