JPH07312091A - Use method for associative memory and associative memory - Google Patents

Use method for associative memory and associative memory

Info

Publication number
JPH07312091A
JPH07312091A JP17106694A JP17106694A JPH07312091A JP H07312091 A JPH07312091 A JP H07312091A JP 17106694 A JP17106694 A JP 17106694A JP 17106694 A JP17106694 A JP 17106694A JP H07312091 A JPH07312091 A JP H07312091A
Authority
JP
Japan
Prior art keywords
data
memory
stored
attribute
search
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.)
Granted
Application number
JP17106694A
Other languages
Japanese (ja)
Other versions
JP3130736B2 (en
Inventor
Masato Yoneda
正人 米田
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.)
JFE Steel Corp
Original Assignee
Kawasaki Steel Corp
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
Application filed by Kawasaki Steel Corp filed Critical Kawasaki Steel Corp
Priority to JP06171066A priority Critical patent/JP3130736B2/en
Publication of JPH07312091A publication Critical patent/JPH07312091A/en
Application granted granted Critical
Publication of JP3130736B2 publication Critical patent/JP3130736B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PURPOSE:To retrieve only desired data having desired attribute by forming storage of data of a group structure and structure of a memory suitable for storage. CONSTITUTION:Attribute data is stored in upper 2 bits of each memory word 11-1, 11-2,...11-m. Also, data attached to each attribute is stored in residual m-2 bits. Upper 2 bits of a reference data register 12 are made an attribute data register 12-1 storing attribute data for retrieving. Also, a residual part of the reference data register 12 (data register 12-2) is made a reference data register in the conventional meaning. And attribute data and the reference data in the conventional meaning are stored in the reference data register 12 and retrieving is performed. Thereby, desired stored data to which an attribute indicating attribute data used for retrieving is attached is retrieved. Therefore, retrieving the same stored data having different attributes is excluded.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、複数の各メモリワード
それぞれに各格納データを記憶しておき、入力された参
照データを用いて所定の格納データが記憶されたメモリ
ワードの検索を行う連想メモリに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a memory word in which each stored data is stored in each of a plurality of memory words, and the reference word input is used to search for a memory word in which a predetermined stored data is stored. Regarding memory.

【0002】[0002]

【従来の技術】従来より、上記のような検索機能を備え
た連想メモリ(Associative Memor
y,内容アドレス式メモリ;Content Addr
essable Memory)が提案されている。図
14は、従来の連想メモリの一例を表わした回路ブロッ
ク図である。
2. Description of the Related Art Conventionally, an associative memory equipped with a search function as described above (Associative Memory)
y, content addressable memory; Content Addr
ESSABLE MEMORY) has been proposed. FIG. 14 is a circuit block diagram showing an example of a conventional associative memory.

【0003】この連想メモリ10には、mビットを1ワ
ードとする、互いに図の横方向に並ぶmビットのメモリ
セルからなる多数のメモリワード11_1,11_2,
…,11_nが備えられている。またこの連想メモリ1
0は、1ワードの参照データが入力されラッチされる参
照データレジスタ12および参照データをビット毎にマ
スクするマスクデータが格納されるマスクデータレジス
タ13を備え、参照データレジスタ12にラッチされた
参照データのうち、マスクデータレジスタ13に格納さ
れたマスクデータによりマスクされていない全部もしく
は所定の一部のビットパターンと、各メモリワード11
_1,11_2,…,11_nに記憶されたデータのう
ち上記ビットパターンと対応する部分のビットパターン
との一致不一致が比較され、各メモリワード11_1,
11_2,…,11_nそれぞれに対応して備えられた
一致線14_1,14_2,…,14_nのうちビット
パターンが一致したメモリワード11_1,11_2,
…,11_nに対する一致線14_1,14_2,…,
14_nに論理‘1’の一致信号が出力される。それ以
外の一致線14_1,14_2,…,14_nは論理
‘0’にとどまる。
In the associative memory 10, a large number of memory words 11_1, 11_2, each of which has m bits as one word, and which are composed of m-bit memory cells arranged in the lateral direction of the drawing.
..., 11_n are provided. Also, this associative memory 1
Reference numeral 0 is provided with a reference data register 12 into which 1-word reference data is input and a mask data register 13 into which mask data for masking the reference data for each bit is stored, and the reference data latched in the reference data register 12 Of all or a predetermined part of the bit pattern not masked by the mask data stored in the mask data register 13 and each memory word 11
, 11_n of the data stored in _1, 11_2, ...
11_2, ..., 11_n corresponding to each of the match lines 14_1, 14_2 ,.
…, Matching lines 14_1, 14_2, ... For 11_n
A match signal of logic "1" is output to 14_n. Other match lines 14_1, 14_2, ..., 14_n remain at logic '0'.

【0004】これらの一致線14_1,14_2,…,
14_nに出力された信号は、各一致フラグレジスタ1
5_1,15_2,…,15_nに格納される。ここで
は、一例として、図示のように、各一致フラグレジスタ
15_1,15_2,…,15_nにそれぞれ‘0’,
‘1’,‘1’,‘0’,…,‘0’,‘0’が格納さ
れたものとする。これらの一致フラグレジスタ15_
1,15_2,…,15_nに格納された信号はアドレ
スエンコーダ16に入力され、このアドレスエンコーダ
16からは、論理‘1’の信号が格納された一致フラグ
レジスタ(ここでは一致フラグレジスタ15_2と一致
フラグレジスタ15_3の2つのみとする)のうちの優
先度の最も高い一致フラグレジスタに対応するアドレス
信号が出力される。ここでは、添字が若いほど優先順位
が高いものとし、従ってここでは一致フラグレジスタ1
5_2に対応するメモリアドレスが出力される。このア
ドレスエンコーダ16から出力されたアドレス信号AD
は、必要に応じてデコーダ17に入力される。デコーダ
17ではこの入力されたアドレス信号ADをデコードし
て各メモリワード11_1,11_2,…,11_nの
それぞれに対応して備えられたワード線18_1,18
_2,…,18_nのうちの入力されたアドレス信号A
Dに対応するいずれか1本のワード線(ここではワード
線18_2)にアクセス信号を出力する。これによりア
クセス信号の出力されたワード線18_2に対応するメ
モリワード11_2に記憶されているデータが出力レジ
スタ19に読み出される。
These matching lines 14_1, 14_2, ...,
The signal output to 14_n corresponds to each match flag register 1
5_1, 15_2, ..., 15_n. Here, as an example, as shown in the figure, the match flag registers 15_1, 15_2, ...
It is assumed that "1", "1", "0", ..., "0", "0" are stored. These match flag registers 15_
The signals stored in 1, 15_2, ..., 15_n are input to the address encoder 16, and from the address encoder 16, a match flag register (here, the match flag register 15_2 and the match flag are stored, in which a signal of logic “1” is stored. The address signal corresponding to the match flag register having the highest priority among the registers 15_3) is output. Here, it is assumed that the younger the subscript, the higher the priority. Therefore, here, the match flag register 1
The memory address corresponding to 5_2 is output. Address signal AD output from this address encoder 16
Are input to the decoder 17 as needed. The decoder 17 decodes the input address signal AD and decodes the word lines 18_1 and 18 provided for the memory words 11_1, 11_2, ..., 11_n, respectively.
Input address signal A of _2, ..., 18_n
The access signal is output to any one word line (here, word line 18_2) corresponding to D. As a result, the data stored in the memory word 11_2 corresponding to the word line 18_2 to which the access signal is output is read to the output register 19.

【0005】次に、一致フラグレジスタ15_2に格納
された信号を‘0’に変更することにより、今度は一致
フラグレジスタ15_3に対応するメモリワード11_
3のアドレスを得ることができる。図15は、従来の連
想メモリの機能ブロック図である。この連想メモリに
は、ファンクションデータFUN_DATAと参照デー
タREF_DATAが入力される。ファンクションデー
タFUN_DATAはこの連想メモリの機能を定義する
データであり、例えばファンクションデータFUN_D
ATAが‘01’のときは、同時に入力された参照デー
タREF_DATAはマスクデータであることを意味
し、そのデータがマスクデータレジスタに格納される。
また例えばファンクションデータFUN_DATAが
‘10’のときは、同時に入力された参照データREF
_DATAを用いた検索が行われ、入力された参照デー
タREF_DATAは、マスクデータレジスタに格納さ
れたマスクデータによるマスクがかけられた後、データ
線駆動回路を経由して、各メモリワードに供給される。
メモリワードに格納されたデータが入力されたデータと
一致したときは、対応する一致フラグレジスタに論理
‘1’の一致信号が格納される。
Next, by changing the signal stored in the match flag register 15_2 to "0", this time the memory word 11_ corresponding to the match flag register 15_3 is changed.
3 addresses can be obtained. FIG. 15 is a functional block diagram of a conventional associative memory. Function data FUN_DATA and reference data REF_DATA are input to the associative memory. The function data FUN_DATA is data that defines the function of this associative memory. For example, the function data FUN_D
When ATA is “01”, it means that the reference data REF_DATA input at the same time is mask data, and the data is stored in the mask data register.
Further, for example, when the function data FUN_DATA is “10”, the reference data REF input at the same time is input.
A search using _DATA is performed, and the input reference data REF_DATA is masked by the mask data stored in the mask data register and then supplied to each memory word via the data line drive circuit. .
When the data stored in the memory word matches the input data, the matching signal of logic "1" is stored in the corresponding matching flag register.

【0006】このように、連想メモリ10は、参照デー
タの全部もしくは所定の一部のデータを用いて多数のメ
モリワード11_1,11_2,…,11_nに記憶さ
れた内容(データ)を検索し、一致するデータを有する
メモリワードのアドレスを得、必要に応じてそのメモリ
ワードに記憶されたデータ全体を読み出すことができる
ように構成されたメモリである。
As described above, the associative memory 10 searches the contents (data) stored in a large number of memory words 11_1, 11_2, ..., 11_n by using all or a predetermined part of the reference data and matches them. A memory configured to obtain an address of a memory word having data to be read, and to read the entire data stored in the memory word as needed.

【0007】[0007]

【発明が解決しようとする課題】上記のような連想メモ
リを用いて検索を行なうにあたり、検索の対象とされる
データが群構造を成している場合、すなわち各群を構成
する複数のデータにそれぞれ属性が付されている場合
に、解決しなければならない問題点がいくつか存在す
る。
In performing a search using the associative memory as described above, when the data to be searched has a group structure, that is, a plurality of data forming each group There are some problems that must be solved when each attribute is attached.

【0008】それらの問題点のうちの第1の問題点は群
構造を成す多数のデータの中から所望のデータをどのよ
うにして検索するかという点である。以下、図面を参照
してこの第1の問題点について説明する。図16は、連
想メモリに記憶された、属性の付されたデータの配列を
示した図である。
The first of these problems is how to retrieve desired data from a large number of data forming a group structure. The first problem will be described below with reference to the drawings. FIG. 16 is a diagram showing an array of data with attributes stored in the associative memory.

【0009】連想メモリを構成する多数のメモリワード
が4つずつ組にされ、各組内の先頭のメモリワードに
は、例えば‘氏名’という「属性0」の付されたデータ
が格納され、各組内の2番目のメモリワードには例えば
‘生年月日’という「属性1」の付されたデータが格納
され、以下同様にして各組内の3番目、4番目のメモリ
ワードにはそれぞれ「属性2」,「属性3」が付された
データが格納されるものとする。ここでは、各メモリワ
ードに格納された各データを図示のアルファベットA,
B,…で表示している。尚、以下上記のように各属性が
付された1組のデータ群を「データセット」と称する。
A large number of memory words constituting the associative memory are grouped into groups of four, and the first memory word in each group stores, for example, data with "attribute 0" called "name". The second memory word in the set stores, for example, data with "attribute 1" called "date of birth", and so on. Data to which "attribute 2" and "attribute 3" are attached is stored. Here, each data stored in each memory word is represented by the alphabet A,
It is indicated by B, ... In addition, hereinafter, one set of data groups to which each attribute is added as described above is referred to as a “data set”.

【0010】ここで、図16の最上段に記された属性0
のデータが‘A’であり、次段に記された属性1のデー
タも‘A’であるというように、属性が異なっても同一
のビットパターンのデータが格納されることが生じる場
合がある。この場合において、属性0に属するデータ
‘A’(例えば氏名‘A’である人)のみを検索したい
場合に、データ‘A’を参照データとして入力すると、
属性0に属するデータ‘A’のみでなく、他の属性1,
2,3に属するデータ‘A’も同時に検索されてしま
い、検索後において検索されたデータの中から属性0に
属するデータを再度選別し直す等の操作を行う必要があ
り、その操作が極めて煩雑でありその選別にも時間がか
かるという問題がある。
Here, the attribute 0 shown at the top of FIG.
There is a case where the data of the same bit pattern is stored even if the attributes are different, such as the data of "A" and the data of the attribute 1 described in the next stage is also "A". . In this case, if you want to search only the data'A '(for example, the person whose name is'A') belonging to the attribute 0, if you input the data'A 'as reference data,
Not only data'A 'belonging to attribute 0, but also other attributes 1,
The data'A 'belonging to the second and third are also searched at the same time, and it is necessary to reselect the data belonging to the attribute 0 from the searched data after the search, and the operation is extremely complicated. Therefore, there is a problem that the selection also takes time.

【0011】群構造を成すデータ(データセット)を検
索対象とする場合の第2の問題点は、検索のフレキシビ
リティを如何にして向上させるかという点である。例え
ば、何らかの方法により、「属性0」の付されたデータ
‘A’や、「属性2」の付されたデータ‘B’等、個々
のデータの検索は可能であるとしても、例えば「属性
0」の付された‘A’と「属性2」の付されたデータ
‘B’との双方を含むデータセットをどのようにして検
索するかが問題となる。
A second problem in the case where the data (data set) forming the group structure is the search target is how to improve the flexibility of the search. For example, even if it is possible to search for individual data such as the data “A” with the “attribute 0” or the data “B” with the “attribute 2” by some method, for example, the data “A” The problem is how to search for a data set including both "A" with "" and data "B" with "attribute 2."

【0012】この場合に、ここでは上述のように「属性
0」の付されたデータ‘A’、「属性2」の付されたデ
ータ‘B’等、個々のデータについては検索可能である
という前提を置いており、したがって「属性0」の付さ
れたデータ‘A’を含む、通常はこれに該当する多数の
データセットを検索し、かつ、「属性2」の付されたデ
ータ‘B’を含む、やはり通常はこれに該当する多数の
データセットを検索し、それら検索された多数のデータ
セットの中から、「属性0」の付されたデータ‘A’と
「属性2」の付されたデータ‘B’との双方を満足する
データセットを再度選別し直す必要があり、上述の第1
の問題点の場合と同様その操作が極めて煩雑であり、時
間がかかるという問題がある。
In this case, it is said that the individual data such as the data "A" with the "attribute 0" and the data "B" with the "attribute 2" can be searched as described above. It is premised that a large number of data sets corresponding to this, including the data “A” with the “attribute 0”, are searched for, and the data “B” with the “attribute 2” is searched. Also, a large number of data sets that normally correspond to this are searched, and from among the searched large number of data sets, data “A” with “attribute 0” and data with “attribute 2” are added. It is necessary to re-select the data set that satisfies both the data “B” and the first data described above.
As in the case of (1), the operation is extremely complicated and takes time.

【0013】また、一方従来からの連想メモリ技術の中
で、群構造のデータを扱う場合ではなく、通常のデータ
を扱う場合における、一致検索の対象となるデータ幅を
2ワードもしくはそれ以上の複数ワードに拡張する技術
については知られており、それを以下に説明する。図1
7は、データ拡張機能を備えた連想メモリの一例を示す
ブロック図である。図14に示した連想メモリの構成要
素と対応する構成要素には、図14に付した符号と同一
の符号を付して示し、その要素についての重複説明は省
略する。
On the other hand, in the conventional associative memory technology, when the data having a group structure is handled but not the normal data, the data width to be subjected to the match search is set to two words or more. Techniques for expanding to words are known and are described below. Figure 1
FIG. 7 is a block diagram showing an example of an associative memory having a data expansion function. The components corresponding to the components of the associative memory shown in FIG. 14 are denoted by the same reference numerals as those shown in FIG. 14, and the duplicate description of those components will be omitted.

