Microprocessor and Computer Architecture - Syllabus

Course Overview and Structure

Embark on a profound academic exploration as you delve into the Microprocessor and Computer Architecture course (MCA) within the distinguished Tribhuvan university's BCA department. Aligned with the BCA Curriculum, this course (CACS155) seamlessly merges theoretical frameworks with practical sessions, ensuring a comprehensive understanding of the subject. Rigorous assessment based on a 60 + 20 + 20 marks system, coupled with a challenging passing threshold of , propels students to strive for excellence, fostering a deeper grasp of the course content.

This 3 credit-hour journey unfolds as a holistic learning experience, bridging theory and application. Beyond theoretical comprehension, students actively engage in practical sessions, acquiring valuable skills for real-world scenarios. Immerse yourself in this well-structured course, where each element, from the course description to interactive sessions, is meticulously crafted to shape a well-rounded and insightful academic experience.


Course Description

This course is an introduction to microprocessor 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 following specific objectives:

•  To explain the microprocessor.

•  To explain the assembly language programming,

•  To explain the overview of computer organization.

•  To explain the principle of CPU system.

•  To explain the principle of memory system

•  To explain the principle of data flow.

Units

Key Topics

  • Introduction to Functions
    FU-1

    Definition, domain, and range of functions. Understanding the concept of functions and their representations.

  • Graphs of Functions
    FU-2

    Understanding the graphical representation of functions, including the vertical line test and piecewise defined functions.

  • Types of Functions
    FU-3

    Introduction to common functions including linear, power, polynomial, and rational functions.

  • Combining Functions
    FU-4

    Shifting and scaling graphs, sums, differences, products, and quotients of functions, and composite functions.

  • Graphing with Technology
    FU-5

    Using calculators and computers to plot graphs of functions.

  • Exponential Functions
    FU-6

    Definition, exponential behavior, and exponential growth and decay.

  • Inverse Functions and Logarithms
    FU-7

    Understanding inverse functions and logarithms.

Key Topics

  • Introduction to Computers
    IN-01

    An overview of computers and their significance in today's world. This topic sets the stage for understanding the basics of computers.

  • Digital and Analog Computers
    IN-02

    Understanding the difference between digital and analog computers, their characteristics, and applications.

  • Characteristics of Computers
    IN-03

    Exploring the key characteristics of computers, including input, processing, storage, and output.

  • History of Computers
    IN-04

    A brief history of computers, from their inception to the present day, highlighting key milestones and developments.

  • Generations of Computers
    IN-05

    Understanding the different generations of computers, including their features, advantages, and limitations.

  • Classification of Computers
    IN-06

    Categorizing computers based on their size, functionality, and application, including desktops, laptops, and mobile devices.

Key Topics

  • Concept of Backtracking
    BA-1

    This topic introduces the concept of backtracking, a problem-solving strategy that involves recursively exploring all possible solutions and backtracking when a dead end is reached. It also compares and contrasts backtracking with recursion.

  • Backtracking Algorithms
    BA-2

    This topic covers various backtracking algorithms, including those for solving the subset-sum problem, zero-one knapsack problem, and N-queen problem, along with their analysis.

  • Instruction Format and Control Unit
    BA-3

    This topic covers the instruction format, instruction set completeness, and the control unit of a basic computer. It explains how the control unit retrieves and executes instructions.

  • Instruction Cycle and Interrupt Handling
    BA-4

    This topic explains the instruction cycle of a basic computer, including determining the type of instruction, memory reference instructions, input-output instructions, and program interrupts. It also covers the interrupt cycle and how it affects computer operation.

  • Basic Computer Description and Flowchart
    BA-5

    This topic provides a detailed description and flowchart of a basic computer, illustrating how the different components work together to execute instructions and perform tasks.

  • Pointers
    BA-6

    Concept of pointers in programming, including their use in data structures and memory management.

  • 8085 Pin Functions
    BA-7

    This topic covers the functions of each pin on the 8085 microprocessor, including their roles in input/output operations.

  • Demultiplexing of Buses
    BA-8

    This topic discusses the process of demultiplexing buses in the 8085 microprocessor, including its importance in improving system performance.

  • Generation of Control Signals
    BA-9

    This topic explains how control signals are generated in the 8085 microprocessor, including their role in controlling the flow of data.

Key Topics

  • Control Word and Microprogram
    MI-1

    This topic covers the concept of control words and microprograms in microprogrammed control, including their roles in controlling the flow of data and instructions in a computer system.

  • Address Sequencing and Conditional Branch
    MI-2

    This topic explains how address sequencing and conditional branching are used to control the flow of instructions in a microprogrammed control unit, including the use of conditional branch instructions and subroutines.

  • Microinstruction Format and Symbolic Microinstructions
    MI-3

    This topic covers the format of microinstructions and the use of symbolic microinstructions to represent complex control sequences in a microprogrammed control unit.

  • Design of Control Unit
    MI-4

    This topic covers the design principles and considerations for building a control unit using microprogrammed control, including the organization of control memory and the role of the sequencer.

  • Association Rules
    MI-5

    Association rules are statements that describe the relationship between different items in a dataset. They are used to identify patterns and correlations between items.

  • Types of Association Rules
    MI-6

    There are different types of association rules, including single dimensional, multidimensional, multilevel, and quantitative rules. Each type has its own characteristics and applications.

Key Topics

  • CPU Components and Organization
    CE-1

    This topic covers the major components of a CPU and how they are organized to perform tasks efficiently.

  • Instruction Formats and Addressing Modes
    CE-2

    This topic explains the different instruction formats and addressing modes used by a CPU to access and manipulate data.

  • Data Transfer and Manipulation
    CE-3

    This topic discusses the ways in which a CPU transfers and manipulates data, including program control and subroutine calls.

Key Topics

  • Parallel Processing and Flynn's Classification
    PI-1

    This topic covers parallel processing, multiple functional units, and Flynn's classification, which is a method of categorizing computer architectures based on the number of instruction streams and data streams.

  • Pipelining Fundamentals
    PI-2

    This topic introduces the concept of pipelining, demonstrates it with an example, and covers the speedup equation, as well as floating-point addition and subtraction with pipelining.

  • Instruction Level Pipelining
    PI-3

    This topic explores instruction level pipelining, including the instruction cycle, three and four-segment instruction pipelines, pipeline conflicts, and solutions to these conflicts.

  • Vector Processing and Applications
    PI-4

    This topic covers vector processing, its applications, vector operations, and matrix multiplication, which are essential concepts in computer architecture.

  • Vector Processing
    PI-5

    Introduction to vector processing, including vector operations and their applications in computer architecture.

  • Vector Operations
    PI-6

    Delving into the details of vector operations, including their types and uses in various computational tasks.

  • Matrix Multiplication
    PI-7

    Applying vector processing to matrix multiplication, highlighting the performance benefits and computational efficiency.

Lab works

Laboratory Works 

8085 Assembly Language program

1. Multi byte Addition & Subtraction, Multi byte decimal addition & subtraction.

2. Adder and substractor circuit.

3. Study of 8259 programmable interrupt controller - Development of interrupt service routine.

4. Keyboard/display. controller - Keyboard scan - blinking and rolling display.

5. Parallel data transfer

6. Study of Microcomputer development system.