Evolution of Computers PDF
Document Details
Uploaded by LuxuriantHappiness
Tags
Related
- Five Generations of Computers PDF
- Computer Architecture and Organization Lecture Notes PDF
- Fundamentals Of Computer And Information Technology PDF
- CMPE 101 Module 3: Evolution of Computing Systems and Processors PDF
- Unit 1 Computer Organization And Architecture Structure and Function PDF
- Generations of Computers PDF
Summary
This document provides a history of the evolution of computers, from the early ENIAC to modern computing technologies. It discusses concepts like Moore's Law and Von Neumann architecture, offering a general overview of significant milestones in computer development.
Full Transcript
What is the evolution of computers? In the early 1940s, the first computing system designed was ENIAC (Electronic Numerical Integrator and Computer). Properties- Consisted of 18,000 buzzing electronic switches ( Vacuum tubes ) Have 42 panels each 9'x 2'x1' Cooled by forced air and arranged...
What is the evolution of computers? In the early 1940s, the first computing system designed was ENIAC (Electronic Numerical Integrator and Computer). Properties- Consisted of 18,000 buzzing electronic switches ( Vacuum tubes ) Have 42 panels each 9'x 2'x1' Cooled by forced air and arranged in a U-shape around the room's perimeter. Now we will go through the evolution of computer - In 1937, John Vincent Atanasoff and his assistant, Clifford E. Berry, designed Atanasoff-Berry Computer (ABC), known as the first digital electronic computer ( Not programmable ). Then German inventor Konrad Zuse in 1941, invented Z3, which was the first working programmable, fully automatic computing machine. In 1947 at Bell Laboratories, transistors were invented, which were a quarter of the size of vacuum tubes and consumed less power, but the complicated circuits were still difficult to manage. At the same time, Integrated Circuit was invented by Jack Kilby and Robert Noyce, for which Noyce filed a patent in July 1959. Robert Noyce co-founded Intel Electronics company in 1968, which is still the worldwide market leader in integrated circuit manufacture, research, and development. As the first personal computer, in 1983, Lisa was launched with a graphical user interface (GUI). It was commercially available, operated on the Motorola 68000, featured dual floppy disc drives, a 5 MB hard drive, and 1MB RAM. Apple released the Macintosh Portable in 1990. It was expensive and heavy weighted(7.3 kg (16 lb)). It was discontinued only after two years and did not meet with great success. After that, in the same year, the Touchstone Delta supercomputer was introduced by Intel with 512 microprocessors. This technical achievement was noteworthy because it served as a model for some of the world's fastest Von-Neumann computer architecture Von-Neumann computer architecture design was proposed in 1945.It was later known as Von-Neumann architecture. Historically there have been 2 types of Computers: 1. Fixed Program Computers – Their function is very specific and they couldn’t be reprogrammed, e.g. Calculators. 2. Stored Program Computers – These can be programmed to carry out many different tasks, applications are stored on them, hence the name. Modern computers are based on a stored-program concept introduced by John Von Neumann. In this stored-program concept, programs and data are stored in the same memory. This novel idea meant that a computer built with this architecture would be much easier to reprogram. The basic structure is like this, It is also known as ISA (Instruction set architecture) computer and is having three basic units: 1. The Central Processing Unit (CPU) 2. The Main Memory Unit 3. The Input/Output Device Von Neumann bottleneck – Whatever we do to enhance performance, we cannot get away from the fact that instructions can only be done one at a time and can only be carried out sequentially. Both of these factors hold back the competence of the CPU. This is commonly referred to as the ‘Von Neumann bottleneck’. We can provide a Von Neumann processor with more cache, more RAM, or faster components but if original gains are to be made in CPU performance then an influential inspection needs to take place of CPU configuration. This architecture is very important and is used in our PCs and even in Super Computers. Moore’s Law Gordon Moore one of the co-founders of Intel corporation established the term “Moore’s Law” in 1965, This law explains how the number of transistors on integrated circuits is increasing exponentially, which boosts computing capability and lowers prices. Moore’s law has had a significant and far-reaching impact on technology, from the introduction of personal computers and smartphones to the advancement of artificial intelligence and Internet of Things(IoT) devices. it has accelerated development in sectors including telecommunications, healthcare, transportation, enabling organizations and people to accomplish things that were previously unthinkable. Moore’s Law Definition The exponential increase in the number of transistors on integrated circuits over time is referred to as Moore’s law. According to this, a chip transistor count tends to double every two years or so, resulting in higher processing power and better performance. Moore’s Law Transistor Scaling Transistor scaling, a crucial component of Moore’s law, has proved essential in advancing technology in many different fields. Transistors act as switches that regulate the flow of electrical current within microchips, serving as the essential building blocks of electronic devices. As technology developed engineers concentrated on shrinking and packing transistors more closely together on a chip. A large increase in the number of transistors that could be put onto a single chip was made possible by this scaling process, Electronic devices were able to complete more complicated tasks faster due to the increased computing capacity brought on by the addition of transistors. Impact on Computing Power Moore’s law has had nothing short of a transformational effect on computing power. The computing power of electronic devices has exponentially increased with each doubling of the number of transistors on a chip. The creation of sophisticated software applications, data processing capacities, and a wide range of technological advancements have all been spurred by this exponential growth. Computers can now process more operations per second because to the steady growth in transistor density, making computation faster and more effective. This has made it possible to develop complex software programs. Moore’s Law Challenges and Limitations As transistors become closer to atomic scales, Moore’s Law has recently encountered considerable difficulties and restrictions. The ongoing advancement of Moore’s law is hampered by a number of physical constraints as transistor size decreases. The quantum effects at such small scales are one of these restrictions. When electrons leak past barriers as a result of quantum tunneling, for example, transistor actions become inaccurate and unstable. As transistors get smaller this tendency gets stronger, making it more challenging to maintain steady, predictable behaviour. Dissipation of heat presents another issue. Temperatures inside the microchip are raised as a result of increased heat generation as transistors are stacked closer together. Heat dissipation becomes a serious issue since it can impact dependability, reduce performance, and increase energy consumption. Types of Computers There are two bases on which we can define the types of computers. We will discuss the type of computers on the basis of size and data handling capabilities. Super Computer Mainframe computer Mini Computer Workstation Computer Personal Computer (PC) Server Computer Analog Computer Digital Computer Hybrid Computer Tablets and Smartphone Supercomputer When we talk about speed, then the first name that comes to mind when thinking of computers is supercomputers. They are the biggest and fastest computers (in terms of speed of processing data). Supercomputers are designed such that they can process a huge amount of data, like processing trillions of instructions or data just in a second. This is because of the thousands of interconnected processors in supercomputers. It is basically used in scientific and engineering applications such as weather forecasting, scientific simulations, and nuclear energy research. Supercomputer Characteristics of Supercomputers Supercomputers are the computers that are the fastest and they are also very expensive. It can calculate up to ten trillion individual calculations per second, this is also the reason which makes it even faster. It is used in the stock market or big organizations for managing the online currency world such as Bitcoin etc. It is used in scientific research areas for analyzing data obtained from exploring the solar system, satellites, etc. Mainframe computer Mainframe computers are designed in such a way that they can support hundreds or thousands of users at the same time. It also supports multiple programs simultaneously. So, they can execute different processes simultaneously. All these features make the mainframe computer ideal for big organizations like banking, telecom sectors, etc., which process a high volume of data in general. Mainframe computer Characteristics of Mainframe Computers It is also an expensive or costly computer. It has high storage capacity and great performance. It can process a huge amount of data (like data involved in the banking sector) very quickly. It runs smoothly for a long time and has a long life. Minicomputer Minicomputer is a medium size multiprocessing computer. In this type of computer, there are two or more processors, and it supports 4 to 200 users at one time. Minicomputer is similar to Microcontroller. Minicomputers are used in places like institutes or departments for different work like billing, accounting, inventory management, etc. It is smaller than a mainframe computer but larger in comparison to the microcomputer. Minicomputer Characteristics of Minicomputer Its weight is low. Because of its low weight, it is easy to carry anywhere. less expensive than a mainframe computer. It is fast. Workstation Computer A workstation computer is designed for technical or scientific applications. It consists of a fast microprocessor, with a large amount of RAM and a high-speed graphic adapter. It is a single-user computer. It is generally used to perform a specific task with great accuracy. Workstation Computer Characteristics of Workstation Computer It is expensive or high in cost. They are exclusively made for complex work purposes. It provides large storage capacity, better graphics, and a more powerful CPU when compared to a PC. It is also used to handle animation, data analysis, CAD, audio and video creation, and editing. Personal Computer (PC) Personal Computers is also known as a microcomputer. It is basically a general-purpose computer designed for individual use. It consists of a microprocessor as a central processing unit(CPU), memory, input unit, and output unit. This kind of computer is suitable for personal work such as making an assignment, watching a movie, or at the office for office work, etc. For example, Laptops and desktop computers. Personal Computer (PC) Characteristics of Personal Computer (PC) In this limited number of software can be used. It is the smallest in size. It is designed for personal use. It is easy to use. Server Computer Server Computers are computers that are combined data and programs. Electronic data and applications are stored and shared in the server computer. The working of a server computer is that it does not solve a bigger problem like a supercomputer but it solves many smaller similar ones. Examples of server computer are like Wikipedia, as when users put a request for any page, it finds what the user is looking for and sends it to the user. Analog Computer Analog Computers are particularly designed to process analog data. Continuous data that changes continuously and cannot have discrete values are called analog data. So, an analog computer is used where we don’t need exact values or need approximate values such as speed, temperature, pressure, etc. It can directly accept the data from the measuring device without first converting it into numbers and codes. It measures the continuous changes in physical quantity. It gives output as a reading on a dial or scale. For example speedometer, mercury thermometer, etc. Digital Computer Digital computers are designed in such a way that they can easily perform calculations and logical operations at high speed. It takes raw data as input and processes it with programs stored in its memory to produce the final output. It only understands the binary input 0 and 1, so the raw input data is converted to 0 and 1 by the computer and then it is processed by the computer to produce the result or final output. All modern computers, like laptops, desktops including smartphones are digital computers. Hybrid Computer As the name suggests hybrid, which means made by combining two different things. Similarly, the hybrid computer is a combination of both analog and digital computers. Hybrid computers are fast like analog computers and have memory and accuracy like digital computers. So, it has the ability to process both continuous and discrete data. For working when it accepts analog signals as input then it converts them into digital form before processing the input data. So, it is widely used in specialized applications where both analog and digital data are required to be processed. A processor which is used in petrol pumps that converts the measurements of fuel flow into quantity and price is an example of a hybrid computer. Tablet and Smartphones Tablets and Smartphones are the types of computers that are pocket friendly and easy to carry is these are handy. This is one of the best use of modern technology. These devices have better hardware capabilities, extensive operating systems, and better multimedia functionality. smartphones and tablets contain a number of sensors and are also able to provide wireless communication protocols. Classification on basis of size Supercomputer Mainframe computer Mini computer Micro computer Classification on basis of functionality Servers Workstation Information Appliances Embedded computers Classification on basis of data handling Analog Digital Hybrid Functional Components of Computer Computer: A computer is a combination of hardware and software resources which integrate together and provides various functionalities to the user. Hardware are the physical components of a computer like the processor, memory devices, monitor, keyboard etc. while software is the set of programs or instructions that are required by the hardware resources to function properly. There are a few basic components that aids the working-cycle of a computer i.e. the Input- Process- Output Cycle and these are called as the functional components of a computer. It needs certain input, processes that input and produces the desired output. The input unit takes the input, the central processing unit does the processing of data and the output unit produces the output. The memory unit holds the data and instructions during the processing. Input Unit :The input unit consists of input devices that are attached to the computer. These devices take input and convert it into binary language that the computer understands. Some of the common input devices are keyboard, mouse, joystick, scanner etc. Central Processing Unit (CPU) : Once the information is entered into the computer by the input device, the processor processes it. The CPU is called the brain of the computer because it is the control center of the computer. It first fetches instructions from memory and then interprets them so as to know what is to be done. If required, data is fetched from memory or input device. Thereafter CPU executes or performs the required computation and then either stores the output or displays on the output device. The CPU has three main components which are responsible for different functions – Arithmetic Logic Unit (ALU), Control Unit (CU) and Memory registers Arithmetic and Logic Unit (ALU) : The ALU, as its name suggests performs mathematical calculations and takes logical decisions. Arithmetic calculations include addition, subtraction, multiplication and division. Logical decisions involve comparison of two data items to see which one is larger or smaller or equal. Control Unit : The Control unit coordinates and controls the data flow in and out of CPU and also controls all the operations of ALU, memory registers and also input/output units. It is also responsible for carrying out all the instructions stored in the program. It decodes the fetched instruction, interprets it and sends control signals to input/output devices until the required operation is done properly by ALU and memory. Memory : Memory attached to the CPU is used for storage of data and instructions and is called internal memory The internal memory is divided into many storage locations, each of which can store data or instructions. Each memory location is of the same size and has an address. With the help of the address, the computer can read any memory location easily without having to search the entire memory. when a program is executed, it’s data is copied to the internal memory and is stored in the memory till the end of the execution. The internal memory is also called the Primary memory or Main memory. This memory is also called as RAM, i.e. Random Access Memory. The time of access of data is independent of its location in memory, therefore this memory is also called Random Access memory (RAM). Output Unit : The output unit consists of output devices that are attached with the computer. It converts the binary data coming from CPU to human understandable form. The common output devices are monitor, printer, plotter etc. Interconnection between Functional Components A computer consists of input unit that takes input, a CPU that processes the input and an output unit that produces output. All these devices communicate with each other through a common bus. A bus is a transmission path, made of a set of conducting wires over which data or information in the form of electric signals, is passed from one component to another in a computer. The bus can be of three types – Address bus, Data bus and Control Bus. Following figure shows the connection of various functional components: The address bus carries the address location of the data or instruction. The data bus carries data from one component to another and the control bus carries the control signals. The system bus is the common communication path that carries signals to/from CPU, main memory and input/output devices. The input/output devices communicate with the system bus through the controller circuit which helps in managing various input/output devices attached to the computer. Devices Input Device Output Device It shows the data after processing to the Data is accepted by the user of the device user It accepts the user’s data and transmits it to It receives the data from the processor and the processor for saving in the secondary returns it to the user memory or processing. More complex designing Less complex designing These devices are used to display or show These devices are used to accept the data the data Example: Keyboard, mouse, etc Example: Monitor, Printer, etc Storage Devices The storage unit is a part of the computer system which is employed to store the information and instructions to be processed. A storage device is an integral part of the computer hardware which stores information/data to process the result of any computational work. Without a storage device, a computer would not be able to run or even boot up. Or in other words, we can say that a storage device is hardware that is used for storing, porting, or extracting data files. It can also store information/data both temporarily and permanently. Types of Computer Storage Devices Now we will discuss different types of storage devices available in the market. 1.Primary Storage Devices 2.Magnetic Storage Devices 3.Flash memory Devices 4.Optical Storage Devices 5.Cloud and Virtual Storage 1. Primary Storage Devices RAM: It stands for Random Access Memory. It is used to store information that is used immediately or we can say that it is a temporary memory. Computers bring the software installed on a hard disk to RAM to process it and to be used by the user. Once, the computer is turned off, the data is deleted. Types of RAM. SRAM: It stands for Static Random Access Memory. It consists of circuits that retain stored information as long as the power supply is on. It is also known as volatile memory. It is used to build Cache memory. The access time of SRAM is lower and it is much faster as compared to DRAM but in terms of cost, it is costly as compared to DRAM. DRAM: It stands for Dynamic Random Access Memory. It is used to store binary bits in the form of electrical charges that are applied to capacitors. The access time of DRAM is slower as compared to SRAM but it is cheaper than SRAM and has a high packaging density. SDRAM: It stands for Synchronous Dynamic Random Access Memory. It is faster than DRAM. It is widely used in computers and others. After SDRAM was ROM: It stands for Read-Only Memory. The data written or stored in these devices are non-volatile, i.e, once the data is stored in the memory cannot be modified or deleted. The memory from which will only read but cannot write it. This type of memory is non-volatile. The information is stored permanently during manufacture only once. ROM stores instructions that are used to start a computer. This operation is referred to as bootstrap. It is also used in other electronic items like washers and microwaves. ROM chips can only store a few megabytes (MB) of data, which ranges between 4 and 8 MB per ROM chip. There are two types of ROM: PROM: PROM is Programmable Read-Only Memory. These are ROMs that can be programmed. A special PROM programmer is employed to enter the program on the PROM. Once the chip has been programmed, information on the PROM can’t be altered. PROM is non-volatile, that is data is not lost when power is switched off. EPROM: Another sort of memory is the Erasable Programmable Read-Only Memory. It is possible to erase the info which has been previously stored on an EPROM and write new data onto the chip. EEPROM: EEPROM is Electrically erasable programmable read-only memory. Here, data can be erased without using ultraviolet light, with the use of just applying the electric field. 2. Magnetic Storage Devices Floppy Disk: Floppy Disk is also known as a floppy diskette. It is generally used on a personal computer to store data externally. A Floppy disk is made up of a plastic cartridge and secured with a protective case. Nowadays floppy disk is replaced by new and effective storage devices like USB, etc. Hard Disk: Hard Disk is a storage device (HDD) that stores and retrieves data using magnetic storage. It is a non-volatile storage device that can be modified or deleted n number of times without any problem. Most computers and laptops have HDDs as their secondary storage device. It is actually a set of stacked disks, just like phonograph records. In every hard disk, the data is recorded electromagnetically in concentric circles or we can say track present on the hard disk, and with the help of a head just like a phonograph arm(but fixed in a position) to read the information present on the track. The read-write speed of HDDs is not so fast but decent. It ranges from a few GBs to a few and more TB. Magnetic Card: It is a card in which data is stored by modifying or rearranging the magnetism of tiny iron-based magnetic particles present on the band of the card. It is also known as a swipe card. It is used like a passcode(to enter the house or hotel room), credit card, identity card, etc. Tape Cassette: It is also known as a music cassette. It is a rectangular flat container in which the data is stored in an analog magnetic tape. It is generally used to store audio recordings. SuperDisk: It is also called LS-240 and LS-120. It is introduced by Imation Corporation and it is popular with OEM computers. It can store data up to 240 MB. 3. Flash Memory Devices It is a cheaper and more portable storage device. It is the most commonly used device to store data because is more reliable and efficient as compared to other storage devices. Some of the commonly used flash memory devices are: Pen Drive: It is also known as a USB flash drive that includes flash memory with an integrated USB interface. We can directly connect these devices to our computers and laptops and read/write data into them in a much faster and more efficient way. These devices are very portable. It ranges from 1GB to 256GB generally. SSD: It stands for Solid State Drive, a mass storage device like HDD. It is more durable because it does not contain optical disks inside like hard disks. It needs less power as compared to hard disks, is lightweight, and has 10x faster read and writes speed as compared to hard disks. But, these are costly as well. While SSDs serve an equivalent function as hard drives, their internal components are much different. Unlike hard drives, SSDs don’t have any moving parts and thus they’re called solid-state drives. Instead of storing data on magnetic platters, SSDs store data using non-volatile storage. Since SSDs haven’t any moving parts, they do not need to “spin up”. It ranges from 150GB to a few more TB. SD Card: It is known as a Secure Digital Card. It is generally used with electronic devices like phones, digital cameras, etc. to store larger data. It is portable and the size of the SD card is also small so that it can easily fit into electronic devices. It is available in different sizes like 2GB, 4GB, 8GB, etc. Memory Card: It is generally used in digital cameras. printers, game consoles, etc. It is also used to store large amounts of data and is available in different sizes. To run a memory card on a computer you require a separate memory card reader. Multimedia Card: It is also known as MMC. It is an integrated circuit that is generally used in-car radios, digital cameras, etc. It is an external device to store data/information. 4. Optical Storage Devices Optical Storage Devices is also secondary storage device. It is a removable storage device. Following are some optical storage devices: CD: It is known as Compact Disc. It contains tracks and sectors on its surface to store data. It is made up of polycarbonate plastic and is circular in shape. CD can store data up to 700MB. It is of two types: CD-R: It stands for Compact Disc read-only. In this type of CD, once the data is written can not be erased. It is read-only. CD-RW: It stands for Compact Disc Read Write. In this type of CD, you can easily write or erase data multiple times. DVD: It is known as Digital Versatile Disc. DVDs are circular flat optical discs used to store data. It comes in two different sizes one is 4.7GB single-layer discs and another one is 8.5GB double-layer discs. DVDs look like CDs but the storage capacity of DVDs is more than as compared to CDs. It is of two types: DVD-R: It stands for Digital Versatile Disc read-only. In this type of DVD, once the data is written can not be erased. It is read-only. It is generally used to write movies, etc. DVD-RW: It stands for Digital Versatile Disc Read Write. In this type of DVD, you can easily write or erase data multiple times. Blu-ray Disc: It is just like CD and DVD but the storage capacity of blu ray is up to 25GB. To run a Blu-ray disc you need a separate Blu-ray reader. This Blu-ray technology is used to read a disc 5. Cloud and Virtual Storage Nowadays, secondary memory has been upgraded to virtual or cloud storage devices. We can store our files and other stuff in the cloud and the data is stored for as long as we pay for the cloud storage. There are many companies that provide cloud services largely Google, Amazon, Microsoft, etc. We can pay the rent for the amount of space we need and we get multiple benefits out of it. Though it is actually being stored in a physical device located in the data centers of the service provider, the user doesn’t interact with the physical device and its maintenance. For example, Amazon Web Services offers AWS S3 as a type of storage where users can store data virtually instead of being stored in physical hard drive devices. These sorts of innovations represent the frontier of where storage media goes. Communication Devices A communication device is an electronic device. Communication devices send a digital or analog signal without wire or via a wired network. A computer modem is an example of a communication device, which converts digital data into an analog signal that is transmitted over a phone line. Similarly, like a modem converts digital data into analog data and vice-versa, a modem also transforms analog data into digital. Types of Communication Device Below are some types of communication device. Dial-up Modem: digital signals from a computer must be transformed to analog signals before being transferred over phone lines. A modem is also known as a dial up modem when a communication device performs this conversion. In general, a modem is an adapter card that fits into a expansion slot of computer’s motherboard. One end of a typical telephone cord goes into a port on the modem card and the other plugged into a phone outlet. Cable Modems: Digital data is sent and received via a cable modem. Because more than 110 million homes are wired for cable television. cable modems provide home users with a faster alternative to dial up and have speeds comparable to DSL. Compared to dial up modems cable modems can transport data at speeds that are continuously faster. Wireless Modems: A wireless modem which connects to the Internet from a laptop, computer, a Smartphone, or another portable device. There are built in wireless modes that come in computer Cards, and flash memory card formats. Wireless Access Points: A wireless access point is a communication hub. It enables computers and other devices to interact wirelessly with each another. wireless access points have high quality antennas for the best signal reception. Routers: A Router is a networking device that forwards data packets between computer networks. One or more packet switched networks or subnetworks can be connected using a router. By sending data packets to their intended IP addresses, it manages traffic between different networks and permits several devices to share an Internet connection. What is Computer Memory? Computer memory is just like the human brain. It is used to store data/information and instructions. It is a data storage unit or a data storage device where data is to be processed and instructions required for processing are stored. It can store both the input and output can be stored here. Characteristics of Computer Memory It is faster computer memory as compared to secondary memory. It is semiconductor memories. It is usually a volatile memory, and main memory of the computer. How Does Computer Memory Work? When you open a program, it is loaded from secondary memory into primary memory. Because there are various types of memory and storage, an example would be moving a program from a solid-state drive (SSD) to RAM. Because primary storage is accessed more quickly, the opened software can connect with the computer’s processor more quickly. The primary memory is readily accessible from temporary memory slots or other storage sites. Memory is volatile, which means that data is only kept temporarily in memory. Data saved in volatile memory is automatically destroyed when a computing device is turned off. When you save a file, it is sent to secondary memory for storage. There are various kinds of memory accessible. It’s operation will depend upon the type of primary memory used. but normally, semiconductor-based memory is more related with memory. Semiconductor memory made up of IC (integrated circuits) with silicon-based metal-oxide-semiconductor (MOS) transistors. Types of Computer Memory In general, computer memory is of three types: Primary memory Secondary memory Cache memory Now we discuss each type of memory one by one in detail: 1. Primary Memory It is also known as the main memory of the computer system. It is used to store data and programs or instructions during computer operations. It uses semiconductor technology and hence is commonly called semiconductor memory. Primary memory is of two types: RAM (Random Access Memory): It is a volatile memory. Volatile memory stores information based on the power supply. If the power supply fails/ interrupted/stopped, all the data and information on this memory will be lost. RAM is used for booting up or start the computer. It temporarily stores programs/data which has to be executed by the processor. RAM is of two types: S RAM (Static RAM): S RAM uses transistors and the circuits of this memory are capable of retaining their state as long as the power is applied. This memory consists of the number of flip flops with each flip flop storing 1 bit. It has less access time and hence, it is faster. D RAM (Dynamic RAM): D RAM uses capacitors and transistors and stores the data as a charge on the capacitors. They contain thousands of memory cells. It needs refreshing of charge on capacitor after a few milliseconds. This memory is slower than S RAM. ROM (Read Only Memory): It is a non-volatile memory. Non-volatile memory stores information even when there is a power supply failed/ interrupted/stopped. ROM is used to store information that is used to operate the system. As its name refers to read-only memory, we can only read the programs and data that is stored on it. It contains some electronic fuses that can be programmed for a piece of specific information. The information stored in the ROM in binary format. It is also known as permanent memory. ROM is of four types: MROM(Masked ROM): Hard-wired devices with a pre-programmed collection of data or instructions were the first ROMs. Masked ROMs are a type of low-cost ROM that works in this way. PROM (Programmable Read Only Memory): This read-only memory is modifiable once by the user. The user purchases a blank PROM and uses a PROM program to put the required contents into the PROM. Its content can’t be erased once written. EPROM (Erasable Programmable Read Only Memory): EPROM is an extension to PROM where you can erase the content of ROM by exposing it to Ultraviolet rays for nearly 40 minutes. EEPROM (Electrically Erasable Programmable Read Only Memory): Here the written contents can be erased electrically. You can delete and reprogramme EEPROM up to 10,000 times. Erasing and programming take very little time, i.e., nearly 4 -10 ms(milliseconds). Any area in an EEPROM can be wiped and programmed selectively. 2. Secondary Memory It is also known as auxiliary memory and backup memory. It is a non-volatile memory and used to store a large amount of data or information. The data or information stored in secondary memory is permanent, and it is slower than primary memory. A CPU cannot access secondary memory directly. The data/information from the auxiliary memory is first transferred to the main memory, and then the CPU can access it. Eg- Magnetic Disks. Characteristics of Secondary Memory It is a slow memory but reusable. It is a reliable and non-volatile memory. It is cheaper than primary memory. The storage capacity of secondary memory is large. A computer system can run without secondary memory. In secondary memory, data is stored permanently even when the power is 3. Cache Memory It is a type of high-speed semiconductor memory that can help the CPU run faster. Between the CPU and the main memory, it serves as a buffer. It is used to store the data and programs that the CPU uses the most frequently. Advantages of Cache Memory It is faster than the main memory. When compared to the main memory, it takes less time to access it. It keeps the programs that can be run in a short amount of time. It stores data in temporary use. Disadvantages of Cache Memory Because of the semiconductors used, it is very expensive. The size of the cache (amount of data it can store) is usually small. What is Virtual Memory? Virtual memory is a memory management technique used by operating systems to give the appearance of a large, continuous block of memory to applications, even if the physical memory (RAM) is limited. It allows the system to compensate for physical memory shortages, enabling larger applications to run on systems with less RAM. A memory hierarchy, consisting of a computer system’s memory and a disk, enables a process to operate with only some portions of its address space in memory. A virtual memory is what its name indicates- it is an illusion of a memory that is larger than the real memory. We refer to the software component of virtual memory as a virtual memory manager. The basis of virtual memory is the noncontiguous memory allocation model. The virtual memory manager removes some components from memory to make room for other components. The size of virtual storage is limited by the addressing scheme of the computer system and the amount of secondary memory available not by Types of Virtual Memory In a computer, virtual memory is managed by the Memory Management Unit (MMU), which is often built into the CPU. The CPU generates virtual addresses that the MMU translates into physical addresses. There are two main types of virtual memory: Paging Segmentation Paging Paging divides memory into small fixed-size blocks called pages. When the computer runs out of RAM, pages that aren’t currently in use are moved to the hard drive, into an area called a swap file. The swap file acts as an extension of RAM. When a page is needed again, it is swapped back into RAM, a process known as page swapping. This ensures that the operating system (OS) and applications have enough memory to run. Types of Virtual Memory In a computer, virtual memory is managed by the Memory Management Unit (MMU), which is often built into the CPU. The CPU generates virtual addresses that the MMU translates into physical addresses. There are two main types of virtual memory: Paging Segmentation Paging Paging divides memory into small fixed-size blocks called pages. When the computer runs out of RAM, pages that aren’t currently in use are moved to the hard drive, into an area called a swap file. The swap file acts as an extension of RAM. When a page is needed again, it is swapped back into RAM, a process known as page swapping. This ensures that the operating system (OS) and applications have enough memory to run. Segmentation Segmentation divides virtual memory into segments of different sizes. Segments that aren’t currently needed can be moved to the hard drive. The system uses a segment table to keep track of each segment’s status, including whether it’s in memory, if it’s been modified, and its physical address. Segments are mapped into a process’s address space only when needed. Combining Paging and Segmentation Sometimes, both paging and segmentation are used together. In this case, memory is divided into pages, and segments are made up of multiple pages. The virtual address includes both a segment number and a page number. What is a Logic Gate? A gate can be defined as a digital circuit that can allow a signal (electric current) to pass or stop. A type of gate that allows a signal to pass through when certain logical conditions are met. Different logic gates have different logical conditions. Truth Table: A truth table is a table that shows all possible combinations of inputs and outputs for a logic gate. AND Gate(.) The AND gate gives an output of 1 when if both the two inputs are 1, it gives 0 otherwise. For n-input gate if all the inputs are 1 then 1 otherwise 0.The AND gate operation is similar to the standard multiplication of 1s and 0s.The (.) dot represents the AND operation. OR Gate(+) The OR gate gives an output of 1 if either of the two inputs are 1, it gives 0 otherwise. For n-input gate if all the inputs are 0 then 0 otherwise 1.The OR Operation is represented by the +. X= A+B NOT Gate(‘) The NOT gate gives an output of 1 if the input is 0 and vice-versa. It is also known as Inverters. In Boolean algebra NOT operation is represented by bar over the variable such as A‾A. NAND Gate The NAND gate (negated AND) gives an output of 0 if both inputs are 1, it gives 1 otherwise. For n-input gate if all inputs are 1 then it gives 0 otherwise 1.The Term “NAND” can be said as “Not AND”. NOR Gate The NOR gate (negated OR) gives an output of 1 only if both inputs are 0, it gives 0 otherwise. For n-input gate if all inputs are 0 then it gives 1 otherwise 0.The “NOR” can be said as “NOT OR”. XNOR Gate The XNOR gate (negated XOR) gives an output of 1 if both inputs are same and 0 if they are different. For n-input gate if the number of input 1 are even then it gives 1 otherwise odd. The “XNOR” can be said as “Exclusive NOR”. Universal Logic Gates Out of the logic gates discussed above, NAND and NOR are also known as universal gates since they can be used to implement any digital circuit without using any other gate. This means that every gate can be created by NAND or NOR gates only. Implementation of three basic gates using NAND and NOR gates. Introduction of K-Map (Karnaugh Map) In numerous digital circuits and other practical problems, finding expressions that have minimum variables becomes a prerequisite. In such cases, minimisation of Boolean expressions is possible that have 3, 4 variables. It can be done using the Karnaugh map without using any theorems of Boolean algebra. The K-map can easily take two forms, namely, Sum of Product or SOP and Product of Sum or POS, according to what we need in the problem. K-map is a representation that is table-like, but it gives more data than the TRUTH TABLE. Fill a grid of K-map with 1s and 0s, then solve it by creating various groups. SOP FORM 3 variables K-map: Z = ∑P, Q, R (1, 3, 6, 7) From the red group, the product term would be — P’R From the green group, the product term would be — PQ If we sum these product terms, then we will get this final expression (P’R + PQ) 4 variables K-map: F (A, B, C, D) = ∑(0, 2, 5, 7, 8, 10, 13, 15) From the red group, the product term would be — BD From the lilac group, the product term would be — B’D’ If we sum these product terms, then we will get this final expression (BD + B’D’) Flip-Flop Latch Flip-flop is a bistable device i.e., it has two stable states that are Latch is also a bistable device whose states are also represented represented as 0 and 1. as 0 and 1. It checks the inputs but changes the output only at times defined It checks the inputs continuously and responds to the changes in by the clock signal or any other control signal. inputs immediately. It is a edge triggered device. It is a level triggered device. Gates like NOR, NOT, AND, NAND are building blocks of flip These are also made up of gates. flops. They are classified into asynchronous or synchronous flipflops. There is no such classification in latches It forms the building blocks of many sequential circuits These can be used for the designing of sequential circuits but are like counters. not generally preferred. Flip-flop always have a clock signal Latches doesn’t have a clock signal Flip-flop can be build from Latches Latches can be build from gates ex:D Flip-flop, JK Flip-flop ex:SR Latch, D Latch D Flip Flop D flip flop is an electronic devices that is known as “delay flip flop” or “data flip flop” which is used to store single bit of data.D flip flops are synchronous or asynchronous. The clock single required for the synchronous version of D flip flops but not for the asynchronous one.The D flip flop has two inputs, data and clock input which controls the flip flop. when clock input is high, the data is transferred to the output of the flip flop and when the clock input is low, the output of the flip flop is held in its previous state. Working of D Flip Flop The D flip flop has two inputs, data and clock and two outputs (Q and Q’). The basic working of D Flip Flop is as follows: When the clock signal is low, the flip flop holds its current state and ignores the D input. When the clock signal is high, the flip flop samples and stores D input. The value that was previously fed into the D input is reflected at the flip flop’s Q output. If D = 0 then Q will be 0. If D = 1 then Q will be 1. The Q’ output of the flip flop is complemented by the Q output. If Q = 0 then Q’ will be 1. If Q = 1 then Q’ will be 0. Advantages of D Flip Flop D flip flop is very simple to design. The computation speed of D flip flop is very fast compared to other flip flops. D flip flop requires very few components to design which makes it simple to understand. Disadvantages of D Flip Flop D flip flops are glitch prone. When input varies fast, flip flop output may glitch. Digital circuit glitches are hard to identify and fix Application of D Flip Flop D flip flop is having numerous number of application in digital system is described as follows: Memory: D flip flop is used to create memory circuit for holding the data. Registers: D flip flop is used to create register, which can hold data in digital system. By using the D flip flop the designer can built any size of register as per the requirement. Counters: D flip flops are used to create the counters which counts the number of event occurred in the digital system. Synchronous System: D flip flop is having in developing the synchronous system. What is JK Flip-Flop? It is one kind of sequential logic circuit which stores binary information in bitwise manner. It consists of two inputs and two outputs. Inputs are Set(J) & Reset(K) and their corresponding outputs are Q and Q’. JK flipflop has two modes of operation which are synchronous mode and asynchronous mode. In synchronous mode, the state will be changed with the clock(clk) signal, and in asynchronous mode, the change of state is independent from its clock signal. The JK flip flop diagram represents the basic structure which consists of Clock (CLK), Clear (CLR), and Preset (PR). Let’s see its diagram structure. Applications of JK Flip-Flop We can simply implement a JK-flipflop using NAND gates. In that case two NAND gates need to be connected together and the output of that will be feed to the input which will create a stable state-holding circuit. The resulting circuit will be the NAND gate. So, by following this mechanism we can develop and use JK-flipflop for various application which are listed below. Counters: These are very essential components for the application of frequency dividers and event sequencers where there is a need of storing and propagating the count value. We can design binary synchronous and asynchronous counters using JK-flipflop. Shift registers: For data storage and manipulation, serial-to-parallel or parallel-to-serial data conversion the shift registers are widely used. Registers can store and shift the binary data in a sequential manner. We can design it by JK-flipflops. Memory Units: JK-flipflop itself act as a memory unit to store binary information. By making a sequential chain of JK-flipflops we can use it even as RAM. Advantages of JK Flip-Flop Versatility: As discussed above, JK-flipflops can be used as a basic memory element or a primary building block of further complex memory design. It is very much adaptive as it can be operated in both synchronous and asynchronous modes. Toggle Functionality: The application which are required to get output as its complement of input that also can be developed by JK-flipflops as when J=K=1 it triggers toggle state which gives output which is complement with it’s each clock pulse. Error Detection and Correction: We can use a complex circuit built by JK-flipflops which can detect and correct information during data-transmission. Disadvantages of JK Flip-Flop Complexity: Compared to other types of flipflops(D,T, SR), JK flipflop requires additional logic gates to implement which consumes extra memory resources and increases complexity to operate. Propagation Delay: This is the major problem present in JK-FF. Propagation delay results a timing delay in certain application which are time-flow sensitive. Race Problem: This issue arises when the clock input’s timing pulse isn’t given enough time to turn “Off” before the output Q’s state is altered. Encoders and Decoders Encoders convert 2N lines of input into a code of N bits and Decoders decode the N bits into 2N lines. Encoders – An encoder is a combinational circuit that converts binary information in the form of a 2N input lines into N output lines, which represent N bit code for the input. For simple encoders, it is assumed that only one input line is active at a time. As an example, let’s consider Octal to Binary encoder. As shown in the following figure, an octal-to-binary encoder takes 8 input lines and generates 3 output lines. Truth Table- D7 D6 D5 D4 D3 D2 D1 D0 X Y Z 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 1 0 0 0 0 1 1 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 1 0 1 0 1 0 0 0 0 0 0 1 1 0 1 0 0 0 0 0 0 0 1 1 1 As seen from the truth table, the output is 000 when D0 is active; 001 when D1 is active; 010 when D2 is active and so on. Implementation – From the truth table, the output line Z is active when the input octal digit is 1, 3, 5 or 7. Similarly, Y is 1 when input octal digit is 2, 3, 6 or 7 and X is 1 for input octal digits 4, 5, 6 or 7. Hence, the Boolean functions would be: X = D4 + D5 + D6 + D7 Y = D2 +D3 + D6 + D7 Z = D1 + D3 + D5 + D7 Hence, the encoder can be realised with OR gates as follows: One limitation of this encoder is that only one input can be active at any given time. If more than one inputs are active, then the output is undefined. For example, if D6 and D3 are both active, then, our output would be 111 which is the output for D7. To overcome this, we use Priority Encoders. Another ambiguity arises when all inputs are 0. In this case, encoder outputs 000 which actually is the output for D0 active. In order to avoid this, an extra bit can be added to the output, called the valid bit which is 0 when all inputs are 0 and 1 otherwise. Priority Encoder- A priority encoder is an encoder circuit in which inputs are given priorities. When more than one inputs are active at the same time, the input with higher priority takes precedence and the output corresponding to that is generated. Let us consider the 4 to 2 priority encoder as an example. Decoders –A decoder does the opposite job of an encoder. It is a combinational circuit that converts n lines of input into 2^n lines of output. Let’s take an example of 3-to-8 line decoder. Truth Table – X Y Z D0 D1 D2 D3 D4 D5 D6 D7 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 1 1 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 0 0 1 0 0 1 1 0 0 0 0 0 0 0 1 0 Implementation – D0 is high when X = 0, Y = 0 and Z = 0. Hence, D0 = X’ Y’ Z’ Similarly, D1 = X’ Y’ Z D2 = X’ Y Z’ D3 = X’ Y Z D4 = X Y’ Z’ D5 = X Y’ Z D6 = X Y Z’ D7 = X Y Z What is a Multiplexer? A multiplexer is a data selector which takes several inputs and gives a single output. In multiplexer, we have 2n Input lines and 1 output lines where n is the number of selection lines. Given Below is the Block Diagram of the Multiplexer, It will have 2n Input lines and will select output based on the Select line. What is Demultiplexer ? Demultiplexer is a data distributor which takes a single input and gives several outputs. In demultiplexer we have 1 input and 2n output lines where n is the selection line. Given below is the block diagram of the Demultiplexer, It will have one Input line and will give 2n output lines. Multiplexer Demultiplexer Multiplexer processes the digital information from Demultiplexer receives digital information from a various sources into a single source. single source and converts it into several sources It is known as Data Selector It is known as Data Distributor Multiplexer is a digital switch Demultiplexer is a digital circuit It follows combinational logic type It also follows combinational logic type It has 2n input data lines It has single input line It has a single output data line It has 2n output data lines It works on many to one operational principle It works on one to many operational principle In time division Multiplexing, multiplexer is used at In time division Multiplexing, demultiplexer is used at the transmitter end the receiver end Registers Registers are sequential digital circuits primarily used to temporarily store data within a microprocessor or microcontroller. They consist of flip-flops and provide fast access to data. Registers can be classified into types including; General Purpose Registers: These registers are utilized for data storage and operations in a CPU. Examples include AX, BX, CX and DX registers in x86 architecture. Special Purpose Registers: These registers serve functions such as the Program Counter (PC) Stack Pointer (SP) and Instruction Pointer (IP). Status Registers: Also known as flag registers these hold information about the status of operations like carry flags overflow flags and zero flags. Counters Counters are digital circuits designed to count clock pulses or other input events. They typically consist of flip flops along, with logic gates. Counters are available, in types: Asynchronous Counters: These counters change their state at times usually in response to external clock signals. They find usage in applications, such, as frequency division and event counting. Synchronous Counters: In this counter all flip flops change their state simultaneously upon receiving a common clock signal. These counters are commonly employed in applications that require timing. Advantages and Disadvantages of Registers and Counters Advantages of Registers Registers provide lightning access to data. They are essential for data manipulation in microprocessors. Registers facilitate data transfer and processing. Disadvantages of Registers Registers have limited storage capacity compared to memory types. Additionally they consume power due to switching of data. Advantages of Counters Counters excel at event counting and timing control. They have applications in electronics and digital systems. Counters enable frequency division for clock generation. Disadvantages of Counters Counters are limited to counting and timing functions only. Complexity increases with higher bit counts, which can impact speed. RISC CISC Focus on software Focus on hardware Uses both hardwired Uses only Hardwired control unit and microprogrammed control unit Transistors are used for storing complex Transistors are used for more registers Instructions Fixed sized instructions Variable sized instructions Can perform only Register to Register Can perform REG to REG or REG to MEM Arithmetic operations or MEM to MEM Requires more number of registers Requires less number of registers Code size is large Code size is small An instruction executed in a single clock Instruction takes more than one clock cycle cycle Instructions are larger than the size of one An instruction fit in one word. word Simple and limited addressing modes. Complex and more addressing modes. RISC is Reduced Instruction Cycle. CISC is Complex Instruction Cycle. The number of instructions are less as The number of instructions are more as compared to CISC. compared to RISC. It consumes the low power. It consumes more/high power. RISC is highly pipelined. CISC is less pipelined. RISC required more RAM. CISC required less RAM. Here, Addressing modes are less. Here, Addressing modes are more.