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

Unit-10

The document discusses memory organization in computer architecture, categorizing memory into volatile and non-volatile types, and detailing the memory hierarchy from auxiliary memory to cache memory. It explains various memory access methods, the roles of main memory, auxiliary memory, and cache memory, as well as concepts like virtual memory and parallel processing. Additionally, it outlines data transfer modes in computer systems, including SISD, SIMD, MISD, and MIMD.

Uploaded by

lokbasnet368
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views

Unit-10

The document discusses memory organization in computer architecture, categorizing memory into volatile and non-volatile types, and detailing the memory hierarchy from auxiliary memory to cache memory. It explains various memory access methods, the roles of main memory, auxiliary memory, and cache memory, as well as concepts like virtual memory and parallel processing. Additionally, it outlines data transfer modes in computer systems, including SISD, SIMD, MISD, and MIMD.

Uploaded by

lokbasnet368
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

Memory Organization in Computer Architecture

A memory unit is the collection of storage units or devices together. The memory unit stores
the binary information in the form of bits. Generally, 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.
Memory Hierarchy

The total memory capacity of a computer can be visualized by hierarchy of components. The
memory hierarchy system consists of all storage devices contained in a computer system from
the slow Auxiliary Memory to fast Main Memory and to smaller Cache memory.
Auxillary memory access time is generally 1000 times that of the main memory, hence it is at
the bottom of the hierarchy.
The main memory occupies the central position because it is equipped to communicate
directly with the CPU and with auxiliary memory devices through Input/output processor
(I/O).
When the program not residing in main memory is needed by the CPU, they are brought
in from auxiliary memory. Programs not currently needed in main memory are
transferred into auxiliary memory to provide space in main memory for other programs
that are currently in use.
The cache memory is used to store program data which is currently being executed in the CPU.
Approximate access time ratio between cache memory and main memory is about 1 to 7~10
Memory Access Methods
Each memory type, is a collection of numerous memory locations. To access data from any
memory, first it must be located and then the data is read from the memory location.
Following are the methods to access information from memory locations:
1. Random Access: Main memories are random access memories, in which each memory
location has a unique address. Using this unique address any memory location can be
reached in the same amount of time in any order.
2. Sequential Access: This methods allows memory access in a sequence or in order.
3. Direct Access: In this mode, information is stored in tracks, with each track having a
separate read/write head.

Main Memory
The memory unit that communicates directly within the CPU, Auxillary memory and Cache
memory, is called main memory. It is the central storage unit of the computer system. It is a
large and fast memory used to store data during computer operations. Main memory is made
up of RAM and ROM, with RAM integrated circuit chips holing the major share.
 RAM: Random Access Memory
o DRAM: Dynamic RAM, is made of capacitors and transistors, and must be
refreshed every 10~100 ms. It is slower and cheaper than SRAM.
o SRAM: Static RAM, has a six transistor circuit in each cell and retains data, until
powered off.
o NVRAM: Non-Volatile RAM, retains its data, even when turned off. Example:
Flash memory.
 ROM: Read Only Memory, is non-volatile and is more like a permanent storage for
information. It also stores the bootstrap loader program, to load and start the operating
system when computer is turned on. PROM(Programmable ROM), EPROM(Erasable
PROM) and EEPROM(Electrically Erasable PROM) are some commonly used ROMs.
Auxiliary Memory
Devices that provide backup storage are called auxiliary memory. For
example: Magnetic disks and tapes are commonly used auxiliary devices. Other devices
used as auxiliary memory are magnetic drums, magnetic bubble memory and optical
disks.
It is not directly accessible to the CPU, and is accessed using the Input/output channels.
Cache Memory
The data or contents of the main memory that are used again and again by CPU, are
stored in the cache memory so that we can easily access that data in shorter time.
Whenever the CPU needs to access memory, it first checks the cache memory. If the data
is not found in cache memory then the CPU moves onto the main memory. It also
transfers block of recent data into the cache and keeps on deleting the old data in cache to
accommodate the new one.
There are three types of cache:

1. direct-mapped cache

2. fully associative cache

3. N-way-set-associative cache

