JPH01119825A - Hash processing controller - Google Patents

Hash processing controller

Info

Publication number
JPH01119825A
JPH01119825A JP62278003A JP27800387A JPH01119825A JP H01119825 A JPH01119825 A JP H01119825A JP 62278003 A JP62278003 A JP 62278003A JP 27800387 A JP27800387 A JP 27800387A JP H01119825 A JPH01119825 A JP H01119825A
Authority
JP
Japan
Prior art keywords
data
address
hash
register
memory
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.)
Pending
Application number
JP62278003A
Other languages
Japanese (ja)
Inventor
Tomoaki Ueda
智章 上田
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.)
Daikin Industries Ltd
Original Assignee
Daikin Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Daikin Industries Ltd filed Critical Daikin Industries Ltd
Priority to JP62278003A priority Critical patent/JPH01119825A/en
Publication of JPH01119825A publication Critical patent/JPH01119825A/en
Pending legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

PURPOSE:To shorten hash processing time by providing a data table on the inside of an existing memory integrated into a system and generating an access address data based on a leading address data of the data table and an external data. CONSTITUTION:By outputting an address assigned to a leading address register 5 from a CPU 1, the leading address data alpha of a prescribed data table is supplied to the leading address register 5 from a decoder 8. Also, an external data X is inputted to the accumulator of the CPU 1 or an internal register from a buffer for holding the external data X with respect to an external data register 4, and simultaneously, the external data X is fetched to the external data register 4, as well. Subsequently, both the data are added by an adder 6, and an access address data (X+alpha) is generated. In such a way, when an address of a hash processing circuit is outputted from the CPU 1, a state that the output of the adder 6 is supplied to a main memory 2 can be selected, and a hash jump can be executed.

Description

【発明の詳細な説明】 〈産業上の利用分野〉 この発明はハッシュ処理制御装置に関し、さらに詳細に
いえば、外部から供給されたデータに基いてハッシュジ
ャンプ、データテーブルの4ノーチ等を行なわせるのに
好適なハッシュ処理制御装置に関する。
[Detailed Description of the Invention] <Industrial Application Field> The present invention relates to a hash processing control device, and more specifically, a hash processing control device that performs hash jump, 4-notch, etc. of a data table based on externally supplied data. The present invention relates to a hash processing control device suitable for.

〈従来の技術〉 従来から、ピッ1〜スライス・プロセッサ、汎用マイク
ロ・プロセッサ等を相込んだ制御システムにおいては、
外部から供給されるコマンドデータに対応して特有の処
理を行なわせなりればならない場合があり、外部から供
給されるコマンドデータの数が多りれば、コマンド分岐
処理を高速化するためハッシュ処理を行なうことが一般
化しつつある。即ち、ハッシュ関数は、逐次比較処理と
巽なり、コマンドデータを変数とする関数(以F、ハッ
シュ関数と略称する)に基く演算を行なって、飛び先ア
ドレスデータ、係数データ等の目的情報が格納されてい
るアドレスデータを算出し、算出されたアドレスデータ
に基いて直接目的の情報を取出す処理であるから、外部
からコマンドデータが供給された場合に、短時間でメモ
リアクセスを行なうべきアドレスデータを得ることがで
きる。
<Conventional technology> Conventionally, in control systems that incorporate P1 to slice processors, general-purpose microprocessors, etc.,
There are cases where it is necessary to perform specific processing in response to command data supplied from an external source, and if there is a large amount of command data supplied from an external source, hash processing may be required to speed up command branch processing. It is becoming common to do this. In other words, the hash function is similar to successive approximation processing, and performs calculations based on a function (hereinafter referred to as hash function) that uses command data as a variable, and stores target information such as destination address data and coefficient data. Since this process calculates the address data that is being used and directly retrieves the target information based on the calculated address data, when command data is supplied from the outside, it is possible to calculate the address data that should be accessed in the memory in a short time. Obtainable.

さらに詳細に説明すると、 ■ ビットスライス・プロセッサにおいてハッシュジャ
ンプを行なう場合には、一般的にマツプメモリ法が使用
される。第4図はマツプメモリ法によるハッシュジャン
プを行なわせる場合の概略椙成を示すブロック図であり
、外部から供給されるコマンドデータXを入力としてハ
ッシュアドレスデータf(x)を出力するハッシュアド
レス出力部(41)、上記ハッシュアドレスデータf(
x)が読出しアドレスデータとして供給されることによ
り、予め格納されている飛び先アドレスデータJADが
読出されるマツプメモリ(42)、上記飛び先アドレス
データJADが供給されることにより、マイクロプログ
ラムメモリ(44)に予め格納されているマイクロプロ
グラム列の該当アドレスから始まるマイクロプログラム
をアクセスして、コマンドデータに基いて定められた処
理を遂行するごット・スライス・シーケンサ−(43)
を右している。
To explain in more detail: (1) When performing a hash jump in a bit slice processor, the map memory method is generally used. FIG. 4 is a block diagram schematically showing the structure of a hash jump using the map memory method, in which a hash address output unit ( 41), the above hash address data f(
x) is supplied as read address data, the jump address data JAD stored in advance is read out from the map memory (42), and when the jump address data JAD is supplied, the micro program memory (44 ) A sequencer (43) that accesses the microprogram starting from the corresponding address in the microprogram sequence stored in advance and performs the predetermined processing based on the command data.
That's right.

