JPH0695348B2 - Address generator for template matching - Google Patents

Address generator for template matching

Info

Publication number
JPH0695348B2
JPH0695348B2 JP63013278A JP1327888A JPH0695348B2 JP H0695348 B2 JPH0695348 B2 JP H0695348B2 JP 63013278 A JP63013278 A JP 63013278A JP 1327888 A JP1327888 A JP 1327888A JP H0695348 B2 JPH0695348 B2 JP H0695348B2
Authority
JP
Japan
Prior art keywords
address
data
template
matching
storage means
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.)
Expired - Fee Related
Application number
JP63013278A
Other languages
Japanese (ja)
Other versions
JPH01188948A (en
Inventor
宏二 小松
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.)
Sharp Corp
Original Assignee
Sharp 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 Sharp Corp filed Critical Sharp Corp
Priority to JP63013278A priority Critical patent/JPH0695348B2/en
Publication of JPH01188948A publication Critical patent/JPH01188948A/en
Publication of JPH0695348B2 publication Critical patent/JPH0695348B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Description

【発明の詳細な説明】 [産業上の利用分野] この発明は、テンプレートマッチング用アドレス生成装
置に関し、特にデータフロー型情報処理装置のデータ対
生成部において行なわれるテンプレートマッチングのた
めのアドレスを生成する装置に関する。
Description: TECHNICAL FIELD The present invention relates to a template matching address generation device, and in particular, generates an address for template matching performed in a data pair generation unit of a data flow type information processing device. Regarding the device.

[従来の技術] 第5図は従来のデータフロー型情報処理装置の一例を示
すブロック図である。また、第6図は同装置におけるデ
ータパケットのフィールド構成を示す図である。
[Prior Art] FIG. 5 is a block diagram showing an example of a conventional data flow type information processing apparatus. Further, FIG. 6 is a diagram showing a field structure of a data packet in the same apparatus.

第5図において、プログラム記憶手段1はデータフロー
プログラムを記憶しており、第6図における入力データ
パケットの先行情報に基づいたアドレス指定によって、
次位の先行情報および次位の命令情報が読出され、当該
各読出情報を前記入力データパケットの先行フィールド
および命令フィールドに格納して出力するものである。
データ対生成手段2はプログラム記憶手段1から出力さ
れるデータパケットの待合わせ、すなわちカラー情報お
よび先行情報が一致する異なる2つのデータパケットの
検出を行ない、当該カラー情報および先行情報が一致す
る2つのデータパケットのうち一方のデータパケットの
データフィールドに格納されたオペランドデータを他方
のデータパケットに付加(データフィールドを追加す
る)して出力するものである。演算処理手段3はデータ
対生成手段2から出力されるデータパケットに対して所
定の演算処理を施し、その結果を入力データパケットの
データフィールドに格納して上記プログラム記憶手段1
に出力するものである。なお、4および5はプログラム
記憶手段1とデータ対生成手段2とをつなぐデータ伝送
路である。6はデータ対生成手段2と演算処理手段3と
をつなぐデータ伝送路である。さらに、7は演算処理手
段3とプログラム記憶手段1とをつなぐデータ伝送路で
ある。
In FIG. 5, the program storage means 1 stores the data flow program, and by the address designation based on the preceding information of the input data packet in FIG.
The next-order preceding information and the next-order command information are read, and each read information is stored in the preceding field and the command field of the input data packet and output.
The data pair generation means 2 waits for the data packet output from the program storage means 1, that is, detects two different data packets in which the color information and the preceding information match and detects two data packets in which the color information and the preceding information match. The operand data stored in the data field of one of the data packets is added to the other data packet (the data field is added) and output. The arithmetic processing means 3 performs a predetermined arithmetic processing on the data packet output from the data pair generating means 2, stores the result in the data field of the input data packet, and stores the result in the program storage means 1.
Is output to. In addition, 4 and 5 are data transmission paths connecting the program storage means 1 and the data pair generation means 2. A data transmission line 6 connects the data pair generation means 2 and the arithmetic processing means 3. Further, 7 is a data transmission path connecting the arithmetic processing means 3 and the program storage means 1.

データパケットがプログラム記憶手段1→データ対生成
手段2→演算処理手段3→プログラム記憶手段1…とま
わり続けることにより、プログラム記憶手段1に記憶さ
れたデータフロープログラムに基づいて演算処理が進行
する。
The data packet continues to rotate in the order of the program storage means 1 → the data pair generation means 2 → the arithmetic processing means 3 → the program storage means 1 ... By which the arithmetic processing proceeds based on the data flow program stored in the program storage means 1.