【0014】各メモリワード11_1,11_2,…か
ら延びる各一致線14_1,14_2,…,は、各アン
ドゲート20_1,20_2,…の一方の入力端子に接
続されている。また各アンドゲート20_1,20_
2,…の他方の入力端子には各オアゲート21_2,2
1_3,…の出力端子が接続されており、各オアゲート
21_2,21_3,…の一方の入力端子は、初回検索
制御線22に接続されている。ただし図示の一番上のア
ンドゲート20_1に対応するオアゲートは省略されて
おり、そのアンドゲート20_1の入力端子に初回検索
制御線22が直接接続されている。
The match lines 14_1, 14_2, ... Extending from the memory words 11_1, 11_2, ... Are connected to one input terminal of each AND gate 20_1, 20_2 ,. In addition, each AND gate 20_1, 20_
The other input terminals of 2, ...
The output terminals of 1_3, ... Are connected, and one input terminal of each OR gate 21_2, 21_3, ... Is connected to the initial search control line 22. However, the OR gate corresponding to the uppermost AND gate 20_1 in the figure is omitted, and the initial search control line 22 is directly connected to the input terminal of the AND gate 20_1.

【0015】各アンドゲート20_1,20_2,…の
出力端子は各第1のフラグレジスタ23_1,23_
2,…のデータ入力端子に接続され、各第1のフラグレ
ジスタ23_1,23_2,…の出力端子は各第2のフ
ラグレジスタ24_1,24_2,…の出力端子に接続
されている。各第2のフラグレジスタ24_1,24_
2,…の出力端子は、図14に示すプライオリティエン
コーダ16(図17では図示省略)に接続されるととも
に、図17の下方に隣接するメモリワードに対応するオ
アゲート21_2,21_3,…の入力端子に接続され
ている。
The output terminals of the AND gates 20_1, 20_2, ... Are connected to the first flag registers 23_1, 23_, respectively.
, ..., and the output terminals of the first flag registers 23_1, 23_2, ... Are connected to the output terminals of the second flag registers 24_1, 24_2 ,. Each second flag register 24_1, 24_
The output terminals of 2, ... Are connected to the priority encoder 16 shown in FIG. 14 (not shown in FIG. 17), and to the input terminals of the OR gates 21_2, 21_3, ... Corresponding to the memory words adjacent to the lower part of FIG. It is connected.

【0016】互いに対応する第1および第2のフラグレ
ジスタ23_1,24_1,;23_2,24_2,…
の各ペアが図14に示す各フラグレジスタ15_1,1
5_2,…に対応する。第1のフラグレジスタ23_
1,23_2,…と第2のフラグレジスタ24_1,2
4_2,…には、ともに、一致結果ラッチ制御線25に
出力される一致結果ラッチ信号S1が入力され、その一
致結果ラッチ信号S1により各データ入力端子から入力
された入力データがラッチされるが、第1のフラグレジ
スタ23_1,23_2,…には、一致結果ラッチ信号
51の立ち上がりaの時点における入力データがラッチ
され、第2のフラグレジスタ24_1,24_2,…に
は、一致結果ラッチ信号S1の立ち下がりbの時点の入
力データがラッチされる。
First and second flag registers 23_1, 24_1, 23_2, 24_2, ... Corresponding to each other
14 is associated with each flag register 15_1, 1 shown in FIG.
It corresponds to 5_2, ... First flag register 23_
1, 23_2, ... and the second flag registers 24_1, 24_2
A match result latch signal S1 output to the match result latch control line 25 is input to both 4_2, ..., And the input data input from each data input terminal is latched by the match result latch signal S1. Input data at the rising edge a of the match result latch signal 51 is latched in the first flag registers 23_1, 23_2, ..., And the match result latch signal S1 rises in the second flag registers 24_1, 24_2 ,. The input data at the time of falling b is latched.

【0017】以上のように構成された連想メモリにおい
ては、以下のようにして一致検索が行われる。尚、ここ
では図示のように、各メモリワード11_1,11_
2,11_3,11_4,11_5,11_6…には、
各参照データA,B,C,D,C,F,…が格納されて
いるものとする。ここで、各参照データを単独で検索す
る際は、参照データREF_DATAを入力して検索を
行う際に、初回検索制御線22に初回検索タイミング信
号S2を出力する。ここでは、参照データREF_DA
TAとしてデータ‘B’を入力したものとすると、デー
タ‘B’が格納されたワードメモリ11_2に対応する
一致線14_2に論理‘1’の一致信号が出力されてア
ンドゲート20_2に入力され、また、これとともに初
回検索タイミング信号S2がオアゲート21_2を経由
してアンドゲート20_2に入力されるため、アンドゲ
ート20_2から論理‘1’の信号が出力される。また
このとき、他の一致線14_1;14_3,14_4,
…には論理‘0’の信号が出力されるため、それに対応
する他のアンドゲート20_1;20_3,20_4,
…からは論理‘0’の信号が出力される。
In the associative memory configured as described above, a match search is performed as follows. Here, as shown in the figure, each memory word 11_1, 11_
2, 11_3, 11_4, 11_5, 11_6 ...
It is assumed that each reference data A, B, C, D, C, F, ... Is stored. Here, when searching each reference data independently, when inputting the reference data REF_DATA and performing the search, the initial search timing signal S2 is output to the initial search control line 22. Here, the reference data REF_DA
Assuming that the data “B” is input as TA, a match signal of logic “1” is output to the match line 14_2 corresponding to the word memory 11_2 in which the data “B” is stored and is input to the AND gate 20_2. At the same time, since the first search timing signal S2 is input to the AND gate 20_2 via the OR gate 21_2, the AND gate 20_2 outputs a signal of logic "1". At this time, the other match lines 14_1; 14_3, 14_4
Since a signal of logic “0” is output to ..., Other AND gates 20_1; 20_3, 20_4 corresponding thereto are output.
A signal of logic "0" is output from.

【0018】アンドゲート20_2から出力された論理
‘1’の信号は、一致結果ラッチ制御線25に出力され
た一致結果ラッチ信号S1の立ち上がりaのタイミング
で第1のフラグレジスタ23_2にラッチされ、それに
引き続くの一致結果ラッチ信号S1の立ち下がりbのタ
イミングで第2のフラグレジスタ24_2にラッチされ
る。
The signal of logic '1' output from the AND gate 20_2 is latched in the first flag register 23_2 at the timing of the rising edge a of the match result latch signal S1 output to the match result latch control line 25, and It is latched in the second flag register 24_2 at the timing of the subsequent trailing edge b of the match result latch signal S1.

【0019】また第1のフラグレジスタ23_2および
第2のフラグレジスタ24_2に論理‘1’の信号がラ
ッチされる各タイミングで、他の第1フラグレジスタ2
3_1;23_3,23_4,…、および他の第2のフ
ラグレジスタ24_1;24_3,;24_4,…には
論理‘0’の信号がラッチされる。このようにして各第
2のフラグレジスタ24_1,24_2,24_3,…
にラッチされた論理‘0’,‘1’,‘0’,…の信号
が図5に示すプライオリティエンコーダ16に入力さ
れ、ワードメモリ11_2のアドレス信号ADが得られ
る。
Further, at each timing when the signal of logic "1" is latched in the first flag register 23_2 and the second flag register 24_2, another first flag register 2
3_1; 23_3, 23_4, ... And the other second flag registers 24_1; 24_3; 24_4, ... Latch a signal of logic '0'. In this way, each second flag register 24_1, 24_2, 24_3, ...
The signals of the logic "0", "1", "0", ... Latched by are input to the priority encoder 16 shown in FIG. 5, and the address signal AD of the word memory 11_2 is obtained.

【0020】次に、データ幅が拡張された検索を行う場
合について説明する。ここでは、2ワードに拡張され
た、データ‘B’とデータ‘C’からなる2ワードデー
タを検索する場合について説明する。この場合、先ず上
記と同様にして、データ‘B’の検索を行う。これによ
り、ワードメモリ11_2に対応する第1および第2の
フラグレジスタ23_2,24_2に論理‘1’の信号
がラッチされる。次に参照データREF_DATAとし
てデータ‘C’を入力して検索を行うが、このときは初
回検索制御線22には初回検索タイミング信号S2は出
力せずに、初回検索制御線22は論理‘0’の状態に保
っておく。参照データREF_DATAとしてデータ
‘C’を入力して検索を行うと、図示の2つのワードメ
モリ11_3,11_5にそれぞれ対応する一致線14
_3,14_5に論理‘1’の一致信号が出力される
が、オアゲート21_3には、第2のフラグレジスタ2
4_2にラッチされている論理‘1’の信号が入力され
ているため一致線14_3の一致信号はアンドゲート2
0_3を通過し、第1および第2のフラグレジスタ23
_3,24_3に、一致を表わす論理‘1’の信号がラ
ッチされる。一方オアゲート21_5には、第2のフラ
グレジスタ24_4にラッチされている論理‘0’の信
号が入力されているため一致線14_5の一致信号はア
ンドゲート20_5で遮断され、第1および第2のフラ
グレジタ23_5,24_5には不一致を表わす論理
‘0’の信号がラッチされることになる。このようにし
て、データ‘B’とデータ‘C’のペアからなる2ワー
ドデータの一致検出が行われる。3ワード以上のデータ
の一致検出も同様にして行われる。
Next, a case where a search with an expanded data width is performed will be described. Here, a case will be described where 2-word data consisting of data “B” and data “C” expanded to 2 words is searched. In this case, first, data “B” is searched in the same manner as above. As a result, the signal of logic "1" is latched in the first and second flag registers 23_2 and 24_2 corresponding to the word memory 11_2. Next, the data “C” is input as the reference data REF_DATA to perform the search, but at this time, the first search control line 22 does not output the first search timing signal S2, and the first search control line 22 has the logic “0”. Keep the condition. When data “C” is input as the reference data REF_DATA and a search is performed, the matching lines 14 corresponding to the two word memories 11_3 and 11_5 shown in FIG.
A match signal of logic "1" is output to _3 and 14_5, but the second flag register 2 is output to the OR gate 21_3.
Since the signal of logic "1" latched by 4_2 is input, the match signal of the match line 14_3 is AND gate 2
0_3, and the first and second flag registers 23
A signal of logic "1" representing a match is latched at _3 and 24_3. On the other hand, since the signal of logic '0' latched by the second flag register 24_4 is input to the OR gate 21_5, the match signal of the match line 14_5 is blocked by the AND gate 20_5, and the first and second flag registers 23_5 and 24_5 are latched with a signal of logic "0" indicating a mismatch. In this way, coincidence detection of 2-word data composed of a pair of data “B” and data “C” is performed. Matching detection of data of 3 words or more is similarly performed.

【0021】図17に示す連想メモリは、データ幅拡張
機能を備えてはいるが、2ワード,3ワード等に拡張さ
れるデータは、互いに隣接したメモリワードに所定の順
序で格納されている必要があり、互いに離れたメモリワ
ードに格納されている場合や逆の順序、例えばデータ
‘C’,データ‘B’の順序に格納されている場合には
複数のデータを結合した一致検出を行うことはできな
い。すなわち、上述のデータ幅拡張機能は、群構造を成
すデータの検索には不向きである。
Although the associative memory shown in FIG. 17 has a data width expansion function, data expanded to 2 words, 3 words, etc. must be stored in adjacent memory words in a predetermined order. If they are stored in memory words separated from each other or in the reverse order, for example, in the order of data'C 'and data'B', then matching detection combining a plurality of data is performed. I can't. That is, the above-described data width expansion function is not suitable for searching for data having a group structure.

【0022】また、連想メモリを用いて検索を行う場合
において、群構造のデータを取扱うか否かに拘らず、従
来より、例えばデータ幅拡張機能が内蔵された連想メモ
リ(図17参照)を用いてそのデータ幅拡張機能を用い
た検索を行う場合等、従来より、連続した複数回からな
る一連の検索を行うことにより、検索の目的を達成する
場合があるが、群構造のデータを検索対象とする場合も
同様に、例えば上述したように、1つのデータセット内
の複数のデータの一致を検索する場合等、連続した複数
回の検索からなる一連の検索を行うことにより検索の目
的が達成される場合がある。その場合に生じる第3の問
題点として、連想メモリをどのように構成すると、従来
と比べ複雑なデータ構造を有する群構造のデータの、順
次連続する複数回の検索を効率良く行なうことができる
かという問題がある。つまり、ランダムで複数の検索が
必要な群構造のデータを高速にかつフレキシブルに検索
するような連想メモリの構造や利用方法に関しては全く
知られていなかった。
Further, in the case of performing a search using the associative memory, regardless of whether or not group structure data is handled, conventionally, for example, an associative memory (see FIG. 17) having a built-in data width expansion function is used. In some cases, the search purpose may be achieved by performing a series of multiple consecutive searches, such as when performing a search using the data width expansion function. In the same manner, the purpose of the search is achieved by performing a series of searches consisting of a plurality of continuous searches, for example, when searching for a match of a plurality of data in one data set, as described above. May be done. As a third problem that arises in that case, how is the associative memory configured so that it is possible to efficiently perform a plurality of consecutive continuous searches for group-structured data having a more complex data structure than in the past? There is a problem. In other words, nothing has been known about the structure of the associative memory and the method of using it, which searches for data of a group structure that requires random and plural searches at high speed and flexibly.

【0023】本発明は、連想メモリを用いて群構造のデ
ータ検索を行なう場合の上述の各種問題点の存在に鑑
み、群構造のデータの検索に適した連想メモリの使用方
法、および群構造のデータの格納、検索に適した連想メ
モリの構造を新たに提供することを目的とする。
In view of the above-described various problems in performing group structure data retrieval using an associative memory, the present invention uses a content addressable memory suitable for group structure data retrieval and a group structure data retrieval method. The purpose is to newly provide a structure of an associative memory suitable for data storage and retrieval.

【0024】[0024]

【課題を解決するための手段】上記目的を達成する本発
明の連想メモリの使用方法は、配列された複数の各メモ
リワードそれぞれに各ディジタルデータを記憶してお
き、参照データが入力され、入力された参照データの全
部もしくは所定の一部のビットパターンと一致するビッ
トパターンを有するディジタルデータが記憶されたメモ
リワードを検索する連想メモリの使用方法において、上
記連想メモリに、各メモリワードがそれぞれ二分された
一方の第1の領域にディジタルデータを格納するととも
に、各メモリワードの、第1の領域を除く第2の領域に
そのディジタルデータの属性を表わす属性データを記憶
させ、上記連想メモリに所定の属性データと所定のディ
ジタルデータとの組を前記参照データとして入力するこ
とにより、その連想メモリに、入力された所定のディジ
タルデータに対応するとともに入力された所定の属性デ
ータが表わす属性を有するディジタルデータが記憶され
たメモリワードの検索を行わせることを特徴とするもの
である。
A method of using an associative memory according to the present invention for achieving the above object is to store digital data in each of a plurality of arranged memory words, input reference data, and input. In a method of using an associative memory for retrieving a memory word in which digital data having a bit pattern that matches all or a predetermined part of the reference data that has been stored, each memory word is divided into two parts in the associative memory. Digital data is stored in one of the stored first areas, and attribute data representing the attributes of the digital data is stored in the second area of each memory word excluding the first area, and the predetermined value is stored in the associative memory. By associating the set of attribute data and predetermined digital data as the reference data, the association In Mori, it is characterized in that to perform the search of the memory word digital data is stored having a predetermined attribute represented by the attribute data input with corresponding to a predetermined digital data input.

【0025】また本発明の連想メモリのうち第1の連想
メモリは、配列された複数の各メモリワードそれぞれに
各ディジタルデータを記憶しておき、参照データが入力
され、入力された参照データの全部もしくは所定の一部
のビットパターンと一致するビットパターンを有するデ
ィジタルデータが記憶されたメモリワードを検索する連
想メモリにおいて、 (1) 各メモリワードが、各ディジタルデータを記憶
する第1の領域と、その第1の領域に記憶されるディジ
タルデータの属性を表わす属性データが該各メモリワー
ドのアドレス順に属性の数に応じた周期で循環的に繰り
返すビットパターンを有することを特徴とする。
The first associative memory of the associative memory of the present invention stores digital data in each of a plurality of arranged memory words, receives reference data, and receives all the input reference data. Alternatively, in an associative memory that searches for a memory word in which digital data having a bit pattern that matches a predetermined part of the bit pattern is stored, (1) each memory word has a first area in which each digital data is stored; The attribute data representing the attribute of the digital data stored in the first area has a bit pattern which cyclically repeats in a cycle corresponding to the number of attributes in the address order of each memory word.

