0% found this document useful (0 votes)
8 views

Unit - I Microprocessor

Microprocessor in early computer

Uploaded by

love.vishwakarma
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views

Unit - I Microprocessor

Microprocessor in early computer

Uploaded by

love.vishwakarma
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 31

Unit – I

What are microcomputers?


Microcomputers are electronic devices that use microprocessors as their central processing unit
(CPU). A microprocessor is a miniature electronic component with an integrated circuit (IC) chip
containing the data processing logic, arithmetic, and control circuitry that enables a computer to
function. The IC comprises electronic components that join together with a flat piece of
semiconducting material in a process people refer to as etching. These components can vary
depending on its purpose. In computers, the IC chip in microprocessors often contains billions of
transistors which manufacturers configure into digital circuits that perform various logic
functions.

Many people use the words microcomputer and personal computer interchangeably. The reason
for this is the compact size and design of this device makes it ideal for personal use. While
there's another way to identify a microcomputer, the prevailing definition is it's a complete small-
scale computer system for use by one individual. Its common types include desktop computers,
laptops, tablets, and smartphones.

Basic components of a microcomputer


Microcomputer devices are small, relatively affordable systems with different parts depending on
their use. Desktop computers and laptops are similar in composition, while tablets typically come
with no additional hardware, such as a keyboard. Regardless of their function, these personal-use
devices share these basic components:

Central processing unit (CPU): This is a computer's main component and responsible for
processing instructions and data, receiving input and producing output, and running applications
and the operating system. A single-chip microprocessor is the CPU of microcomputer devices.

Operating system (OS): The OS is software that serves as a platform for other computer
programs and enables individuals to use the device through an interface. Its primary task is to
manage the computer's resources.

Memory or random access memory (RAM): This component stores instructions and data for
the CPU's use. It also loads and runs the various applications in a personal computer.

Storage: A computer's storage is a device that contains the digital data a user saved. Examples of
this are a solid state drive (SSD) or a hard disk drive (HDD).

Input and output (IO) devices: Input devices such as a keyboard and mouse enable a user to
bring data to the computer. Output devices like a monitor, printer, and speaker allow the
computer to send output to the user, depending on the data it received.
Examples of a microcomputer

There are numerous types of microcomputers, including electronic devices for everyday use,
such as desktop computers, notebooks or laptops, and smartphones. Depending on its definition,
a microcomputer can also be a video game console or a pocket calculator. While these differ in
appearance, they're all microcomputing devices because their CPU consists of a single
microprocessor chip. Here are common examples of these devices that people and companies use
today:

Desktop computer

People may refer to a desktop computer as a personal computer. It's a computing device that
typically fits on top of a regular office desk. While its design makes it ideal for regular use, its
portability may be an issue, especially for individuals who prefer a device that allows them to
use it in different locations. Aside from a CPU, memory, and storage, the basic parts of many
desktop computers are:

Graphics card: A video card that enables the display of images on the monitor.

Motherboard: The main board that supplies the power necessary for computer hardware to
function.

Tower or case: A metal or plastic cabinet that contains many of the computer's components.

Input and output (IO) devices: The usual input and output devices of desktop computers are
the mouse, keyboard, and monitor.

Many individuals looking for a computing device for personal use choose a desktop computer
because of its advantages. For example, it's usually more affordable compared to a laptop with
similar processing power. It's also easier to repair, remove, and upgrade its parts. Another
advantage is a desktop's customizability. Businesses often use desktop computers because they
can assemble their own units depending on the organizaton's unique requirements.

Workstation computer

Workstation computers share many similarities with desktop units. They often comprise the
same components and are also ideal for single users. Their major difference is their processing
power. A workstation computer is a high-performance device with a typically more powerful
processor for its CPU, larger memory and storage, and more advanced graphics system. It also
often connects to a local area network (LAN) to enable its user to share and access data and
resources and communicate with other workstation users.
Laptop and notebook

Laptops and notebooks are portable alternatives to desktop computers. While these three devices
typically possess similar components, there are several differences. A desktop unit is stationary
and comprises various separate parts. A laptop and notebook are both all-in-one computer
systems with many built-in IO devices, such as a screen, keyboard, trackpad for use as a mouse,
and speaker. And while desktop computers are highly customizable, laptops and notebooks offer
few options in terms of upgrades.

Tablet computer

A tablet is larger compared to a smartphone and smaller than a laptop. While tablets differ in
their size and features, many possess an operating system (OS) and a touchscreen that serves as
the user interface. These devices are for personal use and companies rarely issue them to
employees for work-related tasks. They're typically only capable of running small applications
and lack the processing power and memory to perform on the same level as a desktop or laptop.

ROM

A ROM(read-only memory) is a sort of semiconductor memory technology applied


where the data is written once and then not changed. This type of memory is used
where data requires being stored permanently, even when the power is switched, as
many memory technologies lose the data once the power is switched.