したがって、例えば、8ビツト構成のコマンドデータに
より256種類の分岐処理を行なわせる場合には、飛び
先アドレスが1ワードであれば、ハッシュアドレスデー
タf(x)がコマンドデータXど等しくなるので、バッ
ジコアドレス出ノj部(41)どしてコマンドデータX
を一時的に保持するレジスタを使用するたりて簡単に、
かつ迅速にハッシュジャンプを行なわゼることができる
Therefore, for example, when performing 256 types of branch processing using 8-bit command data, if the jump address is 1 word, hash address data f(x) will be equal to command data Command data X through core address output j part (41)
You can easily use a register to temporarily hold the
Moreover, a hash jump can be quickly performed.

■ マイクロ・プロセッサにおいてハッシュジャンプを
行なう場合には、メインメモリ内にジャンプテーブルを
設りる方法(第5図参照)、および専用のマツプメモリ
を設(プる方法(第6図参照)が一般的に使用される。
■ When performing a hash jump in a microprocessor, two common methods are to set up a jump table in the main memory (see Figure 5) and to set up a dedicated map memory (see Figure 6). used for.

前者の方法においては、外部から供給されるコマンドデ
ータXを外部コマンドレジスタ(51)に−時的に保持
させ、外部コマンドレジスタ(51)から読出されるコ
マンドデータXをデータバス(52)を通してプロセッ
サ(53)に転送することにより、所定の演算を行なっ
てハッシュアドレスデータf(x)(具体的には、例え
ば、ジャンプテーブルの先頭アドレスデータαに対して
コマンドデータXを加算することにより得られる)を生
成し、メインメモリ(54)に設けられたジャンプテー
ブル(54j)の、ハッシュアドレスデータf(x)か
ら飛び先アドレスデータJADを読出すことによりハッ
シュジャンプを行なうことができる。
In the former method, command data X supplied from the outside is temporarily held in an external command register (51), and command data X read from the external command register (51) is sent to the processor via a data bus (52). (53), a predetermined calculation is performed to obtain the hash address data f(x) (specifically, for example, the command data ) and read the jump destination address data JAD from the hash address data f(x) in the jump table (54j) provided in the main memory (54), thereby making it possible to perform a hash jump.

また、後者の方法においては、外部から供給されるコマ
ンドデータXをハッシュアドレス出力部(61)に供給
することにより、ハッシュアドレスデータf(x)をマ
ツプメモリ(62)に供給する。このマツプメモリ(6
2)には、プロセッサ(64)からの出力データに基い
てデコーダ(65)により生成され−〇  − るチップセレクト信号が供給されている。したがって、
チップセレクト信号に基いてマツプメモリ(62)から
、予め格納されている飛び先アドレスデータJADが読
出され、データバス(63)を通してブロセッ+J(6
4)に供給されるので、飛び先アドレスデータJADに
基いてメインメモリ(66)をアクセスする、ハッシュ
ジャンプを行なうことができる。
In the latter method, hash address data f(x) is supplied to the map memory (62) by supplying command data X supplied from the outside to the hash address output section (61). This map memory (6
2) is supplied with a chip select signal generated by a decoder (65) based on output data from the processor (64). therefore,
Based on the chip select signal, the pre-stored jump destination address data JAD is read from the map memory (62) and sent to the block +J (6) via the data bus (63).
4), it is possible to perform a hash jump that accesses the main memory (66) based on the jump destination address data JAD.

〈発明が解決しようとする問題点〉 上記第5図の構成を採用した場合には、飛び先アドレス
データJADを稈るために、コマンドデータXをプロセ
ッサ(53)に転送し、プロセッサ(53)の内部にお
いて転送データに基く演算を行なうことが必須になるた
め、1回のハッシュジャンプを行なうために少なくとも
数ステップの処理が必要になり、コマンドデータが供給
されてから実際にハッシュジャンプが行なわれるまでの
所要時間が長くなってしまうという問題がある。特に、
ハッシュジャンプにより行なわれる処理がベクタ描画処
理のように比較的ステップ数の少ない処理である場合に
は、ハッシュジャンプを行なうためのステップを行なう
ための所要時間が無視できないことになるので、逐次比
較方式を採用する場合と比較すれば、分岐処理を行なう
ための所要時間を短縮することができることにはなるが
、十分な所要時間の短縮を達成することができないので
ある。
<Problems to be Solved by the Invention> When the configuration shown in FIG. 5 is adopted, the command data Since it is necessary to perform calculations based on the transferred data internally, at least several steps are required to perform one hash jump, and the hash jump is actually performed after the command data is supplied. There is a problem in that it takes a long time to get there. especially,
If the process performed by hash jump is a process with a relatively small number of steps, such as vector drawing processing, the time required to perform the steps for performing hash jump cannot be ignored, so the successive approximation method is used. Although it is possible to reduce the time required to perform a branch process compared to the case where the method is adopted, it is not possible to achieve a sufficient reduction in the required time.

上記第4図、或は第6図の構成を採用した場合には、プ
ロセッサによる演算等を行なうことなく飛び先アドレス
データJADを得ることができるのであるから、コマン
ドデータが供給されてから実際にハッシュジャンプが行
なわれるまでの所要時間を著しく短縮することができる
のであるが、専用のマツプメモリを設けることが必須に
なるため、ハードウェアの規模が大きくなり、全体とし
てコストアップを招いてしまうという問題がある。
When the configuration shown in FIG. 4 or 6 is adopted, the jump destination address data JAD can be obtained without performing any calculations by the processor, so the actual processing after command data is supplied is possible. Although this can significantly reduce the time required to perform a hash jump, it requires a dedicated map memory, which increases the scale of the hardware and increases the overall cost. There is.

即ち、ハッシュジャンプの種類が増加すれば、必然的に
マツプメモリの容量を大きくすることが必要になるので
あり、しかも、飛び先アドレスJADのワード数が増加
した場合にも、必然的にマツプメモリの容量を大きくす
ることが必要になる。
In other words, if the types of hash jumps increase, the capacity of the map memory will inevitably need to be increased.Furthermore, if the number of words of the jump destination address JAD increases, the capacity of the map memory will also inevitably increase. It is necessary to make it larger.