【0026】この第1の連想メモリにおいて、上記各メ
モリワードが、それら各メモリワードのアドレス順に属
性の数に応じた周期で循環的に繰り返すビットパターン
を有する属性データを各メモリワードを構成する各第2
の領域に固定的に記憶するものであってもよい。また本
発明の連想メモリのうち第2の連想メモリは、配列され
た複数の各メモリワードそれぞれに各ディジタルデータ
を記憶しておき、参照データが入力され、入力された参
照データの全部もしくは所定の一部のビットパターンと
一致するビットパターンを有するディジタルデータが記
憶されたメモリワードを検索する連想メモリにおいて、 (2) 配列された複数の各メモリワードそれぞれに付
されたアドレスの全範囲のうち、入力される参照データ
との一致比較の対象とされるメモリワードのアドレスの
範囲を設定する検索アドレス範囲設定回路を備えたこと
を特徴とするものである。
In the first associative memory, each memory word constitutes attribute data having a bit pattern which cyclically repeats in a cycle corresponding to the number of attributes in the address order of each of the memory words. Second
May be fixedly stored in the area. A second associative memory of the associative memory of the present invention stores digital data in each of a plurality of arranged memory words, receives reference data, and inputs all or predetermined reference data. In an associative memory that searches a memory word in which digital data having a bit pattern that matches a part of a bit pattern is stored, (2) out of the entire range of addresses assigned to each of the plurality of arranged memory words, It is characterized in that a search address range setting circuit for setting an address range of a memory word to be matched and compared with input reference data is provided.

【0027】また、上記目的を達成する本発明の第3の
連想メモリは、 (3_1)複数のデータ群それぞれに属する複数の格納
データを各格納データ毎に記憶する複数のメモリワード (3_2)所定のメモリワードに記憶された格納データ
と入力された参照データとの一致が検出されたときに、
その所定のメモリワードに対応する一致線に一致を表わ
す一致信号を出力する第1のモードと、今回の検索時に
所定のメモリワードにおいて一致が検出され、かつ、前
回の検索時に、上記所定のメモリワードに記憶された格
納データが属するデータ群を構成する格納データをそれ
ぞれ記憶する任意のメモリワードにおいて一致が検出さ
れていたときに、上記所定のメモリワードに対応する一
致線に一致信号を出力する第2のモードとを有する一致
検出回路を備えたことを特徴とするものである。
The third associative memory of the present invention which achieves the above object is (3_1) a plurality of memory words (3_2) storing a plurality of stored data belonging to each of a plurality of data groups for each stored data. When a match between the stored data stored in the memory word of and the input reference data is detected,
A first mode in which a match signal representing a match is output to a match line corresponding to the predetermined memory word, and a match is detected in a predetermined memory word during the current search, and the predetermined memory is detected during the previous search. When a match is detected in any of the memory words that respectively store the stored data forming the data group to which the stored data stored in the word belongs, a match signal is output to the match line corresponding to the predetermined memory word. It is characterized in that a coincidence detection circuit having a second mode is provided.

【0028】上記本発明の第3の連想メモリは、その1
つの態様として、以下のように構成することができる。
すなわち、そのように構成された本発明の第3の連想メ
モリは、 (3_3)各々が、属性とデータとのペアからなる複数
の格納データの集合からなる複数のデータ群それぞれに
属する複数の格納データを各格納データ毎に記憶する複
数のメモリワード (3_4)複数のメモリワードそれぞれに対応して記憶
された格納データ中の属性と、入力された、属性とデー
タとのペアからなる参照データ中の属性との一致不一致
を検出する属性一致検出回路 (3_5)複数のメモリワードそれぞれに対応して記憶
された、属性とデータとのペアからなる格納データ中の
データと、入力された、属性とデータとのペアからなる
参照データ中のデータとの一致不一致を検出するデータ
一致検出回路 (3_6)複数のメモリワードそれぞれに対応して備え
られた、格納データと参照データとの一致不一致の情報
を格納するレジスタ (3_7)同一のデータ群を構成する各格納データをそ
れぞれ記憶するメモリワードからなるメモリワード群毎
に備えられたデータ線 (3_8)複数のメモリワードそれぞれに対応して備え
られた、対応する上記属性一致検出回路により検索時に
属性の一致が検出されたことを受けて、対応する上記レ
ジスタの一致もしくは不一致の検索結果を上記データ線
に伝達する第1のスイッチ回路 (3_9)複数のメモリワードそれぞれに対応して備え
られた、対応する前記属性一致検出回路および上記デー
タ一致検出回路により今回の検索時に属性及びデータの
双方の一致が検出され、かつ、上記データ線に前回の検
索時における一致を表わす情報が出力されているとき
に、対応する上記レジスタに今回の検索における一致を
表わす情報を伝達するゲート回路 (3_10)上記複数のメモリワードそれぞれに対応し
て備えられた、対応する上記属性一致検出回路により今
回の検索時に属性の一致が検出されたことを受けて、上
記データ線に出力されている前回の検出時における一致
もしくは不一致を表わす情報を、対応する上記ゲート回
路に伝達する第2のスイッチ回路を具備することを特徴
とするものである。
The third associative memory of the present invention is the first one.
As one aspect, it can be configured as follows.
That is, in the third associative memory of the present invention configured as described above, each of (3_3) includes a plurality of storages belonging to a plurality of data groups each including a plurality of stored data sets each including a pair of an attribute and data. A plurality of memory words for storing data for each stored data (3_4) Among reference data composed of an attribute in the stored data stored corresponding to each of the plurality of memory words and an input pair of the attribute and the data (3_5) Attribute match detection circuit for detecting a match / mismatch with the attribute of (3_5) The data in the stored data composed of a pair of the attribute and the data stored corresponding to each of the plurality of memory words, and the input attribute Data coincidence detection circuit (3_6) for detecting coincidence / non-coincidence with data in reference data formed of a pair with data (3_6) (3_7) a register for storing information on whether or not the stored data and the reference data match each other. A data line provided for each memory word group including memory words respectively storing the respective stored data forming the same data group ( 3_8) In response to the matching of the attributes detected at the time of searching by the corresponding attribute matching detection circuit provided corresponding to each of the plurality of memory words, the matching or mismatching search result of the corresponding register is displayed as described above. First switch circuit for transmitting to data line (3_9) Corresponding to each of the plurality of memory words, the corresponding attribute coincidence detection circuit and the corresponding data coincidence detection circuit are used to detect both the attribute and the data at the time of this search. When a match is detected and the information indicating the match from the previous search is output to the above data line Gate circuit for transmitting information indicating a match in the current search to the corresponding register (3_10) Attribute match at the time of the current search by the corresponding attribute match detection circuit provided corresponding to each of the plurality of memory words Is detected, the second switch circuit is provided for transmitting to the corresponding gate circuit the information indicating the match or mismatch at the time of the previous detection, which is output to the data line. To do.

【0029】この第3の連想メモリにおいて、複数のメ
モリワードそれぞれに対応して備えられた、対応するメ
モリワードに記憶された格納データ中の属性が所定の属
性であるか否かを判別する属性判別回路を具備し、かつ
上記データ線が、複数のメモリワード群に跨って互いに
隣接する前記メモリワード間で、複数のメモリワードそ
れぞれに対応して備えられた第3のスイッチ回路を介し
てシリーズに接続される構成を具備することが好まし
い。
In the third associative memory, an attribute which is provided for each of the plurality of memory words and determines whether the attribute in the stored data stored in the corresponding memory word is a predetermined attribute or not. A series of data lines including a discriminating circuit and the data lines between the memory words which are adjacent to each other across a plurality of memory word groups and which are provided corresponding to the plurality of memory words, respectively. It is preferable to have a configuration connected to.

【0030】また、上記第3のスイッチ回路が、上記属
性判別回路または各メモリワード毎に備えられたデータ
線接続制御回路で制御されるものであることが好まし
い。さらに、上記目的を達成する本発明の第4の連想メ
モリは、複数の各メモリワードそれぞれに各格納データ
を記憶しておき、複数の参照データが順次入力され、こ
の順次入力される参照データと結合することにより各格
納データと比較される参照データを生成するための各検
索補助データを順次出力する検索補助データ順次出力手
段を有し、所定の格納データが記憶されたメモリワード
の検索を行うことを特徴とするものである。
Further, it is preferable that the third switch circuit is controlled by the attribute discriminating circuit or the data line connection control circuit provided for each memory word. Further, in the fourth associative memory of the present invention which achieves the above object, each stored data is stored in each of a plurality of memory words, and a plurality of reference data are sequentially input. A search auxiliary data sequential output unit that sequentially outputs each search auxiliary data for generating reference data to be compared with each stored data by combining is provided, and a memory word in which predetermined stored data is stored is searched. It is characterized by that.

【0031】またこの検索補助データ順次出力手段は、
一連の検索補助データを格納する検索補助データレジス
タ群と、この検索補助データレジスタ群を指示制御する
制御手段と、上記制御手段は、アドレスが定義され、参
照データとともに上記アドレスを表わすアドレスデータ
が入力され、参照データとともに入力されるアドレスデ
ータと検索の回数とに基づいて、そのアドレスデータに
より指定される制御手段によって、検索補助データを順
次出力する構成とすることが好ましい。
The retrieval auxiliary data sequential output means is
Retrieval auxiliary data register group for storing a series of retrieval auxiliary data, control means for instructing and controlling the retrieval auxiliary data register group, and the control means, an address is defined, and address data representing the address is input together with reference data. It is preferable that, based on the address data input together with the reference data and the number of searches, the control means designated by the address data sequentially outputs the search assist data.

【0032】また、前記検索補助データ順次出力手段
は、一連の検索補助データを格納する検索補助データレ
ジスタ群と、この検索補助データレジスタ群を指示制御
する制御手段と、上記制御手段を指定するチャネル指定
データレジスタと、この指定データレジスタに格納され
た、チャネル設定データにより指定される前記制御手段
と、参照データの入力による検索の回数とに基づいて、
上記検索補助データを順次出力する構成としてもよい。
The search auxiliary data sequential output means includes a search auxiliary data register group for storing a series of search auxiliary data, a control means for indicating and controlling the search auxiliary data register group, and a channel for specifying the control means. Based on the designated data register, the control means designated by the channel setting data stored in the designated data register, and the number of searches by inputting the reference data,
The search assist data may be sequentially output.

【0033】また、上記本発明の第4の連想メモリにお
いて、上記検索補助データ順次出力手段の検索補助デー
タの出力順を初期化するシーケンスリセット信号を入力
するリセット端子を備えた構成とすることが好ましい。
Further, the fourth associative memory of the present invention may be provided with a reset terminal for inputting a sequence reset signal for initializing the output order of the search auxiliary data of the search auxiliary data sequential output means. preferable.

【0034】[0034]

【作用】本発明の連想メモリの使用方法は、各メモリワ
ードに各ディジタルデータとそのディジタルデータの属
性を表わす属性データとの双方を記憶させ、属性データ
とディジタルデータとの組を参照データとして入力して
検索を行うものであるため、所望の属性を有する、所望
のデータのみを検索することができる。
According to the method of using the associative memory of the present invention, each memory word stores both the respective digital data and the attribute data representing the attribute of the digital data, and the set of the attribute data and the digital data is inputted as the reference data. Since the search is performed by searching, only desired data having a desired attribute can be searched.

【0035】また、本発明の第1の連想メモリは、各メ
モリワードの属性データが各メモリワードのアドレス順
に属性の数に応じた周期で循環的に繰り返すビットパタ
ーンであり、これにより、はじめて群データのフレキシ
ブルで高速な検索に適した連想メモリが実現する。さら
に本発明の第2の連想メモリは、一致比較の対象とされ
るメモリワードのアドレス範囲を設定する研削アドレス
範囲設定回路を備えたものであるため、各属性に対応す
るデータを各アドレス範囲内のメモリワードに記憶させ
ておき、検索時には所望の属性を有するデータが記憶さ
れているアドレス範囲を設定し、そのアドレス範囲内の
メモリワードのみを検索対象とすることにより、所望の
属性の付された所望のデータのみを検索することができ
る。
The first associative memory of the present invention is a bit pattern in which the attribute data of each memory word is cyclically repeated in a cycle corresponding to the number of attributes in the address order of each memory word. An associative memory suitable for flexible and high-speed data retrieval is realized. Further, since the second associative memory of the present invention is provided with the grinding address range setting circuit for setting the address range of the memory word to be subjected to the coincidence comparison, the data corresponding to each attribute is stored in each address range. Stored in the memory word of, the address range in which the data having the desired attribute is stored is set at the time of search, and only the memory word within the address range is set as the search target, so that the desired attribute is added. Only desired data can be searched.

【0036】またこの第2の連想メモリの場合、ハード
ウェア構成は同一のまま、各属性に対応するアドレス範
囲をどのように設定するかだけを使用前に定めるだけで
属性の数の異なるデータを格納して検索することがで
き、極めて柔軟性に富んだ連想メモリが構成される。本
発明の第3の連想メモリは、上記(3_2)の一致検出
回路が上述した第2のモードを備えており、具体的に
は、属性とデータとのペアからなる格納データを記憶し
ておき、また検索にあたっては属性とデータとのペアか
らなる参照データを入力して検索を行うようにし、また
上記(3_7)のデータ線を備え、上記(3_8)の第
1のスイッチ回路でデータ線に前回の検索時に一致が検
出されたか否かを出力し、上記(3_10)の第2のス
イッチ回路で今回の検索時に属性が一致したことを受け
てデータ線の信号をゲート回路に取り込むようにしたた
め、同一のメモリワード群内のメモリワードに格納され
た格納データの任意の組合わせによる検索が可能とな
る。
Further, in the case of the second associative memory, while the hardware configuration remains the same, only how to set the address range corresponding to each attribute is determined before use, and data having a different number of attributes can be stored. An associative memory that can be stored and retrieved and is extremely flexible is constructed. The third associative memory of the present invention has the above-mentioned second mode of the coincidence detection circuit of (3_2), and specifically, stores stored data including a pair of an attribute and data. In addition, in the search, reference data composed of a pair of attribute and data is input to perform the search, and the data line of (3_7) is provided, and the data line is connected to the data line by the first switch circuit of (3_8). It outputs whether the match was detected during the previous search, and the second switch circuit of (3_10) above takes in the signal of the data line to the gate circuit in response to the match of the attributes during the current search. , It is possible to search the stored data stored in the memory words in the same memory word group by an arbitrary combination.

【0037】また、本発明の第3の連想メモリは、1つ
のデータ群(データセット)を構成するデータの数に合
せて各データ線の長さを固定的に定めておくものであっ
てもよく、あるいは、データ線の途中に多数のスイッチ
回路とそれらのスイッチ回路をオン,オフするための多
数本の制御線を備えておき、1つのデータ群を構成する
データの数に対応してそれらのスイッチ回路をオン,オ
フすることにより1本あたりのデータ線の長さを可変す
るものであってもよいが、各メモリワードに対して上記
第3のスイッチ回路を備えておき、各メモリワードに記
憶された属性または新たな属性ビットに応じてそれら第
3のスイッチ回路をオン,オフする構成を備えると、各
メモリワードに各格納データを格納させるという本来行
われる作業だけで、1つのデータ群を構成するデータの
数に応じて自動的にデータ線が形成される。また、この
場合データ数の異なるデータ群が混在していても適応的
にデータ線が形成されることになる。
Further, in the third associative memory of the present invention, the length of each data line may be fixedly set in accordance with the number of data constituting one data group (data set). Well, or in the middle of the data line, a large number of switch circuits and a large number of control lines for turning these switch circuits on and off are provided, and the number of switch circuits corresponding to the number of pieces of data forming one data group is set. The length of one data line may be changed by turning on / off the switch circuit of the above. However, the third switch circuit is provided for each memory word and each memory word is provided. If the third switch circuit is turned on and off in accordance with the attribute stored in or the new attribute bit, it is only necessary to store each stored data in each memory word. Automatically data lines are formed in accordance with the number of data constituting one data group. Further, in this case, the data lines are adaptively formed even if the data groups having different numbers of data are mixed.

【0038】本発明の第4の連想メモリは、例えば上述
したマスクデータや属性データ等の検索補助データを書
込み自在に複数記憶しておき、検索にあたっては参照デ
ータを入力するとともにどの検索補助データを使用する
かを表わすデータを入力するようにしたたため、一連の
検索中に、例えばマスクデータを書き換えること等の手
間は不要であり、検索のための手順が簡単化され、一連
の検索を行う際の検索速度の向上も図られる。
In the fourth associative memory of the present invention, a plurality of search auxiliary data such as the mask data and the attribute data described above are stored in a writable manner, and when searching, reference data is input and which search auxiliary data is input. Since the data indicating whether or not to use is input, there is no need to rewrite the mask data during a series of searches, and the search procedure is simplified. The search speed of can be improved.