ROM can be understood as a semiconductor memory designed to hold data


permanently or do not change frequently. During normal operation, no new data can be
written into ROM but data can be read from ROM. It is a non-volatile memory that can
retain information even after the power supply is turned off.

o As against volatile memory in the non-volatile type of memory, the data is


maintained in the memory even if the power supply is removed.
o Thus we can assume that in non-volatile memory the data is stored permanently.
o As a result, this type of semiconductor memory technology is widely used for
storing programs and data that must be sustained when a computer or processor
is powered down. For illustration, the BIOS of a computer will be saved in ROM.
o Several home appliances such as rice cookers and washing machines use ROM
devices to store pre-set programs. ROM is designed specifically for reading data.
o It may be possible to erase or write data on ROM, but it takes an inordinately
long time to do so. To correct this deficiency, new kinds of devices have
developed in recent years that serve as a cross between ROM and RAM, including
flash memory and EPROM.
o Depending on the technology employed in the ROM, writing the data into the
ROM initially may demand special hardware.
o Although it is often possible to modify the data, this gain requires special
hardware to erase the data ready for new data to be written in.

Types of ROM

o PROM (programmable read-only memory).


o EPROM (erasable programmable read-only memory).
o EEPROM( electrically erasable programmable ROM).
o Mask ROM.

Masked ROM (MROM)

The early ROMs were hard-wired instruments that consisted of a pre-programmed set of
data or instructions. These types of ROMs are called masked ROMs, which are
comparatively inexpensive.

Programmable Read-Only Memory (PROM)

PROM is a type of read-only memory that can be amended only once by a user. The
user buys an empty PROM and inputs the required data using a PROM program. It
consists of the small fuses inside which are burnt open during programming. It is
possible to program this memory only once and is not erasable.
Input Output Ports

Ports: The connection point acts as an interface between the computer and external devices
like printers, modems, etc.

There are two types of ports:

1. Internal Port: It connects the system’s motherboard to internal devices like hard disk,
CD drive, internal Bluetooth, etc.
2. External Port: It connects the system’s motherboard to external devices like a mouse,
printer, USB, etc.
Some important types of ports are as per follows:

1. Serial Port :
 Used for external modems and older computer mouse
 Two versions-9pin,25pin
 Data travels at 115 kilobits per second

2. Parallel Port :
 Used for scanners and printers
 25 pin model

3. Universal Serial Bus (or USB) Port:


 It can connect all kinds of external USB devices such as external hard disks, printers,
scanners, mouse, keyboards, etc.
 Data travels at 12 megabits per second.

4. Firewire Port:
 Transfers large amounts of data at a very fast speed.
 Connects camcorders and video equipment to the computer.
 Data travels at 400 to 800 megabits per second.

5. Ethernet Port:
 Connects to a network and high-speed Internet.
 Data travels at 10 megabits to 1000 megabits per second depending upon the network
bandwidth.

A clock generator
A clock generator in a microprocessor is a circuit that produces a timing signal to synchronize
the system's operations:

How it works

A clock generator is made up of a resonant circuit and an amplifier. The resonant circuit is
usually a quartz piezo-electric oscillator, but can also be a tank circuit or RC circuit. The
amplifier inverts the oscillator's signal and feeds some of it back to maintain oscillation.

What it does

The clock generator produces periodic clock waveforms that synchronize operations in digital
systems. It generates rising and falling transitions on a signal parameter to produce non-
overlapping pairs of clock signals.

Clock rate
The clock rate of a CPU is usually determined by the frequency of an oscillator crystal. The most
common crystal is a 14.318 MHz crystal, which is used as the foundation frequency for
generating all of the other timing circuits in a PC.

Programmable clock generators

Some clock generators are programmable, allowing the number used in the divider or multiplier
to be changed. This allows for a wide variety of output frequencies to be selected without
modifying the hardware.

Interconnection components of Microcomputer


Interconnection components, also known as interconnect component buses, are the connection
interfaces that link a computer peripheral to a PC's motherboard or main circuit board. They were
commonly used between 1995 and 2005, but were eventually replaced by technologies like USB
or interconnect components Express.

Interconnection components can also refer to the physical forms that connect the components of
a computer system. These forms are known as interconnection structures. Some examples of
interconnection structures include:

Multiport memory: Uses separate buses for each memory module and CPU. This structure has
a high transfer rate, but it's expensive because it uses multiple cables and connectors.

The communication between components in a microcomputer takes place via the address and
data bus. The system bus is the bus that connects the major computer components. The system
bus is divided into three types:

Address bus: Sends addresses from the CPU to the memory and I/O port

Control bus: Regulates the activity on the bus

Bussed Architecture of Micro-computer