また、マツプメモリとしては通常プログラマブルリード
オンリーメモリ(以下、PROMと略称する)が使用さ
れているが、PROMを使用すれば、内容の変更を行な
うことができないため、システムのバージョンアップに
簡単には対処することができないという問題がある。
In addition, programmable read-only memory (hereinafter abbreviated as PROM) is usually used as map memory, but if PROM is used, the contents cannot be changed, so system upgrades cannot be easily handled. The problem is that it cannot be done.

逆に、マツプメモリとしてスタティックランダムアクセ
スメモリ(以下、SRAMと略称する)を使用寸れば、
内容の変更を簡単に行なうことができるが、テーブル設
定のためのアドレスをマツプメモリに与えるためのアド
レスアービタが必要になり、構成を一層複雑化すること
になるという新たな問題が生じる。
Conversely, if you use static random access memory (hereinafter abbreviated as SRAM) as map memory,
Although the contents can be easily changed, a new problem arises in that an address arbiter is required to provide the map memory with an address for setting the table, which further complicates the configuration.

〈発明の目的〉 この発明は上記の問題点に鑑みてなされたものであり、
専用のメモリを省略覆ることができ、しかも、外部から
コマンドデータが供給されてから、所定のメモリアクセ
スが行なわれるまでの所要時間を短縮することができる
ハッシュ処理制御装置を提供することを目的としている
<Object of the invention> This invention was made in view of the above problems,
An object of the present invention is to provide a hash processing control device that can omit a dedicated memory and shorten the time required from when command data is supplied from the outside to when a predetermined memory access is performed. There is.

〈問題点を解決するための手段〉 上記の目的を達成するための、この発明のハッシュ処理
制御装置は、外部から供給されるデータを一時的に保持
する外部データ保持手段と、メモリブロックの先頭アド
レスデータを保持する先頭アドレス保持手段と、両保持
手段に保持されているデータに基いてメモリをアクセス
するためのアドレスデータを生成するアドレス生成手段
とを具備している。
<Means for Solving the Problems> To achieve the above object, the hash processing control device of the present invention includes external data holding means for temporarily holding data supplied from the outside, and It includes a head address holding means for holding address data, and an address generating means for generating address data for accessing the memory based on the data held in both holding means.

但し、上、記アドレス生成手段としては、加静器、或は
積和演算器であってもよいが、両保持手段に保持されて
いるデータを並列一体化するアドレスバスであることが
好ましい。この場合にお番プるアドレスバスとしては、
先頭アドレス保持手段に保持されているデータを上位ビ
ットとし、外部データ保持手段に保持されているデータ
を下位ビットとするものであることが好ましい。
However, the above address generating means may be an accelerator or a product-sum calculator, but is preferably an address bus that integrates data held in both holding means in parallel. In this case, the address bus used is
It is preferable that the data held in the head address holding means be the upper bits, and the data held in the external data holding means be the lower bits.

また、上記メモリブロックが複数設けられているととも
に、先頭アドレス保持手段が、選択的に何れかのメモリ
ブロックの先頭アドレスデータを保持するものであるこ
とが好ましい。
Further, it is preferable that a plurality of the memory blocks are provided and the start address holding means selectively holds the start address data of any one of the memory blocks.

さらに、上記メモリブロックとしては、ハッシュジャン
プのための飛び先アドレスデータを保持するものであっ
てもよく、或は、データテーブルであってもよい。
Furthermore, the memory block may be one that holds jump destination address data for hash jump, or may be a data table.

く作用〉 以上の構成のハッシュ処理制御装置であれば、外部から
供給されるデータに基いて所定のメモリブロックの該当
アドレスをアクセスする場合において、メモリブロック
の先頭アドレスデータを先頭アドレス保持手段に保持さ
せておくとともに、外部から供給されるデータを外部デ
ータ保持手段に一時的に保持さゼておき、両保持手段に
保持されているデータをアドレス生成手段にイバ給づる
ことにより、メモリをアクセスするためのアドレスデー
タを生成することができる。
Effect> With the hash processing control device having the above configuration, when accessing a corresponding address of a predetermined memory block based on data supplied from the outside, the start address data of the memory block can be held in the start address holding means. At the same time, the data supplied from the outside is temporarily held in the external data holding means, and the memory is accessed by temporarily feeding the data held in both holding means to the address generating means. It is possible to generate address data for

そして、上記アドレス生成手段が加算器である場合には
、両保持手段に保持されているデータ同士を加算するこ
とにより、メモリをアクセスするだめのアドレスデータ
を生成することができる。
When the address generating means is an adder, address data for accessing the memory can be generated by adding the data held in both holding means.

同様に、上記アドレス生成手段が積和演算器である場合
には、両保持手段に保持されているデータに基いて積和
演算を施すことにより、メモリをアクセスするだめのア
ドレスデータを生成することができる。
Similarly, when the address generation means is a product-sum operation unit, address data for accessing the memory can be generated by performing a product-sum operation based on the data held in both holding means. Can be done.