【0039】さらにもう1つの例では、例えば上述した
マスクデータや属性データ等の検索補助データを書込み
自在に複数記憶しておくものであるが、前述のものと異
なる点として、検索補助データを制御する制御手段を指
定するためのデータを書換え自在に格納する指定データ
レジスタを備えたため、検索にあたっては、どの検索補
助データを使用して検索を行うかをいちいち指定する必
要がなく、検索に使用する検索補助データを変更すると
きにのみ新たなデータを指定データレジスタに入力すれ
ばよく、検索のための手順の一層の簡単化が図られる。
In yet another example, a plurality of search auxiliary data such as the mask data and the attribute data described above are stored in a writable manner. However, the difference from the above is that the search auxiliary data is controlled. Since it has a designated data register that rewritably stores data for designating the control means to be used, it is not necessary to specify which search auxiliary data to use for searching, and it is used for searching. New data need only be input to the designated data register only when the search assist data is changed, and the search procedure can be further simplified.

【0040】複数回の検索からなる一連の検索を行う場
合、その検索のパターン、すなわち、最初はある第1の
マスクデータとある第1の属性データを用いて検索を行
い、次に上記と同じ第1のマスクデータを用いるととも
に上記と異なる第2の属性データを用いて検索を行う
等、検索パターンをあらかじめ類型化できる場合が多
い。したがって本発明の第4の連想メモリにおいて、検
索補助データ群を指示する制御手段と、この制御手段を
指定するアドレスの考え方を採り入れることにより、そ
のアドレスデータを参照データとともに順次入力するだ
けで一連の検索が行われ、あるいはチャネル指定データ
を一度入力し、あとは参照データを順次入力するだけで
一連の検索が行われ、検索の手順が一層簡単化される。
When performing a series of searches consisting of a plurality of searches, the search pattern, that is, first the first mask data and the first attribute data, is used, and then the same as above. In many cases, the search pattern can be typified in advance, such as using the first mask data and performing a search using the second attribute data different from the above. Therefore, in the fourth associative memory of the present invention, by adopting the concept of the control means for designating the search auxiliary data group and the address designating this control means, it is possible to sequentially input the address data together with the reference data. A search is performed, or a series of searches are performed by only once inputting channel designation data and then sequentially inputting reference data, and the search procedure is further simplified.

【0041】また、検索補助データ順次出力手段の検索
補助データ出力順を初期化するリセット端子を備える
と、前回の検索が終了した後、必要時にのみリセット
し、新たな検索を開始することができる。
Further, if a reset terminal for initializing the search auxiliary data output order of the search auxiliary data sequential output means is provided, it is possible to reset only when necessary after the previous search is completed and start a new search. .

【0042】[0042]

【実施例】以下、本発明の実施例について説明する。図
1は、本発明の一実施例のメモリ構造図であり、従来例
における図16に対応するものである。汎用の連想メモ
リを構成する、それぞれがmビット(例えば16ビッ
ト)からなるメモリワードの上位kビット(例えば2ビ
ット)を属性を表わす属性データを格納する領域(本発
明にいう第2の領域)と定め、また残りのm−kビット
(例えば16−2=14ビット)を、それらの属性の付
された本来のデータを格納しておくべき領域(本発明に
いう第1の領域)と定め、各メモリワードに属性とデー
タとの双方を格納する。そして検索にあたっては、属性
とデータとの双方で検索を行う。例えば「属性0」とデ
ータ‘A’との双方で検索を行えば、図1の最上段に示
されたデータが検索されることになる。
EXAMPLES Examples of the present invention will be described below. FIG. 1 is a memory structure diagram of an embodiment of the present invention and corresponds to FIG. 16 in the conventional example. An area (second area referred to in the present invention) for storing attribute data representing the upper k bits (for example, 2 bits) of a memory word, each of which is composed of m bits (for example, 16 bits), which constitutes a general-purpose associative memory. And the remaining m−k bits (for example, 16−2 = 14 bits) are defined as an area (first area in the present invention) in which original data with those attributes is to be stored. , Store both attributes and data in each memory word. In searching, both the attribute and the data are searched. For example, if a search is performed for both "attribute 0" and data "A", the data shown at the top of FIG. 1 will be searched.

【0043】図2は、上記の考え方をさらに説明するた
めの、連想メモリのブロック図である。尚、この連想メ
モリは、説明の都合上描き方がやや異なるのみであって
本質的には図14に示す連想メモリと同一のものである
が、説明に不必要なブロックの図示は一部省略されてい
る。また図14に示す連想メモリの各ブロックと同一の
ブロックには図14に付した番号と同一の番号が付され
ている。mビットからなる各メモリワード11_1,1
1_2,…,11_nの上位2ビットには属性データを
格納し、残りのm−2ビットに、各属性の付されたデー
タを格納する。そして検索にあたっては、参照データレ
ジスタ12の上位2ビットを検索用の属性データが格納
される属性データレジスタ12_1とし、参照データレ
ジスタ12の残りの部分(データレジスタ12_2)を
図5を参照して説明した際の、従来の意味における参照
データレジスタとし、この参照データレジスタ12に属
性データと従来の意味における参照データとを格納して
検索を行う。これによりその検索に用いられた属性デー
タが表わす属性が付された所望の格納データの検索が行
われる。即ち、属性の異なる同一の格納データの検索は
排除される。
FIG. 2 is a block diagram of an associative memory for further explaining the above concept. Note that this associative memory is basically the same as the associative memory shown in FIG. 14 in that the drawing method is slightly different for convenience of description, but some of the blocks unnecessary for the description are omitted. Has been done. Further, the same blocks as the blocks of the associative memory shown in FIG. 14 are given the same numbers as those given in FIG. Each memory word 11_1, 1 consisting of m bits
Attribute data is stored in the upper 2 bits of 1_2, ..., 11_n, and data with each attribute is stored in the remaining m-2 bits. In the search, the upper 2 bits of the reference data register 12 are set as the attribute data register 12_1 in which the search attribute data is stored, and the remaining part of the reference data register 12 (data register 12_2) will be described with reference to FIG. At this time, the reference data register in the conventional meaning is used, and the attribute data and the reference data in the conventional meaning are stored in this reference data register 12 to perform a search. As a result, the desired stored data with the attribute represented by the attribute data used for the search is searched. That is, a search for the same stored data having different attributes is excluded.

【0044】次に属性データを固定的に記憶しておくよ
うに構成された本発明の第1の連想メモリの一実施例に
ついて説明する。図2は、本発明の第1の連想メモリの
一実施例の説明にもそのまま用いることができるが、各
メモリワード11_1,11_2,…,11_nの構成
が従来の汎用の連想メモリのメモリワードと異なってい
る。
Next, an embodiment of the first associative memory of the present invention, which is configured to store the attribute data fixedly, will be described. Although FIG. 2 can be used as it is for the description of one embodiment of the first associative memory of the present invention, the configuration of each memory word 11_1, 11_2, ..., 11_n corresponds to that of a conventional general-purpose associative memory. Is different.

【0045】図3は、本発明の第1の連想メモリの一実
施例の、1つのメモリワードの構成を示す回路図であ
る。この回路は、SRAMを基本とし、かつ参照データ
との一致をNAND型一致検出回路で検出する回路構成
の一例である。図示のメモリワードには、第1の属性ビ
ットセル120_1と第2の属性ビットセル120_2
からなるビットセル群120と、mビット(例えば16
ビット)のSRAM構造のメモリセル121_1,…,
121_mからなるメモリセル群121が形成されてい
る。
FIG. 3 is a circuit diagram showing the structure of one memory word in one embodiment of the first associative memory of the present invention. This circuit is an example of a circuit configuration based on SRAM and in which a match with reference data is detected by a NAND type match detection circuit. The illustrated memory word includes a first attribute bit cell 120_1 and a second attribute bit cell 120_2.
A bit cell group 120 consisting of
Bit) SRAM structure memory cells 121_1, ...,
A memory cell group 121 including 121_m is formed.

【0046】第1の属性ビットセル120_1には、ビ
ット線Zb1とビットバー線Zb1_ の間に互いにシリ
アルに接続された2つのトランジスタT1,T2が形成
されており、これら2つのトランジスタT1,T2の接
続点にトランジスタTC1_1のゲート電極が接続され
ている。トランジスタT1のゲートは論理‘1’に設定
されており、トランジスタT2のゲートは論理‘0’に
設定されている。このとき、図2に示す属性検索レジス
タ12_1に接続された、ビット線Zb1に‘1’、ビ
ットバー線Zb1_ にその反転信号である‘0’が印加
されると、トランジスタT1がオンし、ビット線Zb1
の‘1’がトランジスタTC1_1のゲートに印加され
このトランジスタTC1_1もオンとなる。この状態
が、第1の属性ビットセル120_1に関し、この第1
の属性ビットセル120_1に固定的に記憶された内容
と入力された検索用の属性データとが一致した状態であ
る。これとは逆に、ビット線Zb1に‘0’,ビットバ
ー線Zb1_ に‘1’が印加されると、トランジスタT
C1_1のゲートは‘0’となりこのトランジスタTC
1_1はオフとなる。これが、この第1の属性ビットセ
ル120_1に関し、不一致の状態である。
In the first attribute bit cell 120_1, two transistors T1 and T2 serially connected to each other are formed between the bit line Zb1 and the bit bar line Zb1_, and these two transistors T1 and T2 are connected. The gate electrode of the transistor TC1_1 is connected to the point. The gate of the transistor T1 is set to logic "1" and the gate of the transistor T2 is set to logic "0". At this time, when "1" is applied to the bit line Zb1 and the inverted signal "0" is applied to the bit bar line Zb1_, which is connected to the attribute search register 12_1 shown in FIG. 2, the transistor T1 is turned on and the bit Line Zb1
Is applied to the gate of the transistor TC1_1, and this transistor TC1_1 is also turned on. This state is related to the first attribute bit cell 120_1.
This is a state in which the contents fixedly stored in the attribute bit cell 120_1 of “1” and the input attribute data for search match. On the contrary, when "0" is applied to the bit line Zb1 and "1" is applied to the bit bar line Zb1_, the transistor T
The gate of C1_1 becomes "0" and this transistor TC
1_1 is turned off. This is a non-coincident state regarding the first attribute bit cell 120_1.

【0047】同様にして、図3に示す例では、第2の属
性ビットセル120_2は、そこに格納されたデータが
第1の属性ビットセル120_1に格納されたデータと
逆であり、属性検索レジスタ120_1からの信号が
‘0’(ビット線Zb2が‘0’、ビットバー線Zb2
_ が‘1’)のとき一致の状態となる。即ち、図3に示
す例では属性ビットの2ビットが(1,0)のとき、
‘一致’の状態となる。
Similarly, in the example shown in FIG. 3, in the second attribute bit cell 120_2, the data stored therein is the reverse of the data stored in the first attribute bit cell 120_1. Signal is "0" (bit line Zb2 is "0", bit bar line Zb2
When _ is '1'), the match state is obtained. That is, in the example shown in FIG. 3, when 2 of the attribute bits are (1, 0),
It will be in the state of'match '.

【0048】またメモリセル121_1,……121_
mは、トランジスタT1,T2のゲートに印加される値
がデコーダ17によってアクセスされるSRAMのQノ
ード,Q_ ノードによって設定されるものであり、一致
検出動作は、属性メモリセル120_1,120_2の
場合と同じである。互いにシリアルに接続されたトラン
ジスタTC1_1,TC1_2,TC2_1,…,TC
2_m等からなるNAND型一致検出回路30には、図
の左端に制御トランジスタTC0が構成され、図の右端
には一致検出アンプ31が構成されたものであり、制御
クロックφで制御される。先ず制御クロックφが‘0’
となり、一致検出アンプ31の入力ノードがプリチャー
ジトランジスタ31aでプリチャージされ、これにより
インバータ31bの出力は‘0’となる。このとき、制
御トランジスタTC0はオフ状態に保たれる。
Further, the memory cells 121_1, ... 121_
The value m applied to the gates of the transistors T1 and T2 is set by the Q node and Q_node of the SRAM accessed by the decoder 17, and the match detection operation is the same as that of the attribute memory cells 120_1 and 120_2. Is the same. Transistors TC1_1, TC1_2, TC2_1, ..., TC serially connected to each other
In the NAND type match detection circuit 30 including 2_m and the like, a control transistor TC0 is formed at the left end of the figure, and a match detection amplifier 31 is formed at the right end of the figure, which is controlled by the control clock φ. First, the control clock φ is '0'
Then, the input node of the coincidence detection amplifier 31 is precharged by the precharge transistor 31a, whereby the output of the inverter 31b becomes "0". At this time, the control transistor TC0 is kept in the off state.

【0049】各ビット線,各ビットバー線Zb1,Zb
1_ ;Zb2,Zb2_ :Db1,Db1_ …;Db
m,Dbm_ を介して属性検索レジスタ12_1と参照
データレジスタ12_2から参照データがあらかじめ入
力されており、前述の各属性ビットセル120_1,1
20_2および各メモリセル121_1,…,121_
mのそれぞれについて一致不一致が決定され、一致する
セルについては、NAND型一致検出回路を構成する、
対応する各トランジスタTC1_1,TC1_2,TC
2_1,…,TC2_mのゲート電圧が‘1’となり、
そのトランジスタがオンする。
Each bit line, each bit bar line Zb1, Zb
1_; Zb2, Zb2_: Db1, Db1 _...; Db
Reference data is previously input from the attribute search register 12_1 and the reference data register 12_2 via m and Dbm_, and each of the above-mentioned attribute bit cells 120_1, 1
20_2 and each memory cell 121_1, ..., 121_
A match / mismatch is determined for each of m, and a NAND-type match detection circuit is configured for the matched cells.
Corresponding transistors TC1_1, TC1_2, TC
The gate voltage of 2_1, ..., TC2_m becomes "1",
The transistor turns on.

【0050】この状態で制御クロックφが‘1’になる
と、全てのセルが一致したメモリワードのみに対応する
NAND型一致検出回路31のインバータ31bの入力
ノードがディスチャージされ、このインバータ31bか
ら‘1’の一致信号が出力され、対応する一致フラグレ
ジスタ15に‘1’が格納されることになる。このと
き、メモリセル121_1,…,121_mに格納され
た格納データだけでなく属性データの一致がなければ一
致信号は得られないことになる。したがってこの属性デ
ータを各データセットを構成する各データの属性に合わ
せて定義しておくことにより、各データセットの各属性
毎の検索が可能となる。このように属性データをあらか
じめハードウェア的に作り込んだ連想メモリにおいて
は、図2に示す属性検索レジスタ12_1には制御デー
タの1つとして属性データをセットすればよく、したが
ってこの連想メモリを用いることにより連想メモリの1
ワード分のビット長を減らすことなく外部とのアクセス
を行うことのできるシステムを構成することができる。
When the control clock φ becomes "1" in this state, the input node of the inverter 31b of the NAND type match detection circuit 31 corresponding to only the memory word in which all the cells match is discharged, and the inverter 31b outputs "1". A match signal of "1" is output, and "1" is stored in the corresponding match flag register 15. At this time, a match signal cannot be obtained unless there is a match between not only the stored data stored in the memory cells 121_1, ..., 121_m but also the attribute data. Therefore, by defining this attribute data in accordance with the attributes of each data forming each data set, it becomes possible to search for each attribute of each data set. In the associative memory in which the attribute data is preliminarily created in hardware as described above, the attribute data may be set as one of the control data in the attribute search register 12_1 shown in FIG. 2. Therefore, this associative memory should be used. By associative memory 1
It is possible to configure a system capable of accessing the outside without reducing the bit length for words.

【0051】図4は、本発明の第2の連想メモリのメモ
リ構造図である。ここでは、多数のメモリワードが属性
0,1,2,3の各領域に分けられており、各データセ
ットは、各領域にばらばらに格納されている。例えば、
図1に示す最上段のデータセット(A,A,B,C)
は、図4では、属性0,1,2,3の各領域内のそれぞ
れの最上段の各メモリワードに分散されて格納されてい
る。
FIG. 4 is a memory structure diagram of the second associative memory of the present invention. Here, a large number of memory words are divided into areas of attributes 0, 1, 2, and 3, and each data set is stored in each area separately. For example,
The uppermost data set (A, A, B, C) shown in Fig. 1
4 are distributed and stored in the respective uppermost memory words in the respective areas of attributes 0, 1, 2, and 3.

