transactions on content-addressable and associative … · of content-addressable memories...

13
IEEE TRANSACTIONS ON ELECTRONIC COMPUTERS, VOL. EC-15, NO. 4, AUGUST, 1966 509 Content-Addressable and Associative Memory Systems A SURVE:Y A. G. HANLON Abstract-This review of content-addressable memory and as- A. Purpose of This Study sociative computer systems represents an attempt to consolidate and report nontechnically the direction in which numerous independent The primary purpose of this study is to provide in- research programs have progressed during the last ten years. The formation bases on which recommendations can be made paper reflects the views of a myriad of researchers on subjects of concerning future efforts in this area. A survey of the organization (configuration concepts), hardware elements, logical literature in the field, as indicated by the voluminous operations, speed, cost, size, software implications, applications, bibliography, provided useful data on hardware, soft- advantages and disadvantages. In a report of this type it is important warappliction,dad usepts on ardware exf to quote directly and indirectly from the researchers themselves, ware, applications, and concepts which are to some ex- so that the trends or directions of their concepts may converge into tent summarized in the following pages. Direct and in- meaningful information. Acknowledgement is made to those quoted direct quotations of the authors are used liberally in (see bibliography references) since they represent the meat of this order to preserve accuracy in the reporting. Comprehen- survey. The bibliography, although voluminous, is not necessarily complete. A number of reference sources may have been overlooked usie te investiatos of the ressing lements inadvertently. It is hoped, however, that the information and the used are left to the resources of the research laboratory. bibliography will serve as a base for those entering into research connected with this rapidly developing concept. II. CONFIGURATION CONCEPTS I. INTRODUCTION Three concepts are emerging from current work in the A SSOCIATIVE memories have been generally de- field: scribed as a collection or assemblage of ele- 1) a content-addressable memory, which is used as ments having data storage capabilities, and an extension of a conventionally organized mem- which are accessed simultaneously and in parallel on ory, for the performance of a variety of logical the basis of data content rather than by specific address search and match operations; or location. 2) a content-addressable memory, large enough to A memory, which in one word time finds a matching act as a special purpose primary data storage and segment and reads the remainder of the word, has been retrieval device; and, called by one of these names: Catalog Memory, Associ- 3) an "associative" processor, containing a content- ative Memory, Content-Addressed Memory (CAM), addressable memory with cells capable of arith- and Data Addressed Memory (DAM). As yet, there has metic and associative logic in addition to the been no one standard name designated [2]. search and decision logic. The adjective "associative," when applied to mem- In all these arrangements, the memories are "word- ornes or computers, was probably derived from theories n . r concerning operations of the cells of the brain. The term organized" for reading and writing operations. How- is more applicable to the function of recall by associa- they may difr i n the organization in that tino ideas Crrety whe aple to copue hrd they are fixed or variable. In the former case, a fixed tionofideas Corretly, when applied to c r h - portion of the word is set aside for interrogation and all ware, the meaning of "associative" refers specifically to of that portion must be used for an interrogation. A interrelationships between data, and not to the storage mechanism. Storage mechanisms are organized spe- . cifically to assist in performing the functions of data any of which can be used as the interrogated portion. All the bits in the interrogated segment must be used in association. It seems more appropriate to call storage thinergio.Tevialtyemyaeafxd elements organized in this fashion content-addressable semn,btayprofhisgetmybener- memories (CAM).sget u n ato hi emn a eitro * ~~~~~~~~~gated. The fully interrogable memory allows any choice Manuscript received May 2, 1966. of bits in the word to be used in the interrogation, and The author is with the Research & Advanced Development De- the remainder of the word to be read. This is the mot pany, Hawthorne, Calif. general form of the content-addressable memory [1]. It

Upload: others

Post on 22-Mar-2020

17 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: TRANSACTIONS ON Content-Addressable and Associative … · of content-addressable memories (CAM's)withinagen-eral purposecomputingsystem. In the processof work- Except for "associative

IEEE TRANSACTIONS ON ELECTRONIC COMPUTERS, VOL. EC-15, NO. 4, AUGUST, 1966 509

Content-Addressable and AssociativeMemory SystemsA SURVE:Y

A. G. HANLON

Abstract-This review of content-addressable memory and as- A. Purpose of This Studysociative computer systems represents an attempt to consolidate andreport nontechnically the direction in which numerous independent The primary purpose of this study is to provide in-research programs have progressed during the last ten years. The formation bases on which recommendations can be madepaper reflects the views of a myriad of researchers on subjects of concerning future efforts in this area. A survey of theorganization (configuration concepts), hardware elements, logical literature in the field, as indicated by the voluminousoperations, speed, cost, size, software implications, applications, bibliography, provided useful data on hardware, soft-advantages and disadvantages. In a report of this type it is important warappliction,dad usepts on ardware exfto quote directly and indirectly from the researchers themselves, ware, applications, and concepts which are to some ex-so that the trends or directions of their concepts may converge into tent summarized in the following pages. Direct and in-meaningful information. Acknowledgement is made to those quoted direct quotations of the authors are used liberally in(see bibliography references) since they represent the meat of this order to preserve accuracy in the reporting. Comprehen-survey. The bibliography, although voluminous, is not necessarilycomplete. A number of reference sources may have been overlooked usie te investiatos of the ressinglementsinadvertently. It is hoped, however, that the information and the used are left to the resources of the research laboratory.bibliography will serve as a base for those entering into researchconnected with this rapidly developing concept. II. CONFIGURATION CONCEPTS

I. INTRODUCTION Three concepts are emerging from current work in theA SSOCIATIVE memories have been generally de- field:

scribed as a collection or assemblage of ele- 1) a content-addressable memory, which is used asments having data storage capabilities, and an extension of a conventionally organized mem-

which are accessed simultaneously and in parallel on ory, for the performance of a variety of logicalthe basis of data content rather than by specific address search and match operations;or location. 2) a content-addressable memory, large enough toA memory, which in one word time finds a matching act as a special purpose primary data storage and

segment and reads the remainder of the word, has been retrieval device; and,called by one of these names: Catalog Memory, Associ- 3) an "associative" processor, containing a content-ative Memory, Content-Addressed Memory (CAM), addressable memory with cells capable of arith-and Data Addressed Memory (DAM). As yet, there has metic and associative logic in addition to thebeen no one standard name designated [2]. search and decision logic.The adjective "associative," when applied to mem- In all these arrangements, the memories are "word-

ornes or computers, was probably derived from theories n .rconcerning operations of the cells of the brain. The term organized" for reading and writing operations. How-

is more applicable to the function of recall by associa- they maydifr i n the organization in thattino ideas Crrety whe aple to copue hrd they are fixed or variable. In the former case, a fixedtionofideasCorretly, when applied to c r h -

portion of the word is set aside for interrogation and allware, the meaning of "associative" refers specifically to of that portion must be used for an interrogation. Ainterrelationships between data, and not to the storagemechanism. Storage mechanisms are organized spe- .cifically to assist in performing the functions of data any of which can be used as the interrogated portion.

All the bits in the interrogated segment must be used inassociation. It seems more appropriate to call storage thinergio.Tevialtyemyaeafxdelements organized in this fashion content-addressable semn,btayprofhisgetmybener-memories (CAM).sget u n ato hi emn a eitro* ~~~~~~~~~gated.The fully interrogable memory allows any choice

Manuscript received May 2, 1966. of bits in the word to be used in the interrogation, andThe author is with the Research & Advanced Development De- the remainder of the word to be read. This is the motpany, Hawthorne, Calif. general form of the content-addressable memory [1]. It

