JPS6142031A - ソ−ト処理装置 - Google Patents

ソ−ト処理装置

Info

Publication number
JPS6142031A
JPS6142031A JP16351984A JP16351984A JPS6142031A JP S6142031 A JPS6142031 A JP S6142031A JP 16351984 A JP16351984 A JP 16351984A JP 16351984 A JP16351984 A JP 16351984A JP S6142031 A JPS6142031 A JP S6142031A
Authority
JP
Japan
Prior art keywords
data
sorting
input
circuit
output
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
JP16351984A
Other languages
English (en)
Other versions
JPH0666050B2 (ja
Inventor
Tetsuji Sato
哲司 佐藤
Nobuo Tsuda
津田 伸生
Tadamichi Kawada
川田 忠通
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP59163519A priority Critical patent/JPH0666050B2/ja
Publication of JPS6142031A publication Critical patent/JPS6142031A/ja
Publication of JPH0666050B2 publication Critical patent/JPH0666050B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はソート処理装置に関し、特に大量のデータを短
時間で昇順あるいは降順に並びかえることを可能とする
ソート処理装置に関する。
〔従来技術〕
ソートとは、I5−えられたデータの集まりを所定の順
序に従って並び替える処理である。電子計算機における
ソート処理とは、数値あるいは文字列として与えられた
データが、計算機内部では“OIIあるいは′l″の二
値符号で表記されている事がら。
二値符号の持つ数値的意味にもとづいて、与えられたデ
ータを相互に比較し、それぞれのデータの大小関係によ
って、昇順(小さいものから大きいものへの順)あるい
は降順〔大きいものから小さいものへの順)にデータを
並びかえることである従来、このようなソート処理を、
メモリ装置と中央演算装置I(CPU)を中核として構
成した汎用の電子計算機で実行する場合には、メモリ装
置と中央演算装置の間のデータ転送や比較が逐次処理で
あることや、一度に2個のデータ間の比較しか出来ない
等の理由により、ソート処理で対象とするデータ数が大
量の場合には、処理に要する時間が極めて長くなるとい
う問題があった。
かかるソート処理時間に関する問題を解決する従来技術
として、専用のソート処理vlW1を用いて。
4比較による大小関係の判定と、データの伝送を波列に
行って高速化を図る方法がある。第2図に該ソート処理
装置に用いるソート回路の構成例を示す0本回路は、比
較の対象となるデータを保持するための第1のメモリ1
および第2のメモリ2、比較[I3.該比較器3によっ
て得られた判定結果を保持するためのフラグレジスタ4
および入出力回路5からなるユニット6の複数個を一次
元接続した構成を有し、でいる1本回路では、データ相
互の比較と転送を複数のユニットで同時に実行できるた
め、以下に説明する動作原理にしたがって、データ数に
比例する時間でソート処理を行うことができる。
第3図は、ff52図のソート回路の動作原理図であり
、−例として、0から9までの電析の数値データのうち
、3.6.5,2,4.Iの6個のデータを降順にソー
トする場合の動作を示している。
なお、第3図では、第2図におけろ第1のメモリ1およ
び第2のメモリ2とフラグレジスタ4のみを簡略に示し
ており、他の回路は省略しである。
ソート処理を行うにあたって、はじめに全てのユニット
のI5tのメモリ1および@2のメモリ2の内容を初期
設定する。この際、降順にソートする場合には、データ
の最小値として0を設定し。
昇順にソートする場合には、データの最大値として9を
設定する。第3図は降順にソートする場合であり、第1
および第2のメモリl9.2には0を設定しである1本
回路では、順次データを入力する入力操作と、順次デー
タを出力する出力操作とでソート処理を行うが、−口の
入力操作で各ユニットでは、データの右方向への転送と
2個のデータ間での比較とを行う、この場合、転送され
るデータは第1および第2のメモリ1.2に保持された
2個のデータのうちの小さい方である。この時。
データの転送と同期して1個のデータをソート回路に入
力し、最左端のユニットの第1のメモリ1あるいは第2
のメモリ2のいずれかのうち、転送によって空になった
方のメモリに保持する。(−T1〜T6) この入力操作を繰り返して6個のデータの全ての入力が
完了した時点で、今度は出力操作によって順次データを
隣接する左側のユニットに転送する。この時、転送する
データはユニット内の2個のデータのうち大きい方であ
り、Iα右端のユニットには0を入力する。(T7〜T
12)以上、入力操作の繰り返しによってデータが順次
入力され、データの入力が完了した段階で出力操作を実
行することにより、最大値から順次データが降順に取り
出される。ここで説明したソート処理の一例では、6個
のデータの並べかえが3個のユニットを用いることによ
って、6目の入力操作と6回の出力操作とで行えること
から、一般に第2図のソート回路では、1回の入力操作
と1回の出力操作と11す、rクルとすると、データ数
に等しい入力サイクルおよび出力サイクル数で昇順ある
いは降順のソー1−処理が行える。
本ソート回路を電子計算機の1.’f1辺装置i!(ソ
ート処理袋WI)とし、で使用する場合には、W1子計
算機のメモリ等に予め保持しであるソート対象のデー夕
を電子計算機のデータ転送路を介してソート処理装置に
順次入力し、次いでソート処理がなされたデータを同じ
くデータ転送路を介して元のメモリ等に順次格納する。
この場合、データの転送時間と重畳して比較による大小
判定を行うなどにより、はぼデータの転送時間でソート
処理を行なうことができ、ソート処理に要する時間を大
幅に短縮することが可能となる。
以上説明した第2図のソート回路では、lユニット当り
2個のデータを取り込むためL個のユニットを一次元に
接続した場合には、一度に最大2L個までのデータのソ
ートが可能である。しかし、このようなソート回路を電
子計算機の周辺装置として設ける場合には、予めソート
処理で対象とするデータ数の上限を想定して、これに見
合う十分大量のユニットを設けておく必要があり、ソー
ト処理装置の規模が大型になり不経済となるという問題
があった。また、いったんユニット数を決定してソート
処理装置を構成してしまうと、許容されるデータ数をこ
えるソートは本ソート処理装置では行えない問題があっ
た。このため、従来はt4jめて大量のデータのソート
が必要な場合には、データ全体をソート処理装置でソー
ト処理できろ程度の規模に分割し・た後に、それぞれを
ソート処理装置でソートし、全体を汎用針t!機上のC
PU装置を用いてソフトウェアの手段によってマージ(
併用)するマージ・ソート法と呼ばれるソート方法がと
られてきた。
一般に、いくつかのデータがある規則にもとすいて並べ
られたデータ列をストリングと称している。マージ・ソ
ート法では2個以上のストリングを1個のストリングと
し、てマージする。この時、一度にマージできるストリ
ング数をマージ・ウェイ数という、いまストリング数が
16個あったとすると、マージ・ウェイ数が2ならば、
ストリング数は、16個から8個、4個、2個、1個と
減少していき、ソート処理が終る。−同のマージ操作で
は、マージ・ウェイ数と等しい数のデータを相互に比較
し、比較の結果にもとづいて、全てのデータを並びかえ
るために移動する。上記の例では、このマージ操作を4
回行っており、何回のマージ操作を必要とするかは、ス
トリング数mとマージ・ウェイ数にの関係からloIK
kmでケ、えられる、し、たがって1m個のストリング
に予めソートされた全体でN個のデータをマージするた
めには。
NXlogbm回のデータの移動が必要となる。
一般に、汎用の計算機では1台のCPU装置で比較を行
うために、マージ・ウェイ数、には2である。このため
、汎用計算機に、専用のソート処理装置を付加した場合
であっても、データ数が極めて大きく、ストリング数m
も大きい大量のデータをソート処理する場合には、複数
回のマージ操作が必要となり、膨大な処理時間が必要と
なるという問題があった。したがって、今日、データベ
ースを対象とした情報処理技術の進展に伴ってソート処
理で対象とするデータの件数はますます増大する傾向に
あり、かかる従来技術の問題を解決した。極めて膨大な
データ数にも柔軟に対処できる処理能力の高いソート処
理装置が望まれている−0〔発明の目的〕 本発明の目的は、上記従来技術の問題点を除去し、デー
タベース等の唖めて大量のデータを対象としたソート処
理に適するソート処理V&lを提供することにある。
〔発明の構成および作用〕
本発明は、少なくともに個のデータのうちから最小もし
くは最大のデータを1*出できるソート手段と、ソート
済の複数のデータ列の中から11!lのデータ列を選択
してデータを取り出し、取り出したデータに識別子を付
グして前記ソート手段へ入力する入力処理手段と、該ソ
ー1一手段によって抽出し、たデータから識別子を切り
出す出力処理手段とを少なくとも具備してソート処理装
置を構成し。
前記出力処理手段によって得られる識21子にもとづい
て前記入力処理手段によって選択するデータ列を決定す
ることによりマージ操作を行うことを特徴とするもので
ある。以下1本発明の実施例について詳細に説明する。
第1図は本発明の一実施例にかかるソート処理装置の構
成図である。同図において、7はソート回路、8は制御
回路、9は入力レジスタ、10は出力レジスタ、11は
バンクアドレス発生回路。
12はソート入出力切り換え回路、13は読み出L5ア
ドレス発生回路、14は書き込みアドレス発生回路、1
5はバッファメモリ、16はアドレス切り換え回路、1
7はデータ切り替え回路、18は切り替う制御1it(
ST)、19はバンクアドレス編(BA)、20はI相
信号線(1)、21は■相信号線(n)、22は状態制
御線(INT)。
23は入力制御線(PUSH)、24は出力制御線(P
OP)、25は入出力制御線(PUP)。
26はデータ入出力線(D I O)である。
以上の構成において、ソート回路7が最小値あるいは最
大値を抽出するためのソート手段を構成し1.入力レジ
スタ9とソート入出力切り替え回路12、読み出しアド
レス発生口路13とが入力処理手段を構成し、出力レジ
スタ10とバンクアドレス発生回路11.書き込みアド
レス発生回路14とが出力処理手段を構成している。
ソート回路7は1本実施例では、第2図に示したソート
回路と同一構成の回路が適用しである。
本回路では、ユニット数をL個とし、た場合にはL≧に
/2 (L、 k :整数)の関係にあるに個のデータ
のソート処理が行える。ただし本発明では。
二のツートロ路を従来技術のように、に回の入力操作を
緑り返し1次にに回の出力操作を繰り返すことによりに
個の非整列データをFl順もしくは降順に並べ替える手
段として用いるのみならず、順次1個のデータが更新さ
れるに個のデータの組から、その組のうち最小あるいは
最大のデータを順次に抽出する手段として用いる点が兄
なる。すなわち、第2図のソート回路では、第3図で説
明したように、昇順あるいは降順にソート処理を行う手
順でに個のデータに対するに回の入力操作を行った場合
には、データを入力し・た入出力端子に最も近いユニッ
ト内に最小もしくは最大のデータが保持されているにの
ため1.二の後1回の出力操作を行うことにより、この
最小あるいは最大のデータを抽出できる。このような1
回の出力操作により格納されているデータのうちの最小
もし、(は最大のデータを抽出できる原理は、すでに行
った入力操作の回数、出力操作の回数、入力操作と出力
操作の組み合わせ方には依存せず、ソート回路内にデー
タが存在する限り保証されている。したがって、このソ
ート回路を前記のような最小あるいは最大のデータを抽
出する手段として用いるには、に個のデータに対するに
回の入力操作をあらかじめ行った後に、出力操作と入力
操1作とを交互に繰り返すことにより行える。なお最小
のデータあるいは最大のデータのいずれを抽出するかは
ソート処理を行う向きが昇順であるか降順であるかによ
って、あらかじめ設定し、ておく。
次に、第1図に示した本発明実施例のソート処理装置の
動作を、第4図を参照し、て説明する6本ソート処理装
置のソート処理の過程は、初期ソート段階とマージ段階
とから成る。この切り替えは。
切り替え制御線(ST)18によって行い、5T18が
論理レベルで11177の場合には初期ソート段階であ
り、”o”の場合にはマージ段階である。−はしめに、
初期ソート段階(ST=”ビ′)について説明する。初
期ソートmNでは、外部から′jえられるソート対象の
非整列データをソート回路7で部分的にソートしてスト
リングを形成し、バッファメモリ15に格納する処理を
行う8この際。
非整列データは外部からデータ入出力線(DID)26
を介して順次与えられる。このデータを入力レジスタ9
およびソート入出力切り向え回路12を介して、ソート
回路7に順次人力する。ソート回路7では、第3図に示
したように、ttt数回の入力操作と複数回の出力操作
を繰り返すことにより、ソート済みデータ列すなわちス
トリングを出力する。このス1−リングをソート入出力
q1り替え回路12と出力レジスタIOを介して、バッ
ファメモリ15に格納する。この時のバッファメモリ1
5の書き込みアドレス(ADW)は、書き込みアドレス
発生回路14によって生成する。
以上のように、初期ソート段階では、第3図に示し、た
従来技術のソート処理に於ける操作と同様の操作を本ソ
ート処理装置でt7う、二とにより、バッファメモリ1
5内に複数回のストリングを1!)ることができる、第
4図のバッファメモリ15内の三角形は、この初期ソー
ト段階で得られた個々のストリングを示しており、この
図ではklのストリングを得られた場合を示している。
次に、マージ段階(ST=”O”)について説明する。
マージ段階では1次に説明する初期操作と通常操作とを
行うことにより、バッファメモリ15に格納しているに
個のストリングを、ソート回路7を用いてマージし、デ
ータ入出力線(D I 0)26からソート済みのデー
タとして出力する処理を行う、はじめに初期操作では、
バッファメモリ15にケ・えられたに個のストリングの
それぞれから最小あるいは最大のデータを取り出し、取
り出されたに個のデータを入力レジスタ9を介して、k
回の入力操作によってソート回路7に入力する。
最小のデータを取り出すか最大のデータを取り出すかは
、W順にソートするか降順にソートするかで決める。次
の通常操作では、ソート回路7に入力されたに個のデー
タから1回の出力操作によって、最小あるいは最大のデ
ータ1個をマージ結果として出力する。この際出力デー
タは、前記と同様に昇順にソートするか降順にソー1−
するかで。
最小のデータを出力するか最大のデー・りを出力するか
を決め、ソート入出力切り替え回路12および出力レジ
スタ10を介してデータ入出力8(DIO)26からソ
ート済みのデータとして外部に出力する。次に、マージ
結果として出JJしたデータが含まれていたストリング
から次の最小あるいは最大のデータを取り出しソー1へ
回路7へ入力し。
ソート回路7内に残っている(k−1)個のデータと合
わせてに個のデータ間で2回目の最小あるいは最大のデ
ータを取り出す操作を行う0以上の操作を、順次マージ
結果を出力しながらに個のストリングの全てのデータが
無くなるまで繰り返すことにより、マージン操作が完了
する。
以上の通常操作を繰り返し8行うにあたっては。
ソート回路7へ入力するデータに、いずれのス(−リン
グから取り出し、たデータであるかを識別するための識
別子を前記の入力処理手段によってあらかじめ付加し、
ておき、ソート回路7から出力された最小あるいは最大
のデータの識別子を前記の出力処理手段によって参照す
ることにより、次に入/+″ 力すべきデータをいずれのストリングから取り出せば良
いかを決定することができろ。この識別子は、少なくと
もに個のストリングのいずれであるのかを判別すること
ができればよく、2進表現をし、た場合には、 log
、、 kビットとなる。この2進表現し、た識別子をバ
ンクアドレスと称する。
次に、バンクアドレスの付与方法について説明する。初
期操作では、バンクアドレスは初期値としてOから(k
−1)までのに個のアドレスをバンクアドレス発生回路
11で生成し、入力レジスタ9によってソート対象デー
タに付与、し5人力操作によって、バンクアドレスが付
与さ九たに個のデータが、ソート入出力切り替え回路1
2を介してソート回路7に入力される。出力時には、ソ
ート回路7からバンクアドレスが付与、されたデータが
ソート入出力切り替え回路12を介して出力レジスタ1
0に格納される。このデータからバンクアドレス(すな
わち識別子)を切り出して読み出しアドレス発生回路1
3に与えろ:とによって。
この読み出しアドレス発生回路13で、バッファメモリ
15内の次に読み出すべきデータのアトし・スを決定す
る。この時、出力lノジスタ10に?!)I:。
れた識別子以外のデータ (本来ソートしようとし。
ているデータ)は、データ切り替え回路17を介して、
データ入出力線(DIO):!Gから出υする0、二の
時、出力されたデータは、11順あるいは降順にソート
されている。
次に、マージ段階に於ける木ソーl−処理装置各部の動
作を詳細に説明する。本ソート処理装置は。
■相、■用の信号による同期回yδで全体がlIη成さ
れており、■相、■用からなろ1サイクルで1−】のデ
ータを並びかえる。第1図の20.21がすれぞtシT
相、■相のクロック線である。22け状態信号線であり
、この状態信号・線22によって初期操作状態と通常操
作状態とを設定する。状fll (,1号122を論理
1ノベルで″l ”に設定すると初期操作状態となり、
初期ソート段階とマージ段階のIII期操作に於いて、
ソート回路7にデータを連続して格納する動作または昇
順あるいは降順に連続してデータを抽出する動作のいず
九かを行うことができる。状態信号線22が論理レベル
で0′″の時は、データの入力操作と出力操作を交互に
行いながらマージする通常操作状態である。
f55図は、ソート回路7に連続し、てデータを格納す
る初iI′I操作の動作を示すタイムチャートである。
連続してデータを格納する場合に、は、バンクアドレス
は、[前のバンクアドレスからインクリメント等の処理
によって一意に決定できるため。
同図に示すように、バンクアドレスの計算→読み出しア
ドレスの計算→データの読み出しの手順に従ってソート
回路7へのデータの格納を1サイクルの間に2回実行で
きる。これにより、kウェイのマージソートを行うため
に初期操作で実施するに個のデータのソート回路7への
格納は、に/2す・(クルで完了する。
第6図は、ソート回路7にデータの入力処理と出力処理
を交互に行う通常操作のタイムチャートである。出力処
理によって、ツートロ路7から油出されたデータからバ
ンクアドレスを切り出し。
次に入力するデータのバンクアドレスとする。このバン
クアドレスに基づいて読み出しアドレスを決定し1.バ
ッファメモリ15からデータを読み出してソート回路7
に入力する。二の1サイクルの間に、W前のサイクルで
すでに読み出されて人力レジスタ9に保持されているデ
ータむソート回v87に入力する。このように、データ
の入力処理と出力処理とを172サイクルずらして行う
ことにより、アドレス計算とソート回路への入出力を挿
行して行う二とが可能となり、連続し1て各サイクルご
とに1個のデータの入出力が完了する。したがって1本
ソート処理装置では、データ数がN個であればNサイク
ルでマージ操作が行える。
次に9本ソート処理装置各部の詳細な回路構成を示す。
  ゛ 第7図は、第1図に示した制御回路8の詳細図である。
図中の、27はリセット(、”を目線(R3T)。
28はORゲート、29はANr)ゲート、、1IO1
:tインバータ、31はアップダウンカウンタ、32は
フリップフロップ回路である。アップダウンカウンタ3
1は、現在ソート回路7に格納されているデータの数を
示し、ソート回路7に対する入力操作の回数および出力
操作の回数によってカウンタ値が増減する。その結果と
して、現在ソート回路7に格納されているデータの数が
0個であることもし、くけに個であることを検出して、
フリップフロップ回路32をセットするかある。はりセ
ットする。ブリップフロップ回路32の出力であるPU
P信号25によってソート入出力切り替え回路12を制
御し、データの入出力方向を決定する。
第8図は第1図に示したソート入出力切り替え回路12
の詳細図である1図中の点線枠内は、lビット分だけを
示しており、33はトライステートバッファゲートであ
る。PUr’信号25が論理レベルで“ビ°の場合は入
力操作時であり、入力レジスタ9のデータをソート回路
7の入力とする。
・方、 r’Ur’信号25が論理レベルで0′°の場
合は出力操作時であり、ツートロ路7の出力データを出
力レジスタ10に格納する方向にデータの流れを切り替
える。
第9図は第1図に示したバンクアドレス発生回路】2の
詳細図である1図中の371はカウンタであり、初期操
作において連続的なバンクアドレスを発生する。出力レ
ジスタ10から切り出したバンクアドレスとカウンタ3
4で生成し、たアドレスとの切り替えは、状態信pf線
22によって行う。
第1O図および第11図はそJLぞれ第1図のアドレス
切り替え回路16およびデータ切り替え回路17の詳細
図である0、これらの回路では、」tに給替え制御線(
ST)18によってアドレスお上びデータそtLぞれの
切り替えを行う。
第12図は第1図の読み出しアドレス発生回路13の詳
細図である1本回路は、2騙のカウンタ35および36
と多ビットのシフト回路371隻ビットの加算回路38
から構成されている。カウンタ35け、に個のストリン
グのそれぞれに7,1シて何番口のデータを次に取り出
すかのアドレスを設定するためのカウンタであり、この
アドレスをバンク内アドレスと称する。カウンタ:1G
はデー夕の読み出しアドレスの内でバンクアドレスより
上位のビットのアドレスを発生するためのカウンタであ
る。多ビットのシフト回路37は、カウンタ3Gの出力
とバンクアドレス(BA)とを任意の位置にシフトし、
このシフト回路37の出力を。
多ビットの加算回路38によってバンク内アドレスと加
えて読み出しアドレス(図中のADR)とする、これに
より、2のべき乗のm位でストリングを構成するデータ
数を可変とすることができる。
先に説明し、た処理ソート段階では、多ビットのシフト
回路37によってバンクアドレスを読み出しアドレスの
最下位ビット側に移動する二とによって、初期バンクア
ドレスを用いて、連続するメモリ領域をアクセスする。
第13図は、第1図の書き込みアドレス発生回路]/の
詳細図である。この回路はカウンタ39で構成されてお
り、初期ソート段階では、pop償号と同期し、て得ら
れるマージ結果としてのデータを順次連続してバッファ
メモリ15に格納するための書き込みアドレスを発生す
る。
以上説明した本実施例のソート処理装置はカウンタと切
替回路およびnQlなΔNDゲート、ORゲートなどか
ら構成されているため、バイポーラトランジスタやMo
Sトランジスタなど、従来既知のn路手段を用いて構成
できろ。
以上説明した本発明の実施例では、同一ソート手段を用
いて、初期ソート段階とマージ段階とでデータ全体のソ
ート処理を行う構成を示したが。
初期ソート段階を行うソート″f、p2とマージ段階を
行うソート1段の双方を具備する構成とすること。
あるいはマージ!!111のみを行うように構成するこ
とも可能である。
また1本実施例では、1回のマージ操作によってに個の
ストリングを1個のストリングとする場合を示したが、
ソート対象となるデータを十分に格納できるだけの容量
のバッファメモリ15および前記メモリ*itを備える
ことによって1本ソート処理装置を用いた複数回のマー
ジ操作の繰り返しで、に値以上のストリングであっても
容易にソート可能な構成にできる。さらに、J+、ソー
ト処理装置を複数台用いて多段接続することによって。
1台のソート処理装置で繰り返しマージ操作をするより
も短時間でソート処理を行うことができる。
この場合には、複数の前段のソート処理装置で得られた
マージ結果すなわちバッファメモリに格納したストリン
グを直接次段のソート処理装置の入力とするように接続
した複数台のソート処理装置で順次マージ操作を行うこ
とにより、マージ操作を波列に実行できるため、全体の
ソート処理時間を短縮できる。
また本実施例では、に個のデータのうちから最大値ある
いは最小値を短時間で抽出する手段として第2図に示し
・た従来技術によるソート回路を適用し、た場合を示た
が、最大値あるいは最小値を抽出する手段としては、連
想メモリなどを適用することも可能である。
また本実施例では、バッファメモリ15として。
ランダムアクセス可能なメモリを使用し、た場合を示し
たが、二九以外にもストリングを保持し、、J小値ある
いは最大値から順次データを読み出しあるいはf”込み
できるシーケンシャルアクセス可能なデータの保持手段
を適用することもできろ。
また、本実施例のソート処理装置を計算機の付属装置と
し、て接続する場合には、バッファメモリ15を計′W
機のメインメモリ等と併用する構成も可能である。
また本実施例では、ソート回路7に入力するデータへの
識別子を付与する操作は、バッファメモリ15からデー
タを抽出した後に行う構成を例示し、だが、バッファメ
モリ15ヘス1−リングとして格納する際にあらかじめ
付与、して1.<構成も容易に実施できる。
〔発明の効果〕
以上説明したように9本発明のソート処理装置では、少
なくともに¥のY−夕の)ちがら最小もしくは最大のデ
ータを抽出できるソート″f段と。
あらかじめソート済のデータ列の1個を選択してデータ
を取り出し、取り出したデータに識別子を付与して該ソ
ート手段へ入力する六方処理手段と。
該ソート手段によって抽出したデー9がら識別子を切り
出す出力処理手段をもってソート処理¥i[を構成し、
たことにより、従来技術ではできなかった極めて大きな
マージウェイ数によるマージ操作がデータ数に比例する
時間で実施する二とができる。こすしとともに、同一ソ
ート手段を用いて従来のソート方法による初期ソートを
併用できるようにした・二とにより、ソート対象である
データ数が大量の場合でも少ないマージ操作回数でデー
タ全体をソートできるため、大量のデータを短時間でソ
ートできる利点を有している。また、データそのものに
識別子(バンクアドレス)を付与して扱うために、1個
のストリングを構成するデータ数の制限をなくすことが
でき、従来のソート処理袋h1では扱うことの出来なか
った極めて大量のデータであってもソートできる利点が
ある。
さらに1本発明のソート処理装置は、メモリ。
カウンタ、切り替え回路およびANDゲート、ORゲー
トなどの従来既知の回路手段を用いて構成でき、バッフ
ァメモリの容量を拡大する。二とにより容易にソート処
理の対象とするデータ数を拡張できるため、従来技術に
よるソート処理装置を拡張するよりも、極めて性能/釧
(8比の高い寝首を実現する二とができる。
【図面の簡単な説明】
第1図は本発明の−・実施1列であるソート処]′II
Iv!装置の構成図、第2図は汎用計vI機の周辺装置
として使用する従来のソート処理回路の構成図、第3図
は第2図に示したソート処理日′111の動作原理図、
第4図は第1図に示したソート処理νi盾のl1lI+
 (’+’原理図、第5図および第6図は第1rlIの
ソート処理装置の動作説明用のタイムチャート、第7図
は第1図の制御回路の詳細図、第8図は第1図のソート
入出力切り替え回路の詳細図、第9図は第1図のバンク
アドレス発生回路のat繕図、第10図は第1図のアド
レス切り替え回路の詳細図、第11図は第1図のデータ
切り替え回v3の、lY′j1図、第12図は第1図の
読み出しアドレス発生回路の詳細図、第13図は第1図
の書き込みアドレス発生回路の詳細図である。 7・・・ソート回路、  8・・・制御回路、  9 
人力レジスタ、   10・・・出力レジスタ、   
11・・・バンクアドレス発生回路  12・・・ソー
ト入出力切り替え回路、  13・・・読み出し、アド
レス発生回路、   l/l・・・書き込みアトL・大
発生回路。 15・・・バッファメモリ、  16・・・アドレス切
り替え回路、  17・・・データ切り替え回路。 第  2  図 第3図 PUP 次旬しYスフ10 22  INT ハ”ツ伶メるツ ADW      ADR 第11図 r −−−−−−−−/ ’1 DW

Claims (2)

    【特許請求の範囲】
  1. (1)少なくともk個(k<1:整数)のデータを格納
    でき、該格納データのうちから最小もしくは最大のデー
    タを抽出するソート手段と、昇順もしくは降順にあらか
    じめ並び換えられたk個のデータ列のうちから1個のデ
    ータ列を選択して該データ列中の最小もしくは最大のデ
    ータを抽出して前記ソート手段へ入力するとともに、該
    入力するデータにいずれのデータ列から抽出したかを示
    す識別子を付与する入力処理手段と、前記ソート手段に
    より抽出したデータから前記識別子を切り出す出力処理
    手段とを具備し、前記出力処理手段により切り出した該
    識別子にもとづいて前記入力処理手段により選択するデ
    ータ列を決定することにより、k個のデータを昇順もし
    くは降順の1個のデータ列へ並び換えるマージ操作が行
    えるように構成したことを特徴とするソート処理装置。
  2. (2)前記ソート手段は、2個の記憶回路と、該記憶回
    路に格納している2個のデータの大小関係を比較する比
    較器と、該比較器の判定結果にもとづいて前記2個の記
    憶回路のうち一方を選択して格納しているデータを転送
    するためのデータ入出力回路とを少なくとも有するユニ
    ットをL個(L≧k/2:整数)一次元接続してなり、
    該一次元接続したユニットの一端から順次行うデータの
    入力操作および出力操作に同期し、該ユニットのそれぞ
    れで並列に比較器による比較と入出力回路による隣接ユ
    ニットへの転送を行うことにより、k個の入力操作で格
    納したk個のデータのうちから1回の出力操作で最小も
    しくは最大データを抽出することを特徴とする特許請求
    の範囲第1項記載のソート処理装置。
JP59163519A 1984-08-03 1984-08-03 ソート処理方法 Expired - Fee Related JPH0666050B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP59163519A JPH0666050B2 (ja) 1984-08-03 1984-08-03 ソート処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59163519A JPH0666050B2 (ja) 1984-08-03 1984-08-03 ソート処理方法

Publications (2)

Publication Number Publication Date
JPS6142031A true JPS6142031A (ja) 1986-02-28
JPH0666050B2 JPH0666050B2 (ja) 1994-08-24

Family

ID=15775407

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59163519A Expired - Fee Related JPH0666050B2 (ja) 1984-08-03 1984-08-03 ソート処理方法

Country Status (1)

Country Link
JP (1) JPH0666050B2 (ja)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62113234A (ja) * 1985-11-07 1987-05-25 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション レコ−ドセツト分類方法
JPS6318434A (ja) * 1986-07-10 1988-01-26 Nec Corp デ−タ処理装置
JPS6426223A (en) * 1987-07-22 1989-01-27 Canon Kk Sequential array circuit
WO1989003091A1 (en) * 1987-09-25 1989-04-06 Hitachi, Ltd. Method of sorting vector data and a vector processor adapted thereto
JPH01173230A (ja) * 1987-12-28 1989-07-07 Nippon Telegr & Teleph Corp <Ntt> ソート処理装置
JPH01177122A (ja) * 1988-01-07 1989-07-13 Hitachi Ltd ソート処理装置
JPH0312736A (ja) * 1989-06-12 1991-01-21 Hitachi Ltd マージ処理方法及び装置
JPH03116323A (ja) * 1989-06-30 1991-05-17 Digital Equip Corp <Dec> リバウンド分類装置を併合装置として使用する分類加速装置
JPH03129426A (ja) * 1989-06-30 1991-06-03 Digital Equip Corp <Dec> 分類加速装置のための速度及びメモリー制御
JPH03129521A (ja) * 1989-06-30 1991-06-03 Digital Equip Corp <Dec> 分類加速装置の安定分類

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5958852U (ja) * 1982-10-12 1984-04-17 株式会社明電舎 デ−タ処理装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5958852U (ja) * 1982-10-12 1984-04-17 株式会社明電舎 デ−タ処理装置

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62113234A (ja) * 1985-11-07 1987-05-25 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション レコ−ドセツト分類方法
JPS6318434A (ja) * 1986-07-10 1988-01-26 Nec Corp デ−タ処理装置
JPS6426223A (en) * 1987-07-22 1989-01-27 Canon Kk Sequential array circuit
WO1989003091A1 (en) * 1987-09-25 1989-04-06 Hitachi, Ltd. Method of sorting vector data and a vector processor adapted thereto
US5226135A (en) * 1987-09-25 1993-07-06 Hitachi, Ltd. Method for sorting vector data on the basis of partial vectors and vector processor
JPH01173230A (ja) * 1987-12-28 1989-07-07 Nippon Telegr & Teleph Corp <Ntt> ソート処理装置
JPH01177122A (ja) * 1988-01-07 1989-07-13 Hitachi Ltd ソート処理装置
JPH0312736A (ja) * 1989-06-12 1991-01-21 Hitachi Ltd マージ処理方法及び装置
JPH03116323A (ja) * 1989-06-30 1991-05-17 Digital Equip Corp <Dec> リバウンド分類装置を併合装置として使用する分類加速装置
JPH03129426A (ja) * 1989-06-30 1991-06-03 Digital Equip Corp <Dec> 分類加速装置のための速度及びメモリー制御
JPH03129521A (ja) * 1989-06-30 1991-06-03 Digital Equip Corp <Dec> 分類加速装置の安定分類

Also Published As

Publication number Publication date
JPH0666050B2 (ja) 1994-08-24

Similar Documents

Publication Publication Date Title
US5349684A (en) Sort and merge system using tags associated with the current records being sorted to lookahead and determine the next record to be sorted
US4053871A (en) Method and system for the iterative and simultaneous comparison of data with a group of reference data items
US5572710A (en) High speed logic simulation system using time division emulation suitable for large scale logic circuits
US5319651A (en) Data integrity features for a sort accelerator
US5142687A (en) Sort accelerator with rebound sorter repeatedly merging sorted strings
US5185886A (en) Multiple record group rebound sorter
JPS6142031A (ja) ソ−ト処理装置
JPS63129425A (ja) デ−タ処理装置
US3514760A (en) Sorting array ii
US5206947A (en) Stable sorting for a sort accelerator
US6240540B1 (en) Cyclic redundancy check in a computer system
US6513053B1 (en) Data processing circuit and method for determining the first and subsequent occurences of a predetermined value in a sequence of data bits
JP2587447B2 (ja) ソート処理装置
JPS62237523A (ja) ソ−テイング回路
JPH0926872A (ja) パイプラインマージソータ
JPH0315772B2 (ja)
Gonzalez et al. Sorting numbers in linear expected time and optimal extra space
JPH07120264B2 (ja) ソート処理装置
JPH01177124A (ja) ソータ記憶管理方式
JPH01177122A (ja) ソート処理装置
JPH0437455B2 (ja)
JPH03129520A (ja) 分類加速装置の制御
JPS63231526A (ja) ソ−ト処理装置
JPS6054043A (ja) ソ−ト処理器
Stephen Huang A VLSI partition algorithm

Legal Events

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