Computer Science Learning Portal

Curated and hosted by Prof. K. R. Chowdhary

Former Scientist, Bhabha Atomic Research Centre (BARC), Mumbai • Former Professor & Head, Department of Computer Science, MBM Engineering College, Jai Narain Vyas University, Jodhpur

Prof. K. R. Chowdhary

Computer Architecture — Lecture Notes and Teaching Resources

This page provides a collection of Computer Architecture lecture notes, slides, tutorials, project material, examination resources, and related teaching resources. The material has been made available as an open educational resource for students, teachers, researchers, and independent learners studying computer organization and architecture.

The resources cover the organization and design of computer systems from digital logic and machine-level data representation through processor organization, memory hierarchy, input-output systems, and parallel processing. The material can be useful for undergraduate Computer Science and Engineering courses as well as for self-study and revision.

About These Materials

These lecture materials were developed and used during teaching of Computer Architecture to B.Tech. Computer Science and Engineering students at the Indian Institute of Technology Jodhpur during the academic sessions 2012–13, 2013–14, and 2014–15. They are presented here as a structured collection of learning resources rather than simply as archived course material.

The collection includes lecture slides, tutorials, quizzes, examination resources, project material, and supporting documents. Some resources retain their original course-specific context because they were developed for actual teaching and assessment.

Course Overview

Prerequisites

Course Description

Computer Architecture introduces the fundamental principles behind the organization and design of computer systems. The course examines how digital logic, data representation, instruction sets, processors, memory systems, input-output mechanisms, and parallel processing work together to form a complete computing system.

The material progresses from digital logic and machine-level representation to processor organization, instruction execution, memory hierarchy, cache organization, virtual memory, I/O systems, communication mechanisms, and parallel processing.

Learning Outcomes

Lecture Notes and Course Modules

The following modules organize the available lecture notes and teaching resources by major areas of Computer Architecture.

Module 1: Digital Logic and Digital Systems

Topics Covered

  • History of computer architecture
  • Combinational and sequential logic circuits
  • FPGA as a building block
  • Multiple representations and layers in hardware design
  • Hardware design tools and languages including Verilog and VHDL
  • Physical constraints including gate delays, power, fan-in, and fan-out

Learning Resources

Module 2: Machine-Level Representation of Data

Topics Covered

  • Data units: bits, bytes, and words
  • Number systems and number bases
  • Fixed-point and floating-point representation
  • Signed numbers and two's complement representation
  • Non-numeric data representation
  • Character and array representation

Learning Resources

Module 3: Assembly-Level Machine Organization

Topics Covered

  • Von Neumann machine and basic computer structure
  • Control unit and instruction execution
  • Instruction sets and addressing modes
  • Assembly language and machine language formats
  • Subroutine calls, I/O, and interrupts
  • Memory segments including stack, heap, and static areas
  • Multiprocessors and Flynn's taxonomy

Learning Resources

Module 4: Memory System Organization and Architecture

Topics Covered

  • Storage systems and memory technologies
  • Memory hierarchy and temporal and spatial locality
  • Main memory organization and operations
  • Latency, cycle time, bandwidth, and interleaving
  • Cache memories, mapping, block size, replacement, and store policies
  • Multiprocessor cache consistency and synchronization
  • Atomic memory operations
  • Virtual memory, page tables, and TLB
  • Fault handling and reliability
  • Error coding, compression, and data integrity

Learning Resources

Module 5: Interfacing, Communication and Parallel Processing

Topics Covered

  • I/O types, handshaking, buffering, and interrupts
  • External storage systems and drives
  • Interrupt structures and acknowledgement
  • Buses, protocols, and DMA
  • Remote access and communication layers
  • Multimedia support
  • RAID architectures
  • Advanced processors and parallel processing

Learning Resources

Additional Course Resources

Projects

Examination Resources

About These Lecture Notes

These Computer Architecture materials are part of a broader collection of open educational resources developed from Prof. K. R. Chowdhary's experience in teaching Computer Science and Engineering. They are intended to support students, teachers, and independent learners who wish to study fundamental and advanced concepts of computer organization and architecture.

The materials may be used for classroom teaching, independent study, revision, tutorials, assignments, and examination preparation. Because some documents were originally prepared for specific courses and academic sessions, learners should use the topic descriptions on this page as a guide to the organization of the available resources.

Related Computer Science Learning Resources

Additional lecture notes and teaching resources in Computer Science and Artificial Intelligence are available through this website.


Feedback and Comments