Page 2: TRANSACTIONS ON Content-Addressable and Associative … · of content-addressable memories (CAM's)withinagen-eral purposecomputingsystem. In the processof work- Except for "associative

510 IEEE TRANSACTIONS ON ELECTRONIC COMPUTERS AUGUST

is common practice to divide the "word" into tag and housekeeping routines. Content-addressability of mem-data portions in order that those words meeting the ories would tend to ease the tasks of the programmer insearch criteria may be marked for subsequent opera- this respect.tions. It is conceivable that the minimization and elimina-

tion of progam housekeeping routines could significantly

A. Auxiliary CAM reduce operating time, particularly where the routinesare required to be called in from the slower operating

Content-addressable memories have been proposed as input-output devices. The reduction of operating timeadjuncts to conventional systems. Davies [18] sug- and the saving of software effort would appear to moregests that a set of keys can be stored in a small associa- than justify the extra cost required to logically connecttive memory. Records stored in main memory can be the auxiliary CAM to the conventional system.checked serially but simultaneously against a numberof keys for match. Fuller [30] investigated the utility B. CAM as Primary Storageof content-addressable memories (CAM's) within a gen-eral purpose computing system. In the process of work- Except for "associative processors," which are dis-ing toward this objective, the CAM organization was cussed in Section II-C, much of the effort in designingconstrained to remain a special purpose memory and content-addressable memories has been directed towardwas not given the extra hardware required to do more special purpose applications. Foremost among these ispowerful external arithmetic and logical operations. It information retrieval, which for the most part does notis assumed that CAM exists as a subsystem for a con- require arithmetic operations other than counting.trolling computer which can present instructions and These special memories are used mainly for retrieval ofkey words to CAM, call for data transfers between its filed information by means of matching operations usinginternal memory and CAM, and execute various tests such criteria as Equal To, Greater Than, Greater Thanof CAM. In this context the controlling computer pro- Or Equal To, Between Specified Limits, Next Highest,vides hierarchies of conventional memory, high speed Next Lowest, Highest In Memory, Lowest In Memory,arithmetic and logical capability, and flexible input- and their inverses.output facilities, making use of the CAM system in an Ahrons [1], [2], Barnard, et al. [6], Falkoff [25],associative mode only where it provides advantages over Kiseda, et al. [37], Lee [62], [63], McDermid andconventional facilities. Petersen [75], and others concentrated on designingEwing and Davies [24] considered two approaches in memories from particular elements to accomplish the

their design of an associative system, one of which added logical operations stated above. Their efforts were morean associative memory to a more or less conventional in determining-the feasibility of operation of content-computer. The alternative approach involved a new addressable memories for the special purpose, ratherorganization, developed around the principle of mem- than the general purpose application.ory distributed logic. The former approach provides arandom access memory for program storage and a bit C. The Associative Processorserial associative memory for data storage and parallel There is a natural dissatisfaction inherent with com-processing. In the organization considered, the random puters that are limited by special purpose applications.access memory contained 4000 twenty-four bit words, Consequently there is a normal evolutionary trend toand the associative memory contained 500 ninety-six establish general purpose designs. A number of design-bit words. ers are contemplating content-addressable memoriesKaplan [54] presents a system design for a search which are fully associative (i.e., each cell is "associated"

memory subsystem to a general-purpose computer. The with its neighboring cells) and also capable of perform-structure postulated consists of a main computer mem- ing arithmetic operations. Notable among these are theory which communicates via a memory register with the Solomon Computer (Slotnick, et al.) [115], the Orthog-search memory subsystem. onal Computer (Shooman) [30], the Spatial Computer

Nissim [85] is a proponent of content-addressable (Unger) [119], [120], the Pattern Recognition Com-"scratchpad" memories used in conjunction with larger puter (McCormick, et al.) [30], and the Holland Ma-slower memories of the conventional type. In this way, chine (Holland) [44], [451. These cellular or distributedhe suggests, there is an apparent overall increase in logic computers [30] are capable of handling the usualmemory effectiveness. arithmetic operations, Logical AND, Logical OR, Shift,

It is clear that much interest has been generated to- Expand, and others. Fuller [30] concludes that cellularward the minimization or total elimination of many of or distributed logic computers have not gained signifi-the burdensome bookkeeping operations connected with cant acceptance to date for at least two reasons. Thethe use of conventionally organized memories. A major cost of such structures is high and their recognized rangeshare of computer software effort is involved with these of application is small.

Page 3: TRANSACTIONS ON Content-Addressable and Associative … · of content-addressable memories (CAM's)withinagen-eral purposecomputingsystem. In the processof work- Except for "associative

1966 HANLON: MEMORY SYSTEMS SURVEY 511

III. HARDWARE ELEMENTS the state-of-the-art of content-addressable memories at

Early work in content-addressable memories was ac- an increasingly greater rate.celerated by cryogenic or superconductive develop- Other elements being investigated for content-ad-ments. As early as 1956, Slade and McMahon [110] dressable memories are variously described as:published a paper describing a catalog memory using Tunnel Diodes [301, [85]cryotron elements. This work was expanded by Slade Evaporated Organic Diode Arrays [68]and Smallman in subsequent reports [111]-[114]. Magnetic Cores [30], [49], [57], [75], [125]Crowe [17] built and tested a memory cell based on Plated Wire [24], [30]trapped flux in superconductors and reported the results Thin Permalloy Film on Copper Wire [30]in 1957. The development stages behind the effective Semiconductors [65]application of the superconductive phenomenon are Transfluxors [70]traced by Ahrons and Burns [2 ] in their review of super- Biax Cores [73]conductive memories. Laminated Ferrites [124]

Although it has been generally conceded that cryo- Magnetic Films [95]genic elements could be economically mass produced, Solenoid Arrays [88]it is also agreed that the cost of refrigeration needed is BICORE Thin Film Sandwiches [30]prohibitive. In addition, the problems associated with Multi-Aperture Logic Elements [118].maintenance of refrigerated elements caused some ap- Fuller [30] discusses in detail CAM systems usingprehension.Fulr[0dicseindtiCA syem uig

Partially because of these reasons, others began to tunnel diodes, ferrite ring cores, thin Permalloy films,direthir beffrsetow these.o oncryogen co and crossed-film cryotrons. Critical properties con-direct their efforts toward the use Of noncryogenic com-siedinytmscsruedfotheeletsa:ponents. This latter effort appears to be rapidly pyra-miding due to recent developments in thin films and a) energy required to set an elementintegrated circuits. The construction of content-addres- b) energy which may be extracted from an element bysable cells from combinations of these new elements ap- nondestructive readout (NDRO)pears more economically feasible than those with cryo- c) ratio of NDRO signal for a stored "1" to NDROgenic elements. signal for a stored "0" (signal-to-noise ratio)

Ittner [50] argues that it has not been possible to d) switching time of a memory elementshow that cryogenic circuits possess, on balance, any e) transmission characteristics for drive and sensefunctional advantages over circuits realizable in com- lines which link many memory elements.petitive technologies. The cryotronic technology, whilepossessing a number of special features, is functionally The first two properties determine the gain required of

equivalent to a number of existing technologies and peripheral circuitry, hence its speed and complexity.must, therefore, be evaluated basically in terms of the The SNR determines the number of bits in each wordfunction it can provide for a given cost. which may be interrogated simultaneously. All proper-

Maguire [71], in his review of work on superconduc- ties influence execution time for commands.tive memories in late 1961 stated that the following ex- I L OPERATIONSpectations were shown:

a) all-superconductive computers will emerge from A. Memory Element Operationthe laboratory into the marketplace within 10 The basic storage element of the content-addressableyears; memory has the property that it may be read into, writ-

b) high-capacity thin-film cryotron memories will ten into and compared with external information. In theprovide the engineering wedge, but a minimum of majority of designs it also has a characteristic of being105 to 107elements must be successfully assembled organized with other memory elements, such thatto justify the refrigeration cost; matching operations are carried on in a bit-serial word-

c) superconductivity, "the ideal computing tech- parallel fashion. That is, the first bit of each word isnique,"is still in the researchsta , but ilooked at simultaneously for match, then the secondnique," is stilin the.researchstage,bt bit, etc., until the entire memory is scanned. If only anforge ahead of competing high-capacity, high-speed

appoaces nte onghau beaus te dffiultesexact match iS desired, the operation can be entirelyaprace in th loghu,eastedfiute parallel and simultaneous for all bits of all words.of btchfabrcaton ave eenmetheadon rom However, in order to introduce sorting techniques, it is

thebegtnnlng. ~~~~~desirable to scan bit by bit from the high order bitAlthough work continues in the cryogenic medium an position of each word to determine the proper sequence

increasing awareness is becoming evident that non- of reading out of data.cryogenic devices may provide the means for advancing Most designs utilize a two component per bit type of

