GB2312769A - Contents addressable memory - Google Patents

Contents addressable memory Download PDF

Info

Publication number
GB2312769A
GB2312769A GB9706787A GB9706787A GB2312769A GB 2312769 A GB2312769 A GB 2312769A GB 9706787 A GB9706787 A GB 9706787A GB 9706787 A GB9706787 A GB 9706787A GB 2312769 A GB2312769 A GB 2312769A
Authority
GB
United Kingdom
Prior art keywords
cells
cell
data bit
row
match line
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
GB9706787A
Other versions
GB9706787D0 (en
Inventor
Richard Albon
Alan Martin
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Plessey Semiconductors Ltd
Original Assignee
Plessey Semiconductors Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from GBGB9609075.8A external-priority patent/GB9609075D0/en
Application filed by Plessey Semiconductors Ltd filed Critical Plessey Semiconductors Ltd
Priority to GB9706787A priority Critical patent/GB2312769A/en
Publication of GB9706787D0 publication Critical patent/GB9706787D0/en
Publication of GB2312769A publication Critical patent/GB2312769A/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C15/00Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores
    • G11C15/04Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores using semiconductor elements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C15/00Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores

Abstract

Each cell 23 of a contents addressable memory (CAM) comprises a plurality of comparator circuits 38, 39, 40 and respective latches 44, 45, 46. This arrangement allows simultaneous comparison operations to be carried out against a bit value stored in memory element 12. Also, read access path 27 and write access path 22 are separate from the access paths 35, 36, 37 used for comparison purposes. In this way, read, write and comparison operations can be carried out contemporaneously, though not to the same row, allowing updating of cells 23 with minimum disruption to the CAM's operation.

Description

Contents Addressable Memories The present invention relates to contents addressable memories (CAMs).
Contents addressable memories are useful in applications whets memory searching is required. Such applications include optical and magnetic disk caches, data base accelerators, machine vision, target acquisition and artificial intelligence machines.
Contents addressable memories may also be used in local area networks (LANs) to store the network addresses of nodes accessible in an area or segment of a network, the different segments of a network being connected by bridge circuit amagnents, as indicated in Figure 1.
The performance of such bridge arrangements is limited by the rate at which incoming address data can be compared with node address data which has been written into the memory during initialisation, the incoming address data bits being prescreed to respective columns of cells of the memory along the bit-line and bit-line-bar paths by which the stored data bits were written in. Patent Application GB-A-2277617 describes a contents addressable memory which may be used for such comparisons, this memory having a single comparison circuit in each cell and a match line device to indicate a match of incoming data and data stored in a row of memory cells. Only one comparison process can be carried out at a time, therefore, with succeeding sets of address data having to wait their turn in a buffer store, and the sequence of comparisons has to be interrupted if the node address contents of the memory have to be updated to reflect changes to the network, since the writing and comparison processes both use the bit-lines for access.
According to a first aspect of the present invention there is provided a contents addressable memory comprising an array of random access memory cells arranged in rows and columns, wherein there are provided in respect of each column of cells a plurality of data bit value input paths extending to each cell of the column and in respect of each row of cells a like plurality of match line paths extending to each cell of the row, and each cell comprises a like plurality of comparison circuit means whereby a set of data bit values applied to respective ones of said plurality of input paths may be compared with data values held in respective cells of a row of cells and an indication given on a respective match line path if the respective data bit values of said set match the respective data bit values held in the cells of said row.
In accordance with a second aspect of the present invention there is provided a contents addressable memory comprising an array of random access memory cells arranged in rows and colurnns, wherein there are provided in respect of each column of cells a plurality of data bit value input paths extending to each cell of the column and in respect of each row of cells, a like plurality of match line paths extending to each cell of the row, and each cell comprises a like plurality of comparison circuit means for comparing a data bit value applied to a respective one of said plurality of input paths with a data value held in the cell and for controlling the condition of switch means associated with a respective match line path in dependence upon the result of that comparison.
In accordance with a third aspect of the present invention there is provided a contents addressable memory comprising an array of random access memory cells arranged in rows and columns and means for selectively storing data bit values in and reading data bit values from memory cells of said array, wherein there are provided a plurality of comparand bit value registers and, in each of said memory cells, a like plurality of comparison circuit means, and there are provided means to apply respective comparand bit values from a respective one of said comparand registers to respective comparison circuit means in each cell of respective columns of cells of the array and a like plurality of match line means associated with each row of cells of the array, each of said match line means being arranged to give an indication if the respective bit values from a respective comparand register match the data bit values stored in the associated row of cells.
In accordance with a fourth aspect of the present invention there is provided a contents addressable memory comprising an array of random access memory cells arranged in rows and columns wherein each cell is provided with comparison circuit means for comparing a data bit value applied to a data bit value input path, the data bit value input path extending to every cell in a column, with a data value held in the ceU and for controlling the condition of switch means associated with a match line, the match line extending to every cell in a row, in dependence upon the result of that comparison characterised in that each cell is provided with a plurality of comparison circuit means and the memory is provided with a like plurality of match lines for every row of cells and a like plurality of data bit value input paths for every column of cells.
A contents addressable memory in accordance with the present invention will now be described by way of example with reference to the accompanying drawings, of which: Figure 1 shows schematically a bridge circuit arrangement for a local area network incorporating a contents addressable memory, Figure 2 shows diagrammatically a memory cell of a known form of contents addressable memory, Figure 3 shows schematically a contents addressable memory in accordance with the present invention, Figure 4 shows diagrammatically one cell of the memory shown in Figure 3, and Figure 5 shows in more detail the contents addressable memory of Figure 3.
Referring first to Figure 1, as outlined above in a local area network different areas or segments of the network, represented by transmission paths or media 1 and 2 serving respective nodes 3 and 4, rnay be interconnected by way of a bridge circuit arrangement 5. Only two segments are shown, but it will be appreciated that a larger number of segments may be interconnected provided that the bridge 5 is capable of handling the traffic. The bridge includes a contents addressable memory 6 in which address data included in signals received, say, from one segment 1 by way of interface circuits 7 and 8 under the control of a processor 9 may be compared with node address data previously entered in the memory 6, the signals then being routed, where appropriate, by way of further interface circuits 10 and 11 to the segment 2.
Figure 2 shows one cell of a known form of contents addressable memory, in which a random access memory element 12, represented as a pair of inverters, is accessed from data bit lines 13 and 14 by way of access transistors 15 and 16, respectively, which are selectively switched on by signals on a word line 17. The data bit lines 13 and 14 are also connected to gate electrodes of transistors 18 and 19 of a comparison circuit 20, which serves to ground a match line 21 during a comparison process unless the data bit value then present on the bit lines 13 and 14 matches the data bit value held by the memory element 12.
Referring now to Figures 3 and 4, in a contents addressable memory in accordance with the present invention the write/read access paths are separate from the access paths used for comparison purposes. Thus the write access path or data write line 22 to a cell 23 in the memory array 24 is connected to the memory element 12 of the cell 23 by way of an inverter 25 under the control of signals on a word write line or writhe enable line 26, and the read access path or data read line 27 is connected to the memory element 12 by way of an inverter 28 under the control of signals on a word read line or read enable line 29. The data bit values to be written into the memory array 24 may be derived from a data input register 30, while data bit values read from the memory array may be passed to a data output register 31.
Inoorning sets of data bit values for comparison with node address data bits held in the memory array 24 may be entered in their respective sets in comparand registers 32, 33 and 34 each corresponding in length to the length of a row of cells of the array 24.
From these comparand registers individual bit values and their inverses are applied to the cells 23 of respective columns by way of paths 35, 36 and 37 respectively, where the comparand bit values are compared in respective comparison circuits 38, 39 and 40 with the node address bit values held in the cells 23.
A match between the bit values of a comparand register 32, 33 or 34 and the data bit values stored in a row of cells is identified by the provision of a match line 43, 42, 41 and a latch 46, 45, 44 for each comparison circuit 38, 39, 40. Before a comparing operation, the match line 43, 42 or 41 is driven high by applying a pulse to the control electrode of a transistor 56, 55 or 54, to operate the respective latch 46, 45 or 44. In a comparing operation, where the comparand values match the stored values along a row of cells, the respective match line 41, 42 or 43 will remain high but, where the comparand bit value does not match the bit value stored in a cell, the comparison circuit 38, 39 or 40 will ground its respective match line 41, 42 or 43 and respective latch 44, 45, 46 will show that there was not a match As an alternative, match detection could be carried out by an arrangement having the match line of a row of cells connecting an output transistor of each cell of that row in series, the line only conducting current if all of the cells in that row have their output transistor turned on, a match being detected using a current sensing circuit at one end of the match line. Such an arrangement is described in Patent Application GB-A-2277617.
Since the access to the comparison circuits 38, 39 and 40 is entirely separate from the write and read accesses to the memory elements 12, write, read and comparison processes may occur contemporaneously, although not to the same row, allowing updating of the bit value stored in cell 23 with minimum disruption to the CAM's operation. In the form of memory shown in Figures 3 and 4 up to three comparisons may be taking place at any one time and not necessarily synchronously.
Referring now to Figure 5, a contents addressable memory such as that shown in Figure 3 further comprises read and write row decoder 47 and priority encoder 48. In this figure, memory array 24 comprises 256 rows by 64 columns of the CAM cells of Figure 4.
In a write operation, read and write row decoder 47 enables one or more of the 256 write lines 49, one of which is write enable line 26, and data is written from data input register 30 into the required cell or cells by way of one or more of data input lines 50, one of which is the data write line 22. Similarly, in a read operation, read and write row decoder 47 enables one or more of the 256 read lines 51 of a column of cells, one of which is the read enable line 29, and data is read from the relevant cells into data output register 31 by way of one or more data output lines 52, one of which is data read line 27.
Data from each comparand register 32, 33 and 34 is communicated to each cell 23 of array 24 by respective paths 35, 36 and 37. Although only one path 35, 36,37 is shown connecting each comparand register to array 24, it will be understood that each path actually comprises 64 x 2 lines to provide connection between each register 32, 33, 34 and each cell 23 in array 24.
A data match is indicated to priority encoder 48 on one of the 768 match lines 53.
These match lines 53 correspond to the match lines 41, 42 and 43 of the cell of Flgure 4, though there are three match lines per row making a total of 768.
Priority encoder 48 serves to output the identity of the row which has the highest priority and indicated a match, for each of the comparand registers 32, 33 and 34. A priority encoder suitable for this purpose is described in Patent Application GB-A2277616.
It will be appreciated that if space permitted, more than three comparison circuits could be provided in each cell.

Claims (9)

1. A contents addressable memory comprising an array of random access memory cells arranged in rows and columns, wherein there are provided in respect of each column of cells a plurality of data bit value input paths extending to each cell of the column and in respect of each row of cells a like plurality of match line paths extending to each cell of the row, and each cell comprises a like plurality of comparison circuit means whereby a set of data bit values applied to respective ones of said plurality of input paths may be compared with data values held in respective cells of a row of cells and an indication given on a respective match line path if the respective data bit values of said set match the respective data bit values held in the cells of said row.
2. A contents addressable memory comprising an array of random access memory cells arranged in rows and columns, wherein there are provided in respect of each column of cells a plurality of data bit value input paths extending to each cell of the column and in respect of each row of cells, a like plurality of match line paths extending to each cell of the row, and each cell comprises a like plurality of comparison circuit means for comparing a data bit value applied to a respective one of said plurality of input paths with a data value held in the cell and for controlling the condition of switch means associated with a respective match line path in dependence upon the result of that comparison.
3. A contents addressable memory in accordance with claim 2 in which the switch means comprises means to cause the match line path to assume a predetermined voltage.
4. A contents addressable memory in accordance with claim 2 in which the switch means comprises means to reduce the impedance of a section of the match line path.
5. A contents addressable memory comprising an array of random access memory cells arranged in rows and columns and means for selectively storing data bit values in and reading data bit values from memory cells of said array, wherein there are provided a plurality of comparand bit value registers and, in each of said memory cells, a like plurality of comparison circuit means, and there are provided means to apply respective comparand bit values from a respective one of said comparand registers to respective comparison circuit means in each cell of respective columns of cells of the array and a like plurality of match line means associated with each row of cells of the army, each of said match line means being arranged to give an indication if the respective bit values from a respective comparand register match the data bit values stored in the associated row of cells.
6. A contents addressable memory substantially as hereinbefore described with reference to Figures 3 and 4 or Figure 5 of the accompanying drawings.
7. A contents addressable memory comprising an array of random access memory cells arranged in rows and columns wherein each cell is provided with comparison circuit means for comparing a data bit value applied to a data bit value input path, the data bit value input path extending to every cell in a column, with a data value held in the cell and for controlling the condition of switch means associated with a match line, the match line extending to every cell in a row, in dependence upon the result of that comparison characterised in that each cell is provided with a plurality of comparison circuit means and the memory is provided with a like plurality of match lines for every row of cells and a like plurality of data bit value input paths for every column of cells.
8. A contents addressable memory in accordance with claim 7 in which the switch means comprises means to cause the match line path to assume a predetermined voltage.
9. A contents addressable memory in accordance with claim 7 in which the switch means comprises means to reduce the impedance of a section of the match line path.
GB9706787A 1996-05-01 1997-04-03 Contents addressable memory Withdrawn GB2312769A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
GB9706787A GB2312769A (en) 1996-05-01 1997-04-03 Contents addressable memory

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GBGB9609075.8A GB9609075D0 (en) 1996-05-01 1996-05-01 Contents addressable memories
GB9706787A GB2312769A (en) 1996-05-01 1997-04-03 Contents addressable memory

Publications (2)

Publication Number Publication Date
GB9706787D0 GB9706787D0 (en) 1997-05-21
GB2312769A true GB2312769A (en) 1997-11-05

Family

ID=26309242

Family Applications (1)

Application Number Title Priority Date Filing Date
GB9706787A Withdrawn GB2312769A (en) 1996-05-01 1997-04-03 Contents addressable memory

Country Status (1)

Country Link
GB (1) GB2312769A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2549188A1 (en) * 2014-04-23 2015-10-23 Universidad Del Pais Vasco - Euskal Herriko Unibertsitatea (Upv/Ehu) System and method of reading and writing a digital memory (Machine-translation by Google Translate, not legally binding)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2182789A (en) * 1985-11-08 1987-05-20 Texas Instruments Ltd A content addressable memory
GB2277616A (en) * 1993-04-28 1994-11-02 Plessey Semiconductors Ltd Contents addressable memory with priority encoder
GB2277617A (en) * 1993-04-28 1994-11-02 Plessey Semiconductors Ltd Contents addressable memory with series match-line transistors

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2182789A (en) * 1985-11-08 1987-05-20 Texas Instruments Ltd A content addressable memory
GB2277616A (en) * 1993-04-28 1994-11-02 Plessey Semiconductors Ltd Contents addressable memory with priority encoder
GB2277617A (en) * 1993-04-28 1994-11-02 Plessey Semiconductors Ltd Contents addressable memory with series match-line transistors

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2549188A1 (en) * 2014-04-23 2015-10-23 Universidad Del Pais Vasco - Euskal Herriko Unibertsitatea (Upv/Ehu) System and method of reading and writing a digital memory (Machine-translation by Google Translate, not legally binding)

Also Published As

Publication number Publication date
GB9706787D0 (en) 1997-05-21

Similar Documents

Publication Publication Date Title
US6137707A (en) Method and apparatus for simultaneously performing a plurality of compare operations in content addressable memory device
US6731526B2 (en) CAM cell array, TCAM cell, TCAM cell array, address search memory, and network address search apparatus
US6246601B1 (en) Method and apparatus for using an inter-row configurable content addressable memory
US5752260A (en) High-speed, multiple-port, interleaved cache with arbitration of multiple access addresses
US6781857B1 (en) Content addressable memory (CAM) devices that utilize multi-port CAM cells and control logic to support multiple overlapping search cycles that are asynchronously timed relative to each other
US6505270B1 (en) Content addressable memory having longest prefix matching function
KR930008493B1 (en) Asociative memory device
US6910097B1 (en) Classless interdomain routing using binary content addressable memory
US6310880B1 (en) Content addressable memory cells and systems and devices using the same
US7307860B2 (en) Static content addressable memory cell
US6856527B1 (en) Multi-compare content addressable memory cell
US6374325B1 (en) Content addressable memory (CAM)
US7307861B1 (en) Content addressable memory (CAM) cell bit line architecture
US20040042241A1 (en) Content addressable memory architecture
JP3599273B2 (en) Improvement of memory that can refer to contents
US20030005210A1 (en) Intelligent CAM cell for CIDR processor
US7251707B1 (en) Content based content addressable memory block enabling using search key
US6839258B2 (en) Folded DRAM CAM cell
KR100532508B1 (en) Content Addressable Memory having high speed operation
US6751701B1 (en) Method and apparatus for detecting a multiple match in an intra-row configurable CAM system
KR100565456B1 (en) A tertiary cam cell
EP0805457A2 (en) Contents addressable memories
GB2312769A (en) Contents addressable memory
JP4391554B2 (en) Associative memory
CN112970065A (en) Dual compare tri-state CAM

Legal Events

Date Code Title Description
WAP Application withdrawn, taken to be withdrawn or refused ** after publication under section 16(1)