JPH03129521A - 分類加速装置の安定分類 - Google Patents
分類加速装置の安定分類Info
- Publication number
- JPH03129521A JPH03129521A JP2172506A JP17250690A JPH03129521A JP H03129521 A JPH03129521 A JP H03129521A JP 2172506 A JP2172506 A JP 2172506A JP 17250690 A JP17250690 A JP 17250690A JP H03129521 A JPH03129521 A JP H03129521A
- Authority
- JP
- Japan
- Prior art keywords
- records
- record
- input
- classification
- 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
Links
- 230000000087 stabilizing effect Effects 0.000 title 1
- 238000012546 transfer Methods 0.000 claims abstract description 8
- 238000012545 processing Methods 0.000 claims description 103
- 238000003860 storage Methods 0.000 claims description 57
- 238000000034 method Methods 0.000 claims description 32
- 230000008569 process Effects 0.000 claims description 16
- 230000015654 memory Effects 0.000 abstract description 49
- 230000001133 acceleration Effects 0.000 abstract description 2
- 238000004422 calculation algorithm Methods 0.000 description 18
- 238000012432 intermediate storage Methods 0.000 description 12
- 230000000630 rising effect Effects 0.000 description 10
- 230000001174 ascending effect Effects 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 238000007635 classification algorithm Methods 0.000 description 4
- 230000008520 organization Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000003780 insertion Methods 0.000 description 3
- 230000037431 insertion Effects 0.000 description 3
- 101000999079 Homo sapiens Radiation-inducible immediate-early gene IEX-1 Proteins 0.000 description 2
- 102100036900 Radiation-inducible immediate-early gene IEX-1 Human genes 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000003936 working memory Effects 0.000 description 2
- ISXZTIZZJJNZGD-UDPATQQPSA-N (8S)-glutathionyl-(7R,17S)-dihydroxy-(4Z,9,11,13Z,15E,19Z)-docosahexaenoic acid Chemical compound CC\C=C/C[C@H](O)\C=C\C=C/C=CC=C[C@H](SC[C@H](NC(=O)CC[C@H](N)C(O)=O)C(=O)NCC(O)=O)[C@H](O)C\C=C/CCC(O)=O ISXZTIZZJJNZGD-UDPATQQPSA-N 0.000 description 1
- 101001003310 Homo sapiens Immediate early response gene 5 protein Proteins 0.000 description 1
- 102100020688 Immediate early response gene 5 protein Human genes 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000007596 consolidation process Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/22—Arrangements for sorting or merging computer data on continuous record carriers, e.g. tape, drum, disc
- G06F7/24—Sorting, i.e. extracting data from one or more carriers, rearranging the data in numerical or other ordered sequence, and rerecording the sorted data on the original carrier or on a different carrier or set of carriers sorting methods in general
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99937—Sorting
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
(産業上の利用分野)
本発明は、分類加速装置に関し、特に、リバウンド分類
装置を併合装置として使用して多数のレコードを迅速に
且つ効率良く分類することの出来る分類加速装置に関す
る。本発明の加速装置は、極めて少ない部品を使用し、
その他の点では安価に製造することが出来、上位コンピ
ュータとは独立に作動し、信頼性が高い。
装置を併合装置として使用して多数のレコードを迅速に
且つ効率良く分類することの出来る分類加速装置に関す
る。本発明の加速装置は、極めて少ない部品を使用し、
その他の点では安価に製造することが出来、上位コンピ
ュータとは独立に作動し、信頼性が高い。
(従来技術とその問題点)
分類アルゴリズムのパイプライン方式VLS I装置は
公知である。IBMの開発したリバウンド分類装置は、
データが左側に沿って流れ下り、右側に沿って流れ上る
U形状のパイプラインを成すものとして視覚化すること
の出来る一組の処理要素を含む。該処理要素は、同時に
作動して、分類処理を高速化する。各要素は、二つのレ
コードからのデータを比較し、その比較の結果に応じて
、左側に沿っての垂直下降運動及び右側に沿っての垂直
上昇運動を行うか、又は、「比較的に重い」レコードが
左下方へ動かされ且つr比較的に軽い」レコードが右上
方へ動かされて結局は右側の上端から分類された順に出
てゆくこととなる様に水平交換を行う。この種のリバウ
ンド分類装置は、分類操作の高速化に利点を有するが、
所要のハードウェアのコストが高いので、特に多数のレ
コードを分類するために斯かる分類装置を広く使用する
ことが出来なかった。
公知である。IBMの開発したリバウンド分類装置は、
データが左側に沿って流れ下り、右側に沿って流れ上る
U形状のパイプラインを成すものとして視覚化すること
の出来る一組の処理要素を含む。該処理要素は、同時に
作動して、分類処理を高速化する。各要素は、二つのレ
コードからのデータを比較し、その比較の結果に応じて
、左側に沿っての垂直下降運動及び右側に沿っての垂直
上昇運動を行うか、又は、「比較的に重い」レコードが
左下方へ動かされ且つr比較的に軽い」レコードが右上
方へ動かされて結局は右側の上端から分類された順に出
てゆくこととなる様に水平交換を行う。この種のリバウ
ンド分類装置は、分類操作の高速化に利点を有するが、
所要のハードウェアのコストが高いので、特に多数のレ
コードを分類するために斯かる分類装置を広く使用する
ことが出来なかった。
複数の処理要素を使う他の種類の分類システムが提案さ
れている。しかし、全ての既知の種類のシステムには、
特に作動速度、ハードウェアのコスト、安定性及び信頼
性に関して限界がある。
れている。しかし、全ての既知の種類のシステムには、
特に作動速度、ハードウェアのコスト、安定性及び信頼
性に関して限界がある。
(発明の概要)
本発明の成る面は、従来の分類装置の問題の根源及び限
界の発見と認識に関する。処理動作が数個の要素によっ
て同時に行われる分類装置は、分類操作を高速化するの
には有利であるが、分類できるレコードの個数が限られ
ているという点で限界がある。例えば、前述のIBMの
分類装置は、分類要素の総数より一つだけ多いレコード
を含むレコードのグループを分類できる。よって、15
個の処理要素は、最大で16個のレコードを含むグルー
プを分類する。大規模な分類では、斯かるシステムを使
うハードウェアの量とコストとは膨大となる。
界の発見と認識に関する。処理動作が数個の要素によっ
て同時に行われる分類装置は、分類操作を高速化するの
には有利であるが、分類できるレコードの個数が限られ
ているという点で限界がある。例えば、前述のIBMの
分類装置は、分類要素の総数より一つだけ多いレコード
を含むレコードのグループを分類できる。よって、15
個の処理要素は、最大で16個のレコードを含むグルー
プを分類する。大規模な分類では、斯かるシステムを使
うハードウェアの量とコストとは膨大となる。
本発明の分類加速装置にはリバウンド分類装置を設けら
れ、限られた数の処理要素が同時に作動して割合に少数
のレコードをグループに分類する。
れ、限られた数の処理要素が同時に作動して割合に少数
のレコードをグループに分類する。
この時、同じリバウンド分類装置が、分類されたグルー
プを併合して、より小さなグループのレコードの全てを
分類された順に包含する大きなグループにするのにも使
われる。本発明の分類加速装置では、例えば16個のデ
ータ項目を分類するハードウェアが、16路・併合を行
うのにも使われる。分類されるべきレコードの個数が大
きくなっても、大分類のための処理要素の数を増やす必
要はない。
プを併合して、より小さなグループのレコードの全てを
分類された順に包含する大きなグループにするのにも使
われる。本発明の分類加速装置では、例えば16個のデ
ータ項目を分類するハードウェアが、16路・併合を行
うのにも使われる。分類されるべきレコードの個数が大
きくなっても、大分類のための処理要素の数を増やす必
要はない。
本発明を取り入れた分類加速装置は、典型的にはアドレ
ス及びデータのバスを通じて上位コンピュータと上位メ
モリーとに接続される。該分類加速装置は、上位処理装
置とは独立に作動してレコードを高速で分類し、その分
類されたレコードを上位メモリーに格納する。該分類加
速装置の独立動作によって、上位コンピュータは、分類
及び併合操作が行われているときに自由に他の操作を行
うことが出来る。
ス及びデータのバスを通じて上位コンピュータと上位メ
モリーとに接続される。該分類加速装置は、上位処理装
置とは独立に作動してレコードを高速で分類し、その分
類されたレコードを上位メモリーに格納する。該分類加
速装置の独立動作によって、上位コンピュータは、分類
及び併合操作が行われているときに自由に他の操作を行
うことが出来る。
好適な実施例では、分類加速装置は、入力部と、出力部
と、分類制御部と、分類部とを含む。分類制御部は、入
力部を制御してレコードのグループを分類部へ逐次に送
らせると共に、出力部を制御して複数の分類されたグル
ープを局所作業メモリー又は上位コンピュータのメモリ
ーの作業部分に格納させる。入力部、分類部、及び出力
部は、分類制御部から制御されて、レコードのグループ
を未分類の順序で受け取り、次にこのレコードのグルー
プの分類を、分類された順序で該グループを格納する。
と、分類制御部と、分類部とを含む。分類制御部は、入
力部を制御してレコードのグループを分類部へ逐次に送
らせると共に、出力部を制御して複数の分類されたグル
ープを局所作業メモリー又は上位コンピュータのメモリ
ーの作業部分に格納させる。入力部、分類部、及び出力
部は、分類制御部から制御されて、レコードのグループ
を未分類の順序で受け取り、次にこのレコードのグルー
プの分類を、分類された順序で該グループを格納する。
これは、次に、分類されたレコードのグループを併合し
て、大きな分類されたグループ又はストリングにする。
て、大きな分類されたグループ又はストリングにする。
該分類加速装置の分類部は、1期間に、成る最大個数の
レコードを下降順又は上昇順に分類することが出来、そ
の数は、成る実施例では16である。分類された16の
グループが作られると、これらのグループを一連の操作
を通じて併合して一つの大きな分類済みストリングとす
ることが出来る。16個の大きな分類済みストリングが
作られると、それらは併合されて、より長いストリング
となる。全てのレコードが分類されるまで、各回で16
倍大きなストリングを作りながら、このプロセスが繰り
返される。この方法は、Nlogwを越えない値に比例
する速度で分類をするが、ここでNはレコードの数であ
り、Wは処理要素の数よりIだけ大きい数である。
レコードを下降順又は上昇順に分類することが出来、そ
の数は、成る実施例では16である。分類された16の
グループが作られると、これらのグループを一連の操作
を通じて併合して一つの大きな分類済みストリングとす
ることが出来る。16個の大きな分類済みストリングが
作られると、それらは併合されて、より長いストリング
となる。全てのレコードが分類されるまで、各回で16
倍大きなストリングを作りながら、このプロセスが繰り
返される。この方法は、Nlogwを越えない値に比例
する速度で分類をするが、ここでNはレコードの数であ
り、Wは処理要素の数よりIだけ大きい数である。
この様な分類及び併合の機能を達成するために、分類部
又はリバウンド分類装置は僅かに15個の処理要素を有
するだけでよい。処理要素はレコードのキーバイトを比
較して順序を決める。処理要素は、2個のレコード記憶
要素を介して互いに接続される。処理要素及びレコード
記憶要素の構成は垂直のコラムを見ることが出来、新た
に入力されたレコードは該コラムの頂部左側に入り、分
類されたレコードは該コラムの頂部右側から出てゆ(0 レコードは16個のグループに分類され、格納部又は作
業空間メモリーに格納される。充分な数のグループが分
類された後、併合操作が始まる。
又はリバウンド分類装置は僅かに15個の処理要素を有
するだけでよい。処理要素はレコードのキーバイトを比
較して順序を決める。処理要素は、2個のレコード記憶
要素を介して互いに接続される。処理要素及びレコード
記憶要素の構成は垂直のコラムを見ることが出来、新た
に入力されたレコードは該コラムの頂部左側に入り、分
類されたレコードは該コラムの頂部右側から出てゆ(0 レコードは16個のグループに分類され、格納部又は作
業空間メモリーに格納される。充分な数のグループが分
類された後、併合操作が始まる。
併合のために、どの分類されたグループに属するかを示
すタグが各レコードに付される。上昇分類では、各グル
ープの最小のレコードは、リバウンド分類装置から押し
出されるまでリバウンド分類装置内に置かれる。このレ
コードは、分類された各グループの最小のレコードの全
集合のうちの最小のレコードである。リバウンド分類装
置に送り込まれた次のレコードは、全てのレコードのう
ちの最小のレコードを以前から含んでいたグループから
逐次に選択される。この新しいレコードは、分類された
グループに由来するものであるので、最初の最小のレコ
ードに等しいか又はそれより大きくなければならない。
すタグが各レコードに付される。上昇分類では、各グル
ープの最小のレコードは、リバウンド分類装置から押し
出されるまでリバウンド分類装置内に置かれる。このレ
コードは、分類された各グループの最小のレコードの全
集合のうちの最小のレコードである。リバウンド分類装
置に送り込まれた次のレコードは、全てのレコードのう
ちの最小のレコードを以前から含んでいたグループから
逐次に選択される。この新しいレコードは、分類された
グループに由来するものであるので、最初の最小のレコ
ードに等しいか又はそれより大きくなければならない。
この手順は継続され、新しいレコードは、最後に出力さ
れたレコードの出所となったグループから選択される。
れたレコードの出所となったグループから選択される。
全てのストリングが使い尽くされると、併合は完了し、
分類済みレコードの一つの大きなグループが出来ている
。
分類済みレコードの一つの大きなグループが出来ている
。
本発明の分類及び併合機能を迅速に且つ効率的に達成す
るために、本設計に色々な特徴か取り入れられる。外部
ハードウェアとの協働で、データか該分類加速装置に入
った点から、それか上位処理装置に戻るまで、そのデー
タは変造に関して検査される。それらのレコードが強化
されたリバウンド分類装置から出た後、となり合うレコ
ードの大きさを比較して、それらか適切に並べられてい
るか否か判定することによって、該分類加速装置の分類
及び併合特徴の正しい動作も検査される。
るために、本設計に色々な特徴か取り入れられる。外部
ハードウェアとの協働で、データか該分類加速装置に入
った点から、それか上位処理装置に戻るまで、そのデー
タは変造に関して検査される。それらのレコードが強化
されたリバウンド分類装置から出た後、となり合うレコ
ードの大きさを比較して、それらか適切に並べられてい
るか否か判定することによって、該分類加速装置の分類
及び併合特徴の正しい動作も検査される。
データが該システムを通過する際に該データの保全性を
検査する二つの方法が使われる。第1の方法では、バイ
トパリティを使ってデータ伝送のエラーを検出する。デ
ータの8ビツトは9個のビット値でひ表される。余分の
ビットは、データの出所で計算されたパリティ値を示す
。レコードの保全性は、送信されたデータからパリティ
値を計算し直し、その新しく計算された値を、送信され
たパリティビットと比較することによって検査される。
検査する二つの方法が使われる。第1の方法では、バイ
トパリティを使ってデータ伝送のエラーを検出する。デ
ータの8ビツトは9個のビット値でひ表される。余分の
ビットは、データの出所で計算されたパリティ値を示す
。レコードの保全性は、送信されたデータからパリティ
値を計算し直し、その新しく計算された値を、送信され
たパリティビットと比較することによって検査される。
不一致は、伝送エラーを示す。
データ保全性を保証するために使われる第2の方法は、
2レベル検査合計方式を使用する。検査合計は、各レコ
ードがリバウンド分類装置に入ってくるときに多数のバ
イトに対して計算される。
2レベル検査合計方式を使用する。検査合計は、各レコ
ードがリバウンド分類装置に入ってくるときに多数のバ
イトに対して計算される。
検査合計は、後に、強化されたリバウンド分類装置から
レコードが出てゆくときに計算し直されて、先に計算さ
れていた検査合計と比較される。この比較により、リバ
ウンド分類装置で発生することある2種類のエラーが検
査される。第1の種類のエラーは、データ経路での単一
ビット故障(記憶要素故障を含む)に由来し、第2の種
類は、レコード同士の間の不適切に制御されたバイトの
スワッスング(交換)に由来する(処理要素制御故障)
分類順序検査装置は、強化されたリバウンド分類装置か
ら出てゆくレコードを、適切な分類について検査する。
レコードが出てゆくときに計算し直されて、先に計算さ
れていた検査合計と比較される。この比較により、リバ
ウンド分類装置で発生することある2種類のエラーが検
査される。第1の種類のエラーは、データ経路での単一
ビット故障(記憶要素故障を含む)に由来し、第2の種
類は、レコード同士の間の不適切に制御されたバイトの
スワッスング(交換)に由来する(処理要素制御故障)
分類順序検査装置は、強化されたリバウンド分類装置か
ら出てゆくレコードを、適切な分類について検査する。
シフトレジスターとして作用する特別の記憶要素は、一
つのレコードを保持し、比較論理と協働して、分類され
たレコードが適切な順序に並べられているか否か判定す
る。該比較論理の出力は、リバウンド分類装置がレコー
ドを不適切に分類したか否かを示す。
つのレコードを保持し、比較論理と協働して、分類され
たレコードが適切な順序に並べられているか否か判定す
る。該比較論理の出力は、リバウンド分類装置がレコー
ドを不適切に分類したか否かを示す。
分類順序検査装置は、隣接するレコードのキーが等しい
か否かを示す「タイ」ビットも提供する。
か否かを示す「タイ」ビットも提供する。
ユーザーソフトウェアは、この「タイ」ビットを利用し
て、分類加速装置の容量を越えたキーフィルドに対して
分類を行うか、或いはユーザーが重複するレコードの分
類後除去を行うのを補助する。
て、分類加速装置の容量を越えたキーフィルドに対して
分類を行うか、或いはユーザーが重複するレコードの分
類後除去を行うのを補助する。
本発明に従って構成された分類加速装置は、好適な実施
例では、ハードウェア要件を極めて小さくしながら、多
数のレコードの高速で安定した分類を達成する特徴を更
に含んでいる。一つの特徴は、分類加速装置で多数の分
類/併合を行うためのパイプライン制御である。このパ
イプライン制御は、異なるグループからのレコードを混
合せずに、且つ、新しいレコードのグループを該リバウ
ンド分類装置で分類する前に該リバウンド分類装置から
見かけレコードを流すことを必要とせずに、レコードの
グループを分類することを可能にする。
例では、ハードウェア要件を極めて小さくしながら、多
数のレコードの高速で安定した分類を達成する特徴を更
に含んでいる。一つの特徴は、分類加速装置で多数の分
類/併合を行うためのパイプライン制御である。このパ
イプライン制御は、異なるグループからのレコードを混
合せずに、且つ、新しいレコードのグループを該リバウ
ンド分類装置で分類する前に該リバウンド分類装置から
見かけレコードを流すことを必要とせずに、レコードの
グループを分類することを可能にする。
該パイプライン制御は、先のグループの最後のレコード
が第1処理要素によって検査された直後に分類加速装置
が新しいレコードのグループをリバウンド分類装置に押
し込み始めることを可能にする。パイプライン制御は、
リバウンド分類装置と並列の一系統のシフトレジスター
により達成される。新しいレコードのグループがリバウ
ンド分類装置に入る時、新しいレコードの組がリバウン
ド分類装置に入ったことを示す境界値が第1パイプライ
ンシフトレジスターにセットされる。該境界値は、第1
のレコードと共に、処理要素を通過するとき、シフトレ
ジスターの該系列を通してシフトされる。数値は、該処
理要素に対して、該境界値に続くレコードを、他のグル
ープのレコードと比較してはならないことを示す。この
様にして、リバウンド分類装置は完全にレコードが装填
された状態に保たれることが出来、レコードの随意の数
の異なるグループのレコードのローディング及びアンロ
ーディングが重なり合うことが可能となる。
が第1処理要素によって検査された直後に分類加速装置
が新しいレコードのグループをリバウンド分類装置に押
し込み始めることを可能にする。パイプライン制御は、
リバウンド分類装置と並列の一系統のシフトレジスター
により達成される。新しいレコードのグループがリバウ
ンド分類装置に入る時、新しいレコードの組がリバウン
ド分類装置に入ったことを示す境界値が第1パイプライ
ンシフトレジスターにセットされる。該境界値は、第1
のレコードと共に、処理要素を通過するとき、シフトレ
ジスターの該系列を通してシフトされる。数値は、該処
理要素に対して、該境界値に続くレコードを、他のグル
ープのレコードと比較してはならないことを示す。この
様にして、リバウンド分類装置は完全にレコードが装填
された状態に保たれることが出来、レコードの随意の数
の異なるグループのレコードのローディング及びアンロ
ーディングが重なり合うことが可能となる。
分類加速装置の他の特徴は、安定分類の実行に関する。
安定分類は、等しいキーを持ったレコードは、入る際と
同じ相対的順序で分類加速装置から出てゆく様な分類で
ある。安定分類は、等しいキーを持ったレコードの順序
が既に決まっている様なアプリケーションで必要とされ
るものである。
同じ相対的順序で分類加速装置から出てゆく様な分類で
ある。安定分類は、等しいキーを持ったレコードの順序
が既に決まっている様なアプリケーションで必要とされ
るものである。
安定分類をリバウンド分類装置に組み込むために、追加
のハードウェアが付加され、アルゴリズムが修正されて
いる。
のハードウェアが付加され、アルゴリズムが修正されて
いる。
安定分類は、レコードの出所であるグループにより、そ
のレコードを識別するビットをセットすることによって
実施される。このグループ指定は、等しいキーを有する
異なるグループからのレコードを、入ってきた順序でリ
バウンド分類装置から出てゆかせる。「順序」ビットは
、等しいキーを持った同じグループからのレコードを、
入ってきた順にリバウンド分類装置から出てゆかせる。
のレコードを識別するビットをセットすることによって
実施される。このグループ指定は、等しいキーを有する
異なるグループからのレコードを、入ってきた順序でリ
バウンド分類装置から出てゆかせる。「順序」ビットは
、等しいキーを持った同じグループからのレコードを、
入ってきた順にリバウンド分類装置から出てゆかせる。
分類加速装置の他の特徴は、データを格納するのに要す
るメモリーの量のより約10%程度大きい作業空間メモ
リーを必要とするに過ぎなくする様な併合先読み/メモ
リー管理構成に関する。この特徴は、メモリーの使用効
率を高めるだけでなく、作業空間メモリーを線型拡張し
、これにより作業空間の上位システム管理を簡単にする
。最適の併合により、データを処理する回数が減り、従
って、併合/分類アルゴリズムを実行するのに要する時
間が短くなる。
るメモリーの量のより約10%程度大きい作業空間メモ
リーを必要とするに過ぎなくする様な併合先読み/メモ
リー管理構成に関する。この特徴は、メモリーの使用効
率を高めるだけでなく、作業空間メモリーを線型拡張し
、これにより作業空間の上位システム管理を簡単にする
。最適の併合により、データを処理する回数が減り、従
って、併合/分類アルゴリズムを実行するのに要する時
間が短くなる。
作業空間記憶装置の割付は、分類制御部によって管理さ
れる。分類制御部は、分類されたデータに充分な記憶装
置が配分されているか否かを判定する。好適な実施例で
は、拡張された併合/分類アルゴリズムが入カフニーズ
及び出力フェーズの使用により分類及び併合の順序づけ
を制御する。
れる。分類制御部は、分類されたデータに充分な記憶装
置が配分されているか否かを判定する。好適な実施例で
は、拡張された併合/分類アルゴリズムが入カフニーズ
及び出力フェーズの使用により分類及び併合の順序づけ
を制御する。
入力フェーズは、分類及び併合から成り、入力ストリン
グを構成する未分類レコードの全てが、レコードのグル
ープを分類することにより又はレコードのグループを併
合することによって処理され終わるまで、続く。全ての
入力レコードが分類又は併合された後、出力フェーズが
始まる。
グを構成する未分類レコードの全てが、レコードのグル
ープを分類することにより又はレコードのグループを併
合することによって処理され終わるまで、続く。全ての
入力レコードが分類又は併合された後、出力フェーズが
始まる。
この時点で、作業空間記憶装置の複数の領域に数個の分
類済みグループ又はストリングがある。
類済みグループ又はストリングがある。
出力フェーズは、一連の併合と、これに続く、レコード
の分類を完了させる最後の併合とから成る。
の分類を完了させる最後の併合とから成る。
分類加速装置の併合機能の速度を更に高めるために、分
類加速装置はストリング番号又はタグ抽出先読み特徴を
利用する。本発明のこの特徴は、分類制御部により作ら
れた、与えられたレコードがどの入力ストリングに由来
するものであるのかを示す情報を利用する。この情報は
、分類制御部が次のレコードをリバウンド分類装置に送
ることを可能にするために必要である。先に記載したよ
うに、適切な併合は、次の入力レコードが最後の出力レ
コードと同じグループに由来するレコードであることを
必要とする。若しストリング情報が分類制御部に送られ
るのが遅過ぎると、リバウンド分類装置は次の入力レコ
ードを待ちながら機能停止する。大概の場合、タグ先読
みは次の分類済みレコードがリバウンド分類装置から出
てゆく前にタグ情報を分類制御部に提供する。これによ
り、次の入力レコードはリバウンド分類装置の入力で待
機することが出来るので、併合操作に遅延は生じない。
類加速装置はストリング番号又はタグ抽出先読み特徴を
利用する。本発明のこの特徴は、分類制御部により作ら
れた、与えられたレコードがどの入力ストリングに由来
するものであるのかを示す情報を利用する。この情報は
、分類制御部が次のレコードをリバウンド分類装置に送
ることを可能にするために必要である。先に記載したよ
うに、適切な併合は、次の入力レコードが最後の出力レ
コードと同じグループに由来するレコードであることを
必要とする。若しストリング情報が分類制御部に送られ
るのが遅過ぎると、リバウンド分類装置は次の入力レコ
ードを待ちながら機能停止する。大概の場合、タグ先読
みは次の分類済みレコードがリバウンド分類装置から出
てゆく前にタグ情報を分類制御部に提供する。これによ
り、次の入力レコードはリバウンド分類装置の入力で待
機することが出来るので、併合操作に遅延は生じない。
タグ先読み論理は、最小のレコードのグループ(上昇分
類の場合)を、それが実際に該分類装置から出力される
前に、早く決定する。これにより、次のレコードが出力
される前に分類加速装置は次の入力レコードへアクセス
を開始することが出来る。この技術を使って、非常に短
いレコードの場合、又は分類判定がレコードに対して非
常に遅くなされる場合を除いて、併合のレコード間遅延
を完全に無くすることが出来る。
類の場合)を、それが実際に該分類装置から出力される
前に、早く決定する。これにより、次のレコードが出力
される前に分類加速装置は次の入力レコードへアクセス
を開始することが出来る。この技術を使って、非常に短
いレコードの場合、又は分類判定がレコードに対して非
常に遅くなされる場合を除いて、併合のレコード間遅延
を完全に無くすることが出来る。
該分類加速装置の一つの付加的特徴は、指標付けを行っ
て、レコード記憶要素として使われる可変長シフトレジ
スターを実現する循環RAMを使用することである。レ
コードデータが処理要素間を通過する該レコードデータ
を保持するためにRAMが使われる。この方法では、色
々なレコードの大きさに対処する様に、1ビツト可変長
シフトレジスターがプログラムされる。該ビットは、該
可変長シフトレジスターを通してシフトされるとき、R
AMの各行を順次に作動可能に、RAMはデータを読み
出すか又は書き込む。よって、この特徴は、極めて少な
い量の論理を使いながら、長さが可変となる様にしてシ
フトレジスターを実現する。この方法は、低速で、作動
に多量の電力を要するデータ用シフトレジスターを使用
しない。
て、レコード記憶要素として使われる可変長シフトレジ
スターを実現する循環RAMを使用することである。レ
コードデータが処理要素間を通過する該レコードデータ
を保持するためにRAMが使われる。この方法では、色
々なレコードの大きさに対処する様に、1ビツト可変長
シフトレジスターがプログラムされる。該ビットは、該
可変長シフトレジスターを通してシフトされるとき、R
AMの各行を順次に作動可能に、RAMはデータを読み
出すか又は書き込む。よって、この特徴は、極めて少な
い量の論理を使いながら、長さが可変となる様にしてシ
フトレジスターを実現する。この方法は、低速で、作動
に多量の電力を要するデータ用シフトレジスターを使用
しない。
他の特徴及び利点は、添付図面と関連させて以下の詳し
い記述を読むことにより、もつと充分に理解できる。
い記述を読むことにより、もつと充分に理解できる。
(実施例)
参照数字10は、本発明の原理に従って構成された分類
加速装置を示す。分類加速装置lOは、アドレス及びデ
ータバス13を通じて上位コンピュータ11、上位メモ
リー12、及び作業空間メモリー18に接続されており
、上位コンピュータ11からコマンドデータを受信して
、上位メモリー12に格納されているレコードを分類し
、その分類したレコードをメモリー12に格納するよう
になっている。
加速装置を示す。分類加速装置lOは、アドレス及びデ
ータバス13を通じて上位コンピュータ11、上位メモ
リー12、及び作業空間メモリー18に接続されており
、上位コンピュータ11からコマンドデータを受信して
、上位メモリー12に格納されているレコードを分類し
、その分類したレコードをメモリー12に格納するよう
になっている。
コマンドデータは、例えば、分類されるべきレコードの
一グループのメモリー12におけるスタートアドレス又
は併合されるべきレコードのスタートアドレス、各グル
ープ内のレコードの長さ、各レコード内のキーフィール
ドの長さ、所望の分類のモード、グループ内のレコード
の数、及び分類済みレコードを格納するメモリー12内
のスタートアドレスを含む。このコマンドデータの受信
後、分類加速装置10は、上位処理装置とは独立に作動
して、指定されたレコードを高速で分類又は併合し、そ
の分類されたレコードを上位メモリー12に格納する。
一グループのメモリー12におけるスタートアドレス又
は併合されるべきレコードのスタートアドレス、各グル
ープ内のレコードの長さ、各レコード内のキーフィール
ドの長さ、所望の分類のモード、グループ内のレコード
の数、及び分類済みレコードを格納するメモリー12内
のスタートアドレスを含む。このコマンドデータの受信
後、分類加速装置10は、上位処理装置とは独立に作動
して、指定されたレコードを高速で分類又は併合し、そ
の分類されたレコードを上位メモリー12に格納する。
上位コンピュータは、コマンド信号を分類加速装置10
に供給した後、他の操作を自由に行う。
に供給した後、他の操作を自由に行う。
図示の分類加速装置IOは、システムインターフェース
15を通じて上位バス13に接続された局所アドレス及
びデータバス14を含む。作業空間を提供する局所メモ
リー16は、局所バス14に接続されている。局所メモ
リー16は随意のものであるが、作業空間は図示のシス
テムに必要なものである。図示の局所メモリー16の代
わりに、或いは、それに加えて、上位メモリー12の一
部を使って、局所メモリー16の提供する作業空間の代
わりとなる作業空間を設けることが出来る。
15を通じて上位バス13に接続された局所アドレス及
びデータバス14を含む。作業空間を提供する局所メモ
リー16は、局所バス14に接続されている。局所メモ
リー16は随意のものであるが、作業空間は図示のシス
テムに必要なものである。図示の局所メモリー16の代
わりに、或いは、それに加えて、上位メモリー12の一
部を使って、局所メモリー16の提供する作業空間の代
わりとなる作業空間を設けることが出来る。
局所バス14は、入力部21、出力部22、及び分類順
序づけ装置34に接続するインターフェース20を通じ
てリバウンド分類装置18に接続されている。図示の様
に、入力部21は、パリティ検査装置23、バッファー
24、LW(長ワード)力)らバイトへのアンパック装
置25、タグ挿入装置26及び検査パリティ/検査合計
計算装置27を含む。出力部22は、順序検査装置29
を通じて分類装置18に接続されており、検査合計及び
パリティ生成装置30、バイトから長ワードへのパッカ
ー31、長ワードバッファー32及びパリティ検査/生
成回路33を含む。
序づけ装置34に接続するインターフェース20を通じ
てリバウンド分類装置18に接続されている。図示の様
に、入力部21は、パリティ検査装置23、バッファー
24、LW(長ワード)力)らバイトへのアンパック装
置25、タグ挿入装置26及び検査パリティ/検査合計
計算装置27を含む。出力部22は、順序検査装置29
を通じて分類装置18に接続されており、検査合計及び
パリティ生成装置30、バイトから長ワードへのパッカ
ー31、長ワードバッファー32及びパリティ検査/生
成回路33を含む。
リバウンド分類装置18及びインターフェース20は分
類順序づけ装置34に接続されており、この装置34は
、上位プロセッサ11から送られたコマンドデータを受
信し、後述するように入力、分類、格納、併合及び出力
の動作を監視し制御する。分類順序つけ装置34は、レ
ジスターアレイ35と、ROM38に格納されているマ
イクロプログラムから作動する命令レジスター37に接
続されたALU36とを含む。ALU37は、入力、分
類、併合及び出力の操作の管理制御を行う。分類順序つ
け装置34は、分類順序、タグ先読み及び雑務制御回路
39を含む。分類操作及び併合操作中にメモリーからレ
コードを迅速に取り出すために入力部21に送られたア
ドレスを選択すると共に、他の機能も実行する。
類順序づけ装置34に接続されており、この装置34は
、上位プロセッサ11から送られたコマンドデータを受
信し、後述するように入力、分類、格納、併合及び出力
の動作を監視し制御する。分類順序つけ装置34は、レ
ジスターアレイ35と、ROM38に格納されているマ
イクロプログラムから作動する命令レジスター37に接
続されたALU36とを含む。ALU37は、入力、分
類、併合及び出力の操作の管理制御を行う。分類順序つ
け装置34は、分類順序、タグ先読み及び雑務制御回路
39を含む。分類操作及び併合操作中にメモリーからレ
コードを迅速に取り出すために入力部21に送られたア
ドレスを選択すると共に、他の機能も実行する。
強化されたリバウンド分類装置18は、16個のレコー
ドのグループに対して、該レコードのキーの審査を通じ
て同時処理操作を実行するように設計されている。これ
は、その処理操作が実行される15個の部40−54を
含み、この部の個数は、処理されるグループのレコード
の個数よりlだけ少ない。部40−54の各々は、処理
要素と、付随のレコード記憶要素とを含む。リバウンド
分類装置18の特徴は、記憶回路56の使用を通じてレ
コード記憶要素を実現することに関し、この回路56は
、RAM及び読み書き回路を含み、RAMインデックス
回路58の制御下で作動する。
ドのグループに対して、該レコードのキーの審査を通じ
て同時処理操作を実行するように設計されている。これ
は、その処理操作が実行される15個の部40−54を
含み、この部の個数は、処理されるグループのレコード
の個数よりlだけ少ない。部40−54の各々は、処理
要素と、付随のレコード記憶要素とを含む。リバウンド
分類装置18の特徴は、記憶回路56の使用を通じてレ
コード記憶要素を実現することに関し、この回路56は
、RAM及び読み書き回路を含み、RAMインデックス
回路58の制御下で作動する。
別の特徴はレコードの別々のグループの混合を防止しな
がら遅延を防ぐために、強化されたリバウンド分類装置
18への装填及び排出を制御するパイプライン制御回路
60の設置に関する。レコード制御回路62は、部40
−54の処理要素とパイプライン制御回路60とにタイ
ミング信号を供給する。
がら遅延を防ぐために、強化されたリバウンド分類装置
18への装填及び排出を制御するパイプライン制御回路
60の設置に関する。レコード制御回路62は、部40
−54の処理要素とパイプライン制御回路60とにタイ
ミング信号を供給する。
追加の特徴は、ハードウェア要件を小さくし且つ他の利
点を達成しながら多数のレコードの高速分類を達成出来
る態様で分類及び併合の両方を行うための強化リバウン
ド分類装置18の使用に関する。特別の特徴は、後述す
るように、安定した信頼できるレコード分類及び分類済
みレコードの併合を容易にする態様で、処理操作中に個
々のレコードを識別することに関する。
点を達成しながら多数のレコードの高速分類を達成出来
る態様で分類及び併合の両方を行うための強化リバウン
ド分類装置18の使用に関する。特別の特徴は、後述す
るように、安定した信頼できるレコード分類及び分類済
みレコードの併合を容易にする態様で、処理操作中に個
々のレコードを識別することに関する。
以上に記載した分類加速装置の作動時には、コマンドデ
ータが最初にインターフェース部を通じて分類順序づけ
装置34に送られる。分類順序づけ装置34は、入力さ
れるべきレコードの各グループの第ルコードの開始アド
レス、該グループのレコードの長さ、各レコードのキー
フィールドの長さ、レコードの個数及び開始アドレス、
並びに、分類済みレコードを格納するべき場所に関する
他のデータを含む、対応する制御データを作ってレジス
ターアレイ35に格納する。コマンドデータが分類順序
づけ装置34を通じて送られた後、次の動作が始まり、
入力部21はアドレス回路23を使ってレコードデータ
を上位メモリー12から取り出し、次に、入力部21は
バイト挿入装置25を使って、修正されたレコードを作
る。修正されたレコードの連続的なストリームをリバウ
ンド分類装置18に送ることが出来、各々の修正された
レコードは成る偶数個の逐次バイトから成る。
ータが最初にインターフェース部を通じて分類順序づけ
装置34に送られる。分類順序づけ装置34は、入力さ
れるべきレコードの各グループの第ルコードの開始アド
レス、該グループのレコードの長さ、各レコードのキー
フィールドの長さ、レコードの個数及び開始アドレス、
並びに、分類済みレコードを格納するべき場所に関する
他のデータを含む、対応する制御データを作ってレジス
ターアレイ35に格納する。コマンドデータが分類順序
づけ装置34を通じて送られた後、次の動作が始まり、
入力部21はアドレス回路23を使ってレコードデータ
を上位メモリー12から取り出し、次に、入力部21は
バイト挿入装置25を使って、修正されたレコードを作
る。修正されたレコードの連続的なストリームをリバウ
ンド分類装置18に送ることが出来、各々の修正された
レコードは成る偶数個の逐次バイトから成る。
好ましくは、修正されたレコードは、各々、第2図に示
されている形を有し、該分類装置に最初に入る先行の1
個以上のキーバイトにと、これに続くタグバイトT(バ
イト挿入装置25により付加される)と、1個以上のデ
ータバイトDとを含む。レコード中に偶数個のバイトを
得ることが必要な場合には後続のパッドバイトPが、図
示の様に、バイト挿入装置25により各レコードに付加
される。
されている形を有し、該分類装置に最初に入る先行の1
個以上のキーバイトにと、これに続くタグバイトT(バ
イト挿入装置25により付加される)と、1個以上のデ
ータバイトDとを含む。レコード中に偶数個のバイトを
得ることが必要な場合には後続のパッドバイトPが、図
示の様に、バイト挿入装置25により各レコードに付加
される。
タグバイトTの挿入は、与えられたレコードの出所とし
ての入力ストリングを確実に且つ効率的に識別すること
を可能にし、且つ後述するように迅速な併合操作を容易
にする特徴である。他の特徴によると、後述するように
、高度に安定した分類操作を保証するために使われる「
順序jビットを各レコードが含んでおり、この「順序」
ビットは好ましくはタグバイトに包含される。
ての入力ストリングを確実に且つ効率的に識別すること
を可能にし、且つ後述するように迅速な併合操作を容易
にする特徴である。他の特徴によると、後述するように
、高度に安定した分類操作を保証するために使われる「
順序jビットを各レコードが含んでおり、この「順序」
ビットは好ましくはタグバイトに包含される。
操作の入力フェーズでは、分類操作が行われて16個の
レコードが図示のリバウンド分類装置18の中ヘシフト
される。一つのグループの最後のレコードがリバウンド
分類装置18内にシフトされると同時に、そのグループ
の16個のレコードは、分類された順に該リバウンド分
類装置から出始める。この様にして16個のレコードの
分類済みストリングが形成され、出力部22によって作
業空間メモリー16に送り込まれる。
レコードが図示のリバウンド分類装置18の中ヘシフト
される。一つのグループの最後のレコードがリバウンド
分類装置18内にシフトされると同時に、そのグループ
の16個のレコードは、分類された順に該リバウンド分
類装置から出始める。この様にして16個のレコードの
分類済みストリングが形成され、出力部22によって作
業空間メモリー16に送り込まれる。
他の特徴は、動作速度を高めるパイプライン制御回路6
0の使用に関する。16個のレコードの各分類済みグル
ープがリバウンド分類装置18から出てゆくとき、他の
分類動作が開始されて他の16個のレコードのグループ
が実際上同時にリバウンド分類装置18内にシフトされ
る。パイプライン制御回路60は、この二つのグループ
のレコードを混合せずにこの操作を行わせる様に設計さ
れている。
0の使用に関する。16個のレコードの各分類済みグル
ープがリバウンド分類装置18から出てゆくとき、他の
分類動作が開始されて他の16個のレコードのグループ
が実際上同時にリバウンド分類装置18内にシフトされ
る。パイプライン制御回路60は、この二つのグループ
のレコードを混合せずにこの操作を行わせる様に設計さ
れている。
16個のレコードの第2のスI・リングが分類されて出
力部22によって送られて作業空間メモリー16に格納
されてゆくとき、16個のレコードの第3のグループが
リバウンド分類装置18内にシフトされてゆき、次に、
各々16個の分類済みレコードから成る16個のストリ
ングが作業空間メモリー16に格納されるまで第4及び
後続の16個のレコードのグループがシフトされてゆ(
。
力部22によって送られて作業空間メモリー16に格納
されてゆくとき、16個のレコードの第3のグループが
リバウンド分類装置18内にシフトされてゆき、次に、
各々16個の分類済みレコードから成る16個のストリ
ングが作業空間メモリー16に格納されるまで第4及び
後続の16個のレコードのグループがシフトされてゆ(
。
後に詳しく説明するように、rアップ併合」操作が行わ
れ、この操作により、各々16個のレコードから成る1
6個の分類済みストリングからレコードが取り出されて
リバウンド分類装置18内にシフトされて、256個の
分類済みレコードから成る単一のストリングが形成され
、これが作業空間メモリーに格納される。最後のレコー
ド又は分類又は併合の直後に併合を開始することが出来
る。
れ、この操作により、各々16個のレコードから成る1
6個の分類済みストリングからレコードが取り出されて
リバウンド分類装置18内にシフトされて、256個の
分類済みレコードから成る単一のストリングが形成され
、これが作業空間メモリーに格納される。最後のレコー
ド又は分類又は併合の直後に併合を開始することが出来
る。
256個のレコードの単一のストリングが格納された後
、他の分類操作が行われて、各々16個のレコードから
成る他の16個のストリングが作業空間メモリー16に
格納され、その後に他のアップ併合操作が行われて25
6個の分類済みレコードの第2のストリングが形成され
格納される。
、他の分類操作が行われて、各々16個のレコードから
成る他の16個のストリングが作業空間メモリー16に
格納され、その後に他のアップ併合操作が行われて25
6個の分類済みレコードの第2のストリングが形成され
格納される。
各々256個のレコードから成る16個のストリングが
形成され格納された後、更に他のアップ併合操作を行っ
て4096個のレコードから成る単一のストリングを形
成し格納すことが出来る。
形成され格納された後、更に他のアップ併合操作を行っ
て4096個のレコードから成る単一のストリングを形
成し格納すことが出来る。
入力ストリングが4096個より多いレコードを有する
ならば、入力ストリング全体が処理されるまで、追加の
分類及びアップ併合操作が行われる。入力フェーズでは
、レコードは全て4096個のレコードを包含する数個
のストリングに分類されるが、最後のストリングだけは
例外で、入力ストリングの長さに応じて4096個の少
ないレコードを包含することがある。形成されることの
出来るストリングの数は、使用可能なメモリーによって
のみ限定される。
ならば、入力ストリング全体が処理されるまで、追加の
分類及びアップ併合操作が行われる。入力フェーズでは
、レコードは全て4096個のレコードを包含する数個
のストリングに分類されるが、最後のストリングだけは
例外で、入力ストリングの長さに応じて4096個の少
ないレコードを包含することがある。形成されることの
出来るストリングの数は、使用可能なメモリーによって
のみ限定される。
入力フェーズの分類及びアップ併合操作が完了すると、
出力フェーズが始まって、必要に応じて併合が行われて
ストリングの数が16以下に減らされ、次に最後の併合
が行われて分類済みレコードが上位メモリー12の、上
位コンピュータ11からの最初のコマンドで指定される
アドレスから始まるアドレスに直接書き込まれる。更に
他の特徴は、併合されるべきストリングの作業メモリー
又は中間メモリーにおける格納の管理と、格納されてい
るストリングを中間メモリーから併合のためにリバウン
ド分類装置18に供給する方法とに関する。
出力フェーズが始まって、必要に応じて併合が行われて
ストリングの数が16以下に減らされ、次に最後の併合
が行われて分類済みレコードが上位メモリー12の、上
位コンピュータ11からの最初のコマンドで指定される
アドレスから始まるアドレスに直接書き込まれる。更に
他の特徴は、併合されるべきストリングの作業メモリー
又は中間メモリーにおける格納の管理と、格納されてい
るストリングを中間メモリーから併合のためにリバウン
ド分類装置18に供給する方法とに関する。
分類加速装置lOは、パリティ及び検査合計の検査を含
む検査操作に関連する特徴も含んでおり、これらの検査
は、処理エラーを検出すると共に、分類加速装置10か
ら出力される分類済みレコードの保全性を保証しながら
最適な分類及び併合の操作が出来る様に行われる。
む検査操作に関連する特徴も含んでおり、これらの検査
は、処理エラーを検出すると共に、分類加速装置10か
ら出力される分類済みレコードの保全性を保証しながら
最適な分類及び併合の操作が出来る様に行われる。
分類加速装置lOの心臓部は、第3図に単純化された形
で示されているリバウンド分類装置18である。第4A
図及び第4B図は、該分類装置中のデータの流れの、簡
単化された例を示す。リバウンド分類装置18の構成は
、第5図に詳しく示されており、分類装置18の個々の
回路は他の図に示されている。
で示されているリバウンド分類装置18である。第4A
図及び第4B図は、該分類装置中のデータの流れの、簡
単化された例を示す。リバウンド分類装置18の構成は
、第5図に詳しく示されており、分類装置18の個々の
回路は他の図に示されている。
分類装置18は、典型的には名前又は番号のASCII
表示を提供するバイトであるレコードのキーに割り当て
られた数値に一致する順にレコードを配列する。該分類
装置は、希望に応じてレコードを上昇又は下降の順に分
類することが出来る。本書において動作を記述し、混乱
をなるべく無くするために、レコードキーの比較に言及
するときには「より大きい」及び「より小さい」という
用語を使用する。「より大きいjキー及びrより小さい
Jキーに付随する実際のキー値は、行われている分類が
上昇分類である下降分類であるかに依存し、本書におけ
るrより大きい」及び「より小さい」という用語の使用
は発明に対する限定と解されるべきではないことが分か
る。
表示を提供するバイトであるレコードのキーに割り当て
られた数値に一致する順にレコードを配列する。該分類
装置は、希望に応じてレコードを上昇又は下降の順に分
類することが出来る。本書において動作を記述し、混乱
をなるべく無くするために、レコードキーの比較に言及
するときには「より大きい」及び「より小さい」という
用語を使用する。「より大きいjキー及びrより小さい
Jキーに付随する実際のキー値は、行われている分類が
上昇分類である下降分類であるかに依存し、本書におけ
るrより大きい」及び「より小さい」という用語の使用
は発明に対する限定と解されるべきではないことが分か
る。
第3図を参照すると、分類装置18は、実際にN個のレ
コードキーを比較することの出来るN−1要素のリバウ
ンド分類装置である。Nは図示の実施例では16であり
、N−1個の処理要素はPE、ないしPE、、と示され
ていて、第1図に示されている部40−54に包含され
ている。
コードキーを比較することの出来るN−1要素のリバウ
ンド分類装置である。Nは図示の実施例では16であり
、N−1個の処理要素はPE、ないしPE、、と示され
ていて、第1図に示されている部40−54に包含され
ている。
キー比較は、−時に1バイトずつ、N−1個の処理要素
の全てで行われるか又は並列に動作する。
の全てで行われるか又は並列に動作する。
キーのバイトの比較は、キーからのバイトが一致しなく
なるまで続けられる。その時、該バイトの符号を除いた
二進値に基づいて、どのキーがより大きいか判断される
。上昇分類では、より大きなキーは、より大きな符号無
し二進バイト値を持っているキーである。下降分類では
、より大きなキーは、より小さな符号無し二進バイト値
を持っているキーである。
なるまで続けられる。その時、該バイトの符号を除いた
二進値に基づいて、どのキーがより大きいか判断される
。上昇分類では、より大きなキーは、より大きな符号無
し二進バイト値を持っているキーである。下降分類では
、より大きなキーは、より小さな符号無し二進バイト値
を持っているキーである。
N−1要素リバウンド分類装置は、以下の特性を持った
ブラックボックスと見ることの出来るものである。N−
1個のレコードが装填された後、新しいレコードがこの
箱に投入されると、この新しいレコードと、既に数箱の
中にあるN−1個のレコードとの中の最小のレコードが
数箱から出てくる。
ブラックボックスと見ることの出来るものである。N−
1個のレコードが装填された後、新しいレコードがこの
箱に投入されると、この新しいレコードと、既に数箱の
中にあるN−1個のレコードとの中の最小のレコードが
数箱から出てくる。
第3図に略図示されている様に、リバウンド分類装置は
、各々IER8として示されている要素間レコード格納
部を介して接続されたN−1個の処理要素から成ってお
り、2個のIER8が各PEに付随している。各PEは
各期間に2個の入力バイトを受け入れて2個の出力バイ
トを作る。
、各々IER8として示されている要素間レコード格納
部を介して接続されたN−1個の処理要素から成ってお
り、2個のIER8が各PEに付随している。各PEは
各期間に2個の入力バイトを受け入れて2個の出力バイ
トを作る。
各I ER5は各期間に1バイトを受け入れてlバイト
を作る。各IER8はレコードの半分を保持し、シフト
レジスターとして作動する。I ER8のバイト入力は
出力においてR/2期間後に作られるが、ここでRはレ
コード中のバイトの数である。処理要素及び要素間レコ
ード格納部の構成は、垂直のコラムと見なすことの出来
るものであり、新しいレコードは該カラムの、第3図の
頂部左側及び右側から出入りする。
を作る。各IER8はレコードの半分を保持し、シフト
レジスターとして作動する。I ER8のバイト入力は
出力においてR/2期間後に作られるが、ここでRはレ
コード中のバイトの数である。処理要素及び要素間レコ
ード格納部の構成は、垂直のコラムと見なすことの出来
るものであり、新しいレコードは該カラムの、第3図の
頂部左側及び右側から出入りする。
IER8要素は、次のようにしてPEに接続されている
: (a) 該コラムを下るPEmからの出力バイトは、
I ER8mへの入力である。
: (a) 該コラムを下るPEmからの出力バイトは、
I ER8mへの入力である。
(b) IER8mの出力は、IER8N+N−3へ
の入力であるIER8N−2を除いて、下降するPEm
+1への入力である。リバウンド分類装置への入力は、
PEOへの入力である。
の入力であるIER8N−2を除いて、下降するPEm
+1への入力である。リバウンド分類装置への入力は、
PEOへの入力である。
(C) 該コラムを上昇するPEmからの出力バイト
は、該分類装置の出力であるPEOを除いて、IER8
N−1+m−1への入力である。
は、該分類装置の出力であるPEOを除いて、IER8
N−1+m−1への入力である。
(d) IER8N−1+m−1の出力は、PEm−
lへの入力である。
lへの入力である。
より大きなキーを持ったレコード(最後のシーケンスで
遅くに分類するもの)は該コラムの底に向かって降下し
、より小さなキー持ったレコード(最後のシーケンスで
早くに分類するもの)は該コラムの頂部へ向かって上昇
する。本発明の加速装置では、比較されるべきレコード
のグループは、該コラムに入る新しいレコードが該コラ
ム中に既に在るレコードと混合されるのを防止する「境
界」条件を作ることによって分離される。これにより、
実際に、グループが該コラムから流し去られ、新しいグ
ループが装填される。
遅くに分類するもの)は該コラムの底に向かって降下し
、より小さなキー持ったレコード(最後のシーケンスで
早くに分類するもの)は該コラムの頂部へ向かって上昇
する。本発明の加速装置では、比較されるべきレコード
のグループは、該コラムに入る新しいレコードが該コラ
ム中に既に在るレコードと混合されるのを防止する「境
界」条件を作ることによって分離される。これにより、
実際に、グループが該コラムから流し去られ、新しいグ
ループが装填される。
各PEは、該コラムを下降するレコード及び上昇するレ
コードの第1バイトが与えられたときに処理を開始する
。若し下降しているレコードが上昇しているレコードよ
り大きければ、それは該コラムを下降し続け、そして、
上昇しているレコードは該コラムを上昇し続ける。若し
下降しているレコードが上昇しているレコードより小さ
ければ、それは逆に該コラムを上昇させられ、上昇して
いたレコードは逆に該コラムを下降させられる。各IE
R3はレコードの半分を内蔵しているだけなので、偶数
番号のPEは、奇数番号のPEとは半レコードだけ位相
がずれている。
コードの第1バイトが与えられたときに処理を開始する
。若し下降しているレコードが上昇しているレコードよ
り大きければ、それは該コラムを下降し続け、そして、
上昇しているレコードは該コラムを上昇し続ける。若し
下降しているレコードが上昇しているレコードより小さ
ければ、それは逆に該コラムを上昇させられ、上昇して
いたレコードは逆に該コラムを下降させられる。各IE
R3はレコードの半分を内蔵しているだけなので、偶数
番号のPEは、奇数番号のPEとは半レコードだけ位相
がずれている。
本発明の加速装置のパイプライン制御は、新しいレコー
ドが与えられた時、キーの終わりが到達した時、及びそ
れらを比較するべきか否か(「境界」条件)を知る様に
PEの順序づけを制御する。
ドが与えられた時、キーの終わりが到達した時、及びそ
れらを比較するべきか否か(「境界」条件)を知る様に
PEの順序づけを制御する。
第4A図及び第4B図において、4個の2バイトレコー
ドの組を分類すの単純化された3要素リバウンド分類装
置が示されており、図示の加速装置lOは僅か4バイト
だけを必要とするものであり、簡単のために、この例で
は2バイトを使われる。図示の単純化されたリバウンド
分類装置への下記の入力シーケンスを考察する。2個の
数字がそれぞれレコードである: 85393274 この例では、以下の仮定を用いる: (a) 該キーはレコードの全体である。
ドの組を分類すの単純化された3要素リバウンド分類装
置が示されており、図示の加速装置lOは僅か4バイト
だけを必要とするものであり、簡単のために、この例で
は2バイトを使われる。図示の単純化されたリバウンド
分類装置への下記の入力シーケンスを考察する。2個の
数字がそれぞれレコードである: 85393274 この例では、以下の仮定を用いる: (a) 該キーはレコードの全体である。
(b) 箱は処理要素を表す。
(C) 箱と箱との間の垂直線は、1個の数字を保持
する要素間レコード格納部を表す。
する要素間レコード格納部を表す。
(d) 垂直線の隣に示されている数字は、IER8
に包含されているデータの値を表す。Xは、r無頓着な
人」データ(“don’ t care″date)を
示す。
に包含されているデータの値を表す。Xは、r無頓着な
人」データ(“don’ t care″date)を
示す。
(e) r<−Jという記号は、新しいグループの第
1バイトを示す(r境界1条件)。
1バイトを示す(r境界1条件)。
(f)PE状態は、PEの中に示されているrDsJr
PVJ、rPH」、rEVl、及びrX XJという記
号で指示されている。
PVJ、rPH」、rEVl、及びrX XJという記
号で指示されている。
(g)DS=決定状態(垂直に通過)
(h)PV=垂直に通過
<1)PH=水平に通過
(j)FV=垂直に押し進める(垂直に通過)(k)x
x=頓着しない(don’ t care)。
x=頓着しない(don’ t care)。
図示の状態は、分類装置の動作を理解するのに役立つ。
例えば、PEの初期状態は、データをI ER3に装填
するrRVjである。4番目のクロック後に、最低のP
E要素がrDEJ (決定)状態に入り、二つの記録
の第1の可能な比較が行われる。
するrRVjである。4番目のクロック後に、最低のP
E要素がrDEJ (決定)状態に入り、二つの記録
の第1の可能な比較が行われる。
14クロツク後に最後のデータ値「5」が分類装置の出
力に現れる。よって、該出力ストリームはr32397
485J となる。
力に現れる。よって、該出力ストリームはr32397
485J となる。
第5図において、前述の処理要素PEO,PEl及びP
EN−2は、部40,41及び54に包含されている。
EN−2は、部40,41及び54に包含されている。
部40の処理要素は、2個のマルチプレクサ65及び6
6、制御回路67及び比較器67を含む。上京側のUL
入カライン69は、マルチプレクサ65の1入力とマル
チプレクサ66の1入力とに接続されている。第2のL
R入カライン7゜はマルチプレクサ65の第2入力とマ
ルチプレクサ66の第2入力とに接続されている。マル
チプレクサ65及び66の出力は、それぞれ、下座側の
LL出カライン71及び上官側のUR出カライン72に
接続されている。マルチプレクサ65及び66は、比較
器68の出力により制御される制御回路67によって制
御され、比較器68の入力はULライン69及びLRラ
イン70に接続されている。
6、制御回路67及び比較器67を含む。上京側のUL
入カライン69は、マルチプレクサ65の1入力とマル
チプレクサ66の1入力とに接続されている。第2のL
R入カライン7゜はマルチプレクサ65の第2入力とマ
ルチプレクサ66の第2入力とに接続されている。マル
チプレクサ65及び66の出力は、それぞれ、下座側の
LL出カライン71及び上官側のUR出カライン72に
接続されている。マルチプレクサ65及び66は、比較
器68の出力により制御される制御回路67によって制
御され、比較器68の入力はULライン69及びLRラ
イン70に接続されている。
処理要素がバイトを垂直に移動させている時には、マル
チプレクサ65及び66は、バイトがULライン69か
ら下方にLLライン71へ移動し、バイトがLRライン
70から上方にUTライン72へ移動することとなる様
に制御される。バイトが水平に移動させられる反対の状
態では、ULライン69上のバイト入力はマルチプレク
サ66を通じてURライン72へ送られ、LRライン7
0上のバイト入力はマルチプレクサ65を通じて左方に
LLライン71へ送られる。ライン69−72は、バイ
トの全てのビットを並列に送る複数の信号経路を提供し
、バイトは一つ一つ順次に送られる。
チプレクサ65及び66は、バイトがULライン69か
ら下方にLLライン71へ移動し、バイトがLRライン
70から上方にUTライン72へ移動することとなる様
に制御される。バイトが水平に移動させられる反対の状
態では、ULライン69上のバイト入力はマルチプレク
サ66を通じてURライン72へ送られ、LRライン7
0上のバイト入力はマルチプレクサ65を通じて左方に
LLライン71へ送られる。ライン69−72は、バイ
トの全てのビットを並列に送る複数の信号経路を提供し
、バイトは一つ一つ順次に送られる。
部40−54の全ての処理要素は、同じ機能を実行する
。各処理要素が、各期間に以下の情報を受け取る: (al 第5図のULライン69を通じて加えられる
、コラムを下降するレコードの次のバイト。
。各処理要素が、各期間に以下の情報を受け取る: (al 第5図のULライン69を通じて加えられる
、コラムを下降するレコードの次のバイト。
(b) 第5図のLRライン70を通じて加えられる
、コラムを上昇するレコードの次のバイト。
、コラムを上昇するレコードの次のバイト。
(C) 現在のバイトがレコードの最後のバイトであ
れば真であり、そうでなければ偽であるプール値。(こ
の値は第6図においてEloRECと呼ばれており、こ
れについては後述するが、これはPE制御論理を示す;
それは偶数番号のPEについてはERECと呼ばれ、奇
数番号のPEについては0RECと呼ばれる。)(d)
現在のバイトがキーに続く第1のバイトであれば真
であり、そうでなければ偽であるプール値。(この値は
第6図ではEloTAGと呼ばれており、偶数番号及び
奇数番号のPEについてETAG及び0TAGと呼ばれ
る。)(e) 現在のレコードが「垂直に移動させら
れている」ならば真であり、そうでなければ偽であるプ
ール値。「垂直に移動」は、コラムを下るしコードから
のバイトはコラムを下って移動させられ、コラムを上る
レコードからのバイトはコラムを登って移動させられる
ことを意味する。
れば真であり、そうでなければ偽であるプール値。(こ
の値は第6図においてEloRECと呼ばれており、こ
れについては後述するが、これはPE制御論理を示す;
それは偶数番号のPEについてはERECと呼ばれ、奇
数番号のPEについては0RECと呼ばれる。)(d)
現在のバイトがキーに続く第1のバイトであれば真
であり、そうでなければ偽であるプール値。(この値は
第6図ではEloTAGと呼ばれており、偶数番号及び
奇数番号のPEについてETAG及び0TAGと呼ばれ
る。)(e) 現在のレコードが「垂直に移動させら
れている」ならば真であり、そうでなければ偽であるプ
ール値。「垂直に移動」は、コラムを下るしコードから
のバイトはコラムを下って移動させられ、コラムを上る
レコードからのバイトはコラムを登って移動させられる
ことを意味する。
(この値は第6図においてFORCEVと呼ばれている
。) (f)「上昇1分類については真で、「下降」分類につ
いては偽であるプール値。(この値は第6図でASCE
NDINGと呼ばれている。)各処理要素が、以下の内
部状態情報を維持する:(a) 現在のレコードのう
ちのどれが「より大きい」かということについて判断が
なされていなければ真であり、そうでなければ偽である
プール値。
。) (f)「上昇1分類については真で、「下降」分類につ
いては偽であるプール値。(この値は第6図でASCE
NDINGと呼ばれている。)各処理要素が、以下の内
部状態情報を維持する:(a) 現在のレコードのう
ちのどれが「より大きい」かということについて判断が
なされていなければ真であり、そうでなければ偽である
プール値。
(第6図のDECIDING、)
(b) 判定がされた後に使用される、バイトが「垂
直に移動させられている」ならば真であり、バイトがj
水平に移動させられているJならば偽であるプール値。
直に移動させられている」ならば真であり、バイトがj
水平に移動させられているJならば偽であるプール値。
(第6図のPASSV、)受信された情報と現在の内部
状態情報とに基づいて、各処理要素は各期間に以下の情
報を作る:(a) コラムを下るべき次のバイト。こ
のバイトは第5図のLLライン71から下降させられる
。
状態情報とに基づいて、各処理要素は各期間に以下の情
報を作る:(a) コラムを下るべき次のバイト。こ
のバイトは第5図のLLライン71から下降させられる
。
(b) コラムを上るべき次のバイト。このバイトは
第5図のURライン72から上昇させられる。
第5図のURライン72から上昇させられる。
(C) 内部状態情報についての新しい値。
処理要素の動作について、上記の情報に関して簡単に説
明する。処理要素が垂直に移動させる様にされているな
らば、下降するレコードの全てのバイトが下方に通過さ
せられ、上昇するレコードのバイトは、下記の判断プロ
セスとは無関係に上方に通過させられる。これは、分類
装置に装填をし、それを空にし、分類されるべきレコー
ドのグループを分離するのに使われる。
明する。処理要素が垂直に移動させる様にされているな
らば、下降するレコードの全てのバイトが下方に通過さ
せられ、上昇するレコードのバイトは、下記の判断プロ
セスとは無関係に上方に通過させられる。これは、分類
装置に装填をし、それを空にし、分類されるべきレコー
ドのグループを分離するのに使われる。
処理要素が垂直に移動させる様にされていなければ、次
の様になる。判断が既に行われていれば、先に行われた
その判断に基づいてバイトは垂直又は水平に移動させら
れ続ける。そうでなければ、現在の入力バイトが比較さ
れる。それらが等しくなければ、この時点で判断が行わ
れる。上昇中のバイトが下降中のバイトより大きければ
、上昇中のバイトは下方に移動させられ、下降中のバイ
トは上方に移動させられる(水平に移動)。そもなけれ
ば、上昇中のバイトは上方に移動させられ、下降中のバ
イトは下方に移動させられる(垂直に移動)。判断がさ
れる時、処理要素は、各レコードの残りのバイトを同じ
方向に移動させるために、垂直に移動させたか又は水平
に移動させたかを思い出す。
の様になる。判断が既に行われていれば、先に行われた
その判断に基づいてバイトは垂直又は水平に移動させら
れ続ける。そうでなければ、現在の入力バイトが比較さ
れる。それらが等しくなければ、この時点で判断が行わ
れる。上昇中のバイトが下降中のバイトより大きければ
、上昇中のバイトは下方に移動させられ、下降中のバイ
トは上方に移動させられる(水平に移動)。そもなけれ
ば、上昇中のバイトは上方に移動させられ、下降中のバ
イトは下方に移動させられる(垂直に移動)。判断がさ
れる時、処理要素は、各レコードの残りのバイトを同じ
方向に移動させるために、垂直に移動させたか又は水平
に移動させたかを思い出す。
上昇/下降の入力の状態は、比較における大小の意味を
判断するのに使われる。
判断するのに使われる。
第3図の要素間レコード格納部即ち、IER3は、バイ
トのレコードの半分を内蔵する可変長シフトレジスター
である。Rの長さのレコードにっていは、期間Tにおけ
るI ER8へのバイト入力は、期間T+R/2でその
出力に作られる。これは、該シフトレジスターの長さが
R/2でなければならないことを意味する。前述したよ
うに、ユーザーレコードは、付加された少なくとも一つ
のバイト(タグバイトrを有し、生じた長さが奇数であ
れば、パッドバイトも付加される。
トのレコードの半分を内蔵する可変長シフトレジスター
である。Rの長さのレコードにっていは、期間Tにおけ
るI ER8へのバイト入力は、期間T+R/2でその
出力に作られる。これは、該シフトレジスターの長さが
R/2でなければならないことを意味する。前述したよ
うに、ユーザーレコードは、付加された少なくとも一つ
のバイト(タグバイトrを有し、生じた長さが奇数であ
れば、パッドバイトも付加される。
第5図に示されている回路において、各シフトレジスタ
ーは、比較器論理への安定なインターフェースを提供す
るラッチと組み合わせて記憶回路56のRAM部を使用
することによって実現される。第3図の第1シストレジ
スターI ER8Oは、RAM部7部上4み書き回路7
6とによって実現されており、この回路76は、LL出
カライン71に接続された書込み入力と、出力ラッチ回
路78を通じて次の部41のUL入カライン69′に接
続された読み出し出力とを有する。出力ラッチ回路78
は、該シフトレジスターの余分の行を形成し、キーバイ
トの比較のために安定した状態を保証する。この余分の
行のためのラッチと、少なくとも一つのRAM行とがデ
ータ経路中になければならないので、該シフトレジスタ
ーの最小サイズは2行である。これにより、リバウンド
分類装置のための最小レコード長さが4バイトに設定さ
れる。
ーは、比較器論理への安定なインターフェースを提供す
るラッチと組み合わせて記憶回路56のRAM部を使用
することによって実現される。第3図の第1シストレジ
スターI ER8Oは、RAM部7部上4み書き回路7
6とによって実現されており、この回路76は、LL出
カライン71に接続された書込み入力と、出力ラッチ回
路78を通じて次の部41のUL入カライン69′に接
続された読み出し出力とを有する。出力ラッチ回路78
は、該シフトレジスターの余分の行を形成し、キーバイ
トの比較のために安定した状態を保証する。この余分の
行のためのラッチと、少なくとも一つのRAM行とがデ
ータ経路中になければならないので、該シフトレジスタ
ーの最小サイズは2行である。これにより、リバウンド
分類装置のための最小レコード長さが4バイトに設定さ
れる。
RAMは、最大レコードサイズの半分からIを引いた数
に等しい個数の行と、処理要素の個数の2倍の8倍に等
しい個数のコラムとを有する。現行の実施例では、処理
要素の個数は15であり、各行は2X15X8、即ち、
240ビット幅となる。最大レコードサイズは40であ
るので、(40/2)−1、即ち、19個の行がある。
に等しい個数の行と、処理要素の個数の2倍の8倍に等
しい個数のコラムとを有する。現行の実施例では、処理
要素の個数は15であり、各行は2X15X8、即ち、
240ビット幅となる。最大レコードサイズは40であ
るので、(40/2)−1、即ち、19個の行がある。
これで、全体としてのRAMサイズは4560ビツトと
なる。
なる。
RAM部7部上4読み書き回路76によってシフトレジ
スターIER3Oか構成されているのと同様に、第3図
のシフトレジスターtER8−1はRAM部8部上0み
書き回路82とによって構成されており、この回路82
は、部41のUR出カラインに接続された書込み入力と
、部40の処理要素のラインLRライン70に接続され
た出力ラッチ回路84を通じて接続された読み出し回路
とを有する。出力ラッチ回路84は、ラッチ回路78と
同様に、シフトレジスターの余分の行を形成する。
スターIER3Oか構成されているのと同様に、第3図
のシフトレジスターtER8−1はRAM部8部上0み
書き回路82とによって構成されており、この回路82
は、部41のUR出カラインに接続された書込み入力と
、部40の処理要素のラインLRライン70に接続され
た出力ラッチ回路84を通じて接続された読み出し回路
とを有する。出力ラッチ回路84は、ラッチ回路78と
同様に、シフトレジスターの余分の行を形成する。
第5図に示されている部41及び54の処理要素及びシ
フトレジスターは、部40のそれらと実質的に同一であ
り、対応する要素はダッシュ記号及び二重ダッシュ記号
で指示されている。部41は例外であり、タグ先読み回
路100を含むものとして示されており、第13図ない
し第17図との関連で後述する様にして処理の中断を回
避する。
フトレジスターは、部40のそれらと実質的に同一であ
り、対応する要素はダッシュ記号及び二重ダッシュ記号
で指示されている。部41は例外であり、タグ先読み回
路100を含むものとして示されており、第13図ない
し第17図との関連で後述する様にして処理の中断を回
避する。
分類装置18のRAM部7部上480及びその他の部4
1−54の行イネーブルはRAMインデックス回路から
駆動され、後述するように、形の異なる二つの回路58
及び58′が第7図及び第8図に示されている。
1−54の行イネーブルはRAMインデックス回路から
駆動され、後述するように、形の異なる二つの回路58
及び58′が第7図及び第8図に示されている。
分類装置18の部41−54は、境界指示を格納するよ
うに構成された要素を含むパイプライン制御回路60に
接続されており、この指示は、分類装置18におけるコ
ードのシフトと同期して一つの要素から他の要素ヘシフ
トされる。該要素のうちの成るものは、処理要素の制御
回路にFORCEV信号を加えて、成る状態の際に処理
要素に垂直方向にのみシフトを行わせて−グループのレ
コードの他のグループのレコードとの混合を回避する。
うに構成された要素を含むパイプライン制御回路60に
接続されており、この指示は、分類装置18におけるコ
ードのシフトと同期して一つの要素から他の要素ヘシフ
トされる。該要素のうちの成るものは、処理要素の制御
回路にFORCEV信号を加えて、成る状態の際に処理
要素に垂直方向にのみシフトを行わせて−グループのレ
コードの他のグループのレコードとの混合を回避する。
FORCEV信号を部40.41及び54に加えるパイ
プライン要素は第5図において参照数字91.92及び
93で示されており、該要素も境界条件信号をシフトさ
せる。追加のパイプライン要素は境界条件信号のシフト
のためだけに使われるが、部54.41及び40につい
てのパイプライン要素はそれぞれ参照数字94.95及
び96で指示されている。次に、パイプライン要素の動
作について、第11図との関連で詳しく説明する。
プライン要素は第5図において参照数字91.92及び
93で示されており、該要素も境界条件信号をシフトさ
せる。追加のパイプライン要素は境界条件信号のシフト
のためだけに使われるが、部54.41及び40につい
てのパイプライン要素はそれぞれ参照数字94.95及
び96で指示されている。次に、パイプライン要素の動
作について、第11図との関連で詳しく説明する。
処理要素制御論理(第6図)
第6図は、部40の制御回路67の論理回路を示し、同
様の論理回路が制御回路67′及び67′と分類装置1
8の他の部の制御回路とに包含されている。前記のFO
RCEV信号は、ライン101を通じてORゲート10
2の一入力に加えられ、このゲートは出力をNEW
PASS Vライン103に出力する。ORゲート1
02の第2入力はマルチプレクサ104に接続されてお
り、このマルチプレクサは、ラッチ106の出力に接続
されたライン105上のDECIDING信号によって
制御される。ラッチ106は、ORゲート108を通じ
て、ライン109上のE10REC信号から、又は3入
力を有するANDゲート11Oの出力から加えられる信
号から、制御される。
様の論理回路が制御回路67′及び67′と分類装置1
8の他の部の制御回路とに包含されている。前記のFO
RCEV信号は、ライン101を通じてORゲート10
2の一入力に加えられ、このゲートは出力をNEW
PASS Vライン103に出力する。ORゲート1
02の第2入力はマルチプレクサ104に接続されてお
り、このマルチプレクサは、ラッチ106の出力に接続
されたライン105上のDECIDING信号によって
制御される。ラッチ106は、ORゲート108を通じ
て、ライン109上のE10REC信号から、又は3入
力を有するANDゲート11Oの出力から加えられる信
号から、制御される。
ANDゲート110の一入力はDBCID INGライ
ン105に接続されている。第2入力はライン+11を
通じて比較回路689の出力に接続されており、ここで
、上京側入力69及び下右側入カフ0の信号が等しいと
きにUL=LR信号が生成される。該ANDゲートの第
3入力はr−E10TAGJライン112に接続されて
いる。
ン105に接続されている。第2入力はライン+11を
通じて比較回路689の出力に接続されており、ここで
、上京側入力69及び下右側入カフ0の信号が等しいと
きにUL=LR信号が生成される。該ANDゲートの第
3入力はr−E10TAGJライン112に接続されて
いる。
マルチプレクサ104の一入力はPASS Vライン
113に接続されており、このラインはラッチ114の
出力に接続され、このラッチにライン103上(7)N
EW PASS V信号が加えられる。マルチプレ
クサ104の第2入力はORゲート116の出力に接続
されており、このゲートの一入力はUL=LRライン1
11に接続され、第2入力はマルチプレクサ118の出
力に接続されている。マルチプレクサ118の一入力は
ライン119を通じて、比較器68からのUL>LR信
号ラインに接続されている。
113に接続されており、このラインはラッチ114の
出力に接続され、このラッチにライン103上(7)N
EW PASS V信号が加えられる。マルチプレ
クサ104の第2入力はORゲート116の出力に接続
されており、このゲートの一入力はUL=LRライン1
11に接続され、第2入力はマルチプレクサ118の出
力に接続されている。マルチプレクサ118の一入力は
ライン119を通じて、比較器68からのUL>LR信
号ラインに接続されている。
第2入力は、ライン120で比較回路68から加えられ
るUL/LR信号に接続されている。マルチプレクサ1
18はORゲート122の出力から制御され、このゲー
トは接続された入力ライン123及び124を有し、こ
れにASCENDING信号及びE10TAG信号が加
えられる。第6図の制御論理の動作は、PE要素が行う
動作に関する以上の説明から明らかであろう。
るUL/LR信号に接続されている。マルチプレクサ1
18はORゲート122の出力から制御され、このゲー
トは接続された入力ライン123及び124を有し、こ
れにASCENDING信号及びE10TAG信号が加
えられる。第6図の制御論理の動作は、PE要素が行う
動作に関する以上の説明から明らかであろう。
前記した様に、RAM部74及び84及び分類装置18
の他の部41〜54の行イネーブルはRAMインデック
ス回路から駆動されるが、形の異なる二つの回路58及
び58′が第7図及び第8図に示されている。
の他の部41〜54の行イネーブルはRAMインデック
ス回路から駆動されるが、形の異なる二つの回路58及
び58′が第7図及び第8図に示されている。
RAMインデックス回路(第7図)
第7図のRAMインデックス回路58は、単一のデコー
ダ131及びカウンタ132から成る。
ダ131及びカウンタ132から成る。
該カウンタはカウント入力133を通じてU/2のカウ
ントを装填され、各カウントで装填された後、lまでカ
ウントダウンし、その後、動作が反復される。カウンタ
132の出力は、デコーダ131及び多芯出力ライン1
34を通じて部40のRAM部74及び84と、他の部
41−54の対応するRAM部とに送られる。デコーダ
131の出力は、次の行に進む前に、RAM行イネーブ
ルを、最初は読み出しに、次に書込みに、駆動する。始
動時及びカウンタが1に達した後の初期値(U/ 2
)は、ユーザーの指定したレコードサイズの低位ビット
を除く全てのビットに由来する(2で割る)。ユーザー
レコードには少なくともlバイト(タグバイト)が付加
されており、生じた長さが若し奇数であれば、パッドバ
イトも付加されることを想起しなければならない。これ
は、若しユーザーレコードサイズがUであれば、U/2
= (R/2)−1であることを意味する。
ントを装填され、各カウントで装填された後、lまでカ
ウントダウンし、その後、動作が反復される。カウンタ
132の出力は、デコーダ131及び多芯出力ライン1
34を通じて部40のRAM部74及び84と、他の部
41−54の対応するRAM部とに送られる。デコーダ
131の出力は、次の行に進む前に、RAM行イネーブ
ルを、最初は読み出しに、次に書込みに、駆動する。始
動時及びカウンタが1に達した後の初期値(U/ 2
)は、ユーザーの指定したレコードサイズの低位ビット
を除く全てのビットに由来する(2で割る)。ユーザー
レコードには少なくともlバイト(タグバイト)が付加
されており、生じた長さが若し奇数であれば、パッドバ
イトも付加されることを想起しなければならない。これ
は、若しユーザーレコードサイズがUであれば、U/2
= (R/2)−1であることを意味する。
代替のRAMインデックス回路(第8図)第8図のRA
Mインデックス回路58′は、追加の論理を犠牲にして
、アドレス指定論理の最短サイクル時間を短縮する。回
路58′はlビット可変長シフトレジスター136から
記憶回路56のRAM行イネーブルを駆動するが、この
シフトレジスターは、半レコードの最大長に対応する個
数のステー之を有し、出力は多芯ライン134′を通じ
て記憶回路56の行イネーブルに接続されている。シフ
トレジスター136のステージはリング形に構成されて
いる。該シフトレジスターの長さは、多芯ライン133
′を通じてデコーダ138に加えられる初期制御データ
の使用により、レコード長の半分から1を引いた長さと
なるように構成され、この制御データは、上位コンピュ
ータから供給された制御データからレコード長が決定さ
れた後に使用される。単一のビットが該シフトレジスタ
ーリングを循環して、次の行へ進む前に、最初に読み出
しのために、次に書込みのために、行イネーブルを提供
する。
Mインデックス回路58′は、追加の論理を犠牲にして
、アドレス指定論理の最短サイクル時間を短縮する。回
路58′はlビット可変長シフトレジスター136から
記憶回路56のRAM行イネーブルを駆動するが、この
シフトレジスターは、半レコードの最大長に対応する個
数のステー之を有し、出力は多芯ライン134′を通じ
て記憶回路56の行イネーブルに接続されている。シフ
トレジスター136のステージはリング形に構成されて
いる。該シフトレジスターの長さは、多芯ライン133
′を通じてデコーダ138に加えられる初期制御データ
の使用により、レコード長の半分から1を引いた長さと
なるように構成され、この制御データは、上位コンピュ
ータから供給された制御データからレコード長が決定さ
れた後に使用される。単一のビットが該シフトレジスタ
ーリングを循環して、次の行へ進む前に、最初に読み出
しのために、次に書込みのために、行イネーブルを提供
する。
リングとしてのシフトレジスター136の動作を達成す
るために、デコーダ138の入力はユーザーレコード長
の低位ビットを除く全てのビットであり、これは分類装
置18へのレコード長入力の半分からlを引いた値であ
る。デコーダの出力はOが該デコーダに入力されるとき
に表明されるデコーダ出力に該シフトレジスターの出口
端部が接続される様に、該シフトレジスターに接続され
ている。該シフトレジスターの次のビット(ビット0内
にシフトするもの)は、1が該デコーダに入力されると
きに表明されるデコーダ出力に接続されている、等々で
ある。
るために、デコーダ138の入力はユーザーレコード長
の低位ビットを除く全てのビットであり、これは分類装
置18へのレコード長入力の半分からlを引いた値であ
る。デコーダの出力はOが該デコーダに入力されるとき
に表明されるデコーダ出力に該シフトレジスターの出口
端部が接続される様に、該シフトレジスターに接続され
ている。該シフトレジスターの次のビット(ビット0内
にシフトするもの)は、1が該デコーダに入力されると
きに表明されるデコーダ出力に接続されている、等々で
ある。
よって、デコーダ138の出力は単一のビットを該シフ
トレジスターに装填し、これはNシフト後に該シフトレ
ジスターの外にシフトするが、ここでNはレコード長の
半分から1を引いて得られる数である。これは初期化時
と、該ビットがシフトレジスターから出る時とに起こり
、斯くしてリングを形成する。シフトとシフトとの間で
、使用可能にされた行は最初に読み出され、次に書き込
まれる。
トレジスターに装填し、これはNシフト後に該シフトレ
ジスターの外にシフトするが、ここでNはレコード長の
半分から1を引いて得られる数である。これは初期化時
と、該ビットがシフトレジスターから出る時とに起こり
、斯くしてリングを形成する。シフトとシフトとの間で
、使用可能にされた行は最初に読み出され、次に書き込
まれる。
レコード制御回路82 (第9図及び第10図)第9図
及び第10図は、レコード制御回路62の諸部分を示す
。第9図に示されている部分62Aは、主としてレコー
ドタイミングに使用され、第1O図に示されている部分
62Bは主としてタグタイミングに使用される。これら
の部分は、処理要素及びパイプライン制御のためのタイ
ミング情報を作る。第9図及び第10図のレコード制御
回路は、初期化時に以下の情報を受け取る:(a)
ユーザーレコードのサイズの半分、U/2゜これは、レ
コードサイズが奇数ならばOに向かって先端から切られ
、第9図のライン141に加えられる。
及び第10図は、レコード制御回路62の諸部分を示す
。第9図に示されている部分62Aは、主としてレコー
ドタイミングに使用され、第1O図に示されている部分
62Bは主としてタグタイミングに使用される。これら
の部分は、処理要素及びパイプライン制御のためのタイ
ミング情報を作る。第9図及び第10図のレコード制御
回路は、初期化時に以下の情報を受け取る:(a)
ユーザーレコードのサイズの半分、U/2゜これは、レ
コードサイズが奇数ならばOに向かって先端から切られ
、第9図のライン141に加えられる。
(b) キーのサイズ。これは第1O図のライン14
2に加えられる。
2に加えられる。
第9図及び第1O図のレコード制御回路は、次の様に、
構成要素を包含すると共に内部状態条件を維持する: (a) 第9図のレコードバイトカウンタRCTR1
43゜これはU/2に初期化され、期間毎に、カウンタ
値から得られるロード/デクリメント信号によりデクリ
メントされる(初期化時又はRLTR=1の時にロード
、その他の時はデクリメント)。ゼロを通過してデクリ
メントされると、カウンタ143はU/2にリセットさ
れる。
構成要素を包含すると共に内部状態条件を維持する: (a) 第9図のレコードバイトカウンタRCTR1
43゜これはU/2に初期化され、期間毎に、カウンタ
値から得られるロード/デクリメント信号によりデクリ
メントされる(初期化時又はRLTR=1の時にロード
、その他の時はデクリメント)。ゼロを通過してデクリ
メントされると、カウンタ143はU/2にリセットさ
れる。
(b) 第1O図のタグバイトカウンタT CT R
146゜これは、rNrTライン149で加えられる信
号により制御されるマルチプレクサ148を通じて加え
られる信号を通してKに初期化される。
146゜これは、rNrTライン149で加えられる信
号により制御されるマルチプレクサ148を通じて加え
られる信号を通してKに初期化される。
カウンタ146は、期間毎にラインエ44上の信号によ
りデクリメントされる。デクリメントされた時にカウン
タ146が0であれば、該カウンタは、マルチプレクサ
148を通じてライン141から加えられる信号によっ
てU/2にセットされる。
りデクリメントされる。デクリメントされた時にカウン
タ146が0であれば、該カウンタは、マルチプレクサ
148を通じてライン141から加えられる信号によっ
てU/2にセットされる。
ラッチ回路152の出力で第9図のライン150に生成
されるプール値RCNT0この回路152の入力は排他
的OR回路153の出力に接続されており、この回路1
53の一入力はカウンタ143のRCTR=O出力に接
続され、第2入力はライン150に接続されている。値
RCNTは、各PEにおいてどの半レコードが進行中で
あるかを示す。これは、レコードの第1の半分が偶数P
Eに入ろうとしており、レコードの第2の半分が奇数P
Eに入ろうとしていることを示す偽に初期化される。こ
れは、レコードバイトカウンタがゼロを通過してデクリ
メントされるときに変化する−0それが偽であれば真と
なり、真であれば偽となる。
されるプール値RCNT0この回路152の入力は排他
的OR回路153の出力に接続されており、この回路1
53の一入力はカウンタ143のRCTR=O出力に接
続され、第2入力はライン150に接続されている。値
RCNTは、各PEにおいてどの半レコードが進行中で
あるかを示す。これは、レコードの第1の半分が偶数P
Eに入ろうとしており、レコードの第2の半分が奇数P
Eに入ろうとしていることを示す偽に初期化される。こ
れは、レコードバイトカウンタがゼロを通過してデクリ
メントされるときに変化する−0それが偽であれば真と
なり、真であれば偽となる。
次にタグバイトに会うのが奇数PEであるか偶数PEで
あるかを示しプール値TCNT、この値は第10図のラ
イン156上でラッチ回路157の出力で生成される。
あるかを示しプール値TCNT、この値は第10図のラ
イン156上でラッチ回路157の出力で生成される。
この回路157は排他的OR回路158の出力に接続さ
れ、該排他的OR回路の一入力はカウンタ146の出力
のTCTR=Oラインに接続され、第2入力はライン1
56に接続されている。
れ、該排他的OR回路の一入力はカウンタ146の出力
のTCTR=Oラインに接続され、第2入力はライン1
56に接続されている。
内部状態情報に基づいて、該レコード制御は以下の出力
を生成する: (a) レコードの最後のバイトが偶数処理要素に与
えられることを示すプール値EREC0この値は、AN
D回路162の出力のラッチ回路161に接続されたラ
イン160上に生成される。こ回路162の入力はRC
NTライン150とRCTRカウンタ143のRCTR
=0出力とに接続されている。
を生成する: (a) レコードの最後のバイトが偶数処理要素に与
えられることを示すプール値EREC0この値は、AN
D回路162の出力のラッチ回路161に接続されたラ
イン160上に生成される。こ回路162の入力はRC
NTライン150とRCTRカウンタ143のRCTR
=0出力とに接続されている。
(b) レコードの最後のバイトが奇数処理要素に与
えられることを示すプール値0REC0この値は、AN
D回路166の出力のラッチ回路165に接続されたラ
イン184上に生成され、該AND回路の入力はカウン
タ143のRCTR=0出力及び−RCNTライン16
7に接続されており、このライン167はインバータ1
68を通じてRCNTライン150に接続されている。
えられることを示すプール値0REC0この値は、AN
D回路166の出力のラッチ回路165に接続されたラ
イン184上に生成され、該AND回路の入力はカウン
タ143のRCTR=0出力及び−RCNTライン16
7に接続されており、このライン167はインバータ1
68を通じてRCNTライン150に接続されている。
(C) レコードの第1バイトが偶数処理要素又は奇
数処理要素に与えられることを示すプール値PCADV
、これはカウンタ143のRCTR=O出力に接続され
たラッチ回路172の出力のライン170上に生成され
る。
数処理要素に与えられることを示すプール値PCADV
、これはカウンタ143のRCTR=O出力に接続され
たラッチ回路172の出力のライン170上に生成され
る。
(d) レコードキーに続く第1のバイト、即ち、「
タグ」バイトが偶数処理要素に与えられることを示すプ
ール値ETAG、これは、入力がTCNTライン156
とTCTRカウンタ146のTCTR=O出力とに接続
されているAND回路176の出力のラッチ回路175
に接続されているライン174上に生成される。
タグ」バイトが偶数処理要素に与えられることを示すプ
ール値ETAG、これは、入力がTCNTライン156
とTCTRカウンタ146のTCTR=O出力とに接続
されているAND回路176の出力のラッチ回路175
に接続されているライン174上に生成される。
(e) レコードキーに続く第1のバイトが奇数処理
要素に与えられることを示すプール値0TAG0これは
、AND回路180の出力のラッチ回路179に接続さ
れたライン178上に生成される。該AND回路の入力
はカウンタ146のTCTR=0CTR−TCNTライ
ン181とに接続されており、このライン181はイン
バータ182を通じてTCNTライン150に接続され
ている。
要素に与えられることを示すプール値0TAG0これは
、AND回路180の出力のラッチ回路179に接続さ
れたライン178上に生成される。該AND回路の入力
はカウンタ146のTCTR=0CTR−TCNTライ
ン181とに接続されており、このライン181はイン
バータ182を通じてTCNTライン150に接続され
ている。
パイプライン制御回路60(第11図)非常に重要な特
徴は、リバウンド分類装置に装填し、且つこれを空にす
ることを可能にすると共に別々のグループのレコードの
混合を防止するパイプライン制御回路60に関する。
徴は、リバウンド分類装置に装填し、且つこれを空にす
ることを可能にすると共に別々のグループのレコードの
混合を防止するパイプライン制御回路60に関する。
回路60のパイプライン要素91−94及び96の回路
は第it図に示されている。パイプライン要素9Iは、
分類装置18の第1部40の処理要素と連携しており、
入力ナイン186を有し、これに、該分類装置への新し
いレコードの入力と同期する関係で信号が加えられる。
は第it図に示されている。パイプライン要素9Iは、
分類装置18の第1部40の処理要素と連携しており、
入力ナイン186を有し、これに、該分類装置への新し
いレコードの入力と同期する関係で信号が加えられる。
入力ライン186は、ラッチ189に出力接続されてい
るマルチプレクサ188の一入力に接続されており、該
ラッチの出力は、マルチプレクサ188の第2入力に接
続されているライン190に接続されている。
るマルチプレクサ188の一入力に接続されており、該
ラッチの出力は、マルチプレクサ188の第2入力に接
続されているライン190に接続されている。
マルチプレクサ194の出力に接続されているラッチ1
93の出力のライン192上にFORCEVO信号が生
成され、マルチプレクサ194の一入力はライン192
に接続され、その第2入力はORゲート196の出力に
接続されている。ORゲート196の入力は、ライン1
86及び190に、更に次のステージのFORCEVl
ライン192′に接続されている。
93の出力のライン192上にFORCEVO信号が生
成され、マルチプレクサ194の一入力はライン192
に接続され、その第2入力はORゲート196の出力に
接続されている。ORゲート196の入力は、ライン1
86及び190に、更に次のステージのFORCEVl
ライン192′に接続されている。
マルチプレクサ188及び194は、第9図のレコード
制御回路162Aからライン170を通じて加えられる
信号PCADVにより制御される。
制御回路162Aからライン170を通じて加えられる
信号PCADVにより制御される。
該分類装置の処理要素と連携する他の全てのパイプライ
ン要素の回路は、要素91のそれと実質的に同一である
。ライン186がrBNDm−IJから来ることと、9
3にはrFORCEVm+14入力が無いこととを除い
て。
ン要素の回路は、要素91のそれと実質的に同一である
。ライン186がrBNDm−IJから来ることと、9
3にはrFORCEVm+14入力が無いこととを除い
て。
パイプライン要素94及び96の回路も第11図に示さ
れている。要素94は、要素91のマルチプレクサ18
8及びラッチ189に対応するマルチプレクサ198及
びラッチ199を有する。
れている。要素94は、要素91のマルチプレクサ18
8及びラッチ189に対応するマルチプレクサ198及
びラッチ199を有する。
同様に、要素96は、マルチプレクサ198′及びラッ
チ199′を有し、最後の出力信号NEWSTREAM
OUTはライン200上に生成される。
チ199′を有し、最後の出力信号NEWSTREAM
OUTはライン200上に生成される。
作動時には、パイプライン制御回路60は各期間中に以
下の情報を受け取る (a) レコードの第1バイトが偶数処理要素又は奇
数処理要素に与えられることを示す、回路部分62A(
第9図)からのプール値PCADV0(b) ライン
186上に加えられるプール値rNEWsTRBAM
J。これは、リバウンド分類装置に与えられる現在のバ
イトが、新しいグループのレコードの分類を、既にリバ
ウンド分類装置内にあるレコードとは別に開始させるこ
とを示す。
下の情報を受け取る (a) レコードの第1バイトが偶数処理要素又は奇
数処理要素に与えられることを示す、回路部分62A(
第9図)からのプール値PCADV0(b) ライン
186上に加えられるプール値rNEWsTRBAM
J。これは、リバウンド分類装置に与えられる現在のバ
イトが、新しいグループのレコードの分類を、既にリバ
ウンド分類装置内にあるレコードとは別に開始させるこ
とを示す。
パイプライン制御回路60は以下の内部状態情報を維持
する: (a) 要素91のライン190及び他の要素の該ラ
インに対応するラインに生成される各PEについてのプ
ール値rBNDOJないしrBNDN−2」。この値は
、レコードの第1バイトが偶数処理要素又は奇数処理要
素に最後に与えられた時以来、レコードグループ同士の
間の「境界」がリバウンド分類装置を「下って1来たこ
とを示す。
する: (a) 要素91のライン190及び他の要素の該ラ
インに対応するラインに生成される各PEについてのプ
ール値rBNDOJないしrBNDN−2」。この値は
、レコードの第1バイトが偶数処理要素又は奇数処理要
素に最後に与えられた時以来、レコードグループ同士の
間の「境界」がリバウンド分類装置を「下って1来たこ
とを示す。
(b) プール値rBNDN−14は、レコードの第
1バイトが偶数処理要素又は奇数処理要素に最後に与え
られたとき以来、レコードグループ間の境界がIER8
FN−2JからIER8fN+N−3,Jの中に移動し
たことを示す。
1バイトが偶数処理要素又は奇数処理要素に最後に与え
られたとき以来、レコードグループ間の境界がIER8
FN−2JからIER8fN+N−3,Jの中に移動し
たことを示す。
(C) 処理要素FPEN−2jないしrPE IJ
についてのプール値。これは、第11図に示されている
94ないし96に続く要素により生成される。この各々
の値は、レコードの第1バイI・が最後に偶数処理要素
又は奇数処理要素に与えられたとき以来、レコードグル
ープ間の「境界」がリバウンド分類装置を「昇って」そ
のPEまで戻ってきたことを示す。
についてのプール値。これは、第11図に示されている
94ないし96に続く要素により生成される。この各々
の値は、レコードの第1バイI・が最後に偶数処理要素
又は奇数処理要素に与えられたとき以来、レコードグル
ープ間の「境界」がリバウンド分類装置を「昇って」そ
のPEまで戻ってきたことを示す。
(d) その処理要素がr垂直に通過させる様にされ
ている−ことを示す、各処理要素についてのプール値(
第11図のrFORcEVOJないしrFORcEVN
−2J )。
ている−ことを示す、各処理要素についてのプール値(
第11図のrFORcEVOJないしrFORcEVN
−2J )。
受け取った情報と、現在の内部状態とに基づいて、パイ
プライン制御は各期間に以下の情報を作る: (a) その処理要素が「垂直に押し進めるJべきこ
とを示す、各処理要素についてのプール値(fFORc
EVOJないしfFORcEVN−2J)。
プライン制御は各期間に以下の情報を作る: (a) その処理要素が「垂直に押し進めるJべきこ
とを示す、各処理要素についてのプール値(fFORc
EVOJないしfFORcEVN−2J)。
(b) リバウンド分類装置が出力する現在のレコー
ドバイトが、分類されるレコードの新しいグループの第
1バイトであることを示す、ライン200上のプール値
r NEWSTRBAMOUTJ。これは、異なるグル
ープからのレコードの比較を防止するために分類順序検
査装置により使用される。
ドバイトが、分類されるレコードの新しいグループの第
1バイトであることを示す、ライン200上のプール値
r NEWSTRBAMOUTJ。これは、異なるグル
ープからのレコードの比較を防止するために分類順序検
査装置により使用される。
パイプライン制御は、レコードの第1バイトが偶数処理
要素又は奇数処理要素に与えられる毎に、その内部情報
を更新する( fPcADVJ 、半レコード毎に)。
要素又は奇数処理要素に与えられる毎に、その内部情報
を更新する( fPcADVJ 、半レコード毎に)。
f境界J値は、その頂部からレコードと並列にリバウン
ド分類装置に入り、左側を下り、底を横断し、右側を上
る。
ド分類装置に入り、左側を下り、底を横断し、右側を上
る。
PEfNjについての新しい「垂直に押し進める」値は
、下記のいずれかが真であればセットされる; r境界」がPErN−IJについてセットされているか
、又は、PEOについて「境界」がIBR3に入ろうと
している( rNEWsTREAMIN j )。
、下記のいずれかが真であればセットされる; r境界」がPErN−IJについてセットされているか
、又は、PEOについて「境界」がIBR3に入ろうと
している( rNEWsTREAMIN j )。
「境界」がPE rN」についてセットされている。
「垂直に押し進める1がPEfN+1jについてセット
されている。これは最後のPEには適用されない。
されている。これは最後のPEには適用されない。
この操作は、境界に位置する又は境界より上の全てのP
Eを垂直に押し進める。これは、境界の一方の側のレコ
ードと、別の側のレコードとの混合を防止するが、境界
の同じ側のレコードの分類を許す。
Eを垂直に押し進める。これは、境界の一方の側のレコ
ードと、別の側のレコードとの混合を防止するが、境界
の同じ側のレコードの分類を許す。
分類順序づけ装置34(第1図)
先に指摘したように、内部境界の無い分類装置18はr
魔法の分類箱1と見なすことの出来るものであり、レコ
ードは数箱に押し込まれ、箱の中の全てのレコード(押
し込まれたレコードを含む)のうちの最小のレコードが
飛び出してくる。
魔法の分類箱1と見なすことの出来るものであり、レコ
ードは数箱に押し込まれ、箱の中の全てのレコード(押
し込まれたレコードを含む)のうちの最小のレコードが
飛び出してくる。
加速装置10の分類及び併合の操作は、分類装置18等
のN−1要素リバウンド分類装置を使って、データの分
類済みのN個のストリングを併合して一つの大きな分類
済みストリングにするという問題を認め、分析すること
によって良く理解することが出来るものである。以下の
アルゴリズムを考察する。
のN−1要素リバウンド分類装置を使って、データの分
類済みのN個のストリングを併合して一つの大きな分類
済みストリングにするという問題を認め、分析すること
によって良く理解することが出来るものである。以下の
アルゴリズムを考察する。
l)分類装置18内に境界を設定して、第11図との関
連で上記した新しい分類操作を開始する。
連で上記した新しい分類操作を開始する。
2)第1のN−1ストリングの第1 (最小)レコード
を分類装置18に押し込む。
を分類装置18に押し込む。
3) N番目のストリングの第1 (最小)レコード
を分類装置18に押し込む。全ての第1レコードのうち
の最小のレコードが飛び出す;これが、併合されたスト
リングのうちの第1 (最小)レコードである。
を分類装置18に押し込む。全ての第1レコードのうち
の最小のレコードが飛び出す;これが、併合されたスト
リングのうちの第1 (最小)レコードである。
4)飛び出したレコードの出所となったストリングを識
別し、そのストリングから次のレコードを分類装置18
に押し込む。飛び出すレコードは、入力されたストリン
グのいずれかに残留している最小のレコードであり、従
って併合/分類済みストリングの次のレコードである。
別し、そのストリングから次のレコードを分類装置18
に押し込む。飛び出すレコードは、入力されたストリン
グのいずれかに残留している最小のレコードであり、従
って併合/分類済みストリングの次のレコードである。
5)前記ステップを繰り返す。いずれかの入力されたス
トリングの最後のレコードが分類装置18から飛び出す
とき、人工的レコード(「実際の」レコードのいずれよ
りも大きい)を、そのストリングの1次の」レコードと
して押し込む。第1の人工的レコードが分類装置18か
ら飛び出すとき、より小さい(即ち、「実際の」)レコ
ードは分類装置18内に残っていないので、併合は終了
する。
トリングの最後のレコードが分類装置18から飛び出す
とき、人工的レコード(「実際の」レコードのいずれよ
りも大きい)を、そのストリングの1次の」レコードと
して押し込む。第1の人工的レコードが分類装置18か
ら飛び出すとき、より小さい(即ち、「実際の」)レコ
ードは分類装置18内に残っていないので、併合は終了
する。
このアルゴリズムの下で動作した分類装置18の出力は
N個の入力ストリングの併合である;これは、以下の様
に記すことにより証明することが出来る。
N個の入力ストリングの併合である;これは、以下の様
に記すことにより証明することが出来る。
(a) 分類装置18から出力される各レコードは、
分類装置内に現在ある全てのレコードのうちの最小のレ
コー、ドである。
分類装置内に現在ある全てのレコードのうちの最小のレ
コー、ドである。
(b) 出力されるレコードは、同じ入力ストリング
、の次のレコードと置換され、これは、該入力ストリン
グが分類されるので該出力レコードより小さくはないの
で、該分類装置から出力される次のレコードは、該分類
装置から出力される現在のレコードより小さくはない;
即ち、分類装置から出力されるレコードは、分類された
順となっている。
、の次のレコードと置換され、これは、該入力ストリン
グが分類されるので該出力レコードより小さくはないの
で、該分類装置から出力される次のレコードは、該分類
装置から出力される現在のレコードより小さくはない;
即ち、分類装置から出力されるレコードは、分類された
順となっている。
(C) 全ての入力ストリングの全てのレコードが結
局は分類装置から出力される。
局は分類装置から出力される。
上記のアルゴリズムを使って併合を行うために、分類装
置内の与えられたレコードの出所がどのストリングであ
るかを知ることが望ましい。また、そのストリング内の
次のレコードを発見する方法と、そのストリングに残留
しているレコードがあるか否か判断する方法とを知るこ
とも望ましい。
置内の与えられたレコードの出所がどのストリングであ
るかを知ることが望ましい。また、そのストリング内の
次のレコードを発見する方法と、そのストリングに残留
しているレコードがあるか否か判断する方法とを知るこ
とも望ましい。
以下の節は、所望の情報を得て使用する好適な構成を示
す。人工的レコードの代わりに、本発明は全てのストリ
ングが空となり、NEWSTREAMINが表明される
まで、最低の番号の、空でないストリングを使用する。
す。人工的レコードの代わりに、本発明は全てのストリ
ングが空となり、NEWSTREAMINが表明される
まで、最低の番号の、空でないストリングを使用する。
タグ挿入及び除去(第1図及び第2図)図示の分類加速
装置は、入力部21のバイト挿入装置25を使って、各
レコードに、それが分類装置に送り込まれる際にタグバ
イトを挿入することにより、分類装置内の与えられたレ
コードの出所がどの入力ストリングであるかを監視し続
ける。
装置は、入力部21のバイト挿入装置25を使って、各
レコードに、それが分類装置に送り込まれる際にタグバ
イトを挿入することにより、分類装置内の与えられたレ
コードの出所がどの入力ストリングであるかを監視し続
ける。
第2図との関連で前述した様に、キーフィールドの最後
のバイトの直後で且つデータフィールドの第1バイトよ
り前の位置にタグバイトを挿入するのが好ましい。レコ
ードのタグバイトは、この併合操作のどの入力ストリン
グが該レコードを内蔵していたかを記述する指標を含む
。8ビツトタグバイトは、256個に及びストリングを
併合操作に入力する事を可能にする;実際、このバイト
の1ビツトを使って、後述する様に安定な分類操作を実
施し保証して、最大で128個のストリングを併合する
ことが出来る。図示の実施例は、分類装置内の処理要素
の数(15)によって、−時に併合出来るストリングが
16個に限定されていて、ストリング識別のために4ビ
ツトを必要とするだけである。
のバイトの直後で且つデータフィールドの第1バイトよ
り前の位置にタグバイトを挿入するのが好ましい。レコ
ードのタグバイトは、この併合操作のどの入力ストリン
グが該レコードを内蔵していたかを記述する指標を含む
。8ビツトタグバイトは、256個に及びストリングを
併合操作に入力する事を可能にする;実際、このバイト
の1ビツトを使って、後述する様に安定な分類操作を実
施し保証して、最大で128個のストリングを併合する
ことが出来る。図示の実施例は、分類装置内の処理要素
の数(15)によって、−時に併合出来るストリングが
16個に限定されていて、ストリング識別のために4ビ
ツトを必要とするだけである。
上位メモリーへの転送のため、或いは局所メモリー16
への一時的格納のために、完全に分類されたレコードの
ストリングが出力部22によって出力される出力操作に
おいて、出力部22のデータパッカー31は、入力部2
1によって先に挿入されてあったタグを、レコードから
、該レコード分類装置から出力される際に除去するので
、タグが記憶装置中のスペースを占めることはない。後
述するように、ユーザーは、最後の併合パスによってレ
コードがユーザーのバッファーに出力される時にタグを
レコード中に残しておくべきことを随意に指定すること
が出来る。
への一時的格納のために、完全に分類されたレコードの
ストリングが出力部22によって出力される出力操作に
おいて、出力部22のデータパッカー31は、入力部2
1によって先に挿入されてあったタグを、レコードから
、該レコード分類装置から出力される際に除去するので
、タグが記憶装置中のスペースを占めることはない。後
述するように、ユーザーは、最後の併合パスによってレ
コードがユーザーのバッファーに出力される時にタグを
レコード中に残しておくべきことを随意に指定すること
が出来る。
レコードが分類装置から出力されるとき、そのレコード
の出所である入力ストリングを判定するためにタグバイ
トが検査される。このストリング番号は分類順序づけ装
置34のストリング選択論理回路39に送り込まれ、分
類順序づけ装置34は、ROM38内のマイクロコード
により制御され、ストリング選択論理回路39の出力を
使用して、分類装置に入力される次のレコードのアドレ
スを決定する;そのレコードアドレスは、ストリング選
択論理回路39の生成したストリング番号と共に、入力
部22に与えられて次のレコードの読み出しを開始させ
る。
の出所である入力ストリングを判定するためにタグバイ
トが検査される。このストリング番号は分類順序づけ装
置34のストリング選択論理回路39に送り込まれ、分
類順序づけ装置34は、ROM38内のマイクロコード
により制御され、ストリング選択論理回路39の出力を
使用して、分類装置に入力される次のレコードのアドレ
スを決定する;そのレコードアドレスは、ストリング選
択論理回路39の生成したストリング番号と共に、入力
部22に与えられて次のレコードの読み出しを開始させ
る。
ストリング選択論理回路39(第12図)一般に、次の
入力レコードを提供するべく選択されるストリングは、
その指標が現在の出力レコードのタグ中にあったストリ
ングと同じである。
入力レコードを提供するべく選択されるストリングは、
その指標が現在の出力レコードのタグ中にあったストリ
ングと同じである。
例外は、将来のストリングが使い尽くされたときである
。上記のアルゴリズムで使用される、そのストリングか
らの次のレコードの代わりに人工的な大きなレコードを
使用する技術は、働きはするけれども、ぎこちなくて時
間を食う;使い尽くされていないストリングを採集して
、そのストリングからレコードを入力するのが遥かに効
率的(且つ同じく正確)であることが分かっている(分
類の安全性を守るために、今は、最低の、空でないスト
リングを選択しなければならない)。この操作は、スト
リング選択論理回路39により行われる。
。上記のアルゴリズムで使用される、そのストリングか
らの次のレコードの代わりに人工的な大きなレコードを
使用する技術は、働きはするけれども、ぎこちなくて時
間を食う;使い尽くされていないストリングを採集して
、そのストリングからレコードを入力するのが遥かに効
率的(且つ同じく正確)であることが分かっている(分
類の安全性を守るために、今は、最低の、空でないスト
リングを選択しなければならない)。この操作は、スト
リング選択論理回路39により行われる。
ストリング選択論理回路39は、各入力ストリングにつ
いて1ビツトを含む妥当なビットのファイルを使い、且
つ、これから説明する機能を実行する回路を使って作動
する。斯かる回路の一部が第12図に示されており、こ
れについては、第13図ないし第17図に示されている
タグ先読み論理の動作との関連で後述する。併合操作の
開始時に、入力ストリングのいずれもが使い尽くされて
いないことを示すために、妥当なビットのファイルが全
部ゼロにセットされる。指定されたストリングが使い尽
くされている(即ち、該ビットが1である)か否かを調
べるために、出力レコードからのタグは有効ビットのフ
ァイルを指す;そうでなければ、そのストリング番号は
分類順序づけ装置へ出力される。指定されたストリング
が使い尽くされていれば、使い尽くされていない最低番
号のストリングを発見するために優先順位符号化が有効
ビットのファイルに対して行われて、このストリングの
番号が分類順序づけ装置に送られる。
いて1ビツトを含む妥当なビットのファイルを使い、且
つ、これから説明する機能を実行する回路を使って作動
する。斯かる回路の一部が第12図に示されており、こ
れについては、第13図ないし第17図に示されている
タグ先読み論理の動作との関連で後述する。併合操作の
開始時に、入力ストリングのいずれもが使い尽くされて
いないことを示すために、妥当なビットのファイルが全
部ゼロにセットされる。指定されたストリングが使い尽
くされている(即ち、該ビットが1である)か否かを調
べるために、出力レコードからのタグは有効ビットのフ
ァイルを指す;そうでなければ、そのストリング番号は
分類順序づけ装置へ出力される。指定されたストリング
が使い尽くされていれば、使い尽くされていない最低番
号のストリングを発見するために優先順位符号化が有効
ビットのファイルに対して行われて、このストリングの
番号が分類順序づけ装置に送られる。
若し全ての入力ストリングが使い尽くされていれば、そ
のことを分類順序づけ装置に知らせるフラグがセットさ
れる。
のことを分類順序づけ装置に知らせるフラグがセットさ
れる。
分類順序づけ装置34は併合操作の現在の状態を維持す
るためにレジスターアレイ35にレジスターの二つのフ
ァイルを内蔵している;一つのファイルは各ストリング
についての次のレコードアドレスを内蔵し、他のファイ
ルは各ストリングの最後のレコードアドレスを内蔵する
。ストリング選択論理からストリング指標を得ると、分
類順序づけ装置はそのストリングについて次のレコード
アドレスを第【のファイルから取り出して、それを入力
部21に送る・これは、そのストリングについての次の
レコードアドレスを更新する。ストリング中の最後のレ
コードのアドレスが入力部21に送られたとき(次のレ
コードアドレスを第2レジスターフアイル中のそのスト
リングについての最後のレコードアドレスと比較するこ
とにより判定される)、分類順序づけ装置はストリング
選択論理のビットファイル中のそのストリングに対応す
る有効ビットをセットして、そのストリングが今使い尽
くされたことを示す。
るためにレジスターアレイ35にレジスターの二つのフ
ァイルを内蔵している;一つのファイルは各ストリング
についての次のレコードアドレスを内蔵し、他のファイ
ルは各ストリングの最後のレコードアドレスを内蔵する
。ストリング選択論理からストリング指標を得ると、分
類順序づけ装置はそのストリングについて次のレコード
アドレスを第【のファイルから取り出して、それを入力
部21に送る・これは、そのストリングについての次の
レコードアドレスを更新する。ストリング中の最後のレ
コードのアドレスが入力部21に送られたとき(次のレ
コードアドレスを第2レジスターフアイル中のそのスト
リングについての最後のレコードアドレスと比較するこ
とにより判定される)、分類順序づけ装置はストリング
選択論理のビットファイル中のそのストリングに対応す
る有効ビットをセットして、そのストリングが今使い尽
くされたことを示す。
ストリング選択論理回路39は、併合されるべきストリ
ングの数が16より少ないときにも使われる。前記のア
ルゴリズムは、ストリングの数が分類装置中の要素の数
よりl大きい時にだけ働く。
ングの数が16より少ないときにも使われる。前記のア
ルゴリズムは、ストリングの数が分類装置中の要素の数
よりl大きい時にだけ働く。
併合されるべきストリングがそれより少ないときには、
そのストリング数を正しい値とするために数個の「空白
Jストリング(レコードを全く含んでいない)を該併合
に付加しなければならない。
そのストリング数を正しい値とするために数個の「空白
Jストリング(レコードを全く含んでいない)を該併合
に付加しなければならない。
ストリング選択論理回路39は、「空白」ストリングの
一つからのレコードを分類装置に最初に装填しようとす
る試み(前記アルゴリズムの第1ステツプに記載した)
によって実際に「現実のJのストリングの一つからのレ
コードが装填されることとなることを保証するのに使わ
れる。これは、併合操作の開′始時にストリング選択論
理回路39においてr空白1ストリングの妥当なビット
をゼロの代わりに1に初期化することによって実行され
る。
一つからのレコードを分類装置に最初に装填しようとす
る試み(前記アルゴリズムの第1ステツプに記載した)
によって実際に「現実のJのストリングの一つからのレ
コードが装填されることとなることを保証するのに使わ
れる。これは、併合操作の開′始時にストリング選択論
理回路39においてr空白1ストリングの妥当なビット
をゼロの代わりに1に初期化することによって実行され
る。
タグ先読み及び付随の論理(第12図ないし第17図)
特殊化されたストリング選択論理及び高速分類順序づけ
装置でも、現在のレコードについてのタグの出力と次の
入力レコードのアドレスの入力プロセッサへの送付との
間に遅れがある。入力部21は、新しいレコードの始め
のバイトを、それらが分類装置に入力され得ることとな
る前に、取り出さなければならない。これが累積してレ
コードとレコードとの間に顕著な遅れが生じ、これに起
因して入力部2!は分類装置を機能停止させてデータ待
ちさせると共に併合プロセスを減速させる。
特殊化されたストリング選択論理及び高速分類順序づけ
装置でも、現在のレコードについてのタグの出力と次の
入力レコードのアドレスの入力プロセッサへの送付との
間に遅れがある。入力部21は、新しいレコードの始め
のバイトを、それらが分類装置に入力され得ることとな
る前に、取り出さなければならない。これが累積してレ
コードとレコードとの間に顕著な遅れが生じ、これに起
因して入力部2!は分類装置を機能停止させてデータ待
ちさせると共に併合プロセスを減速させる。
この遅れを無くするために、分類加速装置は、最小のレ
コードのタグを、それが実際に分類装置から出力される
前に判定するべくタグ先読み論理を実施する。
コードのタグを、それが実際に分類装置から出力される
前に判定するべくタグ先読み論理を実施する。
タグ先読み論理はストリング選択論理と関連して作用す
るが、ストリング選択論理は、第12図に示されていて
、分類装置18に加えられるべき次のレコードのタグに
ついての三つの可能な値の選択を行うものである。その
三つの値は、後述する様にして第17図の論理回路によ
りライン202上に生成されるrPEITAGJと、ラ
イン203に加えられる、入力レコードのタグ「ITA
G」と、ライン207(上記した)を通じて状況データ
が加えられる優先順位エンコーダ206によりライン2
04上に生成される、残っているタグを持った最低番号
のストリームのタグと、である。
るが、ストリング選択論理は、第12図に示されていて
、分類装置18に加えられるべき次のレコードのタグに
ついての三つの可能な値の選択を行うものである。その
三つの値は、後述する様にして第17図の論理回路によ
りライン202上に生成されるrPEITAGJと、ラ
イン203に加えられる、入力レコードのタグ「ITA
G」と、ライン207(上記した)を通じて状況データ
が加えられる優先順位エンコーダ206によりライン2
04上に生成される、残っているタグを持った最低番号
のストリームのタグと、である。
マルチプレクサ208は、ライン209に加えられるP
VO制御信号により操作されて、ITAG信号及びPE
ITAG信号からWINTAG信号をライン21上に生
成する。PVOが真であればPEITAGが選択され、
そうでなければITAGが選択される。ライン210上
のWINTAGストリームの状況がストリーム状況参照
部212により検査され、この参照部はライン213上
に出力信号を生成し、この信号は、WINTAG信号及
びALTTAG信号が加えられるマルチプレクサ214
に加えられる。WINTAGストリームが空でなければ
、WINTAGは、マルチプレクサ2!4の出力ライン
216上に生成されるNEXTTAGとして使われる。
VO制御信号により操作されて、ITAG信号及びPE
ITAG信号からWINTAG信号をライン21上に生
成する。PVOが真であればPEITAGが選択され、
そうでなければITAGが選択される。ライン210上
のWINTAGストリームの状況がストリーム状況参照
部212により検査され、この参照部はライン213上
に出力信号を生成し、この信号は、WINTAG信号及
びALTTAG信号が加えられるマルチプレクサ214
に加えられる。WINTAGストリームが空でなければ
、WINTAGは、マルチプレクサ2!4の出力ライン
216上に生成されるNEXTTAGとして使われる。
その他の場合には、空でない最低番号のストリームがラ
イン216上のNEXTTAGとして使われる。
イン216上のNEXTTAGとして使われる。
タグ先読み論理回路100は、次に列挙する要素を含む
、即ち、ライン202上のPEITAG信号とライン2
18上バツクアツプ・タグBTAGとを生成するのに使
われる第13図に示されている回路と;PEOが現在の
レコードについて判断をした時にライン220上にDE
CISION信号を表明するのに使われる第14図に示
されている論理回路と、PEOを励起するレコードの妥
当性を検査するライン222上のVALTAG信号を生
成するための、第15図に示されている論理回路と;タ
グをBTAGライン218から第15図の回路のPEI
TAGライン202へ進ませるADVTA信号をライン
224上に生成する第16図に示されている論理回路と
;PEOから出る現在のレコードの最後の半分において
タグが発見された時にTAGSEEN信号をライン22
6上に生成する第17図に示されている回路と、を含ん
でいる。
、即ち、ライン202上のPEITAG信号とライン2
18上バツクアツプ・タグBTAGとを生成するのに使
われる第13図に示されている回路と;PEOが現在の
レコードについて判断をした時にライン220上にDE
CISION信号を表明するのに使われる第14図に示
されている論理回路と、PEOを励起するレコードの妥
当性を検査するライン222上のVALTAG信号を生
成するための、第15図に示されている論理回路と;タ
グをBTAGライン218から第15図の回路のPEI
TAGライン202へ進ませるADVTA信号をライン
224上に生成する第16図に示されている論理回路と
;PEOから出る現在のレコードの最後の半分において
タグが発見された時にTAGSEEN信号をライン22
6上に生成する第17図に示されている回路と、を含ん
でいる。
タグ先読み論理回路の動作に関して、分類装置から出力
されるレコードは常にPEOから来ることを記しておく
。PEOの入力は、分類装置に入力されるレコードと、
PEIの上側の出力により供給されるIER8N−1の
出力とである。入力レコードのタグは知られている;P
EI内のレコードのタグはPEI内の特別の論理によっ
てタグ選択論理39に与えられる(第12図及び第13
図のライン202上のPE ITAG)。タグ先読み論
理PEOの内部状態を監視し、判断がなされるのを待つ
(第14図のライン220上のDECISION);判
断がなされた時、どのレコードかPEOから出てゆくレ
コードであるかを調べるためにPEOについての「垂直
に通過」状態ビット(第12図のPVO)が検査される
。その時、このレコードのタグ(第12図のWINTA
G)がストリング選択論理(第12図)への入力として
使われ、これにより実際の出力でのレコードの半分に及
ぶジャンプを得る。この方法を使うことによって、非常
に小さいレコードの場合又は「判断(Decision
)jがレコードについて非常に遅くに行われるときを除
いて、併合時のレコード間遅延を完全に無くすることが
出来る。
されるレコードは常にPEOから来ることを記しておく
。PEOの入力は、分類装置に入力されるレコードと、
PEIの上側の出力により供給されるIER8N−1の
出力とである。入力レコードのタグは知られている;P
EI内のレコードのタグはPEI内の特別の論理によっ
てタグ選択論理39に与えられる(第12図及び第13
図のライン202上のPE ITAG)。タグ先読み論
理PEOの内部状態を監視し、判断がなされるのを待つ
(第14図のライン220上のDECISION);判
断がなされた時、どのレコードかPEOから出てゆくレ
コードであるかを調べるためにPEOについての「垂直
に通過」状態ビット(第12図のPVO)が検査される
。その時、このレコードのタグ(第12図のWINTA
G)がストリング選択論理(第12図)への入力として
使われ、これにより実際の出力でのレコードの半分に及
ぶジャンプを得る。この方法を使うことによって、非常
に小さいレコードの場合又は「判断(Decision
)jがレコードについて非常に遅くに行われるときを除
いて、併合時のレコード間遅延を完全に無くすることが
出来る。
第13図の論理回路はマルチプレクサ228を包含し、
このマルチプレクサは、第16図の回路からのライン2
24上のADVTAG信号の反転によって操作され、そ
の−入力はラッチ回路229に接続されており、これは
出力ライン202に接続されている。マルチプレクサ2
28の第2入力は、第10図のレコード制御回路62B
からのライン178上の0TAG信号により操作される
マルチプレクサ230の出力に接続されている。
このマルチプレクサは、第16図の回路からのライン2
24上のADVTAG信号の反転によって操作され、そ
の−入力はラッチ回路229に接続されており、これは
出力ライン202に接続されている。マルチプレクサ2
28の第2入力は、第10図のレコード制御回路62B
からのライン178上の0TAG信号により操作される
マルチプレクサ230の出力に接続されている。
マルチプレクサ230の一入力はライン231のURI
に接続され、その第2入力はライン218のBTAGに
接続されている。ライン218は、ライン178から制
御されると共にその入力ライン218及び231に接続
されている、マルチプレクサ234から駆動されるラッ
チ232の出力に接続されている。
に接続され、その第2入力はライン218のBTAGに
接続されている。ライン218は、ライン178から制
御されると共にその入力ライン218及び231に接続
されている、マルチプレクサ234から駆動されるラッ
チ232の出力に接続されている。
PEIから出るレコードについてのタグ(第13図のラ
イン202上のPEITAG)は、次の様にして抽出さ
れる:前進しないタグであれば(−ADVTAG) 、
PE ITAGの先の値がラッチされる。ライン224
上の前進するタグ(−ADVTAG)が真であり、タグ
PEIから出てゆこうとしているならば(ライン178
上の0TAG)そのタグがライン231のURIを通じ
て選択される。タグが前進中でタグかPEIから出てゆ
かないならば、バックアップ・タグ(ライン218上の
BTAG)が選択され、該バックアップ・タグは、タグ
がPEIから出てゆく時に回路232によってラッチさ
れる(OTAG)。
イン202上のPEITAG)は、次の様にして抽出さ
れる:前進しないタグであれば(−ADVTAG) 、
PE ITAGの先の値がラッチされる。ライン224
上の前進するタグ(−ADVTAG)が真であり、タグ
PEIから出てゆこうとしているならば(ライン178
上の0TAG)そのタグがライン231のURIを通じ
て選択される。タグが前進中でタグかPEIから出てゆ
かないならば、バックアップ・タグ(ライン218上の
BTAG)が選択され、該バックアップ・タグは、タグ
がPEIから出てゆく時に回路232によってラッチさ
れる(OTAG)。
第L4図を参照すると、ライン220上のDECISI
ON信号はANDゲート236により生成され、このゲ
ートの一入力はDECENBライン237に接続され第
2入力はAND回路238の出力に接続されており、こ
の回路238の入力は、−DECIDINGOライン2
39と、第15図の回路からのVALTAGライン22
0とに接続されている。
ON信号はANDゲート236により生成され、このゲ
ートの一入力はDECENBライン237に接続され第
2入力はAND回路238の出力に接続されており、こ
の回路238の入力は、−DECIDINGOライン2
39と、第15図の回路からのVALTAGライン22
0とに接続されている。
第15図を参照すると、ライン220上のVALTAG
信号は、3個のANDゲート243.244及び245
に接続された入力を有するOR回路242の出力に接続
されたラッチ240の出力で生成される。ゲート243
.244及び245の入力は、ライン220及び226
と、第9図のERECライン160反転から得られる一
EREC−mイン246と、前記した様に第9図及び第
10図のレコード制御回路から得られる他の信号とに接
続されている。
信号は、3個のANDゲート243.244及び245
に接続された入力を有するOR回路242の出力に接続
されたラッチ240の出力で生成される。ゲート243
.244及び245の入力は、ライン220及び226
と、第9図のERECライン160反転から得られる一
EREC−mイン246と、前記した様に第9図及び第
10図のレコード制御回路から得られる他の信号とに接
続されている。
ライン220上のVALTAG信号は、PEIから出る
レコードについてのタグ(PE1.TAG)がPEOか
ら出るレコードについてのタグであれば、そのタグの妥
当性を検査する。VALTAGはレコードの最後のバイ
トがPEOから出る時に撤回される(−EREC及びV
ALTAG) 。若しタグがレコードの最初の半分の中
にあれば、レコードがPEOに入り始める時にVALT
AGが表明される(EREC及びTAGSEEN)。タ
グがレコードの第2の半分の中にあれば、該タグがPE
Iを出た直後にVALTAGが表明される(TCTR=
0及びTCNT及び−RCNT)。
レコードについてのタグ(PE1.TAG)がPEOか
ら出るレコードについてのタグであれば、そのタグの妥
当性を検査する。VALTAGはレコードの最後のバイ
トがPEOから出る時に撤回される(−EREC及びV
ALTAG) 。若しタグがレコードの最初の半分の中
にあれば、レコードがPEOに入り始める時にVALT
AGが表明される(EREC及びTAGSEEN)。タ
グがレコードの第2の半分の中にあれば、該タグがPE
Iを出た直後にVALTAGが表明される(TCTR=
0及びTCNT及び−RCNT)。
第16図の回路に関して、出力ライン224はラッチ2
50に接続されており、これは、二つのANDゲート2
53及び254に接続された入力を有するORゲート2
52の出力に接続されており、ANDゲート253の入
力はライン160及び226に接続され、ANDゲート
254の入力は第9図及び第10図の回路からのライン
146.156及び167に接続されている。
50に接続されており、これは、二つのANDゲート2
53及び254に接続された入力を有するORゲート2
52の出力に接続されており、ANDゲート253の入
力はライン160及び226に接続され、ANDゲート
254の入力は第9図及び第10図の回路からのライン
146.156及び167に接続されている。
タグは、ADVTAGによりBTAGからPEITAG
へ進められる。そのタグがレコードの最初の半分の中に
あれば、PEOに与えられるレコードの第1バイト時に
ADVTAGが表明される(EREC及びTAGSEE
N)。タグがレコードの第2の半分の中にあれば、AD
VTAGは、該タグがPEIから出る時に表明される(
TCTR=0及びTCNT及び−RCNT)。
へ進められる。そのタグがレコードの最初の半分の中に
あれば、PEOに与えられるレコードの第1バイト時に
ADVTAGが表明される(EREC及びTAGSEE
N)。タグがレコードの第2の半分の中にあれば、AD
VTAGは、該タグがPEIから出る時に表明される(
TCTR=0及びTCNT及び−RCNT)。
第17図は、PEOから出る現在のレコードの最後の半
分の時にタグが見られたか否か監視し続ける論理を示す
。この論理は、−入力が−ERECライン246に接続
されているANDゲート258の出力に接続されている
。ゲート258の第2入力はORゲート259の出力に
接続されており、該ORゲートの一入力はライン226
に接続され第2入力はANDゲート260に接続されて
おり、該ANDゲートの入力は第9図及び第10図のレ
コード制御回路からのライン150及び156に接続さ
れている。ライン226上のTAGSEENは、レコー
ドの最後のバイトがPEOから出るときに撤回される(
−EREC)。TAGEENは、レコードの最初の半分
の際にタグPEIから出るときに表明される(TCTR
=0及びTCNT及びRCNT)。
分の時にタグが見られたか否か監視し続ける論理を示す
。この論理は、−入力が−ERECライン246に接続
されているANDゲート258の出力に接続されている
。ゲート258の第2入力はORゲート259の出力に
接続されており、該ORゲートの一入力はライン226
に接続され第2入力はANDゲート260に接続されて
おり、該ANDゲートの入力は第9図及び第10図のレ
コード制御回路からのライン150及び156に接続さ
れている。ライン226上のTAGSEENは、レコー
ドの最後のバイトがPEOから出るときに撤回される(
−EREC)。TAGEENは、レコードの最初の半分
の際にタグPEIから出るときに表明される(TCTR
=0及びTCNT及びRCNT)。
分類順序づけ装置34(第1図及び第18図ないし第2
2図) 分類加速装置の他の区域は、処理されるべきデータスト
リングを操作するが、分類順序づけ装置は外部メモリー
アドレスを計算し、分類加速装置の全体を制御する。
2図) 分類加速装置の他の区域は、処理されるべきデータスト
リングを操作するが、分類順序づけ装置は外部メモリー
アドレスを計算し、分類加速装置の全体を制御する。
分類加速装置の図示の好適な実施例は、図示の16路強
化リバウンド分類装置18を使用するが、以下の部は、
開示した分類装置18のそれと同等の機能特性を有する
N路分類装置の使用に一般化されている。
化リバウンド分類装置18を使用するが、以下の部は、
開示した分類装置18のそれと同等の機能特性を有する
N路分類装置の使用に一般化されている。
前述した様に、分類順序づけ装置34は、レジスターア
レイ36及びフラグレジスター37を含む制御プロセッ
サを有する。レジスターアレイ36は好ましくは4個の
バンクを成す64個の32ビツト・レジスターであり、
フラグレジスターは32ビツト・レジスターである。制
御プロセッサはALU37も包含するが、これは好まし
くは32ビツトALUである。実用的実施例では、この
構成は1個のレジスターの読み出し、ALU操作の実行
、及び同レジスターへの一つの133nsクロツクでの
書込みを行うことが出来る。
レイ36及びフラグレジスター37を含む制御プロセッ
サを有する。レジスターアレイ36は好ましくは4個の
バンクを成す64個の32ビツト・レジスターであり、
フラグレジスターは32ビツト・レジスターである。制
御プロセッサはALU37も包含するが、これは好まし
くは32ビツトALUである。実用的実施例では、この
構成は1個のレジスターの読み出し、ALU操作の実行
、及び同レジスターへの一つの133nsクロツクでの
書込みを行うことが出来る。
レジスターアレイは二つの目的に役立つ。上位プロセッ
サは、これらのレジスターを初期化することによって分
類加速装置へ制御情報を伝え、制御プロセッサは、その
マイクロコード化されたプログラムの変数として、それ
らを使用する。アドレス、カウント、及び状況情報は該
アレイ中に維持される。該アレイは各々16個のレジス
ターから成る4個のバンクとして組織されている。各バ
ンクを変数で指標付けすることが出来、併合操作からの
タグをストリング指標から、取り出されるべき次のレコ
ードを指すアドレスに速やかに変換することを可能にす
る。
サは、これらのレジスターを初期化することによって分
類加速装置へ制御情報を伝え、制御プロセッサは、その
マイクロコード化されたプログラムの変数として、それ
らを使用する。アドレス、カウント、及び状況情報は該
アレイ中に維持される。該アレイは各々16個のレジス
ターから成る4個のバンクとして組織されている。各バ
ンクを変数で指標付けすることが出来、併合操作からの
タグをストリング指標から、取り出されるべき次のレコ
ードを指すアドレスに速やかに変換することを可能にす
る。
制御プロセッサ用のマイクロプログラムは、例えば各々
60ビツトから成る512個のマイクロワードから成る
アレイを成してROM38に格納され、各マイクロワー
ドはALUオペランドのソ−ス、実行されるべきALU
操作、ALU操作の宛先、及び実行されるべき次のマイ
クロワードの記憶場所を制御するフィールドに分割され
る。マイクロワード中の追加のフィールドは、色々な宛
先へのデータの書込みを可能にすると共にマイクロプロ
グラム実行の流れを制御し、マイクロコード・サブルー
チンが支援されることが出来る。本発明は、以下に詳し
く説明すると共に第18図ないし第22図に部分的に示
した分類操作を行うために特定の形の制御プロセッサの
使用に限定されるものではない。第18図は、分類順序
づけ装置の動作の理解に重要な中間記憶装置の構成を示
し、第19図ないし第22図は分類の安定性を得るのに
重要な分類順序づけ装置の変形例を示す。
60ビツトから成る512個のマイクロワードから成る
アレイを成してROM38に格納され、各マイクロワー
ドはALUオペランドのソ−ス、実行されるべきALU
操作、ALU操作の宛先、及び実行されるべき次のマイ
クロワードの記憶場所を制御するフィールドに分割され
る。マイクロワード中の追加のフィールドは、色々な宛
先へのデータの書込みを可能にすると共にマイクロプロ
グラム実行の流れを制御し、マイクロコード・サブルー
チンが支援されることが出来る。本発明は、以下に詳し
く説明すると共に第18図ないし第22図に部分的に示
した分類操作を行うために特定の形の制御プロセッサの
使用に限定されるものではない。第18図は、分類順序
づけ装置の動作の理解に重要な中間記憶装置の構成を示
し、第19図ないし第22図は分類の安定性を得るのに
重要な分類順序づけ装置の変形例を示す。
中間記憶装置の構成(第18図)
分類加速装置10が使用するアルゴリズムは、色々なサ
イズの領域に組織された中間記憶装置を必要とする。最
小の領域は、中間記憶区域の底に位置し、N個のレコー
ドから成るN個に及ぶストリングを保持するのに使われ
る。第2の領域は、第1の領域の端に位置し、NXN個
のレコードから成るN個のストリングを保持するのに使
われる。
イズの領域に組織された中間記憶装置を必要とする。最
小の領域は、中間記憶区域の底に位置し、N個のレコー
ドから成るN個に及ぶストリングを保持するのに使われ
る。第2の領域は、第1の領域の端に位置し、NXN個
のレコードから成るN個のストリングを保持するのに使
われる。
各々の領域は、その前の領域よりもN倍大きい。
第18図、は、Nが図示の実施例の場合のように16で
はなくて4である場合に使用される組織の例を示す。こ
の例では、第1領域ROは4個のレコードを格納し、第
2領域R1は16個のレコードの4個のストリングを格
納する、即ち、それはNXN個のレコードを格納する。
はなくて4である場合に使用される組織の例を示す。こ
の例では、第1領域ROは4個のレコードを格納し、第
2領域R1は16個のレコードの4個のストリングを格
納する、即ち、それはNXN個のレコードを格納する。
第3の領域R2は、その2だけ示されているが、64個
のレコードの4個のストリングを、即ち、NXNXN個
のレコードを格納する。
のレコードの4個のストリングを、即ち、NXNXN個
のレコードを格納する。
Nが16である図示の実施例では、第1領域ROは16
個のレコードの16個のストリング(256レコード)
を格納し、第2領域R1は4096個のレコードを格納
し、第3レコードR2は65.536個のレコードを格
納する。後の領域は、その前の領域のレコードの数の1
6倍を包含する。使用可能なメモリーに応じて、随意の
数の追加の領域を設けることが出来る。
個のレコードの16個のストリング(256レコード)
を格納し、第2領域R1は4096個のレコードを格納
し、第3レコードR2は65.536個のレコードを格
納する。後の領域は、その前の領域のレコードの数の1
6倍を包含する。使用可能なメモリーに応じて、随意の
数の追加の領域を設けることが出来る。
中間記憶装置の場所と大きさとは、操作初期化時にレジ
スターアレイにベースアドレス及びエンドアドレスを装
填することによってプログラムされる。操作のために充
分な記憶装置が割り当てられれば、制御プロセッサは該
操作を保留して上位プロセッサに割り込む。該エンドア
ドレスを増大させることにより、該記憶装置を動的に拡
張することが出来る。
スターアレイにベースアドレス及びエンドアドレスを装
填することによってプログラムされる。操作のために充
分な記憶装置が割り当てられれば、制御プロセッサは該
操作を保留して上位プロセッサに割り込む。該エンドア
ドレスを増大させることにより、該記憶装置を動的に拡
張することが出来る。
拡張された併合・分類アルゴリズム
図示の実施例では、ROM38に格納されるマクロプロ
グラムに、拡張された併合・分類アルゴリズムが埋め込
まれるが、該アルゴリズムを実現するために同等の手段
を使用することも出来る。
グラムに、拡張された併合・分類アルゴリズムが埋め込
まれるが、該アルゴリズムを実現するために同等の手段
を使用することも出来る。
該アルゴリズムは、強化されたリバウンド分類装置のN
路併合能力を利用して、制限の無い個数のレコードを並
べ変える。該アルゴリズムは、入力フェーズ及び出力フ
ェーズと呼ばれる二つのフェーズから成る。後述する様
に、これらのフェーズを構成する分類及び併合の操作の
順序は、分類の安定性、メモリーの効率、及び動作のた
めに重要である。
路併合能力を利用して、制限の無い個数のレコードを並
べ変える。該アルゴリズムは、入力フェーズ及び出力フ
ェーズと呼ばれる二つのフェーズから成る。後述する様
に、これらのフェーズを構成する分類及び併合の操作の
順序は、分類の安定性、メモリーの効率、及び動作のた
めに重要である。
入力フェーズ
入力フェーズは、分類及び併合から成り、実際上、入力
ストリングを構成する未分類レコードの全てが処理され
るまでである。各分類操作によりN個の未処理レコード
が操作され、中間記憶装置の領域0にN個のレコードの
分類済みストリングが作られる。各併合操作により、満
杯となった領域のN個の分類済みストリングが処理され
、入力ストリングの各々よりN倍大きな次の領域に単一
の分類済みストリングが作られる。
ストリングを構成する未分類レコードの全てが処理され
るまでである。各分類操作によりN個の未処理レコード
が操作され、中間記憶装置の領域0にN個のレコードの
分類済みストリングが作られる。各併合操作により、満
杯となった領域のN個の分類済みストリングが処理され
、入力ストリングの各々よりN倍大きな次の領域に単一
の分類済みストリングが作られる。
入力フェーズは、入力ストリングの始めのN個のレコー
ドを分類してN個のレコードの一つのストリングを領域
Oに作ることから始まる。その後、入力ストリングの次
のN個のレコードが分類されて、N個のレコードの第2
のストリングとなる。
ドを分類してN個のレコードの一つのストリングを領域
Oに作ることから始まる。その後、入力ストリングの次
のN個のレコードが分類されて、N個のレコードの第2
のストリングとなる。
このプロセスは、N個のレコードのN個のストリングが
領域Oに生じるまで続き、その時点で分類は中止され、
該ストリングは併合されて、領域lのNXN個のレコー
ドの単一のストリングとなる。
領域Oに生じるまで続き、その時点で分類は中止され、
該ストリングは併合されて、領域lのNXN個のレコー
ドの単一のストリングとなる。
この併合が終わると、入力フェーズは入力ストリングの
分類を再開する。結局、N個のレコードのN個の新しい
ストリングが領域0に作られ、分類が中止され、それら
が併合されて領域1のNXN個の第2のストリングとな
る。このプロセスは、領域1にNXNの長さのストリン
グがN個出来るまで続き、その時点で、それらは併合さ
れて、領域2のNXNXN個のレコードの単一のストリ
ングとなる。領域の数は、使用可能な中間記憶装置の量
によって制限される。
分類を再開する。結局、N個のレコードのN個の新しい
ストリングが領域0に作られ、分類が中止され、それら
が併合されて領域1のNXN個の第2のストリングとな
る。このプロセスは、領域1にNXNの長さのストリン
グがN個出来るまで続き、その時点で、それらは併合さ
れて、領域2のNXNXN個のレコードの単一のストリ
ングとなる。領域の数は、使用可能な中間記憶装置の量
によって制限される。
入力フェーズは、入力ストリングの全体が処理されるま
で、可能な時には併合を行いながら、継続する。入力ス
トリング中のレコードの数は、操作が初期化される時に
レジスターアレイにプログラムされる。コマンドレジス
ターには数個のオプション・ビットがあり、その一つは
、入力ストリングが分類されるべきレコードの全てを包
含しているか否かを示す。このビット(ENDビット)
がセットされていなければ、制御プロセッサは、出力フ
ェーズが始まる前に上位処理装置に割り込み、上位処理
装置が同じ分類操作で他の入力ストリングを包含するこ
とを可能にする。レコードカウントレジスターは、入力
ストリングが処理されるに従って継続的にデクリメント
される。
で、可能な時には併合を行いながら、継続する。入力ス
トリング中のレコードの数は、操作が初期化される時に
レジスターアレイにプログラムされる。コマンドレジス
ターには数個のオプション・ビットがあり、その一つは
、入力ストリングが分類されるべきレコードの全てを包
含しているか否かを示す。このビット(ENDビット)
がセットされていなければ、制御プロセッサは、出力フ
ェーズが始まる前に上位処理装置に割り込み、上位処理
装置が同じ分類操作で他の入力ストリングを包含するこ
とを可能にする。レコードカウントレジスターは、入力
ストリングが処理されるに従って継続的にデクリメント
される。
出力フェーズ
入力フェーズの終了時には、複数の領域内に数個のスト
リングがある。出力フェーズは、この数をN以下に減ら
す一連の併合操作と、直接に宛先アドレスへの最後の併
合とから成る。
リングがある。出力フェーズは、この数をN以下に減ら
す一連の併合操作と、直接に宛先アドレスへの最後の併
合とから成る。
出力フェーズの開始時には、各領域にN−1個の完全な
長さのストリングがあると共に、領域Oには不完全な長
さのストリングがある。この不完全な長さのストリング
は、分類されているレコードの総数モジュールNから成
り(0であることもあり得る)これは、レコードの総数
が必ずしもNの倍数ではないから存在するものである。
長さのストリングがあると共に、領域Oには不完全な長
さのストリングがある。この不完全な長さのストリング
は、分類されているレコードの総数モジュールNから成
り(0であることもあり得る)これは、レコードの総数
が必ずしもNの倍数ではないから存在するものである。
分類を安定させるために、最高の領域から最低の領域へ
と優先順位が割り当てられる。一つの領域の中では、優
先順位は最低のストリングから最高のストリングへの順
である。これは、ストリングが作られた順と一致する。
と優先順位が割り当てられる。一つの領域の中では、優
先順位は最低のストリングから最高のストリングへの順
である。これは、ストリングが作られた順と一致する。
出力フェーズは、非常に効率的で信頼できる態様で進行
する。最低の空でない領域から併合が行われてゆき、こ
の併合は、関係するストリングの総数がN以下であると
いう制限の範囲内で、なるべく多数の領域を含む。この
併合により、該併合に含まれなかった空でない最初の領
域に新しい不完全なストリングが作られる。
する。最低の空でない領域から併合が行われてゆき、こ
の併合は、関係するストリングの総数がN以下であると
いう制限の範囲内で、なるべく多数の領域を含む。この
併合により、該併合に含まれなかった空でない最初の領
域に新しい不完全なストリングが作られる。
これらの複数領域併合は、上から2番目の領域に達する
まで続く。この時点で、一番上の領域と2番目に高い領
域との両方が含まれていれば、それらは、宛先の記憶場
所に書き込まれる分類操作の最後の併合に参加する。最
高の領域が包含され得なければ、2番目に高い領域は参
加を禁じられ、出力は、2番目に高いレベルの部分的併
合をつくり出す。
まで続く。この時点で、一番上の領域と2番目に高い領
域との両方が含まれていれば、それらは、宛先の記憶場
所に書き込まれる分類操作の最後の併合に参加する。最
高の領域が包含され得なければ、2番目に高い領域は参
加を禁じられ、出力は、2番目に高いレベルの部分的併
合をつくり出す。
後の場合は、動作最適化を表す。最後の二つの領域のス
トリングの大きさは分類操作全体のサイズに関して重要
であるので、これらのストリングの取扱は、2番目に高
い領域から、ちょうど充分なだけのストリングを最高の
領域の不完全なストリングに併合して、正確にN個のス
トリングを残すことによって、最小限度にされる。これ
は「最善のJ併合と呼ばれる。その時、N個のストリン
グが最後に併合に参加する。
トリングの大きさは分類操作全体のサイズに関して重要
であるので、これらのストリングの取扱は、2番目に高
い領域から、ちょうど充分なだけのストリングを最高の
領域の不完全なストリングに併合して、正確にN個のス
トリングを残すことによって、最小限度にされる。これ
は「最善のJ併合と呼ばれる。その時、N個のストリン
グが最後に併合に参加する。
分類操作の全段階を通じて、指標付けを可能にするため
に、各領域のストリング総数がレジスターアレイの一つ
のバンクに維持される。不完全なストリングの長さは、
該アレイ内の他のレジスターに維持される。他のストリ
ングの長さは、それらの領域の番号から分かる。
に、各領域のストリング総数がレジスターアレイの一つ
のバンクに維持される。不完全なストリングの長さは、
該アレイ内の他のレジスターに維持される。他のストリ
ングの長さは、それらの領域の番号から分かる。
不完全なストリングの長さを維持するレジスターは1個
だけしかないので、不完全なストリングは常時1個だけ
存在できる。出力フェーズは全ての併合に不完全なスト
リングを含み、これらの併合の各々が、より大きな不完
全なストリングをより高い領域につくり出す。不完全な
ストリングの長さのためのレジスターは、新しい不完全
なストリングのサイズを反映するように継続的に更新さ
れる。不完全なストリングもr最善の」併合に参加する
。
だけしかないので、不完全なストリングは常時1個だけ
存在できる。出力フェーズは全ての併合に不完全なスト
リングを含み、これらの併合の各々が、より大きな不完
全なストリングをより高い領域につくり出す。不完全な
ストリングの長さのためのレジスターは、新しい不完全
なストリングのサイズを反映するように継続的に更新さ
れる。不完全なストリングもr最善の」併合に参加する
。
中間記憶装置の管理
中間記憶装置の構成は、第18図との関係で上記されて
いる。この節は、分類操作の入力フェーズで制御プロセ
ッサにより実行される簿記について詳しく説明するもの
である。
いる。この節は、分類操作の入力フェーズで制御プロセ
ッサにより実行される簿記について詳しく説明するもの
である。
制御プロセッサは、該操作のために充分な記憶装置か割
り当てられているか否か判断しなければならない。動作
をなるべく悪化させずに、この判断を行うために、レジ
スターアレイ35内の2個のレジスターを使って、最高
の活動状態領域の番号と最高の活動状態アドレスとを維
持する。拡張された併合・分類アルゴリズムの中の各分
類又は併合の開始時に、現在の領域が最高の活動状態領
域と比較される。若しそれが最高の活動状態領域引くl
より小さければ、その分類又は併合は正常に続く:そう
でなければ、制御プロセッサは、新しいストリングを最
高領域に作りかけており、進むのに充分な記憶装置が割
り当てられているか否か確かめなければならない。
り当てられているか否か判断しなければならない。動作
をなるべく悪化させずに、この判断を行うために、レジ
スターアレイ35内の2個のレジスターを使って、最高
の活動状態領域の番号と最高の活動状態アドレスとを維
持する。拡張された併合・分類アルゴリズムの中の各分
類又は併合の開始時に、現在の領域が最高の活動状態領
域と比較される。若しそれが最高の活動状態領域引くl
より小さければ、その分類又は併合は正常に続く:そう
でなければ、制御プロセッサは、新しいストリングを最
高領域に作りかけており、進むのに充分な記憶装置が割
り当てられているか否か確かめなければならない。
この確認は、最高活動状態アドレスレジスターを使って
、他の完全なストリングのための余地が次の領域にある
か否か判断することから始まる。
、他の完全なストリングのための余地が次の領域にある
か否か判断することから始まる。
若しあれば、拡張併合・分類は正常に進行する;若し無
ければ、制限プロセッサは、現在の領域から別個のスト
リングが次の領域の不完全なストリングに嵌まり込むか
判定し、その情報を使って、それらのストリングが併合
されたならば何個の追加レコードを処理できるか判定す
る。若しこの数が入力ストリングに残っているレコード
の数より少なければ、制御プロセッサは上位プロセッサ
に割り込んで、操作を完了するためにもっと多量の記憶
装置が割り当てられなければならないことを指摘する。
ければ、制限プロセッサは、現在の領域から別個のスト
リングが次の領域の不完全なストリングに嵌まり込むか
判定し、その情報を使って、それらのストリングが併合
されたならば何個の追加レコードを処理できるか判定す
る。若しこの数が入力ストリングに残っているレコード
の数より少なければ、制御プロセッサは上位プロセッサ
に割り込んで、操作を完了するためにもっと多量の記憶
装置が割り当てられなければならないことを指摘する。
許容可能な追加のレコードの数が、残っているレコード
の数より多ければ、追加の記憶装置無しで操作を完了す
ることが出来る。コマンドレジスターにENDビットが
セットされると、このレベルに残っているストリングの
数と、将来の入力から形成されるこのレベルの追加のス
トリングの数と、次のレベルのストリングの数との和が
等しくNとなる様に、制御プロセッサはこのレベルから
ちょうど充分なストリングを併合する。「最善の」併合
が行われたことを出力フェーズに対して指摘するフラグ
がセットされ、この特別の不完全なストリングの長さか
レジスターアレイ内のレジスターに保存される。このレ
ジスターは、出力フェーズが使用する不完全なストリン
グの長さのためのレジスターと同じではない。
の数より多ければ、追加の記憶装置無しで操作を完了す
ることが出来る。コマンドレジスターにENDビットが
セットされると、このレベルに残っているストリングの
数と、将来の入力から形成されるこのレベルの追加のス
トリングの数と、次のレベルのストリングの数との和が
等しくNとなる様に、制御プロセッサはこのレベルから
ちょうど充分なストリングを併合する。「最善の」併合
が行われたことを出力フェーズに対して指摘するフラグ
がセットされ、この特別の不完全なストリングの長さか
レジスターアレイ内のレジスターに保存される。このレ
ジスターは、出力フェーズが使用する不完全なストリン
グの長さのためのレジスターと同じではない。
ENDビットがセットされなければ、コマンドレジスタ
ー内の追加のオプション・ビット(LOCKビット)が
検査される。このLOCKビットがセットされていれば
、制御プロセッサは、なるべく多数のストリングを次の
レベルの特別の不完全なストリングに併合し、併合フラ
グを設置し、特別の不完全なストリングの長さを保存し
、レベル0のストリングを作り続ける。LOCKビット
がセットされていなければ、上位プロセッサは割り込ま
れて、ENDビットをセットし、LOCKビットをセッ
トし、又は記憶装置エンドアドレスを増大させることを
許される。
ー内の追加のオプション・ビット(LOCKビット)が
検査される。このLOCKビットがセットされていれば
、制御プロセッサは、なるべく多数のストリングを次の
レベルの特別の不完全なストリングに併合し、併合フラ
グを設置し、特別の不完全なストリングの長さを保存し
、レベル0のストリングを作り続ける。LOCKビット
がセットされていなければ、上位プロセッサは割り込ま
れて、ENDビットをセットし、LOCKビットをセッ
トし、又は記憶装置エンドアドレスを増大させることを
許される。
「最善の1併合は、拡張併合・分類の動作が最適化する
ことを保証する。制御プロセッサは操作中のレコードの
総数を知らず、上位プロセッサが中間記憶装置のサイズ
を固定する許可を与えているのて「短縮」併合が起こる
。−旦固定されると、記憶装置アドレスの終端を増大さ
せることは違法となる。この併合は、与えられた量の記
憶装置で分類することの出来るレコードの数を最適化す
る。
ことを保証する。制御プロセッサは操作中のレコードの
総数を知らず、上位プロセッサが中間記憶装置のサイズ
を固定する許可を与えているのて「短縮」併合が起こる
。−旦固定されると、記憶装置アドレスの終端を増大さ
せることは違法となる。この併合は、与えられた量の記
憶装置で分類することの出来るレコードの数を最適化す
る。
分類制御
前述の入力フェーズの分類プロセスは、分類加速装置が
、入力ストリングからN個の未整理レコードを読み込み
、それらを分類し、その結果を中間記憶装置の領域0中
の新しいストリング中に置くことを必要とする。
、入力ストリングからN個の未整理レコードを読み込み
、それらを分類し、その結果を中間記憶装置の領域0中
の新しいストリング中に置くことを必要とする。
好ましくは、分類制御は、マイクロコード中の単一ルー
プの中に存する。最初に、入力ストリングが使い尽くさ
れたか否か調べるためにレコードカウントレジスターが
検査される。使い尽くされていれば、制御は出力フェー
ズに移転する。より多数の入力レコードがあれば、レジ
スターアレイ内のソースアドレスが入力プロセッサに渡
される。
プの中に存する。最初に、入力ストリングが使い尽くさ
れたか否か調べるためにレコードカウントレジスターが
検査される。使い尽くされていれば、制御は出力フェー
ズに移転する。より多数の入力レコードがあれば、レジ
スターアレイ内のソースアドレスが入力プロセッサに渡
される。
このレジスターは、操作が初期化された時に入力ストリ
ングのアドレスが装填されたレジスターであり、この時
にレコード当たりのバイトの数だけインクリメントされ
る。該アレイ内の他のカウントレジスターは1だけイン
クリメントされ、カウントがNに達するまで分類ループ
は継続する。
ングのアドレスが装填されたレジスターであり、この時
にレコード当たりのバイトの数だけインクリメントされ
る。該アレイ内の他のカウントレジスターは1だけイン
クリメントされ、カウントがNに達するまで分類ループ
は継続する。
併合制御
純粋にマイクロコードで取り扱われるのが好ましい分類
制御とは異なって、併合制御用のマイクロコードは、前
述の併合アルゴリズムによりストリング選択回路39で
加速されるのが好ましい。
制御とは異なって、併合制御用のマイクロコードは、前
述の併合アルゴリズムによりストリング選択回路39で
加速されるのが好ましい。
ストリング選択論理について前述した。分類順序づけ装
置は入力プロセッサが各レコードに挿入するタグの供給
も行う。
置は入力プロセッサが各レコードに挿入するタグの供給
も行う。
分類安定性
「安定な」分類は、同じキーを持ったレコードが、入っ
たときと同じ相対的順序で該分類からでるような分類で
ある。設計を単純なままに保ち、追加の記憶装置及び時
間要件を小さくするために、N路併合アルゴリズムで既
に必要とされたタグバイトを使用して分類安定性を保証
する。この特徴は、総レコードサイズを割合に小さく保
つと共に、分類順序づけ装置又はリバウンド分類装置の
大幅な変更を必要としない。
たときと同じ相対的順序で該分類からでるような分類で
ある。設計を単純なままに保ち、追加の記憶装置及び時
間要件を小さくするために、N路併合アルゴリズムで既
に必要とされたタグバイトを使用して分類安定性を保証
する。この特徴は、総レコードサイズを割合に小さく保
つと共に、分類順序づけ装置又はリバウンド分類装置の
大幅な変更を必要としない。
この所定の順序が変更されないことを保証するために、
特別のハードウェア及びアルゴリズムを使用する特別の
特徴が分類加速装置10に含まれている。
特別のハードウェア及びアルゴリズムを使用する特別の
特徴が分類加速装置10に含まれている。
前記した様に、キーバイトに続いて、残りのデータバイ
トの前にタグバイトが入力レコードストリングに挿入さ
れる。タグバイトの高位4ビツトは、レコードの出所と
なったストリングの番号(併合について)、又はゼロ(
分類について)にセットされる。
トの前にタグバイトが入力レコードストリングに挿入さ
れる。タグバイトの高位4ビツトは、レコードの出所と
なったストリングの番号(併合について)、又はゼロ(
分類について)にセットされる。
タグバイトは常に処理要素において「上昇j@に比較さ
れる。タグバイトをキーの前に、しかし残りの・データ
の前に置くことにより、処理要素は、残りの非キーバイ
トが与えられる前に、それらのバイトをどの経路に通す
か決定することが出来る。
れる。タグバイトをキーの前に、しかし残りの・データ
の前に置くことにより、処理要素は、残りの非キーバイ
トが与えられる前に、それらのバイトをどの経路に通す
か決定することが出来る。
ストリング番号は、等しいキーを持った異なるストリン
グからのレコードを、それが入って来た順にリバウンド
分類装置から出て行かせる。「順序jビットは、等しい
キーを持った同じストリングからのレコードを、それら
が入って来た順にリバウンド分類装置から出て行かせる
。
グからのレコードを、それが入って来た順にリバウンド
分類装置から出て行かせる。「順序jビットは、等しい
キーを持った同じストリングからのレコードを、それら
が入って来た順にリバウンド分類装置から出て行かせる
。
分類順序づけ装置強化
与えられた併合のために、−緒に分類プロセスに入った
レコードのストリングが選択される。即ち、選択される
成るレコードの前に、しかし、選択される他のレコード
の後に分類プロセスに入って選択されないレコードは無
い(それらは、可能性としては、この併合に属すること
があり得る)。
レコードのストリングが選択される。即ち、選択される
成るレコードの前に、しかし、選択される他のレコード
の後に分類プロセスに入って選択されないレコードは無
い(それらは、可能性としては、この併合に属すること
があり得る)。
各ストリングに対して独自の番号が選択されるが、それ
は、そのストリング中のレコードが分類プロセスに入っ
た、同じ併合内の他のストリングに対しての相対順位を
示す。ストリングの各レコードは、タグバイトの高位ビ
ットに挿入されたストリング番号を持っている。異なる
ストリングからの2個のレコードの順序が、それらのタ
グバイトが比較されるときに解明されていなければ、そ
れらが入ってきたのと同じ順序で併合から出て行くこと
をストリング番号が保証する。
は、そのストリング中のレコードが分類プロセスに入っ
た、同じ併合内の他のストリングに対しての相対順位を
示す。ストリングの各レコードは、タグバイトの高位ビ
ットに挿入されたストリング番号を持っている。異なる
ストリングからの2個のレコードの順序が、それらのタ
グバイトが比較されるときに解明されていなければ、そ
れらが入ってきたのと同じ順序で併合から出て行くこと
をストリング番号が保証する。
分類済みストリングが作業空間の領域に書き込まれてゆ
くとき、それらは、その領域の使用可能な最低の行に書
き込まれる。領域が満杯になると、その次に高い領域の
使用可能な最低の行に併合されてゆく。これから分かる
ように、部分的併合(後述する)が無い場合には、最高
の領域は分類に最初に入ったストリングを包含し、2番
目に高い領域は2番目に入ったストリングを包含する、
等々である。領域内では、最低の行は、最初に分類に入
ったストリングを包含し、次の行は2番目に入ったスト
リングを包含する、等々である。
くとき、それらは、その領域の使用可能な最低の行に書
き込まれる。領域が満杯になると、その次に高い領域の
使用可能な最低の行に併合されてゆく。これから分かる
ように、部分的併合(後述する)が無い場合には、最高
の領域は分類に最初に入ったストリングを包含し、2番
目に高い領域は2番目に入ったストリングを包含する、
等々である。領域内では、最低の行は、最初に分類に入
ったストリングを包含し、次の行は2番目に入ったスト
リングを包含する、等々である。
下記の記述においては、Oから始まるストリング番号が
順に割り当てられる。別様に指定されない限りは、行の
グループ内ではストリング番号は最低の行から最高の行
へと順に割り当てられる。
順に割り当てられる。別様に指定されない限りは、行の
グループ内ではストリング番号は最低の行から最高の行
へと順に割り当てられる。
第19図に示されている様に、FSJの下のコラム内の
ストリング番号0ないし15は順に並んでおり、ストリ
ング15は最高のアドレスHAにあり、ストリングOは
最低のアドレスLAにある。
ストリング番号0ないし15は順に並んでおり、ストリ
ング15は最高のアドレスHAにあり、ストリングOは
最低のアドレスLAにある。
併合に参加するストリングにストリング番号を割り当て
る異なる場合が4種類ある; 1)成る領域が満杯で、次に高い領域への完全併合が行
われる時、ストリング番号はグループとして16個の行
に割り当てられる(第19図に示されている様にして)
。
る異なる場合が4種類ある; 1)成る領域が満杯で、次に高い領域への完全併合が行
われる時、ストリング番号はグループとして16個の行
に割り当てられる(第19図に示されている様にして)
。
2)作業空間の量が限られているために部分的併合が行
われるときには、2番目に高い領域の、全てではない行
が最高領域に併合される。この場合、ストリング番号は
、グループとして、最高領域の最後の行に収まる2番目
に高い領域の最高番号の行のうちのなるべく多くの行に
割り当てられる。第20図の例では、Nは最高領域の番
号である。
われるときには、2番目に高い領域の、全てではない行
が最高領域に併合される。この場合、ストリング番号は
、グループとして、最高領域の最後の行に収まる2番目
に高い領域の最高番号の行のうちのなるべく多くの行に
割り当てられる。第20図の例では、Nは最高領域の番
号である。
3)(全ての入力データが作業空間メモリー内に置かれ
た後)最後の併合が行われるとき、部分的併合が起こっ
ていなければ、ストリング番号はグループとして最高領
域内の全ての行に割り当てられ、その後、空でない全て
の領域が割り当てられるまで、2番目に高い領域内の全
ての行に割り当てられる、等々である。この状態は第2
1図に示されており、ここで最後の併合はFMで指示さ
れている。
た後)最後の併合が行われるとき、部分的併合が起こっ
ていなければ、ストリング番号はグループとして最高領
域内の全ての行に割り当てられ、その後、空でない全て
の領域が割り当てられるまで、2番目に高い領域内の全
ての行に割り当てられる、等々である。この状態は第2
1図に示されており、ここで最後の併合はFMで指示さ
れている。
4)最後の併合か行われる時、部分的併合が起こってい
なければ、手順はもっと複雑である。以下のことが指摘
されなければならない:(a) 1回だけ、部分的併
合が行われる。
なければ、手順はもっと複雑である。以下のことが指摘
されなければならない:(a) 1回だけ、部分的併
合が行われる。
(C) 常に、2番目に高い領域から最高領域へであ
る。
る。
(C) それ以上の、最高領域への併合は行われない
(それは満杯となっている)。
(それは満杯となっている)。
次の手順が行われる。最初に、ストリング番号が、グル
ープとして、最高領域の、最後の行を除いた全ての行へ
割り当てられる。その後、それらは、グループとして、
部分的併合の直後に残っていた2番目に高い領域内の行
に割り当てられる。
ープとして、最高領域の、最後の行を除いた全ての行へ
割り当てられる。その後、それらは、グループとして、
部分的併合の直後に残っていた2番目に高い領域内の行
に割り当てられる。
次に、最高領域の最後の行にストリング番号が割り当て
られる。その後、2番目に高い領域内の、割り当てされ
ずに残っている行にグループとして割り当てが行われる
。最後に、残っている空でない領域にグループとして領
域の下降順に割当が行われる。
られる。その後、2番目に高い領域内の、割り当てされ
ずに残っている行にグループとして割り当てが行われる
。最後に、残っている空でない領域にグループとして領
域の下降順に割当が行われる。
部分的併合後の最善の併合のためのストリング番号割当
を示す第22図において、データは以下の様に表されて
いる: pppppp=部分的併合の結果。
を示す第22図において、データは以下の様に表されて
いる: pppppp=部分的併合の結果。
aaaaaa=その部分的゛併合後に2番目に高い領域
に付加された行。
に付加された行。
bbbbbb=その部分的併合の直後に2番目に高い領
域に残っている行。
域に残っている行。
++++++=他の満杯の行。
リバウンド分類装置強化
分類装置に入る各レコードのタグバイトの最下位ビット
(r順位一ビツトと呼ばれる)は1にセットされる。
(r順位一ビツトと呼ばれる)は1にセットされる。
順位ビットは、同じストリング番号を持ったレコードの
順位を保存するために使われる。順位ビットは次のよう
に取り扱われる(それはIにセットされたリバウンド分
類装置に入ることを想起):(a) 処理要素が垂直
に通過させることを決定し、或いは既に垂直に通過させ
つつあるならば:l)r下方に」通過させられるタグバ
イト(下って来たタグバイト)の順位ビットはlにセッ
トされる。
順位を保存するために使われる。順位ビットは次のよう
に取り扱われる(それはIにセットされたリバウンド分
類装置に入ることを想起):(a) 処理要素が垂直
に通過させることを決定し、或いは既に垂直に通過させ
つつあるならば:l)r下方に」通過させられるタグバ
イト(下って来たタグバイト)の順位ビットはlにセッ
トされる。
2)r上方に」通過させられるタグバイト(昇って来た
タグバイト)の順位ビットは変更されない。
タグバイト)の順位ビットは変更されない。
(b) 処理要素が水平に通過させることを決定し、
或いは既に水平に通過させつつあるならば:I)「下方
に1通過させられるタグバイト(昇って来たタグバイト
)の順位ビットは0にセットされる。
或いは既に水平に通過させつつあるならば:I)「下方
に1通過させられるタグバイト(昇って来たタグバイト
)の順位ビットは0にセットされる。
2)「上方に1通過させられるタグバイト(下ってきた
タグバイト)の順位ビットはlにセットされる。
タグバイト)の順位ビットはlにセットされる。
(c) IER8rN−2J からIER8rN−2
+N−IJへ渡されるタグバイトの順位ビットはlにセ
ットされる。
+N−IJへ渡されるタグバイトの順位ビットはlにセ
ットされる。
この方法の安定性は例によって示すことが出来、その例
では、2個の重複するレコードがあるとする。この説明
のために、重複するレコードは、完全に等しいキー及び
等しいタグを持ったレコードであると仮定する。
では、2個の重複するレコードがあるとする。この説明
のために、重複するレコードは、完全に等しいキー及び
等しいタグを持ったレコードであると仮定する。
第ルコードはER8に入り、第2レコードがER8に入
るまで他のレコードと混じっている。
るまで他のレコードと混じっている。
第2レコードと会うために、第ルコードは上を向いて、
その順位ビットを1にセットされなければならない。E
R3は分類されているので、第2レコードは真っ直ぐに
下方に進んで第ルコードと出会い、その順位ビットをセ
ットされたままに保つ。この二つのレコードは正確に等
しく、順位ビットを含み、よって垂直に移動し続ける。
その順位ビットを1にセットされなければならない。E
R3は分類されているので、第2レコードは真っ直ぐに
下方に進んで第ルコードと出会い、その順位ビットをセ
ットされたままに保つ。この二つのレコードは正確に等
しく、順位ビットを含み、よって垂直に移動し続ける。
追加の重複レコードが無ければ、この重複レコードは、
より大きなレコードを通過し続け、或いは上のレコード
は下方に向きを変え(これは、その順位ビットをクリア
する)、上がってくる次の重複レコードと出会う(この
レコードの順位ビットは、まだセットされたままである
)。これにより、該重複レコードは、より大きなレコー
ドが通り越すか、他の重複レコードが入るか、又はER
8が流されるまでは、ER3が現在の位置を保つ。
より大きなレコードを通過し続け、或いは上のレコード
は下方に向きを変え(これは、その順位ビットをクリア
する)、上がってくる次の重複レコードと出会う(この
レコードの順位ビットは、まだセットされたままである
)。これにより、該重複レコードは、より大きなレコー
ドが通り越すか、他の重複レコードが入るか、又はER
8が流されるまでは、ER3が現在の位置を保つ。
今、示す必要があるのは、重複レコードの、出てゆくグ
ループに入る新しいレコードは該グループの底に落下す
ることである。新しいレコードは、重複レコードの出て
ゆくグループの各レコードと出会うとき、その新しいレ
コードは下降中であり旧レコードは上昇中である。上昇
するレコードは常にその順位ビットがセットされる。垂
直に通過させられる下降するレコードの順位ビットも同
じく常にセットされる。これは、新しいレコードは、該
グループの底に達するまで該コラムを下って垂直に移動
し続けることを意味する。
ループに入る新しいレコードは該グループの底に落下す
ることである。新しいレコードは、重複レコードの出て
ゆくグループの各レコードと出会うとき、その新しいレ
コードは下降中であり旧レコードは上昇中である。上昇
するレコードは常にその順位ビットがセットされる。垂
直に通過させられる下降するレコードの順位ビットも同
じく常にセットされる。これは、新しいレコードは、該
グループの底に達するまで該コラムを下って垂直に移動
し続けることを意味する。
叙上から、垂直に通過する時に順位ビットを変更せず、
そのままにしておく様に規則を変更することが出来ると
結論することが出来る。これにより、下方に向けられた
レコードは、若し下り続けるのであれば、その順位ビッ
トを0にセットされたままに保つことが許されるが、下
方に向けられたレコードは、その下にあるものが全てそ
れより大きいので、決して下降し続けない。これにより
、PE内の論理が単純化される。
そのままにしておく様に規則を変更することが出来ると
結論することが出来る。これにより、下方に向けられた
レコードは、若し下り続けるのであれば、その順位ビッ
トを0にセットされたままに保つことが許されるが、下
方に向けられたレコードは、その下にあるものが全てそ
れより大きいので、決して下降し続けない。これにより
、PE内の論理が単純化される。
順位ビットの、指摘した使用によって、位置を変更する
ことのあるレコードは、それらの初期順位を保存させら
れる。
ことのあるレコードは、それらの初期順位を保存させら
れる。
データ保全性特徴
外部ハードウェアとの協働により、分類加速装置を通過
するデータは、データが該装置に入った点から、出てゆ
くまで、変造に関′して検査される。
するデータは、データが該装置に入った点から、出てゆ
くまで、変造に関′して検査される。
また、レコードを分類又は併合する時には、分類加速装
置の正しい動作と、併合のための入力レコードの正しい
整理とを確実にするために、出力レコードの順位が検査
される。
置の正しい動作と、併合のための入力レコードの正しい
整理とを確実にするために、出力レコードの順位が検査
される。
エラー検出コード
パリティ
分類装置外のデータ経路が、バイトパリティの使用によ
り検査される。バイトパリティは、8ビツトのデータを
9ビツト値で表す方式である。余分のビットは、データ
の出所で計算されたパリティ値を担っている。該データ
からパリティ値を計算し直し、その新しく計算された値
をパリティビットと比較することによって、パリティ検
査が行われる。等しくないことは、該データ中のエラー
を指摘するものである。
り検査される。バイトパリティは、8ビツトのデータを
9ビツト値で表す方式である。余分のビットは、データ
の出所で計算されたパリティ値を担っている。該データ
からパリティ値を計算し直し、その新しく計算された値
をパリティビットと比較することによって、パリティ検
査が行われる。等しくないことは、該データ中のエラー
を指摘するものである。
分類加速装置lOには、上位システムからデータ及びパ
リティが供給される。データが入るとき、該パリティは
好ましくは検査をされる。この時点で検出されたエラー
は、システムパリティエラーとして分類され、その様な
ものとして報告される。
リティが供給される。データが入るとき、該パリティは
好ましくは検査をされる。この時点で検出されたエラー
は、システムパリティエラーとして分類され、その様な
ものとして報告される。
システムバスインターフェースからのデータ経路のパリ
ティ保護は、リバウンド分類装置まで続く。データがリ
バウンド分類装置に入るとき、データパリティが再び検
査され、エラーは内部データエラーとして報告される。
ティ保護は、リバウンド分類装置まで続く。データがリ
バウンド分類装置に入るとき、データパリティが再び検
査され、エラーは内部データエラーとして報告される。
出力時に、リバウンド分類装置はパリティを持ったデー
タを生成する。このデータがシステムバスインタフェー
スに達したとき、そのパリティが検査され、不一致は内
部パリティエラーとして報告される。パリティ値は、シ
ステムバスインターフェースで再生されて、該データと
共に上位システムに渡され、これにより該上位システム
は上記の様にデータパリティを検査することが出来るこ
ととなる(分類順序づけ装置からのデータのためのパリ
ティを提供するためにパリティがシステムバスインター
フェースで再生される)。
タを生成する。このデータがシステムバスインタフェー
スに達したとき、そのパリティが検査され、不一致は内
部パリティエラーとして報告される。パリティ値は、シ
ステムバスインターフェースで再生されて、該データと
共に上位システムに渡され、これにより該上位システム
は上記の様にデータパリティを検査することが出来るこ
ととなる(分類順序づけ装置からのデータのためのパリ
ティを提供するためにパリティがシステムバスインター
フェースで再生される)。
検査合計計算(第23図)
分類加速装置内で、2レベル検査合計方式を使ってデー
タ保全性が保証される。検査合計保護は、多数のバイト
に渡って検査合計を検査するエラー検出方法である。検
査合計は、後に、該検査合計を計算し直して、それを先
に計算されてあった検査合計と比較することにより、検
査される。検査合計は以下の公式により計算される: i=0ないしnについては、検査合計=f(検査合計、
データ〔i〕) 各レコードが分類装置に入るとき、レコードの検査合計
が計算される。この検査合計についての関数(f)は、
第23図との関係で後述するPARブロックを使い、デ
ータバイトのパリティを使用して、モジュール256で
データバイトに加算されるものとして該検査合計又は該
検査合計のビット反転形を選択する。rピット反転」操
作はバイトに対して行われ、これにより、該バイト内の
最上位ビットと最下位ビットとが交換され、上から2番
目のビットと下から2番目のビットとが交換される、等
々であり、結局、全てのビットが異なる位置を持つこと
となる。
タ保全性が保証される。検査合計保護は、多数のバイト
に渡って検査合計を検査するエラー検出方法である。検
査合計は、後に、該検査合計を計算し直して、それを先
に計算されてあった検査合計と比較することにより、検
査される。検査合計は以下の公式により計算される: i=0ないしnについては、検査合計=f(検査合計、
データ〔i〕) 各レコードが分類装置に入るとき、レコードの検査合計
が計算される。この検査合計についての関数(f)は、
第23図との関係で後述するPARブロックを使い、デ
ータバイトのパリティを使用して、モジュール256で
データバイトに加算されるものとして該検査合計又は該
検査合計のビット反転形を選択する。rピット反転」操
作はバイトに対して行われ、これにより、該バイト内の
最上位ビットと最下位ビットとが交換され、上から2番
目のビットと下から2番目のビットとが交換される、等
々であり、結局、全てのビットが異なる位置を持つこと
となる。
これらのレコード検査合計が互いにモジュール256加
算されて、レコードのグループについての検査合計とな
る。
算されて、レコードのグループについての検査合計とな
る。
分類装置を出るレコードは、同様に計算された検査合計
を有する。分類装置がレコードのグループを処理して、
残りのレコードが流し去られた後、入力検査合計及び出
力検査合計が比較される。
を有する。分類装置がレコードのグループを処理して、
残りのレコードが流し去られた後、入力検査合計及び出
力検査合計が比較される。
レコード検査合計のこの単純加算は、結合的性質を持っ
た関数をつくり出す:即ち、レコード検査合計を合計す
る順序は、その結果として得られる検査合計には影響を
与えない。このことは、該分類装置の主な機能がレコー
ドの並べ直しであるので、重要である。
た関数をつくり出す:即ち、レコード検査合計を合計す
る順序は、その結果として得られる検査合計には影響を
与えない。このことは、該分類装置の主な機能がレコー
ドの並べ直しであるので、重要である。
レコード検査合計の計算は結合的ではない。
二つのレコードのバイトnがそれらのバイト間で交換さ
れれば、その二つのレコードの検査合計の和は異なるこ
とになる。
れれば、その二つのレコードの検査合計の和は異なるこ
とになる。
交換されたバイトの例は、次のとおりである:入カニ
0×61
0×62
0×61
0×03
0×31
0×32
X31
0×63
出カニ
0×61
0×62
0×61
0×92
0×31
0×62
0×3■
0×93
この検査合計を求める方式は、分類装置18で2種類の
エラーについて検査を行うことが出来る:即ち、データ
経路での単ビツト故障(記憶要素故障を含む)と、レコ
ード間の不適切に制御されたバイト交換(PE制御不良
)。
エラーについて検査を行うことが出来る:即ち、データ
経路での単ビツト故障(記憶要素故障を含む)と、レコ
ード間の不適切に制御されたバイト交換(PE制御不良
)。
検査合計操作は第23図の論理回路を使って実現される
が、これはEDCNEQ信号をライン270上に生成し
、このラインは、二つの部の出力を比較するNEQ比較
回路272の出力に接続される。第23図に示されてい
る上側の部は、加算回路274の出力に接続された出力
ラッチ273を含み、この加算回路274の一入力は該
ラッチ273の出力に接続されている。
が、これはEDCNEQ信号をライン270上に生成し
、このラインは、二つの部の出力を比較するNEQ比較
回路272の出力に接続される。第23図に示されてい
る上側の部は、加算回路274の出力に接続された出力
ラッチ273を含み、この加算回路274の一入力は該
ラッチ273の出力に接続されている。
加算回路274の他方の入力は、−入力がERECライ
ン160に接続されているAND回路275の出力に接
続されている。AND回路275の他方の入力は、加算
回路278の出力に接続されているラッチ276の出力
に接続されている。加算回路278の一出力はマルチプ
レクサ280の出力に接続されており、該マルチプレク
サの−入力はラッチ276の出力に接続され第2入力は
REVER8E BITSブロック281に接続され
ている。ブロック281は、前述の、バイトのビット反
転を行う。
ン160に接続されているAND回路275の出力に接
続されている。AND回路275の他方の入力は、加算
回路278の出力に接続されているラッチ276の出力
に接続されている。加算回路278の一出力はマルチプ
レクサ280の出力に接続されており、該マルチプレク
サの−入力はラッチ276の出力に接続され第2入力は
REVER8E BITSブロック281に接続され
ている。ブロック281は、前述の、バイトのビット反
転を行う。
マルチプレクサ280はPARブロック282により制
御され、その入力はIBYTEライン283(リバウン
ド分類装置に入るバイト)に接続されており、IBYT
Eは加算器278の第2入力にも接続されている。該論
理の2番目に低い部は1番低いのと実質的に同一であり
、対応する要素はダッシュ記号付番号で示されている。
御され、その入力はIBYTEライン283(リバウン
ド分類装置に入るバイト)に接続されており、IBYT
Eは加算器278の第2入力にも接続されている。該論
理の2番目に低い部は1番低いのと実質的に同一であり
、対応する要素はダッシュ記号付番号で示されている。
差異は、ライン283′が0BYTEライン(リバウン
ド分類装置から出るバイト)であるのに対して、ライン
283はIBYTEラインであることである。
ド分類装置から出るバイト)であるのに対して、ライン
283はIBYTEラインであることである。
分類順序検査装置(第24図ないし第28図)レコード
が分類装置から出るとき、該レコードは、一つのレコー
ドを保持する特別の記憶要素に入る。この記憶要素はシ
フトレジスターの様に振る舞い、該記憶要素の入力及び
出力を検査する比較論理が、分類装置から出るレコード
が正しく整理されていることを確認するのを可能にする
。該比較論理は、出力を除いて、分類装置に使用されて
いる処理要素と同様である。該比較論理の出力は、レコ
ードの減少(r下降1分類について増大)シーケンスが
検出されたことを示す信号である(分類順序エラー)。
が分類装置から出るとき、該レコードは、一つのレコー
ドを保持する特別の記憶要素に入る。この記憶要素はシ
フトレジスターの様に振る舞い、該記憶要素の入力及び
出力を検査する比較論理が、分類装置から出るレコード
が正しく整理されていることを確認するのを可能にする
。該比較論理は、出力を除いて、分類装置に使用されて
いる処理要素と同様である。該比較論理の出力は、レコ
ードの減少(r下降1分類について増大)シーケンスが
検出されたことを示す信号である(分類順序エラー)。
分類順序検査装置は、出力ストリング中のレコードが次
のレコードと同じキーを持っていることを示すrタイ1
ビットを提供するのにも使われる。
のレコードと同じキーを持っていることを示すrタイ1
ビットを提供するのにも使われる。
この「タイjビットは、リバウンド分類装置からの出力
上のタグバイトの最下位ビットである。ユーザーソフト
ウェアは、この「タイ」ビットを利用して、後続の節で
説明するように加速装置IOの容量を越えるキーフィー
ルドに対して分類を行い、或いは重複レコードの分類後
の処理を補助することが出来る。分類加速装置は、普通
は、レコードを出力する前に該レコードからタグバイト
を取り除くが、ユーザーが希望する場合にはタグバイト
をレコードに残したままにしておく様に分類加速装置に
指令することも出来る。
上のタグバイトの最下位ビットである。ユーザーソフト
ウェアは、この「タイ」ビットを利用して、後続の節で
説明するように加速装置IOの容量を越えるキーフィー
ルドに対して分類を行い、或いは重複レコードの分類後
の処理を補助することが出来る。分類加速装置は、普通
は、レコードを出力する前に該レコードからタグバイト
を取り除くが、ユーザーが希望する場合にはタグバイト
をレコードに残したままにしておく様に分類加速装置に
指令することも出来る。
分類順序検査操作は、第24図ないし第28図に示され
ている論理回路により実施される。第27図に示されて
いる回路は出力ライン286を包含し、このライン上に
前述の5RTERR信号が生成される。ライン286は
、−RESETライン290に接続された一入力を有す
るANDゲート289の出力に接続されたラッチ288
の出力に接続されている。ANDゲート289の他方の
入力は、ORゲート282の他方の入力に接続されてお
り、このORゲートの一入力はライン286に接続され
第2入力はANDゲート294に接続されている。AN
Dゲート294は、CHKING信号及びEQUAL信
号をそれぞれ受信するライン295及び297に接続さ
れた入力を有する。ANDゲート294への第3入力は
マルチプレクサに接続されている。該マルチプレクサの
一入力はrA<BJであり、他方はrA>B」である。
ている論理回路により実施される。第27図に示されて
いる回路は出力ライン286を包含し、このライン上に
前述の5RTERR信号が生成される。ライン286は
、−RESETライン290に接続された一入力を有す
るANDゲート289の出力に接続されたラッチ288
の出力に接続されている。ANDゲート289の他方の
入力は、ORゲート282の他方の入力に接続されてお
り、このORゲートの一入力はライン286に接続され
第2入力はANDゲート294に接続されている。AN
Dゲート294は、CHKING信号及びEQUAL信
号をそれぞれ受信するライン295及び297に接続さ
れた入力を有する。ANDゲート294への第3入力は
マルチプレクサに接続されている。該マルチプレクサの
一入力はrA<BJであり、他方はrA>B」である。
該マルチプレクサは、ASCENDING及びETAG
を入力とするORゲートにより制御される。
を入力とするORゲートにより制御される。
該分類順序検査装置の回路は、更に、第24図、第25
図、第26図及び第28図に示されている論理回路を含
む。第24図おおいて、比較回路298が設けられてお
り、この回路は、前述のB〈A信号をライン296上に
生成し、且つ、A=B信号及びA<B信号をライン29
9及び300上に生成する。比較回路298の一入力は
UROライン302に直結され、比較回路298の他方
の入力はカスケード接続された2個のI ER8要素3
03及び304を通じてライン302に接続されている
。これらは、一つのレコードブロックを保持する前述の
特別の記憶要素を形成する。
図、第26図及び第28図に示されている論理回路を含
む。第24図おおいて、比較回路298が設けられてお
り、この回路は、前述のB〈A信号をライン296上に
生成し、且つ、A=B信号及びA<B信号をライン29
9及び300上に生成する。比較回路298の一入力は
UROライン302に直結され、比較回路298の他方
の入力はカスケード接続された2個のI ER8要素3
03及び304を通じてライン302に接続されている
。これらは、一つのレコードブロックを保持する前述の
特別の記憶要素を形成する。
第25図において、ライン295上のCHKING信号
はラッチ306により生成され、該ラッチはANDゲー
ト308の出力に接続されており、このゲートの一入力
にはライン309上の−NEWSTREAMOUT信号
が加えられるが、この−NEWSTREAMOUT信号
は、第11図に示されているパイプライン回路の生成す
るNEWSTREAMOUT信号の逆である。ゲート3
08の第2入力はORゲート310の出力に接続されて
おり、このORゲートの一入力はERECライン160
に接続され第2入力はライン295に接続されている。
はラッチ306により生成され、該ラッチはANDゲー
ト308の出力に接続されており、このゲートの一入力
にはライン309上の−NEWSTREAMOUT信号
が加えられるが、この−NEWSTREAMOUT信号
は、第11図に示されているパイプライン回路の生成す
るNEWSTREAMOUT信号の逆である。ゲート3
08の第2入力はORゲート310の出力に接続されて
おり、このORゲートの一入力はERECライン160
に接続され第2入力はライン295に接続されている。
第26図において、ライン297上のEQUAL信号は
、ORゲート314の出力に接続されたラッチ312の
出力に生成され、このORゲートの一入力はERECラ
イン160に接続され第2入力はANDゲート316の
出力に接続されている。
、ORゲート314の出力に接続されたラッチ312の
出力に生成され、このORゲートの一入力はERECラ
イン160に接続され第2入力はANDゲート316の
出力に接続されている。
ANDゲート316の一入力はA冨Bライン299(第
24図)に接続され、他方はライン297に接続されて
いる。
24図)に接続され、他方はライン297に接続されて
いる。
第28図は、ライン318上に生成されるTIHD信号
を生成するのに使われる回路を示し、このライン318
はANDゲート320の出力に接続されたラッチ回路3
19の出力に接続されており、このANDゲートは、C
HKINGライン295、第1O図の回路からのETA
Gライン174及びEQUALライン297に接続され
た入力を有する。
を生成するのに使われる回路を示し、このライン318
はANDゲート320の出力に接続されたラッチ回路3
19の出力に接続されており、このANDゲートは、C
HKINGライン295、第1O図の回路からのETA
Gライン174及びEQUALライン297に接続され
た入力を有する。
分類加速装置の容量を越えること
加速装置10は、使用可能な作業空間メモリーがユーザ
ーのファイル中のレコードを分類するのに充分でないと
きにも使うことの出来るものである。非常にありふれた
2種類の場合に対処するアルゴリズムが設けられる。第
1の場合は、レコードの総数を分類するのに充分な作業
空間メモリーが使用できない時である。第2の場合は、
レコード及び/又はキーの長さが分類加速装置の許容す
る最大長さを上回るときである。
ーのファイル中のレコードを分類するのに充分でないと
きにも使うことの出来るものである。非常にありふれた
2種類の場合に対処するアルゴリズムが設けられる。第
1の場合は、レコードの総数を分類するのに充分な作業
空間メモリーが使用できない時である。第2の場合は、
レコード及び/又はキーの長さが分類加速装置の許容す
る最大長さを上回るときである。
使用可能な作業空間メモリーを越えることユーザーレコ
ードを分類するのに充分な作業空間メモリーを使用でき
ないときには、ユーザーは、「外部併合1と呼ばれるも
のを使用することが出来る。これは単に、分類操作を完
了するのに要する各併合パスの入力及び出力のためにレ
コード記憶装置をユーザーか管理しなければならないこ
とを意味する。
ードを分類するのに充分な作業空間メモリーを使用でき
ないときには、ユーザーは、「外部併合1と呼ばれるも
のを使用することが出来る。これは単に、分類操作を完
了するのに要する各併合パスの入力及び出力のためにレ
コード記憶装置をユーザーか管理しなければならないこ
とを意味する。
始めに、ユーザーは、分類加速装置IOを使用して、使
用可能な作業空間メモリーに収まる、なるべく多数のレ
コードを分類する。この数を計算する必要はない。分類
加速装置が満杯になったことを示す指示が出されるまで
、単にレコードが分類加速装置に送られる。レコードの
これらの分類済みストリングは、その後、ユーザーが使
用することの出来る記憶装置内に置かれる(これらは、
例えばディスクに書き込まれてもよい)。全てのレコー
ドが分類され終わったとき、即ち、16個の分類済みス
トリングが作られたとき、ユーザーは、分類加速装置I
Oを合併装置として使用して、その分類済みストリング
を併合する。これは、バッファー付き入力及び出力で行
うことが出来、従って、分類加速装置か非常に僅かなメ
モリーを使用できればよい。この併合から得られる分類
済みストリングを再び記憶装置内に置くことが出来る。
用可能な作業空間メモリーに収まる、なるべく多数のレ
コードを分類する。この数を計算する必要はない。分類
加速装置が満杯になったことを示す指示が出されるまで
、単にレコードが分類加速装置に送られる。レコードの
これらの分類済みストリングは、その後、ユーザーが使
用することの出来る記憶装置内に置かれる(これらは、
例えばディスクに書き込まれてもよい)。全てのレコー
ドが分類され終わったとき、即ち、16個の分類済みス
トリングが作られたとき、ユーザーは、分類加速装置I
Oを合併装置として使用して、その分類済みストリング
を併合する。これは、バッファー付き入力及び出力で行
うことが出来、従って、分類加速装置か非常に僅かなメ
モリーを使用できればよい。この併合から得られる分類
済みストリングを再び記憶装置内に置くことが出来る。
このアルゴリズムを繰り返し使うことが出来、これは追
加のレコード記憶装置の利用可能性によってのみ限定さ
れる。
加のレコード記憶装置の利用可能性によってのみ限定さ
れる。
最大レコード長を越えること
レコード長か、分類加速装置が許容する最大長を越える
場合が2種類ある。
場合が2種類ある。
第1の、最も単純な場合は、レコード全体が大き過ぎる
が、キーと、元のレコードへのポインタとの合計が収ま
るときである。この場合、元のキーと、これに続く、元
のレコードを指すポインタを包含するバイトとから成る
新しいレコードが分類加速装置に入力される。分類が完
了したとき、ユーザーは、単に、該ポインタを使って元
のレコードの内容へアクセスして、その分類済みレコー
ドを処理する。
が、キーと、元のレコードへのポインタとの合計が収ま
るときである。この場合、元のキーと、これに続く、元
のレコードを指すポインタを包含するバイトとから成る
新しいレコードが分類加速装置に入力される。分類が完
了したとき、ユーザーは、単に、該ポインタを使って元
のレコードの内容へアクセスして、その分類済みレコー
ドを処理する。
第2の場合は、レコードが大き過ぎて、キーと、元のレ
コードを指すポインタとの合計が収まらない時に起こる
。この場合、ユーザーは新しいレコードを再び入力する
が、この時にはユーザーは、収まるだけの、なるべく多
数のキーバイトだけを入力し、ポインタのための余地を
端部に残しておく。これらの、先端を切ったキーでの分
類時には、ユーザー「タイ」ビットを検査できるように
タグバイトが出力されるべき旨の要求が好ましい。
コードを指すポインタとの合計が収まらない時に起こる
。この場合、ユーザーは新しいレコードを再び入力する
が、この時にはユーザーは、収まるだけの、なるべく多
数のキーバイトだけを入力し、ポインタのための余地を
端部に残しておく。これらの、先端を切ったキーでの分
類時には、ユーザー「タイ」ビットを検査できるように
タグバイトが出力されるべき旨の要求が好ましい。
多くの場合、この様にして与えられる先端を切られたキ
ーは、レコードの分類された順序を判断するのに充分な
程度に独特である。重複する、先を切られたキーを持っ
たレコードのグループの位置を突き止めるには、rタイ
jビットを検査するだけでよい。このレコードのグルー
プは、そのとき、元のレコードからの残りのキーバイト
のうちの、収まるだけの数のキーバイトを新しいキーと
して使うことによって、更に分類することが出来る。重
複するキーが報告されなくなるか、又は全てのキーバイ
トが処理され終わるまで、重複する先を切られたキーを
持ったレコードの全てのグループに対して、このプロセ
スを反復することが出来る。
ーは、レコードの分類された順序を判断するのに充分な
程度に独特である。重複する、先を切られたキーを持っ
たレコードのグループの位置を突き止めるには、rタイ
jビットを検査するだけでよい。このレコードのグルー
プは、そのとき、元のレコードからの残りのキーバイト
のうちの、収まるだけの数のキーバイトを新しいキーと
して使うことによって、更に分類することが出来る。重
複するキーが報告されなくなるか、又は全てのキーバイ
トが処理され終わるまで、重複する先を切られたキーを
持ったレコードの全てのグループに対して、このプロセ
スを反復することが出来る。
このプロセスは、より大きな最大レコード長を持った分
類加速装置を使うよりも早く作用する可能性があること
を指摘しなければならない。その理由は、分類加速装置
の速度がR)!eN*LOG16(N)に比例し、ここ
でRは分類加速装置に与えられるレコードの長さであり
、Nはレコードの個数である。より小さなRの値(最大
のRにより制限される)を使えば、レコードの最初のパ
ス分類は、より高速となる。後続のパスがあるならば、
そのパスは、同様に、遥かに小さなNの値を使って重複
を解明するであろうが、これは遥かに高速であろう。
類加速装置を使うよりも早く作用する可能性があること
を指摘しなければならない。その理由は、分類加速装置
の速度がR)!eN*LOG16(N)に比例し、ここ
でRは分類加速装置に与えられるレコードの長さであり
、Nはレコードの個数である。より小さなRの値(最大
のRにより制限される)を使えば、レコードの最初のパ
ス分類は、より高速となる。後続のパスがあるならば、
そのパスは、同様に、遥かに小さなNの値を使って重複
を解明するであろうが、これは遥かに高速であろう。
本発明の新規な思想の範囲から逸脱せずに修正、変形を
行うことが出来ることが理解されよう。
行うことが出来ることが理解されよう。
第1図は、本発明に従って構成された分類加速装置の略
ブロック図であり、上位コンピュータ及び上位メモリー
に接続されて示されている。 第2図は、該加速装置の強化されたリバウンド分類装置
に送られる、入力レコードから作られたレコードの形式
を示す。 第3図は、本発明の加速装置のリバウンド分類加速装置
を単純化した一般的形で示すと共に、これに付随する記
憶回路及びパイプライン回路を示す略図である。 第4A図及び第4B図は、第3図に示されている分類装
置等の分類装置を通るデータの流れの単純化した例を示
す。 第5図は、第1図の分類加速装置に使用された、強化さ
れたリバウンド分類装置及びこれに付随する記憶回路の
構成を詳しく示す略図である。 第6図は、第5図に示されているリバウンド分類装置の
処理要素の制御回路の論理回路を示す。 第7図は、第1図及び第5図に示されている記憶回路と
共に使用することの出来るRAMインデックス回路の一
つの形を示す。 第8図は、第1図及び第5図に示されている記憶回路と
共に使用することの出来るRAMインデックス回路の他
の形を示す。 第9図は、レコードタイミング信号を供給する、第1図
の加速装置のレコード制御回路の一部を示す。 第10図は、タグタイミング信号を供給する、第1図の
加速装置のレコード制御回路の他の部分を示す。 第11図は、第1図及び第5図に示されているパイプラ
イン制御回路の詳細を示す。 第12図は、第1図の加速装置の分類順序づけ装置のス
トリング選択論理回路のタグ選択回路を示す。 第13図ないし第17図は、第1図の加速装置のタグ先
読み論理回路のいろいろな部分を示す。 第18図は、第1図の分類加速装置の使用する中間記憶
装置の組織の例を示す。 第19図ないし第22図は、最適の併合操作を得るため
に使用されるストリング番号割り当てを示す。 第23図は、第1図の強化されたリバウンド分類装置の
インターフェースの検査合計論理回路を示す。 第24図ないし第27図は、第1図の強化されたリバウ
ンド分類装置のインターフェースの分類順序検査装置の
論理回路の部分を示す。 第28図は、連続する二つのレコードが同じキーを有す
ることを示す信号を生成するために使われる、分類順序
検査装置の論理回路の追加の部分を示す。 1e 1 2
ブロック図であり、上位コンピュータ及び上位メモリー
に接続されて示されている。 第2図は、該加速装置の強化されたリバウンド分類装置
に送られる、入力レコードから作られたレコードの形式
を示す。 第3図は、本発明の加速装置のリバウンド分類加速装置
を単純化した一般的形で示すと共に、これに付随する記
憶回路及びパイプライン回路を示す略図である。 第4A図及び第4B図は、第3図に示されている分類装
置等の分類装置を通るデータの流れの単純化した例を示
す。 第5図は、第1図の分類加速装置に使用された、強化さ
れたリバウンド分類装置及びこれに付随する記憶回路の
構成を詳しく示す略図である。 第6図は、第5図に示されているリバウンド分類装置の
処理要素の制御回路の論理回路を示す。 第7図は、第1図及び第5図に示されている記憶回路と
共に使用することの出来るRAMインデックス回路の一
つの形を示す。 第8図は、第1図及び第5図に示されている記憶回路と
共に使用することの出来るRAMインデックス回路の他
の形を示す。 第9図は、レコードタイミング信号を供給する、第1図
の加速装置のレコード制御回路の一部を示す。 第10図は、タグタイミング信号を供給する、第1図の
加速装置のレコード制御回路の他の部分を示す。 第11図は、第1図及び第5図に示されているパイプラ
イン制御回路の詳細を示す。 第12図は、第1図の加速装置の分類順序づけ装置のス
トリング選択論理回路のタグ選択回路を示す。 第13図ないし第17図は、第1図の加速装置のタグ先
読み論理回路のいろいろな部分を示す。 第18図は、第1図の分類加速装置の使用する中間記憶
装置の組織の例を示す。 第19図ないし第22図は、最適の併合操作を得るため
に使用されるストリング番号割り当てを示す。 第23図は、第1図の強化されたリバウンド分類装置の
インターフェースの検査合計論理回路を示す。 第24図ないし第27図は、第1図の強化されたリバウ
ンド分類装置のインターフェースの分類順序検査装置の
論理回路の部分を示す。 第28図は、連続する二つのレコードが同じキーを有す
ることを示す信号を生成するために使われる、分類順序
検査装置の論理回路の追加の部分を示す。 1e 1 2
Claims (9)
- (1)分類手段を含む分類システムであって、この分類
手段は、分類されるべきレコードを受け取る入力手段と
、前記分類手段から分類済みストリングを出力する出力
手段と、レコード記憶手段と、N個のレコードの1グル
ープのレコードが入力されると共に、前記1グループの
N−1個のレコードの入力後に、N個のレコードの前記
1グループのうちの最小のレコードを出力し、次に前記
1グループの残りのN−1個のレコードを出力してN個
のレコードの分類済みストリングを形成する複数の処理
要素とから成っており、前記処理要素の各々は、前記入
力手段から前記記憶手段へのレコードデータ転送、前記
記憶手段内でのレコードデータ転送及び前記出力手段へ
のレコードデータ転送を行う転送手段と、レコードを比
較して対応レコードデータ転送を行わせる比較手段とを
包含しており、前記処理要素の各々は、同順のレコード
が前記分類手段への入力と同じ順に前記分類手段から出
力されることとなる様に前記レコードデータ転送を制御
することを特徴とする分類システム。 - (2)前記入力手段は、1状態にセットされた順位ビッ
トを有するレコードを最初に入力し、前記処理要素は前
記順位ビットの状態に従って操作されることを特徴とす
る請求項1に記載のシステム。 - (3)前記記憶手段は、前記処理要素の各々に対応する
第1及び第2の記憶部分を包含しており、前記処理要素
の各々は、第1モードにおいては、前記第1及び第2の
記憶部分から前記第1及び第2の出力へレコードデータ
を転送し、次に前記第1及び第2の入力から前記第1及
び第2の記憶部分へ転送し、第2モードにおいては、前
記第1入力から前記第2出力へ且つ前記第2記憶部分か
ら前記第1記憶部分へレコードデータを転送し、その後
に前記第1記憶部分から前記第1出力へ且つ前記第2入
力部分から前記第2記憶部分へレコードデータを転送す
る様になっており、前記第1及び第2のモードでの動作
は、前記分類手段から出力されるべきレコードの順序を
前記分類手段への入力と同じ順序に保存する様に制御さ
れることを特徴とする請求項1に記載の分類システム。 - (4)前記処理要素のうちの第1処理要素の前記第1入
力は前記入力手段に接続されており、残りの処理要素は
前記第1処理要素に続いてカスケード関係に接続されて
おり、前記の残りの処理要素の各々の前記第1入力は、
その前の処理要素の前記第1出力に接続されており、前
記処理要素のうちの最後の処理要素の前記第1出力はそ
の前記第2入力に接続されており、前記第1処理要素の
前記第2出力は前記出力手段に接続されており、前記残
りの処理要素の各々の前記第2出力は、その前の処理要
素の前記第2入力に接続されており、これにより、前記
処理要素の全ての第1モードでの動作で、レコードデー
タは前記処理要素を通じて最後の前記処理要素に逐次転
送され、次に前記処理要素を通じて逆向きに前記出力手
段へ逐次転送されることを特徴とする請求項3に記載の
システム。 - (5)前記入力手段は1状態にセットされた順位ビット
を有するレコードを最初に入力し、前記処理要素は、前
記順位ビットの状態に従って操作されて、前記ビットが
前記1状態にある時には前記第1モードで動作し続ける
と共に前記順位ビットを変更せずに通過させ、前記第2
モードで動作している時には前記入力手段から遠ざかる
レコードの順位ビットの状態を前記1状態の反対の状態
にセットすると共に、前記出力手段に向かって移動する
レコードと最後の前記処理要素により通過させられるレ
コードとの順位ビットを前記1状態にセットする様に働
くことを特徴とする請求項4に記載のシステム。 - (6)限られた数のレコードのグループが入力されると
共に、分類された順のレコードのストリングとしてレコ
ードの前記グループを出力する様になっている分類手段
と共に使用する併合システムであって、各々のストリン
グ内で分類された順に並んでいるレコードの複数のスト
リングを受け取って一時記憶する記憶手段と、レコード
の前記ストリングを前記分類手段に転送する転送手段と
、前記転送手段を制御すると共に併合モードで動作して
前記ストリングのレコードを前記分類手段に供給すると
共に前記分類手段により前記複数のストリングを併合し
て、前記ストリングの前記レコードの全てを分類された
順に包含する、より大きな単一のストリングにする分類
制御順序づけ手段と、から成っており、前記分類制御順
序づけ手段は等しいキーを持ったレコードについて入力
順序と同一の出力順序を得る様に働くことを特徴とする
併合システム。 - (7)前記分類手段はレコードを逐次分類し、等しいキ
ーを持った前記レコードは、前記分類手段に入ったのと
同じ相対的順序で前記分類手段から出てゆくことを特徴
とする6に記載の併合システム。 - (8)併合操作時に、等しいキーを有するレコードは前
記分類手段に入ったのと同じ順序に並べられることとな
る様に前記併合システムはレコードの前記グループを併
合することを特徴とする6に記載の併合システム。 - (9)分類されるべきレコードを受け取り、1グループ
のN個のレコードを処理し、前記1グループのN−1個
のレコードの入力後、N個のレコードの前記1グループ
のうちの最小のレコードを出力し、前記1グループの残
りのN−1個のレコードを出力してN個のレコードの分
類済みストリングを形成し、前記処理要素は、同順のレ
コードを、受信されたのと同じ順序で出力させるステッ
プから成ることを特徴とするレコード分類方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US375053 | 1989-06-30 | ||
US07/375,053 US5206947A (en) | 1989-06-30 | 1989-06-30 | Stable sorting for a sort accelerator |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH03129521A true JPH03129521A (ja) | 1991-06-03 |
JPH0776908B2 JPH0776908B2 (ja) | 1995-08-16 |
Family
ID=23479304
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2172506A Expired - Fee Related JPH0776908B2 (ja) | 1989-06-30 | 1990-06-29 | 分類加速装置の安定分類 |
Country Status (2)
Country | Link |
---|---|
US (1) | US5206947A (ja) |
JP (1) | JPH0776908B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010047098A (ja) * | 2008-08-21 | 2010-03-04 | Kanto Auto Works Ltd | 雨水ガイド部材を備えた自動車 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5396622A (en) * | 1991-12-23 | 1995-03-07 | International Business Machines Corporation | Efficient radix sorting system employing a dynamic branch table |
JP3352786B2 (ja) * | 1993-11-01 | 2002-12-03 | 三菱電機株式会社 | プロセッサ回路 |
US5440736A (en) * | 1993-11-24 | 1995-08-08 | Digital Equipment Corporation | Sorter for records having different amounts of data |
US6388683B1 (en) | 1996-06-25 | 2002-05-14 | International Business Machines Corporation | Object oriented data arranger graphical user interface |
JP3640580B2 (ja) * | 1999-11-11 | 2005-04-20 | 富士通株式会社 | ソート・マージ処理装置 |
US7102544B1 (en) * | 2005-05-31 | 2006-09-05 | Altera Corporation | Method and system for improving memory interface data integrity in PLDs |
US7565349B2 (en) * | 2005-11-10 | 2009-07-21 | International Business Machines Corporation | Method for computing frequency distribution for many fields in one pass in parallel |
US10901692B2 (en) | 2018-07-12 | 2021-01-26 | Texas Instruments Incorporated | Bitonic sorting accelerator |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4090249A (en) * | 1976-11-26 | 1978-05-16 | International Business Machines Corporation | Apparatus for sorting records in overlap relation with record loading and extraction |
JPS6142031A (ja) * | 1984-08-03 | 1986-02-28 | Nippon Telegr & Teleph Corp <Ntt> | ソ−ト処理装置 |
JPS6324325A (ja) * | 1986-04-09 | 1988-02-01 | ハワ−ド・ビイ・デミユ−ス | デ−タ項目を分類する方法および分類装置 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3713107A (en) * | 1972-04-03 | 1973-01-23 | Ncr | Firmware sort processor system |
US3997880A (en) * | 1975-03-07 | 1976-12-14 | International Business Machines Corporation | Apparatus and machine implementable method for the dynamic rearrangement of plural bit equal-length records |
US4064556A (en) * | 1975-06-23 | 1977-12-20 | Sperry Rand Corporation | Packed loop memory with data manipulation capabilities |
US4031520A (en) * | 1975-12-22 | 1977-06-21 | The Singer Company | Multistage sorter having pushdown stacks with concurrent access to interstage buffer memories for arranging an input list into numerical order |
US4078260A (en) * | 1976-05-12 | 1978-03-07 | International Business Machines Corporation | Apparatus for transposition sorting of equal length records in overlap relation with record loading and extraction |
US4464732A (en) * | 1982-03-19 | 1984-08-07 | Honeywell Inc. | Prioritized sorting system |
US4520456A (en) * | 1983-02-18 | 1985-05-28 | International Business Machines Corporation | Dual reciprocating pipelined sorter |
US4809158A (en) * | 1985-10-23 | 1989-02-28 | Mccauley Peter B | Sorting method and apparatus |
US5111465A (en) * | 1989-06-30 | 1992-05-05 | Digital Equipment Corporation | Data integrity features for a sort accelerator |
US5142687A (en) * | 1989-06-30 | 1992-08-25 | Digital Equipment Corporation | Sort accelerator with rebound sorter repeatedly merging sorted strings |
-
1989
- 1989-06-30 US US07/375,053 patent/US5206947A/en not_active Expired - Lifetime
-
1990
- 1990-06-29 JP JP2172506A patent/JPH0776908B2/ja not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4090249A (en) * | 1976-11-26 | 1978-05-16 | International Business Machines Corporation | Apparatus for sorting records in overlap relation with record loading and extraction |
JPS6142031A (ja) * | 1984-08-03 | 1986-02-28 | Nippon Telegr & Teleph Corp <Ntt> | ソ−ト処理装置 |
JPS6324325A (ja) * | 1986-04-09 | 1988-02-01 | ハワ−ド・ビイ・デミユ−ス | デ−タ項目を分類する方法および分類装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010047098A (ja) * | 2008-08-21 | 2010-03-04 | Kanto Auto Works Ltd | 雨水ガイド部材を備えた自動車 |
Also Published As
Publication number | Publication date |
---|---|
US5206947A (en) | 1993-04-27 |
JPH0776908B2 (ja) | 1995-08-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH03129426A (ja) | 分類加速装置のための速度及びメモリー制御 | |
US5452451A (en) | System for plural-string search with a parallel collation of a first partition of each string followed by finite automata matching of second partitions | |
JPH03116323A (ja) | リバウンド分類装置を併合装置として使用する分類加速装置 | |
JPH03129427A (ja) | 分類加速装置のデータ保全性特徴 | |
JP2668438B2 (ja) | データ検索装置 | |
US5060143A (en) | System for string searching including parallel comparison of candidate data block-by-block | |
US5185886A (en) | Multiple record group rebound sorter | |
JPH04247571A (ja) | データベースレコード処理装置 | |
EP0119319A2 (en) | Sort mechanism for stored digital data | |
US20200401553A1 (en) | Devices for time division multiplexing of state machine engine signals | |
JPH03129521A (ja) | 分類加速装置の安定分類 | |
US3514760A (en) | Sorting array ii | |
US4162535A (en) | Triangular high speed I/O system for content addressable memories | |
US5903780A (en) | Data sorting device having multi-input comparator comparing data input from latch register and key value storage devices | |
JPS6142031A (ja) | ソ−ト処理装置 | |
Hollaar | Specialized merge processor networks for combining sorted lists | |
JPH03129520A (ja) | 分類加速装置の制御 | |
Lee | ALTEP—A cellular processor for high-speed pattern matching | |
JP2880199B2 (ja) | 記号列検索方法および検索装置 | |
JPH073655B2 (ja) | 整理編集プロセツサ | |
Kamiya et al. | A hardware pipeline algorithm for relational database operation | |
Hollaar | A design for a list merging network | |
Muraszkiewicz | Cellular array architecture for relational database implementation | |
JPH0317780A (ja) | 記号列検索方法および装置 | |
Parhami | The mixed serial/parallel approach to VLSI search processors |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080816 Year of fee payment: 13 |
|
LAPS | Cancellation because of no payment of annual fees |