また、第7図にプログラム記憶手段1における記憶内容
のフィールド構成の一部を示す。さらに、第8図にデー
タ対生成手段2の一例であるマッチングメモリのフィー
ルド構成を示す。
Further, FIG. 7 shows a part of the field structure of the stored contents in the program storage means 1. Further, FIG. 8 shows a field structure of a matching memory which is an example of the data pair generating means 2.

従来、この種の情報処理装置では、情報処理学会第34回
全国大会講演論文集2Q−7、249頁〜20頁(昭和62年)
に見られるように、データ対生成手段2としてマッチン
グメモリを使用してテンプレートマッチングを行なう場
合、マッチングメモリへのアクセスに対して第6図に示
すカラーフィールドの内容(第1のテンプレートパター
ン)および先行フィールドの内容(第2のテンプレート
パターン)にハッシュ演算を施して得られる値をアドレ
ス(これのハッシュアドレスという)として用いること
により、当該マッチングメモリの物理的アドレス空間の
有効利用が図られている。すなわち、上記第1のテンプ
レートパターンおよび第2のテンプレートパターンのそ
れぞれの全ビットを組合わせてアドレスを生成すると、
マッチングメモリのアドレス数が膨大なものとなり、装
置が大型かつ複雑なものとなってしまう。そこで、上記
第1のテンプルートパターンの一部と第2のテンプレー
トパターンの一部とを抜き出し組合わせてマッチングメ
モリのアドレスを生成すること(この特許では、これを
ハッシュ演算という)により、マッチングンメモリのア
ドレス数の低減を図っている。
Conventionally, in this type of information processing device, the IPSJ 34th National Convention Lecture Collection 2Q-7, pages 249 to 20 (1987)
As shown in FIG. 6, when the template matching is performed using the matching memory as the data pair generation means 2, the contents of the color field (first template pattern) shown in FIG. By using a value obtained by performing a hash operation on the content of the field (second template pattern) as an address (called a hash address of this), the physical address space of the matching memory is effectively used. That is, when all bits of the first template pattern and the second template pattern are combined to generate an address,
The number of addresses of the matching memory becomes enormous, and the device becomes large and complicated. Therefore, a part of the first template pattern and a part of the second template pattern are extracted and combined to generate an address of a matching memory (this is referred to as a hash operation in this patent). We are trying to reduce the number of memory addresses.

[発明が解決しようとする課題] ところで、上記のように複数のテンプレートパターンの
それぞれの一部の組合わせからなるパターンをマッチン
グンメモリのアドレスに対応させてテンプレートマッチ
ングを行なう従来の方式では、各テンプレートから抜き
出すビット数はそれぞれ固定的に定められていた。
[Problems to be Solved by the Invention] By the way, in the conventional method of performing template matching by associating a pattern formed by a combination of a part of a plurality of template patterns with an address of a matching memory as described above, The number of bits extracted from the template was fixed.

しかしながら、各テンプレートパターンが必要とするア
ドレス数(ビット数に対応)はアプリケーションによっ
て固定的でなく、他方マッチングメモリのアドレスの総
数は容易に変えられないため、従来のテンプレートマッ
チング方式では同一のハッシュアドレスを有する異なる
複数のデータがアクセス競合(これをハッシュ衝突とい
う)を起こすことが多くなり、テンプレートマッチング
の効率が低下するという問題点があった。
However, the number of addresses (corresponding to the number of bits) required by each template pattern is not fixed depending on the application, while the total number of addresses in the matching memory cannot be easily changed. There is a problem that a plurality of different pieces of data having a number of times often cause access conflict (this is called hash collision), and template matching efficiency is reduced.

この発明は、上記のような従来のものの問題点を解消す
るためになされたもので、アプリケーションの変更に対
しても柔軟に対応でき、常に効率の良いテンプレートマ
ッチングを行ない得るようなテンプレートマッチング用
アドレス生成装置を提供することを目的とする。
The present invention has been made in order to solve the above-mentioned problems of the conventional ones, and it is possible to flexibly deal with the change of application and to perform efficient template matching at any time. An object is to provide a generator.

[課題を解決するための手段] この発明に係るテンプレートマッチング用アドレス生成
装置は、複数のテンプレートパターンのそれぞれの一部
の組合わせからなるパターンをアドレスとしてマッチン
グメモリをアクセスしテンプレートマッチングを行なう
情報処理装置において、マッチングメモリのアドレスを
生成する際に外部から入力された制御データに基づいて
複数のテンプレートパターンの混合比率を変更するため
の手段を備えるようにしたものである。
[Means for Solving the Problem] A template matching address generation device according to the present invention is an information processing system for accessing a matching memory by using a pattern consisting of a combination of some of a plurality of template patterns as an address and performing template matching. The apparatus is provided with means for changing the mixing ratio of a plurality of template patterns based on control data input from the outside when the address of the matching memory is generated.