また、上記アドレス生成手段が、両保持手段に保持され
ているデータを並列一体化するアドレスバスである場合
には、単に両保持手段からデータをアドレスバスに出力
するだけで、メモリをアクセスするためのアドレスデー
タを生成することができる。この場合において、上記ア
ドレスバスが、先頭アドレス保持手段に保持されている
データを上位ビットとし、外部データ保持手段に保持さ
れているデータを下位ビットとするものである場合には
、上位ピッ1〜により定義されるメモリブロックについ
て、外部から供給されるデータに基いてアクセスのため
のアドレスデータを生成することができる。
Furthermore, if the address generating means is an address bus that integrates data held in both holding means in parallel, the memory can be accessed by simply outputting data from both holding means to the address bus. address data can be generated. In this case, if the address bus is such that the data held in the head address holding means is the upper bit and the data held in the external data holding means is the lower bit, the upper bits 1 to 1 are For a memory block defined by , address data for access can be generated based on data supplied from the outside.

さらに、上記メモリブロックが複数ffu tノられて
いるとともに、先頭アドレス保持手段が、選択的に何れ
かのメモリブロックの先頭アドレスデータを保持するも
のである場合には、先頭アドレス保持手段に保持される
アドレスデータを変更することにより、アクセスされる
メモリブロックを簡単に選択することができる。
Further, when a plurality of the memory blocks are stored and the start address holding means selectively holds the start address data of any of the memory blocks, the start address holding means holds the start address data. By changing the address data, the memory block to be accessed can be easily selected.

さらには、上記メモリブロックがハッシュジャンプのた
めの飛び先アドレスデータを保持している場合には、ハ
ッシュジャンプを行なわせることができ、上記メモリブ
ロックがデータテーブルである場合には、データアクセ
スを行なわせることができる。
Furthermore, if the memory block holds jump destination address data for a hash jump, a hash jump can be performed, and if the memory block is a data table, data access can be performed. can be set.

〈実施例〉 以下、実施例を示す添付図面によって詳細に説明する。<Example> Hereinafter, embodiments will be described in detail with reference to the accompanying drawings showing examples.

第1図はこの発明のハッシュ処理制御l装置の一実施例
を示すブロック図である。
FIG. 1 is a block diagram showing an embodiment of a hash processing control device of the present invention.