【0052】以下に説明する本発明の第2の連想メモリ
の実施例において例えば属性1が付されたデータの検索
を行うには、属性1に対応する、メモリワードの領域の
みが検索対象とされる。具体的には、例えばデータセッ
トが100セットあったと仮定し、このとき連想メモリ
のアドレス範囲1〜100に各データセットのうちの属
性0のデータを格納し、アドレス範囲101〜200に
属性1のデータを格納し、アドレス範囲301〜400
に属性データ2のデータを格納し、アドレス範囲301
〜400に属性データ3のデータを格納するものとす
る。このとき、属性1が付されたデータに関し一致比較
を行うには、先ず属性1のデータが格納されたメモリワ
ードのアドレス範囲201〜300を設定し、その設定
されたアドレス範囲を検索対象とするものである。この
例を、以下図5を用いて説明する。
In the second associative memory embodiment of the present invention to be described below, for example, in order to retrieve the data with the attribute 1, only the area of the memory word corresponding to the attribute 1 is targeted for retrieval. It Specifically, for example, assuming that there are 100 data sets, at this time, the data of attribute 0 of each data set is stored in the address ranges 1 to 100 of the associative memory, and the data of attribute 1 is stored in the address ranges 101 to 200. Stores data, address range 301-400
Store the data of attribute data 2 in the address range 301
The data of the attribute data 3 is stored in 400. At this time, in order to perform the coincidence comparison on the data with the attribute 1, the address ranges 201 to 300 of the memory words in which the data with the attribute 1 are stored are set, and the set address range is set as the search target. It is a thing. This example will be described below with reference to FIG.

【0053】図5は、本発明の第2の連想メモリの一実
施例の、特徴的な部分を示した部分回路図である。尚こ
の図5においては、図の下方側が上位アドレス側、図の
上方側が下位アドレス側であるとする。特に図3に示す
回路との比較において図3と大きく異なる点は、図3の
属性ビットセル群20の部分が図5では検索アドレス範
囲設定回路となっている点である。この検索のためのア
ドレス範囲の設定の仕組みについて説明する。
FIG. 5 is a partial circuit diagram showing a characteristic portion of one embodiment of the second associative memory of the present invention. In FIG. 5, the lower side of the figure is the upper address side, and the upper side of the figure is the lower address side. A major difference from FIG. 3 in comparison with the circuit shown in FIG. 3 is that the attribute bit cell group 20 of FIG. 3 is a search address range setting circuit in FIG. The mechanism of setting the address range for this search will be described.

【0054】先ず、ある検索範囲の最下位アドレスによ
って検索アドレス範囲設定回路40aに接続されたデコ
ーダ17aが選択され、デコーダ17aから延びるワー
ド線18aが‘1’になったとする。このとき、最下位
アドレス設定制御線46に正のパルスを入力すると、そ
のパルスにより下位アドレスフリップフロップ43aに
ワード線18aの‘1’データが入力される。同時に、
他のデコーダ17の全てのワード線18は‘0’である
ため、この‘0’の値が、他の検索アドレス範囲設定回
路40の下位アドレスフリップフロップ43に入力され
る。
First, it is assumed that the decoder 17a connected to the search address range setting circuit 40a is selected by the lowest address of a certain search range, and the word line 18a extending from the decoder 17a becomes "1". At this time, when a positive pulse is input to the lowest address setting control line 46, the pulse causes "1" data of the word line 18a to be input to the lower address flip-flop 43a. at the same time,
Since all the word lines 18 of the other decoder 17 are “0”, this value of “0” is input to the lower address flip-flop 43 of the other search address range setting circuit 40.

【0055】しかし、検索アドレス範囲設定回路40a
の下位アドレスフリップフロップ43aの出力は、オア
回路44aで受けられており、このオア回路44aの出
力は、このオア回路44aに入力されるもう一方の下位
側(図5では上方側を下位としている)の検索アドレス
範囲設定回路40からの入力‘0’にかかわりなく
‘1’を出力する。この結果、NAND型一致検出回路
30のシリアル接続トランジスタの1つを形成するトラ
ンジスタTCA2がオンする。またオア回路44aの出
力は次段(上位側)のオア回路44bにも入力されてお
り、この次段のトランジスタTCA2もオンする。同様
にしてこれ以降の上位側のトランジスタTCA2は全て
オンする。
However, the search address range setting circuit 40a
The output of the lower address flip-flop 43a is received by the OR circuit 44a, and the output of the OR circuit 44a is the other lower side (the upper side in FIG. 5 is the lower side) input to the OR circuit 44a. ) Outputs "1" regardless of the input "0" from the search address range setting circuit 40. As a result, the transistor TCA2 forming one of the serial connection transistors of the NAND type match detection circuit 30 is turned on. The output of the OR circuit 44a is also input to the OR circuit 44b of the next stage (upper side), and the transistor TCA2 of the next stage is also turned on. Similarly, all the upper transistors TCA2 thereafter are turned on.

【0056】次に、検索の最上位アドレスを入力するこ
とによって、仮に、検索アドレス範囲設定回路40bに
接続されたデコーダ17bが選択されたとする。この場
合も同様に、最上位アドレス設定制御線45に、正のパ
ルスを印加することで、上位アドレスフリップフロップ
41bにワード線18bの‘1’が設定され、これがオ
ア回路42bを介してNAND型一致検出回路30を構
成する1つのシリアルトランジスタTCA1をオンにす
る。
Next, it is assumed that the decoder 17b connected to the search address range setting circuit 40b is selected by inputting the highest address of the search. Also in this case, similarly, by applying a positive pulse to the highest address setting control line 45, "1" of the word line 18b is set in the upper address flip-flop 41b, which is the NAND type via the OR circuit 42b. One serial transistor TCA1 forming the match detection circuit 30 is turned on.

【0057】また、同様にして、他の検索アドレス範囲
設定回路40の上位アドレスフリップフロップ41には
全て‘0’が設定されるが、オア回路42bの出力によ
り、これより下位(図5では上方向)にある全てのアド
レスのトランジスタTCA1がオンすることになる。即
ち、この例では、NAND型一致検出回路30のシリア
ルトランジスタのうち、トランジスタTCA1とトラン
ジスタTCA2の両方がオンするものは、アドレス範囲
の最下位と最上位との間に設定されるわけである。これ
を、今、仮にアドレス201番地と300番地に選べ
ば、その間にある属性1のデータが検索対象となる。
Similarly, although the upper address flip-flops 41 of the other search address range setting circuits 40 are all set to "0", the output of the OR circuit 42b lowers them (upper in FIG. 5). The transistors TCA1 of all addresses in the direction) are turned on. That is, in this example, among the serial transistors of the NAND-type coincidence detection circuit 30, the transistors in which both the transistor TCA1 and the transistor TCA2 are turned on are set between the lowest and highest positions of the address range. If the addresses 201 and 300 are now selected, the data of attribute 1 between them will be the search target.

【0058】このようにして検索アドレス範囲を設定し
た後、前述のごとくNAND型一致検出回路30をプリ
チャージして、参照データを各メモリセルのビット線お
よびビットバー線に印加し、検索を行うことで、検索対
象となるアドレス範囲内のみの検索、即ち、属性を指定
した内容検索が可能となる。この方式を採ることで、前
述の実施例とは異なり、各データセットの属性の数が増
加しても、属性ビット幅を大きくする必要がなく、アド
レス範囲の設定を変更するだけでよく、各データセット
に、より自由度の高い属性付与が可能となる。
After setting the search address range in this way, the NAND type match detection circuit 30 is precharged as described above, and the reference data is applied to the bit line and the bit bar line of each memory cell to perform the search. As a result, it is possible to perform a search only within the address range to be searched, that is, a content search in which an attribute is designated. By adopting this method, unlike the above-mentioned embodiment, even if the number of attributes of each data set increases, it is not necessary to increase the attribute bit width, and only the setting of the address range needs to be changed. It is possible to add more flexibility to the dataset.

【0059】図6は、本発明の第3の連想メモリの一実
施例を示すブロック図である。図17に示す連想メモリ
の各構成要素と同一の構成要素には、図17に付した符
号と同一の符号を付して示し、相違点についてのみ説明
する。各メモリワード11_1,11_2,…は、属性
を格納する属性格納部11_1_1,11_2_1,…
とデータを格納するデータ格納部11_1_2,11_
2_2,…とで構成されており、各メモリワード11_
1,11_2,…には、互いに対応する属性とデータと
のペアからなる格納データがそれぞれ格納されている。
ここでは、図示のように、各メモリワード11_1,1
1_2,11_3,11_4には、それぞれ、属性0,
データ‘A’、属性1,データ‘B’、属性2,データ
‘C’、属性3,データ‘D’が格納されている。また
各メモリワード11_5,11_6,…には、それぞ
れ、属性0,データ‘C’、属性1,データ‘F’、…
…が格納されている。また検索にあたっては、属性とデ
ータとのペアからなる参照データREF_DATAが入
力される。
FIG. 6 is a block diagram showing an embodiment of the third associative memory of the present invention. The same components as those of the associative memory shown in FIG. 17 are designated by the same reference numerals as those shown in FIG. 17, and only different points will be described. Each memory word 11_1, 11_2, ... Includes an attribute storage unit 11_1_1, 11_2_1 ,.
And data storage units 11_1_2 and 11_ for storing data
2_2, ... And each memory word 11_
Stored data consisting of pairs of attributes and data corresponding to each other are stored in 1, 11_2 ,.
Here, as shown, each memory word 11_1,1
1_2, 11_3, and 11_4 have attributes 0,
Data'A ', attribute 1, data'B', attribute 2, data'C ', attribute 3, data'D' are stored. Further, in each of the memory words 11_5, 11_6, ..., Attribute 0, data'C ', attribute 1, data'F' ,.
... is stored. Further, in the search, reference data REF_DATA including a pair of attribute and data is input.

【0060】各メモリワード11_1,11_2には、
そこに記憶された格納データ(属性及びデータの双方)
が、入力された参照データ(属性及びデータの双方)と
一致しているときに一致信号が出力される従来の一致線
14_1,14_2,…のほか、属性のみの一致不一致
の信号が出力される属性一致線30_1,30_2,…
が備えられている。尚、属性のみの一致も、属性及びデ
ータの双方の一致も、従来の一致検出回路と同様に構成
され、従来の一致検出回路は連想メモリの分野において
極めて一般的な技術であるため、ここでの図示および説
明は省略する。
In each of the memory words 11_1 and 11_2,
Stored data (both attributes and data) stored there
, In addition to the conventional match lines 14_1, 14_2, ..., which output a match signal when they match the input reference data (both attribute and data), output a match / mismatch signal for only the attribute. Attribute matching lines 30_1, 30_2, ...
Is provided. It should be noted that the matching of only the attributes and the matching of both the attributes and the data are configured in the same manner as the conventional match detection circuit, and the conventional match detection circuit is an extremely common technique in the field of the associative memory. Are not shown and described.

【0061】各メモリワード11_1,11_2に対応
して第3のフラグレジスタ31_1,31_2,…が備
えられており、各属性一致線30_1,30_2,…は
対応する第3のフラグレジスタ31_1,31_2,…
のデータ入力端子に延びている。また、この実施例の連
想メモリには、各データセットに属する各データが格納
されたメモリワードからなるメモリワード群それぞれに
ついて1本ずつデータ線32_1,32_2,…が備え
られており、またデータ線32_1,32_2,…と各
第2のフラグレジスタ31_1,31_2,…の出力端
子との間には各第1のスイッチ33_1,33_2,…
が備えられている。これらの第1のスイッチ33_1,
33_2,…は具体的にはトランジスタ等を用いて構成
される。後述する他のスイッチについても同様である。
各第1のスイッチ33_1,33_2,…は、対応する
各第3のフラグレジスタ33_1,33_2,…に論理
‘1’の信号がラッチされているときに導通され、論理
‘0’の信号がラッチされているときには遮断される。
各第3のフラグレジスタ31_1,31_2,…は、一
致結果ラッチ制御線25の一致結果ラッチ信号S1の立
ち下がりbのタイミングで、対応する属性一致線30_
1,30_2,…の信号をラッチする。
Third flag registers 31_1, 31_2, ... Are provided corresponding to the respective memory words 11_1, 11_2, and the respective attribute match lines 30_1, 30_2, ... Are corresponding third flag registers 31_1, 31_2 ,. …
To the data input terminal of. The associative memory of this embodiment is provided with one data line 32_1, 32_2, ... For each memory word group consisting of memory words in which each data belonging to each data set is stored. 32_1, 32_2, ... and the first switches 33_1, 33_2, ... between the output terminals of the respective second flag registers 31_1, 31_2 ,.
Is provided. These first switches 33_1,
33_2, ... Are specifically configured using transistors or the like. The same applies to other switches described below.
Each of the first switches 33_1, 33_2, ... Is turned on when the corresponding third flag register 33_1, 33_2, ... Is latching the signal of logic “1” and latches the signal of logic “0”. If it is, it will be shut off.
Each of the third flag registers 31_1, 31_2, ... At the timing of the trailing edge b of the match result latch signal S1 of the match result latch control line 25, the corresponding attribute match line 30_.
Latch signals 1, 30_2, ...

【0062】またデータ線32_1,32_2,…と各
オアゲート21_1,21_2,…の入力端子との間に
各第2のスイッチ34_1,34_2,…が備えられて
おり、これら各第2のスイッチ34_1,34_2,…
は、対応する属性一致線30_1,30_2,…の信号
により、その信号が一致を表わす論理‘1’のときに導
通状態、不一致を表わす論理‘0’の時に遮断状態とな
るように制御される。尚、この図6に示す連想メモリに
は、図17に示す連想メモリと異なり、図示の最上段の
メモリワード11_1に対応するアンドゲート20_1
の前段にもオアゲート21_1が備えられている。
Further, the second switches 34_1, 34_2, ... Are provided between the data lines 32_1, 32_2, ... And the input terminals of the OR gates 21_1, 21_2 ,. 34_2, ...
Are controlled by the signals of the corresponding attribute match lines 30_1, 30_2, ... To be in a conductive state when the signal is a logic "1" indicating a match, and to be in a cutoff state when the signal is a logic "0" indicating a mismatch. . Unlike the associative memory shown in FIG. 17, the associative memory shown in FIG. 6 has an AND gate 20_1 corresponding to the uppermost memory word 11_1 in the figure.
The OR gate 21_1 is also provided in the preceding stage.

【0063】以上のように構成された連想メモリにおい
て、一致検索は以下のようにして行われる。1ワード分
の単独のデータの検索、および第1回目の検索は、図1
7に示した従来のワード拡張機能付連想メモリの場合と
同じであるためここでは説明は省略し、ここでは第1回
目の検索において属性1とデータ‘B’とからなる参照
データREF_DATAによってメモリワード11_2
に対応する第1および第2のフラグレジスタ23_2,
24_2に論理‘1’がラッチされたものとする。この
とき、属性の一致を受けてメモリワード11_2に対応
する属性一致線30_2に論理‘1’の信号が出力さ
れ、これにより、対応する第3のフラグレジスタ31_
2にも論理‘1’の信号がラッチされ、対応する第1の
スイッチ33_2がオンし、対応する第2のフラグレジ
スタ24_2に格納された、属性及びデータ双方の一致
を表わす論理‘1’の信号がデータ線32_1に出力さ
れる。またこれとともに、対応する第2のスイッチ34
_2もオンするが、第1回目の検索においてはこれは無
用の動作である。
In the associative memory configured as described above, the matching search is performed as follows. The search for single data for one word and the first search are shown in Fig. 1.
Since it is the same as the case of the conventional associative memory with word expansion function shown in FIG. 7, its explanation is omitted here, and here, in the first search, the reference word REF_DATA consisting of the attribute 1 and the data'B 'is used for the memory word. 11_2
Corresponding to the first and second flag registers 23_2,
It is assumed that the logic '1' is latched in 24_2. At this time, in response to the attribute match, a signal of logic “1” is output to the attribute match line 30_2 corresponding to the memory word 11_2, whereby the corresponding third flag register 31_
2 also latches the signal of logic “1”, the corresponding first switch 33_2 is turned on, and the logic “1” of both the attribute and the data stored in the corresponding second flag register 24_2 is stored. The signal is output to the data line 32_1. Along with this, the corresponding second switch 34
_2 is also turned on, but this is an unnecessary operation in the first search.