[作用] この発明においては、アプリケーションの変更に応じて
各テンプレートパターンの混合比率を変更することによ
り、アプリケーションごとに適切なテンプレートパター
ンとマッチングメモリのアドレスの割当てを柔軟に変更
することができ、テンプレートマッチングの効率を上げ
ることができる。
[Operation] In the present invention, by changing the mixing ratio of each template pattern according to the change of the application, it is possible to flexibly change the appropriate template pattern and the address allocation of the matching memory for each application. The efficiency of matching can be improved.

[実施例] 第1図はこの発明の一実施例の構成を示す概略ブロック
図である。図において、この実施例では、Nビットを有
する第1のテンプレートパターン(たとえばカラー情
報)T1の下位n1ビットt1と、N2ビットを有する第2のテ
ンプレートパターン(たとえば先行情報)T2の下位n2ビ
ットt2とから記憶手段(マッチングメモリ)20のアドレ
スを生成する装置として構成されている。上記t1のうち
下位jビットt1bおよび上記t2のうち下位kビットt2bは
それぞれ記憶手段20に直接与えられる。また、t1のうち
上位mビットt1aおよびt2のうち上記mビットt2aはそれ
ぞれアドレス割当部10に与えられる。このアドレス割当
部10は、外部からの制御データ(たとえばアプリケーシ
ョンの変更に応じて切換えられる)30に応じて上記t1a
とt2aを組合わせ、mビットのアドレス信号t3を生成す
るものである。記憶手段20は、第1のテンプレートパタ
ーンT1からのアドレス信号t1bと第2のテンプレートパ
ターンT2からのアドレス信号t2bとアドレス割当部10か
らのアドレス信号t3とを組合わせて得られるアドレスデ
ータによってアクセスされる構成となっている。したが
って、記憶手段20は上記組合わせによって得られるアド
レスデータと1対1に対応するアドレスを有している。
[Embodiment] FIG. 1 is a schematic block diagram showing the structure of an embodiment of the present invention. In the figure, in this embodiment, the lower n1 bits t1 of a first template pattern (for example, color information) T1 having N bits and the lower n2 bits t2 of a second template pattern (for example, preceding information) T2 having N2 bits are shown. It is configured as a device for generating the address of the storage means (matching memory) 20 from the. The lower j bits t1b of the above t1 and the lower k bits t2b of the above t2 are directly applied to the storage means 20, respectively. Further, the upper m bits t1a of t1 and the above m bits t2a of t2 are given to the address assigning unit 10, respectively. The address assigning unit 10 is provided with the above t1a in accordance with control data 30 (for example, switched according to a change in application) from the outside.
And t2a are combined to generate an m-bit address signal t3. The storage means 20 is accessed by address data obtained by combining the address signal t1b from the first template pattern T1, the address signal t2b from the second template pattern T2, and the address signal t3 from the address assigning section 10. It is configured to. Therefore, the storage means 20 has an address which corresponds to the address data obtained by the above combination in a one-to-one relationship.

なお、上記実施例において各テンプレートパターンおよ
び記憶手段20のアドレスデータのビット数は任意に設定
し得るが、以下にはt1a,t2aおよびt3がそれぞれ有する
mビットを3ビットとして上記実施例のさらに詳細な構
成を説明する。
In the above embodiment, the number of bits of each template pattern and the address data of the storage means 20 can be set arbitrarily. However, in the following, the m bits of t1a, t2a and t3 respectively are 3 bits, and the details of the above embodiment will be described. The structure will be described.

第2図および第3図は、第1図に示すアドレス割当部10
の回路構成の一例を示す図である。まず、第2図に示す
ごとく、2ビットの制御データ30(A0,A1)は、NORゲー
ト11,インバータ12およびNANDゲート13によって3ビッ
トの制御データB0,B1,B2に変換される。なお、入力制御
データA0,A1と変換後の制御データB0,B1,B2との対応関
係を第4図に示しておく。
2 and 3 show the address allocation unit 10 shown in FIG.
3 is a diagram showing an example of a circuit configuration of FIG. First, as shown in FIG. 2, 2-bit control data 30 (A0, A1) is converted into 3-bit control data B0, B1, B2 by the NOR gate 11, the inverter 12 and the NAND gate 13. The correspondence between the input control data A0, A1 and the converted control data B0, B1, B2 is shown in FIG.

