Computer Architecture(CA) Syllabus
This page contains Syllabus of Computer Architecture of CSIT.
Title | Computer Architecture |
Short Name | CA |
Course code | CSC208 |
Nature of course | Theory + Lab |
Third Semester | |
Full marks | 60 + 20 + 20 |
Pass marks | 24 + 8 + 8 |
Credit Hrs | 3 |
Elective/Compulsary | Compulsary |
Course Description
Course Description: This course includes concepts of instruction set architecture,
organization or micro-architecture, and system architecture. The instruction set architecture
includes programmer’s abstraction of computer. The micro-architecture consist internal
representation of computers at register and functional unit level. The system architecture
includes organization of computers at the cache and bus level.
.
Course Objectives
- Discuss representation of data and algorithms used to perform operations on data
- Demonstrate different operations in terms of Micro-operations
- Explain architecture of basic computer and micro-programmed control unit
- Understand and memory and I/O organization of a typical computer system
- Demonstrate benefits of pipelined systems
Units and Unit Content
- 1. Data Representation
- teaching hours: 4 hrs
1.1. Data Representation: Binary Representation, BCD, Alphanumeric Representation,
Complements, Fixed Point representation, Representing Negative Numbers, Floating
Point Representation, Arithmetic with Complements, Overflow, Detecting Overflow
1.2. Other Binary Codes: Gray Code, self Complementing Code, Weighted Code, Excess-3
Code, EBCDIC
1.3. Error Detection Codes: Parity Bit, Odd Parity, Even parity, Parity Generator & Checker
- 2. Register Transfer and Microoperations
- teaching hours: 5 hrs
2.1. Microoperation, Register Transfer Language, Register Transfer, Control Function
2.2. Arithmetic Microoperations: Binary Adder, Binary Adder-subtractor, Binary
Incrementer, Arithmetic Circuit
2.3. Logic Microoperations, Hardware Implementation, Applications of Logic
Microoperations.
2.4. Shift Microoperations: Logical Shift, Circular shift, Arithmetic Shift, Hardware
Implementation of Shifter.
- 3. Basic Computer Organization and Design
- teaching hours: 8 hrs
3.1. Instruction Code, Operation Code, Stored Program Concept
3.2. Registers and memory of Basic Computer, Common Bus System for Basic Computer.
3.3. Instruction Format, Instruction Set Completeness, Control Unit of Basic Computer, Control Timing Signals
3.4. Instruction Cycle of Basic computer, Determining Type of Instruction, MemoryReference Instructions, Input-Output Instructions, Program Interrupt & Interrupt Cycle.3.5. Description and Flowchart of Basic Computer- 4. Microprogrammed Control
- teaching hours: 4 hrs
4.1. Control Word, Microprogram, Control Memory, Control Address Register,
Sequencer
4.2. Address Sequencing, Conditional Branch, Mapping of Instructions, Subroutines,
Microinstruction Format, Symbolic Microinstructions
4.3. Design of Control Unit
- 5. Central Processing Unit
- teaching hours: 4 hrs
5.1. Major Components of CPU, CPU Organization
5.2. Instruction Formats, Addressing Modes, Data Transfer and manipulation, Program Control, Subroutine Call and Return, Types of Interrupt
5.3. RISC vs CISC, Pros and Cons of RISC and CISC, Overlapped Register Windows
- 6. Pipelining
- teaching hours: 6 hrs
6.1. Parallel Processing, Multiple Functional Units, Flynn’s Classification
6.2. Pipelining: Concept and Demonstration with Example, Speedup Equation, Floating
Point addition and Subtraction with Pipelining
6.3. Instruction Level Pipelining: Instruction Cycle, Three & Four-Segment Instruction
Pipeline, Pipeline Conflicts and Solutions
6.4. Vector Processing, Applications, Vector Operations, Matrix Multiplication
- 7. Computer Arithmetic
- teaching hours: 6 hrs
7.1. Addition and Subtraction with Signed Magnitude Data, Addition and Subtraction with Signed 2’s Complement Data
7.2. Multiplication of Signed Magnitude Data, Booth Multiplication, Division of Signed magnitude Data, Divide Overflow
- 8. Input Output Organization
- teaching hours: 4 hrs
8.1. Input-Output Interface: I/O Bus and Interface Modules, I/O vs. Memory Bus, Isolated
vs. Memory-Mapped I/O
8.2. Asynchronous Data Transfer: Strobe, Handshaking
8.3. Modes of Transfer: Programmed I/O, Interrupt-Initiated I/O, Direct memory Access
8.4. Priority Interrupt: Polling, Daisy-Chaining, Parallel Priority Interrupt
8.5. Direct Memory Access, Input-Output Processor, DMA vs. IOP
- 9. Memory Organization
- teaching hours: 4 hrs
9.1 Memory Hierarchy, Main Memory, RAM and ROM Chips, Memory address Map,
Memory Connection to CPU, Auxiliary Memory (magnetic Disk, Magnetic Tape)
9.1 Associative Memory: Hardware Organization, Match Logic, Read Operation, Write
Operation
9.1 Cache Memory: Locality of Reference, Hit & Miss Ratio, Mapping, Write Policies
Lab and Practical works
Laboratory Work
Student should be able to implement and simulate the algorithms by using high level
languages like C/Matlab and/or VHDL/Verilog. Laboratory work must include following
exercises:
1 Laboratory work for familiarizing with the syntax, data types, and operators of
Verilog/VHDL
2 Design of n-bit 2’s complement adder/subtractor
3 Design of Overflow detector in signed number addition
4 Design of parity generator and parity checker
5 Design of encoder and decoders
6 Design of multiplexer
7 Design of registers and memory
8 Memory Mapping
9 Design of control unit
10 Design of ALU
11 Design of CPU
12 Simulation of 5 stage or 4 stage or 3 stage pipelining
13 Simulation of addition and subtraction of signed 2’s complement data
14 Simulation of multiplication and division algorithms