Page 4: TRANSACTIONS ON Content-Addressable and Associative … · of content-addressable memories (CAM's)withinagen-eral purposecomputingsystem. In the processof work- Except for "associative

512 IEEE TRANSACTIONS ON ELECTRONIC COMPUTERS AUGUST

operation in order to locate data stored anywhere in a provide unipolar mismatch and nulled-match outputs.content-addressable memory. There must be a means Aside from requiring extra elements, these techniquesfor performing a nondestructive comparison of the inevitably depend upon the ability to cancel outputsassociative criterion with every word in memory; this from many pairs and, therefore, require very strictmust be coupled with a means for identifying a match- control of film output uniformity [95].ing word; and finally, there must be a means of access to The store is thus organized in two parts, one contain-the matching word location to provide a subsequent ing information in true form, the other in complementreadout [57]. Normally, the associative criterion con- form. The search register which holds the key for thesists of the data portion and the mask portion. The data search controls the bit drivers. A "0" in the searchportion is the known segment of the word being looked register drives the true side of the memory, a "1' drivesfor. The mask portion represents those bit positions in the complement side.the word which should be ignored during the search. The output of the cryotron catalog memory of SladeThe logic performed at the cell is both binary and and Smallman [114] is a yes or no answer as to the com-

ternary, such that comparison can be carried on in addi- parison. All bits of the memory are interrogated intion to storage. The interrogate signal has three states: parallel with either a positive or negative current and1, 0, 4 (don't care). This latter signal is utilized for per- these interrogate currents either add to or subtract fromforming the masking operation. the persistent current in the memory cells. When theMcDermid and Petersen [75] clearly illustrate the interrogate current and the persistent current are addi-

memory cell operation, as shown in Fig. 1. tive, their combined magnetic field is sufficient to causeThus, for conditions of mismatch between stored and the corresponding gate in the gate network to become

interrogating information a large signal is generated. resistive. If the interrogate currents match all of theThe role of the detector is to register only the first large persistent currents for one word of the memory, thensignal regardless of polarity and to be insensitive to the all of the gates in that word become resistive and a volt-small output signals. In this system interrogation is age will appear at the memory output terminals. Unlessdone parallel by word, serial by bit; i.e., the bit planes there is an exact comparison there will always be atare pulsed in time sequence. least one superconducting path through the memoryThe usual technique for achieving the required out- and there will be no voltage output.

puts is to use a pair of elements or even two pairs to

B. Compare Operations

DETECTOR The following comparison operations have been con-ELEMENT C A j INTERROGATION sidered for content-addressable memories:

v___STORED BITS BITS Equal Not EqualSTORED BITS Less Than Greater Than

Less Than Or Equal Greater Than Or EqualMaximum Value Minimum Value

o Between Limits Not Between Limits-0 0 < Next Higher Next LowerU ~~~~~~Similarity

/|_ || OBy use of the masking technique, the similarity opera-O I_____1JRL tion is used to search for words which have some part,

i > ~ 41 gL 4 but not all parts in common with each other.

C. Input-Output

X DON'T The possibility of occurrence of multiple responses toCARE a search makes it necessary to provide some method of

tagging words for subsequent retrieval. Storing of data_ also requires some means of finding "empty" locations

Stored Signal Interrogation Signal Output Signal or"vial"mmr cells0 o small negative Tagging implies additional operations such as tag1 0 ~~~~~large negative writing, tag clearing, tag complementing, and tag copy-

1 1 small positiv;, ing. The search operation is relatively basic; what to do0 1 largle positive with the data when it is found may add considerably to

Fig. 1. the complexity of the design.

Page 5: TRANSACTIONS ON Content-Addressable and Associative … · of content-addressable memories (CAM's)withinagen-eral purposecomputingsystem. In the processof work- Except for "associative

1966 HANLON: MEMORY SYSTEMS SURVEY 513

V. SPEED, COST, AND SIZE structed of tunnel diodes, ferrite ring cores, thin Per-

A. Speed malloy film plated on copper wire, and cryotrons, rangefrom 70 to over 700 nanoseconds for various operations.

On the average, a search for a word in a random ac- The cryogenic memory is indicated as the fastest forcess memory would consume the time required to scan searching, but slightly slower for other operations thanand compare one-half the memory. As memories be- the memory constructed with thin Permalloy film ele-come larger, this time requirement becomes excessive ments [23], [301. For most operations the thin Per-and, therefore, this scanning procedure has limited use malloy film content-addressable memory appears to be[2]. In operations such as file searching and correlation, fastest [22].if n words are stored and n correlations are needed, the Comparison of microferrites and thin films shows thatexecution time with conventional sequential processing in the near future both approaches are likely to provideis proportional to n2; in content-addressable systems, 100 nanosecond memories of several thousand wordsexecution time is proportional to n [16]. [94]. An evaluation of various core materials in the

It is widely felt that further increases in computation elastic switching mode indicated a maximum speed ofspeeds of digital computers are more likely to occur as a 100 nanoseconds per operation [49]. There is a notableresult of changes in computer organization rather than increase in speed reported in a relatively short period ofcomponent and circuit improvements, as has largely time. In 1961, search and retrieval times for an n-wordoccurred in the past [30]. The speed of the associative associative memory described by McDermid, et al. [75 ],memory is independent of the number of words, where- requiring a search on 36 bits, would be approximately 6as the speed of the random-access memory is propor- microseconds. Lussier, et al. [70] describe an applica-tional to n'12 log2 n [1]. With sequential logic and the tion of all-magnetic logic in a design of a content-high degree of parallelism coupled with the fact that a addressable memory with a total retrieval time of 10minimum of transfers will be necessary, it may be pos- microseconds, using commercially available ferrites.sible to build an ultrafast system at a reasonable cost UNIVAC has a thin-film 300 nanosecond search mem-[9]. ory constructed with BICORE elements. Basic switch-Information may be retrieved at a rate which is ing time of the BICORE is said to be about 6 nano-

largely independent of the amount of information pres- seconds. Access time for all bits ranges down to 100ent in the memory [63]. Lewin's series-parallel readout nanoseconds. The memory is considered to have the po-method (with two sense outputs for each digit of the tential to do a complete search in 100 nanoseconds;word) requires only 2w -1 cycles for complete readout that is, it could compare one million incoming dataof w words with the same initial interrogation segment words with all the stored key words in 0.1 second [15],[67]. Lewin's method may be modified to one sense out- [124].put per digit if the sense can determine a match either Kaplan [54] postulated a structure with a searchbetween l's or 0's. This method requires 2(2w-1) memory subsystem that executed a 36-bit equalitycycles [1]. Miller [77] describes an interrogation rou- search in 8.0 microseconds. A very complex six-field,tine which retrieves k multiple responses in, at best, six-bits-per-field quantitative search required 16.0(k +1) memory cycles, and, at worst, (2k -1) memory microseconds and an average search 12.0 microseconds.cycles. This compares with Lewin's method which al- The time required to execute a search is a function of theways requires (2k-1) memory cycles. number of bits searched, the mode of search, and the

In 1956, it was calculated that a cryotron memory number of fields. Total search time is 0.1 microsecondcould be interrogated every 10 microseconds and a new per bit for equality, greater than or less than, plus 1.1word written in about 500 microseconds [110]. In microseconds per bit searched for next higher or nextDavies [18] superconductive memory organization, the lower, plus 1.0 microsecond per field searched (exceptspeed of the cross-film cryotron circuit is intimately first field), plus 4.0 microseconds to get to the next in-associated with the gain of the cryotron (approximately struction. (Operation times were quoted for UNIVAC300 nanoseconds for the configuration and parameters BICORE elements.)given in his example). Newhouse, et al. [81], estimates A transfluxor memory achieved cycle times of 3.0the feasibility of a 300 000 bit memory with a 50 micro- microseconds for write and 10 microseconds for inter-second comparison cycle time. rogate and readout [96]. The Goodyear MALE (multi-

In 1961, Maguire [711 reported that a bit organized aperture logic element) memory required 2.5 micro-memory driven by cryotrons and designed for speed seconds for the read and compare operation and 5.0was in the research stage at IBM. Using alloy film gates, microseconds for the write operation [118]. Nissim [85]with an insulation thickness of 5000 A, calculations in- states that tunnel diodes appear to offer the best prac-dicated a loop time of 1 nanosecond, thereby projecting tical approach to random-access scratchpad memories,a memory cycle time of 10-20 nanoseconds. with cycle times in the 10-100 nanosecond range. ACommand execution times for various memories con- 16 384 20-bit word solenoid array memory described by

Page 6: TRANSACTIONS ON Content-Addressable and Associative … · of content-addressable memories (CAM's)withinagen-eral purposecomputingsystem. In the processof work- Except for "associative

514 IEEE TRANSACTIONS ON ELECTRONIC COMPUTERS AUGUST

Pick [88] has an access time of 0.7 microsecond and ducting, insulating, and magnetic thin films to formits cycle is below 2 microseconds. This memory utilizes intricate multilayered patterns. It is hoped that thesean associative technique to allow addressing of any of techniques will allow economic fabrication of a complexits 1024 sixteen word data-containing sheets. network of identical molecules [30].A few words should be said relative to the fully asso- Feldman [26] implies that software associative pro-

ciative processors. The SOLOMON Computer [115] cessing is much cheaper than specially built hardware, isindicates a speed gain of from 60-200 over large scale more flexible, and is virtually unlimited in size. How-conventional computers, depending on the amount of ever, Prywes et al. [93] consider the content-address-parallelism inherent in the problem. A speed gain of able memory a necessity for multilist processing tech-33-660 relative to conventional computers with equiv- niques.alent memory cycle times is reported for the Orthog- Speed is inherently expensive. Cells constructed in aonal Computer [30]. Barnard, et al. [6] reports the model described by Lee [66] cost $3.80 for total com-following cycle times (in microseconds) for operation of ponents. Logically equivalent, but slower circuits witha cryogenic associative processor with 5000 72-bit large matrices (at 300 kc/s rates) could be constructedwords: at $1.55. The future cost picture looks promising. High-

Write 3.0 capacity thin-film cryotron memories may provide theCompare and Read lst Word' 0 85+k engineering wedge, but a minimum of 105 to 107 ele-

Compare 2.5 ments must be successfully assembled to justify theSelective write (after tagging) 3.2 refrigeration cost [71]. Magnetic random-access mem-Greater Than Average2 1 . 4B ±ReadLess Than Worst 2. 8B +Read ornes have the cost advantage for small capacities andBetween Limits Average 2. 8B +Read superconductive memories appear to have the cost ad-Between Limits Worst 5. 6B +ReadNext Higher (Lower) Average 5.0+2k+Read vantage for very large capacities. The crossover pointNext Higher (Lower) Worst (7.0+k)B+Read has been estimated in the 106 bit magnitude. This esti-

Feldman [26] discusses an efficient way of simulating mate includes refrigeration [2].an associative processor on conventional computers. An associative system where the memory, arithmetic,(The TX-2 at the M.I.T. Lincoln Laboratory was used program, and instruction decoding and modificationas the vehicle for the simulator.) He states that the functions are all contained within the main store, maytimes of the simulator are sufficiently small to raise be highly economical because of the mass-fabrication ofquestions about competing with hardware techniques, cryotrons. Hundreds or thousands of active devices areand that it should be feasible to build a system which made at once, together with their interconnections on aloses a factor of about two in storage and three-to-five single substrate [9].in time against an associative memory of the same basic The SOLOMON Computer with 1024 elements isspeed. The implication here is that it is debatable estimated at $5 000 000 [3]. The Holland Machinewhether it will pay to build hardware associative mem- should be significantly more expensive, because of moreories for general purpose use. complex local control, for an equivalent number ofAt any rate, for problems allowing unordered data processing elements [44], [45].

sets, the content-addressable memory achieves the ad- The solenoid array described by Pick [88] has a bitvantages of list storage with a significant speed gain. cost ranging from a half a cent per bit for large mem-

In summary, with respect to speed, two approaches ories to a few cents per bit for relatively small ones.are at the forefront; microferrites of a drastically re- Nissim [85] compares (in 1963) the cost of tunnel diodeduced element size, and thin magnetic films deposited by vs. core associative memories:vacuum evaporation or electrodeposition. According torecent publications they are comparable in speed at- Size Speed Costtained to date. It also appears that the use of noncryo- Megabit (tunnel diode) 10 nanosecond $5-10/bit

Megabit (core) .1-5 microsecond 10-250/bitgenic elements will eliminate the necessity for costlyrefrigeration systems.

Although the sources quoted appear to give greaterB. Cost weighting to the potential of the cryogenic mass mem-

The major drawback to development of content- ory, the promises of low cost noncryogenic elementsaddressable memories.is th lac of a s asi. should not be discounted, especially considering thetive~~~~~~~celinapatcltcnlg ta cetbepie mprovements in fabrication and the current rate of in-

Interest in this type of organization has been height- vention.ened by recent advances in batch fabrication techniques C. SiSzeinvolving deposition and etching of metallic semicon- It is difcl todvretesz.o eoyfo h

1k =Switching time of small ladder estimatedat4-5 microseconds.cotfthelmnsudinheaeby.Aeqly'B=Number of bits in field of interest, important aspect, however, is the limitation imposed

Page 7: TRANSACTIONS ON Content-Addressable and Associative … · of content-addressable memories (CAM's)withinagen-eral purposecomputingsystem. In the processof work- Except for "associative

1966 HANLON: MEMORY SYSTEMS SURVEY 515

technically. One of the most important limitations to to-noise ratio and is dependent on the means used forthe size of a memory is the half-select noise which ap- match detection [96].pears in the sense. If this half-select noise is dependent The numbers of elements used in connection withon the "1" or "0" stored information in the half-selected providing the logic for the content-addressable memorycells, it cannot be eliminated by balancing techniques cells is high. The IBM research 256-bit cryotron mem-and thus with greater memory size eventually half- ory requires 2435 cryotrons plus 1118 for reset, or 3553selects overcome the possibility of detecting a sense in all [71]. Unger's SPAC (SPAtial Computer) [119],signal [2]. [120] was a simulated array of 36X36 modules. AThe word capacity of associative memories is re- module consists of some logical circuitry, a 1-bit prin-

stricted primarily by the interrogation drive problems. cipal register, and a set of nine 1-bit memory registers.It is reasonable to conclude that with optimization of Each module required 170 gate inputs including linkcomponents and distributed drive techniques, larger circuitry. The Pattern Recognition Computer [30] con-associative memories (for example, 4000 wordsX72 sisted of 1024 stalactites (elements). The hardware perbits), operating at a 10 Mc/s search rate can be de- stalactite was 49 transistors, 230 diodes, 54 capacitors,veloped [57]. Results of research by McDermid, et al. and 248 resistors. The Holland Machine [44], [45] had[75] indicate that word lengths up to 36 bits with a n+14 memory elements for each word length "n" forpassive detector are feasible; however, word lengths of each processing module. Several hundred gate inputs1000 bits are technically achievable with an active ele- would be required for each module. The SOLOMONment as the detector. Memory capacities of several Computer [115] postulated a 32 X 32 matrix of process-hundred words appear technically feasible with a single ing elements (1024 cells). Processing element hardwareinterrogation driver; for larger sizes, parallel operation is estimated at 6 memory elements, 200 gate inputs, 2may be required. Hunt et al. [49] estimated in 1964 that write, and 2 sense amplifiers.a memory of 1000 words with lengths up to 100 bits The MIRF (Multiple Instantaneous Response File)would be achievable with a single set of peripheral cir- system designed for Rome Air Development Centercuitry. has a design capacity of 3000 words. About 300 current

Bit densities of 1000 bits per square inch have been drive transistors, 2500 logic transistors, 2500 printedsuccessfully operated. The superconductive memory ap- gates (6 resistors, 2 capacitors, and interconnectingpears attractive not only for random access memories, wiring on a passive substrate), and 5000 diodes are usedbut also for associative memories [2]. A gradual in- in the system.crease in storage capacity, beyond today's few million Auxiliary subsystems include a 500 96-bit word mem-bits, may result from batch fabrication of magnetics, ory considered by Ewing and Davies [24] as auxiliarybut a significant increase requires methods of batch to a 4000 24-bit word random access memory, andfabricating both the magnetic and the associated semi- Kaplan's search memory [54] containing 4096 words ofconductor devices. Capacities of hundred millions or 72 bits each. In the latter, searches were carried out onbillions of bits are likely to be attained sooner by super- 36 bits, with the remaining 36 bits entered into the ac-conductive techniques [94]. cumulator on a match condition.

It is estimated that high speed associative memoriescommence being generally attractive at about 107-108 VI. SOFTWARE IMPLICATIONSbits. Presently most advanced random-access memories The existing literature on programming an associa-are in the 106-107 bit range [1]. Rajchman's memory tive processor is mainly concerned with special applica-survey, in 1963 [94], indicated that the largest memory tions and is at the machine language level.in use has a capacity of two million bits, and the fastest Two observations may be made in regard to random-a cycle time of 375 nanoseconds. access memories.RCA's superconductive continuous sheet memory ap- a) A large percentage of programming time and ef-

pears to show promise for large capacity random-access fort is usually spent in assigning and keepingmemories in the 107 or near 107-bit range . . . and poten- track of addresses, andtial for the 109 bit size. Further in the future is the pos- b) in so far as is known, the human memory allowssibility of developing the "long-sought-after" content- . . . . .

address~. meor lag caaiis[]nformation to be retrieved by an associativead360e000 bitory solargenoacidtem hasbeen2builtwi process without regard to physical location of in-A 3160 000 hit solenoid memorv has he-en huilt with

about 100 planes. The signal degradation in increasing frainthe number of planes from a few to a hundred was minor Thus, the conventional technique of requiring an[88]. The performance of small transfiuxor arrays indi- address for each physical word location may be neithercates that capacities of 2000 words and 48 bits are the most natural nor the most convenient [1].feasible. The number of words is limited by the maxi- The notion of addressing by contents enables us tomum back voltage during interrogation (70 volts for avoid the artificialities of location assignments and2000 words); the number of bits is limited by the signal- frees us to a large extent from such local considerations

Page 8: TRANSACTIONS ON Content-Addressable and Associative … · of content-addressable memories (CAM's)withinagen-eral purposecomputingsystem. In the processof work- Except for "associative

516 IEEE TRANSACTIONS ON ELECTRONIC COMPUTERS AUGUST

as scanning, searching and counting [63]. The ability to of the instruction directly specifies some control func-address data in a content-addressable memory by cell tion, so that numerous associative instructions can becontent rather than cell location suggests its use in microprogrammed by the appropriate selection of fieldsproblems for which list-organized memories have been [241.found convenient. These problems include game play- Instructions for content-addressable systems maying, theorem proving, compiling, scheduling, and real look quite different from those used in conventionaltime control. List organized memories, like content- systems. Various tagging operations may be accom-addressable memories, allow dynamic storage allocation, plished by varying bits in a single TAG instruction,but differ from content-addressable memories in that which essentially acts like a macro order. The instruc-data within a list structure is inherently ordered with tion 'RETRIEVE" is a similar example resembling adefined predecessors and successors, where data sets macro instruction.within content-addressable memories are unordered The number of functions which an associative mem-[23]. ory can perform may be broadly classified in the follow-Location addressing becomes cumbersome and con- ing ways.

tent addressing efficient whena) Search Functions (exact match search; limit-type

a) data is to be addressed by several sets of reference searches, including greater than, greater than orproperties; equal to, less than, and less than or equal to); pat-

b) data elements are sparse relative to values of the tern recognition; supplementary search operationsreference property. Location addressing is often including ordered retrieval, minimum and maxi-forced to assign cells for which no data is stored; mum searches, nearest neighbor, and composite

c) data become dynamically disordered in memory searches.during processing [30]. b) Writing Functions including sequential load, ran-

In a content-addressable memory, the key may be dom load, load first empty location, write "don'tthe stored word or pattern or any number of bits se- care" bit, field alteration, and memory partition-lected from any portion of the stored word. It allows ing.data stored to be located and retrieved though their c) Associative Memory Readout Function such asphysical addresses are unknown, and without recourse address readout, data readout, multiple matchto sequential search. On recognition of a key, either the resolution, yes-no decision operations, and countwhole word or any part of it or its address may be re- of matches [73].trieved nondestructively. Only one cycle time is neededto determine if a desired word is in storage, and another Prywes, et al. [93] and Rosin [98] suggest that pro-cycle to retrieve it [161. grams can be retrieved by name rather than by loca-The associative processor suggested by Barnard, et tion, thus allowing for a greater vocabulary and ease of

al. [6] features sorting, selective writing, marking, next communication with the computer. The associativehigher, next lower, and range retrieving. Such opera- property of the memory allows the machine to be usedtions in a conventional random-access memory would so that symbolic names in source language programsrequire complex housekeeping programs for accessing need not be translated into numeric addresses. Tableand comparing the contents of each cell of memory with entries are determined by order and relative to a tag,the contents of all other cells. The selective write fea- thus these need not be contiguous. This diminishesture of the associative memory has the capability of the storage allocation problem to a very great degree.inhibiting selected bit positions from a writing operation Moreover, the corresponding pass in an assembler orand the ability to write into more than one word simul- compiler is not needed, resulting in a real saving of com-taneously. Time saving is inherent in such operations, puter time.where a minimum of internal transfers will be necessary.

In a sense the associative processor can be micro- Vprogrammed. The concepts inherent in the associative Suggested applications for which content-addressablememory have been extended in the associative com- memories and associative computers appear to be ideallyputer to perform general computation simultaneously suited are legion. They range from commercial to mili-throughout an extended periodic structure. Such an tary to scientific and may be broadly segregated intoorganization is particularly suited to the type of com- file processing or computational tasks. For the pur-putation in which the same program must be performed poses of assembling the numerous applications intoon a large number of data sets. This is characteristic of some reasonable order, they are grouped below in cate-many data processing problems and of a number of gories of File Maintenance, Pattern Recognition, Mathe-scientific calculations as well [19]. matical, Information Storage and Retrieval, Transla-The method by which associative instructions are con- tion, Military, Communication and Transportation, and

trolled constitutes one of the major factors contributing Miscellaneous. As is usually the case, some applicationsto the flexibility of the associative processor. Each field may overlap into other categories. For the purpose of

Page 9: TRANSACTIONS ON Content-Addressable and Associative … · of content-addressable memories (CAM's)withinagen-eral purposecomputingsystem. In the processof work- Except for "associative

1966 HANLON: MEMORY SYSTEMS SURVEY 517

simplicity, the applications are assigned only to one E. Translationcategory. The characteristics of content-addressable memories

A.FileMaintenance make them ideally suited for conversion of data fromA. File Maintenanceone form to another in tasks such as:

Those applications suggested for updating and pro- Language translationcessing of existing files are:

Code conversionSorting, merging, ordering, collating Translation of mnemonic operation codes to machineInventory control codes in program assembly operations.PayrollComputer software storage F. MilitaryTable look-up A number of military-oriented applications are sug-Telephone service look-up gested as likely candidates in the use of content-address-Personnel file maintenance g yDepartment store customers' files abstems:Automatic mail sorting Radar-track correlationToll ticket reading Processing sonar returnsScheduling Military intelligence analysisCompiling. Real-time vehicle surveillance (satellites)

Undersea target identificationB. Pattern Recognition PhotoreconnaisanceThose applications suggested that are akin to ma- Command and control

chine recognition techniques are: Armament deploymentTactical battle condition determination

Pattern recognition for molecular and biological struc- Symptom-cure checkout of orbital systemsture analysis Guidance and control

Photographic analysis Radar-data processing.Character recognition.

C. Mathematical System SolutionG. Communication and Transportation

Air traffic controlApplications suggested in connection with scientific Real-time control.

calculation are:

Game playing * F. MiscellaneousTheorem proving A number of special purpose and miscellaneous ap-Function optimization plications are suggested as follows:Solution of elliptic partial differential equations Numerical weather forecastingDetermination of critical paths through a graph Nuclear reactor calculationsInterpolation Nuclear particle track analysisSolution of linear equationsCalculations of inverses and eigenvalues of matrices Data correlationStatistical data analysisCorrelation and autocorrelation Real time applicationsNumerical solution of systems of ordinary and partial Rialimellgence

differential equations Artificial intelligenceOrbital track calculation Parallel processing

Hydrdynmic Data reductionHydrodynamics Medical diagnostic tables.Heat flowDiffusion. All of the applications listed above above were sug-

D. Information Storage and Retrieval gested by those persons actively engaged in either theo-retical or actual research in the area of content-

Of all the applications suggested, the foremost is con- addressable or associative systems. Except in the casecerned with some phase of information storage and re- Of information storage and retrieval and some algorithmstrieval. This includes the following functions: formulated for solution of some mathematical systems,Data retrieval, including cross retrieval, erasing, gap the superiority of the content-addressable memory or

closing and preference associative processor is only implied, not proved. ThereCataloging is, however, sufficient reason to believe that enoughLibrary and catalog search files applications can be found to justify such organizations,Document retrieval even if only as auxiliary hardware to conventional sys-Technical information file maintenance. tems.

Page 10: TRANSACTIONS ON Content-Addressable and Associative … · of content-addressable memories (CAM's)withinagen-eral purposecomputingsystem. In the processof work- Except for "associative

518 IEEE TRANSACTIONS ON ELECTRONIC COMPUTERS AUGUST

VIII. ADVANTAGES AND DISADVANTAGES The complexity in the memory logic diminishes theA. Advantages need for some of the complexity in the control circuits,

hence, fewer different masks are needed when prepar-The major advantages that content-addressable sys- ing circuitry. The ability to disable a cell by tagging

tems appear to offer are in speed and particular cell it with a disable bit scheme decreases the problem oforganization which lends itself to batch fabrication of maintainability [98].fault tolerant structures. Numerous statements have been made as to the ad-The recognition technique permits the content-ad- vantages of the cryotron as a device to be used for con-

dressable memory to compare the data in search regis- tent-addressable and associative systems. A major ad-ters with every word stored in one memory cycle. It vantage of cryotron elements is that storage of digitaldoes the equivalent of the many thousands of load and information may be accomplished by the use of per-compare operations that would be required with a con- sistent supercurrents. Since the resistance of an elementventional organization in such operations as sorting, inthesuperstateisidenticallyzero,onemaythenstorefile searching, and correlation [16]. a circulating loop of current without any loss due to

Considerable processing time is saved because: dissipation of energy by resistance. Another stated ad-

a) it is not necessary to store data in sorted order; vantage of the cryotron element is its combined sim-b) lookups can be made on the basis of different keys plicity and versatility as a logical element, and the ease

at different times over the same data; with which complicated logical functions can be syn-c) records need to be stored only once; thesized with its use. The elementary cryotron functionsd) addresses are not needed to store records [18]. as an element whose output is of the form "A and not