次に、第3図に示すごとく、クロックドゲート14a,14b,
14cには、それぞれ、第1図に示す第1のテンプレート
パターンT1のt1aから得られる3ビットのアドレス信号C
10,C11,C12が入力される。また、クロックドゲート15a,
15b,15cには、それぞれ、第1図に示す第2のテンプレ
ートパターンT2のt2aから得られるアドレス信号C20,C2
1,C22が入力される。第2図に示す回路によって得られ
た3ビットの制御データB0,B1,B2は、それぞれ、クロッ
クドゲート14a,14b,14cの各クロック端子にそのまま与
えられるとともに、クロックドゲート15a,15b,15cの各
クロック端子に反転して与えられる。クロックドゲート
14aおよび15aの出力、14bおよび15bの出力、14cおよび1
5cの出力は、それぞれ統合されて前記アドレス信号t3の
D0,D1,D2となる。
Next, as shown in FIG. 3, clocked gates 14a, 14b,
Each of 14c has a 3-bit address signal C obtained from t1a of the first template pattern T1 shown in FIG.
10, C11, C12 are input. Also, the clocked gate 15a,
15b and 15c respectively include address signals C20 and C2 obtained from t2a of the second template pattern T2 shown in FIG.
1, C22 is input. The 3-bit control data B0, B1, B2 obtained by the circuit shown in FIG. 2 are given to the clock terminals of the clocked gates 14a, 14b, 14c as they are, and the clocked gates 15a, 15b, 15c are also provided. Inverted to each clock terminal of. Clocked gate
14a and 15a outputs, 14b and 15b outputs, 14c and 1
The outputs of 5c are integrated respectively to obtain the address signal t3.
It becomes D0, D1, D2.

上記のような構成において、クロックドゲート14a,14b,
14cは、それぞれ、制御データB0,B1,B2がたとえばハイ
レベルのときにビット入力C10,C11,C12を通過させる。
一方、クロックドゲート15a,15b,15cは、それぞれ、制
御データB0,B1,B2がたとえばローレベルのときビット入
力C20,C21,C22を通過させる。したがって、制御データB
0,B1,B2とアドレス信号D0,D1,D2との関係は第4図に示
すごとくになる。すなわち、アドレス割当部10は、制御
データ30に応じて、アドレス信号C10,C11,C12およびア
ドレス信号C20,C21,C22を適当な比率で混合し、3ビッ
トのアドレス信号D0,D1,D2を作成する。これによって、
アプリケーションの変更に応じて第1のテンプレートパ
ターンT1と第2のテンプレートパターンT2とが記憶手段
20のアドレスに対して占める割合を変応することがで
き、常にアプリケーションに応じた適切なアドレスを生
成することができる。その結果、記憶手段20においてい
わゆるハッシュ衝突を起こす確立が少なくなり、テンプ
レートマッチングの効率を高めることができる。
In the above configuration, clocked gates 14a, 14b,
14c allows the bit inputs C10, C11, C12 to pass when the control data B0, B1, B2 are, for example, at high level.
On the other hand, the clocked gates 15a, 15b and 15c respectively pass the bit inputs C20, C21 and C22 when the control data B0, B1 and B2 are low level, for example. Therefore, control data B
The relationship between 0, B1 and B2 and the address signals D0, D1 and D2 is as shown in FIG. That is, the address assigning section 10 mixes the address signals C10, C11, C12 and the address signals C20, C21, C22 at an appropriate ratio in accordance with the control data 30 to generate 3-bit address signals D0, D1, D2. To do. by this,
The first template pattern T1 and the second template pattern T2 are storage means according to the change of the application.
The ratio to 20 addresses can be changed, and an appropriate address can always be generated according to the application. As a result, so-called hash collision is less likely to occur in the storage unit 20, and the efficiency of template matching can be improved.

[発明の効果] 以上のように、この発明によれば、アプリケーションご
とに適切なテンプレートパターンとマッチングメモリの
アドレスの割当を柔軟に変更することができ、テンプレ
ートマッチングの効率を上げることができる。
[Effects of the Invention] As described above, according to the present invention, it is possible to flexibly change the allocation of the template pattern and the address of the matching memory appropriate for each application, and it is possible to improve the efficiency of template matching.

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

