JP2950249B2 - データ処理装置及びソート演算装置 - Google Patents

データ処理装置及びソート演算装置

Info

Publication number
JP2950249B2
JP2950249B2 JP8232064A JP23206496A JP2950249B2 JP 2950249 B2 JP2950249 B2 JP 2950249B2 JP 8232064 A JP8232064 A JP 8232064A JP 23206496 A JP23206496 A JP 23206496A JP 2950249 B2 JP2950249 B2 JP 2950249B2
Authority
JP
Japan
Prior art keywords
record
projection
output
data
processing
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
JP8232064A
Other languages
English (en)
Other versions
JPH1078967A (ja
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP8232064A priority Critical patent/JP2950249B2/ja
Publication of JPH1078967A publication Critical patent/JPH1078967A/ja
Application granted granted Critical
Publication of JP2950249B2 publication Critical patent/JP2950249B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、特に射影演算処
理をハードウェアによって実行することにより、電子計
算機上のデータベース処理を高速化したデータ処理装置
及びこのデータ処理装置を使用して射影演算処理と共に
ソート処理を行うソート演算装置に関するものである。
【0002】
【従来の技術】図12は、例えば、「情報処理」Vol.3
3,No.12,p1416−1423に示された従来のハードウェア
ソート演算装置を示すものである。図において、101は
ハードウェアソート演算装置、102は制御装置、103はデ
ータベース処理装置、104はソート処理装置、105はホス
ト計算機のバス、106はホスト計算機の主記憶装置、107
はホスト計算機のCPU、108はホスト計算機上でデータを
格納するディスク装置、109はホスト計算機である。
【0003】次に動作について説明する。ホスト計算機
109でデータ処理の要求が発生すると、ホスト計算機109
のCPU107は、対象となるデータが格納されているディス
ク装置108からデータを取り出し、これをバス105を経由
して、ホスト計算機の主記憶装置106に転送する。そし
て、ホストCPU107からの命令により、ハードウェアソー
ト演算装置101がホスト計算機の主記憶装置106からデー
タを取り込む。ハードウェアソート演算装置101は、デ
ータを取り込むと、データベース処理装置103による処
理及びソート処理装置104によるソート処理を行ない、
結果を再びバス105を経由してホスト計算機の主記憶装
置106に転送する。ホスト計算機CPU107は、転送された
結果データを、入力時と同様にディスク装置108に格納
する。
【0004】次に、データベース処理装置103の動作に
ついて説明する。一般にデータベース処理装置103は、
入力されてくるデータに対し、射影処理を含むデータベ
ース演算処理を、ソート処理装置104によるソート処理
に先だった処理または後処理として実施する。ここで、
ソート処理装置104はハードウェアで構成されている
が、データベース処理装置103は主に1個または複数個の
汎用マイクロプロセッサとその主記憶装置から構成され
ていた。従って、データベース処理装置103は、射影処
理を含むデータベース演算処理を、汎用マイクロプロセ
ッサが、その主記憶装置をワーキング領域として使用す
るといった、ソフトウェア処理として実行していた。
【0005】
【発明が解決しようとする課題】従来のハードウェアソ
ート演算装置は以上のように構成されていたため、以下
の問題点があった。
【0006】射影演算処理を、ハードウェアによるソー
ト処理の前処理あるいは後処理として、ソフトウェアが
シリアルに行なっていたため、ハードウェアで構成され
たソート演算装置が高速にソート処理を実行しても、射
影演算処理を実行するソフトウェア処理が相対的に低速
であるため、全体的な演算速度が遅くなっていた。ま
た、データベースを構成するレコード中のいくつかの特
定のフィールドを各々複数のフィールドへ複写するよう
な射影処理を施す場合、そのフィールドデータの複写処
理をソフトウェアにより実行する分のオーバヘッドが、
システム全体の処理速度低下の原因になっていた。
【0007】また、転送途中で各レコードにレコードID
を付加する処理において、ソフトウェアによる処理で実
施していたため、ソフトウェアによる実行のオーバヘッ
ドが、システム全体の処理速度低下の原因になってい
た。
【0008】さらに、射影演算処理回路を構成した場
合、ソフトウェアにより射影演算処理に必要なパラメー
タを内部レジスタに設定して、回路を起動し、結果を得
ることになるため、設定するパラメータを誤って設定
し、回路起動して、結果が得られた場合、その結果の正
当性を保証することが困難であった。また、そのエラー
チェックをソフトウェアで実施する時、性能低下を招い
た等の問題点があった。
【0009】この発明は、上記のような問題点を解消す
るためになされたもので、システム全体としての処理速
度を改善すること及びシステムの信頼性を高めることを
目的とする。
【0010】
【課題を解決するための手段】この発明に係るデータ処
理装置は、複数のフィールドから構成される入力レコー
ドを格納するレジスタ、上記フィールドの射影後の上記
レコードの先頭からの相対アドレスの位置及び長さを格
納した射影処理テーブル、この射影処理テーブルから読
み込んだ相対アドレス及びフィールド長から上記各フィ
ールドの出力サイズと出力アドレスを演算し出力する演
算部、この演算部の演算結果に基づき上記レジスタに格
納された入力レコードの各フィールドを配列して出力レ
コードを生成するセレクタ、上記入力レコードの読み込
みから出力レコードの出力までを制御する制御部を備え
たものである。
【0011】また、上記射影処理テーブルは、一つのフ
ィールドにつき複数の相対アドレスを設定可能なもので
ある。
【0012】さらに、上記射影処理テーブルは、レコー
ド識別番号の相対アドレスを設定可能なものである。
【0013】また、上記射影処理テーブルは、上記フィ
ールドを削除する指定が設定可能なものである。
【0014】さらにまた、上記射影処理テーブルは、デ
ータ内容とそのデータ内容の種別を表す識別子から構成
されるものである。
【0015】この発明に係るソート演算装置は、複数の
フィールドから構成される入力レコードを格納するレジ
スタ、上記フィールドの射影処理後の上記レコードの先
頭からの相対アドレスの位置及び長さを格納した射影処
理テーブル、この射影処理テーブルから読み込んだ相対
アドレス及びフィールド長から上記各フィールドの出力
サイズと出力アドレスを演算し出力する演算部、この演
算部の演算結果に基づき上記レジスタに格納された入力
レコードの各フィールドを配列して出力レコードを生成
するセレクタ、上記入力レコードの読み込みから出力レ
コードの出力までを制御する制御部を備えたことを特徴
とするデータ処理装置を有し、このデータ処理装置の出
力レコードを格納するメモリ、このメモリに対するリー
ドライト及び上記データ処理装置の出力を制御するシー
ケンサ、このシーケンサに起動をかけるプロセッサ、こ
のプロセッサにより起動をかけられたシーケンサによる
射影処理後のレコードがメモリにライト後リードされそ
のリードされたレコードをソートするソータ部を備えた
ものである。
【0016】また、上記演算部が演算中のときは上記プ
ロセッサにバスアクセスを許可する通知を出し、上記演
算部が演算中でないときは上記データ処理装置にバスア
クセスを許可する通知を出す調停回路を備えたものであ
る。
【0017】
【0018】
【発明の実施の形態】
実施の形態1.以下、本発明によるデータ処理装置及び
ソート演算装置の実施の形態1を図に基づいて説明す
る。図1は、ホストコンピュータにソート演算装置を接
続した時のシステム構成を示すブロック図である。図に
おいて、1はホストコンピュータのCPU、2はホストコ
ンピュータの主記憶装置、3はシステムバス、4はホス
トコンピュータの外部記憶装置、5は本発明によるソー
ト演算装置である。6はソート演算装置5とシステムバ
ス3とのデータのインタフェース、7はインタフェース
6とソータインタフェース8をつなぐデータバス、9は
パイプライン・マージソート法によるハードウェアソー
タを縦列に接続したソータ部、10はDMAによるデータ転
送を起動するプロセッサ、11はプロセッサ10が主記憶装
置としてアクセスすることができるメモリ、12はハード
ウェアにより射影演算処理を行なう機能を内蔵するDMA
制御部である。
【0019】図2は、ハードウェアにより射影演算処理
を行なう機能を内蔵するDMA制御部12の内部構成を示す
ブロック図である。図において、13は入力データバッフ
ァ、14はDMA転送をコントロールするシーケンサ、15は
本発明における射影演算処理を実行するデータ処理装置
としての射影処理制御回路、17はシーケンサ14から出力
された転送データ35と、射影演算処理回路15を通過して
きた転送データ36のいずれかを選択するセレクタ、18は
射影処理制御回路15が演算中である時、直ちには転送デ
ータを出力できないタイミングであることを示す信号で
あり、バス25を開放する通知である。
【0020】19はDMA制御部12のデータ転送と同じバス2
5を使用するマイクロプロセッサ10との間のバスアクセ
スを調停する調停回路であるバスアービタ、20はシーケ
ンサ14がバス25をアクセスしたい時にバスアービタ19に
対して出力するバス要求信号、21はバスアービタ19がシ
ーケンサ14にバスアクセスを許可することを示す信号、
22はマイクロプロセッサ10がバス25をアクセスしたい時
に、バスアービタ19に対して出力するバス要求信号、23
はバスアービタ19が上記信号18を受けたとき、マイクロ
プロセッサ10に対して、バス25のアクセスを許可するた
めに出力するバスアクセス許可信号、24は射影処理制御
回路15が シーケンサ14に対して転送データを出力する
ことを禁止する信号である。
【0021】26は射影処理制御回路15がメモリ11に対し
て出力するデータの位置を示すためのアドレス信号、27
はシーケンサ14がメモリ11からリードするデータの位置
を示すためのアドレス信号、28はアドレス信号26とアド
レス信号27とを転送モードにより選択して、アドレス信
号32としてメモリ11に出力するためのセレクタ、29は射
影処理制御回路15がメモリ11に対してデータを出力する
タイミングを示すためのデータストローブ信号、30はシ
ーケンサ14が、メモリ11上からデータをリードするタイ
ミングを示すため、または、射影処理制御回路15にデー
タを出力するためのストローブ信号、31はデータストロ
ーブ信号29とストローブ信号30を 転送モードにより選
択して、チップセレクト信号33としてメモリに出力する
ためのセレクタ、34は射影処理制御回路15が、シーケン
サ14に対して転送終了を通知する信号、35はシーケンサ
14が、射影処理制御回路15、及び セレクタ17に対して
転送 データを出力するデータ信号、36は射影処理制御
回路15の出力データをセレクタ17に伝達するデータ信
号、37はシーケンサ14が射影処理制御回路15に対して転
送開始を通知する信号、である。
【0022】図3は、図2における射影処理制御回路15の
内部構成例を示したブロック図である。図において、40
は射影演算処理内容を書き込んだ射影処理テーブル、41
は射影演算処理に使用する入力レコードの1レコード分
の長さを格納するレコード長レジスタ、42は転送する入
力レコードの全体の長さを格納する転送ブロック長レジ
スタ、43は転送後の1レコードの長さを格納する転送後
レコード長レジスタ、44は射影演算処理を実行するため
の出力アドレスと出力サイズを演算する演算部、45は射
影処理制御回路15全体の制御をする制御部、46は転送の
終了を検知するために各転送長レジスタ41〜43の値を各
々ゼロになるまでカウントする複数のカウンタから構成
されるカウンタである。
【0023】47は入力レコードである入力転送データ35
を射影処理テーブル40の内容通りに並べて出力するため
のレジスタ/セレクタ部、48は制御部45 から演算部44
への制御信号、49は制御部45から射影処理テーブル40に
テーブルポインタを進める、などの指示をするための制
御信号、50は射影処理テーブル40からテーブル内容デー
タを演算部44にセットするためのデータ信号、51は制御
部45からカウンタ46にレジスタ41〜43の各値をセット
し、またセットした値をカウントダウンしていくための
カウントストローブ信号、52は演算部44からレジスタ/
セレクタ部47に次に出力するデータ幅を指定する出力サ
イズ信号、53はカウンタ46のカウント値41〜43がカウン
トアップした時に制御部45にカウント終了を伝えるため
のカウント終了信号、54はレコード識別番号であるレコ
ードIDの初期値を保持し、1レコードを転送する毎にレ
コードIDの数字をカウントアップしていくレコードIDデ
ータカウンタ、55は制御部45からレコードIDデータカウ
ンタ54にカウントアップを指示するカウントアップ制御
信号、である。
【0024】次に、動作について説明する。図1におい
て、ホストコンピュータのCPU1が本発明によるソート
演算装置5を用いて、ソート処理と同時に射影処理を実
行しようとする場合、まずCPU1の命令によりソート処
理及び射影処理を実施しようとするデータを、ホストの
外部記憶装置4からホストコンピュータの主記憶装置2
に転送する。その後、ホストコンピュータの主記憶装置
2上に置かれたデータをソート演算装置5上に転送する
ようにソート演算装置5に対して命令を発行する。命令
を受けたソート演算装置5では、プロセッサ10により、
主記憶装置2からメモリ11へのDMA転送をDMA制御部12に
対して起動する。DMA起動により、データは、インタフ
ェース6及びバス7を経由してDMA制御部12に一時取り
込まれ、射影演算処理を施された後、メモリ11へと書き
込まれる。メモリ11に書き込まれたデータは、再度プロ
セッサ10により起動されたDMAにより、DMA制御部12 、
バス7、ソータインタフェース8を経由して、ソータ部
9に転送される。ソータ部9にてソート処理を施された
データは、ソータインタフェース8→バス7→DMA制御
部12→メモリ11の経路、及びメモリ11→DMA制御部12→
バス7→インタフェース6→ホストコンピュータの主記
憶装置2の経路を経て、プロセッサ10の2回のDMA処理
の起動により、命令されたデータ転送を完了する。
【0025】図2において、プロセッサ10により、DMA
が起動された時、DMA制御部12内部のシーケンサ14が主
体となって、DMA処理全体の制御を担当する。シーケン
サ14の中には、起動されたDMA処理の制御パラメータ
が、プロセッサ10によって設定されている。DMA転送パ
ラメータには、転送先もしくは転送元になるメモリ11上
の転送開始アドレス、起動したDMA処理で何バイトの転
送を実行するかを指定する転送量、どの方向のDMA処理
かを示す転送モード、がある。また、射影処理制御回路
15の内部にあるレジスタ(レコード長レジスタ41, 転送
ブロック長レジスタ42, 転送後レコード長レジスタ4
3)、及び射影処理テーブル40に、射影処理内容が設定さ
れている。プロセッサが、このパラメータを射影処理テ
ーブルに設定すると、シーケンサ14が動作を始める。
【0026】まず、シーケンサ14は、射影処理制御回路
15に対して 転送開始を通知する信号37を出力する。そ
して、ホストコンピュータの主記憶装置2→メモリ11方
向のDMA処理を起動されると、シーケンサ14はホストコ
ンピュータの主記憶装置2→インタフェース6→バス7
を経由して、入力データバッファ13にデータを格納す
る。そして、自身の内部を通過したデータを、データ信
号35を経由させて、射影処理制御回路15に出力する。ま
た、その時セレクタ31へのデータストローブ信号30を出
力する。一方、シーケンサ14の内部に設定された、メモ
リ11上の転送開始アドレスが、アドレス信号27の分岐を
経由して、射影処理制御回路15に出力されている。射影
処理制御回路15は、受け取ったデータと、転送先アドレ
ス27と、射影処理テーブル設定値による演算を開始す
る。
【0027】演算中のため、データ出力がすぐには不可
能な時、射影処理制御回路15は、バスアービタ19に対し
て、直ちには転送データを出力できないタイミングであ
ることを示す信号18を出力する。また、演算中のため、
射影処理制御回路15の入力レジスタが空かない時、シー
ケンサ14に対して、射影演算処理回路15がシーケンサ14
に対して転送データを出力することを禁止する信号を発
行して、データ転送の入力を一時的に待たせる。演算を
終了し、フィールドデータを出力できる状況になると、
射影処理制御回路15はバスアクセス許可信号21をチェッ
クして、バスアクセス可能であれば、出力データをセレ
クタ17に対して出力すると同時に、出力アドレス信号26
及びデータストローブ信号29を出力する。
【0028】セレクタ17、28、31は各々36、26、29を選
択する。セレクタ31により選択されたデータストローブ
信号33はメモリ11のチップセレクト信号として出力さ
れ、データバス信号25に出力されている射影演算処理さ
れたデータが、アドレス信号32に出力されているアドレ
スの位置で、メモリ11に書き込まれる。逆に、射影処理
制御回路15が演算中であり、データ出力が直ちにはでき
ない時は、信号18をアサートして、バスアービタ19に対
して、バスアクセスを許可しないように指示する。この
ようにして、射影処理演算が進められ、転送ブロック長
レジスタ42のカウントアップにより、転送終了信号34を
アサートし、DMA処理の転送終了をシーケンサ14に対し
て通知し、DMA処理が終了する。
【0029】ホストコンピュータの主記憶装置2→メモ
リ11方向以外のDMAが指定された場合、シーケンサ14は
射影処理制御回路15を経由させずにDMAを実行する。そ
の時、DMA処理の転送完了は、シーケンサ14内部の転送
量カウンタのカウントアップによる。また、セレクタ1
7,28,31 は各々、35,27,30を選択した状態で転送を実行
する。
【0030】次に図3、図7及び図8により射影処理制
御回路15の動作を説明する。まず、図3を参照しつつ図
7のフローチャートの流れにしたがって説明する。ソフ
トウェアによりDMA転送準備として、転送ブロック長レ
ジスタ42(ステップS1)、レコード長レジスタ41(ス
テップS2)、転送後レコード長レジスタ43(ステップ
S3)の各レジスタに値の設定を行なう。また、射影処
理テーブル40に、入力レコードの先頭からの相対アドレ
ス、フィールド長等の値を設定する(ステップS4)。
さらに、レコードIDデータカウンタ54 の初期値を設定
する(ステップS5)。そして、DMA処理を起動する
(ステップS6)。DMA処理が起動されると、転送開始
信号37が入力され、制御部45が動作を始める。制御部45
はテーブル制御信号49により射影処理テーブル40のアド
レスポインタをリセットする(0にする)(ステップS
7)。そして、演算部44に対して、射影処理テーブル40
のデータをリードする指示を、制御信号48により発行す
る。そして射影処理テーブル40の内容をリードする(ス
テップS8)。この時点で、射影処理テーブル40に設定
されたデータに、不正な内容があると、制御部45はエラ
ー信号38によりシーケンサ14に対してエラー報告をする
(ステップS9)。
【0031】次に、図3を参照しつつ図8のフローチャ
ートの流れにしたがって説明する。演算部44は、リード
した射影処理テーブル40のデータを解析する(ステップ
S10)。そして、読み込んだ射影処理テーブル40のデ
ータがレコードID相対アドレスであった場合、その相対
アドレスに入力アドレス信号27の値を加算したアドレス
に、レコードIDデータカウンタ54の値をレジスタ/セレ
クタ部47で選択して出力転送データ信号36にて出力し、
バスアクセス許可信号21のアサートを待って、出力スト
ローブ30を出力する(ステップS11)。出力後、レコ
ードIDデータカウンタ54の値はインクリメントする。
【0032】制御部45からの制御信号51により、カウン
タ46に転送ブロック長レジスタ42、転送後レコード長レ
ジスタ43, レコード長レジスタ41、の各レジスタ値が読
み込まれる。1フィールドに相当する相対アドレス及び
フィールド長の読み込みが完了するまで、出力許可信号
24により、シーケンサ14 に対して、入力転送データ35
の出力を待たせておく。読み込みが完了すると、出力許
可信号24がアサートされ、複数の入力転送データ35がレ
ジスタ/セレクタ部47内部のレジスタにセットされる
(ステップS12)。演算部44 は、射影処理テーブル4
0から読み込んだ相対アドレス及びフィールド長からバ
ス上に送り出すデータ出力サイズ52と出力アドレス26を
演算し、出力する(ステップS13)。データ出力時に
は、バスアクセス許可信号21のアサートに伴って(ステ
ップS14)、出力ストローブ信号30を出力し、メモリ
11のチップセレクト信号となる(ステップS15)。
【0033】データ出力後、レジスタ/セレクタ部47の
内部レジスタに空きができると、出力許可信号をアサー
トし、入力転送データ35をセットする。また、各転送長
カウンタの値をチェックする(ステップS16)。1つ
のフィールドに対する転送が完了するとステップS8に
戻り、制御部45は、次のフィールドに対応する射影処理
テーブル40のデータを読み込むための転送指示48を出力
する。出力後、1レコード分の転送を完了するとステッ
プS7に戻り、制御部45はテーブル制御信号49により射
影処理テーブル40のアドレスポインタを再びリセット
し、次のレコードに対する同様の処理を実行する。転送
ブロック長レジスタ42の値で設定した数値の転送を完了
すると、カウンタ46から、カウント終了信号53により、
制御部45に対して転送終了が伝達される。また、制御部
45は転送終了信号34により、シーケンサ14に対して、DM
A転送の完了を報告する(ステップS17)。
【0034】次に、図4〜図6を使用して、射影処理テ
ーブル40の設定内容例と、設定例により射影動作例を説
明する。図4にDMA制御部12の内部に設けられた、射影
処理テーブル40の内容定義の設定例を示す。各テーブル
アドレスの各エントリには、図4に示すようなモードビ
ットとデータ内容が設定される。例に示したモードビッ
トのデコードによって、そのエントリが示す内容が何の
値であるかを示している。この例では、モードビットは
2ビットであり、各々、00=フィールド長、01=レ
コードID相対アドレス、10=フィールド相対アドレ
ス、11=削除フィールド相対アドレスを表している。
【0035】図5に、図4の定義に基づく射影処理テー
ブル40の設定例を示す。この例ではは、レコードは3つ
のフィールドにより構成されており、各々の長さは3,
2,1である。射影処理テーブル40の先頭の2つのエン
トリに、フィールド1の相対アドレスを2つ連続して設
定することで、フィールド1を2箇所の転送先に振り分
けることを指定している。そして、各々の転送先の、転
送後レコード先頭からの相対距離は0と8である。ま
た、その直後のエントリにレコードID相対アドレス4を
指定することで、固定の長さを持つレコードIDを、転送
後レコード先頭からの相対距離が4の場所に置くことを
意味している。レコードIDはシステムで固定長であるか
ら、その長さを射影処理テーブル中に定義する必要はな
い。この例では、レコードIDの長さを4に固定してい
る。また、次のエントリにフィールド2を削除フィール
ドとして設定している。削除フィールドを指定する時に
は、実際にはメモリに書かれないのであるから、その相
対アドレス値は任意の値を設定すれば良い。削除フィー
ルドの場合も、フィールド長は必要であり、次のエント
リに設定する。フィールド3は、その転送先は1箇所で
あるため、その相対アドレス3を1つだけ設定してい
る。
【0036】図6に、図5の射影処理テーブル設定によ
る、実際のデータ転送の様子を示す。この例では1レコ
ードだけを記載しているが、射影処理制御回路15では、
DMAの転送長として、レコード長の整数倍の値を設定で
きるため、1回のDMA処理の起動により、メモリ11の大
きさが許す限りの大量のデータ転送を、射影処理と含め
て自動的に実行することができる。
【0037】また、 ソート演算装置5では、転送後レ
コード長レジスタ43を設定することにより、射影処理を
伴ったDMA転送後の、各レコード間の相対距離を設定す
ることができるため、図6に示すように、空き領域を作
ることができ、その領域をアプリケーション固有の情報
付加など、自由に使用することができる、という利点が
ある。この例では、一例としてレコード長レジスタ41を
6に、転送後レコード長レジスタ43を12と設定してい
るので、長さ1の空き領域が発生している。
【0038】またこの設定例では、射影処理テーブル40
に設定できるフィールド相対アドレスの数を2としてい
るが、フィールド相対アドレスの数をさらに増加させる
ことも可能である。
【0039】本実施の形態によるソート演算装置5は、
以上のような構成を持つことにより、ソフトウェアでシ
リアルに行なっていた射影演算処理を、射影演算処理内
容を設定した射影処理テーブル40を参照するハードウェ
アによって、ソート処理と並列に実行することで、全体
としての処理速度を大きく改善することができる。ま
た、射影処理制御回路15において射影処理を実行する
際、データベースを構成する各レコードにレコードIDを
付加する、という付加機能をもたせ、システム全体とし
ての処理速度を改善することができる。さらに、射影処
理を実行する際、フィールド削除ができる、という付加
機能をもたせ、システム全体としての処理速度を改善す
ることができる。
【0040】次に、本実施の形態における更に詳細な機
能の説明を行う。図9は、図2におけるバスアービタ19
の内部構成を示すブロック図である。図において、60は
プロセッサ10のバスアクセスを許可するプロセッサバス
許可生成回路、61はDMA処理のバスアクセスを許可す
る、DMAバス許可生成回路、62は 射影処理演算中の信号
18の立ち上がりの信号変化を検知する、立ち上がり微分
回路、63は射影処理演算中の信号18の立ち下がりの信号
変化を検知する、立ち下がり微分回路、64は立ち上がり
信号変化検出信号、65は立ち下がり信号変化検出信号で
ある。
【0041】バスアービタ19の動作を説明する。DMA処
理の動作中、射影処理制御回路15は、射影処理演算中の
ため直ちにはデータを出力することが不可能な時、射影
処理回路演算中信号18をアサートする。ここでは、信号
18は信号レベルが低い電圧の時を有意とする。立ち下が
り微分回路63は、影処理回路演算中の信号18の立ち下が
り信号変化が発生した時、すなわち射影処理演算が完了
し、直ちにデータを出力できる状態に変化した時を検出
して、立ち下がり信号変化検出信号65として、DMAバス
許可生成回路61に入力する。
【0042】また、立ち上がり微分回路62 は、射影処
理制御回路演算中の信号18の立ち上がり信号変化が発生
した時、すなわち射影処理演算中であり直ちにはデータ
を出力することが不可能な状態に変化した時を検出し
て、立ち上がり信号変化検出信号64として、プロセッサ
バス許可生成回路60に入力する。
【0043】プロセッサ10の動作中バスアクセスの必要
が生じた時、プロセッサ10はプロセッサバス要求信号22
のアサートにより、バスをアクセスをバスアービタ19に
対して要求する。またDMA処理が起動された時、シーケ
ンサ14は、DMAバス要求信号20のアサートにより、バス
アクセスをバスアービタ19に対して要求する。
【0044】プロセッサバス許可生成回路60は、プロセ
ッサバス要求信号22がアサートされると、DMAバス要求
信号20の状態、及びDMAバスアクセス許可信号21の状
態、さらに立ち上がり信号変化検出信号64の状態を見
て、プロセッサバスアクセス許可信号23を生成する。こ
の時、立ち上がり信号変化検出信号64が有意となってい
ない場合、DMAバス要求信号20及びDMAバスアクセス許可
信号21が有意でなければ、プロセッサバスアクセス許可
信号23をアサートし、プロセッサ10にバスアクセスを許
可する。
【0045】DMAバスアクセス許可信号21がアサート
中、射影処理制御回路演算中の信号18が立ち下がり信号
変化をし、立ち下がり検出変化信号64が有意となった場
合、DMAバス許可生成回路61は直ちにDMAバスアクセス許
可信号21をネゲートし、シーケンサ14のバスアクセスを
やめさせる。DMAバスアクセス許可信号21のネゲートを
検知したプロセッサバス許可生成回路60は、プロセッサ
バスアクセス許可信号23をアサートして、プロセッサ10
にバスアクセスを許可する。
【0046】一方、プロセッサ10がバスアクセスをして
いる際中に、アサートされていた射影処理制御回路演算
中の信号18がネゲートされた場合、プロセッサバス許可
生成回路60は、立ち上がり信号変化検出信号64を検知
し、直ちにプロセッサバスアクセス許可信号23をネゲー
トし、プロセッサ10にバスアクセスをやめさせる。プロ
セッサバスアクセス許可信号23 のネゲートを検知したD
MAバス許可生成回路61は、DMAバスアクセス許可信号を
アサートし、DMAシーケンサ14にバスアクセスを許可す
る。
【0047】このように、 ソート演算装置5では、ソ
ートデータ転送中、シーケンサ14とプロセッサ10とのバ
スアクセスの競合が発生している時、射影処理回路15の
演算時間によるDMA転送のバスアクセスがまばらなる場
合、射影処理制御回路15からの射影処理制御回路演算中
の信号18のアサートにより、その立ち下がり信号変化
を、立ち下がり微分回路63によって検出し、プロセッサ
10に対して優先的にバスアクセスを許可することによ
り、バス25を効率的に使用でき、結果的にシステム性能
を改善することができる。
【0048】また、ソートデータ転送中、シーケンサ14
とプロセッサ10とのバスアクセスの競合が発生している
時、射影処理回路15の演算が完了し、射影処理制御回路
15が転送データを直ちに出力できる状況となった時、射
影処理制御回路15からの射影処理回路演算中の信号18の
ネゲートにより、その立ち上がり信号変化を、立ち上が
り微分回路62によって検出し、シーケンサ14に対して優
先的にバスアクセスを許可することにより、バス25を効
率的に使用でき、結果的にシステム性能を改善すること
ができる。
【0049】図10は、射影処理テーブルに設定された
不正な内容を検出する機能を、フローチャートで示した
図である。この機能は、例えば、射影処理制御回路15の
内部ブロック図である図3に示す制御部45に内蔵する。
また、この機能は、図7の射影処理のフローチャートに
おける、射影処理テーブル内容エラー検出→エラー信号
発行の部分に相当する。
【0050】図10のフローチャートについて説明す
る。このフローチャートは、既に説明したフィールドの
転送先相対アドレスを最大2箇所に転送する設定例に対
応するものである。即ち、図4に示した射影処理テーブ
ル・ビットアサインの定義例と対応している。DMA処理
の転送が開始され(ステップS20)、射影処理テーブ
ル40のアドレスがリセットされ(ステップS21)、射
影処理テーブル40の内容(0番地)がリードされる(ス
テップS22)。そして、リードしたモードビットの2
ビットを解析し、不正なモードビット内容か否かをチェ
ックする(ステップS23)。モードビットが0*であ
った時、図5の先頭のモードビット10と相違するので
エラー処理のステートに入る。これは、1つのフィール
ドに対するパラメータが、必ずフィールド相対アドレス
1個あるいは2個から始まる射影処理テーブル内容設定
ルールに反するためである。なお、0*の*はDon’
tcareを意味し値は特に特定しない。モードビット
が1*であった時、射影処理テーブル40のアドレスが更
新され(ステップS24)、再び射影処理テーブル40か
らデータが読み込まれる(ステップS25)。
【0051】続いて図11のフローチャートについて説
明する。リードしたモードビットの2ビットを解析し
(ステップS26)、01であれば、レコードID相対ア
ドレスが設定されているので、次のアドレスはフィール
ド長ではない。00であれば、そのフィールドの転送を
開始する。また、1*であれば、2箇所目のフィールド
相対アドレスが設定されているので、さらに射影処理テ
ーブルアドレスの更新をし(ステップS27)、次のア
ドレスのリードを行なう(ステップS28)。ここで、
モードビットが1*であれば、3個目のフィールド相対
アドレスが設定されていることになるので、エラー処理
に移行する(ステップS33)。また、00であれば、
そのフィールドの転送を開始する(ステップS34)。
01の時、レコードID相対アドレスが設定されているの
で、さらに射影処理テーブル40にアドレス1を加え、再
度射影処理テーブルをリードする(ステップS31)。
ここでの射影処理テーブル内容は、フィールド長データ
しかあり得ないため(ステップS32)、もし、00以
外が設定されていれば、エラー処理をする(ステップS
33)。00が設定されていた時、転送処理を開始する
(ステップS34)。以上の射影処理テーブルリード処
理を、射影処理テーブル40の1つのフィールド設定毎に
繰り返す。
【0052】この例は、最大2箇所の相対アドレスにフ
ィールドを書き込む例であるが、相対アドレス数を増加
させることもできる。
【0053】以上のような構成を持つことで、射影処理
制御回路15の動作パラメータをプロセッサにより設定す
る際、不正なパラメータを設定して転送を起動しようと
した場合、その不正を検出し、エラー信号として上位制
御回路に報告することにより、システムの信頼性を高め
ることができる。
【0054】
【発明の効果】この発明は、以上説明したように構成さ
れているので、以下に示すような効果を奏する。
【0055】入力レコードに射影処理を施す際、射影演
算処理内容を設定した射影処理テーブルを参照する射影
処理制御回路により行うようにしたので、処理速度を向
上することができる。
【0056】また、射影処理テーブルは、一つのフィー
ルドにつき複数の相対アドレスを設定可能としたので、
きめ細かい射影処理が可能となる。
【0057】さらに、射影処理を実行する際、各レコー
ドにレコード識別番号を付加するという付加機能をもた
せたので、処理速度を向上することができる。
【0058】また、射影処理を実行する際、フィールド
削除ができるという付加機能をもたせたので、処理速度
を向上することができる。
【0059】さらにまた、射影処理テーブルは、データ
内容とそのデータ内容の種別を表す識別子から構成され
ているので、不正なデータを検出し、エラー信号として
報告することにより、システムの信頼性を高めることが
できる。
【0060】また、射影演算処理内容を設定した射影処
理テーブルを参照する射影処理制御回路によって、ソー
ト処理と並列に実行することで、ソート演算装置全体と
しての処理速度を向上することができる。
【0061】さらに、射影処理制御回路が射影処理のた
めの演算途中で、直ちにはデータ出力ができないとき、
射影処理制御回路の使用するバスを共通に使用する他の
プロセッサのバスアクセスに積極的にバスを明け渡すこ
とにより、ソート演算装置全体としての処理速度を向上
することができる。
【0062】また、メモリをバッファとして射影処理と
ソート処理を交互に行うようにしたので、ソート処理と
並列に射影処理を実行することができる。
【図面の簡単な説明】
【図1】 この発明の実施の形態1を示すソート演算装
置のシステム構成図である。
【図2】 この発明の実施の形態1を示すDMA制御部の
回路図である。
【図3】 この発明の実施の形態1を示す射影処理制御
回路の回路図である。
【図4】 この発明の実施の形態1を示す射影処理テー
ブルのモードビットのビットアサインを示す構成図であ
る。
【図5】 この発明の実施の形態1を示す射影処理テー
ブルの設定例を示す構成図である。
【図6】 この発明の実施の形態1を示す射影処理の実
行例を示す説明図である。
【図7】 この発明の実施の形態1を示す射影処理の動
作を示すフローチャートである。
【図8】 この発明の実施の形態1を示す射影処理の動
作を示すフローチャートである。
【図9】 この発明の実施の形態1を示すDMA制御部の
バスアービタを示す回路図である。
【図10】 この発明の実施の形態1を示す射影処理テ
ーブルに設定された不正なデータを検出するための処理
を示すフローチャートである。
【図11】 この発明の実施の形態1を示す射影処理テ
ーブルに設定された不正なデータを検出するための処理
を示すフローチャートである。
【図12】 従来例のソート演算装置を示すシステム構
成図である。
【符号の説明】
5 ソート演算装置、9 ソータ部、10 プロセッ
サ、11 メモリ、14シーケンサ、15 射影処理制
御回路(データ処理装置)、19 バスアービタ(調停
回路)、40 射影処理テーブル、44 演算部、45
制御部、47レジスタ/セレクタ部。
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平6−176074(JP,A) 特開 平5−81338(JP,A) 笠原康則ほか,「1ボード版リレーシ ョナルデータベースプロセッサ”GRE O”」,三菱電機技法vol.66,N o.10(平成4年10月25日),pp.71 −75情報処理1992年12月号,pp1403− 1433 島川和憲ほか,「データベース演算処 理装置の関係演算処理方式」情報処理学 会第43回(平成3年後期)全国大会pp 4−101〜4−102 (58)調査した分野(Int.Cl.6,DB名) G06F 17/30

Claims (7)

    (57)【特許請求の範囲】
  1. 【請求項1】 複数のフィールドから構成される入力レ
    コードを格納するレジスタ、上記フィールドの射影後の
    上記レコードの先頭からの相対アドレスの位置及び長さ
    を格納した射影処理テーブル、この射影処理テーブルか
    ら読み込んだ相対アドレス及びフィールド長から上記各
    フィールドの出力サイズと出力アドレスを演算し出力す
    る演算部、この演算部の演算結果に基づき上記レジスタ
    に格納された入力レコードの各フィールドを配列して出
    力レコードを生成するセレクタ、上記入力レコードの読
    み込みから出力レコードの出力までを制御する制御部を
    備えたことを特徴とするデータ処理装置。
  2. 【請求項2】 上記射影処理テーブルは、一つのフィー
    ルドにつき複数の相対アドレスを設定可能なことを特徴
    とする請求項1記載のデータ処理装置。
  3. 【請求項3】 上記射影処理テーブルは、レコード識別
    番号の相対アドレスを設定可能なことを特徴とする請求
    項1又は請求項2に記載のデータ処理装置。
  4. 【請求項4】 上記射影処理テーブルは、上記フィール
    ドを削除する指定が設定可能なことを特徴とする請求項
    1〜請求項3のいずれかに記載のデータ処理装置。
  5. 【請求項5】 上記射影処理テーブルは、データ内容と
    そのデータ内容の種別を表す識別子から構成されること
    を特徴とする請求項1〜請求項4のいずれかに記載のデ
    ータ処理装置。
  6. 【請求項6】 複数のフィールドから構成される入力レ
    コードを格納するレジスタ、上記フィールドの射影処理
    後の上記レコードの先頭からの相対アドレスの位置及び
    長さを格納した射影処理テーブル、この射影処理テーブ
    ルから読み込んだ相対アドレス及びフィールド長から上
    記各フィールドの出力サイズと出力アドレスを演算し出
    力する演算部、この演算部の演算結果に基づき上記レジ
    スタに格納された入力レコードの各フィールドを配列し
    て出力レコードを生成するセレクタ、上記入力レコード
    の読み込みから出力レコードの出力までを制御する制御
    部を備えたことを特徴とするデータ処理装置を有し、こ
    のデータ処理装置の出力レコードを格納するメモリ、こ
    のメモリに対するリードライト及び上記データ処理装置
    の出力を制御するシーケンサ、このシーケンサに起動を
    かけるプロセッサ、このプロセッサにより起動をかけら
    れたシーケンサによる射影処理後のレコードがメモリに
    ライト後リードされそのリードされたレコードをソート
    するソータ部を備えたことを特徴とするソート演算装
    置。
  7. 【請求項7】 上記演算部が演算中のときは上記プロセ
    ッサにバスアクセスを許可する通知を出し、上記演算部
    が演算中でないときは上記データ処理装置にバスアクセ
    スを許可する通知を出す調停回路を備えたことを特徴と
    する請求項6記載のソート演算装置。
JP8232064A 1996-09-02 1996-09-02 データ処理装置及びソート演算装置 Expired - Fee Related JP2950249B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8232064A JP2950249B2 (ja) 1996-09-02 1996-09-02 データ処理装置及びソート演算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8232064A JP2950249B2 (ja) 1996-09-02 1996-09-02 データ処理装置及びソート演算装置

Publications (2)

Publication Number Publication Date
JPH1078967A JPH1078967A (ja) 1998-03-24
JP2950249B2 true JP2950249B2 (ja) 1999-09-20

Family

ID=16933423

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8232064A Expired - Fee Related JP2950249B2 (ja) 1996-09-02 1996-09-02 データ処理装置及びソート演算装置

Country Status (1)

Country Link
JP (1) JP2950249B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005190047A (ja) 2003-12-25 2005-07-14 Hitachi Ltd データソート機能を持つストレージシステム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
島川和憲ほか,「データベース演算処理装置の関係演算処理方式」情報処理学会第43回(平成3年後期)全国大会pp4−101〜4−102
笠原康則ほか,「1ボード版リレーショナルデータベースプロセッサ"GREO"」,三菱電機技法vol.66,No.10(平成4年10月25日),pp.71−75情報処理1992年12月号,pp1403−1433

Also Published As

Publication number Publication date
JPH1078967A (ja) 1998-03-24

Similar Documents

Publication Publication Date Title
US5247665A (en) Data base processing apparatus using relational operation processing
TWI486810B (zh) 在狀態機晶格中之計數器操作
US20070180334A1 (en) Multi-frequency debug network for a multiprocessor array
JPH0364890B2 (ja)
GB2329049A (en) A debugger interface unit for identifying selected exceptions
US5136714A (en) Method and apparatus for implementing inter-processor interrupts using shared memory storage in a multi-processor computer system
JPS60176143A (ja) プログラム呼び出し装置
JP3382080B2 (ja) 命令実行順序の一貫性を照合する方法及びシステム
JP2746734B2 (ja) ストリームファイルに対してのアクセス処理方式
JP6041749B2 (ja) トレース収集回路及びトレース収集方法
JP2950249B2 (ja) データ処理装置及びソート演算装置
GB2409906A (en) Testing agents in a computer system using harassing transactions from a library
US20030041252A1 (en) Methods and apparatus for collapsing interrupts
JP2908273B2 (ja) ベクトル処理装置
EP0297890B1 (en) Apparatus and method for data induced condition signaling
JP2697254B2 (ja) リアルタイム処理装置
JPH0154735B2 (ja)
JPH05225060A (ja) 情報処理装置
JP3014701B2 (ja) 情報処理装置
JP3130798B2 (ja) バス転送装置
JP3517884B2 (ja) データ処理装置
JP2536651B2 (ja) 例外アドレスバッファ管理方式
Richardson The Fred VHDL Model
JP2735400B2 (ja) 非同期入出力制御方式
JPH0385636A (ja) 命令先行制御装置

Legal Events

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