A bussed architecture for a microcomputer uses a bus to connect the processor, memory, and
peripherals, allowing for communication The 8085
between the components.
microprocessor has a 16-bit address bus, an 8-bit data bus, and
various control signals that are used to manage data transfer and
other operations.
There are three types of buses.
 Address bus –
The address bus is a unidirectional bus that is used to carry the memory or I/O device address
to which the data is to be transferred. The address bus in the 8085 microprocessor is 16-bit
wide.
It is a group of conducting wires which carries address only. Address bus is unidirectional
because data flow in one direction, from microprocessor to memory or from microprocessor
to Input/output devices (That is, Out of Microprocessor). Length of Address Bus of 8085
microprocessor is 16 Bit (That is, Four Hexadecimal Digits), ranging from 0000 H to FFFF H,
(H denotes Hexadecimal). The microprocessor 8085 can transfer maximum 16 bit address
which means it can address 65, 536 different memory location. The Length of the address bus
determines the amount of memory a system can address. Such as a system with a 32-bit
address bus can address 2^32 memory locations. If each memory location holds one byte, the
addressable memory space is 4 GB. However, the actual amount of memory that can be
accessed is usually much less than this theoretical limit due to chipset and motherboard
limitations.
 Data bus –
The data bus is an 8-bit bidirectional bus that is used to transfer data between the
microprocessor and other components such as memory and I/O devices. It is used to carry
data to or from the memory or input/output devices.
It is a group of conducting wires which carries Data only. Data bus is bidirectional because
data flow in both directions, from microprocessor to memory or Input/Output devices and
from memory or Input/Output devices to microprocessor. Length of Data Bus of 8085
microprocessor is 8 Bit (That is, two Hexadecimal Digits), ranging from 00 H to FF H. (H
denotes Hexadecimal). When it is write operation, the processor will put the data (to be
written) on the data bus, when it is read operation, the memory controller will get the data
from specific memory block and put it into the data bus. The width of the data bus is directly
related to the largest number that the bus can carry, such as an 8 bit bus can represent 2 to the
power of 8 unique values, this equates to the number 0 to 255.A 16 bit bus can carry 0 to
65535.
 Control bus –
The control bus is a bidirectional bus that is used to carry control signals between the
microprocessor and other components such as memory and I/O devices. It is used to transmit
commands to the memory or I/O devices for performing specific operations.
It is a group of conducting wires, which is used to generate timing and control signals to
control all the associated peripherals, microprocessor uses control bus to process data, that is
what to do with selected memory location. Some control signals are:
Memory read
Memory write
1. I/O read
2. I/O Write
3. Opcode fetch

Memory addressing
Memory addressing techniques, also known as addressing modes, are methods for specifying the
location of an operand in memory:

Direct addressing: The instruction directly specifies a memory location. This is fast, but the
code depends on the data being present at the same location.

Immediate addressing: The instruction contains both the opcode and the operand.

Register addressing: The instruction specifies a register where the operand is stored.

Indirect addressing: The instruction specifies an address that contains the effective address of
the operand.

Indexed addressing: The instruction adds the contents of the address field and the index register
to determine the operand's address. This is often used to access array values.

Relative addressing: The contents of the address field are added to the constant stored in the
program counter.
PC-relative addressing: The effective address is the offset parameter added to the address of the
next instruction. This is useful for jumps because typical jumps are to nearby instructions.

What is Memory Mapped I/O?

Memory Mapped I/O is a technique in which an I/O device is mapped as memory itself. In this
approach, memory and I/O devices occupy the same space as far as the system is concerned.
This implies that the CPU can transmits or receive data from I/O devices using the same format
that is used to address normal memory.

Characteristics of Memory Mapped I/O

 Shared Address Space: I/O devices are carved out a particular memory space.

 Unified Instructions: They are identical for both memory and I/O operations.

 Simplified Addressing This means there is no need for special instructions and port for
I/O operations as in integrated I/O.

Advantages of Memory Mapped I/O

 Faster Access: Because a memory has faster access times then an I/O operation can have
improved access times as well.

 Flexible Addressing: Supports all the addressing modes of the CPU hence making it easier
to write programs.

 Simplified Programming Model: Unlike other instruction types, where the Developer
requires a special kind of instruction called I/O instruction, they are free to use what is
called memory instruction.

Disadvantages of Memory Mapped I/O

 Limited Address Space: It was also pointed out that sharing the address space between
memory and I/O can reduce the number of available memory addresses.

 Complexity in Address Decoding: needs extra software logic in order to distinguish


between memory accesses and I/O operations.

 Potential for Address Conflicts: Possibility of the existence of similar addresses if not
controlled properly.

What is I/O Mapped I/O?


I/O Mapped I/O known as Port Mapped I/O uses dedicated address space for the installation of
I/O devices. This method employs specific port commands by which it addresses I/O ports
hence enhancing the segregation between memory and ports.

Advantages of I/O Mapped I/O

 Separate Address Space: I/O devices are granted their own address space that is