【0064】次に、属性3とデータ‘D’からなる参照
データREF_DATAを入力して検索を行うものとす
る。このときは、図17の連想メモリの場合と同様、初
回検索制御線22は論理‘0’に保持されている。この
とき、属性の一致を受けてメモリワード11_4に対応
する属性一致線30_4に論理‘1’の信号が出力さ
れ、これにより対応する第2のスイッチ34_4がオン
し、データ線32_1に出力されていた、メモリワード
11_2に対応する第2のフラグレジスタ24_2の論
理‘1’の信号がオアゲート21_4を経由してアンド
ゲート20_4に入力される。このため、メモリワード
11_4で属性3とデータ‘D’の双方の一致が検出さ
れて一致線14_4に論理‘1’の一致信号が出力され
ると、一致結果ラッチ制御線25の一致結果ラッチ信号
S1により、対応する第1および第2のフラグレジスタ
23_4,24_4に論理‘1’の信号が、各々、ラッ
チ信号S1の立ち上がりおよび立ち下がりエッジでラッ
チされる。またこのとき、属性一致線30_4に出力さ
れた論理‘1’の信号が、対応する第3のフラグレジス
タ31_4にラッチ信号の立ち下がりエッジでラッチさ
れ、対応する第1のスイッチ33_4がオンし、第2の
フラグレジスタ24_4の論理‘1’の信号がデータ線
32_1に出力される。またこの2回目の検索では、メ
モリワード11_2に対応する属性一致線30_2には
属性の不一致を表わす論理‘0が出力されるため、対応
する第3のフラグレジスタ31_2には‘0’が格納さ
れ、メモリワード11_2に対応する第1のスイッチ3
3_2はラッチ信号S1の立ち下がりのタイミングでオ
フする。しかし、この時2回目の検索結果はすでに第1
のフラグレジスタ23_1に格納されている。
Next, it is assumed that the reference data REF_DATA consisting of the attribute 3 and the data'D 'is input to perform the search. At this time, as in the case of the associative memory of FIG. 17, the initial search control line 22 is held at logic '0'. At this time, in response to the attribute match, a signal of logic “1” is output to the attribute match line 30_4 corresponding to the memory word 11_4, whereby the corresponding second switch 34_4 is turned on and is output to the data line 32_1. Further, the signal of logic "1" of the second flag register 24_2 corresponding to the memory word 11_2 is input to the AND gate 20_4 via the OR gate 21_4. Therefore, when a match between the attribute 3 and the data “D” is detected in the memory word 11_4 and a match signal of logic “1” is output to the match line 14_4, the match result latch signal of the match result latch control line 25 is output. By S1, the signal of logic '1' is latched in the corresponding first and second flag registers 23_4, 24_4 at the rising and falling edges of the latch signal S1, respectively. Further, at this time, the signal of logic “1” output to the attribute matching line 30_4 is latched in the corresponding third flag register 31_4 at the falling edge of the latch signal, and the corresponding first switch 33_4 is turned on, The signal of logic “1” of the second flag register 24_4 is output to the data line 32_1. Further, in the second search, since the logic “0” indicating the attribute mismatch is output to the attribute matching line 30_2 corresponding to the memory word 11_2, “0” is stored in the corresponding third flag register 31_2. , The first switch 3 corresponding to memory word 11_2
3_2 turns off at the timing of the fall of the latch signal S1. However, the second search result is already the first
Stored in the flag register 23_1.

【0065】また、ヒットアドレスのエンコードに関し
ては、メモリワード11_4に対応する第2のフラグレ
ジスタ24_4の論理‘1’の信号がプライオリティエ
ンコーダ16(図14参照)に入力され、メモリワード
11_4のアドレスが得られることになるが、メモリワ
ード11_4には属性3が格納されていることは予め分
かっており、同一群内の例えば属性2のデータを読み出
したいときは、得られたアドレスから1を引いてメモリ
ワード11_3のアドレスを求め、そのアドレスをアド
レスデコーダ17に入力してメモリワード11_3の内
容を読み出せばよい。
Regarding the encoding of the hit address, the signal of logic "1" of the second flag register 24_4 corresponding to the memory word 11_4 is input to the priority encoder 16 (see FIG. 14), and the address of the memory word 11_4 is changed. Although it will be obtained, it is known in advance that the attribute 3 is stored in the memory word 11_4, and when it is desired to read, for example, the data of the attribute 2 in the same group, subtract 1 from the obtained address. It suffices to obtain the address of the memory word 11_3, input the address to the address decoder 17, and read the contents of the memory word 11_3.

【0066】尚、2回目の検索時に、属性3とデータ
‘D’とからなる参照データに代わり、例えば属性3と
データ‘B’とからなる参照データで検索が行われた場
合、メモリワード11_4については、属性は一致する
ため第2のスイッチ34_4がオンし、データ線32_
1に出力されている論理‘1’の信号が取り込まれる
が、データが異なるため一致線14_4には不一致を表
わす論理‘0’が出力され、第1及び第2のフラグレジ
スタ23_4,24_4には一致が検出されなかったこ
とを示す論理‘0’がラッチされる。また、データ
‘B’が一致するメモリワード11_2については属性
が一致せず、したがって属性及びデータの双方も一致し
ない。
In the second search, when the reference data including the attribute 3 and the data “B” is searched instead of the reference data including the attribute 3 and the data “D”, the memory word 11_4. 2), since the attributes match, the second switch 34_4 is turned on and the data line 32_
The signal of logic "1" output to 1 is taken in, but since the data is different, the logic "0" indicating mismatch is output to the match line 14_4, and the first and second flag registers 23_4 and 24_4 are output. A logic '0' is latched indicating that no match was found. In addition, the attribute does not match for the memory word 11_2 with which the data'B 'matches, and therefore both the attribute and the data do not match.

【0067】以上のようにして、図6に示す実施例で
は、同一の群内においては、互いに離れたメモリワード
に記憶されたデータであっても、もしくは格納されたデ
ータの順序に無関係な場合であっても、検索を行うこと
ができる。ここで、上記実施例におけるデータ線32_
1,32_2,…,は、1つの群に属するデータの数が
予め定まっているものとしてその長さが固定されたもの
であるが、このように固定長のデータ線を備えると、1
つの群に属するデータの数の最大を見積もり、最大のデ
ータ数に対応した長さのデータ線を備える必要がある。
これではその最大よりも少ない数のデータによりデータ
群が構成される場合に無駄なメモリワードが発生するこ
とになる。そこで、1つの群に属するデータの数に合せ
てデータ線を可変長とすることが好ましいがデータ線の
長さをいかにして可変長とするかが問題となる。
As described above, in the embodiment shown in FIG. 6, in the same group, even if the data are stored in memory words separated from each other, or the order of the stored data is irrelevant. Even, a search can be done. Here, the data line 32_ in the above embodiment
, 32_2, ... have fixed lengths, assuming that the number of data belonging to one group is predetermined, but if such fixed length data lines are provided, 1
It is necessary to estimate the maximum number of data belonging to one group and provide a data line with a length corresponding to the maximum number of data.
In this case, useless memory words are generated when a data group is composed of a smaller number of data than the maximum. Therefore, it is preferable to make the data line variable length according to the number of data belonging to one group, but there is a problem how to make the data line length variable.

【0068】図7は、可変長のデータ線を実現する一つ
の方式を示した模式図である。データ線32が複数のメ
モリワード11_1,11_2,11_3,…に亘って
延び、そのデータ線32には、最上端のメモリワード1
1_1を除く他のメモリワード11_2,11_3,…
それぞれに対応する各スイッチ40_1,40_2,4
0_3,…が互いにシリーズに配置されている。これら
の各スイッチ40_2,40_3,40_4,…は、対
応するメモリワード11_2,11_3,11_4,…
と、その直ぐ上段に隣接するメモリワード11_1,1
1_2,11_3,…との間に配置されている。それら
のスイッチ40_2,40_3,40_4,…のうちの
1つおきのスイッチ40_2,40_4,40_6,…
は第1制御線41の第1のスイッチ制御信号によりオン
し、3つおきのスイッチ40_3,40_7,…は第2
制御線42の第2のスイッチ制御信号によりオンし、残
りのスイッチのうち8つおきのスイッチ40_5,…は
第3制御線43の第3のスイッチ制御信号によりオンさ
れる。
FIG. 7 is a schematic diagram showing one method for realizing a variable length data line. A data line 32 extends over a plurality of memory words 11_1, 11_2, 11_3, ...
Other memory words 11_2, 11_3, except 1_1, ...
Each switch 40_1, 40_2, 4 corresponding to each
0_3, ... Are arranged in series with each other. Each of these switches 40_2, 40_3, 40_4, ... Corresponds to the corresponding memory word 11_2, 11_3, 11_4 ,.
And the memory words 11_1 and 1 immediately adjacent to the upper row.
It is arranged between 1_2, 11_3, .... Every other switch 40_2, 40_3, 40_4, ... Of these switches 40_2, 40_4, 40_6 ,.
Are turned on by the first switch control signal of the first control line 41, and every third switch 40_3, 40_7, ...
The control signal is turned on by the second switch control signal on the control line 42, and every other eight switches 40_5, ... Of the remaining switches are turned on by the third switch control signal on the third control line 43.

【0069】1つのデータ群を構成するデータの数が2
の場合は、第1制御線41に第1のスイッチ制御信号を
出力することにより1つおきのスイッチ40_2,40
_4,40_6,…をオンさせる。これにより各2つの
メモリワード11_1,11_2;11_3,11_
4;11_5,11_6;…毎に切断されたデータ線が
形成される。また、1つのデータ群を構成するデータの
数が4の場合は、第1制御線41に第1のスイッチ制御
信号を出力するとともに第2制御線42に第2のスイッ
チ制御信号を出力する。すると、各4つのメモリワード
11_1,11_2,11_3,11_4;11_5,
11_6,…毎に切断されたデータ線が形成される。同
様にして、1つのデータ群を構成するデータの数が8の
場合は、第1制御線41、第2制御線42にそれぞれ第
1および第2のスイッチ制御信号を出力するとともに、
第3制御線43に第3のスイッチ制御信号を出力する。
これにより各8つのメモリワード11_1,…,11_
8;11_9…毎に切断されたデータ線が形成される。
The number of pieces of data constituting one data group is 2
In this case, by outputting the first switch control signal to the first control line 41, every other switch 40_2, 40
Turn on _4, 40_6, .... As a result, each two memory words 11_1, 11_2; 11_3, 11_
4; 11_5, 11_6; ... The data lines cut off are formed. Further, when the number of data forming one data group is four, the first switch control signal is output to the first control line 41 and the second switch control signal is output to the second control line 42. Then, each of the four memory words 11_1, 11_2, 11_3, 11_4; 11_5
A disconnected data line is formed every 11_6 .... Similarly, when the number of pieces of data forming one data group is 8, while outputting the first and second switch control signals to the first control line 41 and the second control line 42, respectively,
The third switch control signal is output to the third control line 43.
As a result, each of the eight memory words 11_1, ..., 11_
8; 11_9 ... A disconnected data line is formed.

【0070】この方式によれば、1つのデータ群を構成
するデータの数が2の倍数の場合はメモリワードに空き
は生じないが、2の倍数以外の、例えば3,5,9等の
場合空きのメモリワードが生じてしまうことになる。こ
の空きのメモリワードが生じないように多数のスイッチ
40_2,40_3,…を任意にオン,オフできるよう
に構成すると、制御線の本数が多数本となり、またそれ
らの制御線にスイッチ制御信号を出力する制御回路が複
雑となる。したがって、図7に示す方式は、データ線の
長さを任意に制御するには不向きである。
According to this method, when the number of data constituting one data group is a multiple of 2, no vacancy occurs in the memory word, but in the case of a number other than a multiple of 2, such as 3, 5, 9 or the like. There will be free memory words. If a large number of switches 40_2, 40_3, ... Can be arbitrarily turned on and off so as not to generate this empty memory word, the number of control lines becomes large, and a switch control signal is output to those control lines. The control circuit to operate becomes complicated. Therefore, the method shown in FIG. 7 is not suitable for arbitrarily controlling the length of the data line.

【0071】図8は、可変のデータ線を実現するもう一
つの方式を示した模式図である。多数のメモリワードに
亘ってデータ線32が延び、そのデータ線32に互いに
シリーズに接続された、最上端のメモリワードを除く他
のメモリワードそれぞれに対応する各スイッチ40_
2,40_3,40_4,…が備えられている点は図7
の場合と同じである。各メモリワードには、各属性格納
部11_1_1,11_2_1,11_3_1,…が備
えられており、それら属性格納部11_1_1,11_
2_1,11_3_1,…には、図示の各属性0,1,
2,3がそれぞれ格納されている。この例は、属性格納
部11_1_1,11_2_1,11_3_1,…に格
納された属性が属性0かそれ以外の属性1,2,3かに
応じて、属性0の場合は対応するスイッチをオフのまま
とし、それ以外の属性1,2,3の場合は対応するスイ
ッチをオンするように構成したものである。このように
構成すると、1つのデータ群を構成するデータの数がい
くつであっても、また、データ数の異なるデータ群が混
在していても、各データ群の先頭に属性0のデータを配
置することにより、自動的に過不足ない数のメモリワー
ド毎に切断されたデータ線が形成されることになる。
FIG. 8 is a schematic diagram showing another method for realizing a variable data line. A data line 32 extends over a large number of memory words, and each switch 40_ corresponding to each of the other memory words except the uppermost memory word connected in series to the data line 32.
FIG. 7 shows that 2, 40_3, 40_4, ... Are provided.
Is the same as in. Each memory word is provided with each attribute storage unit 11_1_1, 11_2_1, 11_3_1, ..., And these attribute storage units 11_1_1, 11_
2_1, 11_3_1, ... Indicate the respective attributes 0, 1,
2 and 3 are stored respectively. In this example, depending on whether the attribute stored in the attribute storage unit 11_1_1, 11_2_1, 11_3_1, ... Is attribute 0 or the other attributes 1, 2, and 3, when the attribute is 0, the corresponding switch is kept off. For other attributes 1, 2, and 3, the corresponding switches are turned on. With this configuration, no matter how many pieces of data make up one data group, or even if data groups with different numbers of data are mixed, the data of attribute 0 is placed at the beginning of each data group. By doing so, a data line is automatically formed for each memory word of a sufficient number.

【0072】図9は、属性が‘0’かそれ以外かを判定
する属性判定回路の一例を示す回路図である。ここでは
属性0に‘000’が割り当てられており、属性格納部
11_i_1に格納された属性が属性0(‘000’)
の場合オアゲートから‘0’が出力され、したがってト
ランジスタ40で構成されたスイッチ40’はオフ状態
となり、そのトランジスタ40’の両側のデータ線が電
気的に切断される。属性格納部11_i_1に格納され
た属性が属性I以外の属性の場合はオアゲートから
‘1’が出力され、トランジスタ40はオン状態とな
り、そのトランジスタの両側のデータ線が接続される。
FIG. 9 is a circuit diagram showing an example of an attribute judging circuit for judging whether the attribute is "0" or not. Here, "000" is assigned to the attribute 0, and the attribute stored in the attribute storage unit 11_i_1 is the attribute 0 ('000').
In this case, "0" is output from the OR gate, so that the switch 40 'composed of the transistor 40 is turned off, and the data lines on both sides of the transistor 40' are electrically disconnected. When the attribute stored in the attribute storage unit 11_i_1 is an attribute other than the attribute I, "1" is output from the OR gate, the transistor 40 is turned on, and the data lines on both sides of the transistor are connected.

【0073】このように、図6に示す実施例において、
1つのデータ群を構成するデータの数に応じてデータ線
32_1,32_2,…の長さを調整することもでき
る。もちろん、属性データを利用するのではなく、専用
の制御線または、新たな属性ビットによってスイッチを
制御することによりデータ線の長さを調整してもよいこ
とはいうまでもない。
Thus, in the embodiment shown in FIG.
It is also possible to adjust the lengths of the data lines 32_1, 32_2, ... According to the number of pieces of data forming one data group. Needless to say, the length of the data line may be adjusted by controlling the switch with a dedicated control line or a new attribute bit instead of using the attribute data.

【0074】図10は、本発明の第4の連想メモリの一
実施例の機能ブロック図、図11は、本発明の第4の連
想メモリにおける、検索時の制御データの指定方法を示
す機能ブロック図である。この連想メモリを構成する多
数のメモリワードそれぞれには、上述した属性データに
相当するセグメントデータと通常のデータとの双方が格
納される。またこの連想メモリには、本発明にいう検索
補助データレジスタの一例であるセグメントレジスタが
N個備えられており、また、本発明にいう検索補助デー
タレジスタの他の一例であるマスクレジスタもN個備え
られている。
FIG. 10 is a functional block diagram of an embodiment of the fourth associative memory of the present invention, and FIG. 11 is a functional block showing a control data designating method in the fourth associative memory of the present invention. It is a figure. Both the segment data corresponding to the above-mentioned attribute data and normal data are stored in each of a large number of memory words forming this associative memory. Further, this associative memory is provided with N segment registers which are an example of the search auxiliary data register according to the present invention, and N mask registers which are another example of the search auxiliary data register according to the present invention. It is equipped.

【0075】これらのセグメントレジスタのいずれか、
あるいはマスクレジスタのいずれかにセグメントデータ
あるいはマスクデータを書込む際は、書込もうとするデ
ータAを入力するとともにファンクションデータFUN
_DATA(図15参照)で書込むべきレジスタを指定
し、さらにWRITE信号を入力することにより、所望
のレジスタに所望のデータAが書込まれる。
Any of these segment registers,
Alternatively, when writing segment data or mask data to any of the mask registers, the data A to be written is input and the function data FUN is input.
By specifying the register to be written with _DATA (see FIG. 15) and further inputting the WRITE signal, the desired data A is written in the desired register.

