Prerequisite (if any): Foundations of Computing Systems, Computer Architecture Lab (prerequisite/corequisite)

Course Content

Introduction: Performance and power characteristics of a computer (3 lectures)

Instruction Set Architecture: Representation of Instructions, Machine instructions, Operands, addressing modes, Instruction formats, Instruction sets, Instruction set architectures - CISC and RISC architectures. (6 lectures)

Organization of a processor: Registers, ALU and Control unit, Data path in a CPU, Instruction cycle, Organization of a control unit - Operations of a control unit, Hardwired control unit, Microprogrammed control unit, pipelining and pipeline hazards (9 lectures)

Memory Subsystem: Semiconductor memories, Memory cells - SRAM and DRAM cells, Internal Organization of a memory chip, Organization of a memory unit, Error correction memories, Interleaved memories, Cache memory unit - Concept of cache memory, Mapping methods, Organization of a cache-memory unit, Fetch and write mechanisms, Memory management unit - Concept of virtual memory, Address translation, Hardware support for memory management. (9 lectures)

I/O Subsystem and System Interconnection: I/O transfers - Program controlled, Interrupt driven and DMA, Privileged and non-privileged instructions, Software interrupts and exceptions. Programs and processes role of interrupts in process state transitions (9 lectures)

Advanced Topics: Parallel architectures, SIMD, MIMD etc., Future trends (6 lectures)

Learning Outcomes

  1. State the history and development of modern computer systems.

  2. Interpret data representation and computer arithmetic.

  3. Determine the key aspects of microarchitecture and instruction set architecture

  4. Estimate performance of computer systems and suggest methods for performance enhancement

  5. Specify the importance of memory hierarchy for efficient memory design and virtual memory to overcome memory wall.

  6. Predict performance of IO subsystems

  7. Describe emerging computing trends and some parallel architectures

Textbooks

  1. Patterson, j.L.Hennessy, Computer Organization and Design: The Hardware/Software Interface, Morgan Kaufmann, 5th edition, 2013, ISBN-13:9780124078864

  2. Smruti R Sarangi, Computer Organisation and Architecture, McGraw Hill Education, 1st edition, 2017, ISBN-13: 978-9332901834

References

  1. Andrew S. Tanenbaum, Structured Computer Organization, Prentice Hall, 6th edition, 2012, ISBN: 978-0132916523.

  2. C. Hamacher, Z. Vranesic and S. Zaky, Computer Organization, McGraw-Hill, 5th edition,2002, ISBN: 0072320869.

  3. J.L.Hennessy, D.A.Patterson, Computer Architecture: a quantitative approach, Morgan Kaufmann, 5th edition, 2011, ISBN: 978-1558605961.

Past Offerings

(Note: Past offerings could be under a different course number.)
  • Offered in Jan-May, 2024 by Sandeep Chandran
  • Offered in Jan-May, 2024 by Sandeep Chandran
  • Offered in Jan-May, 2023 by Vivek Chaturvedi
  • Offered in Jan-May, 2022 by Sandeep Chandran
  • Offered in Jan-May, 2021 by Vivek
  • Offered in Jan-May, 2020 by Vivek
  • Offered in Jan-May, 2019 by Vivek

Course Metadata

Item Details
Course Title Computer Architecture
Course Code CS3060
Course Credits 3-0-0-3
Course Category PMC
Proposing Faculty Vivek Chaturvedi
Approved on Senate 20 of IIT Palakkad
Course prerequisites Foundations of Computing Systems, Computer Architecture Lab (Prerequisite & Corequisite)
Course status NEW
Course revision information Minor revision of CS2600 Computer Organization
Course pre-revision code CS2060