independent of the memory space of the computer.

 Dedicated Instructions: Contains specific I/O instructions known as `IN` and `OUT`.

 Distinct Port Addresses: I/O devices are connected to the computer and can only be
addressed by specific port addresses.

Advantages of I/O Mapped I/O

 Expanded Address Space: Preserves memory address space full for the memory
operations use, to avoid any conflict.

 Simplified Address Decoding: Hence, it lowers the ontological level seen in previous
models and clears the memory –I/O barrier making the model less complex.

 Security and Stability: decreases the possibility of an authority or a code somehow


getting the memory’s address and accessing it through I/O channels.

Disadvantages of I/O Mapped I/O

 Slower Access: I/O operations may be slower because of the use of special instruction.

 Limited Addressing Modes: Limited to the addressing modes of I/O instructions; thus the
flexibility is somewhat hampered.

 Increased Instruction Set: Needs a further instruction which adds to the


intricate instruction set architecture.

Difference between Memory-Mapped I/O Interfacing and I/O Mapped I/O Interfacing :

Features Memory Mapped IO IO Mapped IO


Addressing IO devices are accessed like any other They cannot be accessed like
memory location. any other memory location.
Address Size They are assigned with 16-bit address They are assigned with 8-bit
values. address values.
Instructions Used The instruction used are LDA and The instruction used are IN and
STA, etc. OUT.
Cycles Cycles involved during operation are Cycles involved during
Memory Read, Memory Write. operation are IO read and IO
writes in the case of IO Mapped
IO.
Registers Any register can communicate with Only Accumulator can
Communicating the IO device in case of Memory communicate with IO devices in
Mapped IO. case of IO Mapped IO.
Space Involved 216 IO ports are possible to be used Only 256 I/O ports are available
for interfacing in case of Memory for interfacing in case of IO
Mapped IO. Mapped IO.
IO/M` signal During writing or read cycles (IO/M` During writing or read cycles
= 0 ) in case of Memory Mapped IO. (IO/M` = 1) in case of IO
Mapped IO.
Control Signal No separate control signal required Special control signals are used
since we have unified memory space in the case of IO Mapped IO.
in the case of Memory Mapped IO.
Arithmetic and Arithmetic and logical operations are Arithmetic and logical
Logical operations performed directly on the data in the operations cannot be performed
case of Memory Mapped IO. directly on the data in the case
of IO Mapped IO.
Hardware Only one set of address and data Separate address and data buses
requirements buses are required for memory and are required for memory and I/O
I/O devices devices

Instruction set Uses the same instructions for Special instructions are used for
accessing both memory and I/O accessing I/O devices
devices
Address range Limited number of memory locations Dedicated address space
available for use by available for I/O devices
the microprocessor
Design complexity Simple to implement and design More complex to implement and
design

Examples of Intel 8085, Motorola 6800 Intel 8255, Zilog Z80


processors
Interrupt-controlled I/O

Interrupt-controlled I/O, also known as interrupt-initiated I/O, is a computer architecture method


that allows devices to notify the CPU when they need attention. This allows the CPU to manage
I/O operations efficiently without continuously polling the devices.

Here's how interrupt-controlled I/O works:

I/O device requests service: When the I/O device is ready to exchange data with the processor;
it interrupts the processor to request service.

CPU catches the interrupt: The CPU catches the interrupt and dispatches an interrupt handler.

Interrupt handler handles the I/O operation: The interrupt handler clears the interrupt by
servicing the device.

Processor resumes processing: The processor resumes its former processing.

Interrupt-controlled I/O is a solution to the problem of busy waiting, which occurs when the CPU
spends time waiting for a slow device to become ready. In contrast, polling I/O is efficient when
the device works fast.

Hardware-controlled input/output (I/O)


Refers to the physical components of a computer that allow it to communicate with the outside
world:

I/O devices: These devices can be categorized as storage, networking, user interface, or other.
Examples include keyboards, mice, microphones, speakers, monitors, and printers.
I/O controllers: These devices manage the flow of data between the computer's central
processing unit (CPU) and external devices.

Ports: These allow devices to connect to the computer, such as USB, serial, or parallel ports.

Wireless technology: Bluetooth technology allows devices to connect wirelessly to the


computer.

Motherboard slots or onboard chipsets: These allow devices to connect internally to the
computer.

The computer's operating system (OS) manages I/O devices through a dedicated subsystem. The
OS is responsible for handling input and output, controlling peripheral devices, and performing
other basic tasks.

The I/O process is how computers communicate with the outside world and respond to human
interaction. Without I/O, it would be impossible to interact with computing and technological
systems.

Direct Memory Access (DMA) Controller


In modern computer systems, transferring data between input/output devices and memory can
be a slow process if the CPU is required to manage every step. To address this, a Direct
Memory Access (DMA) Controller is utilized. A Direct Memory Access (DMA) Controller
solves this by allowing I/O devices to transfer data directly to memory, reducing CPU
involvement. This increases system efficiency and speeds up data transfers, freeing the CPU
to focus on other tasks. DMA controller needs the same old circuits of an interface to
communicate with the CPU and Input/Output devices.

What is a DMA Controller?


Direct Memory Access (DMA) uses hardware for accessing the memory, that hardware is
called a DMA Controller. It has the work of transferring the data between Input Output
devices and main memory with very less interaction with the processor. The direct Memory
Access Controller is a control unit, which has the work of transferring data.

DMA Controller in Computer Architecture


DMA Controller is a type of control unit that works as an interface for the data bus and the
I/O Devices. As mentioned, DMA Controller has the work of transferring the data without the
intervention of the processors, processors can control the data transfer. DMA Controller also
contains an address unit, which generates the address and selects an I/O device for the transfer
of data. Here we are showing the block diagram of the DMA Controller.
Types of Direct Memory Access (DMA)
There are four popular types of DMA.
 Single-Ended DMA
 Dual-Ended DMA
 Arbitrated-Ended DMA
 Interleaved DMA
Single-Ended DMA: Single-Ended DMA Controllers operate by reading and writing from a
single memory address. They are the simplest DMA.
Dual-Ended DMA: Dual-Ended DMA controllers can read and write from two memory
addresses. Dual-ended DMA is more advanced than single-ended DMA.
Arbitrated-Ended DMA: Arbitrated-Ended DMA works by reading and writing to several
memory addresses. It is more advanced than Dual-Ended DMA.
Interleaved DMA: Interleaved DMA are those DMA that read from one memory address and
write from another memory address.

Working of DMA Controller


The DMA controller registers have three registers as follows.
 Address register – It contains the address to specify the desired location in memory.
 Word count register – It contains the number of words to be transferred.
 Control register – It specifies the transfer mode.
Note: All registers in the DMA appear to the CPU as I/O interface registers. Therefore, the
CPU can both read and write into the DMA registers under program control via the data bus.
The figure below shows the block diagram of the DMA controller. The unit communicates
with the CPU through the data bus and control lines. Through the use of the address bus and
allowing the DMA and RS register to select inputs, the register within the DMA is chosen by
the CPU. RD and WR are twotwo-way inputs. When BG (bus grant) input is 0, the CPU can
communicate with DMA registers. When BG (bus grant) input is 1, the CPU has relinquished
the buses and DMA can communicate directly with the memory.

Explanation: The CPU initializes the DMA by sending the given information through
the data bus.
 The starting address of the memory block where the data is available (to read) or where
data are to be stored (to write).
 It also sends word count which is the number of words in the memory block to be read or
written.
 Control to define the mode of transfer such as read or write.
 A control to begin the DMA transfer
Modes of Data Transfer in DMA
There are 3 modes of data transfer in DMA that are described below.
 Burst Mode: In Burst Mode, buses are handed over to the CPU by the DMA if the whole
data is completely transferred, not before that.
 Cycle Stealing Mode: In Cycle Stealing Mode, buses are handed over to the CPU by the
DMA after the transfer of each byte. Continuous request for bus control is generated by
this Data Transfer Mode. It works more easily for higher-priority tasks.
 Transparent Mode: Transparent Mode in DMA does not require any bus in the transfer
of the data as it works when the CPU is executing the transaction.

Advantages of DMA Controller

 Data Memory Access speeds up memory operations and data transfer.

 CPU is not involved while transferring data.

 DMA requires very few clock cycles while transferring data.

 DMA distributes workload very appropriately.

 DMA helps the CPU in decreasing its load.

Disadvantages of DMA Controller

 Direct Memory Access is a costly operation because of additional operations.

 DMA suffers from Cache-Coherence Problems.

 DMA Controller increases the overall cost of the system.

 DMA Controller increases the complexity of the software.

8088 Microprocessor
8088 Microprocessor is an advanced version of 8087 Microprocessor, designed by Intel in
1979. It is a 8-bit microprocessor. It has 8 bits of the data bus. As, it is a 8-bit microprocessor,
it requires two complete cycles to process 16 bit data.

Also, it performs the processing of floating point data and instructions as it supports the Intel
8087 numeric co-processor.
Advantages of 8088 Microprocessor

 Cost Efficiency: This design is easier and cheaper to implement because an 8-bit data bus
is easier to handle and needs cheaper/B cheaper components and memory.

 Compatibility: In its turn, 8088 is compatible with 8-bit peripheral chips, which were
cheaper and more numerous in comparison with the 16-bit counterparts at the time when
the computer was designed.

 Smaller Data Bus: That is why an 8-bit data bus is used which reduces product
complexity and costs and therefore can be well implemented in early PCs.

Disadvantages of 8088 Microprocessor

 Lower Performance: The 8088 also has a fewer number of data lines than the 8086; it
has 8 data lines used for moving data across the data bus, therefore is slower in moving
data than the 8086.

 Limited Data Handling: It can only work with 8 bits of data at a time which means it
consumes more time than 8086 in executing the similar instructions.

The Intel 80286 microprocessor

It was a 16-bit Central Processing Unit (CPU) introduced in 1982. It was an improvement on
its predecessor, the 8086, and is considered a key milestone in the development of personal
computers. Here are some of its features:

Memory management

The 80286 was the first microprocessor to include a memory management unit, which allowed
it to use memory more efficiently.
Protected mode

The 80286 introduced protected mode, which prevented applications from accessing memory
outside their allocated zones.

Multitasking

The 80286 was designed for multi-user, multitasking environments. It could run several
programs at the same time and protect memory space for another program.

Address and data buses

The 80286 had separate, non-multiplexed address and data buses.

Instruction execution

The 80286 executed instructions faster than the 8086.

Software compatibility

The 80286 could correctly execute most software written for the 8086 and 8088 processors.

Pin packages

The 80286 was available in a variety of pin packages, including 68-pin PLCC, Ceramic LCC,
and PGA.

Operating modes

The 80286 had two operating modes: real address mode and protected virtual address mode.

The Intel 80386


Also known as the i386, was a 3232-bit
bit microprocessor that was introduced in 1985. It was used
as the central processing unit (CPU) in many high
high-end
end personal computers and workstations.
Here are some of the features of the 80386:

32-bit architecture

The 80386's 32-bit registers and


nd data paths allowed it to work with 32
32-bit
bit data and memory
addresses. This allowed it to handle larger amounts of data and perform calculations more
efficiently than older processors.

Virtual memory support

The 80386's virtual memory support allowed it to address up to 64 terabytes of virtual


memory. This allowed the maximum size of a program to be determined by the available disk
space, rather than the size of the physical memory.

Protected mode

The 80386's protected mode allowed it to address up to 4 GB of memory. It also provided


enhanced memory management and multitasking capabilities.

Backward compatibility

The 80386's Virtual 8086 Mode (VM86) allowed it to run software written for the Intel 8086
processor.

Debugging support

The 80386's four on-chip


ip debug registers could help reduce program debugging time.

The Intel 80486 microprocessor


Also known as the i486 or 486, was a higher-performance successor to the Intel 80386. It was
released in 1989 and was the first x 86 chips to have more than one million transistors. Here
are some of its key features:

Speed

The 80486 was about twice as fast as the 80386 per clock cycle. A 50 MHz 80486 could
execute around 40 million instructions per second.

Architecture

The 80486 was the first tightly pipelined x86 design. It had a 32-bit architecture, which
improved multitasking and performance.

Instruction set

The 80486 had an advanced instruction set, including floating-point instructions and
multimedia extensions.

Cache memory

The 80486 had an internal 8 KB cache to reduce memory access times.

Built-in math coprocessor

The 80486 had a built-in 80387 numeric coprocessor, which allowed it to execute math
instructions about three times faster than an 80386/387 combination.

Compatibility

The 80486 was compatible with the 80386 in several areas, including real address mode,
protected virtual address mode, and virtual 8086 mode.

The 80486 was discontinued in 2007 and was succeeded by the Pentium/i586 (P5)

The Intel 80586 microprocessor


Also known as the Pentium was the fifth generation of Intel's x86 architecture and the
successor to the 486 chip. The Pentium was released in 1993 and became a popular CPU for
general-purpose computing. Here are some of its features:

Architecture: The Pentium used a superscalar CISC (complex instruction set computer)
architecture.

Data bus: The Pentium had a 64-bit data bus, compared to the 32-bit data bus of the 486 chip.
Speed: The Pentium had a base clock speed of 60 to 200 megahertz (MHz). It was almost
twice as fast as the equivalent 80486.

Transistors: The Pentium had 3.1 million transistors, which was three times as many as the
486.

Caches: The Pentium had two eight-kilobyte data caches, one for code and one for data.

Floating-point unit: The Pentium had a redesigned and faster floating-point unit.

Compatibility: The Pentium was fully compatible with previous 80x86 processors.

The name "Pentium" comes from the Greek word pente, which means "five". This was a
reference to the previous numeric naming convention of Intel's 80x86 processors.

Motorola M6800 Microprocessor

The Motorola M6800 is 40pin DIP IC. It is an 8-bit Microprocessor. It was


introduced in 1974 by Motorola. It was designed nearly at the same time
when the 8080 was introduced. Like 8080, it also had 16-bit address bus to
handle 64KB of data, and 8-bit data bus to read and write data.

The M6800 has very few registers. It has two Accumulators A and B, and the
Index Register. This Microprocessor only supports the memory mapped IO
because there is no instruction regarding IO operations in its instruction set.

The M6800 has six addressing modes, 72 instructions and at least 197
opcodes in its instruction set. At first, the clock frequency was 1MHz. In the
next builds, the clock frequency is increased to 2MHz.

The Motorola M6800 is 40pin DIP Microprocessor. Here we will see the actual
pin level diagram of M6800 and also the functional pin diagram of it.

The M6800 requires some additional chips to provide the required functions.
These chips are:

 6870 (clock generator)


 6830 (ROM) or 68708(EPROM)
 6810 (RAM)
 6820 (PeripheralInterface Adapter)
 6850 (AsynchronousCommunications Interface Adapter)
 6828 (PriorityInterrupt Controller)

Now see the Pin Level diagram of Motorola M6800


Now let us see the Pin functions of the M6800 microprocessor.

Pins Type Function


A15– A0 Output 16-bit address bus, which provides
the addresses for memory (up to
64KB)
D7 – D 0 Input/Output 8-bit bi-directional data bus to
transfer data between memory/IO
devices and CPU.
Vcc Input It is Power Supply Pin of M6800. It
uses DC power supply of +5V
GND Input There are two ground pins (Pin
number 1 and 21), both are
connected with the ground
HALT Input The Halt Pin is active low, input pin.
When it is activated, the CPU goes
to the halting state. In this state,
the address bus, and the data bus,
and also R/W the go-to high
impedance state.
φ1 and φ2 Input These are basically two-phase clock
inputs. It needs a clock generator
chip M6870 to provide a two-phase
clock. The typical operating
frequency is 1MHz and the minimum
frequency is 100KHz.
IRQ Input This pin is for an Interrupt request.
It can be masked or disabled.
TSC Input It is an active high input pin. It is
translated Control pin. This pin is
like the hold input of Intel8085
Microprocessor.
BA Output It is another Active high output pin.
BA stands for Bus Available. In
8085, there is HLDA pin, which is
similar to the BA pin of M6800.
R/W Output This is active low output pin.
TheCPU sends 1 in this pin, when it
tries to read the data, and sends 0,
when tries to write data to the
memory.
NMI Input
This is active low Non-Maskable
Interrupt pin.
RESET Input It is active low input pin. When low
signal is passed the M6800 is reset.
VMA Output VMA is active high output pin. It is
valid Memory Access. When the pin
is activated, it indicates that the
address bus is holding a valid
address. It is activated a little after
the address is send via address bus.
DBE Input DBE is active high Input pin. The
name suggests Data Bus Enable.So,
when this pin is high, either the
data are coming out from the data
bus or going in through the data
bus. But when it islow, it means the
data bus pins are in tristate
condition.Generally it is connected
to pin.
NC ---- The NC are NoConnection. In this
clip, there are two NC pins

CPU Registers
In Computer Architecture, the Registers are very fast computer memory that is used to
execute programs and operations efficiently. This is done by giving access to commonly used
values, i.e., the values that are at the point of operation/execution at that time. So, for this
purpose, there are several different classes of CPU registers that work in coordination with the
computer memory to run operations efficiently.
The sole purpose of having a register is fast retrieval of data for processing by CPU. Though
accessing instructions from RAM is comparatively faster with a hard drive, it still isn’t
enough for the CPU. For even better processing, there are memories in the CPU that can get
data from RAM which are about to be executed beforehand. After registers, we have cache
memory, which is faster but less fast than registers.
CPU registers are essential for the execution of instructions, and understanding the different
types, such as general-purpose, segment, and special-purpose registers, is crucial for studying
computer architecture. To delve deeper into the various classes of CPU registers and their
roles, the GATE CS and IT – 2025 course provides detailed lessons and practical examples,
ensuring a solid understanding of this foundational topic.

Following is the list of some of the most common registers used in a basic computer:

Register Symbol Number of bits Function

Holds memory
Data register DR 16
operand

Holds address for the


Address register AR 12
memory

Accumulator AC 16 Processor register

Holds instruction
Instruction register IR 16
code

Holds address of the


Program counter PC 12
instruction

Temporary register TR 16 Holds temporary data

Carries input
Input register INPR 8
character

Carries output
Output register OUTR 8
character
Different Types Of CPU Registers

There are several types of registers available in the CPU for different purposes let’s discuss
each one by one:

 Accumulator: This is the most frequently used register used to store data taken from
memory. It is indifferent numbers in different microprocessors.
 Memory Address Registers (MAR) : It holds the address of the location to be accessed
from memory. MAR and MDR (Memory Data Register) together facilitate the
communication of the CPU and the main memory.
 Memory Data Registers (MDR) : It contains data to be written into or to be read out
from the addressed location.
 General Purpose Registers : These are numbered as R0, R1, R2….Rn-1, and used to
store temporary data during any ongoing operation. Its content can be accessed by
assembly programming. Modern CPU architectures tend to use more GPR so that register-
to-register addressing can be used more, which is comparatively faster than
other addressing modes .
 Program Counter (PC) : Program Counter (PC) is used to keep the track of the
execution of the program. It contains the memory address of the next instruction to be
fetched. PC points to the address of the next instruction to be fetched from the main
memory when the previous instruction has been successfully completed. Program Counter
(PC) also functions to count the number of instructions. The incrementation of PCs
depends on the type of architecture being used. If we are using a 32-bit architecture, the
PC gets incremented by 4 every time to fetch the next instruction.
 Instruction Register (IR): The IR holds the instruction which is just about to be
executed. The instruction from the PC is fetched and stored in IR. As soon as the
instruction is placed in IR, the CPU starts executing the instruction, and the PC points to
the next instruction to be executed.
 Stack Pointer (SP): The stack PCs pointer points to the top of the stack, which is a part
of the memory used to store function calls and other operations.
 Flag Register: A flag register , also known as a status register or condition code register,
is a special type of register in a computer’s central processing unit (CPU) used to indicate
the status of the CPU or the outcome of various operations such as Zero Flag, Carry flag,
Sign Flag, Overflow Flag, Parity Flag, Auxiliary Carry Flag, and Interrupt Enable Flag.
 Condition code register ( CCR ): Condition code registers contain different flags that
indicate the status of any operation. For instance, let’s suppose an operation caused the
creation of a negative result or zero, then these flags are set high accordingly. and the
flags are
1. Carry C: Set to 1 if an add operation produces a carry or a subtract operation produces a
borrow; otherwise cleared to 0.
2. Overflow V: Useful only during operations on signed integers.
3. Zero Z: Set to 1 if the result is 0, otherwise cleared to 0.
4. Negate N: Meaningful only in signed number operations. Set to 1 if a negative result is
produced.
5. Extend X: Functions as a carry for multiple precision arithmetic operations.

The register organization of the Intel 8088 microprocessor


It Includes:

Segment registers
There are four 16-bit segment registers:
Code segment register (CS): Points to the code segment of memory, where the executable
program code is stored
Data segment register (DS): Points to the data segment of memory, where data is stored
Stack segment register (SS): Points to the stack segment of memory, where the processor
temporarily stores register values
Extra segment register (ES): Points to wherever the user wants it to point

Data registers
There are four 16-bit data registers: AX, BX, CX, and DX. BX can also be used as an address
register for indirect addressing.

Pointer and index registers


There are five 16-bit registers that can be used as pointer or index registers. These registers
are used to indicate specific addresses in the processor's memory space.

Flags
Status flags are used to indicate the outcome of operations.
The 8088 microprocessor also has a 16-bit internal data bus and an 8-bit external data bus.
Addressing modes in 8086 microprocessor
The way of specifying data to be operated by an instruction is known as addressing modes.
This specifies that the given data is an immediate data or an address. It also specifies whether
the given operand is regi ster or register pair.
Types of addressing modes:
1. Register mode – In this type of addressing mode both the operands are registers.
Example:
MOV AX, BX
XOR AX, DX
ADD AL, BL
2. Immediate mode – In this type of addressing mode the source operand is a 8 bit or 16 bit
data. Destination operand can never be immediate data.
Example:
MOV AX, 2000
MOV CL, 0A
ADD AL, 45
AND AX, 0000
Note that to initialize the value of segment register an register is required.
MOV AX, 2000
MOV CS, AX
3. Displacement or direct mode – In this type of addressing mode the effective address is
directly given in the instruction as displacement.
Example:
MOV AX, [DISP]
MOV AX, [0500]
4. Register indirect mode – In this addressing mode the effective address is in SI, DI or
BX.
Example: Physical Address = Segment Address + Effective Address
MOV AX, [DI]
ADD AL, [BX]
MOV AX, [SI]
5. Based indexed mode – In this the effective address is sum of base register and index
register.
Base register: BX, BP
Index register: SI, DI
The physical memory address is calculated according to the base register.
Example:
MOV AL, [BP+SI]
MOV AX, [BX+DI]
6. Indexed mode – In this type of addressing mode the effective address is sum of index
register and displacement.
Example:
MOV AX, [SI+2000]
MOV AL, [DI+3000]
7. Based mode – In this the effective address is the sum of base register and displacement.
Example:
MOV AL, [BP+ 0100]
8. Based indexed displacement mode – In this type of addressing mode the effective
address is the sum of index register, base register and displacement.
Example:
MOV AL, [SI+BP+2000]
9. String mode – This addressing mode is related to string instructions. In this the value of
SI and DI are auto incremented and decremented depending upon the value of directional
flag.
Example:
MOVS B
MOVS W
10. Input/Output mode – This addressing mode is related with input output operations.
Example:
IN A, 45
OUT A, 50
11. Relative mode –
In this the effective address is calculated with reference to instruction pointer.
Example:
JNZ 8 bit address
IP=IP+8 bit address

You might also like