【0076】また、この連想メモリには、それぞれに制
御データが格納される複数の制御データレジスタからな
るチャネル(本発明にいう制御データレジスタ群)が複
数個備えられている。各制御データレジスタに格納され
る制御データは、検索時にセグメントレジスタのいずれ
か、およびマスクレジスタのいずれかを指定するための
ものである。
Further, this associative memory is provided with a plurality of channels (control data register group referred to in the present invention) including a plurality of control data registers each storing control data. The control data stored in each control data register is for designating one of the segment registers and one of the mask registers at the time of search.

【0077】各制御データレジスタに各制御データを書
込む際は、書き込もうとするデータAを入力するととも
に書き込もうとするチャネルを指定し、WRITE信号
を入力する。すると、データAが、制御データとして、
指定されたチャネルの空いている制御データレジスタ中
の、番号の一番若い制御データレジスタに格納される。
例えば初期化の後、チャネル1が1回目に指定された場
合は、チャネル1の(1)の制御データレジスタに制御
データが格納され、チャネル1が2回目に指定されたと
きはチャネル1の(2)の制御データレジスタに制御デ
ータが格納される。一方検索にあたっては図11に示す
ようにチャネル1を示すアドレスデータを入力し、かつ
所望のデータAを第1の参照データとして、検索を指示
するWRITE信号に同期して入力する。この時、各チ
ャネルはリセット信号よりリセットされていたとする
と、アドレスにより指示されたこのチャネル1の(1)
の制御データレジスタに格納された制御データが、N個
のセグメントレジスタのうちの、例えばセグメントレジ
スタ#2を指定し、かつN個のマスクレジスタのうち
の、例えばマスクレジスタ#3を指定する制御データで
あった場合は、入力されたデータAに、マスクレジスタ
#3に格納されたマスクレジスタによりマスクがかけら
れ、これにより生成されたデータとセグメントレジスタ
#2に格納されたセグメントデータとの双方からなる参
照データと、各メモリワードに格納された各格納データ
との一致比較が行われる。
When each control data is written in each control data register, the data A to be written is input, the channel to be written is designated, and the WRITE signal is input. Then, the data A becomes the control data
It is stored in the lowest-numbered control data register of the free control data registers of the specified channel.
For example, after initialization, when channel 1 is designated for the first time, control data is stored in the control data register (1) of channel 1, and when channel 1 is designated for the second time, channel 1 ( The control data is stored in the control data register of 2). On the other hand, in the search, as shown in FIG. 11, the address data indicating the channel 1 is input, and the desired data A is input as the first reference data in synchronization with the WRITE signal instructing the search. At this time, assuming that each channel is reset by the reset signal, (1) of this channel 1 designated by the address
The control data stored in the control data register of No. 1 designates, for example, the segment register # 2 of the N segment registers and also designates, for example, the mask register # 3 of the N mask registers. If it is, the input data A is masked by the mask register stored in the mask register # 3, and the generated data and the segment data stored in the segment register # 2 are both masked. The reference data and the stored data stored in each memory word are compared and compared.

【0078】次にアドレスデータとして前回と同一のア
ドレスデータ(チャネル1を指定するアドレスデータ)
を入力し、これとともに、参照データとして新たなデー
タBを入力し検索を指示すると、今度はチャネル1の
(2)の制御データレジスタに格納されている制御デー
タにより、N個のセグメントレジスタのうちの1つ、お
よびN個のマスクレジスタのうちの1つが指定される。
例えばチャネル1の(2)の制御データレジスタに格納
された制御データがセグメントレジスタ#1およびマス
クレジスタ#1を指定するものである場合、入力された
データBにマスクレジスタ#1に格納されたマスクデー
タによりマスクがかけられ、これにより生成されたデー
タと、セグメントレジスタ#1に格納されたセグメント
データとの双方からなる参照データと各メモリワードに
格納された各格納データとの一致比較が行われる。
Next, as the address data, the same address data as the previous time (address data specifying channel 1)
When a new data B is input as reference data and a search is instructed together with this, the control data stored in the control data register (2) of channel 1 causes the N segment registers to be selected. , And one of the N mask registers are designated.
For example, when the control data stored in the control data register (2) of channel 1 specifies the segment register # 1 and the mask register # 1, the mask stored in the mask register # 1 for the input data B The data is masked and the reference data consisting of both the data generated thereby and the segment data stored in the segment register # 1 is compared with the stored data stored in each memory word. .

【0079】以上のようにして、この図10および図1
1に示す連想メモリでは、各チャネルに、セグメントレ
ジスタとマスクレジスタを指定する制御データまたは、
セグメントデータやマスクデータを直接を複数格納して
おき、すなわち各チャネルに各検索モードを格納してお
き、検索にあたってチャネルを指定することにより、そ
の指定されたチャネルに格納された検索モードに従った
検索が行われる。図10および図11に示す連想メモリ
では、セグメントデータやマスクデータを検索毎に外部
から入力する必要がなく、検索モード(検索チャネル)
を表わすアドレスデータと参照データを順次入力するだ
けで一連の複数回の検索を行うことができ、検索の手順
が簡単化され、一連の検索が高速に行われる。
As described above, FIG. 10 and FIG.
In the associative memory shown in 1, control data for specifying a segment register and a mask register for each channel, or
By storing a plurality of segment data and mask data directly, that is, by storing each search mode in each channel and specifying a channel for search, the search mode stored in the specified channel is followed. The search is done. In the associative memory shown in FIG. 10 and FIG. 11, it is not necessary to input segment data or mask data from outside every search, and the search mode (search channel) is used.
A series of searches can be performed a plurality of times simply by sequentially inputting the address data and the reference data indicating the search, the search procedure is simplified, and the series of searches is performed at high speed.

【0080】つまり、群構造をなすデータの検索に関し
て、本発明のような、連想メモリを用いて検索データを
格納し、且つ、複数回の連続検索に関して、使用順に検
索補助データをあらかじめ格納し、出力するプログラマ
ブルシーケンスレジスタを有することで、外部からの参
照データのみを順次入力することで自動的に検索補助デ
ータが順次選択されることになる。本実施例では、シー
ケンスレジスタの2つの構成方法について第10,11
図および第13図(後述)を用いて述べてある。
That is, regarding the retrieval of the data forming the group structure, the retrieval data is stored by using the associative memory as in the present invention, and the retrieval auxiliary data is stored in advance in the order of use for a plurality of consecutive retrievals. By having a programmable sequence register for outputting, search auxiliary data is automatically sequentially selected by sequentially inputting only reference data from the outside. In the present embodiment, the tenth and eleventh methods of configuring the sequence register are described.
This is described with reference to FIG. 13 and FIG. 13 (described later).

【0081】また、図10および図11に示す連想メモ
リではm個の検索モードを同時に記憶しておくことがで
き、またその検索モードを書き換えることもでき、した
がって大きな自由度を持った連想メモリが実現する。図
12は、図10および図11に示す連想メモリで取扱う
データのデータ構造の一例を示した図である。
In the associative memory shown in FIGS. 10 and 11, m search modes can be stored at the same time, and the search modes can be rewritten, so that an associative memory having a large degree of freedom can be obtained. To be realized. FIG. 12 is a diagram showing an example of a data structure of data handled by the associative memory shown in FIGS. 10 and 11.

