CO200 - Computer Organization and Architecture, July-Dec, 2017

Welcome to the CO200 - Computer Organization and Architecture course page. Click here for the course objectives, outcomes, and the detailed syllabus.

Course Syllabus

  • M1: Computers and Data: Architecture vs. Organization. Frequency, Processor performance. Representation of information.
  • M2: Instruction Set Architecture: Addressing modes. Instruction classes. Handling subroutine calls. MIPS32 programming.
  • M3: ALU Design: Arithmetic and Logical Unit implementation. Integer: Adders, (Ripple carry, Carry lookahead), Subtractors, Multipliers and Dividers. ALU components, ALU design using SystemC.
  • M4: Processor Datapath: Register File, Instruction memory, Data memory. A MIPS32 datapath implementation. Datapath design using SystemC.
  • M5: Processor Control Unit. Instruction interpretation and execution. Combinatinal control, FSM Control, Microprogrammed control. Control Unit design using SystemC.
  • M6: Memory Hierarchy: CPU - Memory interaction, organization of memory modules. Cache memory – Mapping and replacement policies.

Reference Books

  • D Patterson and J Hennessy, Computer Organization and Design - The Hardware/Software Interface. MIPS Edition. 5e. Elsevier, 2014.
  • David A Patterson and John L Hennessy. Computer Organization and Design – The Hardware/Software Interface. ARM Edition. 4e. Elsevier. 2012. (This book is available in the Library).
  • Hamacher, Vranesic, Zaky, Manjikian. Computer Organization and Embedded Systems. 6e. McGraw Hill, 2012.
  • J P Hayes, Computer Architecture and Organization, 3e, McGraw Hill, 1998.
  • M. Morris Mano. Computer System Architecture. 3e. Pearson. 2007.

NPTEL Courses. Matthew Jacob - High Performance Computing, Bhaskaran Raman - Computer Organisation and Architecture, S. Raman - Computer Organization, Jatindra Kumar Deka - Computer Organisation and Architecture.

Course Evaluation

Quizzes, Tutorials, Assignments - 40%, Mid Sem - 20%, Final Exam - 40%.

Assignments/Lab Work

Class Lectures

Title/PDF Annotated Slides
Week 1 Course Introduction
Architecture vs. OrganizationArchitecture vs. Organization - Annotated
Week 2 Memory Detour Memory Detour - Annotated.
Frequency and Performance Frequency and Performance - Annotated.
Tutorial 0 Tutorial 0 - Solutions
Week 3 Data RepresentationData Representation - Annotated.
Tutorial 1 Tutorial 1 - Solutions
M2 - Addressing Modes, MIPS ISA M2 - Addressing Modes, MIPS ISA - Annotated - 1.
Week 4 MIPS Programming Assignment - A0 is out.
Week 5-6 M2 - Addressing Modes, MIPS ISA M2 - Addressing Modes, MIPS ISA - Annotated - 2.
M2 - Addressing Modes, MIPS ISA M2 - Addressing Modes, MIPS ISA - Annotated - 3.
Tutorial 2 Tutorial 2 - Solutions
MIPS Assembly Language Programming:Tutorial and Examples.
Week 6 M2 - Compilation, Program Translation Compilation, Program Translation - Annotated.
Tutorial 3 Tutorial 3 - Solutions
Week 7 M2 - Subroutine Call and Return Subroutine Call and Return - Annotated.
Week 8 MidSem Exam
Week 9 M3 - Arithmetic Logic Unit. ALU Design.ALU Design - Annotated - 1, ALU Design - Annotated - 2.
Adders. Multiplication, Division. Multiplication, Division - Annotated.
Download and install "Core SystemC Language and Examples" from this page (first link in the table).
Week 10-11 M4 - MIPS Datapath and Control Unit. MIPS Datapath.MIPS Datapath - Annotated.
Week 12 M4 - MIPS Datapath and Control Unit. MIPS Control Unit.MIPS Control Unit - Annotated.
Week 13-14 Memory Hierarchy, Caches - 1. Memory Hierarchy, Caches - 1 - Annotated..
Week 14-15 Memory Hierarchy, Caches - 2. Memory Hierarchy, Caches - 2 - Annotated.
Week 15-16 Memory Hierarchy, Caches - 3. Memory Hierarchy, Caches - 3 - Annotated.

Leased Line IP : Load Balanced