Basic Architecture of Computer
- Definition of Computer-
A computer is an electronic device that manipulates information, or data. It can store, retrieve, and process data. You may already know that you can use a computer to type documents, send email, play games, and browse the Web. You can also use it to edit or create spreadsheets, presentations, and even videos.
Computer System is divided into two functional entities: Hardware and Software.
- Hardware is any part of your computer that has a physical structure, such as the keyboard or mouse. It also includes all the computer's internal parts, which you can see in the image below.
- Software is any set of instructions that tells the hardware what to do and how to do it. Examples of software include web browsers, games, and word processors.
What are the different types of computers-?
When most people hear the word computer, they think of a personal computer such as a desktop or laptop. However, computers come in many shapes and sizes, and they perform many different functions in our daily lives. When you withdraw cash from an ATM, scan groceries at the store, or use a calculator, you are using a type of computer.
Many people use desktop computers at work, home, and school. Desktop computers are designed to be placed on a desk, and they are typically made up of a few different parts, including the computer case, monitor, keyboard, and mouse.
The second type of computer you may be familiar with is a laptop computer, commonly called a laptop. Laptops are battery-powered computers that are more portable than desktops, allowing you to use them almost anywhere.
Tablet computers—or tablets—are handheld computers that are even more portable than laptops. Instead of a keyboard and mouse, tablets use a touch-sensitive screen for typing and navigation. The iPad is an example of a tablet.
A server is a computer that serves up information to other computers on a network. For example, whenever you use the Internet, you are looking at something that is stored on a server. Many businesses also use local file servers to store and share files internally.
Computer Architecture vs Computer Organization
Architecture and organization are independent, you can change the organization of a computer without changing architecture.
Architecture describes what the computer does.
Organization describes how it does it.
Computer Architecture deals with functional behavior of computer system.
Computer Organization deals with structural relationship.
In above figure, it deals with high-level design issue.
In above figure, it is also clear that it deals with low-level design issue.
Architecture indicates its hardware.
Where, Organization indicates its performance.
For designing a computer, its architecture is fixed first.
For designing a computer, organization is decided after its architecture.
Computer Architecture is also called as instruction set architecture.
Computer Organization is frequently called as micro architecture.
Computer Architecture comprises logical functions such as instruction sets, registers, data types and addressing modes.
Computer Organization consists of physical units like circuit designs, peripherals, and adders.
Architecture coordinates between the hardware and software of the system.
Computer Organization handles the segments of the network in a system.
Von Neumann Architecture-
Von Neumann architecture was first published by John von Neumann in 1945.
His computer architecture design consists of a Control Unit, Arithmetic and Logic Unit (ALU), Memory Unit, Registers, and Inputs/Outputs.
Von Neumann architecture is based on the stored-program computer concept, where instruction data and program data are stored in the same memory. This design is still used in most computers produced today.
Harvard Architecture –
In a normal computer that follows von Neumann architecture, instructions, and data both are stored in same memory. So same buses are used to fetch instructions and data. This means CPU cannot do both things together (read a instruction and read/write data). Harvard Architecture is the computer architecture that contains separate storage and separate buses (signal path) for instruction and data. It was basically developed to overcome the bottleneck of Von Neumann Architecture. The main advantage of having separate buses for instruction and data is that CPU can access instructions and read/write data at the same time.
Structure of Harvard Architecture:
- CPU [Central Processing Unit]
The Central Processing Unit (CPU) is the electronic circuit responsible for executing the instructions of a computer program.
It is sometimes referred to as the microprocessor or processor.
The CPU contains the ALU, CU and a variety of registers.
Registers are high speed storage areas in the CPU. All data must be stored in a register before it can be processed.
Memory Address Register
Holds the memory location of data that needs to be accessed
Memory Data Register
Holds data that is being transferred to or from memory
Where intermediate arithmetic and logic results are stored
Contains the address of the next instruction to be executed
Current Instruction Register
Contains the current instruction during processing
Arithmetic and Logic Unit (ALU)
The ALU allows arithmetic (add, subtract etc) and logic (AND, OR NOT etc) operations to be carried out.
Control Unit (CU)
The control unit controls the operation of the computer’s ALU, memory and input/output devices, telling them how to respond to the program instructions it has just read and interpreted from the memory unit.
The control unit also provides the timing and control signals required by other computer components.
Buses are how data is transmitted from one part of a computer to another, connecting all major internal components to the CPU and memory.
A standard CPU system bus is comprised of a control bus, data bus and address bus.
Carries the addresses of data (but not the data) between the processor and memory
Carries data between the processor, the memory unit, and the input/output devices
Carries control signals/commands from the CPU (and status signals from other devices) to control and coordinate all the activities within the computer
The memory unit consists of RAM, sometimes referred to as primary or main memory. Unlike a hard drive (secondary memory), this memory is fast and directly accessible by the CPU.
RAM is split into partitions. Each partition consists of an address and its contents (both in binary form).
The address will uniquely identify every location in the memory.
Loading data from permanent memory (hard drive), into the faster and directly accessible temporary memory (RAM), allows the CPU to operate much quicker.
- I/O interface-
- The input/output processor (I/O processor) is a processor that is specially designed to handle only input/output processes for the computer or a computer.
- The IOP can fetch and execute its instructions. These IOP instructions are designed to manage only I/O transfers.
- Input-output devices are very slow devices; therefore, they are not directly connected with the system bus because input-output devices are electromagnetic devices. The CPU is an electronic device, so there is a difference in the operating mode, data transfer rate, and word format.
- I/O Module is used to synchronize the input-output devices with the processor.
- The CPU only needs to initiate the I/O processor by specifying what activity is to be performed. Once the required actions are performed, then the I/O processor provides the results to the CPU. Doing these actions allow the I/O processor to act as a bus to the CPU, carrying out activities by directly interacting with memory and other devices in the computer.
- The CPU can act as a master and the IOP act as a slave processor. The processor assigns the task of initiating operations, but the instructions are executed by IOP, not by the CPU. CPU instructions provide operations to begin an I/O transfer. The IOP asks for CPU via an interrupt.
3 .1I/O Transfer Modes:
There are different modes:
3.1.1 Programmed I/O:
- The CPU directly communicates with the I/O device.
- The processor waits until the completion of the I/O operation.
- Instruction in the program initiates each data item transfer.
- Usually, the transfer is between a CPU register and memory.
- The processor is continuously busy executing the program related to device functions and waits for the device status to ready most of the time or function completions (Busy-wait state).
- CPU requests I/O operation.
- I/O module performs operations.
- I/O module sets status bits.
- CPU checks status bits periodically.
- I/O module does not inform the CPU directly.
- I/O module does not interrupt the CPU.
- CPU may wait or come back later.
- Under programmed I/O, data transfer is very like memory access (CPU viewpoint).
- Each device is given a unique identifier.
- CPU commands contain an identifier (address).
3.1.2 Direct Memory Access (DMA):
Direct memory access (DMA) is a data transfer mode between the memory and I/O devices.
Thus, the peripherals directly communicate and transfer information with each other using the memory buses, removing the intervention of the CPU.
Such a data transfer technique is known as DMA or direct memory access.
Working of DMA:
- Whenever an I/O device wants to transmit the data to or from memory, a DMA request (DRQ) is sent by the I/O device to the DMA controller.
- The DMA controller accepts this DRQ and asks the CPU to hold a few clock cycles by sending it the Hold request (HLD).
- CPU receives the Hold request (HLD) from the DMA controller, relinquishes the bus, and sends the Hold acknowledgment (HLDA) to the DMA controller.
- After receiving the Hold acknowledgment (HLDA), the DMA controller acknowledges the I/O device (DACK) that the data transmission can be performed. The DMA controller takes charge of the bus and transmits the data to or from memory.
- When the data transmission is accomplished, the DMA raises an interrupt to let know the processor know that the data transfer task is finished, and the processor can take control over the bus again and start processing where it has left.
- Memory Organization
A memory unit is defined as a collection of storage units or devices. The binary information is stored in the memory units in the form of bits.
Mostly, memory/storage is classified into 2 categories:
∙ Volatile Memory: This loses its data when power is switched off.
∙ Non-Volatile Memory: This is a permanent storage and does not lose any data when power is switched off.
It requires an uninterrupted and high-speed access to the memory that contains programs and data, so that the CPU can operate at its maximum speed. Some of the criteria need to be taken into consideration while deciding which memory is to be used:
∙ Memory access time
∙ Data transfer rate
Functions of the memory unit are:
∙ All the data and the required instructions for processing are stored by it.
∙ It also stores intermediate results of processing.
∙ It holds the results of processing before releasing these results to an output device.
∙ All inputs and outputs are transferred through the main memory.
- TYPES OF MEMORY
Cache memory is very fast semiconductor memory which can speed up the CPU's operations. It behaves as a buffer between the main memory and the CPU. It is used to store frequently accessed parts of data and programs. Those parts of data and programs are transferred to cache memory from the disk by the OS, from where they can be accessed by CPU.
The advantages of cache memory are:
∙Cache memory is way faster than main memory (primary memory).
∙It requires very less access time as compared to primary memory.
∙Cache stores the program that can be executed within a small period.
∙It stores data for temporary use.
The disadvantages of cache memory are −
∙Cache memory has limited/small capacity.
∙It is very expensive.
2.2. Primary memory
It includes RAM and ROM and is present near to the CPU on the computer's motherboard, this enables CPU to read data from primary memory quickly. It is used to store data that is frequently accessed by the CPU, so that CPU does not have to wait longer.
2.2.1. Primary Memory Types:
There are 2 types of primary memory mainly, which are as follows:
- RAM (Random-access memory)
The RAM (Random access memory) can be accessed in any random order.
RAM memory is very fast, and it can perform read as well as write operation, it is volatile (because all data stored in RAM memory will disappear when there is a power off). It is very costly compared to all other types of secondary memory in terms of cost per GB. Because of the high cost of RAM in comparison to secondary memory that is why most computer systems use a combination of both primary and secondary memory.
Types of RAM
∙DRAM: (Dynamic RAM), and it is the most common type of RAM used in computers. DRAM is made up of a capacitor and a transistor in each cell. Each DRAM cell has some charge or lack of charge held by an electrical capacitor.
∙SRAM: (Static RAM), and it is faster than DRAM, but it is more costly and heavy, because it consists of six transistors in each cell. Because of these reasons SRAM is generally used as a data cache only or as RAM in high-end server systems. A small SRAM cache formed with most imminent data can result in significant speed improvements.
The main differences between DRAM and SRAM are that SRAM is faster than DRAM and it is costly and heavy too. SRAM is usually available in MBs, while DRAM is purchased in GBs (gigabytes).
DRAM uses more power than SRAM because it is refreshed constantly to maintain data integrity, while SRAM which is volatile, it does not need constant refreshing when it is powered up.
- ROM, [ read-only memory]
ROM is Read-only memory, and even if data can be read from this type of computer memory, data cannot be written to it. It is a very fast computer’s memory which is usually installed near to the CPU on the motherboard.
The ROM portion of primary memory is needed for storing an initial program called bootstrap loader, which is to start the computer software operating when power is turned on.
ROM is a non-volatile type of memory, which means that the data stored in ROM remains persistent in the memory even when there is no power. In that way, it is like secondary memory, which is used for long term storage.
ROM is used in some simpler electronic devices to store firmware so that they can run as the device gets power.
Types of ROM
ROM is available in different types, like PROM, EPROM, and EEPROM.
∙ MROM (Masked ROM):
The very first ROMs were hard-wired devices that contained a pre-programmed set of data or instructions. These kinds of ROMs are known as masked ROMs, which are inexpensive.
PROM is Programmable ROM, and it is completely different from the real ROM in PROM the memory is programmed (i.e., data has been written to it). During the manufacturing, a PROM is manufactured in an empty state and then programmed later using a burner or PROM programmer.
EPROM is Erasable Programmable ROM, and data stored in an EPROM can be erased and reprogrammed easily. Erasing data from an EPROM involves removing it from the computer and exposing it to ultraviolet light (UV rays) before re-burning the memory.
EEPROM is Electrically Erasable Programmable ROM, and the difference between EPROM and EEPROM is that EEPROM can be erased and written by the computer in which it is installed. In that way EEPROM is not strictly read-only memory. However, in many such cases the write process is very slow, so it is normally done to update program code only such as BIOS code or firmware on an occasional basis.
4.2.2. Differences between RAM and ROM
∙ Fast to read
∙ Usually used in small quantities
∙ Cannot be written to quickly
∙ Used to store boot instructions or firmware
∙ Relatively expensive per megabyte stored compared to RAM
∙Fast to read and write
∙ Used as system memory to store data (including program code) that the CPU needs to process imminently
∙ Relatively cheap per megabyte stored compared to ROM, but relatively expensive compared to secondary memory.
- Peripheral Devices-
A Peripheral Device is a computer device that performs input/output operations and serves as an auxiliary computer device that does not require computational power.
Peripheral devices, on the other hand, are generally not required for the computer to execute its core functions; rather, they can be viewed of as an improvement to the user's experience. A peripheral device is a device that is linked to a computer system but does not form part of the system's core design. In general, more people use the term peripheral to refer to a device that is not connected to the computer.
Classification of Peripheral devices:
It is generally classified into 3 basic categories which are given below:
- Input Devices:
The input devices are defined as it converts incoming data and instructions into a pattern of electrical signals in binary code that are comprehensible to a digital computer.
Keyboard, mouse, scanner, microphone etc.
- Output Devices:
An output device is generally reverse of the input process and generally translating the digitized signals into a form intelligible to the user. The output device is also performed for sending data from one computer system to another. For some time, punched-card and paper-tape readers were extensively used for input, but these have now been supplanted by more efficient devices.
Monitors, headphones, printers etc.
- Storage Devices:
Storage devices are used to store data in the system which is required for performing any operation in the system. The storage device is one of the most requirement devices and provide better compatibility.
Hard disk, magnetic tape, Flash memory etc.
Advantage of Peripherals Devices:
Peripheral’s devices provide more feature due to this operation of the system is easy. These are given below:
- It is helpful for taking input very easily.
- It is also provided a specific output.
- It has a storage device for storing information or data.
- It also improves the efficiency of the system.
Candidates can practice 150+Mock Tests with Gradeup Green Card for exams like GATE, ESE, NIELIT from the following link:
Get unlimited access to 24+ structured Live Courses all 150+ mock tests to boost your GATE 2021 Preparation with Gradeup Super:
Sahi Prep Hai To Life Set Hai.