Associative Array Processing
Consider that a list of record or a table is stored in the memory and you want to search some information in that list. For example, the list having of three fields as given below:
Name ID Number Age
Sumit 234 23
Ramesh 136 26
Ravi 97 35
Suppose now that we want to search the ID number and age of Ravi. If we use conventional RAM then it is essential to give the exact physical address of entry related to Ravi in the instruction access the entry such as:
READ ROW 3
One more alternative idea is that we seek the whole list using the Name field as an address in the instruction such as:
READ NAME = RAVI
Again with serial access memory this option can be executed easily but it is a very slow process. An associative memory helps at this point and simultaneously looks at all the entries in the list and returns the desired list very fastly.
SIMD array computers have been developed with associative memory. An associative memory is content addressable memory, by which it is says that multiple memory words are accessible in parallel. The parallel accessing feature also gives support parallel compare and parallel search. This capability can be used in following applications such as:
- Retrieval and storage of databases which are changing rapidly
- Radar signal tracking
- Image processing
- Artificial Intelligence
The inherent parallelism element of this memory has great benefits and impact in parallel computer architecture. The associative memory is costly measure to RAM. The array processor built with associative memory is known as Associative array processor. In this part, we describe some of categories of associative array processor. Types of associative processors are relying on the organisation of associative memory. Thus, first we discuss about the associative memory organisation.