Syllabus of Microprocessor and Computer Architecture in BE/Btech (Electronics and Communication Engineering)
MICROPROCESSOR AND COMPUTER ARCHITECTURE
As we know among 10 highest paid jobs Engineering is the one. Most of the students pursuing 11th or 12th from PCM stream dream to be an engineer from any deemed college like IIT (Indian Institute of Technology) or NIT (National Institute of Technology) or IIITs which are located in various cities of our country. After engineering, everyone has a dream to be well placed in any well reputed private company or to be a civil servant like IES.
To be that, you really need to have a brief idea about the subjects and their syllabus which you are going to study. To have a good secured job, you need to have at least 8+ CGPA in your engineering. So in this article, I am going to give you brief idea about syllabus of microprocessor which you have to study in 6th semester of B.Tech. In every subject of B.Tech, there are 5 units in each subject.
SYLLABUS OF MICROPROCESSOR AND COMPUTER ARCHITECTURE
Syllabus of microprocessor and computer architecture includes 5 units which are as:
- Unit 1 : Introduction to 8085 Microprocessor Architecture
- Unit 2 : 8085 Microprocessor Instructions
- Unit 3 : 8085 Microprocessor Interfacing
- Unit 4 : 8086 Microprocessor Architecture and Instruction Set
- Unit 5 : Basic Computer Architecture and Types of Memory
Unit 1: Introduction to 8085 Microprocessor Architecture
This unit includes the following topics:
- Central Processing Unit (CPU) - CPU, Brain of Computer is the most important part of a computer as it is responsible for performing all the arithmetic and logical operations and also controls the computer system. When CPU was fabricated on single chip then this was called MICROPROCESSOR. A computer with a microprocessor as its CPU is known as a Microcomputer. When CPU reads the bit patterns one at a time, it initiates appropriate micro programs through the control unit, and performs the task specified in the instructions.
- Input / Output Devices - Input devices are devices that bring information into a computer while output devices are devices that bring information out of a computer. Input devices accept data and instructions from the user or from another computer system. Examples of input devices are keyboard or switches or analog to digital converters. Output devices return processed data back to the user or to another computer system. Input / Output devices are also known as peripheral devices and the process of attaching the devices to microprocessor is known as interfacing. It helps in two way communication between microprocessor and peripheral devices.
- Bus Organization - Bus can be defined as a group of wires which carry bits and are the communication path between the microprocessor and peripherals. Buses can be categorized into:
1.Address Bus: It is used to carry 16-bit address. It is a group of 16 lines for an 8-bit microprocessor. It is unidirectional as the information transfers from microprocessor to I/O elements or memory.
2.Data Bus: It can be defined as group of data lines used for data flow. Generally, they are eight in number. It is bi-directional in nature as data can flow is both directions, to or from the microprocessor.
3.Control Bus: It is a combination of control lines which carry synchronization signals and provide timing signals. It is basically responsible for receiving and generating various signals for coordination and control of various operations involving external devices.
- Buffers - Buffer is a logic device that is just responsible for transferring data from input to output and it amplifies the current or power. It has one input and one output line. Buffer is used primarily to increase the driving capability of a logic circuit and hence it is also called as driver.
- Encoders - An encoder is a combinational logic circuit that essentially performs a 'reverse' decoder function. It accepts an active level on one of its inputs representing a digit, such as a decimal or octal digit, and converts it to a coded output such as Binary or BCD.
- Decoders - Decoder is used to detect the presence of a specified combination of bits (code) on its inputs and to indicate that presence by a specified output level.
- Latches - Latch is the simplest kind of sequential circuits that has only 2 states. It is a memory cell, which is capable of storing one bit of information. When the microprocessor sends an output, data are available on the data bus for only a few microseconds, therefore a latch is used to hold data for display.
- Pins and signals - 8085 is 40 pin microprocessor. There is a brief introduction of each and every pin.
- Registers - Register is a group of predefined memory location which is used to store data and result.
- Interrupt - It is a process by which some external device or peripheral informs microprocessor to become ready for data communication with the help of accepting the request made.
Unit 2: 8085 Microprocessor Instructions
An instruction can be defined as a command issued in the form of a binary pattern to perform the assigned task on a specified data. Group of instructions is known as instruction set which decides the function of microprocessor. Each instruction consist of two parts: first part is called OPCODE and the second as OPERAND.
Opcode specifies the function to be performed and operand provides the data to be operated on. 8085 microprocessor instruction set has 74 operation codes that result in 246 instructions. 8085 instructions can be classified into following five functional groups:
- Data Transfer/ Copy Operations - These types of instructions transfer data from source to destination, without modifying the contents of the source. Data Transfer can take place between registers, between a memory location and a register, between an I/O device and accumulator. Examples are MOV, MVI, LXI, LDA, STA, LHLD, SHLD, LDAX, STAX and XCHG.
- Arithmetic Operations - These instructions are responsible for performing arithmetic operations like addition, subtraction, increment and decrement. Addition includes addition between any 8 bit numbers / the contents of register / the contents of memory location and contents of accumulator and the sum will be stored in accumulator. Same process is done in case of subtraction. Increment/ Decrement means 8 bit number/ contents of a register or a memory location can be incremented/ decremented by one and same is the case with 16 bits contents of register pair. Examples are ADD, ADI, ACI, DAD, ADC, SUB, SBI, SBB, INR, INX, DAA, DCR and DCX.
- Logical Operations - These type of instructions are used for performing logical operations like AND, OR, EX-OR, rotate, compare and complement with the contents of accumulator. Results are stored in accumulator. Examples are ANA, ANI, ORA, ORI, XRA, XRI, CMA, CMC, STC, CMP, RLC, RRC, RAL and RAR.
- Branching Control Operations - These types of instructions can change the sequence of program either conditionally or unconditionally. Conditional instructions can make the program to jump to that particular memory location if condition is satisfied while unconditional instructions will always make the program to jump as soon as the instruction arrives. Examples are JMP, JZ, JNZ, JC, JNC, JP, JPE, JM, JPO, CALL, RET, RST, PCHL.
- Stack, I/O & Machine Control Operations - These instructions communicate with Input/ Output Ports and control machine functions such as Halt, Interrupt, or do nothing. In this port address of Input & Output devices are exchanged with accumulator. Examples are IN, OUT, PUSH, POP, HLT, XTHL, SPHL, NOP
And then, you will study various addressing modes of 8085 which are immediate addressing, Register addressing, Direct addressing, Indirect addressing, Implied/ Inherent/ Implicit addressing. Programming is taught using these instructions and addressing modes. Subroutine is also studied. Subroutine is a group of instructions that performs a subtask (e.g.: time delay or arithmetic operations) of repeated occurrence.
Counters are designed by loading an appropriate number into one of the registers and using increment or decrement instructions (INR / DCR) loop is being continued. Time delays are used in setting up accurate timing between two events. A time delay is designed by using a register which is loaded with a number or delay count, depending on the time delay required and setting a loop with a conditional jump instruction to decrease the count until it reaches zero.
Unit 3: 8085 Microprocessor Interfacing
This unit consists of study of various microprocessor chips along with their pin description, architectural diagram, their features and their applications. These include:
- 8259 (Programmer Interrupt Controller) - It is a 28 pin I.C. including pins related to data bus, buffer, three registers (IRR, ISR and IMR), cascade buffer (cas 0, cas 1, and cas 2), priority resolver, control logic and Read/ Write logic. 8259 can work in fully nested mode, automatic rotation and specific rotation mode.
- 8257 (DMA Controller) - Direct Memory Access (DMA) is an I/O technique commonly used for high speed data transfer. In DMA transfer scheme, data are directly transferred from I/O devices to RAM or from RAM to I/O device. The Intel 8257 is a programmable DMA controller. It is a 4-channel programmable direct memory access controller. It is a 40-pin I.C. package and requires a single +5V supply for its operation and allows up to four I/O devices to be interfaced to the microprocessor.
- 8255 (Programmable Peripheral Interface) - 8255 also known as PPI is widely used, programmable, parallel I/O device. It is an important general purpose I/O device that can be used with almost any microprocessor. It can be programmed to transfer data under various conditions, from simple I/O to interrupt I/O. It is economical and flexible and can be used when multiple I/O ports are required. 8255 has 24 I/O pins that can be divided into 3 ports each of 8 pins. These ports are two 8-bit parallel ports A and B and third port C with remaining eight ports.
- 8253/8254 (Programmable Interval Timer) - A programmable counter/timer is used in real time application for timing and counting function such as BCD/ binary counting, generation of accurate time delay, generation of square wave of desired frequency, rate generation etc. 8253 and 8254 are popular programmable interval timer chips. 8254 is an upgraded version of 8253, and both of these are pin-compatible. 8254 includes status read-back command which helps in reading count by microprocessor while the counter is decrementing.
- 8155 (Multipurpose Programmable Device) - It is programmable interface device used to interface a I/O device to the microprocessor. It is a multifunction device designed to use in minimum mode system. It contains RAM, I/O ports and timer. It is designed to be compatible with 8085. It includes 256 bytes of read/write memory and a 14-bit timer.
- 8279 (Programmable Keyboard/Display Interface) - 8279 is an approach to interface a matrix keyboard and a multiplexed display. It is a 16 pin device with two sections: Keyboard and Display. It has single 16 character display and dual 8 or 16 numerical display. It has simultaneous keyboard display operations. It has scanned sensor mode and programmable scan timing. It is single 16 character display. Keyboard segment is connected to a 64 content key matrix. A 16*8 Read or Write memory is used to read available information for display purpose.
Unit 4: 8086 Microprocessor
8086 microprocessor is a 16 bit microprocessor i.e. its mostly operations are designed to work with 16 bit binary words. It is 40 pin I.C. It has 16 bit data bus and 20 bit address bus. It can perform bit, byte, word and string with arithmetic and logical operations. It operates in two modes:
- Maximum mode
- Minimum mode
It supports multiprogramming. It use pipelining concept so that it can fetch up to six instruction bytes from memory and store in a queue. 8086 microprocessor is divided into two independent function parts:
- Bus Interface Unit (BIU)
- Execution Unit (EU)
The above both unit work simultaneously for faster speed and increase the number of instruction executed per unit time. Apart from brief study of pin diagram and architecture, there are also various topics. These include:
- Flag register - In 8086 microprocessor there are total 9 flags. Five flags are common to 8085. Overflow, Trap, Interrupt and Direction flag are also there.
- Memory segmentation - Dividing the whole 1 MB memory of 8086 microprocessor in segments (each 64 kB) is named as memory segmentation. It has following advantages:
1. 8086 microprocessor has to manipulate and store only 16 bit address instead of 20 bit.
2. Faster & easier searching & accessing of memory location.
3. Since data is stored in different area of memory each time the programmed is executed it can be relocated.
- Operating modes - The operating modes of 8086 microprocessor are determined by logic level applied to the input. There are of two types: Minimum mode and Maximum mode.
- Addressing mode - 8086 has various addressing modes. Some of them are Register addressing mode, immediate addressing mode, Direct addressing mode, Implicit addressing mode, Register indirect addressing mode, Index indirect addressing mode, Base indirect addressing mode, Base and index indirect addressing mode.
- Instruction Set - 8086 has 9 instruction which are:
1. Data Copy/Transfer instructions
2. Arithmetic instructions
3. Logical instructions
4. Shift and rotate instructions
5. Branch instructions
6. Loop instruction
7. Flag (Bit) Manipulation instructions
8. Processor Control instructions
9. String instructions
Unit 5: Basic Computer Architecture and Types of memory
This unit includes basic computer architecture and how computer uses that microprocessor to perform various arithmetic and logical operations. There is also a brief discussion about types of memories. You can consider this unit very useful to study one night before exam. This unit is very important if you have to score good as it is fully theoretical chapter.
Topics of this unit are here under:
- Central Processing Unit (CPU) - CPU is also a microprocessor. Its purpose is to fetch binary coded instructions from memory, decode the fetched instructions and generate the control signals required to execute the instructions. It contains arithmetic logic unit (ALU), which can perform add, subtract, OR, AND, invert and exclusive-OR operations on binary words.
- Memory and Input/output Interfacing - The most of the microprocessors support isolated I/O system. It partitions memory from I/O via software, by having instructions that specifically access (address) memory, and others that specifically access I/O. When these instructions are decoded by the microprocessor, an appropriate control signal is generated to activate either memory or I/O operations.
- Memory Classification - Memory is basically classified into two types- Volatile Memory (temporary) and Non-Volatile Memory (permanent).
- Primary Memory & Secondary Memory - Primary memory is also called main memory. Before processing the data, information or programs are first stored in internal memory called main memory. Secondary memory is the memory of permanent nature where the data or information is stored in large volume.
- Static & Dynamic Memory - Static memory devices are semiconductor memories in which the stored data will remain permanently stored as long as power is applied without the need of periodically rewriting or refreshing the data into the memory. Dynamic memory devices are semiconductor memories in which the stored data will not permanently stored even with power applied unless the data is periodically rewriting or refreshing the data into the memory.
- Types of memory - Memory is just like human brain. It is used to store data and instructions. Computer memory is the storage space in computer where data is to be processed and instructions required for processing are stored. Memory is primarily of three types:
I. Cache Memory - It is a high speed semiconductor memory which can speed up CPU. It is used to hold those parts of data and program which are more frequently used by CPU. It is expensive with limited capacity.
II.Primary Memory - It holds only those data and nstructions on which computer is currently working. It has limited capacity and data is lost when power is switched off. It is faster than secondary memory.
III.Secondary Memory - This type of memory is known as external or non-volatile memory. It is slower than main memory. These are used to store data permanently. Contents of secondary memories are first transferred to main memory, and then CPU can access it.
Microprocessor is a combination of two words (Micro + Processor) which means a processor which is small in size but performs various processing operations like arithmetic & logical operations. Being an engineer, microprocessor is an important topic to study as it deals with the basic knowledge of modern technology of recent processors like Pentium III, Pentium IV etc. Microprocessor is helpful for electronics, electrical as well as computer science students as today's wide applications consist of controlling circuits, machines etc. using microprocessor and microcontrollers.
"INTEL", the word, firstly talks about whenever topic of processor is discussed. INTEL has released a family of processors starting from 4004 to 8080 and then finally the first most successful microprocessor 8085. "As 8085 was the first Intel microprocessor which worked at 5V, hence the name."
Then came 8086 which was having a very powerful instruction set as compared to 8085 and was having strong memory set up as it consists the concept of segmented memory. But its complexity made it less successful than its predecessor 8085. After 8086, series of Pentium processors was launched and success story is still going on.
Microprocessor can be defined as programmable, multipurpose, clock-driven, register-based electronic device that reads binary information from memory and processes data according to those instructions and provides results as output. Microprocessor has got the capability to perform assigned tasks according to the instructions given by the programmer. However, it converts those instructions first into machine language and then it starts processing. It only operates on binary mechanism i.e. bits 0 & 1 are only digits understood by microprocessor.
Basic microprocessor has got an input unit, a memory and an output unit attached with it. It receives the data from input unit, extracts the instructions from memory and then gives the result in display form the output unit. Some terminologies like memory, register, instructions, machine code, opcode, operand are necessary to be understood before going into the depth of microprocessor.
Colleges Offering Same Syllabus :
- INSTITUTE OF ENGINEERING AND TECHNOLOGY - [IET], ALWAR
- LOVELY PROFESSIONAL UNIVERSITY - [LPU], JALANDHAR
- CHANDIGARH UNIVERSITY - [CU], CHANDIGARH
- MANIPAL UNIVERSITY - [MU], MANIPAL
- SIKKIM MANIPAL UNIVERSITY - [SMU], EAST SIKKIM