CS501 : Advance Computer Architecture

Course Overview

Course Synopsis

This course will provide the students with an understanding of the various levels of studying computer architecture, with emphasis on instruction set level and register transfer level. This course prepares the students to use basic combinational and sequential building blocks to design larger structures like Arithmetic Logic Units, memory subsystems, I/O subsystems etc.

Course Learning Outcomes

At the end of the course, you should be able to:

  • Understand Instruction Set Architecture design and Central Processing Units of the RISC (Reduced Instruction Set Computers) and the CISC (Complex Instruction Set Computers) type
  • Describe the behavior and structure of a computer using RTL (Register transfer language)
  • Explain Pipelining and instruction level Parallelism
  • Explain the I/O sub systems
  • Understand Magnetic disk drives
  • Explain the memory module of computer
  • Understand Number Systems and Radix Conversion


Course Calendar

1 Introduction
2 Instruction Set Architecture
3 Measurement of performance and Introduction to SRC Processor
4 ISA and Instruction Formats
5 Reverse assembly and Description of SRC in RTL
6 RTL Using Digital Logic Circuits
7 Design Process for ISA of FALCON-A
8 ISA of FALCON-A (contd..)
9 Description of FALCON-A and EAGLE using RTL
10 FALCON-E and ISA Comparison
11 CISC and RISC Architectures
12 CPU Design
13 Structural RTL Description of the FALCON-A
14 External FALCON-A CPU
15 Logic Design and Control Signals Generation in SRC
16 Control Unit Design
17 Machine Reset and Machine Exceptions
18 Pipelining
19 Pipelined SRC
20 Hazards in Pipelining
21 Data forwarding and Instruction Level Parallelism
22 Micro Programming
23 I/O Subsystems
24 Designing Parallel Input and Output Ports
25 Input Output Interface
26 Programmed I/O
27 Interrupt Driven I/O
28 Interrupt Hardware and Software
29 FALSIM
30 Interrupt Priority and Nested Interrupts
31 Direct Memory Access (DMA)
32 Magnetic Disk Drives
33 Error Control and RAID
34 Number Systems and Radix Conversion
35 Multiplication and Division of Integers
36 Floating-Point Arithmetic
37 Components of Memory Systems
38 Memory Modules
39 The Cache
40 Virtual Memory
41 Numerical Examples of DRAM and Cache
42 Performance of I/O Subsystems
43 Networks
44 Communication Medium and Network Topologies
45 Review
46 Pre-Assessment