B" where A represents the possibility of current flowOrganization of random access memory into list struc- through the gate element in the absence of control cur-

tures slows problem execution due to time spent in form- rent, and B represents the presence of current in theing lists, searching lists, retrieval of data at large known control element [41].depth within a list, erasure of lists, and transfer of lists Superconductive phenomena are essentially ideal forto and from bulk storage. For problems allowing un- memory applications. Persistent supercurrents are aordered data sets the content-addressable memory natural form of storage, and sharply defined thresholdsachieves the advantages of list storage with significant between the superconductive and normal states permitspeed gain [23]. switching. Moreover, thin superconductive film tech-

In addition to parallel computing capability, other nology offers the possibility of simultaneous miniatureadvantages of the content-addressable system are as batch fabrication of storage elements, addressingfollows. switches, and all connections. The superconductive

a) Data storage and retrieval capabilities which memory can be used in a conventional semiconductor

greatly simplify or eliminate such common data computer. The drivers for the cryotrons, the sense cir-

manipulations as sorting, collating, searching, cuits, and the write and rewrite circuits are of the con-

matching, cross referencing, updating, and list ventional transistor type. Here, however, in contrast tomagnetic memories, the number of circuits increasesonly very moderately with capacity. For addressing

b) Programming simplifications based upon the pos- drivers are necessary only for the binary bits of thesibility of ignoring the placement of data in mem- address. The writing and sensing circuits need not beory and the extensive use of content addressing partitioned [94].and ordered retrieval. It is reasonable to expect that a large-scale digital

