Microprocessors

Basic Features of a Microprocessor-Based System

The microprocessor is the heart of a microcomputer system and can be described as a programmable device that accepts binary data from an input device; then processes the data according to the instructions stored in the memory and provides results as output. That is to say, the microprocessor executes the program stored in the memory and transfers data to and from the outside world through I/O ports.

Any microprocessor-based system basically consists of three parts:

  • Microprocessor
  • Memory
  • Peripheral I/O devices

Microprocessor

The microprocessor is generally referred to as the heart of the system since it performs all the operations and also controls the rest of the system. The aforementioned three parts are interconnected by the data bus, the address bus, and the control bus.

Figure 1.0 Microprocessor-Based System

Memory

The memory stores the binary instructions and data for the microprocessor. The memory can be classified as the primary or main memory and secondary memory. Read/write memory (R/WM) and read only memory (ROM) are examples of primary memory and are used for executing and storing programs. Magnetic disks are examples of secondary memory. They are used to store programs and results after the completion of the program execution. Microprocessors do not execute programs stored in the secondary memory directly. Instead, they are first copied on to the R/W primary memory.

The memory unit in a microprocessor system takes the form of one or more integrated circuits (ICs).

The size of the memory is determined by the number of wires in the address bus. The memory elements in a unit consist essentially of large numbers of storage cells with each cell capable of storing either a 0 or 1 bit. The storage cells are grouped in locations with each location capable of storing one word. In order to access the stored word, each location is identified by a unique address. Thus with a 4-bit address bus, we can have 16 different addresses with each, maybe, capable of storing 1 byte, that is a group of 8 bits.

The size of a memory unit is specified in terms of the number of storage locations available: 1K is 210 = 1024 locations, and therefore a 4K memory has 4096 locations.

There are a number of forms of memory unit:

  • ROM
  • PROM
  • EPROM
  • EEPROM
  • RAM

ROM

For data that is stored permanently a memory device called a read-only memory (ROM) is used. ROMs are programmed with the required contents during the manufacture of the integrated circuit (IC). No data can then be written into this memory while the memory chip is in the computer. The data can only be read and is used for fixed programs such as computer operating programs and programs for dedicated microprocessor applications. ROMs do not lose their memory when power is removed.

The pin connection of the typical ROM chip which is capable of storing 1K X 8 bits is shown below:

Figure 1.1 ROM chip

When ROM is used for program storage, the program is available and ready for use when the system is switched ON. Programs that are stored in ROM are referred to as firmware.

PROM

The term programmable ROM (PROM) is used for ROM chips that can be programmed by the user. Initially every memory cell has a fusible link which keeps its memory at 0. The 0 is permanently changed to 1 by sending a current through the fuse to open it permanently. Once the fusible link has been opened the data is permanently stored in the memory and cannot be further changed.

EPROM

The term erasable and programmable ROM (EPROM) is used for ROMs that can be programmed and their contents altered. A typical EPROM chip contains a series of small electronic circuits, cells, which can store charge. The program is stored by applying voltages to the integrated circuit connection pins and producing a pattern of charged and uncharged cells. The pattern remains permanently in the chip until erased by shining ultraviolet light through a quartz window on the top of the device. This causes all the cells to become discharged. The chip can then be reprogrammed.

EEPROM

Electrically erasable PROM (EEPROM) is similar to EPROM but in this case, the erasure is done by applying a relatively high voltage rather than using ultraviolet light.

RAM

The data being operated on (temporary data), is stored in a read/write memory referred as a random-access memory (RAM). Such a memory can be read or written to. The typical pin connections for a 1K X 8-bit RAM chip is illustrated below:

Figure 1.3 RAM chip

When RAM is used for program storage, such programs are referred to as software. When the system is switched ON, software may be loaded into RAM from some other peripheral equipment such as hard disk, keyboard, or online.

Peripheral I/O Devices

The input/output devices are ways through which the microprocessor interacts with the outside world. The commonly used input devices include keyboards, A/D converters, switches, scanners, etc. LEDs displays, printers and monitors are some of the commonly used output devices.

A bus is essentially a communication link between the processing unit and the peripheral devices. It is a group of wires that carry information in the form of bits.

The address bus is unidirectional and is used by the central processing unit (CPU) to send out the address of the memory location to be accessed. It is also used by CPU to select a specific input or output port. It may consist of 8, 16, or even greater number of parallel lines. The number of bits in the address bus determines the maximum number of data locations in the memory that can be accessed. A 16-bit address bus, for example, can access 216 data locations. It is usually labelled as A0, …, An-1, where n is the width (in bits) of the address bus.

The data bus is bidirectional, that is to say, data flow occurs both to and from the microprocessor and peripherals. Data bus size has a considerable influence on the computer architecture, as parameters such as the word length and the amount of data that can be manipulated at a time are determined by the size of the of the data bus. There is an internal data bus, which may not be of the same width as the external data bus that connects the microprocessor to I/O and memory. The size of the internal data bus determines the largest number that can be processed by a microprocessor in a single operation. The largest number that can be processed, for example, by a microprocessor having a 16-bit internal data bus is 65535. The data bus is labelled as D0, …, Dn-1, where n is the data bus width (in bits).

The control bus contains a number of individual lines carrying synchronizing signals. The control bus sends out control signals to memory, I/O ports and other peripheral devices to ensure proper operation. It carries control signals such as memory read, memory write, read input port, write output port, hold, interrupt, etc. For instance, if it is desired to read the contents of a particular memory location, the CPU first sends out the address of that location on the address bus and a ‘memory read’ control signal on the control bus. The memory responds by sending out data stored in the addressed memory location onto the data bus. The ‘interrupt’ tells the CPU that an external device needs to be read or serviced. ‘Hold’ allows a device such as the direct memory access (DMA) controller to take over the address and data buses.

The figure below shows the bus interface between the microprocessor and its peripheral devices based on 8-bit microprocessor such as Intel 8085.

Microprocessor-based systems can be categorized as general-purpose reprogrammable systems and embedded systems. Reprogrammable systems include microcomputers and mainframe computers where microprocessors are used for computing and data processing. In embedded systems, they perform a specific task and are not available for reprogramming to the end-user. Examples of embedded systems include mobile phones, microwave ovens, washing machines, etc. In most of these systems, the microprocessor, memory and I/O ports are combined onto one chip referred to as the microcontroller.

John Mulindi

John Mulindi has a background in a technical field and he writes on topics ranging from automation, computer systems, embedded systems, mechatronics to measurement and control.

View Comments

Recent Posts

Rigid-Flex PCBs: Enhancing Durability and Flexibility in Electronic Devices

The world of electronics is constantly evolving, allowing designers and manufacturers to push the boundaries…

2 months ago

Key Features of PIC16X84 Family of Microcontrollers

PIC microcontrollers are fabricated by Microchip Technology. PIC16C84 and PIC16F84 are the two microcontrollers in…

9 months ago

ADD Instruction in Intel 8051 (MCS-51) Microcontroller

The ADD instruction tells the microcontroller’s CPU to add the source byte to register A…

9 months ago

Main Features of Intel 8086 Microprocessor

8-bit microprocessors are limited in their speed (the number of instructions that can be executed…

9 months ago

Basic Features of 68HC11 Family of Microcontrollers

The 68HC11 (also abbreviated as 6811 or HC11) is an 8-bit microcontroller that was introduced…

9 months ago

Process Synchronization using Semaphores

Mutual exclusion typically imposes some conditions on access to a given resource by two or…

10 months ago