Hit Ratio
The performance of cache memory is measured in terms of a quantity called hit ratio.
When the CPU refers to memory and finds the word in cache it is said to produce a hit. If
the word is not found in cache, it is in main memory then it counts as a miss.
The ratio of the number of hits to the total CPU references to memory is called hit ratio.
Hit Ratio = Hit/(Hit + Miss)
Associative Memory
It is also known as content addressable memory (CAM). It is a memory chip in which
each bit position can be compared. In this the content is compared in each bit cell which
allows very fast table lookup. Since the entire chip can be compared, contents are
randomly stored without considering addressing scheme. These chips have less storage
capacity than regular memory chips.

Memory Mapping and Concept of Virtual Memory


The transformation of data from main memory to cache memory is called mapping. There are 3
main types of mapping:
1. Associative Mapping
2. Direct Mapping
3. Set Associative Mapping

Associative Mapping
The associative memory stores both address and data. The address value of 15 bits is 5 digit octal
numbers and data is of 12 bits word in 4 digit octal number. A CPU address of 15 bits is placed
in argument register and the associative memory is searched for matching address.
Direct Mapping
The CPU address of 15 bits is divided into 2 fields. In this the 9 least significant bits constitute
the index field and the remaining 6 bits constitute the tag field. The number of bits in index field
is equal to the number of address bits required to access cache memory.

Set Associative Mapping


The disadvantage of direct mapping is that two words with same index address can't reside in
cache memory at the same time. This problem can be overcome by set associative mapping.
In this we can store two or more words of memory under the same index address. Each data
word is stored together with its tag and this forms a set.

Replacement Algorithms
Data is continuously replaced with new data in the cache memory using replacement algorithms.
Following are the 2 replacement algorithms used:

 FIFO - First in First out. Oldest item is replaced with the latest item.
 LRU - Least Recently Used. Item which is least recently used by CPU is removed.

Virtual Memory
- Virtual memory is the separation of logical memory from physical memory.
- This separation provides large virtual memory for programmers when only small physical
memory is available.
- Virtual memory is used to give programmers the illusion that they have a very large
memory even though the computer has a small main memory.
- It makes the task of programming easier because the programmer no longer needs to
worry about the amount of physical memory available.

Parallel Processing and Data Transfer Modes in a Computer System


- Instead of processing each instruction sequentially, a parallel processing system
provides concurrent data processing to increase the execution time.
- In this the system may have two or more ALU's and should be able to execute two or
more instructions at the same time.
- The purpose of parallel processing is to speed up the computer processing capability and
increase its throughput.
NOTE: Throughput is the number of instructions that can be executed in a unit of time.
Parallel processing can be viewed from various levels of complexity. At the lowest level, we
distinguish between parallel and serial operations by the type of registers used. At the higher
level of complexity, parallel processing can be achieved by using multiple functional units that
perform many operations simultaneously.

Data Transfer Modes of a Computer System


According to the data transfer mode, computer can be divided into 4 major groups:
1. SISD
2. SIMD
3. MISD
4. MIMD

SISD (Single Instruction Stream, Single Data Stream)


It represents the organization of a single computer containing a control unit, processor unit and a
memory unit. Instructions are executed sequentially. It can be achieved by pipelining or multiple
functional units.
SIMD (Single Instruction Stream, Multiple Data Stream)
It represents an organization that includes multiple processing units under the control of a
common control unit. All processors receive the same instruction from control unit but operate
on different parts of the data.They are highly specialized computers. They are basically used for
numerical problems that are expressed in the form of vector or matrix. But they are not suitable
for other types of computation
MISD (Multiple Instruction Stream, Single Data Stream)
It consists of a single computer containing multiple processors connected with multiple control
units and a common memory unit. It is capable of processing several instructions over single data
stream simultaneously. MISD structure is only of theoretical interest since no practical system
has been constructed using this organization.

MIMD (Multiple Instruction Stream, Multiple Data Stream


It represents the organization which is capable of processing several programs at same time. It is
the organization of a single computer containing multiple processors connected with multiple
control units and a shared memory unit. The shared memory unit contains multiple modules to
communicate with all processors simultaneously. Multiprocessors and multicomputer are the
examples of MIMD. It fulfills the demand of large scale

You might also like