第1図はこの発明の一実施例の構成を示す概略ブロック
図である。 第2図および第3図は第1図に示すアドレス割当部10の
構成の一例を示す回路図である。 第4図はアドレス割当部10に入力される2ビットの制御
データA0,A1と第2図に示す回路で作成される3ビット
の制御データB0,B1,B2との関係およびこれら制御データ
とアドレス割当部10から出力される3ビットのアドレス
信号D0,D1,D2との関係を示す図である。 第5図は従来のデータフロー型情報処理装置の一例の構
成を示すブロック図である。 第6図は第5図の従来装置におけるデータパケットのフ
ィールド構成を示す図である。 第7図は第5図の従来装置におけるプログラム記憶手段
の記憶内容のフィールド構成の一部を示す図である。 第8図は第5図の従来装置におけるデータ対生成手段の
マッチングメモリのフィールド構成を示す図である。 図において、1はプログラム記憶手段、2はデータ対生
成手段、3は演算処理手段、T1は第1のテンプレートパ
ターン、T2は第2のテンプレートパターン、10はアドレ
ス割当部、20は記憶手段、30は制御データを示す。
FIG. 1 is a schematic block diagram showing the configuration of an embodiment of the present invention. 2 and 3 are circuit diagrams showing an example of the configuration of the address allocation unit 10 shown in FIG. FIG. 4 shows the relationship between the 2-bit control data A0, A1 input to the address allocation unit 10 and the 3-bit control data B0, B1, B2 created by the circuit shown in FIG. 3 is a diagram showing a relationship with 3-bit address signals D0, D1, D2 output from an allocating unit 10. FIG. FIG. 5 is a block diagram showing the configuration of an example of a conventional data flow type information processing apparatus. FIG. 6 is a diagram showing a field structure of a data packet in the conventional apparatus of FIG. FIG. 7 is a diagram showing a part of the field structure of the stored contents of the program storage means in the conventional apparatus of FIG. FIG. 8 is a diagram showing the field structure of the matching memory of the data pair generating means in the conventional apparatus of FIG. In the figure, 1 is a program storage means, 2 is a data pair generation means, 3 is an arithmetic processing means, T1 is a first template pattern, T2 is a second template pattern, 10 is an address allocation section, 20 is a storage means, 30 Indicates control data.

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】複数のテンプレートパターンのそれぞれの
一部の組合わせからなるパターンをアドレスとしてマッ
チングメモリをアクセスしテンプレートマッチングを行
なう情報処理装置において、 前記マッチングメモリのアドレスを生成する際に、外部
から入力される制御データに基づいて、前記複数のテン
プレートパターンの混合比率を変更するための手段を備
える、テンプレートマッチング用アドレス生成装置。
1. An information processing device for accessing a matching memory and performing template matching using a pattern, which is a combination of a part of a plurality of template patterns, as an address, when an address of the matching memory is generated from an external device. A template matching address generation device comprising means for changing the mixing ratio of the plurality of template patterns based on the input control data.
JP63013278A 1988-01-22 1988-01-22 Address generator for template matching Expired - Fee Related JPH0695348B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63013278A JPH0695348B2 (en) 1988-01-22 1988-01-22 Address generator for template matching

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63013278A JPH0695348B2 (en) 1988-01-22 1988-01-22 Address generator for template matching

Publications (2)

Publication Number Publication Date
JPH01188948A JPH01188948A (en) 1989-07-28
JPH0695348B2 true JPH0695348B2 (en) 1994-11-24

Family

ID=11828734

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63013278A Expired - Fee Related JPH0695348B2 (en) 1988-01-22 1988-01-22 Address generator for template matching

Country Status (1)

Country Link
JP (1) JPH0695348B2 (en)

Also Published As

Publication number Publication date
JPH01188948A (en) 1989-07-28

Similar Documents

Publication Publication Date Title
US6141713A (en) Bus arbitrator with a hierarchical control structure
JP2850707B2 (en) Music control device
JPH07152721A (en) Microcomputer
JPH0695348B2 (en) Address generator for template matching
JPS6260755B2 (en)
JP2769384B2 (en) Arithmetic control IC and information processing device
JPH07334420A (en) Extended memory control circuit
JPS6148174B2 (en)
JPH0553920A (en) Structural address generator
US20030035323A1 (en) Data write circuit
JP3074978B2 (en) Emulation device
JPS5856885B2 (en) Address control method
JPH03116256A (en) Memory device
JPS61253559A (en) Microprocessor
JP2912090B2 (en) Time slot interchange circuit
JPS63197251A (en) Information processor
JP2616714B2 (en) Semiconductor storage device
JPH03214275A (en) Semiconductor integrated circuit
JPH10312356A (en) Data transfer device
JPS58168166A (en) Memory extension system
JPH0218638A (en) Data control system
JPS63229538A (en) Access control system for memory element of electronic computer
JPS6055591A (en) Access method of memory unit
JPH04303247A (en) Microcomputer device
JPH07219843A (en) Memory bank switching device

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees