Abstract :
This paper describes a unique associative memory mechanism in which a data base may be simultaneously searched by comparison with a substantial number of key words, or ``comparands,´´ as contrasted with the usual one-comparand-at-a-time limitation. Possible search criteria include the six arithmetic relations, plus certain logical ``bit-set´´ relations. At some cost in both hardware and speed, each of the comparands may be provided with an associated mask field and/or search specification. Optionally, the set of comparands may be included within the set of data items, thus allowing cross comparisons amonag the comparands. In all cases, the location and length of the comparison field may be freely programmed within the available word size, and a master mask may be provided, without time penalty. Algorithms for one-comparand searches and ``memory arithmetic´´ operations can also be implemented with little additional hardware. The mechanism is bit-serial, word parallel, so that search time is proportional to the number of bits actively compared, but independent of the number of comparands or data items. At each bit position to be compared, the set of data/comparand pairs is partitioned into four cases, corresponding to the four possible combinations of bit values. Each case is processed separately, one after another, but with all similar items being processed in parallel for each case. Each of the different comparison criteria defines a function, which in turn specifies how to modify the search results at each step. A table of function definitions is provided, listing most useful searches.