【0082】図示のような、例えばmビットパラレルの
データが矢印方向にシーケンシャルに入力されるものと
する。その一連のデータの集合を、ここではデータパケ
ットと称する。各データパケットの先頭には、データ通
信の手順等を示すプロコルが配置されており、本連想メ
モリではそのプロトコルの部分についてデータ検索を行
うものとする。あるデータパケットについてプロトコル
の部分のデータ検索が終了した時点では、そのデータ検
索に使用されたチャネル(例えばチャネル1;図10,
図11参照)は、そのチャネル1を構成する最後の制御
データレジスタが指定された状態にあり、したがってそ
のチャネル1を使用した次の検索を行う前に、そのチャ
ネル1を構成する最初の制御データレジスタが指定され
るようにリセットする必要がある。ところが、図12に
示すようなデータを取扱う場合、あるデータパケットの
プロトコルの部分の検索が終了した時点で自動的にリセ
ットすると、そのデータパケットの、そのプロトコルに
続く部分まで検索動作を行ってしまうことになる。そこ
で図11に示すように外部からリセット信号を入力する
ように構成し、データパケットが終了時点あるいは次の
データパケットの入力開始時点でリセットすることによ
り、上記のような不都合を避けることができる。
It is assumed that, for example, m-bit parallel data as shown in the drawing is sequentially input in the arrow direction. The series of data sets is referred to as a data packet here. At the beginning of each data packet, a protocol indicating the procedure of data communication and the like is arranged, and in this associative memory, data retrieval is performed for the protocol portion. When the data retrieval of the protocol portion of a certain data packet is completed, the channel used for the data retrieval (eg, channel 1; FIG. 10,
(See FIG. 11) shows that the last control data register that makes up channel 1 is in the specified state, and therefore the first control data that makes up channel 1 before the next search using that channel 1 The registers need to be reset as specified. However, in the case of handling the data as shown in FIG. 12, if the protocol portion of a certain data packet is automatically reset when the retrieval is completed, the retrieval operation is performed up to the portion of the data packet following the protocol. It will be. Therefore, as shown in FIG. 11, the reset signal is inputted from the outside, and the inconvenience as described above can be avoided by resetting the data packet at the end time or the input start time of the next data packet.

【0083】尚、上記実施例は制御データによりセグメ
ントレジスタとマスクレジスタとの双方が指定されるよ
うに構成されているが、セグメントレジスタのみを指定
するように構成してもよく、あるいはマスクレジスタの
みを指定するように構成してもよく、さらには、本発明
にいう検索補助データレジスタとして、セグメントデー
タ,マスクデータ以外の、検索を補助するための検索補
助データを格納するレジスタを備えてもよい。
In the above embodiment, both the segment register and the mask register are designated by the control data, but only the segment register may be designated, or only the mask register is designated. May be designated, and as the search auxiliary data register according to the present invention, a register for storing search auxiliary data other than the segment data and the mask data for assisting the search may be provided. .

【0084】図13は、本発明の第5の連想メモリの、
図10および図11に示す第4の連想メモリとの相違点
を示す、図11に相当する部分の機能ブロック図であ
る。図13に示す連想メモリには、複数のチャネルのう
ちいずれか1つのチャネルを指定するためのチャネル指
定データが格納される指定データレジスタが備えられて
いる。
FIG. 13 shows the fifth associative memory of the present invention.
FIG. 12 is a functional block diagram of a portion corresponding to FIG. 11, showing a difference from the fourth associative memory shown in FIGS. 10 and 11. The associative memory shown in FIG. 13 is provided with a designated data register that stores channel designation data for designating any one of a plurality of channels.

【0085】したがって検索にあたっては、指定データ
レジスタにチャネル指定データを一度格納しておけばよ
く、後は参照データを順次入力するだけで一連の検索を
行うことができ、図10及び図11に示した連想メモリ
よりも検索のための手順が一層簡単化される。このチャ
ネル指定をレジスタやアドレスでするのではなく、専用
制御端子あるいは、それらを組合せて行ってもよいこと
は、いうまでもない。
Therefore, in searching, it is sufficient to store the channel specifying data in the specifying data register once, and thereafter, a series of searching can be performed by only sequentially inputting the reference data, as shown in FIGS. 10 and 11. The procedure for searching is further simplified than the associative memory. It goes without saying that the channel may be designated by a dedicated control terminal or a combination thereof instead of using a register or an address.

【0086】また、これらのプログラマブルシーケンサ
による検索簡易化手段は、本発明の群データのフレキシ
ブルで高速な検索を行う上で極めて重要な役割を果たす
ものである。
The search simplifying means using these programmable sequencers plays an extremely important role in performing flexible and high-speed search of group data according to the present invention.

【0087】[0087]

【発明の効果】以上説明したように、本発明によれば、
群構造のデータの格納、検索を効率的に行うことができ
る。
As described above, according to the present invention,
It is possible to efficiently store and retrieve group structure data.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の一実施例のメモリ構造図である。FIG. 1 is a memory structure diagram of an embodiment of the present invention.

【図2】連想メモリのブロック図である。FIG. 2 is a block diagram of an associative memory.

【図3】本発明の第1の連想メモリの一実施例の、1つ
のメモリワードの構成を示す回路図である。
FIG. 3 is a circuit diagram showing the configuration of one memory word in one embodiment of the first associative memory of the present invention.

【図4】本発明の第2の連想メモリのメモリ構造図であ
る。
FIG. 4 is a memory structure diagram of a second associative memory of the present invention.

【図5】本発明の第2の連想メモリの一実施例の、特徴
的な部分を示した部分回路図である。
FIG. 5 is a partial circuit diagram showing a characteristic part of an embodiment of a second associative memory of the present invention.

【図6】本発明の第3の連想メモリの一実施例を示すブ
ロック図である。
FIG. 6 is a block diagram showing an embodiment of a third associative memory of the present invention.

【図7】可変長のデータ線を実現する一つの方式を示し
た模式図である。
FIG. 7 is a schematic diagram showing one method for realizing a variable-length data line.

【図8】可変のデータ線を実現するもう一つの方式を示
した模式図である。
FIG. 8 is a schematic diagram showing another method for realizing variable data lines.

【図9】属性が0かそれ以外かを判定する属性判定回路
の一例の回路図である。
FIG. 9 is a circuit diagram of an example of an attribute determination circuit that determines whether an attribute is 0 or not.

【図10】第4の本発明の連想メモリの一実施例の機能
ブロック図である。
FIG. 10 is a functional block diagram of an embodiment of an associative memory of the fourth present invention.

【図11】本発明の第4の連想メモリにおける、検索時
の制御データの指定方法を示す機能ブロック図である。
FIG. 11 is a functional block diagram showing a method of specifying control data at the time of search in the fourth associative memory of the present invention.

【図12】連想メモリで取扱うデータのデータ構造の一
例を示した図である。
FIG. 12 is a diagram showing an example of a data structure of data handled in an associative memory.

【図13】本発明の第5の連想メモリの、図10および
図11に示す第4の連想メモリとの相違点を示す、図1
1に相当する部分の機能ブロック図である。
FIG. 13 is a diagram showing a difference between the fifth associative memory of the present invention and the fourth associative memory shown in FIGS. 10 and 11, and FIG.
2 is a functional block diagram of a portion corresponding to 1. FIG.

【図14】従来の連想メモリの一例を表わした回路ブロ
ック図である。
FIG. 14 is a circuit block diagram showing an example of a conventional associative memory.

【図15】従来の連想メモリの機能ブロック図である。FIG. 15 is a functional block diagram of a conventional associative memory.

【図16】連想メモリに記憶された、属性の付されたデ
ータの配列を示した図である。
FIG. 16 is a diagram showing an array of data with attributes stored in an associative memory.

【図17】データ拡張機能を備えた連想メモリの一例を
示すブロック図である。
FIG. 17 is a block diagram showing an example of an associative memory having a data expansion function.

【符号の説明】[Explanation of symbols]

10 連想メモリ 11_1,11_2,…,11_n メモリワード 11_1_1,11_2_1,…属性格納部 11_1_2,11_2_2,…データ格納部 12 参照データレジスタ 13 マスクデータレジスタ 14_1,14_2,… 一致線 15_1,15_2,…,15_n 一致フラグレジス
タ 16 プライオリティエンコーダ 17,17a,17b,17_1,17_2,… アド
レスデコーダ 18_1,18_2,… ワード線 19 出力データレジスタ 20_1,20_2,… アンドゲート 21_1,21_2,… オアゲート 23_1,23_2,… 第1のフラグレジスタ 24_1,24_2,… 第1のフラグレジスタ 25 一致結果ラッチ制御線 30 一致検出回路 30_1,30_2,… 属性一致線 31 一致検出アンプ 31_1,31_2,… 第3のフラグレジスタ 32_1,32_2,… データ線 33_1,33_2,… 第1スイッチ 34_1,34_2,… 第2スイッチ 40,40a,40b 検索アドレス範囲設定回路 120 属性ビットセル群
10 associative memory 11_1, 11_2, ..., 11_n Memory word 11_1_1, 11_2_1, ... Attribute storage section 11_1_2, 11_2_2, ... Data storage section 12 Reference data register 13 Mask data register 14_1, 14_2, ... Matching line 15_1, 15_2, ..., 15_n Match flag register 16 Priority encoder 17, 17a, 17b, 17_1, 17_2, ... Address decoder 18_1, 18_2, ... Word line 19 Output data register 20_1, 20_2, ... AND gate 21_1, 21_2, ... OR gate 23_1, 23_2, ... 1st Flag register 24_1, 24_2, ... First flag register 25 Match result latch control line 30 Match detection circuit 30_1, 30_2, ... Attribute match line 31 Match detection un 31_1, 31_2, ... Third flag register 32_1, 32_2, ... Data line 33_1, 33_2, ... First switch 34_1, 34_2, ... Second switch 40, 40a, 40b Search address range setting circuit 120 Attribute bit cell group

───────────────────────────────────────────────────── フロントページの続き (31)優先権主張番号 特願平6−54140 (32)優先日 平6(1994)3月24日 (33)優先権主張国 日本(JP) ─────────────────────────────────────────────────── ─── Continuation of the front page (31) Priority claim number Japanese Patent Application No. 6-54140 (32) Priority date Hei 6 (1994) March 24 (33) Priority claim country Japan (JP)

Claims (12)

【特許請求の範囲】[Claims] 【請求項1】 配列された複数の各メモリワードそれぞ
れに各ディジタルデータを記憶しておき、参照データが
入力され、入力された参照データの全部もしくは所定の
一部のビットパターンと一致するビットパターンを有す
るディジタルデータが記憶されたメモリワードを検索す
る連想メモリの使用方法において、 前記連想メモリに、各メモリワードがそれぞれ二分され
た一方の第1の領域にディジタルデータを格納するとと
もに、該各メモリワードの、該第1の領域を除く第2の
領域に該ディジタルデータの属性を表わす属性データを
記憶させ、 前記連想メモリに所定の属性データと所定のディジタル
データとの組を前記参照データとして入力することによ
り、該連想メモリに、入力された所定のディジタルデー
タに対応するとともに入力された所定の属性データが表
わす属性を有するディジタルデータが記憶されたメモリ
ワードの検索を行わせることを特徴とする連想メモリの
使用方法。
1. A bit pattern in which digital data is stored in each of a plurality of arranged memory words, reference data is input, and all or a predetermined part of the input reference data matches a bit pattern. In a method of using an associative memory for retrieving a memory word in which digital data having is stored, the associative memory stores digital data in one of the first areas into which each memory word is divided, Attribute data representing an attribute of the digital data is stored in a second area of the word excluding the first area, and a set of predetermined attribute data and predetermined digital data is input to the associative memory as the reference data. By doing so, corresponding to the input predetermined digital data to the associative memory and input Using associative memory, wherein a digital data having a predetermined attribute data represents attributes that causes the search of the stored memory word.
【請求項2】 配列された複数の各メモリワードそれぞ
れに各ディジタルデータを記憶しておき、参照データが
入力され、入力された参照データの全部もしくは所定の
一部のビットパターンと一致するビットパターンを有す
るディジタルデータが記憶されたメモリワードを検索す
る連想メモリにおいて、 前記各メモリワードが、各ディジタルデータを記憶する
第1の領域と、該第1の領域に記憶されるディジタルデ
ータの属性を表わす属性データが該各メモリワードのア
ドレス順に属性の数に応じた周期で循環的に繰返すビッ
トパターンを有することを特徴とする連想メモリ。
2. A bit pattern in which digital data is stored in each of a plurality of arranged memory words, reference data is input, and all or a predetermined part of the input reference data matches a bit pattern. In an associative memory for searching a memory word in which digital data having is stored, each memory word represents a first area for storing each digital data and an attribute of the digital data stored in the first area. An associative memory, wherein the attribute data has a bit pattern which is cyclically repeated in a cycle according to the number of attributes in the address order of each memory word.
【請求項3】 前記各メモリワードが、該各メモリワー
ドのアドレス順に属性の数に応じた周期で循環的に繰り
返すビットパターンを有する属性データを、該各メモリ
ワードを構成する各第2の領域に固定的に記憶するもの
であることを特徴とする請求項2記載の連想メモリ。
3. Attribute data having a bit pattern in which each memory word cyclically repeats at a cycle corresponding to the number of attributes in the address order of each memory word, and each second area forming each memory word. The associative memory according to claim 2, wherein the associative memory is fixedly stored in.
【請求項4】 配列された複数の各メモリワードそれぞ
れに各ディジタルデータを記憶しておき、参照データが
入力され、入力された参照データの全部もしくは所定の
一部のビットパターンと一致するビットパターンを有す
るディジタルデータが記憶されたメモリワードを検索す
る連想メモリにおいて、 配列された複数の各メモリワードそれぞれに付されたア
ドレスの全範囲のうち、入力される参照データとの一致
比較の対象とされるメモリワードのアドレスの範囲を設
定する検索アドレス範囲設定回路を備えたことを特徴と
する連想メモリ。
4. A bit pattern in which digital data is stored in each of a plurality of arranged memory words, reference data is input, and all or a predetermined part of the input reference data matches a bit pattern. In an associative memory that searches for a memory word in which digital data having is stored, is selected as a target for comparison with the input reference data in the entire range of addresses assigned to each of the plurality of arranged memory words. An associative memory having a search address range setting circuit for setting an address range of a memory word.
【請求項5】 複数のデータ群それぞれに属する複数の
格納データを各格納データ毎に記憶する複数のメモリワ
ード、および所定のメモリワードに記憶された格納デー
タと入力された参照データとの一致が検出されたとき
に、該所定のメモリワードに対応する一致線に一致を表
わす一致信号を出力する第1のモードと、今回の検索時
に所定のメモリワードにおいて前記一致が検出され、か
つ、前回の検索時に、前記所定のメモリワードに記憶さ
れた格納データが属するデータ群を構成する格納データ
をそれぞれ記憶する任意のメモリワードにおいて一致が
検出されていたときに、前記所定のメモリワードに対応
する一致線に一致信号を出力する第2のモードとを有す
る一致検出回路を備えたことを特徴とする連想メモリ。
5. A plurality of memory words storing a plurality of stored data belonging to each of a plurality of data groups for each stored data, and a match between the stored data stored in a predetermined memory word and input reference data When detected, the first mode in which a match signal indicating a match is output to the match line corresponding to the predetermined memory word, and the match is detected in the predetermined memory word during the current search, and At the time of search, when a match is detected in any memory word that stores each of the stored data that constitutes the data group to which the stored data stored in the predetermined memory word belongs, a match that corresponds to the predetermined memory word An associative memory comprising a match detection circuit having a second mode for outputting a match signal to a line.
【請求項6】 各々が、属性とデータとのペアからなる
複数の格納データの集合からなる複数のデータ群それぞ
れに属する複数の格納データを各格納データ毎に記憶す
る複数のメモリワード、 前記複数のメモリワードそれぞれに対応して記憶された
格納データ中の属性と、入力された、属性とデータとの
ペアからなる参照データ中の属性との一致不一致を検出
する属性一致検出回路、 前記複数のメモリワードそれぞれに対応して記憶され
た、属性とデータとのペアからなる格納データ中のデー
タと、入力された、属性とデータとのペアからなる参照
データ中のデータとの一致不一致を検出するデータ一致
検出回路、 前記複数のメモリワードそれぞれに対応して備えられ
た、前記格納データと前記参照データとの一致不一致の
情報を格納するレジスタ、 同一の前記データ群を構成する各格納データをそれぞれ
記憶するメモリワードからなるメモリワード群毎に備え
られたデータ線、 前記複数のメモリワードそれぞれに対応して備えられ
た、対応する前記属性一致検出回路により検索時に属性
の一致が検出されたことを受けて、対応する前記レジス
タの一致もしくは不一致の検索結果を前記データ線に伝
達する第1のスイッチ回路、 前記複数のメモリワードそれぞれに対応して備えられ
た、対応する前記属性一致検出回路および前記データ一
致検出回路により今回の検索時に属性及びデータの双方
の一致が検出され、かつ、前記データ線に前回の検索時
における一致を表わす情報が出力されているときに、対
応する前記レジスタに今回の検索における一致を表わす
情報を伝達するゲート回路、および前記複数のメモリワ
ードそれぞれに対応して備えられた、対応する前記属性
一致検出回路により今回の検索時に属性の一致が検出さ
れたことを受けて、前記データ線に出力されている前回
の検出時における一致もしくは不一致を表わす情報を対
応する前記ゲート回路に伝達する第2のスイッチ回路を
具備することを特徴とする連想メモリ。
6. A plurality of memory words, each storing a plurality of stored data belonging to each of a plurality of data groups each consisting of a plurality of stored data sets each consisting of a pair of attribute and data, said plurality of memory words Attribute match detection circuit for detecting a match / mismatch between the attribute in the stored data stored corresponding to each of the memory words and the attribute in the input reference data consisting of a pair of the attribute and the data, Detects a match / mismatch between the data in the stored data consisting of a pair of attribute and data stored corresponding to each memory word and the input data in the reference data consisting of a pair of attribute and data. A data coincidence detection circuit, which stores information on coincidence / non-coincidence between the stored data and the reference data, which is provided corresponding to each of the plurality of memory words. A register, a data line provided for each memory word group consisting of memory words that respectively store the respective stored data forming the same data group, a corresponding attribute provided for each of the plurality of memory words A first switch circuit, which transmits a matching or mismatching search result of the corresponding register to the data line in response to a match of an attribute being detected by the match detection circuit, corresponding to each of the plurality of memory words Information corresponding to both the attribute and the data is detected by the corresponding attribute match detection circuit and the data match detection circuit, which are provided in the same time, and information indicating the match in the previous search on the data line. Is output, the information indicating the match in this search is transmitted to the corresponding register. The circuit and the corresponding attribute match detection circuit provided corresponding to each of the plurality of memory words detect that the attribute match is detected at the time of the current search, and the previous output to the data line is performed. An associative memory comprising a second switch circuit for transmitting information indicating a match or a mismatch at the time of detection to the corresponding gate circuit.
【請求項7】 前記複数のメモリワードそれぞれに対応
して備えられた、対応するメモリワードに記憶された格
納データ中の属性が所定の属性であるか否かを判別する
属性判別回路を具備し、かつ前記データ線が、複数の前
記メモリワード群に跨って互いに隣接する前記メモリワ
ード間で、前記複数のメモリワードそれぞれに対応して
備えられた第3のスイッチ回路を介してシリーズに接続
される構成を備えたことを特徴とする請求項6記載の連
想メモリ。
7. An attribute discriminating circuit provided for each of the plurality of memory words and discriminating whether or not the attribute in the stored data stored in the corresponding memory word is a predetermined attribute. And the data lines are connected in series between the memory words adjacent to each other across the plurality of memory word groups via a third switch circuit provided corresponding to each of the plurality of memory words. The associative memory according to claim 6, further comprising:
【請求項8】 前記第3のスイッチ回路が、上記属性判
別回路または各メモリワード毎に備えられたデータ線接
続制御回路で制御されることを特徴とする請求項7記載
の連想メモリ。
8. The associative memory according to claim 7, wherein the third switch circuit is controlled by the attribute determination circuit or a data line connection control circuit provided for each memory word.
【請求項9】 複数の各メモリワードそれぞれに各格納
データを記憶しておき、複数の参照データが順次入力さ
れ、この順次入力される参照データと結合することによ
り各格納データと比較される参照データを生成するため
の各検索補助データを順次出力する検索補助データ順次
出力手段を有し、所定の格納データが記憶されたメモリ
ワードの検索を行うことを特徴とする連想メモリ。
9. A reference in which each stored data is stored in each of a plurality of memory words, a plurality of reference data are sequentially input, and the reference data is compared with each stored data by combining with the sequentially input reference data. An associative memory comprising search auxiliary data sequential output means for sequentially outputting each search auxiliary data for generating data, and searching a memory word in which predetermined stored data is stored.
【請求項10】 前記検索補助データ順次出力手段は、 一連の検索補助データを格納する検索補助データレジス
タ群と、 前記検索補助データレジスタを指示制御する制御手段を
有し、 前記制御手段には、アドレスが定義され、前記参照デー
タとともに前記アドレスを表わすアドレスデータが入力
され、参照データとともに入力されるアドレスデータと
前記検索の回数とに基づいて、該アドレスデータにより
指定される前記制御手段によって前記検索補助データを
順次出力するものであることを特徴とする請求項9記載
の連想メモリ。
10. The search auxiliary data sequential output unit has a search auxiliary data register group for storing a series of search auxiliary data, and a control unit for instructing and controlling the search auxiliary data register, and the control unit includes: An address is defined, address data representing the address is input together with the reference data, and the search is performed by the control means specified by the address data based on the address data input together with the reference data and the number of searches. 10. The associative memory according to claim 9, wherein the auxiliary data is sequentially output.
【請求項11】 前記検索補助データ順次出力手段は、 一連の検索補助データを格納する検索補助データレジス
タ群と、 前記検索補助データレジスタ群を指示制御する制御手段
と、 前記制御手段を指定するチャネル指定データレジスタと
を有し、 この指定レジスタに格納されたチャネル指定データレジ
スタによって指定される前記制御手段と、参照データの
入力による前記検索の回数とに基づいて、前記検索補助
データを順次出力することを特徴とする請求項9記載の
連想メモリ。
11. The search auxiliary data sequential output means includes a search auxiliary data register group for storing a series of search auxiliary data, a control means for instructing and controlling the search auxiliary data register group, and a channel for designating the control means. And a designated data register, and sequentially outputs the search auxiliary data based on the control means designated by the channel designated data register stored in the designated register and the number of times of the search by inputting reference data. The associative memory according to claim 9, wherein:
【請求項12】 前記検索補助データ順次出力手段の前
記検索補助データの出力順を初期化するシーケンスリセ
ット信号を入力するリセット端子を備えたことを特徴と
する請求項9記載の連想メモリ。
12. The associative memory according to claim 9, further comprising a reset terminal for inputting a sequence reset signal for initializing an output order of the search auxiliary data of the search auxiliary data sequential output means.
JP06171066A 1993-07-22 1994-07-22 Usage of associative memory and associative memory Expired - Fee Related JP3130736B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP06171066A JP3130736B2 (en) 1993-07-22 1994-07-22 Usage of associative memory and associative memory

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
JP5-181447 1993-07-22
JP18144793 1993-07-22
JP24812193 1993-10-04
JP5-248121 1993-10-04
JP26648293 1993-10-25
JP5-266482 1993-10-25
JP6-54140 1994-03-24
JP5414094 1994-03-24
JP06171066A JP3130736B2 (en) 1993-07-22 1994-07-22 Usage of associative memory and associative memory

Publications (2)

Publication Number Publication Date
JPH07312091A true JPH07312091A (en) 1995-11-28
JP3130736B2 JP3130736B2 (en) 2001-01-31

Family

ID=27523132

Family Applications (1)

Application Number Title Priority Date Filing Date
JP06171066A Expired - Fee Related JP3130736B2 (en) 1993-07-22 1994-07-22 Usage of associative memory and associative memory

Country Status (1)

Country Link
JP (1) JP3130736B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1166867A (en) * 1997-08-26 1999-03-09 Kawasaki Steel Corp Associative memory and encoding circuit to be applied to the memory

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1166867A (en) * 1997-08-26 1999-03-09 Kawasaki Steel Corp Associative memory and encoding circuit to be applied to the memory

Also Published As

Publication number Publication date
JP3130736B2 (en) 2001-01-31

Similar Documents

Publication Publication Date Title
US6243281B1 (en) Method and apparatus for accessing a segment of CAM cells in an intra-row configurable CAM system
US6246601B1 (en) Method and apparatus for using an inter-row configurable content addressable memory
US5530665A (en) Method of using associative memories and an associative memory
US7643324B2 (en) Method and apparatus for performing variable word width searches in a content addressable memory
US20040100811A1 (en) Content addressable memory with configurable class-based storage partition
US6252789B1 (en) Inter-row configurability of content addressable memory
US5592407A (en) Associative memory
US6799243B1 (en) Method and apparatus for detecting a match in an intra-row configurable cam system
US6868475B2 (en) Content addressable memory having data width extension capability
US6813680B1 (en) Method and apparatus for loading comparand data into a content addressable memory system
JP2779114B2 (en) Associative memory
US6801981B1 (en) Intra-row configurability of content addressable memory
US6795892B1 (en) Method and apparatus for determining a match address in an intra-row configurable cam device
JP3130736B2 (en) Usage of associative memory and associative memory
US5524226A (en) Register file system for microcomputer including a decoding system for concurrently activating source and destination word lines
JP3597899B2 (en) Associative memory
JP2786364B2 (en) Associative memory device
JP2564890B2 (en) Selective associative memory device and control method thereof
JP3645293B2 (en) Associative memory
JP3597882B2 (en) Associative memory
JP3597881B2 (en) Associative memory
JP3130745B2 (en) Associative memory
JPH08171800A (en) Associative memory
JP3063956B2 (en) Associative memory
JPH07226089A (en) Using method for associative memory and associative memory

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20001107

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081117

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081117

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091117

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees