CPU and Memory

Insert YouTube videos in PowerPont slides with aS Desktop
Views:
 
Category: Entertainment
     
 

Presentation Description

No description available.

Comments

By: sooni (19 month(s) ago)

it helped me alot

By: deeptintara (21 month(s) ago)

this presentation is really very useful.

Presentation Transcript

CPU & Memory : 

CPU & Memory

Introduction : 

Introduction Hardware refers to the physical equipment used for the input, processing, output and storage activities of a computer system. Central processing unit (CPU) manipulates the data and controls the tasks performed by the other components. Primary storage internal to the CPU; temporarily stores data and program instructions during processing.

Hardware : 

Hardware Secondary storage external to the CPU; stores data and programs for future use. Input technologies accept data and instructions and convert them to a form that the computer can understand. Output technologies present data and information in a form people can understand.

The Central Processing Unit : 

The Central Processing Unit Central processing unit (CPU) performs the actual computation inside any computer. Microprocessor made up of millions of microscopic transistors embedded in a circuit on a silicon chip. Control unit sequentially accesses program instructions, decodes them and controls the flow of data to and from the ALU, the registers, the caches, primary storage, secondary storage and various output devices.

CPU (Continued) : 

CPU (Continued) Arithmetic-logic unit (ALU) performs the mathematic calculations and makes logical comparisons. Registers are high-speed storage areas that store very small amount of data and instructions for short periods of time.

How the CPU Works : 

How the CPU Works

How the CPU Works (Continued) : 

How the CPU Works (Continued) Binary form: The form in which data and instructions can be read by the CPU – only 0s and 1s. Machine instruction cycle: The cycle of computer processing, whose speed is measured in terms of the number of instructions a chip processes per second. Clock speed: The preset speed of the computer clock that times all chip activities, measured in megahertz and gigahertz. Word length: The number of bits (0s and 1s) that can be processed by the CPU at any one time. Bus width: The size of the physical paths down which the data and instructions travel as electrical impulses on a computer chip.

Computer Memory : 

Computer Memory Two basic categories of computer memory: Primary storage and secondary storage. Primary stores small amounts of data and information that will be immediately used by the CPU. Secondary stores much larger amounts of data and information (an entire software program, for example) for extended periods of time.

Primary Storage : 

Primary Storage Primary storage or main memory stores three types of information for very brief periods of time: Data to be processed by the CPU; Instructions for the CPU as to how to process the data; Operating system programs that manage various aspects of the computer’s operation. Primary storage takes place in chips mounted on the computer’s main circuit board, called the motherboard. Four main types of primary storage: register, random access memory (RAM), cache memory and read-only memory (ROM).

Main Types of Primary Storage : 

Main Types of Primary Storage Registers: registers are part of the CPU with the least capacity, storing extremely limited amounts of instructions and data only immediately before and after processing. Random access memory (RAM): The part of primary storage that holds a software program and small amounts of data when they are brought from secondary storage. Cache memory: A type of primary storage where the computer can temporarily store blocks of data used more often.

Primary Storage (Continued) : 

Primary Storage (Continued) Read-only memory (ROM): Type of primary storage where certain critical instructions are safeguarded; the storage is nonvolatile and retains the instructions when the power to the computer is turned off. Flash memory: A form of rewritable read-only memory that is compact, portable, and requires little energy.

Secondary Storage : 

Secondary Storage Memory capacity that can store very large amounts of data for extended periods of time. It is nonvolatile. It takes much more time to retrieve data because of the electromechanical nature. It is cheaper than primary storage. It can take place on a variety of media

Slide 13: 

Secondary storage Sequential access Direct access Magnetic tape Magnetic disk Optical disk Floppy disk Hard disk CD-ROM WORM

Secondary Storage (Continued) : 

Secondary Storage (Continued) Sequential access: Data access in which the computer system must run through data in sequence in order to locate a particular piece. Direct access: Data access in which any piece of data be retrieved in a non-sequential manner by locating it using the data’s address. Magnetic tape: A secondary storage medium on a large open reel or in a smaller cartridge or cassette.

Slide 15: 

Magnetic tapes are used for large computers like mainframe computers where large volume of data is stored for a longer time. The cost of storing data in tapes is inexpensive. Tapes consist of magnetic materials that store data permanently. It can be 12.5 mm to 25 mm wide plastic film-type and 500 meter to 1200 meter long which is coated with magnetic material.

Secondary Storage (Continued) : 

Secondary Storage (Continued) Magnetic disks: A form of secondary storage on a magnetized disk divided into tracks and sectors that provide addresses for various pieces of data; also called hard disks. Each disk consists of a number of invisible concentric circles called tracks. Information is recorded on tracks of a disk surface in the form of tiny magnetic spots. The presence of a magnetic spot represents one bit and its absence represents zero bit. The information stored in a disk can be read many times without affecting the stored data.

Secondary Storage (Continued) : 

Secondary Storage (Continued) Hard disk: A form of secondary storage that stores data on platters divided into concentric tracks and sectors, which can be read by a read/write head that pivots across the rotating disks. Floppy disk: A form of easily portable secondary storage on flexible disks; also called floppy disks.

Optical Storage Devices : 

Optical Storage Devices Optical storage devices: A form of secondary storage in which a laser reads the surface of a reflective plastic platter. Compact disk, read-only memory (CD-ROM): A form of secondary storage that can be only read and not written on. Digital video disk (DVD): An optical storage device used to store digital video or computer data. Fluorescent multilayer disk (FMD-ROM): An optical storage device with much greater storage capacity than DVDs.

More Storage Options : 

More Storage Options Memory cards: Credit-card-size storage devices that can be installed in an adapter or slot in many personal computers (i.e. memory sticks, thumb drives). Expandable storage devices: Removable disk cartridges, used as backup storage for internal hard drives of PCs. WORM(write-once-read-many-times): is a simple, non-volatile memory.

Memory Hierarchy : 

Memory Hierarchy

Memory Hierarchies : 

Memory Hierarchies Some fundamental and enduring properties of hardware and software: Fast storage technologies cost more per byte and have less capacity. The gap between CPU and main memory speed is widening. These fundamental properties complement each other beautifully. They suggest an approach for organizing memory and storage systems known as a memory hierarchy. The memory hierarchy system consists of all the storage devices.

Need for memory hierarchy : 

Need for memory hierarchy Is to obtain the highest possible average access speed while minimizing the total cost of the entire memory system.

An Example Memory Hierarchy : 

An Example Memory Hierarchy registers on-chip L1 cache (SRAM) main memory (DRAM) local secondary storage (local disks) Larger, slower, and cheaper (per byte) storage devices remote secondary storage (distributed file systems, Web servers) off-chip L2 cache (SRAM) CPU registers hold words retrieved from L1 cache. L0: L1: L2: L3: L4: L5: Smaller, faster, and costlier (per byte) storage devices

Memory Hierarchies : 

Memory Hierarchies Auxiliary Memory Magnetic Tapes Magnetic Disk CPU I/O Processor Main Memory Cache Memory

Memory Performance : 

Memory Performance The goal of memory design is to increase memory bandwidth and decrease access time. We take advantage of three principles of computing in order to achieve this goal: Make the common case faster Principle of Locality Smaller is Faster

Locality of Reference : 

Locality of Reference In computer science, locality of reference, also known as the principle of locality, is the phenomenon of the same value or related storage locations being frequently accessed. The most important property of all programs: – programs tend to reuse data and instructions they have used recently – such characteristics of programs are mainly due to code loops, and repeatedly accessing the same data structure (arrays, stacks, …)

Locality of Reference : 

Locality of Reference The memory accesses generated by a processor tend to be restricted to small areas of main memory – at any one time a program spends 90% of its execution time within 10% of its code – this implies that we should be able to predict what instructions and data a program is likely to access in the near future based on its memory accesses in the recent past Locality is merely one type of predictable behavior that occurs in computer systems. Systems which exhibit strong locality of reference phenomenon, are good candidates for performance optimization through the use of techniques, like the cache and prefetching technology concerning the memory.

Locality of Reference : 

Locality of Reference Except for branch and call instructions, program execution is sequential – the next instruction to be fetched immediately follows the current instruction. Most loops consist of a relatively small number of instructions repeated many times: computation is, therefore, confined to small contiguous portions of a program for periods of time. Most of the computation in many programs involves the processing of data structures, such as arrays or sequences of records. Successive references to these data structures will be to closely related data items

Components of Locality : 

Components of Locality Temporal Locality Temporal locality refers to the reuse of specific data and/or resources within relatively small time durations. If a location is referenced, there is a high likelihood that it will be referenced again in the near future (time). For example, loops, temporary variables, arrays, stacks, … Spatial Locality Spatial locality refers to the use of data elements within relatively close (neighborhood) storage locations. Sequential locality, a special case of spatial locality, occurs when data elements are arranged and accessed linearly, e.g., traversing the elements in a one-dimensional array. If you reference instruction or data at a certain location, there is a high likelihood that nearby addresses will also be referenced

Caches : 

Caches The rate of data fetching by the CPU from the main memory is about 100 times faster than from secondary memory. But there is also a mismatch between main memory and CPU. CPU can process the data 10 times faster than the main memory. Which limits the performance of the CPU due to mismatch in CPU and main memory speed. So Cache memory act as a buffer b/w main memory and CPU. Cache: A smaller, high speed storage device used to increase the speed of processing by making current programs and data available to the CPU at a rapid rate. The basic characteristic of cache memory is its fast access time.

Cache Memory : 

Cache Memory Invisible to operating system Increase the speed of memory Processor speed is faster than memory speed

Cache Memory : 

Cache Memory Contains a portion of main memory Processor first checks cache If not found in cache, the block of memory containing the needed information is moved to the cache

Cache Memory : 

Cache Memory

Caches : 

Caches Fundamental idea of a memory hierarchy: For each k, the faster, smaller device at level k serves as a cache for the larger, slower device at level k+1. Why do memory hierarchies work? Programs tend to access the data at level k more often than they access the data at level k+1. Thus, the storage at level k+1 can be slower, and thus larger and cheaper per bit.

Caching in a Memory Hierarchy : 

Caching in a Memory Hierarchy 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Larger, slower, cheaper storage device at level k+1 is partitioned into blocks. Level k+1: 4 4 4 10 10 10

General Caching Concepts : 

Request 14 Request 12 General Caching Concepts Program needs object d, which is stored in some block b. Cache hit Program finds b in the cache at level k. E.g., block 14. Cache miss b is not at level k, so level k cache must fetch it from level k+1. E.g., block 12. If level k cache is full, then some current block must be replaced (evicted). Which one is the “victim”? The Performance of cache is measured in terms of quantity called Hit ratio. 9 3 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Level k: Level k+1: 14 14 12 14 4* 4* 12 12 0 1 2 3 Request 12 4* 4* 12

Slide 37: 

Hit Ratio is the ratio of the number of hits divided by the total CPU references to memory (hits plus misses). If the hit ratio is high enough so that most of the time the CPU access the cache instead the main memory.

Cache Organization : 

Cache Organization The Transformation of data from main memory to cache memory is referred to as a mapping process. Three types of mapping procedures are : Fully Associative: The most flexible Direct Mapped: The most basic Set Associative: A combination of the two

Fully Associative : 

Fully Associative In a fully associative cache subsystem, the cache controller can place a block of bytes in any of the available cache lines. Though this makes the system greatly flexible, the added circuitry to perform this function increases the cost, and worst, decreases the performance of the cache! Most of today’s cache systems are not fully associative for this reason.

Direct Mapped : 

Direct Mapped In contrast to the fully associative cache is the direct mapped cache system, also called the one-way set associative In this system, a block of main memory is always loaded into the same cache line, evicting the previous cache entry. This is not an ideal solution either because in spite of its simplicity, it doesn’t make an efficient use of the cache. For this reason, not many systems are built as direct mapped caches either.

Set Associative : 

Set Associative Set associative cache is a compromise between fully associative and direct mapped caching techniques. The idea is to break apart the cache into n-sets of cache lines. This way the cache subsystem uses a direct mapped scheme to select a set, but then uses a fully associative scheme to places the line entry in any of the n cache lines within the set. For n = 2, the cache subsystem is called a two-way set associative cache.

Cache Design : 

Cache Design Cache size small caches have a significant impact on performance Block size the unit of data exchanged between cache and main memory hit means the information was found in the cache larger block size more hits until probability of using newly fetched data becomes less than the probability of reusing data that has been moved out of cache

Cache Design : 

Cache Design Mapping function determines which cache location the block will occupy Replacement algorithm determines which block to replace Least-Recently-Used (LRU) algorithm

Random-Access Memory (RAM) : 

Random-Access Memory (RAM) Key features RAM is packaged as a chip. Basic storage unit is a cell (one bit per cell). Multiple RAM chips form a memory. Static RAM (SRAM) Each cell stores bit with a six-transistor circuit. Retains value indefinitely, as long as it is kept powered. Relatively insensitive to disturbances such as electrical noise. Faster and more expensive than DRAM. Dynamic RAM (DRAM) Each cell stores bit with a capacitor and transistor. Value must be refreshed every 10-100 ms. Sensitive to disturbances. Slower and cheaper than SRAM.

Read-Only Memory (ROM) : 

Read-Only Memory (ROM) Key Features Performs the Read operations only. Used to store programs that are permanently resident in the computer & tables of constants. Used for storing an initial program called a bootstrap loader. Masked programmed User programmed 1. PROM 2. EPROM 3. EEPROM(EAPROM)