この実施例に83いては、中央演算処理装置(以下、C
PUと略称覆る)(1)から出力されるアドレスデータ
をメインメモリ(2)に供給でることにより、該当アド
レスのデータがCP IJ (1)に取込まれる基本的
な構成を有しているとともに、バッファ(3)を通して
取込まれた外部データを一時的に保持する外部データレ
ジスタ(4)、および上記メインメモリ(2)に割当て
られたデータテーブルの先頭アドレスデータを保持づ′
る先頭アドレスレジスタ(5)の内容を加算してアクセ
スアドレスデータを生成し、上記メインメモリ(2)に
供給する加fA 器(6)を有している。さらに詳細に
説明づれば、上記CP U (11がらアドレスバス(
7)を通して送出されるアドレスデータを入力とするデ
コーダ(8)を設(プておぎ、デコーダ(8)から出力
されるイネーブル信号により上記バッファ(3)、およ
び両レジスタ(’1.1 (5)のデータ入出力を制御
するようにしている。また、上記CP U (1)から
のアドレスデータ、および加算器(6)からのアドレス
データは、デコーダ(8)からのデコード信号により切
替動作させられるセレクタ(9)を通して選択的にメイ
ンメモリ(2)に供給されるようにしている。尚、上記
バッファ(3)から外部データレジスタ(4)にデータ
が転送されると同時にデータバス00)を通してCP 
U (1)のアキュムレータ、或は内部レジスタにも同
一のデータが転送されるようにしている。また、データ
テーブルの先頭アドレスデータを変更する場合には、C
P U (11から出力される新たなアドレスデータが
データバス00)を通して先頭アドレスレジスタ(5)
に供給される。
In this embodiment, the central processing unit (hereinafter referred to as C
By supplying the address data output from the main memory (2) (abbreviated as PU) (1), the data at the corresponding address is taken into the CP IJ (1). , an external data register (4) that temporarily holds external data taken in through the buffer (3), and an external data register (4) that holds the start address data of the data table allocated to the main memory (2).
It has an adder (6) that adds the contents of the first address register (5) to generate access address data and supplies it to the main memory (2). To explain in more detail, the CPU (11) and the address bus (
A decoder (8) is installed which inputs the address data sent out through the buffer (3) and both registers ('1. ).Furthermore, the address data from the CPU (1) and the address data from the adder (6) are switched by a decode signal from the decoder (8). The data is selectively supplied to the main memory (2) through the selector (9) which is connected to C.P.
The same data is also transferred to the accumulator or internal register of U (1). Also, when changing the start address data of the data table, C
P U (New address data output from 11 is data bus 00) to the start address register (5)
is supplied to

上記CP Ll (1)からの出力アドレスデータ、お
よびデコーダ(8)の関係についてさらに詳細に説明す
ると、CPtJ(1)のアドレス空間のうち、少なくと
も1アドレスを先頭アドレスレジスタ(5)のアドレス
として割当て、少なくとも1アドレスを外部からの入力
アドレスとして割当て、少なくとも1アドレスを外部デ
ータレジスタ(4)のアドレスとして割当てている。そ
して、少なくとも1アドレスをバッファ(3)、および
外部データレジスタ(4)のアドレスとして割当て、1
回のアクセスで外部データをバッファ(3)からCP 
U (11のアキュムレータ、或は内部レジスタに取込
むと同時に外部データレジスタ(4)に供給するように
している。また、少なくとも1アドレスをハッシュ処理
回路の出力アドレスに基くメインメモリ(2)のアクセ
スアドレスとして割当てている。さらに、残余のアドレ
スについては、デコーダ(8)からのデコード信号によ
りセレクタ(9)を切替制御し、そのままメインメモリ
(2]をアクセスするようにしている。
To explain in more detail the relationship between the output address data from CP Ll (1) and the decoder (8), at least one address out of the address space of CPtJ (1) is assigned as the address of the first address register (5). , at least one address is assigned as an input address from the outside, and at least one address is assigned as an address of the external data register (4). Then, at least one address is allocated as the address of the buffer (3) and the external data register (4), and 1
External data is transferred from the buffer (3) to the CP in one access.
U (11 accumulators or internal registers and simultaneously supplied to the external data register (4). Also, at least one address is accessed from the main memory (2) based on the output address of the hash processing circuit. Furthermore, for the remaining addresses, the selector (9) is switched and controlled by the decode signal from the decoder (8), so that the main memory (2) is directly accessed.

また、上記メインメモリ(aの所定領域には、多数の飛
び先アドレスデータJADが格納されたデータテーブル
(2a)を設けている。
Further, a data table (2a) in which a large number of jump destination address data JAD is stored is provided in a predetermined area of the main memory (a).

上記の構成のハッシュ処理制御装置の動作は次のとおり
である。
The operation of the hash processing control device having the above configuration is as follows.

先ず、CP U (1)から先頭アドレスレジスタ(5
)に割当てられたアドレスを出力することにより、デコ
ーダ(8)から先頭アドレスレジスタ(5)に対してデ
コード信号を供給して、先頭アドレスデータ書込み許容
状態を選択し、この状態において、データバス(至)を
通してCP U (11から先頭アドレスレジスタ(5
)に対して所定のデータテーブルの先頭アドレスデータ
αを供給する。
First, from the CPU (1) to the start address register (5
), the decoder (8) supplies a decode signal to the start address register (5), selects the start address data write permission state, and in this state, ) through CPU U (11 to start address register (5
) of a predetermined data table.

その後は、CP (J (11から、外部からの入力ア
ドレスとして割当てたアドレスを出力することによリデ
コーダ(8)を介してバッファ(3)が選択され、外部
データをバッファ(3)に保持させ、次いで、CPU(
1)から、バッファ(3)、および外部データレジスタ
(4)に割当てられたアドレスを出力することにより、
デコーダ(8)からバッファ(3)、および外部データ
レジスタC)に対してデコード信号を供給して、外部デ
ータXを保持しているバッファ(3)から、CP U 
(1)のアキュムレータ、或は内部レジスタに外部デー
タXを取込むと同時に、外部データレジスタ(4)にも
外部データXを取込む。
After that, the buffer (3) is selected via the re-decoder (8) by outputting the address assigned as an external input address from CP (J (11), and the external data is held in the buffer (3). , then the CPU (
1), by outputting the address assigned to the buffer (3) and external data register (4),
A decode signal is supplied from the decoder (8) to the buffer (3) and the external data register C), and from the buffer (3) holding external data
At the same time as the external data X is loaded into the accumulator (1) or the internal register, the external data X is also loaded into the external data register (4).

この状態においては、外部データレジスタ(4)に外部
データXが一時的に保持されているとともに、先頭アド
レスレジスタ(5)に先頭アドレスデータαが保持され
ているので、加算器(6)により両データが加算され、
アクセスアドレスデータX+αが生成される。また、C
P U (1)から、ハッシュ処理回路の出力アドレス
に基(メインメモリ(2)のアクセスアドレスとして割
当てられたアドレスを出力することにより、デコーダ(
8)からのデコード信号に基いて切替制御されるセレク
タ(9)を通して上記用算器(6)から出力されるアク
セスアドレスデータX+αがメインメモリ(2)に供給
される状態を選択することができる。
In this state, external data X is temporarily held in the external data register (4), and starting address data α is held in the starting address register (5), so the adder (6) The data is added,
Access address data X+α is generated. Also, C
From P U (1), the decoder (
It is possible to select the state in which the access address data X+α output from the calculator (6) is supplied to the main memory (2) through the selector (9) which is switched and controlled based on the decode signal from the calculator (8). .

したがって、供給されたアクセスアドレスデータX+α
に基いて、メインメモリ(2)から該当アドレスの内容
、即ち、飛び先アドレスデータJADがデータバス(1
0)に送出されることになり、この飛び先アドレスデー
タJADをCP U (1)に取込むことにより、ハッ
シュジャンプを行なうことができる。
Therefore, the supplied access address data X+α
Based on the main memory (2), the content of the corresponding address, that is, the jump destination address data
By taking this jump destination address data JAD into the CPU (1), a hash jump can be performed.

以上のようにして1回のハッシュジャンプを行なった後
は、ハッシュジャンプを行なう必要が生じた場合に、上
記バッファ(3)の選択以下の処理を行なわせることに
より、外部データに依存する新たなハッシュジャンプを
行なわせる。
After performing one hash jump as described above, when it becomes necessary to perform a hash jump, by performing the processing below the selection of the buffer (3) above, new data that depends on external data can be created. Have him do a hash jump.

そして、ハッシュジャンプを行なう必要がない場合には
、デコーダ(8)から出力されるデコード信号によりセ
レクタ(9)を切替えて、CP U (11から出力さ
れるアドレスデータがそのままメインメモリ(2)に供
給されるようにすればよく、通常のメモリ。
If there is no need to perform a hash jump, the selector (9) is switched by the decode signal output from the decoder (8), and the address data output from the CPU (11) is directly stored in the main memory (2). Normal memory should be supplied.

アクセスを行なうことができる。can be accessed.

また、データテーブル(2a)に飛び先アドレスデータ
を格納する代わりに、係数データを格納しておけば、外
部データに依存する係数データに基く処理を行なわせる
ことができる。したがって、飛び先アドレスデータのみ
しか格納することができない専用マツプメモリと比較し
て、格納しておくデータの自由度を著しく高めることか
できる1゜さらに、メインメモリ(2)に複数のf−タ
テ−プル(2a)を設けておき、CP U (1]によ
り何れかのデータテーブルの先頭アドレスデータを先頭
アドレスレジスタ(5)に供給する構成を採用すること
もできる。
Furthermore, if coefficient data is stored in the data table (2a) instead of jump destination address data, processing can be performed based on coefficient data that depends on external data. Therefore, compared to a dedicated map memory that can only store jump destination address data, the degree of freedom of stored data can be significantly increased.Furthermore, the main memory (2) can store multiple f-data It is also possible to adopt a configuration in which a pull (2a) is provided and the CPU (1) supplies the start address data of any data table to the start address register (5).

以上の説明から明らかなように、この実施例においては
、CP U (1)によりアクセスアドレスデータを算
出する必要がないため、データテーブルから必要なデー
タを読出すまでの所要時間を短縮することができ、しか
も、データテーブル(2a)をメインメモリ(2)に設
りているので、専用のマツプメモリを設置プる必要がな
くなり、全体としてハードウェア構成を簡素化すること
ができる。さらには、データテーブル(2a)がメイン
メモリ(2)に設けられているので、バージョンアップ
に簡単に対処づることができる。
As is clear from the above explanation, in this embodiment, there is no need for the CPU (1) to calculate the access address data, so the time required to read the necessary data from the data table can be shortened. Moreover, since the data table (2a) is provided in the main memory (2), there is no need to install a dedicated map memory, and the overall hardware configuration can be simplified. Furthermore, since the data table (2a) is provided in the main memory (2), version upgrades can be easily handled.

〈実施例2〉 第2図は他の実施例を示す概略ブロック図であり、上記
実施例と異なる点は、加算器(6)に代えて積和演算器
(6a)を設(プているとともに、CP U (1)に
より乗数データjが供給され、この乗数データjを積和
演算器(6a)に供給する乗数レジスタ(6b)を設け
た点、メインメモリ(2)をリードオンリーメモリ(以
下、ROMと略称する) (2b)、およびランダムア
クセスメモリ(以下、RAMと略称する)(2C)で構
成した点、およびデコーダ(8)から出力されるデコー
ド信号により選択的に動作させられるバッファ(qal
(9b)を介してCP tJ (1,1からのアドレス
データ、積和演算部(6a)からのアドレスデータを選
択的にアドレスバス(7)に送出するようにした点のみ
である。
<Embodiment 2> FIG. 2 is a schematic block diagram showing another embodiment. The difference from the above embodiment is that a product-sum calculator (6a) is provided in place of the adder (6). In addition, a multiplier register (6b) is provided, which is supplied with multiplier data j by the CPU (1) and supplies this multiplier data j to the product-sum calculator (6a), and the main memory (2) is replaced by a read-only memory ( (hereinafter abbreviated as ROM) (2b), random access memory (hereinafter abbreviated as RAM) (2C), and a buffer that is selectively operated by a decode signal output from a decoder (8) (qal
The only difference is that the address data from CP tJ (1, 1) and the address data from the product-sum operation section (6a) are selectively sent to the address bus (7) via (9b).

この実施例の場合には、バッファ(9b)により積和演
算部(6a)からのアドレスデータがアドレスバス(7
)に送出する状態が選択されている場合に、外部データ
レジスタ(4)に保持されている外部データX、および
先頭アドレスレジスタ(5)に保持されている先頭アド
レスデータαに基いてアクセスアドレスデータjX十α
を得、アクセスアドレスデータに基イT ROM (2
b)、或ハRA M (2C);/)11B 飛ヒ先ア
ドレスデータJADを読出してハッシュジャンプを行な
うことができる。
In this embodiment, the buffer (9b) transfers the address data from the product-sum operation unit (6a) to the address bus (7).
) is selected, the access address data is sent based on the external data X held in the external data register (4) and the start address data α held in the start address register (5). jX ten α
Based on the access address data, T ROM (2
b), or CRAM (2C);/) 11B It is possible to read the destination address data JAD and perform a hash jump.

したがって、ア゛−タテ−プル(2a)に格納されてい
るデータが1ワードでなく、jワードである場合に、上
記実施例と同様の外部データXを供給づ”るだけで、j
ワード単位のデータに対するアクヒスを行なわせること
ができる。
Therefore, if the data stored in the data table (2a) is not 1 word but j words, by simply supplying external data
It is possible to access data in word units.

〈実施例3〉 第3図はさらに他の実施例を示すブロック図であり、第
1図の実施例と異なる点は、加算器(6)を省略し、メ
インメモリ(2)に供給されるアドレスデータ用のアド
レスバス(11)の上位ビット部分を先頭アドレスレジ
スタ(5)ど、上位ビット部分を外部データレジスタ(
4)と、それぞれ接続した点、および両レジスタ(41
f5)として出力をハイインピーダンスにすることがで
きるものを使用するとともに、上記セレクタ(9)に代
えてバッフF(12)を設け、デコーダ(8)から両レ
ジスタ(4) (5)に供給される出力イネーブル信号
をインバータ(13)により反転させてバッファ(12
)の出力制御端子に供給した点のみである。
<Embodiment 3> FIG. 3 is a block diagram showing still another embodiment. The difference from the embodiment of FIG. 1 is that the adder (6) is omitted and the main memory (2) is supplied with The upper bit part of the address bus (11) for address data is stored in the first address register (5), and the upper bit part is stored in the external data register (5).
4), the connected points, and both registers (41
F5) that can make the output high impedance is used, and a buffer F (12) is provided in place of the selector (9), so that the output is supplied from the decoder (8) to both registers (4) and (5). The output enable signal is inverted by the inverter (13) and sent to the buffer (12).
) is the only point that is supplied to the output control terminal.

この実施例の場合には、第1図の実施例ど同様にして、
外部データレジスタ(/I)に外部データXを、先頭ア
ドレスレジスタ(5)に先頭アドレスデータαをそれぞ
れ保持させることができる。そして、この状態において
、デコーダ(8)から両レジスタ(/+15)に対して
出力イネーブル信号を供給するとともに、インバータ(
13)を介してバッファ(12)に対して出力禁止信号
を供給ずれば、先頭アドレスレジスタ(5)の内容を上
位ピッ1〜とし、かつ外部データレジスタ(4)の内容
を下位ピッ1〜とするアクセスアドレスデータβがアド
レスバス(11)を通してメインメモリ(2)に供給さ
れ、外部データXに対応する飛び先アドレスデータJA
Dをメインメモリ(2)から読出してハッシュジャンプ
を行なうことができる。
In this embodiment, similarly to the embodiment of FIG.
External data X can be held in the external data register (/I), and start address data α can be held in the start address register (5). In this state, the decoder (8) supplies an output enable signal to both registers (/+15), and the inverter (
13) to the buffer (12), the contents of the start address register (5) will be set to upper pips 1~ and the contents of the external data register (4) will be set to lower pis 1~. Access address data β is supplied to the main memory (2) through the address bus (11), and destination address data JA corresponding to external data
A hash jump can be performed by reading D from the main memory (2).

したがって、加算器(6)を省略することにより構成を
簡素化することができ、しかも、外部データレジスタ(
4)、および先頭アドレスレジスタ(5)のビット幅を
も少なくすることができることになる。
Therefore, the configuration can be simplified by omitting the adder (6), and the external data register (
4) and the bit width of the start address register (5) can also be reduced.

尚、上記インバータ(13)については、PLD(pr
ogramable Logic Device)化す
ることによりデコーダ(8)と一体化することができる
In addition, regarding the above inverter (13), PLD (pr
It can be integrated with the decoder (8) by converting it into an ogrammable Logic Device.

また、上記メインメモリ(2)をROM (2b)、お
よびRA M (2c)で構成し、データテーブル(2
a)をROM (2b)、或はRA M (2c)の何
れか、或は双方に設けておくことが可能であり、このよ
うな構成を採用しておけば、上位プロセッサ(図示せず
)からソフトウェアをダウンロードするだけでバージョ
ンアップ等に対処覆ることができ、バージョンアップ等
に対処するための特別のメモリ内容の変更処理を施す必
要が皆無となる。
In addition, the main memory (2) is composed of a ROM (2b) and a RAM (2c), and a data table (2).
a) can be provided in either the ROM (2b) or the RAM (2c), or both, and if such a configuration is adopted, the upper processor (not shown) It is possible to deal with version upgrades, etc. by simply downloading the software from , and there is no need to perform special memory content change processing to deal with version upgrades.

尚、この発明は上記の実施例に限定されるものではなく
、例えば、バッファ(3)としてFIFOメモリを使用
することが可能であるほか、バッファ(3)と外部デー
タレジスタ(4)に対して別個に制御信号を供給するこ
とによりCP U (1)への外部データ取込みと、外
部データレジスタ(4)への外部データ取込みとを互に
異なるタイミングで行なわせることが可能であり、その
他、この発明の要旨を変更しない範囲内において種々の
設計変更を施すことが可能である。
It should be noted that the present invention is not limited to the above embodiments; for example, it is possible to use a FIFO memory as the buffer (3), and also to By supplying separate control signals, it is possible to import external data into the CPU (1) and external data into the external data register (4) at different timings. Various design changes can be made without changing the gist of the invention.

〈発明の効果〉 以上のようにこの発明は、データテーブルをシステムに
組込まれている既存のメモリの内部に設けておき、デー
タテーブルの先頭アドレスデータと外部データとに基い
てアクセスアドレスデータを生成するようにしているの
で、cPUにょる演輝のためのステップを省略してcP
Uの負担を低減させることができるとともに、ハッシュ
処理所要時間を短縮することができ、しかも余分な専用
メモリを不要にすることができるので、ハードウェア構
成の小規模化、および簡素化を達成することができると
いう特有の効果を奏する。
<Effects of the Invention> As described above, the present invention provides a data table in an existing memory built into a system, and generates access address data based on the start address data of the data table and external data. Since I am trying to do this, I omit the step for performing on the cPU and use the cP
It is possible to reduce the burden on U, shorten the time required for hash processing, and eliminate the need for extra dedicated memory, achieving a smaller and simpler hardware configuration. It has the unique effect of being able to

【図面の簡単な説明】[Brief explanation of the drawing]

第1図はこの発明のハッシュ処理制御装置の一実施例を
示すブロック図、 第2図、および第3図は、それぞれ他の実施例を示すブ
ロック図、 第4図から第6図は、それぞれ従来例を示すブロック図
。 (2)・・・メインメモリ、(2a)・・・データテー
ブル、(2b)・ROM 、 C2c)・−RA M、
(4)・・・外部データレジスタ、 (5・・・先頭アドレスレジスタ、(6)・・・加算器
、(6a)・・・積和演算器、(11)・・・アドレス
バス、特許出願人  ダイキン工業株式会着
FIG. 1 is a block diagram showing one embodiment of the hash processing control device of the present invention, FIGS. 2 and 3 are block diagrams showing other embodiments, and FIGS. FIG. 2 is a block diagram showing a conventional example. (2) Main memory, (2a) Data table, (2b) ROM, C2c) -RAM,
(4)...external data register, (5...start address register, (6)...adder, (6a)...product-sum calculator, (11)...address bus, patent application People Daikin Industries, Ltd.

Claims (1)

【特許請求の範囲】 1、外部から供給されるデータxに基いて 所定のメモリブロック(2a)の該当アドレスをアクセ
スする装置であって、外部か ら供給されるデータxを一時的に保持す る外部データ保持手段(4)と、メモリブロック(2a
)の先頭アドレスデータαを保持する先頭アドレス保持
手段(5)と、両保持手段(4)(5)に保持されてい
るデータx、αに基いてメモリ(2)(2b)(2c)
をアクセスするためのアドレスデータを生成するアド レス生成手段(6)(6a)(11)とを具備すること
を特徴とするハッシュ処理制御装置。 2、アドレス生成手段が加算器(6)である上記特許請
求の範囲第1項記載のハッシュ 処理制御装置。 3、アドレス生成手段が積和演算器(6a)である上記
特許請求の範囲第1項記載のハ ッシュ処理装置。 4、アドレス生成手段が、両保持手段(4)(5)に保
持されているデータを並列一体化す るアドレスバス(11)である上記特許請求の範囲第1
項記載のハッシュ処理制御装 置。 5、アドレスバス(11)が、先頭アドレス保持手段(
5)に保持されているデータを上位ビットとし、外部デ
ータ保持手段(4)に保持されているデータを下位ビッ
トとする ものである上記特許請求の範囲第4項記 載のハッシュ処理制御装置。 6、メモリブロック(2a)が複数設けられているとと
もに、先頭アドレス保持手段(5)が、選択的に何れか
のメモリブロック (2a)の先頭アドレスデータαを保持するものである
上記特許請求の範囲第1項記 載のハッシュ処理制御装置。 7、メモリブロック(2a)がハッシユジヤンプのため
の飛び先アドレスデータを保持 している上記特許請求の範囲第1項記載 のハッシュ処理制御装置。 8、メモリブロック(2a)がデータテーブルである上
記特許請求の範囲第1項記載の ハッシュ処理制御装置。
[Claims] 1. A device that accesses a corresponding address of a predetermined memory block (2a) based on data x supplied from the outside, the external device temporarily retaining the data x supplied from the outside. Data holding means (4) and memory block (2a
) and the memory (2) (2b) (2c) based on the data x and α held in both the holding means (4) and (5).
1. A hash processing control device comprising address generation means (6), (6a), and (11) for generating address data for accessing. 2. The hash processing control device according to claim 1, wherein the address generating means is an adder (6). 3. The hash processing device according to claim 1, wherein the address generating means is a product-sum calculator (6a). 4. The above claim 1, wherein the address generation means is an address bus (11) that integrates data held in both the holding means (4) and (5) in parallel.
The hash processing control device described in Section 1. 5. The address bus (11) is connected to the start address holding means (
5. The hash processing control device according to claim 4, wherein the data held in the external data holding means (4) is used as the upper bits, and the data held in the external data holding means (4) is used as the lower bits. 6. A plurality of memory blocks (2a) are provided, and the start address holding means (5) selectively holds the start address data α of any one of the memory blocks (2a). The hash processing control device according to scope 1. 7. The hash processing control device according to claim 1, wherein the memory block (2a) holds jump destination address data for hash jump. 8. The hash processing control device according to claim 1, wherein the memory block (2a) is a data table.
JP62278003A 1987-11-02 1987-11-02 Hash processing controller Pending JPH01119825A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62278003A JPH01119825A (en) 1987-11-02 1987-11-02 Hash processing controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62278003A JPH01119825A (en) 1987-11-02 1987-11-02 Hash processing controller

Publications (1)

Publication Number Publication Date
JPH01119825A true JPH01119825A (en) 1989-05-11

Family

ID=17591274

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62278003A Pending JPH01119825A (en) 1987-11-02 1987-11-02 Hash processing controller

Country Status (1)

Country Link
JP (1) JPH01119825A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113778043A (en) * 2021-11-15 2021-12-10 西安热工研究院有限公司 Data point reference jumping method, system, equipment and medium for configuration tool

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113778043A (en) * 2021-11-15 2021-12-10 西安热工研究院有限公司 Data point reference jumping method, system, equipment and medium for configuration tool
CN113778043B (en) * 2021-11-15 2022-02-11 西安热工研究院有限公司 Data point reference jumping method, system, equipment and medium for configuration tool

Similar Documents

Publication Publication Date Title
US5301278A (en) Flexible dynamic memory controller
US20040215852A1 (en) Active memory data compression system and method
EP0339224A2 (en) Memory controller
JPH0241053B2 (en)
JPH10187661A (en) Method for entering scalar value of computer into vector
JPH0719426B2 (en) Disk controller
JP2001043180A (en) Microprocessor and storage device therefor
US5127096A (en) Information processor operative both in direct mapping and in bank mapping, and the method of switching the mapping schemes
US7310717B2 (en) Data transfer control unit with selectable transfer unit size
JPH0565910B2 (en)
JPH01119825A (en) Hash processing controller
JPH02235289A (en) Self clocking resister file
JPS5827253A (en) Data processing device
JPH0814791B2 (en) Processing system
JPH0333951A (en) Microcomputer system
JP2003196087A (en) Memory addressing system of microcontroller and page mapping device
JP2847729B2 (en) Information processing device
JPS6112579B2 (en)
JPH1185463A (en) Arithmetic network device
JPH0784963A (en) Semiconductor integrated circuit with cpu
JP2006031263A (en) Semiconductor device
JPS63123137A (en) Address coincidence signal generating system
JPH1196125A (en) Method for accessing memory in processor device, and processor device
JP2005157575A (en) Processor
JPH10161927A (en) Load buffer device