c) Periodicity of structure lends itself to integrated computer would require less than one cubic foot ofcircuit techniques and batch fabrication. Inter- cryotrons. Because of the inexpensive raw materials andconnections between components become shorter the simplicity of construction, the cost per bit is ex-and less tangled, reducing propagation delays and pected to be extremely low. Once a circuit is assembled,simplifying layout and checkout. Since the struc- it will be exposed to almost ideal environment for theture is periodic, it can be easily expanded in size. remainder of its life; an inert atmosphere at a tempera-

d) The periodic structure may permit an organiza- ture where all thermal activity has virtually ceased,tion which is tolerant of memory or circuit ele- electrically and thermally shielded from its surround-ment failures. If a cell fails, it may be possible to ings [ii0].avoid its further use with little loss to the system Ittner [5o] insists that it has not been possible tocapability. A program for an associative structure show that cryogenic circuits possess, on balance, anymakes little or no reference to a unique cell so functional advantages over circuits realizable in com-that loss of a cell would not confuse the program petitive technologies. The principal costs in the cryo-[24]. genic technology are found to lie largely in five areas,

Page 11: TRANSACTIONS ON Content-Addressable and Associative … · of content-addressable memories (CAM's)withinagen-eral purposecomputingsystem. In the processof work- Except for "associative

1966 HANLON: MEMORY SYSTEMS SURVEY 519

namely: design, mask layout and checking; mask fab- IX. SUMMARYrication; circuit deposition; packaging; and refrigera- Content-addressable memories are those in whichtion. The cryotronic technology, while possessing a data may be located by content, rather than by specificnumber of special features, is functionally equivalent, on address or location. The term "associative" in the sensebalance, to a number of existing technologies and must, of content-addressable systems refers to interrelation-therefore, be evaluated basically in terms of the func- ships between data, although this may imply a hard-tion it can provide for a given cost. ware organization in which neighboring cells are associ-

ated with each other.B. Disadvantages Three concepts emerging from current research in

A rather remarkable revelation is that the literature, the field are:which is voluminous, deals very little with disadvan- a) the content-addressable memory used as an auxil-tages of content-addressable and associative memory iary to a conventional memory;systems. One positive assertion by Fuller [30] is that b) the content-addressable memory used as a mainfloating point arithmetic is not efficient in content- memory for special purpose applications;addressable memories since it is necessary to sequen- c) the "associative" processor, with content-address-tially normalize cell contents in the process of these oper- able memory cells which have extended arith-ations. Considering the preponderance of applications metic and associative logic in addition to searchconcerned with high-level mathematical system solu- and decision logic.tion, it would appear that this may be a rather awkward Although early work in content-addressable mem-disadvantage to the mathematical scientist using a ories was accelerated by cryogenic or superconductivecontent-addressable hardware organization. techniques, noncryogenic elements appear to offer com-

Cost of refrigeration for cryotron devices and prob- parable advantages without the need for costly refriger-lems existing in batch fabrication for both cryotronic ation. Considerable investigation has been carried onand noncryotronic devices may be considered tempo- with content-addressable techniques using tunnel di-rary disadvantages. As work accelerates in this field, odes, ferrite ring cores, thin Permalloy films, crossed-cost factors will undoubtedly be drastically reduced, as film cryotrons, plated wire, Biax cores, BICORE thinthey were with conventional memories. films, and many other hardware elements.

It is difficult to say whether software needed for con- Content-addressable memories are in general orga-tent-addressable organizations will be more or less com- nized such that the "cell" is a collection of NDRO (non-plex. One can only say that it will be different from soft- destructive read-out) elements, word-organized, withware generated for today's random-access computers. some portion of the word reserved for data storage andThe removal of location addressing would inherently the remainder reserved for "tagging" operations. Opera-seem to simplify software housekeeping problems. tions are generally those of searching for matches on

Recent experiments by Holt, et al. [45a] indicate equality, less than, greater than, and variations of be-that circuit switching times observed for crossed-film tween limits.cryotrons are greater than those predicted from circuit Memory cycle times have been reported as low astime constant behavior of a simple step function cryo- 50 nanoseconds, while command execution times fortron switching model. Cryotron resistance does not ap- various memories range from 70 to over 700 nanosecondspear in subnanosecond time as soon as the control cur- for various operations. Current goals are indicated forrent reaches the value required for switching the gate operations sDeeds of 100-300 nanoseconds.normal. Switching times are explained in terms of a Memory costs have been estimated as low as $1.55model that accounts for observed cryotron switching de- per cell for very large matrices and as high as $10 perlays. The model suggests that these delays (roughly 50 bit. The outlook is for reduced hardware costs by thenanoseconds) can be largely overdriven by using as advent of new methods of fabrication. It is the con-much as 50 per cent excess control current. Even then, sensus that costs will approach today's conventionalnoticeable switching delay is to be expected for circuit memory costs in the near future.time constants much less than 100 nanoseconds, par- Although the majority of research to date has beenticularly for multistage circuits. with small memories (up to 1000 cells), projections are

According to the report, cryotron circuit behavior is indicated in the 107-101 bit range.more complex than superficial considerations indicate, Novel software developments will be needed for usethe circuit switching characteristics depend markedly of content-addressable systems. It is indicated, how-on several strongly interrelated parameters, including ever, that some of the complexity presently requiredswitching current level, driving pulse shape, interaction for conventional location addressed memories will bebetween successive stages, geometry, and operating minimized in content-addressable systems. Functionstemperature. which can be performed with extended content-address-

Page 12: TRANSACTIONS ON Content-Addressable and Associative … · of content-addressable memories (CAM's)withinagen-eral purposecomputingsystem. In the processof work- Except for "associative

520 IEEE TRANSACTIONS ON ELECTRONIC COMPUTERS AUGUST

able systems may be broadly classified into search, [27] M. J. Flynn, "Logical and functional specification of an associ-ative memory," IBM Corporation, Data Systems Div., Pough-write, and read categories. keepsie, N. Y. TROO. 852, 23 pp., February 15, 1962.

Applications suggested for content-addressable sys- [28] E. H. Frei and J. Goldberg, "A method for resolving multipleresponses in a parallel-search file," IRE Trans. on Electronictems are numerous and include all aspects of file main- Computers, vol. EC-10, pp. 718-722, December 1961.

tenance, pattern recognition, mathematical system so- [29] W. K. French, "Associative memory," U. S. Patent 3 131 291,lut'lo, infrmatin storge retreval, ransltion,

April 1964.lution, information storage and retrieval, translation, [301 R. H. Fuller, "Content-addressable memory systems," Disser.military operations, communication and transporta- Absts., vol. 24, p. 1960, 611 pp., November 1963.

[31] R. H. Fuller and G. Estrin, "Some applications for content-tion, and miscellaneous types. addressable memories," Proc. FJCC, vol. 24, pp. 495-508,Advantages of content-addressable memory organi- November 1963.[32] E. J. Gauss, "Locating the largest word in a file using a modifiedzations are increased data handling speeds, simplified memory," J. A CM, vol. 8, pp. 418-425, July 1961.

software, and an organization which lends itself to [33] H. Gelernter, J. R. Hansen, and C. L. Gerberich, "A Fortran-compiled list-processing language," J. A CM, vol. 17, pp. 87-batch fabricatlon techniques. Disadvantages are mini- 101, April 1960.mized in the literature. [34] V. E. Giuliano and P. E. Jones, "Linear associative informationretrieval," U. S. Gov. Res. Repts., vol. 38, p. 113(A), AD 290

313, March 5, 1963.APPENDIX [35] J. Goldberg and M. W. Green, "Large files for information re-trieval based on simultaneous interrogation of all items," in

BIBLIOGRAPHY Large-Capacity Memory Techniques for Computing Systems.New York: Macmillan, 1962, pp. 63-67.

[1] R. W. Ahrons, "Superconductive associative memories," RCA [36] "Collection of notes on associative memory," Goodyear Air-Rev., vol. 24, pp. 325-354, September 1963. craft Corp., Akron, Ohio, Rept. GER 10857, October 1962.

[2] R. W. Ahrons and L. L. Burns, "Superconductive memories," [37] H. J. Gray, Jr., "On the design of a multi-list informationComputer Design, vol. 3, pp. 12-19, January 1964. processing system," The Moore School of Electrical Engineer-

[3] M. Asher, 'G. E. cryogenic associative memory circuit de- ing, University of Pennsylvania, Philadelphia, supported by theveloped," Electronic News, p. 59, March 19, 1962. Office of Naval Research under Contract Nonr-551(40).

[4] J. Atkin and N. B. Marple, "Information processing by data [38] B. F. Green, "Computer languages for symbol manipulation,"interrogation," IRE Trans. on Electronic Computers, vol. EC-1 1, IRE Trans. on Electronic Computers, vol. EC-10, pp. 729-735,pp. 181-187, April 1962. December 1961.

[5] J. R. Ball, et al., "On the use of the Solomon parallel processing [39] J. E. Griffith, "An intrinsically addressed processing system,"computer," Proc. FJCC, 1962. IBM Systems J., vol. 2, pp. 182-189, September 1963.

[61 J. D. Barnard, F. A. Behnke, A. B. Lindquist, and R. R. [40] J. Griffith, "Techniques for advance information processingSeeber, "Structure of a cryogenic associative processor," Proc. systems," presented at the 1962 1st Congress on the Informa-IEEE, vol. 52, pp. 1182-1190, October 1964. tion System Sciences.

[7] M. P. Barnett, "A hypothetical machine for syntax tests," [41] M. K. Haynes, "Cryotron storage, arithmetic and logical cir-Cooperative Computing Laboratory, M.I.T., Cambridge, cuits," Solid State Electronics, vol. 1, no. 4, pp. 399-408, 1960.Mass., Tech. Note 18, 1962. [42] H. F. Heath Jr., "Cryogenic memory systems," U. S. Patent

[81 L. Bloom, M. Cohen, and S. Porter, "Considerations in the 3 134 095, May 19, 1964.design of a computer with high logic-to-memory speed ratio," [43] H. Hellerman, "A directory control system for multi-program-Proc. Gigacycle Computing Systems Sessions, 1962 AIEE Winter I- ming," IBM Watson Research Ctr., Yorktown Heights, N. Y.,General Meeting, p. 53. r"" Rept. RC-1095, October 1963.

[9] J. W. Bremer, "Cryotron computer techniques," 1963 Proc. [44] J. H. Holland, "A universal computer capable of executing anIEEE Pacific Computer Conf. pp. 42-44. arbitrary number of sub-programs simultaneously," Proc.

[10] B. F. Cheydleur, "SHIEF-a realizable form of associative EJCC, pp. 108-113, December 1959.memory," American Documentation, vol. 14, pp. 56-57, January [45] , "On iterative circuit computers constructed of micro-1963. electronic components and system," Proc. WJCC, pp. 259-266,

[lOa] M. Cohen, "Study of associative memory application," NCR May 1960.Advanced Systems Group, Hawthorne, Calif., Internal Doc., [45a] V. E. Holt, R. R. Lanne, and B. Wentworth, "Switching char-January 1964. acteristics of crossed-film cryotron circuits," IEEE Trans. on

[11] M. L. Cohen and J. L. Miles, "Characteristics of film cryo- Magnetics, vol. MAG-1, pp. 417-423, December 1965.trons," Solid State Electronics, vol. 1, September 1960. [46] I. N. Hooton, "General survey: associative storage for nuclear

[12] E. A. Coil, "A multi-addressable random access file system," physics," in Automatic Acquisition and Reduction of NuclearIRE WESCON Conv. Rec., pt. 4, pp. 42-47, August 1960. Data, Gesselschaft fur Kernforschung m.b.H., Karlsruhe, pp.

[13] "The next generation of computers," Control Engrg., vol. 9, 338-348,1964.pp. 22-25, February 1962. [47] , "An associative store for nuclear physics," in Automatic

[141 R. C. Corbell, "A tunnel diode associative memory," M.S. Acquisition and Reduction of Nuclear Data, Gessellschaft furthesis, UCLA, June 1962. Kernforschung m.b.H., Karlsruhe, pp. 349-356, 1964.

[15] A. Corneretto, "3-K bit associative memory works at room 148] R. A. Howard, P. E. Wells, L. Cann, and J. S. Davis, "Investi-temperature," Electronic Design, vol. 10, pt. 3, p. 8, July 5, 1962. gation of woven-screen memory techniques," Proc. Large-

[16] , "Associative memories, a many-pronged design effort," Capacity Techniques for Memory Systems, p. 361, May 1961.Electronic Design, vol. 2, pp. 40-55, February 1, 1963. [49] R. T. Hunt, D. L. Snider, J. Suprise, and H. N. Boyd, "Study

[17] J. W. Crowe, "Trapped-flux superconducting memory," IBM of elastic switching for associative memory systems," U. S.Research and Develop., vol. 1, pp. 294-303, October 1957. Gov. Res. Repts., vol. 39, p. 188(A), AD 432 041, May 20, 1964.

[18] P. M. Davies, "A superconductive associative memory," Proc. [50] W. B. Ittner, III, "The case for cryotronics?," Proc. FJCCSJCC (AFIPS), vol. 21, pp. 79-88, May 1962. (AFIPS), vol. 22, pp. 229-231, December 1962.

[19] , "Design for an associative computer," 1963 Proc. IEEE [51] D. L. Johnson and A. L. Kobler, "Man-computer interfacePacific Computer Conf., pp. 109-117. study," U. S. Gov. Res. Repts., vol. 38, p. 100(A), AD 287 791,

[20] R. P. Edwards, "Content-addressable distributed-logic memo- February 1963.ries," Proc. IEEE (Correspondence), vol. 52, pp. 83-84, Janu- [52] L. Johnson and M. McAndrew, "On ordered retrieval from anary 1964. ascaiemmr, B .Rsac n eeo. o.8[21] G. Estrin, "Organization of computer systems-the fixed plus associativ m IB J r D ,variablestructurecomputer,"Proc. WJCC, pp.33-37, Mayl1960. pp. 189- Anpril 1964.

[22] G. Estrin and R. H. Fuller, "Some applications for content: [53] E. C. Joseph and A. Kaplan, "Target-track correlation with aaddressable memories," Proc. FJCC (A FIPS), vol. 24, pp. 495- search memory," Proc. 6th Nat'l Cony, on Military Electronics,508, November 1963. 'p. 255, June 1962.

[23] - , "Algorithms for content-addressable memories," 1963 [54] A. Kaplan, "A search memory subsystem for a general-purposeProc. IEEE Pacific Computer Conf., pp. 118-130. computer," Proc. FJCC, vol. 24, pp. 193-200, November 1963.

[24] R. C. Ewing and P. M. Davies, "An associative processor," in [55] Deleted in proof.Proc. FJCC, vol. 25, pp. 147-148, 1964. [56] T. Kilburn, D. Edwards, M. Lanigan, and F. Sumner, "One-

[25] A. D. Falkoff, "Algorithms for parallel-search memories," level storage system," IRE Trans. on$ Electronic Computers,J. ACM, vol. 9, p. 488, October 1962. vol. EC-il, pp. 223-235, April 1962.

[26] J. A. Feldman, "Aspects of associative processing," M. I. T. [57] J. Kiseda, H. Peterson, W. Seelback, and M. Teig, "A magneticLincoln Lab., Lexington, Mass., Tech. Note 1965-13, 47 pp., associative memory," IBM J. Research and Develop., vol. 5,April 21, 1965. pp. 106-121, April 1961.

Page 13: TRANSACTIONS ON Content-Addressable and Associative … · of content-addressable memories (CAM's)withinagen-eral purposecomputingsystem. In the processof work- Except for "associative

1966 HANLON: MEMORY SYSTEMS SURVEY 521

[581 R. Koerner, "A memory array searching system," U. S. Patent time storage and retrieval," in Information Processing 1962.3 031 650, April 24, 1962. North-Holland Publ. Co., 1963, pp. 273-278.

[591 W. I. Landauer, "The tree as a stratagem for automatic in- [911 N. S. Prywes and H. S. Gray, 'The organization of a multilist-formation handling," Disser. Absts., vol. 24, p. 231 (A), July type .associative memory,' IEEE Trans. on Communication1963. and Electronics, Vol. 82, pp. 488-492, September 1963.

PO0] A. J. Learn, "Superconducting computers," Electronics, vol. 34, [921 N. S. Prywes and H. J. Gray, "Multi-list organized associativepp. 50-51, November 24, 1961. memory," The Moore School of Engineering, University of

[611 R. S. Ledley, "Organization of large memory systems," Proc. Pennsylvania, Philadelphia, January 1962.Large-Capacity Memory Techniques for Computing Systems, [931 N. S. Prywes, W. I. Lanauer, et al., "The multi-list system.p. 15, May 1961. Part I. The associative memory," Tech. Rept. 1, Contract

[62] C. Y. Lee, "Intercommunicating cells, basis for a distributed Nonr 55 1(40), 111 pp. AD 270 573, November 30, 1961.logic computer," Proc. FJCC, p. 130, December 1962. [94] J. A. Rajchman, "Magnetic memories--capabilities and limita-

[631 C. Y. Lee and M. C. Paull, "A content addressable distributed tions," J. Appl. Phys., vol. 34, pp. 1013-1018, April 1963.logic memory with applications to information retrieval," [95] J. I. Raffel and T. S. Crowther, "A proposal for an associativeProc. IEEE, vol. 51, pp. 924-932, June 1963. memory using magnetic films," IEEE Trans. on Electronic

[64] C. Lee and M. Paull, "A content addressable distributed logic Computers (Short Notes), vol. EC-13, p. 61 1, October 1964.memory with applications to information retrieval," Proc. [961 A. D. Robbi and R. Ricci, "Transfiuxor content-addressableIEEE (Correspondence), vol. 52, p. 312, March 1964. memory," Proc. Internat'l Conf. on Nonlinear Magnetics, pp.

[65] E. S. Lee, "Associative techniques with complementing flip- 8-3-1 to 8-3-7, April 1964.flops," Proc. SJCC (A FIPS), pp. 381-394, May 1963. [97] J. L. Rogers and A. Wolinsky, "Associative memory algorithms

[66] -~, "Semiconductor circuits in associative memories," 1963 and their cryogenic imnplementation," U. S. Gov. Res. Repts.,Proc. IEEE Pacific Computer Conf., pp. 96-108. vol. 39, p. 166(a), AD 429 521, May 5, 1964.

[67] M. H. Lewin, "Retrieval of ordered lists from a content-ad- 198] R. F. Rosin, "An organization of an associative cryogenic com-dressed memory," RCA Rev., vol. 23, pp. 2 15-229, June 1962. puter," Proc. SJCC (AFIPS), pp. 203-2 12, May 1962.

[681 M. H. Lewin, H. R. Beelitz, and J. A. Rajchman, "Fixed [99] C. A. Rowland and W. 0. Berge, "A 300 nanosecond searchassociative memory using evaporated organic diode arrays," memory," Proc. EJCC, vol. 24, pp. 59-65, November 1963.Proc. FJCC, vol. 24, pp. 101-106, November 1963. [1001 R. R. Seeber Jr., "Cryogenic associative memory," Proc. Nat'l

[69] T. R. Long, "Electrodeposited memory elements for a non- Conf. A CM, vol. 14, August 23, 1960.destructive memory," J. Appl. Phys. (Supplement), vol. 31, [101] -~, "Associative self-sorting memory," Proc. EJCC, vol. 18,pp. 123S-124S, May 1960. pp. 179-187, December 1960.

[70] R. R. Lussier and R. P. Schneider, "All-magnetic content ad- [1021 ~, "Symbol manipulation with an associative memory,"dressed memory," Electronic Indust., vol. 22, pp. 92-98, March ACM Nat'l Conf., Commun. ACM, vol. 4, p. 301(A), July 1961.1963. [103] R. R. Seeber and A. B. Lindquist, "Associative memory with

[71] T. Maguire, "Superconductive computers-commonplace in ordered retrieval," IBM J. Research and Develop., vol. 6, pp.ten years?" Electronics, vol. 34, pp. 45-51, November 24, 1961. 126-136, January 1962.

[72] H. T. Mann and J. L. Rogers, "A cryogenic 'between-limits' [104] -~, "Associative logic for highly parallel systems," Proc.associative memory," Proc. Nat'l Aerospace Electronics Con- FJCC, vol. 24, pp. 489-493, November 1963.vention, p. 359, May 1962. [1051 R. R. Seeber and F. B. Hartman, "Memory and circuits there-

[73] J. E. McAteer, J. A. Capobianco, and R. L. Koppel, "Associa- for," U. S. Patent 3 121 217, February 1964.tive memory system implementation and characteristics," [106] G. J. Simmons, "Application of an associatively addressed dis-Proc. FJCC, pp. 81-92, 1964. tributed memory," Proc. SJCC, vol. 25, pp. 493-513, April

[74] B. H. McCormick and J. L. Divilbiss, "Tentative logical reali- 1964.zation of a pattern recognition computer," Digital Computer [107] -~, "A mathematical model for an associative memory,"Lab., University of Illinois, Urbana, Rept. 403. Sandia Corp., Albuquerque, N. Mex., Rept. SCR 621.

[75] W. L. McDermid and H. E. Petersen, "A magnetic associative [108] ~, "Application of an associatively addressed distributedmemory," IBM J. Research and Develop., vol. 5, pp. 59-63, memory," Proc. SJCC, pp. 493-513, 1964.January 1961. [109] T. Singer and P. Schupp, "Associative memory computers from

[76] H. Meyer and W. Stuber, "Use of standard memory systems as the programming point of view," U. S. Gov. Res Repts., vol. 38,associative memories for integrating storage of multiparameter p. 85(A), December 20, 1963.data by automatic data reduction," Automatic Acquisition and [110] A. E. Slade and H. 0. McMahon, "A cryotron catalog memoryReduction of Nuclear Data, Gessellschaft fUar Kernforschung, system," Proc. EJCC, vol. 10, pp. 115-120, December 1956.m.b.H., Karlsruhe, pp. 357-363, 1964. [111] A. E. Slade, "The woven cryotron memory," Proc. Internat'l

[77] H. S. Miller, "Resolving multiple responses in an associative Symp. on the Theory of Switching, p. 326, 1959.memory," IEEE Trans. on Electronic Computers (Short Notes), [112] A. E. Slade and H. 0. McMahon, "A cryotron catalog memoryvol. EC-13, pp. 614-616, October 1964. system," Proc. EJCC, p. 120, May 1962.

[78] R. C. Minnick, "Magnetic comparators and code converters," [113] A. E. Slade, "A cryotron memory cell," Proc. IRE (Corre-1962 Symp. on the Application of Switching Theory in Space spondence), vol. 50, pp. 81-82, January 1962.Technology. [114] A. E. Slade and C. R. Smaliman, "Thin-film cryotron catalog

[79] A. Newell and F. Tonge, "An introduction to information memory," Symp. on Superconductive Techniques for Computingprocessing language V," Commun. A CM, vol. 3, pp. 205-211, Systems, May 1960, Solid State Electronics, vol. 1 1, pp. 357-362,April 1960. September 1960.

[801 V. L. Newhouse, "Superconducting circuits for computing [115] D. L. Slotnick, W. C. Borck, and R. C. McReynolds, "Themachines," Electro-Technology, vol. 67, pp. 78-79, April 1961. Solomon computer," Proc. FJCC, p. 97, December 1962.

[81] V. L. Newhouse and R. E. Fruin, "A cryogenic data addressed [116] E. Spiegelthal, "A content-addressable distributed logic mem-memory," Proc. SJCC (A FIPS), pp. 89-100, May 1962. ory with applications to information retrieval," Proc. IEEE

[82] V. L. Newhouse and R. E. Fruiin, "Data addressed memory (Correspondence), vol. 52, p. 74, January 1964.using thin-film cryotrons," Electronics, vol. 35, pp. 3 1-36, [117] W. R. Smith, "Associative memory techniques for large dataMay 4, 1962. processors," Disser. Absts., vol. 24, p. 1541, October 1963.

[83] V. L. Newhouse, J. W. Bremer, and H. H. Edwards, "The [118] G. T. Tuttle, "How to quiz a whole memory at once," Elec-crossed-film cryotron and its application to digital computers," tronics, vol. 36, pp. 43-46, November 15, 1963.

Soli Stte Eectonic, vl. 1no.4, p. 20-27, 160.[119] S. H. Unger, "A computer oriented toward spatial problems,"[84]i5NSsim, "Nnohletois digital comptemmoie,p resented,960 Proc. IRE, vol. 46, pp. 1744-1750, October 1958.at4 the 1962im WNaorkhope oniUltra-FsComputermeois,"LakesArrow- [120] ~, "Pattern detection and recognition," Proc. IRE, vol. 47,athead Calif.hpo UtaFstCmutr,LkeArw

pp. 1737-1752, October 1959.head, Calif. 1~~~~~~~D-121] "Project lightning (IBM)," U. S. Gov. Res. Repts., vol. 36, p.[85] -~, "Organizing the Nanophile computers," Electronic 124(r)A),A ADTNt259 229 Setebe 20 1961