Course Description
This course is an introduction to microprocessors and computer architecture. It covers topics in both the physical design of the computer (organization) and the logical design of the computer (architecture).
Course Objectives
The course has the following specific objectives:
To explain the microprocessor.
To explain assembly language programming.
To explain an overview of computer organization.
To explain the principles of the CPU system.
To explain the principles of the memory system.
To explain the principles of data flow.
Unit Contents
Fundamental of Microprocessor
Teaching Hours: 5 hrs
Introduction to Microprocessors, Microprocessor systems with bus organization, Microprocessor architecture and operation, 8085 Microprocessor and its operation, 8085 instruction cycle, machine cycle, T states, addressing modes in 8085, introduction to 8086.
Introduction to Assembly Language Programming
Teaching Hours: 10 hrs
Assembly Language Programming Basics, classification of instructions and addressing modes, 8085 instruction sets, assembling, executing and debugging the programs, developing counters and time delay routines, interfacing concepts.
Basic Computer Architecture
Teaching Hours: 4 hrs
Introduction: History of computer architecture, overview of computer organization, memory hierarchy and cache, organization of hard disk.
Instruction Codes: Stored program organization - indirect addressing, computer registers, common bus system, instruction set, timing and control - instruction cycle.
Microprogrammed Control
Teaching Hours: 10 hrs
Basic computer design of accumulator: control of accumulator register, ALU organization; control memory - address sequencing; conditional branching, mapping of instruction subroutines; microprogram: symbolic microprogram, binary microprogram; design of control unit: basic requirements of control unit, structure of control unit, microprogram sequencer.
Central Processing Unit
Teaching Hours: 10 hrs
General register organization: control word, stack organization and instruction; formats - addressing models.
Data Transfer and Manipulation: Data transfer instructions, data manipulation instructions, arithmetic instructions, logical and bit manipulation instructions, shift instructions.
Program Control: Status bit conditions, conditional branch instructions, subroutine call and return, program interrupt, types of interrupts.
Pipeline, Vector Processing, and Multiprocessors
Teaching Hours: 6 hrs
Parallel processing, pipeline examples: four-segment instruction pipeline, data dependency, handling of branch instructions; vector processing; vector operations, matrix multiplication.
Laboratory Works
8085 Assembly Language program.
Multi-byte addition and subtraction, multi-byte decimal addition and subtraction.
Adder and subtractor circuit.
Study of 8259 programmable interrupt controller - development of interrupt service routine.
Keyboard/display controller - keyboard scan - blinking and rolling display.
Parallel data transfer.
Study of microcomputer development system.