JPH0370824B2 - - Google Patents

Info

Publication number
JPH0370824B2
JPH0370824B2 JP59183742A JP18374284A JPH0370824B2 JP H0370824 B2 JPH0370824 B2 JP H0370824B2 JP 59183742 A JP59183742 A JP 59183742A JP 18374284 A JP18374284 A JP 18374284A JP H0370824 B2 JPH0370824 B2 JP H0370824B2
Authority
JP
Japan
Prior art keywords
register
record
data
output
buffer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP59183742A
Other languages
Japanese (ja)
Other versions
JPS6162139A (en
Inventor
Susumu Matsuda
Hiroshi Sakai
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
National Institute of Advanced Industrial Science and Technology AIST
Original Assignee
Agency of Industrial Science and Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Agency of Industrial Science and Technology filed Critical Agency of Industrial Science and Technology
Priority to JP59183742A priority Critical patent/JPS6162139A/en
Publication of JPS6162139A publication Critical patent/JPS6162139A/en
Publication of JPH0370824B2 publication Critical patent/JPH0370824B2/ja
Granted legal-status Critical Current

Links

Description

【発明の詳細な説明】 [発明の技術分野] この発明は、特に関係データベース処理で必要
となる関係演算に好適するデータ処理装置に関す
る。
DETAILED DESCRIPTION OF THE INVENTION [Technical Field of the Invention] The present invention relates to a data processing device particularly suitable for relational operations required in relational database processing.

[発明の技術的背景とその問題点] 関係データベースにおれる主たる処理の1つ
に、2つのリレーシヨン間の関係演算がある。関
係演算としては、結合(Join)、制約
(Restriction)、射影(Projection)などが知られ
ている。この種の関係演算では、その出力は必ず
しも元のリレーシヨンのレコードの全ての属性を
必要とせず、その1部のみでよい場合が多い。そ
こで、レコード中の特定フイールドのみを高速で
切出すハードウエア装置の実現が要望されてい
た。
[Technical background of the invention and its problems] One of the main processes in a relational database is a relational operation between two relations. Known relational operations include join, restriction, and projection. In this type of relational operation, the output does not necessarily require all the attributes of the original relation record, but often only a part of them. Therefore, there has been a demand for a hardware device that can cut out only specific fields in a record at high speed.

[発明の目的] この発明は上記事情に鑑みてなされたものでそ
の目的は、特に関係演算で扱われるレコード中の
所望のフイールドだけを高速で選択出力できるデ
ータ処理装置を提供することにある。
[Object of the Invention] The present invention has been made in view of the above-mentioned circumstances, and its object is to provide a data processing device that can selectively output only desired fields in records that are particularly handled in relational operations at high speed.

[発明の概要] この発明では、1レコード分のデータを格納す
るレコードバツフアが設けられる。このレコード
バツフアに格納されている1レコード分のデータ
の外部への出力は、読出し制御部によつて行なわ
れる。また、この発明では、外部出力対象レコー
ドの第1の切出し位置を指定する第1切出しポイ
ンタと、上記外部出力対象レコードの第2の切出
し位置を指定する第2切出しポインタとが設けら
れる。第1切出しポインタの内容は、第1比較器
により、読出し制御部からレコードバツフアに提
示される読出しアドレスと比較される。一方、第
2切出しポインタの内容は、第2比較器により、
上記読出しアドレスと比較される。第1および第
2比較器の比較結果は、切出し制御部に導かれ
る。切出し制御部は、第1および第2比較器の比
較結果に応じ、読出し制御部の動作を制御する。
これにより、1レコード中の指定されたフイール
ドのみが外部に選択出力される。
[Summary of the Invention] In the present invention, a record buffer is provided to store data for one record. The data for one record stored in this record buffer is output to the outside by the read control section. Further, in the present invention, a first cutout pointer that specifies a first cutout position of the external output target record and a second cutout pointer that specifies the second cutout position of the external output target record are provided. The contents of the first extraction pointer are compared by the first comparator with the read address presented to the record buffer from the read control unit. On the other hand, the contents of the second extraction pointer are determined by the second comparator,
It is compared with the above read address. The comparison results of the first and second comparators are led to the extraction control section. The extraction control section controls the operation of the readout control section according to the comparison results of the first and second comparators.
As a result, only the specified field in one record is selectively output to the outside.

[発明の実施例] 第1図はこの発明の一実施例に係るマージヤ1
0の構成を示し、第2図は第1図のマージヤ10
を適用する関係データベースエンジン(以下、
RDBEと称する)の構成を示す。第2図のRDBE
において、11はRDBE全体を制御するCPU、
12は2ウエイ・マージソート方式を適用するソ
ータ(ソート処理装置)である。ソータ12は12
段のソート・セル12−0〜12−11からな
り、最大4Kレコードのソート処理が行なえるよ
うになつている。13はソータ12の入力側に設
けられ、ソート処理において比較対象となるキー
フイールドをレコードの先頭に移動するなどのソ
ート前処理を行なうINアライナ(ソート前処理
装置)、14はINアライナ13のソート結果が正
しいか否かを監視するソート・チエツカである。
マージヤ10は、ソート・チエツカ14に接続さ
れ、ソータ12によりソート処理されている、1
つ乃至2つのリレーシヨン間で、関係演算を高速
に実行するように構成されている。INアライナ
13、ソータ12、ソート・チエツカ14、およ
びマージヤ10は、ソート処理と、関係演算処理
を連続して、入力データに同期したパイプライン
処理を行う専用ハードウエアであるエンジン・コ
ア15を構成する。16,17はRDBEと図示せ
ぬ階層構造メモリサブシステム(以下、HMと称
する)とのインタフエースを制御するHMアダプ
タ(以下、HMAと称する)である。HMA16
は、エンジン・コア15へのデータの入力ポー
ト、HMA17はエンジン・コア15からのデー
タの出力ポートとして動作する。18はCPU1
1の入出力バス、19はDMAバスである。入出
力バス18には、マージヤ10を始めとするエン
ジン・コア15の各構成要素、CPU11、およ
びHMA16,17が接続され、DMAバス19
には、CPU11およびHMA16,17が接続さ
れる。
[Embodiment of the invention] FIG. 1 shows a merger 1 according to an embodiment of the invention.
0, and FIG. 2 shows the configuration of merger 10 in FIG.
A relational database engine that applies
RDBE). RDBE in Figure 2
, 11 is a CPU that controls the entire RDBE,
12 is a sorter (sort processing device) that applies a two-way merge sort method. Sorter 12 is 12
It consists of tiered sort cells 12-0 to 12-11, and is capable of sorting up to 4K records. 13 is an IN aligner (sort preprocessing device) provided on the input side of the sorter 12 and performs presort processing such as moving key fields to be compared to the beginning of records in sort processing; 14 is a sorting unit for the IN aligner 13; It is a sort checker that monitors whether the results are correct or not.
The merger 10 is connected to the sort checker 14 and is sorted by the sorter 12.
The system is configured to perform relational operations between one or two relations at high speed. The IN aligner 13, sorter 12, sort checker 14, and merger 10 constitute an engine core 15, which is dedicated hardware that performs pipeline processing synchronized with input data by sequentially performing sort processing and relational calculation processing. do. 16 and 17 are HM adapters (hereinafter referred to as HMA) that control the interface between the RDBE and a hierarchical memory subsystem (hereinafter referred to as HM), not shown. HMA16
operates as an input port for data to the engine core 15, and HMA 17 operates as an output port for data from the engine core 15. 18 is CPU1
1 is an input/output bus, and 19 is a DMA bus. Each component of the engine core 15 including the merger 10, the CPU 11, and the HMAs 16 and 17 are connected to the input/output bus 18, and the DMA bus 19
A CPU 11 and HMAs 16 and 17 are connected to the .

マージヤ10は、第1図に示すように、演算部
OPPと、出力選択部OSPと、これら演算部OPP
および出力選択部OSPを制御する制御部CNTP
とからなる。
As shown in FIG. 1, the merger 10 includes a calculation unit
OPP, output selection part OSP, and these calculation part OPP
and the control unit CNTP that controls the output selection unit OSP
It consists of.

演算部OPPにおいて、20Uは第1のリレー
シヨンを格納するU(Upper)バツフア(以下、
UBと称する)、20Lは第2のリレーシヨンを
格納するL(Lower)バツフア(以下、LBと称す
る)である。21UはUB20Uに書込むデータ
を保持する入力レジスタ(INUレジスタ)、21
LはLB20Lに書込むデータを保持する入力レ
ジスタ(INLレジスタ)である、22UはUB2
0Uからの読出しデータを保持するレジスタ
(UPRレジスタ)、22LはLB20Lからの読出
しデータを保持するレジスタ(LOWレジスタ)
である。23はUPRレジスタ22UおよびLOW
レジスタ22Lの各内容を比較する比較器(以
下、CMPと称する)、24UはUPRレジスタ2
2Uの内容を出力選択部OSP側へ伝達する出力
レジスタ(OTUレジスタ)、24LはLOWレジ
スタ22Lの内容を出力選択部OSP側へ伝達す
る出力レジスタ(OTLレジスタ)である。25
UはUB20Uに対する書込みポインタとしての
書込みアドレスレジスタ(WAUレジスタ)、2
5LはLB20Lに対する書込みポインタとして
の書込みアドレスレジスタ(WALレジスタ)で
ある。26UはUB20Uに対する読出しポイン
タしての読出しアドレスレジスタ(RAUレジス
タ)、26LはLB20Lに対する読出しポインタ
としての読出しアドレスレジスタ(RALレジス
タ)である。WAUレジスタ25U、WALレジ
スタ25L、RAUレジスタ26U、およびRAL
レジスタ26Lは、カウンタ機能を有する。27
UはRAUレジスタ26Uの内容を保持するバツ
クアツプレジスタ(BUUレジスタ)、27Lは
RALレジスタ26Lの内容を保持するバツクア
ツプレジスタ(BULレジスタ)である。28U
はWAUレジスタ25UおよびRAUレジスタ2
6Uの各内容を比較する比較器(CMP)、28L
はWALレジスタ25LおよびRALレジスタ26
Lの各内容を比較する比較器(CMP)である。
29UはWAUレジスタ25UまたはRAUレジ
スタ26Uの内容をUB20Uに対するメモリア
ドレスとして選択するマルチプレクサ、29Lは
WALレジスタ25LまたはRALレジスタ26L
の内容をLB20Lに対するメモリアドレスとし
て選択するマルチプレクサである。
In the arithmetic unit OPP, 20U is a U (Upper) buffer (hereinafter referred to as U) that stores the first relation.
20L is an L (Lower) buffer (hereinafter referred to as LB) that stores the second relation. 21U is an input register (INU register) that holds data to be written to UB20U, 21
L is an input register (INL register) that holds data to be written to LB20L, 22U is UB2
The register that holds the read data from 0U (UPR register), 22L is the register that holds the read data from LB20L (LOW register)
It is. 23 is UPR register 22U and LOW
A comparator (hereinafter referred to as CMP) that compares the contents of register 22L, 24U is UPR register 2
An output register (OTU register) transmits the contents of 2U to the output selection unit OSP side, and an output register (OTL register) 24L transmits the contents of the LOW register 22L to the output selection unit OSP side. 25
U is a write address register (WAU register) as a write pointer to UB20U, 2
5L is a write address register (WAL register) as a write pointer for LB20L. 26U is a read address register (RAU register) as a read pointer for UB20U, and 26L is a read address register (RAL register) as a read pointer for LB20L. WAU register 25U, WAL register 25L, RAU register 26U, and RAL
The register 26L has a counter function. 27
U is a backup register (BUU register) that holds the contents of RAU register 26U, and 27L is a
This is a backup register (BUL register) that holds the contents of the RAL register 26L. 28U
is WAU register 25U and RAU register 2
Comparator (CMP) that compares each content of 6U, 28L
is WAL register 25L and RAL register 26
This is a comparator (CMP) that compares each content of L.
29U is a multiplexer that selects the contents of WAU register 25U or RAU register 26U as the memory address for UB20U, and 29L is
WAL register 25L or RAL register 26L
This is a multiplexer that selects the contents of as the memory address for LB20L.

第1図の出力選択部OSPにおいて、30Uは
UB20Uからの1レコード分のデータを格納す
るUレコードバツフア(URB30)、30Lは
LB20Lからの1レコード分のデータを格納す
るLレコードバツフア(LRB30)である。3
1UはOTUレジスタ24Uの内容をURB30U
に対する書込みデータとして保持する入力レジス
タ(INURレジスタ)、31LはOTLレジスタ2
4Lの内容をLRB30Lに対する書込みデータ
として保持する入力レジスタ(INLRレジスタ)
である。32はURB30UまたはLRB30Lか
らの読出しデータを選択するマルチプレクサ、3
3はマルチプレクサ32からの選択出力データを
ラツチする出力レジスタ(ROUTレジスタ)で
ある。34UはURB30Uに対する書込みポイ
ンタとしての書込みアドレスレジスタ(WAUR
レジスタ)、34LはLRB30Lに対する書込み
ポインタとしての書込みアドレスレジスタ
(WALRレジスタ)である。35UはURB30
Uに対する読出しポインタとしての読出しアドレ
スレジスタ(RAURレジスタ)、35LはLRB3
0Lに対する読出しポインタとしての読出しアド
レスレジスタ(RALRレジスタ)である。
WAURレジスタ34U、WALRレジスタ34
L、RAURレジスタ35U、およびRALRレジ
スタ35Lは、カウンタ機能を有する。36Uは
WAURレジスタ34UまたはRAURレジスタ3
5Uの内容をURB30Uに対するメモリアドレ
スとして選択するマルチプレクサ、36Lは
WALRレジスタ34LまたはRALRレジスタ3
5Lの内容をLRB30Lに対するメモリアドレ
スとして選択するマルチプレクサである。
In the output selection section OSP in Figure 1, 30U is
The U record buffer (URB30) and 30L that store one record of data from UB20U are
This is an L record buffer (LRB30) that stores one record worth of data from LB20L. 3
1U stores the contents of OTU register 24U as URB30U.
Input register (INUR register) held as write data for 31L is OTL register 2
Input register (INLR register) that holds the contents of 4L as write data to LRB30L
It is. 32 is a multiplexer for selecting read data from URB30U or LRB30L; 3
3 is an output register (ROUT register) that latches selected output data from the multiplexer 32. 34U is a write address register (WAUR) as a write pointer for URB30U.
34L is a write address register (WALR register) as a write pointer to the LRB 30L. 35U is URB30
Read address register (RAUR register) as read pointer for U, 35L is LRB3
This is a read address register (RALR register) as a read pointer for 0L.
WAUR register 34U, WALR register 34
L, RAUR register 35U, and RALR register 35L have a counter function. 36U is
WAUR register 34U or RAUR register 3
The multiplexer 36L selects the contents of 5U as the memory address for URB 30U.
WALR register 34L or RALR register 3
This is a multiplexer that selects the contents of LRB 5L as a memory address for LRB 30L.

第1図の制御部CNTPにおいて、38は制御
部CNTPの中心をなす主制御部、39は主制御
部38内に設けられた8ビツトのマージ演算レジ
スタ(MOPレジスタ)である。M0Pレジスタ3
9には、第3図に示すように、マージ演算の指定
を行なう5ビツトのマージ演算指定コード
(MRG−OPコード)、ソート順を指定するソート
順指定ビツト(AS/DSビツト)、およびUB20
UまたはLB20Lを指定するバツフア指定ビツ
ト(U/Lビツト)を含むマージ演算指定情報が
設定される。この例では、AS/DS=0で昇順
が、AS/DS=1で降順が指定される。また、
U/L=0でUB20Uが、U/L=1でLB2
0Lが指定される。
In the control unit CNTP shown in FIG. 1, 38 is a main control unit forming the center of the control unit CNTP, and 39 is an 8-bit merge operation register (MOP register) provided within the main control unit 38. M0P register 3
As shown in Figure 3, 9 contains a 5-bit merge operation specification code (MRG-OP code) that specifies the merge operation, a sort order specification bit (AS/DS bit) that specifies the sort order, and UB20.
Merge operation designation information including a buffer designation bit (U/L bit) designating U or LB20L is set. In this example, AS/DS=0 specifies ascending order, and AS/DS=1 specifies descending order. Also,
UB20U when U/L=0, LB2 when U/L=1
0L is specified.

40はCPU11に対するインタフエースであ
る入出力インタフエース、41は入出力インタフ
エース40に設けられたコマンドレジスタ
(CMDレジスタ)である。CMDレジスタ41に
は、CPU11からの指定により、8ビツトのコ
マンドデータが設定される。このコマンドデータ
の第0ビツトは、第4図に示すように、レジスタ
指定ビツト(REG.INDビツト)である。REG.
INDビツトは、コマンドデータの第0〜7ビツ
トが、マージヤ10内のレジスタ(のレジスタ番
号)を指定するデータとして用いられる(REG.
IND=1の場合)か、或はコマンドデータ本来
の動作指定データとして用いられる(REG.IND
=0の場合)かを指定する。REG.IND=0の場
合、第4図に示すように、コマンドデータの第2
ビツトはエンジン・コア15のリセットを指定す
るリセット指定ビツト(RSTビツト)、第3ビツ
トはエンジン・コア15の起動を指定するエンジ
ン起動指定ビツト(ENG.GOビツト)、第4ビツ
トはマージヤ10のみの起動を指定するマージヤ
起動指定ビツト(MRG.GOビツト)、第6ビツト
はRAUレジスタ26Uおよび後述するFUEMP
52Uのクリアを指定するUリトライ指定ビツト
(URTRYビツト)、第7ビツトはRALレジスタ
26Lおよび後述するFLEMP52Lのクリアを
指定するLリトライ指定ビツト(LRTRYビツ
ト)として用いられる。なお、上記した各ビツト
の動作指定は、論理“1”で有効である。
40 is an input/output interface which is an interface to the CPU 11, and 41 is a command register (CMD register) provided in the input/output interface 40. 8-bit command data is set in the CMD register 41 according to a designation from the CPU 11. The 0th bit of this command data is a register designation bit (REG.IND bit), as shown in FIG. REG.
The IND bits are the 0th to 7th bits of command data that are used as data to specify the register (register number) in the merger 10 (REG.
IND=1) or used as the original operation specification data of the command data (REG.IND
= 0). When REG.IND=0, as shown in Figure 4, the second
The bit is a reset specification bit (RST bit) that specifies the reset of the engine core 15, the third bit is the engine start specification bit (ENG.GO bit) that specifies the startup of the engine core 15, and the fourth bit is only for the merger 10. The merger start specification bit (MRG.GO bit) specifies the start of
The seventh bit is used as an L retry designation bit (LRTRY bit) to designate clearing of the RAL register 26L and FLEMP 52L, which will be described later. Note that the operation designation of each bit described above is valid at logic "1".

再び第1図を参照すると、42はUB20Uま
たはLB20Lに格納されるリレーシヨン(スト
リーム)の総レコード数TRNを示すトータルレ
コード数レジスタ(TRNレジスタ)、43Uは
UB20Uに格納されるリレーシヨンのレコード
長RSUを示すレコードサイズレジスタ(RSUレ
ジスタ)、43LはLB20Lに格納されるリレー
シヨンのレコード長RSLを示すレコードサイズ
レジスタ(RSLレジスタ)である。44はRSU
レジスタ43UまたはRSLレジスタ43Lの内
容を選択するマルチプレクサ、45はマルチプレ
クサ44から選択出力データを初期値としてロー
ドし、UB20UまたはLB20Lへの書込み時
にカウントダウンされるライトカウンタ(WRC
カウンタ)、46はTRNレジスタ42の内容から
初期値としてロードし、WRCカウンタ45から
のボロー信号に応じてカウントダウンされるレコ
ード数カウンタ(STCカウンタ)である。47
はマージ演算において比較対象となる、レコード
内キーフイールド長(有効データ長VDL)を示
す有効データ長レジスタ(VDLレジスタ)、48
はVDLレジスタ47の内容を初期値としてロー
ドし、LB20U(およびLB20L)からのデー
タ読出し時にカウントダウンされる有効データ長
カウンタ(VCTカウンタ)である。MOPレジス
タ39、CMDレジスタ41、TRNレジスタ4
2、RSUレジスタ43U、RSLレジスタ43L、
およびVDLレジスタ47Lは、第2図のCPU1
1により、予めセットアツプ可能である。
Referring again to FIG. 1, 42 is a total record number register (TRN register) indicating the total number of records (TRN) of relations (streams) stored in the UB20U or LB20L, and 43U is a total record number register (TRN register).
A record size register (RSU register) indicates the record length RSU of the relation stored in the UB 20U, and a record size register (RSL register) 43L indicates the record length RSL of the relation stored in the LB 20L. 44 is RSU
A multiplexer 45 that selects the contents of the register 43U or RSL register 43L loads the selected output data from the multiplexer 44 as an initial value, and a write counter (WRC) that counts down when writing to the UB20U or LB20L.
46 is a record number counter (STC counter) that is loaded as an initial value from the contents of the TRN register 42 and counted down in response to a borrow signal from the WRC counter 45. 47
is a valid data length register (VDL register) indicating the length of the key field in the record (valid data length VDL) to be compared in the merge operation, 48
is a valid data length counter (VCT counter) that loads the contents of the VDL register 47 as an initial value and counts down when reading data from LB 20U (and LB 20L). MOP register 39, CMD register 41, TRN register 4
2. RSU register 43U, RSL register 43L,
and VDL register 47L are CPU1 in FIG.
1, it can be set up in advance.

49UはRSUレジスタ43Uの内容を初期値
してロードし、UB20Uからデータ読出し時に
カウントダウンされるリードカウンタ(RCUカ
ウンタ)、49LはRSLレジスタ43Lの内容を
初期値してロードし、LB20Lからのデータ読
出し時にカウントダウンされるリードカウンタ
(RCLカウンタ)である。50UはRCUカウンタ
49Uからのボロー信号に応じてセツトされ、
UB20Uからの読出しデータが1レコードの最
後のデータであることを示すレコードエンドフラ
グ(FUEフラグ)、50LはRCLカウンタ49L
からのボロー信号に応じてセツトされ、LB20
Lからの読出しデータが1レコードの最後のデー
タであることを示すレコードエンドフラグ
(FLEフラグ)である。51UはUB20Uへの
書込みが完了したことを示す書込み完了フラグ
(FUWEDフラグ)、51LはLB20Lへの書込
みが完了したことを示す書込み完了フラグ
(FLWEDフラグ)である。52UはUB20Uが
空状態となつたことを示すエンプテイフラグ
(FUEMPフラグ)、52LはLB20Lが空状態
となつたことを示すエンプテイフラグ(FLEMP
フラグ)である。53UはUB20Uからのデー
タの外部出力を指示する出力指示フラグ(FUO
フラグ)、53LはLB20Lからのデータの外部
出力を指示する出力指示フラグ(FLOフラグ)
である。
49U is a read counter (RCU counter) that loads the contents of the RSU register 43U as an initial value and counts down when reading data from the UB20U. 49L loads the contents of the RSL register 43L as an initial value and reads data from LB20L. This is a read counter (RCL counter) that counts down at the same time. 50U is set in response to a borrow signal from RCU counter 49U,
Record end flag (FUE flag) indicating that the read data from UB20U is the last data of one record, 50L is RCL counter 49L
LB20 is set in response to a borrow signal from LB20.
This is a record end flag (FLE flag) indicating that the data read from L is the last data of one record. 51U is a write completion flag (FUWED flag) indicating that writing to UB 20U is completed, and 51L is a write completion flag (FLWED flag) indicating that writing to LB 20L is completed. 52U is an empty flag (FUEMP flag) indicating that UB20U is empty, and 52L is an empty flag (FLEMP flag) indicating that LB20L is empty.
flag). 53U is an output instruction flag (FUO) that instructs external output of data from UB20U.
flag), 53L is an output instruction flag (FLO flag) that instructs external output of data from LB20L.
It is.

54UはURB30Uからの読出しレコードに
対する第1の切出し位置を指定する切出しポイン
タとしてのレジスタ(OSUAレジスタ)、54L
はLRB30Lからの読出しレコードに対する第
1の切出し位置を指定する切出しポインタとして
のレジスタ(OSLAレジスタ)、55UはURB3
0Uからの読出しレコードに対する第2の切出し
位置を指定する切出しポインタとしてのレジスタ
(OSUBレジスタ)、55LはLRB30Lからの
読出しレコードに対する第2の切出し位置を指定
する切出しポインタとしてのレジスタ(OSLBレ
ジスタ)である。56はURB30UまたはLRB
30Lからのデータ読出し時にカウントアツプさ
れるカウンタ(CTRカウンタ)、57UはCTR
カウンタ56およびOSUAレジスタ54Uの各
内容を比較する比較器(CMP)、57LはCTR
カウンタ56およびOSLAレジスタ54Lの各内
容を比較する比較器(CMP)である。58Uは
CTRカウンタ56およびOSUBレジスタ55U
の各内容を比較する比較器(CMP)、58Lは
CTRカウンタ56およびOSLBレジスタ55L
の各内容を比較する比較器(CMP)、59Uは
CTRカウンタ56およびRSUレジスタ43Uの
各内容を比較する比較器(CMP)、59Lは
CTRカウンタ56およびRSLレジスタ43Lの
各内容を比較する比較器(CMP)である。
OSUAレジスタ54U、OSUBレジスタ55U、
OSLAレジスタ54L、OSLBレジスタ55L
は、第2図のCPU11により、予めセツトアツ
プ可能である。
54U is a register (OSUA register) as an extraction pointer that specifies the first extraction position for the record read from the URB 30U, 54L
is a register (OSLA register) as an extraction pointer that specifies the first extraction position for the read record from LRB30L, and 55U is URB3.
55L is a register (OSLB register) that serves as an extraction pointer that specifies the second extraction position for the record read from LRB 30L. be. 56 is URB30U or LRB
A counter (CTR counter) that counts up when reading data from 30L, 57U is CTR
Comparator (CMP) that compares the contents of counter 56 and OSUA register 54U, 57L is CTR
This is a comparator (CMP) that compares the contents of the counter 56 and the OSLA register 54L. 58U is
CTR counter 56 and OSUB register 55U
Comparator (CMP), 58L, which compares each content of
CTR counter 56 and OSLB register 55L
59U is a comparator (CMP) that compares each content of
A comparator (CMP) 59L compares the contents of the CTR counter 56 and the RSU register 43U.
This is a comparator (CMP) that compares the contents of the CTR counter 56 and the RSL register 43L.
OSUA register 54U, OSUB register 55U,
OSLA register 54L, OSLB register 55L
can be set up in advance by the CPU 11 shown in FIG.

次に、第1図の主制御部38の構成を、第5図
を参照して説明する。第5図において、60は
FUEフラグ50UおよびFLEフラグ50L、更
にはCMDレジスタ41などに応じて各種制御信
号を発生するタイミングを決定する制御タイミン
グ発生回路、61はMOPレジスタ39および
CMDレジスタ41の内容に応じ、制御タイミン
グ発生回路60からのスタート指示のタイミング
で各部をクリアするクリア回路である。62は
CMP23の比較結果およびVCTカウンタ48か
らの出力により、UB20UおよびLB20Lか
らの各1レコードのキーフイールドの比較結果を
確定する比較制御部、63は第2図のCPU11
に対する割込みを発生する割込み制御部である。
64は外部へのデータの出力制御を行なう出力制
御部、65はMOPレジスタ39の内容および比
較制御部62の比較確定結果に応じ、制御タイミ
ング発生回路60からの指示に従つてタイミング
で、UB20Uの読出し制御、LB20Lの読出
し制御、割込み制御、および出力制御などのため
の各種制御信号を発生する制御信号発生回路であ
る。
Next, the configuration of the main control section 38 shown in FIG. 1 will be explained with reference to FIG. 5. In Figure 5, 60 is
A control timing generation circuit 61 determines the timing of generating various control signals according to the FUE flag 50U and FLE flag 50L, as well as the CMD register 41, etc., and 61 is the MOP register 39 and
This is a clearing circuit that clears each section according to the contents of the CMD register 41 at the timing of a start instruction from the control timing generation circuit 60. 62 is
A comparison control unit 63 is the CPU 11 shown in FIG.
This is an interrupt control unit that generates interrupts for.
Reference numeral 64 indicates an output control unit that controls the output of data to the outside, and 65 indicates an output control unit that controls the output of the UB20U at a timing according to an instruction from the control timing generation circuit 60 according to the content of the MOP register 39 and the comparison result of the comparison control unit 62. This is a control signal generation circuit that generates various control signals for read control, LB20L read control, interrupt control, output control, etc.

次に、第5図の割込み制御部63周辺の構成
を、第6図を参照して説明する。第6図におい
て、66はMOPレジスタ39からのU/Lビツ
トが入力されるインバータ、67Uはインバータ
66の出力とSTCカウンタ46からのボロー信
号とが入力されるアンドゲート(A)、67Lは
MOPレジスタ39からのU/LビツトとSTCカ
ウンタ46からボロー信号とが入力されるアンド
ーゲート(A)である。FUWEDフラグ51Uは
A67U、FLWEDフラグ51LはA67Lから
の出力信号に応じ、セツトされる。68Uは
CMP28Uの比較結果(一致検出信号)および
FUWEDフラグ51Uからの出力信号が入力され
るアンドゲート(A)、68LはCMP28Lの比
較結果(一致検出信号)およびFLWEDフラグ5
1Lからの出力信号が入力されるアンドゲート
(A)である。69UはA68Uからの出力信号
を制御タイミング発生回路60からの指定タイミ
ングでゲートするゲート、69LはA68Lから
の出力信号を制御タイミング発生回路60からの
指定タイミングでゲートするゲートである。
FUEMPフラグ52Uはゲート69U、FLEMP
フラグ52Lはゲート69Lからの出力信号に応
じ、セットされる。70はMOPレジスタ39の
内容(マージ演算指定情報)をデコードするデコ
ーダである。デコーダ70は、マージ演算指定情
報がUB20Uへの第1のリレーシヨンのロード
を指定している場合に、ロード信号71Uを、
LB20Lへの第2のリレーシヨンのロードを指
定している場合に、ロード信号71Lを出力す
る。
Next, the configuration around the interrupt control section 63 in FIG. 5 will be explained with reference to FIG. 6. In FIG. 6, 66 is an inverter to which the U/L bit from the MOP register 39 is input, 67U is an AND gate (A) to which the output of the inverter 66 and the borrow signal from the STC counter 46 are input, and 67L is an
This is an AND gate (A) to which the U/L bit from the MOP register 39 and the borrow signal from the STC counter 46 are input. The FUWED flag 51U is set according to the output signal from A67U, and the FLWED flag 51L is set according to the output signal from A67L. 68U is
CMP28U comparison results (match detection signal) and
AND gate (A) to which the output signal from FUWED flag 51U is input, 68L is the comparison result (match detection signal) of CMP28L and FLWED flag 5
This is an AND gate (A) into which the output signal from 1L is input. 69U is a gate that gates the output signal from A68U at the specified timing from the control timing generation circuit 60, and 69L is a gate that gates the output signal from A68L at the specified timing from the control timing generation circuit 60.
FUEMP flag 52U is gate 69U, FLEMP
Flag 52L is set in response to the output signal from gate 69L. A decoder 70 decodes the contents of the MOP register 39 (merge operation designation information). When the merge operation specification information specifies loading the first relation to the UB 20U, the decoder 70 sends the load signal 71U to
If loading of the second relation to LB 20L is specified, a load signal 71L is output.

72Uはデコーダ70からのロード信号71U
とFUWEDフラグ51Uからの出力信号が入力さ
れるアンドーゲート(A)、72Lはデコーダ7
0からのロード信号71LとFLWEDフラグ51
Lからの出力信号が入力されるアンドゲート
(A)である。73Uは制御信号発生回路65か
らの割込み許可信号74UとFUEMPフラグ52
Uからの出力信号とが入力されるアンドゲート
(A)、73Lは制御信号発生回路65からの割込
み許可信号74LとFLEMPフラグ52Lからの
出力信号とが入力されるアンドゲート(A)であ
る。割込み許可信号74U,74Lは、MOPレ
ジスタ39の内容に応じて制御信号発生回路65
から発生される。例えば、SORT(ソート)系演
算やRESTRICT(制約)系演算が指定さている
場合には、割込み許可信号74U,74Lが出力
され、JOIN(結合)系演算が指定されている場
合には割込み許可信号74Uだけが指定される。
また、PASS(パス)系演算が指定されている場
合には、U/L=0(即ちUB20U指定)であ
れば割込み許可信号74Uが、U/L=1(即ち
LB20L指定)であれば割込み許可信号74L
が出力される。75はA72U,A72L,A7
3U、およびA73Lからの各出力信号が入力さ
れるオアゲート(OR)、76はOR75からの出
力信号に応じて割込み発生する割込みを発生回路
である。
72U is the load signal 71U from the decoder 70
and the AND gate (A) to which the output signal from the FUWED flag 51U is input, 72L is the decoder 7
Load signal 71L from 0 and FLWED flag 51
This is an AND gate (A) into which the output signal from L is input. 73U is the interrupt permission signal 74U from the control signal generation circuit 65 and the FUEMP flag 52
The AND gate (A) 73L receives the output signal from the control signal generating circuit 65 and the output signal from the FLEMP flag 52L. The interrupt permission signals 74U and 74L are sent to the control signal generation circuit 65 according to the contents of the MOP register 39.
generated from. For example, when a SORT type operation or a RESTRICT type operation is specified, interrupt enable signals 74U and 74L are output, and when a JOIN type operation is specified, an interrupt enable signal is output. Only 74U is specified.
Furthermore, when a PASS type operation is specified, if U/L=0 (i.e., UB20U specified), the interrupt enable signal 74U is set to U/L=1 (i.e., UB20U is specified).
LB20L specification), interrupt enable signal 74L
is output. 75 is A72U, A72L, A7
An OR gate (OR) 76 to which each output signal from 3U and A73L is input is an interrupt generation circuit that generates an interrupt in response to an output signal from OR75.

次に、第5図のクリア回路61周辺の構造を、
第7図を参照して説明する。第7図において、7
7はMOPレジスタ39からのU/Lビツトが入
力されるインバータ、78Uはインバータ77か
らの出力信号とCMDレジスタ41に保持された
コマンドデータ中のENG.GOビツトとが入力さ
れるアンドゲート(A)、78LはMOPレジスタ
39からのU/Lビツトと上記ENG.GOビツト
とが入力されるアンドゲート(A)である。79
UはA78Uからの出力信号とCMDレジスタ4
1からのRSTビツトとが入力されるオアゲート
(OR)、79LはA78Lからの出力信号と上記
RSTビツトとが入力されるオアゲート(OR)で
ある。80UはOR79Uからの出力信号とCMD
レジスタ41からのURTRYビツトとが入力され
るオアゲート(OR)、80LはOR79Lからの
出力信号とCMDレジスタ41からのLRTRYビ
ツトとが入力されるオアゲート(OR)である。
81Uは、OR79Uからの出力信号を、WAU
レジスタ25UおよびFUWEDフラグ51Uに対
するクリア信号として、制御タイミング発生回路
60からの指定タイミングでゲートするゲート、
81Lは、OR79Lからの出力信号を、WAL
レジスタ25LおよびFLWEDフラグ51Lに対
するクリア信号として、制御タイミング発生回路
60からの指定タイミングでゲートするゲートで
ある。82Uは、OR80Uからの出力信号を、
RAUレジスタ26UおよびFUEMPフラグ52
Uに対するクリア信号として、制御タイミング発
生回路60からの指定タイミングでゲートするゲ
ート、82Lは、OR80Lからの出力信号を、
RALレジスタ26LおよびFLEMPフラグ52L
に対するクリア信号として、制御タイミング発生
回路60からの指定タイミングでゲートするゲー
トである。
Next, the structure around the clear circuit 61 in FIG.
This will be explained with reference to FIG. In Figure 7, 7
7 is an inverter to which the U/L bit from the MOP register 39 is input, and 78U is an AND gate (A) to which the output signal from the inverter 77 and the ENG.GO bit in the command data held in the CMD register 41 are input. ), 78L is an AND gate (A) to which the U/L bit from the MOP register 39 and the ENG.GO bit are input. 79
U is the output signal from A78U and CMD register 4
OR gate (OR) into which the RST bit from 1 is input, 79L is the output signal from A78L and the above
This is an OR gate (OR) into which the RST bit is input. 80U is the output signal from OR79U and CMD
The OR gate (OR) 80L receives the URTRY bit from the register 41 and is an OR gate (OR) to which the output signal from the OR 79L and the LRTRY bit from the CMD register 41 are input.
81U converts the output signal from OR79U into WAU
A gate that gates at a specified timing from the control timing generation circuit 60 as a clear signal for the register 25U and the FUWED flag 51U;
81L converts the output signal from OR79L to WAL
This gate is gated at a specified timing from the control timing generation circuit 60 as a clear signal for the register 25L and FLWED flag 51L. 82U receives the output signal from OR80U,
RAU register 26U and FUEMP flag 52
As a clear signal for U, the gate 82L gates at the specified timing from the control timing generation circuit 60 receives the output signal from OR80L.
RAL register 26L and FLEMP flag 52L
This is a gate that is gated at a specified timing from the control timing generation circuit 60 as a clear signal for the control timing generation circuit 60.

次に、第5図の出力制御部64周辺の構成を、
第8図を参照して説明する。第8図において、8
3はFUOフラグ53U,53Lの状態に応じて
URB30U,30Lからのデータの出力順を制
御する出力シーケンス制御部、84UはURB3
0Uからのデータ読出しを制御するURB読出し
制御部、84LはLRB30Lからのデータ読出
しを制御するLRB読出し制御部である。URB読
出し制御部84U,84Lは、出力シーケンス制
御部83からの読出し開始指示に応じてレコード
読出し制御動作を開始し、第1図のCMP59U,
59Lの比較結果(一致検出信号)に応じて読出
し制御動作を停止する。また、FUOフラグ53
U,53Lは、制御信号発生回路65からの出力
指示信号85U,85Lに応じてセットする。8
6はURB読出し制御部84U,84Lからの
(R0UTレジスタ33用の)ストローブ信号87
U,87Lが入力されるオアゲート、88はOR
86からの出力信号をゲートしてROUTレジス
タ33に出力するゲート、89は切出し制御部で
ある。切出し制御部89は、出力シーケンス制御
部83からの指示に従い、CMP57U,58U
またはCMP57L,58Lの比較結果を監視し、
その監視結果に応じてゲート88を制御する。
Next, the configuration around the output control section 64 in FIG. 5 is as follows.
This will be explained with reference to FIG. In Figure 8, 8
3 depends on the status of FUO flags 53U and 53L.
Output sequence control unit that controls the output order of data from URB30U, 30L, 84U is URB3
A URB read control unit 84L controls data read from 0U, and an LRB read control unit 84L controls data read from LRB 30L. The URB readout control units 84U and 84L start record readout control operations in response to a readout start instruction from the output sequence control unit 83, and the CMP59U and 84L shown in FIG.
The read control operation is stopped according to the comparison result (coincidence detection signal) of 59L. Also, FUO flag 53
U and 53L are set according to output instruction signals 85U and 85L from control signal generation circuit 65. 8
6 is a strobe signal 87 (for the R0UT register 33) from the URB readout control units 84U and 84L.
OR gate where U and 87L are input, 88 is OR
A gate 89 gates the output signal from 86 and outputs it to the ROUT register 33, and 89 is an extraction control section. The cutting control unit 89 follows the instructions from the output sequence control unit 83 to
Or monitor the comparison results of CMP57L and 58L,
The gate 88 is controlled according to the monitoring result.

次に、上記した構成の動作を、第2図に示すソ
ータ12の容量を越えるソート処理(これを外部
ソートと称する)の場合を例にとり、第9図乃至
第13図を参照して説明する。
Next, the operation of the above configuration will be explained with reference to FIGS. 9 to 13, taking as an example the case of sorting that exceeds the capacity of the sorter 12 shown in FIG. 2 (this is referred to as external sort). .

まず、外部ソートの概念について説明する。第
2図のRDBEでは、ソータ12の容量を越えるリ
レーシヨン(ストリーム、フアイル)のソート
は、外部ソート機能を利用して行なわれる。この
際、ソート対象となるリレーシヨンは、図示せぬ
HMから読出され、HMA16、INアライナ13
を介してソータ12に導かれる。そして、ソータ
12により、そのバツフアサイズ単位にソートさ
れた後、ソート・チエツカ14を介してマージヤ
10に導かれ、同マージヤ10により、更に大き
な単位でソートされる。上記した外部ソートの手
順の概略を第9図に示す。即ち、ソート対象とな
る原リレーシヨンをA1とすると、外部ソートの
手順の概略は、以下の通りとなる。なお、ソータ
12のバツフアサイズ(ソータ12の容量)とマ
ージヤ10内のUB20U,20Lのバツフアサ
イズは等しいものとする。
First, the concept of external sorting will be explained. In the RDBE shown in FIG. 2, relations (streams, files) exceeding the capacity of the sorter 12 are sorted using an external sorting function. At this time, the relations to be sorted are not shown.
Read from HM, HMA16, IN aligner 13
and is guided to the sorter 12 via. After being sorted into buffer size units by the sorter 12, they are led to the merger 10 via the sort checker 14, where they are sorted into larger units. FIG. 9 shows an outline of the above-described external sorting procedure. That is, assuming that the original relation to be sorted is A1, the outline of the external sorting procedure is as follows. It is assumed that the buffer size of the sorter 12 (capacity of the sorter 12) and the buffer size of the UBs 20U and 20L in the merger 10 are equal.

原リレーシヨンA1を、ソータ12の容量単
位に分割し、A11〜A1n(この例ではn=
4)を得る。
The original relation A1 is divided into capacity units of the sorter 12, A11 to A1n (in this example, n=
4) is obtained.

A11〜A14を、ソータ12によりそれぞ
れソートし、A21〜A24を得る。
A11 to A14 are respectively sorted by the sorter 12 to obtain A21 to A24.

A21,A22をマージヤ10によりソート
し、A31,32を得る。同様に、A23,A
24からA33,A34を得る。
A21 and A22 are sorted by the merger 10 to obtain A31 and A32. Similarly, A23,A
A33 and A34 are obtained from 24.

A31,A32とA33,A34とを2組の
リレーシヨンとしてマージヤ10によりソート
し、最終的に原リレーシヨンA1がソートされ
たリレーシヨンA4を得る。
A31, A32 and A33, A34 are sorted as two sets of relations by the merger 10, and finally a relation A4 obtained by sorting the original relation A1 is obtained.

このように、ソータ12の容量を越えるリレー
シヨンのソートは、まずソート対象リレーシヨン
を、ソータ12の容量の単位に分割し、マージヤ
10を用いて2組の分割リレーシヨンごとの外部
ソートを行なうことから始められる。この動作が
繰返されると、最終的に、サブリレーシヨンS1
1,S12,……S1nからなる第1のリレーシ
ヨンS1(第9図の例では、A31,A32から
なるリレーシヨン)とサブリレーシヨンS21,
S22……S2mからなる第2のリレーシヨンS
2(第9図の例では、A33,A34からなるリ
レーシヨン)とが得られる.明らかなように、リ
レーシヨンS1,S2内では、それぞれソートが
完了している。そして、第1のリレーシヨンS1
および第2のリレーシヨンS2を、マージヤ10
の外部ソート機能によつてマージすることによ
り、第10図に示すように、サブリレーシヨンS
31,S32……S3l(l=n+m)からなる
出力(ソート済み)リレーシヨンS3が得られ
る。
In this way, to sort relations that exceed the capacity of the sorter 12, first divide the relations to be sorted into units of the capacity of the sorter 12, and use the merger 10 to perform external sorting for each of the two sets of divided relations. You can start with this. When this operation is repeated, finally the sub-relation S1
1, S12, .
S22...Second relation S consisting of S2m
2 (in the example of FIG. 9, a relation consisting of A33 and A34) is obtained. As is clear, sorting has been completed within relations S1 and S2. And the first relation S1
and the second relation S2, merger 10
As shown in Figure 10, by merging using the external sort function of
An output (sorted) relation S3 consisting of 31, S32...S3l (l=n+m) is obtained.

次に、上記した外部ソートの具体的動作につい
て、n=m=3の場合、即ちサブリレーシヨンS
11,S12,S13からなる第1のリレーシヨ
ンS1、およびサブリレーシヨンS21,S2
2,S23からなる第2のリレーシヨンS2に対
する外部ソートの場合を例にとり、第11図乃至
第13図を参照して説明する。なお、第11図は
上記した外部ソートを実行するためのコマンドの
列と、これら各コマンドによる起動時および終了
時におけるFUWEDフラグ51U、WAUレジス
タ25U、RAUレジスタ26U、FLWEDフラ
グ51L、WALレジスタ25L、RALレジスタ
26Lの各内容(状態)との対応関係を示す。第
11図において〜はコマンドの実行順を示
す。また、第12図は第11図に示す各コマンド
の実行終了時のUB20UおよびLB20Lへの
書込み位置(実線)並びに読出し位置(破線)の
変化を説明する図、第13図は外部ソート
(SORT−EX演算)が指定されている場合の制御
信号発生回路65の入出力論理を示す図である。
まず、S11に対するセツトアツプが、CPU1
1からの指示により行なわれる。即ち、CPU1
1により、マージヤ10が機器指定され、しかる
後コマンドデータが入出力バス18を介してマー
ジヤ10に転送される。CPU11からのコマン
ドデータは、マージヤ10内の入出力インタフエ
ース40に設けられたCMDレジスタ41に保持
される。この場合のコマンドデータは、その第0
ビツト、即ちREG.INDビツトが論理“1”に設
定されており、マージヤ10内のレジスタ(レジ
スタ番号)を指定している。CPU11は、上記
したコマンドデータにより、レジスタ指定を行な
うと、該当レジスタにセツトすべきデータ(セツ
トアツプデータ)をライト信号と共に入出力バス
18上に送出する。しかして、入出力バス18上
のデータは、CMDレジスタ41に保持されてい
るコマンドデータで指定された、マージヤ10内
の対応するレジスタに、ライト信号に応じてセツ
トされる。
Next, regarding the concrete operation of the external sort described above, in the case of n=m=3, that is, the subrelation S
11, S12, S13, and sub-relations S21, S2.
Taking as an example the case of external sorting on the second relation S2 consisting of S2 and S23, explanation will be made with reference to FIGS. 11 to 13. In addition, FIG. 11 shows a sequence of commands for executing the above-mentioned external sort, and the FUWED flag 51U, WAU register 25U, RAU register 26U, FLWED flag 51L, WAL register 25L, The correspondence relationship with each content (state) of the RAL register 26L is shown. In FIG. 11, ~ indicates the order of command execution. Moreover, FIG. 12 is a diagram explaining changes in the write position (solid line) and read position (broken line) to the UB20U and LB20L at the end of execution of each command shown in FIG. 11, and FIG. 6 is a diagram showing the input/output logic of the control signal generation circuit 65 when the EX operation) is specified. FIG.
First, setup for S11 is performed on CPU1
This is done according to instructions from 1. That is, CPU1
1 specifies the merger 10 as a device, and then command data is transferred to the merger 10 via the input/output bus 18. Command data from the CPU 11 is held in a CMD register 41 provided in an input/output interface 40 within the merger 10. In this case, the command data is the 0th
The REG.IND bit is set to logic "1" and specifies a register (register number) within merger 10. When the CPU 11 specifies a register using the above-mentioned command data, it sends the data (setup data) to be set in the corresponding register onto the input/output bus 18 along with a write signal. Thus, the data on the input/output bus 18 is set in the corresponding register in the merger 10 specified by the command data held in the CMD register 41 in response to the write signal.

この例では、CMDレジスタ41は、REG.IND
ビツトが論理“1”の場合、CPU11からのラ
イト信号に応じてカウントアツプされるようにな
つている。したがつて、セツトアツプ対象となる
レジスタのレジスタ番号が連続している場合に
は、一旦マージヤ10の機器指定を行なつてコマ
ンドデータを転送した後は、単に所望のデータ
(セツトアツプデータ)と共にライト信号を入出
力バス18上に繰返し出力するだけでよい。この
ようにして、MOPレジスタ39に、例えばリレ
ーシヨンのロードを指定するMRG−OPコード、
UB20Uを指定する論理“0”のU/Lビツト
を含むマージ演算指定情報(LOAD(U)コマン
ド)がセツトされ、OSUAレジスタ54Uにレ
コードの先頭フイールド位置を示す情報がセツト
され、OSUBレジスタ55Uにレコードの最終フ
イールド位置を示す情報(即ち、レコード長
RSU)がセツトされる。また、RSUレジスタ4
3Uにレコード長RSU(第1のリレーシヨンS1
内の各レコードのレコード長)がセツトされ、
VDLレジスタ47にレコード内キーフイールド
長を示す有効データ長VDLがセツトされ、TRN
レジスタ42にS11の総レコード数TRNがセ
ツトされる。なお、RSU、VDL、TRNとして
は、実際には(真値−1)が採用されている。
In this example, CMD register 41 is REG.IND
When the bit is logical "1", the count is increased in response to a write signal from the CPU 11. Therefore, if the register numbers of the registers to be set up are consecutive, once the device is specified for the merger 10 and the command data is transferred, it is simply written along with the desired data (setup data). It is only necessary to repeatedly output the signal onto the input/output bus 18. In this way, for example, the MRG-OP code specifying load of a relation is stored in the MOP register 39.
Merge operation specification information (LOAD (U) command) including the logic "0" U/L bit specifying UB20U is set, information indicating the first field position of the record is set in the OSUA register 54U, and information is set in the OSUB register 55U. Information indicating the last field position of the record (i.e. record length)
RSU) is set. Also, RSU register 4
Record length RSU (first relation S1
The record length of each record in
The effective data length VDL indicating the key field length in the record is set in the VDL register 47, and the TRN
The total number of records TRN of S11 is set in the register 42. Note that (true value - 1) is actually adopted as RSU, VDL, and TRN.

次に、CPU11は、再びマージヤ10を機器
指定して、今度はREG.INDビツトが論理“0”
のコマンドデータを、マージヤ10の入出力イン
タフエース40内のCMDレジスタ41にセツト
せしめる。このコマンドデータは、その第3ビツ
ト、即ちENG.GOビツトが論理“1”に設定さ
れたENG.GOコマンドである。なお、RSTビツ
ト、MRG.GOビツト、URTRYビツト、および
LRTRYビツトは論理“0”である。上記ENG.
GOコマンドは、エンジン・コア15に対する
GOコマンドであり、HMA16からのリレーシ
ヨン(ストリームデータ)をINアライナ13、
ソータ12、ソート・チエツカ14を介してマー
ジヤ10に入力し、マージ演算を施してHMA1
7へ出力するときに使用される。この場合、マー
ジヤ10は、UB20UまたはLB20Lに新た
に格納されるデータを用いてデータ処理を行なう
ことになる。これに対し、マージヤ10だけに対
するGOコマンドとして、MRG.GOコマンドが用
意されている。このMRG.GOコマンドでは、UB
20UまたはLB20Lに既に格納されている有
意データに対して処理が行なわれる。
Next, the CPU 11 again specifies the merger 10 as a device, and this time the REG.IND bit is set to logic “0”.
The command data is set in the CMD register 41 in the input/output interface 40 of the merger 10. This command data is an ENG.GO command whose third bit, the ENG.GO bit, is set to logic "1". In addition, RST bit, MRG.GO bit, URTRY bit, and
The LRTRY bit is a logic "0". Above ENG.
The GO command is for engine core 15.
This is a GO command, and the relation (stream data) from HMA 16 is sent to IN aligner 13.
It is input to the merger 10 via the sorter 12 and sort checker 14, and is subjected to a merge operation to be converted to HMA1.
Used when outputting to 7. In this case, the merger 10 will perform data processing using data newly stored in the UB 20U or LB 20L. On the other hand, the MRG.GO command is prepared as a GO command for only the merger 10. In this MRG.GO command, UB
Processing is performed on significant data already stored in 20U or LB20L.

マージヤ10は、CMDレジスタ41にセツト
されたENG.GOコマンドにより起動される。こ
のとき、クリア回路61により、WAUレジスタ
25U、RAUレジスタ26U、FUWEDフラグ
51U、およびFUEMPフラグ52Uがクリア
(リセツト)される。即ち、MOPレジスタ39に
セツトされたマージ演算指定情報のU/Lビツト
が論理“0”、CMDレジスタ41にセツトされた
コマンドデータ(但しREG.IND=0)内の
ENG.GOビツトが論理“1”の場合、クリア回
路61内のA78Uのアンド条件が成立し、A7
8Uから論理“1”の信号が出力される。A78
Uから論理“1”の信号はOR79Uを介してゲ
ート81Uに導かれると共に、OR79U,80
Uを介してゲート82Uに導かれる。ゲート81
U,82Uは、制御タイミング発生回路60のス
タートタイミング発生機能によるクリアタイミン
グで、上記論理“1”の信号をゲートする。ゲー
ト81Uからの論理“1”の信号はWAUレジス
タ25UおよびFUWEDフラグ51Uに導かれゲ
ート82Uからの論理“1”の信号はRAUレジ
スタ26UおよびFUEMPフラグ52Uに導かれ
る。これにより、WAUレジスタ25U、RAU
レジスタ26U、FUWEDフラグ51U、および
FUEMPフラグ52Uがクリアされる。この状態
で、マージヤ10は、MOPレジスタ39内の
LOAD(U)コマンドで指定されたデータ処理
を、エンジン・コア15への入力に同期した速度
で行なう。このデータ処理について以下に述べ
る。
Merger 10 is activated by the ENG.GO command set in CMD register 41. At this time, the clear circuit 61 clears (resets) the WAU register 25U, RAU register 26U, FUWED flag 51U, and FUEMP flag 52U. That is, the U/L bit of the merge operation specification information set in the MOP register 39 is logic "0", and the command data (REG.IND=0) set in the CMD register 41 is set to logic "0".
When the ENG.GO bit is logic “1”, the AND condition of A78U in the clear circuit 61 is satisfied, and A7
A logic "1" signal is output from 8U. A78
The logic “1” signal from U is led to gate 81U via OR79U, and also to OR79U, 80
It is guided to gate 82U via U. gate 81
U and 82U gate the logic "1" signal at the clear timing by the start timing generation function of the control timing generation circuit 60. A logic "1" signal from gate 81U is guided to WAU register 25U and FUWED flag 51U, and a logic "1" signal from gate 82U is guided to RAU register 26U and FUEMP flag 52U. As a result, WAU register 25U, RAU
Register 26U, FUWED flag 51U, and
FUEMP flag 52U is cleared. In this state, the merger 10 stores the information in the MOP register 39.
Data processing specified by the LOAD (U) command is performed at a speed synchronized with input to the engine core 15. This data processing will be described below.

マージヤ10では、LOAD(U)コマンドに応
じ、主制御部38の制御により、UB20Uへデ
ータ(この例ではS11)を格納する動作が行な
われる。この際、対応するデータ(S11)は、
ソータ12からソート・チエツカ14を経由し
て、マージヤ10に所定バイト単位で一定周期で
供給される。ソート・チエツカ14からのデータ
は、ソート・チエツカ14からの出力周期に同期
してINUレジスタ21Uに保持され、UB20U
に導かれる。LOAD(U)コマンドの場合、主制
御部38は、WAUレジスタ25Uを用いてUB
20Uに対するデータ書込みを行なう。即ち、主
制御部38内の図示せぬ書込み制御部は、INU
レジスタ21Uに保持されるデータを、マルチプ
レクサ29Uにより選択されたWAUレジスタ2
5Uで指定されている、UB20Uのそのアドレ
スに書込み、WAUレジスタ25Uを+1する書
込み制御を繰返し行なう。WAUレジスタ25U
は、上記したように起動時にリセツトされており
(第11図参照)、したがつてS11はUB20U
の0番地から順に書込まれる。
In the merger 10, in response to the LOAD (U) command, an operation is performed under the control of the main control unit 38 to store data (S11 in this example) in the UB 20U. At this time, the corresponding data (S11) is
The data is supplied from the sorter 12 via the sort checker 14 to the merger 10 in predetermined byte units at a constant cycle. The data from the sort checker 14 is held in the INU register 21U in synchronization with the output cycle from the sort checker 14, and is stored in the INU register 21U.
guided by. In the case of the LOAD (U) command, the main control unit 38 uses the WAU register 25U to
Data is written to 20U. That is, a write control section (not shown) in the main control section 38 is an INU
The data held in the register 21U is transferred to the WAU register 2 selected by the multiplexer 29U.
Write to the address of the UB 20U specified by 5U, and write control to increment the WAU register 25U by 1 is performed repeatedly. WAU register 25U
is reset at startup as described above (see Figure 11), so S11 is UB20U.
are written sequentially starting from address 0.

UB20Uへのデータ書込みの場合、主制御部
38はその動作開始時に、RSUレジスタ43U
の内容(レコード長RSU)をマルチプレクサ4
4を介してWRCカウンタ45にセツトし、TRN
レジスタ42の内容(総レコード数TRN)を
STCカウンタ46にセツトせしめる。WRCカウ
ンタ45は、WAUレジスタ25U(LB20Lへ
の書込みの場合にはWALレジスタ25L)が+
1される毎に−1される。この結果、WRCカウ
ンタ45は、1レコードの最終データの書込み時
にアンダフロー状態となり、ボロー信号を出力す
る。WRCカウンタ45からのボロー信号はSTC
カウンタ46に導かれ、これによりSTCカウン
タ46は−1される。このため、STCカウンタ
46は、S11の最終レコードの最終データの書
込み時にアンダフロー状態となり、ボロー信号を
出力する。STCカウンタ46からのボロー信号
はA67U,67Lの一端に共通に導かれる。A
67Uの他端には、MOPレジスタ39内のU/
Lビツトがインバータ66を介して導かれ、A6
7Lの他端には、上記U/Lビツトがそのまま導
かれる。したがつて、U/L=0であるこの例で
は、A67Uのアンド条件が成立し、A67Uか
らFUWEDフラグ51Uに対し、論理“1”の信
号が出力される。これにより、FUWEDフラグ5
1Uはセツトされる(第11図のLOAD(U)、
ENG.GOコマンドの欄参照)。主制御部38内の
書込み制御部は、STCカウンタ46からのボロ
ー信号により、書込み制御動作を停止する。この
結果、WAUレジスタ25Uは、S11の(最終
レコードの)最終データの格納アドレスを示した
状態で、カウントアツプ動作を停止することにな
る。第11図では、上記したWAUレジスタ25
Uの内容のように、該当コマンドの実行終了時お
ける該当レジスタの内容が、サブリレーシヨンの
(最終レコードの)最終データの格納アドレスと
なることを、「end」で示している。
When writing data to the UB20U, the main control unit 38 writes the RSU register 43U at the start of the operation.
The contents (record length RSU) of multiplexer 4
4 to WRC counter 45, and TRN
The contents of register 42 (total number of records TRN)
The STC counter 46 is set. WRC counter 45 indicates that WAU register 25U (WAL register 25L in case of writing to LB20L) is +
Each time it is 1, it is decremented by -1. As a result, the WRC counter 45 enters an underflow state when writing the final data of one record, and outputs a borrow signal. The borrow signal from WRC counter 45 is STC
The STC counter 46 is thereby decremented by -1. Therefore, the STC counter 46 enters an underflow state when writing the final data of the final record in S11, and outputs a borrow signal. The borrow signal from the STC counter 46 is commonly led to one end of A67U and 67L. A
The other end of 67U has U/ in MOP register 39.
L bit is led through inverter 66 and A6
The above U/L bit is directly led to the other end of 7L. Therefore, in this example where U/L=0, the AND condition of A67U is satisfied, and a signal of logic "1" is output from A67U to the FUWED flag 51U. This will cause FUWED flag 5
1U is set (LOAD (U) in Figure 11,
(See ENG.GO command column). The write control section in the main control section 38 stops the write control operation in response to the borrow signal from the STC counter 46. As a result, the WAU register 25U stops counting up while indicating the storage address of the final data (of the final record) in S11. In FIG. 11, the above-mentioned WAU register 25
Like the contents of U, "end" indicates that the contents of the corresponding register at the end of execution of the corresponding command will be the storage address of the final data (of the final record) of the subrelation.

FUWEDフラグ51Uからのセツト出力信号
は、A72Uの一端に導かれる。A72Uの他端
には、デコーダ70からのロード信号71Uが導
かれる。デコーダ70は、MOPレジスタ39
MOPレジスタ39の内容をデコードしており、
この例のようにLOAD(U)コマンドの場合、論
理“1”のロード信号71Uを出力する。したが
つて、この例では、FUWEDフラグ51Uのセツ
トにより、A72Uのアンド条件が成立し、A7
2Uから(LOAD(U)コマンドの実行による
UB20Uへの書込み完了を示す)論理“1”の
信号が出力される。A72Uからの論理“1”の
信号は、OR75を介して割込み発生回路76に
導かれ、これにより割込み発生回路76はCPU
11に対する割込みを発生する。CPU11は、
マージヤ10(内の割込み発生回路76)からの
割込みを受付けると、マージヤ10内の図示せぬ
ステータレジスタ(このレジスタはFUWEDフラ
グ51U、FLWEDフラグ51L、FUEMPフラ
グ52U、FLEMPフラグ52Lなどからなる)
の内容の読出しを行ない、割込み要因の判別を行
なう。
The set output signal from FUWED flag 51U is routed to one end of A72U. A load signal 71U from the decoder 70 is guided to the other end of A72U. The decoder 70 is the MOP register 39
The contents of MOP register 39 are decoded,
In the case of the LOAD (U) command as in this example, a load signal 71U of logic "1" is output. Therefore, in this example, by setting the FUWED flag 51U, the AND condition of A72U is satisfied, and A7
From 2U (by executing the LOAD(U) command)
A logic "1" signal indicating completion of writing to the UB20U is output. The logic "1" signal from A72U is led to the interrupt generation circuit 76 via OR75, and thereby the interrupt generation circuit 76 is connected to the CPU.
Generates an interrupt for 11. CPU11 is
When an interrupt is received from the merger 10 (the interrupt generation circuit 76 therein), a stator register (not shown) in the merger 10 (this register consists of a FUWED flag 51U, a FLWED flag 51L, a FUEMP flag 52U, a FLEMP flag 52L, etc.)
The contents of the interrupt are read and the cause of the interrupt is determined.

CPU11は、マージヤ10からのステータス
の読取りにより、UB20Uへのサブリレーシヨ
ンS11の書込みの完了を判断すると、次のサブ
リレーシヨン、即ち第2のリレーシヨン内のS2
1に関するセツトアツプを行なう。この場合のセ
ツトアツプは、前記したS11に関するセツトア
ツプと略同様である。なお、有効データ長VDL
は、第1のリレーシヨンS1および第2のリレー
シヨンS2の各レコードにおいて共通であるた
め、S11の場合を除いてセツトアツプは不用で
ある。したがつて、S21の場合のセツトアツプ
対象レジスタは、MOPレジスタ39、OSLAレ
ジスタ54L、OSLBレジスタ55L、RSLレジ
スタ43L、およびTRNレジスタ42となる。
但し、MOPレジスタ39には、外部ソートを指
定するMRG−OPコード、ソート順を指定する
AS/DSビツト、LB20Lを指定する論理“1”
のU/Lビツトを含むマージ演算指定情報
(SORT−EX(L)コマンド)がセツトされる。
そして、マージヤ10内のCMDレジスタ41に、
S11の場合と同様に、ENG.GOコマンドがセ
ツトされることにより、マージヤ10が再び起動
される。このとき、クリア回路61により、
WALレジスタ25L、RALレジスタ26L、
FLWEDフラグ51、およびFLEMPフラグ52
Lがクリア(リセツト)される。即ち、MOPレ
ジスタ39にセツトされたマージ演算指定情報の
U/Lビツトが論理“1”、CMDレジスタ41に
セツトされたコマンドデータ(但しREG.IND=
0)内のENG.GOビツトが論理“1”の場合、
クリア回路61内のA78Lのアンド条件が成立
し、A78Lから論理“1”の信号が出力され
る。A78Lからの論理“1”の信号は、OR7
9Lを介してゲート81Lに導かれると共に、
OR79L,80Lを介してゲート82Lに導か
れる。ゲート81L,82Lは、制御タイミング
発生回路60のスタートタイミング発生機能によ
るクリアタイミングで、上記論理“1”の信号を
ゲートする。ゲート81Lからの論理“1”の信
号はWALレジスタ25LおよびFLWEDフラグ
51Lに導かれ、ゲート82Lからの論理“1”
の信号はRALレジスタ26LおよびFLEMPフラ
グ52Lに導かれる。これにより、WALレジス
タ25L、RALレジスタ26L、FLWEDフラ
グ51L、およびFLEMPフラグ52Lがクリア
される。この状態で、マージヤ10は、MOPレ
ジスタ39内のSORT−EX(L)コマンドで指定
されたデータ処理を行なう。このデータ処理につ
いて以下に述べる。
When the CPU 11 determines the completion of writing of the sub-relationship S11 to the UB 20U by reading the status from the merger 10, the CPU 11 writes the next sub-relationship, that is, S2 in the second relation.
Perform setup regarding 1. The setup in this case is substantially the same as the setup related to S11 described above. In addition, the effective data length VDL
is common to each record of the first relation S1 and the second relation S2, so setup is unnecessary except in the case of S11. Therefore, the registers to be set up in S21 are the MOP register 39, the OSLA register 54L, the OSLB register 55L, the RSL register 43L, and the TRN register 42.
However, the MOP register 39 specifies the MRG-OP code that specifies external sorting and the sort order.
AS/DS bit, logic “1” specifying LB20L
Merge operation designation information (SORT-EX(L) command) including the U/L bit of is set.
Then, in the CMD register 41 in the merger 10,
As in the case of S11, the merger 10 is activated again by setting the ENG.GO command. At this time, the clear circuit 61
WAL register 25L, RAL register 26L,
FLWED flag 51 and FLEMP flag 52
L is cleared (reset). That is, the U/L bit of the merge operation designation information set in the MOP register 39 is logic "1", and the command data set in the CMD register 41 (however, REG.IND=
If the ENG.GO bit in 0) is logic “1”,
The AND condition of A78L in the clear circuit 61 is satisfied, and a signal of logic "1" is output from A78L. The logic “1” signal from A78L is OR7
While being led to the gate 81L via 9L,
It is led to gate 82L via OR79L and 80L. The gates 81L and 82L gate the logic "1" signal at the clear timing by the start timing generation function of the control timing generation circuit 60. The logic "1" signal from gate 81L is guided to WAL register 25L and FLWED flag 51L, and the logic "1" signal from gate 82L is guided to WAL register 25L and FLWED flag 51L.
The signal is directed to RAL register 26L and FLEMP flag 52L. As a result, the WAL register 25L, RAL register 26L, FLWED flag 51L, and FLEMP flag 52L are cleared. In this state, the merger 10 performs data processing specified by the SORT-EX(L) command in the MOP register 39. This data processing will be described below.

マージヤ10では、SORT−EX(L)コマンド
に応じ、主制御部38の制御により、LB20L
へデータ(この例ではS21)を格納する動作が
行なわれる。この際、対応するデータS21は、
ソータ12からソート・チエツカ14を経由し
て、マージヤ10に所定バイト単位で一定周期で
供給され、この供給周期に同期してINLレジスタ
21Lに保持される。SORT−EX(L)コマンド
の場合、マージヤ10の主制御部38内の図示せ
ぬ書込み制御部は、WALレジスタ25Lを用い
てUB20Uに対するデータ書込みを行なう。即
ち、主制御部38内の書込み制御部は、INUレ
ジスタ21Lに保持されるデータを、WALレジ
スタ25Lで指定されるLB20Lのそのアドレ
スに書込み、WALレジスタ25Lを+1する書
込み制御を繰返し行なう。WALレジスタ25L
は、起動時にリセツトされており(第11図の
SORT−EX,ENG.GOコマンドの欄参照)、し
たがつてS21はLB20Lの0番地から順に書
込まれる。
In the merger 10, in response to the SORT-EX (L) command, under the control of the main control unit 38, LB20L
An operation of storing data (in this example, S21) is performed. At this time, the corresponding data S21 is
The data is supplied from the sorter 12 via the sort checker 14 to the merger 10 in predetermined byte units at a constant cycle, and held in the INL register 21L in synchronization with this supply cycle. In the case of the SORT-EX (L) command, a write control section (not shown) in the main control section 38 of the merger 10 writes data to the UB 20U using the WAL register 25L. That is, the write control unit in the main control unit 38 writes the data held in the INU register 21L to the address of the LB 20L designated by the WAL register 25L, and repeatedly performs write control to increment the WAL register 25L by 1. WAL register 25L
is reset at startup (see Figure 11).
(See SORT-EX, ENG.GO command column) Therefore, S21 is written in order from address 0 of LB20L.

LB20Lへのデータ書込みの場合、主制御部
38はその動作開始時に、RSLレジスタ43L
の内容(レコード長RSL)をマルチプレクサ4
4を介してWRCカウンタ45にセツトし、TRN
レジスタ42の内容(総レコード数TRN)を
STCカウンタ46にセツトせしめる。WRCカウ
ンタ45は、WALレジスタ25L(UB20Uへ
の書込みの場合にはWAUレジスタ25U)が+
1される毎に−1される。この結果、WRCカウ
ンタ45は、1レコードの最終データの書込み時
にアンダフロー状態となり、ボロー信号を出力す
る。WRCカウンタ45からのボロー信号はSTC
カウンタ46に導かれ、これによりSTCカウン
タ46は−1される。このため、STCカウンタ
46は、S21の最終レコードの最終データの書
込み時にアンダフロー状態となり、ボロー信号を
出力する。STCカウンタ46からのボロー信号
はA67U,67Lの一端に共通に導かれる。A
67Uの他端には、MOPレジスタ39内のU/
Lビツトがインバータ66を介して導かれ、A6
7Lの他端には、上記U/Lビツトがそのまま導
かれる。したがつて、U/L=1であるこの例で
は、A67Lのアンド条件が成立し、A67Lか
らFLWEDフラグ51Lに対し、論理“1”の信
号が出力される。これにより、FLWEDフラグ5
1Lはセツトされる(第11図のSORT−EX
(L)、ENG.GOコマンドの欄参照)。主制御部3
8内の書込み制御部は、STCカウンタ46から
のボロー信号により、書込み制御動作を停止す
る。この結果、WALレジスタ25Lは、S21
の(最終レコードの)最終データの格納アドレス
を示した状態(end)でカウントアツプ動作を停
止することになる。
When writing data to LB20L, the main control unit 38 writes the RSL register 43L at the start of the operation.
The contents (record length RSL) of multiplexer 4
4 to WRC counter 45, and TRN
The contents of register 42 (total number of records TRN)
The STC counter 46 is set. WRC counter 45 indicates that WAL register 25L (WAU register 25U in case of writing to UB20U) is +
Each time it is 1, it is decremented by -1. As a result, the WRC counter 45 enters an underflow state when writing the final data of one record, and outputs a borrow signal. The borrow signal from WRC counter 45 is STC
The STC counter 46 is thereby decremented by -1. Therefore, the STC counter 46 enters an underflow state when writing the final data of the final record in S21, and outputs a borrow signal. The borrow signal from the STC counter 46 is commonly led to one end of A67U and 67L. A
The other end of 67U has U/ in MOP register 39.
L bit is led through inverter 66 and A6
The above U/L bit is directly led to the other end of 7L. Therefore, in this example where U/L=1, the AND condition of A67L is satisfied, and a logic "1" signal is output from A67L to the FLWED flag 51L. This causes FLWED flag 5
1L is set (SORT-EX in Figure 11).
(L), see the ENG.GO command column). Main control section 3
The write control section in 8 stops the write control operation in response to the borrow signal from the STC counter 46. As a result, the WAL register 25L is
The count-up operation is stopped at the state (end) indicating the storage address of the final data (of the final record).

この例では、UB20U(LB20L)に対する
リード/ライト動作は、時分割で行なわれる。即
ち、マージヤ10における1動作サイクルは、リ
ードサイクル、ライトサイクルとに2分されて使
用される。SORT−EX(L)コマンドの場合、主
制御部38内の図示せぬ読出し制御部は、WAL
レジスタ25Lの内容WALおよびRALレジスタ
26Lの内容RALを比較するCPU28U、並び
にWAUレジスタ25Uの内容をWAU及びRAU
レジスタ26Lの内容RAUを比較するCMP28
Uの比較結果を監視している。そして、RAL<
WAL、RAU<WAUであれば、読出し制御部は
LB20Lからのデータ読出しが可能であるもの
と判断し、リードサイクルにおいて、RALレジ
スタ26Lを用いたLB20Lからのデータ読出
し、およびRAUレジスタ26Uを用いたUB20
Uからのデータ読出しを同時に行い、しかる後
RAUレジスタ26U、RALレジスタ26Lの内
容を+1する。このとき、INLレジスタ21Lが
セツトしていなければ、書込み制御部は次のライ
トサイクルにおいて、前記したようにWALレジ
スタ25Lを用いたLB20Lへのデータ書込み
を行なう。そして、上記した動作が繰返される。
RAUレジスタ26U、RALレジスタ26Lは、
前記したように起動時にリセツトされており(第
11図参照)、したがつてUB20U、LB20L
からのデータ読出しは0番地から行なわれる。
In this example, read/write operations for UB20U (LB20L) are performed in a time-division manner. That is, one operation cycle in merger 10 is divided into two parts: a read cycle and a write cycle. In the case of the SORT-EX (L) command, the read control unit (not shown) in the main control unit 38
The CPU 28U compares the contents WAL of the register 25L and the contents RAL of the RAL register 26L, and compares the contents of the WAU register 25U with WAU and RAU.
CMP28 to compare the contents RAU of register 26L
We are monitoring the comparison results of U. And RAL<
If WAL, RAU<WAU, the read control section
It is determined that data can be read from LB20L, and in the read cycle, data is read from LB20L using RAL register 26L and UB20 using RAU register 26U.
Read data from U at the same time, and then
The contents of the RAU register 26U and RAL register 26L are incremented by 1. At this time, if the INL register 21L is not set, the write control section writes data to the LB 20L using the WAL register 25L as described above in the next write cycle. Then, the above operation is repeated.
The RAU register 26U and RAL register 26L are
As mentioned above, it is reset at startup (see Figure 11), so UB20U and LB20L
Data is read from address 0.

UB20U、LB20Lからのデータ読出しに
おいては、1レコードの先頭データの読出しに際
し、RAUレジスタ26U、RALレジスタ26L
の内容がBUUレジスタ27U、BULレジスタ2
7Lに、RSUレジスタ43U、RSLレジスタ4
3Lの内容がRCUカウンタ49U、RCLカウン
タ49Lに、そしてVDLレジスタ47の内容が
VCTカウンタ48に、主制御部38内の制御タ
イミング発生回路60からの1レコード処理開始
の指定タイミングでロードされる。RSUカウン
タ49U、RCLカウンタ49L、およびVCTカ
ウンタ48は、UB20U、LB20Lからのデ
ータ読出し毎に−1される。この例では、マージ
ヤ10に供給されるレコードは、INアライナ1
3により、比較対象となるキーフイールドがその
先頭となるように前処理を施されている。したが
つて、VCTカウンタ48は、キーフイールドの
最終データの読出し時にアンダフロー状態とな
り、キーフイールドエンドを示すボロー信号を出
力する。VCTカウンタ48からのボロー信号は、
比較制御部62に導かれる。また、RCUカウン
タ49U、RCLカウンタ49Lは、レコード長
がRSUのU側レコード、レコード長がRSLのL
側レコードの最終データの読出し時にアンダフロ
ー状態となり、レコードエンドを示すボロー信号
を出力する。RCUカウンタ49U、RCLカウン
タ49Lからのボロー信号はFUEフラグ50U、
FLEフラグ50Lに導かれる。これにより同フ
ラグ50U、50Lがセツトし、1レコードの最
終データの読出しであることが示される。
When reading data from UB20U and LB20L, when reading the first data of one record, RAU register 26U and RAL register 26L
The contents of BUU register 27U and BUL register 2
7L, RSU register 43U, RSL register 4
The contents of 3L are transferred to the RCU counter 49U and RCL counter 49L, and the contents of the VDL register 47 are transferred to the RCU counter 49U and RCL counter 49L.
The data is loaded into the VCT counter 48 at the timing specified by the control timing generation circuit 60 in the main control unit 38 to start processing one record. The RSU counter 49U, RCL counter 49L, and VCT counter 48 are decremented by 1 every time data is read from the UB 20U and LB 20L. In this example, the records fed to merger 10 are
3, preprocessing is performed so that the key field to be compared becomes the first key field. Therefore, the VCT counter 48 enters an underflow state when reading the final data of the key field, and outputs a borrow signal indicating the end of the key field. The borrow signal from the VCT counter 48 is
It is led to a comparison control section 62. In addition, the RCU counter 49U and RCL counter 49L are the U-side record whose record length is RSU, and the L-side record whose record length is RSL.
When reading the final data of the side record, an underflow state occurs and a borrow signal indicating the end of the record is output. Borrow signals from RCU counter 49U and RCL counter 49L are FUE flag 50U,
Guided by FLE flag 50L. As a result, the flags 50U and 50L are set, indicating that the final data of one record is being read.

UB20U、LB20Lから読出されたデータ
は、UPRレジスタ22U、LOWレジスタ22L
に保持される。UPRレジスタ22U、LOWレジ
スタ22Lの保持データはCMP23に導かれる。
また、UPRレジスタ22U、LOWレジスタ22
Lの保持データはOTUレジスタ24U、OTLレ
ジスタ24Lを介してINURレジスタ31U、
INLRレジスタ31Lにも導かれ、同レジスタ3
1U、31Lに保持される。
The data read from UB20U and LB20L is sent to UPR register 22U and LOW register 22L.
is maintained. The data held in the UPR register 22U and LOW register 22L is led to the CMP 23.
In addition, UPR register 22U, LOW register 22
The data held in L is sent to the INUR register 31U via the OTU register 24U and OTL register 24L.
It is also led to INLR register 31L, and the same register 3
It is held at 1U and 31L.

CMP23は、UPRレジスタ22U、LOWレ
ジスタ22Lからの両データの大小を比較する。
CMP23の比較結果は、主制御部38内の比較
制御部62に導かれる。比較制御部62には、
VCTカウンタ48からのキーフイールドエンド
を示すボロー信号も導かれる。比較制御部62
は、CMP23からの比較結果が、U>Lまたは
U<Lの場合は、その時点でU側レコード(この
例ではS11内の1レコード)とL側レコード
(この例ではS12内の1レコード)との指定キ
ーフイールド間での比較結果を確定し、CMP2
3の比較結果を制御信号発生回路65に伝える。
これに対し、U=Lの場合には、比較結果を確定
することはできないため、次のデータに対する比
較結果が与えられるまで、比較結果の確定を控え
る。但し、VCTカウンタ48からのボロー信号
により、キーフイールドの終了(キーフイールド
エンド)を検出した場合には、U=Lを確定し、
CMP23からの一致検出結果を制御信号発生回
路65に伝える。なお、上記の説明で、UはUB
20Uからの読出しデータを示し、LはLB20
Lからの読出しデータを示す。
The CMP 23 compares the magnitude of both data from the UPR register 22U and the LOW register 22L.
The comparison result of the CMP 23 is led to the comparison control section 62 within the main control section 38. The comparison control section 62 includes
A borrow signal indicating the end of the key field from VCT counter 48 is also led. Comparison control section 62
If the comparison result from CMP23 is U>L or U<L, at that point the U side record (in this example, 1 record in S11) and the L side record (in this example, 1 record in S12) Confirm the comparison result between the specified key fields with CMP2
3 is transmitted to the control signal generation circuit 65.
On the other hand, in the case of U=L, the comparison result cannot be determined, so the determination of the comparison result is refrained from being determined until the comparison result for the next data is given. However, if the end of the key field (key field end) is detected by the borrow signal from the VCT counter 48, U=L is determined,
The match detection result from the CMP 23 is transmitted to the control signal generation circuit 65. In addition, in the above explanation, U is UB
Indicates read data from 20U, L is LB20
The data read from L is shown.

一方、INURレジスタ31U、INLRレジスタ
31Lに保持されたUB20U、LB20Lから
の読出しデータは、CMP23による比較動作と
並行して、URB30U、LRB30Lに書込まれ
る。このURB30U、LRB30Lに対する書込
みアドレスは、RAURレジスタ35U、35L
によつて指定される。RAURレジスタ35U、
RALRレジスタ35Lは、1レコード分の書込
みに際しクリアされるようになつており、したが
つてUB20U、LB20Lからの読出しデータ
は、URB30U、LRB30Lの0番地から書込
まれる。
On the other hand, the read data from the UB20U and LB20L held in the INUR register 31U and INLR register 31L are written to the URB30U and LRB30L in parallel with the comparison operation by the CMP23. The write addresses for these URB30U and LRB30L are RAUR registers 35U and 35L.
specified by. RAUR register 35U,
The RALR register 35L is cleared when one record is written, so data read from the UB 20U and LB 20L is written from address 0 of the URB 30U and LRB 30L.

主制御部38内の制御タイミング発生回路60
は、FUEフラグ50UおよびFLEフラグ50L
の状態を監視している。そして、制御タイミング
発生回路60は、FUEフラグ50UおよびFLE
フラグ50Lが共にセツト状態となつたことを検
出すると、即ちU側レコード、L側レコードのう
ちレコード長の長い方のレコードの最終データの
読出しを検出すると、(URB30UまたはLRB
30Lからの1レコードの読出し出力が可能とな
つたとして)制御信号発生回路65に各種制御信
号の出力のタイミング指示を与える。制御信号発
生回路65は、制御タイミング発生回路60から
の指定タイミングで、MOPレジスタ39に保持
されているマージ演算指定情報中のMRG−OPコ
ードおよびAS/DSビツト、および比較制御部6
2からの比較確定結果に応じ、UB20U、LB
20Lに対する読出しアドレス、割込み制御部6
3、および出力制御部64などを制御する各種制
御信号を発生する。好適な実施例において、制御
信号発生回路65はROMである。制御信号発生
回路65は、MRG−OPコードによつて外部ソー
トが指定されている場合(即ち、この例のように
SORT−EX演算の場合)第13図に示す入出力
論理に従つて各種制御信号を出力する。例えば、
サブリレーシヨンS11,S21……が昇順でソ
ートされており、AS/DS=1、即ち昇順ソート
が指定されているものとすると、制御信号発生回
路65は、比較結果がU=LまたはU<Lの場合
には、UB20Uから次のレコードが読出され、
LB20Lから現レコードが再度読出されるよう
に指示する制御信号を出力する。この制御信号
は、例えば、RAUレジスタ26U、RALレジス
タ26Lへのロード信号であり、この場合には、
RALレジスタ26Lへのロード信号が出力され
る。RALレジスタ26Lへのロード信号が出力
された場合、(レコード処理開始時にRALレジス
タ26Lから)BULレジスタ27Lにロードさ
れた現レコードの先頭アドレスが、RALレジス
タ26Lにロードされる。これにより、前記した
LB20Lからのデータ読出しと同様にして、現
レコードを先頭データより順に再び読出すことが
可能となる。一方、RAUレジスタ26Uについ
ては、次のデータのアドレス(この場合には、次
のレコードの先頭アドレス)を示しており、何等
変化はない。この場合、前記したUB20Uから
のデータ読出しと同様にして、次のレコードを先
頭データより順に読出すことが可能となる。ま
た、制御信号発生回路65は、URB30Uに書
込まれたレコードの出力を指示する有効な(論理
“1”の)出力指示信号85Uを出力する。これ
に対し、比較結果がU>Lの場合には、UB20
Uから現レコードが再度読出され、LB20Lか
ら次のレコードが読出されるように指示する制御
信号を出力し、更にLRB30Lに書込まれたレ
コードの出力を指示する有効な(論理“1”の)
出力指示信号85Lを出力する。また、制御信号
発生回路65は、比較結果およびAS/DSビツト
の状態に無関係に、有効な割込み許可信号74
U,74Lを出力する。
Control timing generation circuit 60 in main control section 38
is FUE flag 50U and FLE flag 50L
is monitoring the status of. The control timing generation circuit 60 then outputs the FUE flag 50U and FLE
When it is detected that both flags 50L are set, that is, when reading of the final data of the record with the longer record length among the U-side record and the L-side record is detected, (URB 30U or LRB
Assuming that it is now possible to read and output one record from 30L), timing instructions for outputting various control signals are given to the control signal generation circuit 65. The control signal generation circuit 65 generates the MRG-OP code and AS/DS bit in the merge operation specification information held in the MOP register 39 and the comparison control unit 6 at the specified timing from the control timing generation circuit 60.
UB20U, LB according to the comparison result from 2.
Read address for 20L, interrupt control unit 6
3, and various control signals for controlling the output control section 64 and the like. In the preferred embodiment, control signal generation circuit 65 is a ROM. When external sorting is specified by the MRG-OP code (i.e., as in this example), the control signal generation circuit 65
In the case of SORT-EX operation) various control signals are output according to the input/output logic shown in FIG. for example,
Assuming that the subrelations S11, S21, . In the case of L, the next record is read from UB20U,
A control signal instructing the current record to be read again is output from LB20L. This control signal is, for example, a load signal to the RAU register 26U and RAL register 26L, and in this case,
A load signal to the RAL register 26L is output. When a load signal to the RAL register 26L is output, the start address of the current record loaded into the BUL register 27L (from the RAL register 26L at the start of record processing) is loaded into the RAL register 26L. As a result, the above
In the same way as reading data from LB20L, it becomes possible to read out the current record again in order starting from the first data. On the other hand, the RAU register 26U indicates the address of the next data (in this case, the start address of the next record) and remains unchanged. In this case, it becomes possible to read the next record sequentially starting from the first data in the same manner as the data reading from the UB 20U described above. Further, the control signal generation circuit 65 outputs a valid (logic "1") output instruction signal 85U that instructs the output of the record written in the URB 30U. On the other hand, if the comparison result is U>L, UB20
The current record is read again from U, the next record is read from LB20L, and a valid (logic "1") signal is output that instructs the output of the record written to LRB30L.
Outputs an output instruction signal 85L. Furthermore, the control signal generation circuit 65 generates a valid interrupt enable signal 74 regardless of the comparison result and the state of the AS/DS bit.
Output U, 74L.

今、制御信号発生回路65からの制御信号によ
り、UB20Uからの次のレコードの読出しおよ
びLB20Lからの現レコードの読出しが指示さ
れると共に、倫理“1”の出力指示信号85Uが
出力されたのとする。制御信号発生回路65から
の倫理“1”の出力指示信号85Uは、FUOフ
ラグ53Uに導かれ、これによりFUOフラグ5
3Uはセツトする。出力シーケンス制御部83
は、FUOフラグ53UおよびFLOフラグ53L
の状態を監視しており、この例のようにFUOフ
ラグ53Uがセツトした場合、URB読出し制御
部84Uに対しURB30Uからのレコードの読
出し出力を指示する。URB読出し制御部84U
が出力されたものとする。制御信号発生回路65
からの論理“1”の出力支持信号85Uは、出力
シーケンス制御部83からの指示に応じて
RAURレジスタ35UおよびCTRカウンタ56
をクリアし、しかる後RAURレジスタ35Uを
用いてURB30Uからのデータ読出しを行なう。
URB30Uからの読出しデータは、(URB30
Uからの読出しが指定されている場合にURB3
0U側を選択する)マルチプレクサ32を介して
ROUTレジスタ33に導かれる。URB読出し制
御部84Uは、URB30Uから所定バイトのデ
ータを読出す毎に、RAURレジスタ35Uおよ
びCTRカウンタ56の内容を+1すると共に、
出力ストローブ信号87Uを出力する。この出力
ストローブ信号87Uは、OR86を介してゲー
ト88に導かれる。ゲート88は、OR86から
の出力信号(この例では出力ストローブ信号87
U)を、切出し制御部89からの出力許可に応じ
てROUTレジスタ33に出力する。この切出し
制御部89の制御動作については、JOIN系演算
を例にとつて詳述する予定であり、ここでは
URB30Uに書込まれた1レコードの先頭デー
タから最終データの読出し期間中、ゲート88に
対し出力許可が与えられるものとし、説明を省略
する。切出し制御部89からの出力許可により、
ゲート88からの出力信号である出力ストローブ
信号87UがROUTレジスタ33に導かれると、
(マルチプレクサ32経由でROUTレジスタ33
に導かれている)URB30Uからの読出しデー
タは、ROUTレジスタ33にラツチされる。そ
して、ROUTレジスタ33にラツチされたデー
タは、HMA17を介して図示せぬHMに転送さ
れる。なお、URB30Uからのデータ読出し期
間中、UB20U、LB20Lから次のレコード
を読出し、同レコードを所定バイト単位でURB
30U、LRB30Lの0番地から書込むことも
可能である。この場合、URB30U、LRB30
Lに対するリード/ライト動作は、UB20U、
LB20Lに対するそれと同様に、時分割で行な
う必要がある。
Now, the control signal from the control signal generation circuit 65 instructs the reading of the next record from the UB20U and the reading of the current record from the LB20L, and the output instruction signal 85U of ethics "1" is output. do. The output instruction signal 85U of ethics "1" from the control signal generation circuit 65 is guided to the FUO flag 53U, and thereby the FUO flag 5
3U is set. Output sequence control section 83
is FUO flag 53U and FLO flag 53L
When the FUO flag 53U is set as in this example, it instructs the URB read control unit 84U to read and output records from the URB 30U. URB read control unit 84U
Assume that is output. Control signal generation circuit 65
The output support signal 85U of logic “1” from
RAUR register 35U and CTR counter 56
is cleared, and then data is read from the URB 30U using the RAUR register 35U.
The read data from URB30U is (URB30
URB3 when reading from U is specified
0U side) via multiplexer 32
is directed to the ROUT register 33. Every time a predetermined byte of data is read from the URB 30U, the URB read control unit 84U increments the contents of the RAUR register 35U and the CTR counter 56 by 1, and
Outputs an output strobe signal 87U. This output strobe signal 87U is guided to gate 88 via OR86. Gate 88 receives the output signal from OR 86 (output strobe signal 87 in this example).
U) is output to the ROUT register 33 in response to output permission from the extraction control unit 89. The control operation of the extraction control unit 89 will be explained in detail using JOIN operations as an example.
It is assumed that output permission is given to the gate 88 during the period of reading from the first data to the last data of one record written in the URB 30U, and a description thereof will be omitted. With output permission from the cutting control unit 89,
When the output strobe signal 87U, which is the output signal from the gate 88, is guided to the ROUT register 33,
(ROUT register 33 via multiplexer 32
The read data from the URB 30U (which is led to the ROUT register 33) is latched into the ROUT register 33. The data latched in the ROUT register 33 is transferred to an HM (not shown) via the HMA 17. Furthermore, during the data reading period from URB30U, the next record is read from UB20U and LB20L, and the same record is sent to URB in specified byte units.
It is also possible to write from address 0 of LRB 30U and LRB 30L. In this case, URB30U, LRB30
Read/write operations for L are performed using UB20U,
Similar to that for LB20L, it is necessary to perform this in a time-sharing manner.

上記した動作が繰返され、WALレジスタ25
LおよびRALレジスタ26Lの各内容を比較す
るCMP28Lが一致を検出したものとする。こ
の場合CMP28Lは、論理“1”の一致検出信
号を出力する。この一致検出信号はA68Lの一
端に導かれる。A68Lの他端にはFLWEDフラ
グ51Lからの論理“1”の出力信号が導かれて
いる。これは、FLWEDフラグ51Lが前記した
ようにセツト状態にあることによる。この場合、
A68Lのアンド条件が成立し、A68Lから論
理“1”の信号が出力される。このA68Lから
の論理“1”の信号は、LB20Lに対するサブ
リレーシヨンの書込み(この例ではS21)が完
了している状態で、RALレジスタ26Lの示す
読出しアドレスがWALレジスタ25Lの書込み
アドレスに一致したこと、即ちLB20Lが空状
態となつたことを示す。A68Lからの論理
“1”の信号はゲート69Lに導かれる。ゲート
69Lは、A68Lからの論理“1”の信号を、
制御タイミング発生回路60からの指定タイミン
グ(レコードエンド検出タイミング)でゲートす
る。この結果、A68Lからの論理“1”の信号
はFLEMPフラグ52Lに出力され、同フラグ5
2Lはセツトする。FLEMPフラグ52Lからの
論理“1”の(セツト)出力信号はA73Lの一
端に導かれる。A73Lの他端には制御信号発生
回路65からの割込み許可信号74Lが導かれ
る。この場合、割込み許可信号74Lは前記した
ように論理“1”(第13図参照)であり、した
がつてA73Lは論理“1”の信号を出力する。
A73Lからの論理“1”の信号は、OR75を
介して割込み発生回路76に導かれ、これにより
割込み発生回路76はCPU11に対する割込み
を発生する。CPU11は、マージヤ10(内の
割込み発生回路76)からの割込みを受付ける
と、マージヤ10内の図示せぬステータスレジス
タの内容の読出しを行ない、割込み要因の判別を
行なう。
The above operation is repeated and the WAL register 25
It is assumed that the CMP 28L, which compares the contents of the L and RAL registers 26L, detects a match. In this case, the CMP 28L outputs a coincidence detection signal of logic "1". This coincidence detection signal is guided to one end of A68L. A logic "1" output signal from the FLWED flag 51L is led to the other end of A68L. This is because the FLWED flag 51L is in the set state as described above. in this case,
The AND condition of A68L is satisfied, and a logic "1" signal is output from A68L. This logic "1" signal from A68L indicates that the read address indicated by the RAL register 26L matches the write address of the WAL register 25L when the writing of the sub-relation to the LB20L (S21 in this example) has been completed. This indicates that LB20L has become empty. A logic "1" signal from A68L is directed to gate 69L. Gate 69L receives the logic “1” signal from A68L,
Gate is performed at the designated timing (record end detection timing) from the control timing generation circuit 60. As a result, the logic "1" signal from A68L is output to the FLEMP flag 52L,
2L is set. A logic "1" (set) output signal from FLEMP flag 52L is routed to one end of A73L. An interrupt enable signal 74L from the control signal generation circuit 65 is led to the other end of A73L. In this case, the interrupt permission signal 74L is logic "1" (see FIG. 13) as described above, and therefore A73L outputs a logic "1" signal.
The logic "1" signal from A73L is led to the interrupt generation circuit 76 via OR75, and thereby the interrupt generation circuit 76 generates an interrupt to the CPU 11. When the CPU 11 receives an interrupt from the merger 10 (interrupt generation circuit 76 therein), it reads the contents of a status register (not shown) in the merger 10 and determines the cause of the interrupt.

CPU11は、マージヤ10からのステータス
の読取りにより、LB20Lが空状態となつたこ
とをを判断すると、次のサブリレーシヨン、即ち
第2のリレーシヨン内のS22に関するセツトア
ツプを行なう。この場合のセツトアツプは、前記
したS21に関するセツトアツプと略同様であ
り、MOPレジスタ39には、外部ソートを指定
するMRG−OPコード、ソート順を指定する
AS/DSビツト、LB20Lを指定する論理“1”
のU/Lビツトを含むマージ演算指定情報
(SORT−EX(L)コマンド)がセツトされる。
そして、マージヤ10内のCMDレジスタ41に、
S21の場合と同様に、ENG.GOコマンドがセ
ツトされることにより、マージヤ10が再び起動
される。このとき、クリア回路61によりS21
の場合と同様に、WALレジスタ25L、RALレ
ジスタ26L、FLWEDフラグ51L(および
FLEMPフラグ52L)がクリア(リセツト)さ
れる(第11図のSORT−EX(L)、ENG.GO
コマンドの欄参照)。一方、WAUレジスタ25
U、RAUレジスタ26U、FUWEDフラグ51
U(およびFUEMPフラグ50U)は、CPU11
への割込み時(即ち、動作終了時)の状態を保持
する。したがつて、RAUレジスタ26Uは、次
のレコードの先頭アドレスを示している。この状
態、即ちサブリレーシヨン(この例ではS11)
内の或るレコードの先頭アドレスを指定している
状態は、第11図において「any」で示される。
When the CPU 11 determines by reading the status from the merger 10 that the LB 20L is empty, it performs setup for the next sub-relation, ie, S22 in the second relation. The setup in this case is almost the same as the setup related to S21 described above, and the MOP register 39 specifies the MRG-OP code that specifies external sorting and the sort order.
AS/DS bit, logic “1” specifying LB20L
Merge operation designation information (SORT-EX(L) command) including the U/L bit of is set.
Then, in the CMD register 41 in the merger 10,
As in S21, the merger 10 is activated again by setting the ENG.GO command. At this time, the clear circuit 61 causes the S21
As in the case of , WAL register 25L, RAL register 26L, FLWED flag 51L (and
FLEMP flag 52L) is cleared (reset) (SORT-EX (L) in Figure 11, ENG.GO
(See command column). On the other hand, WAU register 25
U, RAU register 26U, FUWED flag 51
U (and FUEMP flag 50U) is CPU11
The state at the time of interruption (that is, at the end of the operation) is retained. Therefore, the RAU register 26U indicates the start address of the next record. This state, that is, the subrelation (S11 in this example)
The state in which the start address of a certain record within is specified is indicated by "any" in FIG.

クリア回路61によるクリア動作が行なわれる
と、マージヤ10は、MOPレジスタ39内の
SORT−EX(L)コマンドで指定されたデータ処
理(外部ソート)を行なう。この場合、U側では
(RAUレジスタ26Uの内容から明らかなよう
に)UB20Uに残つているサブリレーシヨン
(この例ではS11)の未処理レコード中の先頭
レコード、L側では(RALレジスタ26Lがク
リアされていることから)LB20Lに新たに書
込まれたサブリレーシヨン(この例ではS22)
の先頭レコードから、外部ソートが行なわける。
こり外部ソートの結果、LB20Lが再び空状態
となると、CPU11は再びSORT−EX(L)、
ENG.GOコマンドを用い、S23→UB20Uを
指定し、外部ソートを指示する。これにより、S
11の残り部分の先頭レコードおよびS23の先
頭レコードからの外部ソートが開始される。そし
て、今度はUB20Uが空状態となると、CPU1
1はSORT−EX(U)、ENG.GOコマンド(第1
1図の)を用い、S12→UB20Uを指定
し、外部ソートを指示する。この場合、クリア回
路61は、論理“1”のU/Lビツトおよび
ENG.GOビツトに応じ、SORT−EX(L)、
ENG.GOコマンドの場合と逆に、UB20Uに関
するレジスタ、フラグ類、即ちWAUレジスタ2
5U、RAUレジスタ26U、FUWEDフラグ5
1U(およびFUEMPフラグ52U)をクリアす
る(第11図ののSORT−EX(U)、ENG.GO
コマンドの欄参照)。したがつて、この場合には、
S12の先頭レコードおよびS23の残り部分の
先頭レコードからの外部ソートが開始される。
When the clear circuit 61 performs the clear operation, the merger 10 clears the information in the MOP register 39.
Performs data processing (external sort) specified by the SORT-EX (L) command. In this case, on the U side (as is clear from the contents of the RAU register 26U), the first record of the unprocessed records of the subrelation (S11 in this example) remaining in the UB20U, and on the L side (RAL register 26L is cleared). ) The subrelation newly written to LB20L (S22 in this example)
External sorting is performed starting from the first record.
When LB20L becomes empty again as a result of the external sort, the CPU 11 returns SORT-EX(L),
Using the ENG.GO command, specify S23→UB20U to instruct external sorting. As a result, S
External sorting is started from the first record of the remaining portion of No. 11 and the first record of S23. Then, when UB20U becomes empty, CPU1
1 is SORT-EX (U), ENG.GO command (first
) in Figure 1, specify S12→UB20U and instruct external sorting. In this case, the clear circuit 61 clears the logic “1” U/L bit and
Depending on the ENG.GO bit, SORT-EX (L),
Contrary to the case of the ENG.GO command, registers and flags related to UB20U, that is, WAU register 2
5U, RAU register 26U, FUWED flag 5
Clear 1U (and FUEMP flag 52U) (SORT-EX (U) in Figure 11, ENG.GO
(See command column). Therefore, in this case,
External sorting is started from the first record in S12 and the first record in the remaining portion of S23.

このようにして、マージヤ10においてマージ
ソートが行なわれ、第1のリレーシヨンS1の最
終リレーシヨンS23が全て外部に出力されたも
のとする。この場合、LB20Lが空状態となつ
たことから、FLEMPフラグ52Lがセツトし、
マージヤ10(内の割込み発生回路76)から
CPU11に割込みがかかる。CPU11はマージ
ヤ10からの割込みを受付けると、割込み要因の
判別を行なう。そして、CPU11は、LB20L
が空状態となり、第2のリレーシヨンS2が全て
出力されたことを判断すると、UB20Uに残さ
れたデータ(S12の残り部分)の吐出しを指示
するPASS−1(U)、MRG.GOコマンドをマー
ジヤ10に与える。この場合のMRG.GOコマン
ドは、MRG.GO=1、REG.IND=RST=ENG.
GO=URTRY=LRTLY=0である。マージヤ
10はMRG.GOコマンドにより起動され、
PASS−1(U)コマンドで指示された処理、即
ちRAUレジスタ26Uを用いたUB20Uからの
データ読出しと、UB20Uからの読出しデータ
の外部出力とを行なう。このMRG.GOコマンド
による起動に際しては、RST=ENG.GO=
URTRY=LRTRY=0であることから、クリア
回路61によるクリア動作は禁止される。このた
め、UB20Uに関するレジスタ、フラグ類、即
ちWAUレジスタ25U、RAUレジスタ26U、
FUWEDフラグ51U(およびFUEMPフラグ5
2U)は、前の状態、即ち第11図のに示す
SORT−EX(U)、ENG.GOコマンドの実行終了
時の状態を保持する。明らかなように、RAUレ
ジスタ26Uは、UB20Uに残されたレコード
群の先頭レコードを指示している。したがつて、
マージヤ10の主制御部38内の図示せぬ読出し
制御部は、S12の残り部分を指定バイト単位で
順に読出すことができる。そして、S12の残り
部分が吐出されると、即ちUB20Uが空状態と
なると、FUEMPフラグ52Uがセツトし、マー
ジヤ10に割込みがかかる。
It is assumed that the merge sort is performed in the merger 10 in this way, and all the final relations S23 of the first relation S1 are output to the outside. In this case, since LB20L is empty, the FLEMP flag 52L is set.
From merger 10 (interrupt generation circuit 76 within)
An interrupt occurs to CPU11. When the CPU 11 receives an interrupt from the merger 10, it determines the cause of the interrupt. And CPU11 is LB20L
When it is determined that the second relation S2 has become empty and all of the second relation S2 has been output, the PASS-1 (U) and MRG.GO commands are issued to instruct the output of the data left in the UB20U (remaining part of S12). is given to Majiya 10. The MRG.GO command in this case is MRG.GO=1, REG.IND=RST=ENG.
GO=URTRY=LRTLY=0. Margeya 10 is started by the MRG.GO command,
The processing instructed by the PASS-1 (U) command, that is, reading data from the UB 20U using the RAU register 26U and outputting the read data from the UB 20U to the outside is performed. When starting with this MRG.GO command, RST=ENG.GO=
Since URTRY=LRTRY=0, the clearing operation by the clearing circuit 61 is prohibited. Therefore, the registers and flags related to UB20U, namely WAU register 25U, RAU register 26U,
FUWED flag 51U (and FUEMP flag 5
2U) is shown in the previous state, i.e. in FIG.
Holds the state at the end of execution of the SORT-EX (U) and ENG.GO commands. As is clear, the RAU register 26U indicates the first record of the record group left in the UB 20U. Therefore,
A read control section (not shown) in the main control section 38 of the merger 10 can sequentially read out the remaining portion of S12 in specified byte units. Then, when the remaining portion of S12 is discharged, that is, when the UB 20U becomes empty, the FUEMP flag 52U is set and an interrupt is issued to the merger 10.

CPU11は、マージヤ10からの割込みによ
り、LB20Lが空状態となりS12の残りが全
て吐出されたことを判断すると、マージヤ10へ
の未入力データ(この例では第1のリレーシヨン
S1の最終のサブリレーシヨンS13)をマージ
ヤ10経由で出力することを指示するPASS−1
(U)、ENG.GOコマンドをマージヤ10に与え
る。この場合のENG.GOコマンドは、ENG.GO
=1、REG.IND=RST=MRG.GO=URTRY=
LRTRY=0である。マージヤ10はENG.GOコ
マンドにより起動され、HMA16、INアライナ
13、ソータ12、ソート・チエツカ14を介し
て入力されるS13のUB20Uへの書込みと、
UB20Uに書込まれたS13の読出し出力とを
行なう。この読出し、書込み動作は、前記した
SORT−EX(L)、ENG.GOコマンドの場合と基
本的に同じである。また、上記ENG.GOコマン
ドによる起動に際しては、ENG.GO=1(且つ
PASS−1(U)コマンドによるU側指定)であ
ることから、SORT−EX(L)、ENG.GOコマン
ドの場合と同様に、UB20Uに関するレジス
タ、フラグ類だけがクリア回路61によりクリア
される。したがつて、マージヤ10に入力される
S13は、UB20Uの0番地から書込まれ、同
じく0番地から読出される。
When the CPU 11 determines that the LB20L is empty due to an interrupt from the merger 10 and that all of the remaining S12 has been discharged, the CPU 11 inputs the uninput data to the merger 10 (in this example, the last sub-relay of the first relation S1). PASS-1 instructs to output the section S13) via merger 10
(U) gives the ENG.GO command to the merger 10; The ENG.GO command in this case is ENG.GO
=1, REG.IND=RST=MRG.GO=URTRY=
LRTRY=0. The merger 10 is started by the ENG.GO command, and writes S13 to the UB 20U, which is input via the HMA 16, IN aligner 13, sorter 12, and sort checker 14.
Read and output S13 written in UB20U. These read and write operations are performed as described above.
This is basically the same as the SORT-EX(L) and ENG.GO commands. Also, when starting with the above ENG.GO command, ENG.GO = 1 (and
Since the U side is specified by the PASS-1 (U) command), only the registers and flags related to UB20U are cleared by the clear circuit 61, as in the case of the SORT-EX (L) and ENG.GO commands. Therefore, S13 input to the merger 10 is written from address 0 of the UB 20U and read from address 0 as well.

以上が、マージヤ10による外部ソート処理で
ある。
The above is the external sorting process by the merger 10.

次に、マージヤ10による関係演算処理につい
て、RESTRICT系演算の場合を例にとり、第1
4図乃至第16図を参照して説明する。なお、第
14図は第11図に、第15図は第12図に、第
16図は第13図に対応する。RESTRICT系演
算は、1つの対象リレーシヨンの内から、条件に
合うレコードのみを出力する演算である。マージ
ヤ10によるRESTRICT系演算では、条件デー
タを第1のストリームとしてUB20Uに予め格
納しておき、対象リレーシヨンを第2のストリー
ムとしてLB20Lに格納しつつ、演算が開始さ
れる。この点は、前記した外部ソート(SORT系
演算)の場合と同様である。そして、条件データ
の指定キーフイールドと、対象リレーシヨンのそ
れとの比較を行ない、演算条件が成立したとき、
L側レコードが出力対象として出力選択部OSP
に送られる。なお、U側レコードをL側レコード
と共に出力対象とすることも可能である。
Next, regarding relational calculation processing by the merger 10, we will take the case of RESTRICT type calculations as an example, and explain the first
This will be explained with reference to FIGS. 4 to 16. Note that FIG. 14 corresponds to FIG. 11, FIG. 15 corresponds to FIG. 12, and FIG. 16 corresponds to FIG. 13. RESTRICT operations are operations that output only records that meet the conditions from one target relation. In the RESTRICT type calculation by the merger 10, the condition data is stored in advance in the UB 20U as a first stream, and the calculation is started while storing the target relation in the LB 20L as a second stream. This point is similar to the case of the external sort (SORT type operation) described above. Then, the specified key field of the condition data is compared with that of the target relation, and when the calculation condition is satisfied,
Output selection part OSP with L side record as output target
sent to. Note that it is also possible to output the U-side record together with the L-side record.

今、条件データとしての第1のリレーシヨンを
S1、対象リレーシヨン(第2のリレーシヨン)
をS2とすると、CPU11はマージヤ10に対
し、まずLOAD(U)コマンドにより、S1→
UB20Uを指定し、ENG.GOコマンドによりマ
ージヤ10(を含むエンジン・コア15)を起動
する。これにより、外部ソートの場合と同様に、
S1がUB20Uの0番地から所定バイト単位で
順に書込まれる。そして、RSU×TRNだけのデ
ータの書込みにより、STCカウンタ46からボ
ロー信号が出力され、FUWEDフラグ51Uがセ
ツトすると、マージヤ10からCPU11に割込
みがかかる。次にCPU11は、REST−EQ(L)
コマンドにより、S2→LB20Lを指定し、
REST−EQを指示する。このREST−EQは、条
件データのキーフイールドと対象リレーシヨンの
それとが等しいとき、対象リレーシヨンを出力す
ることを示す。そして、CPU11は、ENG.GO
コマンドによりマージヤ10(を含むエンジン・
コア15)を起動する。以降の動作は、上記した
外部ソート(即ちSORT−EXコマンド)の場合
と略同様である。即ち、マージヤ10では、まず
LB20Lに関するレジスタ、フラグ類がクリア
され、次にS21をLB20Lの0番地から始ま
る領域に書込み動作が開始される。LB20Lへ
のデータ書込みが開始されると、UB20Uおよ
びLB20Lからのデータ読出しが開始される。
UB20UおよびLB20Lからの読出しデータ
はCMP23に導かれ、CMP23および比較制御
部62により、VDLレジスタ47で指定された
キーフイールドの比較確定がなされるとともに、
URB30U、LRB30Lに導かれて同URB30
U、LRB30Lに書込まれる。しかして、UB2
0U、LB20Lからのデータ読出しが該当レコ
ードの最終データとなると、外部ソートの動作で
述べたようにFUEフラグ50U,FLEフラグ5
0Lがセツトする(どちらが先にセツトするか
は、レコード長によつて異なる)。制御タイミン
グ発生回路60は、両フラグ50U,50Lが共
にセツト状態となると、制御信号発生回路65に
対して各種制御信号の出力のタイミング指示を与
える。これにより、制御信号発生回路65は、
MOPレジスタ39に保持されているマージ演算
指定情報中のMRG.GOコマンドおよびAS/DS
ビツト、および比較制御部62からの比較確定結
果に応じ、UB20U、LB20Lのレコード更
新の制御、UB20U、LB20Lに書込まれた
レコードの出力指示等を行なう。そして、FUE
フラグ50U、FLEフラグ50Lがリセツトさ
れ、次のレコード処理が行なわれる。なお、この
例のようにREST−EQ演算が指定されている場
合の制御信号発生回路65の入出力倫理は、第1
6図に示す通りである。但し、第16図の入出力
倫理は、マージヤ10への入力リレーシヨンが昇
順でソートされていること(AS/DS=0)を前
提としている。
Now, the first relation as condition data is S1, and the target relation (second relation)
Assuming that S2 is S2, the CPU 11 first sends the merger 10 a LOAD (U) command to change S1→
Specify UB20U and start merger 10 (including engine core 15) using the ENG.GO command. This allows, as with external sorting,
S1 is sequentially written in predetermined byte units starting from address 0 of UB20U. Then, by writing data of only RSU×TRN, a borrow signal is output from the STC counter 46, and when the FUWED flag 51U is set, an interrupt is generated from the merger 10 to the CPU 11. Next, the CPU 11 uses REST-EQ (L)
Specify S2→LB20L by command,
Instruct REST-EQ. This REST-EQ indicates that the target relation is output when the key field of the condition data is equal to that of the target relation. And CPU11 is ENG.GO
Engine 10 (including
Start up the core 15). The subsequent operation is substantially the same as in the case of the external sort (ie, SORT-EX command) described above. That is, in merger 10, first
The registers and flags related to LB20L are cleared, and then the write operation of S21 is started in the area starting from address 0 of LB20L. When data writing to LB20L is started, data reading from UB20U and LB20L is started.
The read data from the UB20U and LB20L is led to the CMP23, and the CMP23 and comparison control unit 62 compare and confirm the key field specified by the VDL register 47.
Guided by URB30U and LRB30L, the same URB30
U, written to LRB30L. However, UB2
When the data read from 0U and LB20L becomes the final data of the corresponding record, FUE flag 50U and FLE flag 5 are set as described in the external sort operation.
0L is set (which one is set first depends on the record length). The control timing generation circuit 60 gives timing instructions for outputting various control signals to the control signal generation circuit 65 when both flags 50U and 50L are set. As a result, the control signal generation circuit 65
MRG.GO command and AS/DS in the merge operation specification information held in the MOP register 39
Depending on the bit and the comparison result from the comparison control unit 62, it controls updating of records in the UB 20U and LB 20L, and instructs to output records written in the UB 20U and LB 20L. And F.U.E.
The flag 50U and FLE flag 50L are reset, and the next record process is performed. Note that the input/output ethics of the control signal generation circuit 65 when REST-EQ calculation is specified as in this example is as follows.
As shown in Figure 6. However, the input/output ethics shown in FIG. 16 assumes that the input relations to the merger 10 are sorted in ascending order (AS/DS=0).

このようにして、REST−EQ(L)、ENG.GO
コマンドで指定された演算が実行され、例えば第
15図のに示すように、RALレジスタ26L
の内容がWALレジスタ25Lのそれに一致し、
CMP28Lから一致検出信号が出力されたもの
とする。この場合、前記した外部ソートの場合と
同様に、FLEMPフラグ52Lがセツトし、CPU
11に対し割込みがかかる。これによりCPU1
1は、マージヤ10での演算終了を判断する。こ
れは、CMP28Uから一致検出信号が出力され、
FUEMPフラグ52Uがセツトした場合も同様で
ある。
In this way, REST-EQ(L), ENG.GO
The operation specified by the command is executed, and the RAL register 26L is stored, for example, as shown in FIG.
The content of matches that of WAL register 25L,
It is assumed that a coincidence detection signal is output from the CMP 28L. In this case, the FLEMP flag 52L is set and the CPU
11 is interrupted. This allows CPU1
1 determines whether the calculation in merger 10 is completed. This is because a match detection signal is output from CMP28U,
The same applies when the FUEMP flag 52U is set.

このような状態で、UB20U、LB20Lに
格納されているデータに対し、別の演算を行ない
たい場合がある。この場合、マージヤ10のみを
起動することになるため、基本的にはMRG.GO
コマンドが使用される。しかし、これまでに示し
たMRG.GOコマンドでは、前記したようにUB2
0U或いはLB20Lに関するレジスタ、フラグ
類はクリアされない。これでは、UB20U、
LB20L内のデータの先頭から所望の演算を行
なうことはできない。そこで、この実施例では、
第14図のに示すように、所望のマージ演算コ
マンド(この例ではREST−NE(L)コマンド)
とともに、URTRY並びにLRTRYが指定された
MRG.GOコマンド、即ちMRG.GO=URTRY=
LRTRY=1、REG.IND=RST=ENG.GO=0
のMRG.GOコマンドが適用される。第7図のク
リア回路61に示すように、URTRYビツトは、
OR80Uの一端に導かれ、LRTRYビツトはOR
80Lの一端に導かれる。したがつて、URTRY
=LRTRY=1のこの例では、OR80U,80
Lの出力レベルは論理“1”となる。このため、
制御タイミング発生回路60からのスタートタイ
ミングで、URTRYビツトに対応してRAUレジ
スタ26UおよびFUEMPフラグ52Uがクリア
され、LRTRYビツトに対応してRALレジスタ
26LおよびFLEMPフラグ52Lがクリアされ
る。一方、WAUレジスタ25U、WALレジス
タ25L、FUWEDフラグ51U、FLWEDフラ
グ51Lについては、前の状態、即ち第14図の
に示すREST−EQ(L)、ENG.GOコマンドの
実行終了時の状態を保持する。したがつて、UB
20U、LB20Lに格納されているデータに対
し、その先頭データから所望の演算(この例では
REST−NE(L)演算)を行なうことができる。
なお、REST−NEコマンドでは、条件データの
キーフイールドと、対象リレーシヨンのそれとが
等しくなく、且つLB20Lに対するレコード更
新が行なわれるときのU側データ(レコード)が
出力対象となる。
In such a state, there may be cases where it is desired to perform another calculation on the data stored in UB20U and LB20L. In this case, only MRGiya 10 will be started, so basically MRG.GO
command is used. However, with the MRG.GO command shown so far, UB2
Registers and flags related to 0U or LB20L are not cleared. In this case, UB20U,
It is not possible to perform a desired operation from the beginning of the data in LB20L. Therefore, in this example,
As shown in Figure 14, the desired merge operation command (REST-NE(L) command in this example)
In addition, URTRY and LRTRY are specified.
MRG.GO command, i.e. MRG.GO=URTRY=
LRTRY=1, REG.IND=RST=ENG.GO=0
The MRG.GO command is applied. As shown in the clear circuit 61 in FIG. 7, the URTRY bit is
Guided by one end of OR80U, the LRTRY bit is OR
It is guided to one end of 80L. Therefore, URTRY
=LRTRY=1 In this example, OR80U,80
The output level of L becomes logic "1". For this reason,
At the start timing from the control timing generation circuit 60, the RAU register 26U and FUEMP flag 52U are cleared in response to the URTRY bit, and the RAL register 26L and FLEMP flag 52L are cleared in response to the LRTRY bit. On the other hand, the WAU register 25U, WAL register 25L, FUWED flag 51U, and FLWED flag 51L retain their previous states, that is, the state at the end of execution of the REST-EQ (L) and ENG.GO commands shown in Figure 14. do. Therefore, UB
Perform the desired operation (in this example) on the data stored in 20U and LB20L from the first data.
REST-NE(L) operation) can be performed.
In addition, in the REST-NE command, the U-side data (record) when the key field of the condition data is not equal to that of the target relation and the record update for LB 20L is performed is the output target.

次に、LB20Lの容量を越える対象リレーシ
ヨンに対するRESTRICT系演算(REST−EQ演
算)について、第17図および第18図を参照し
て説明する。なお、第17図は第11図に、第1
8図は第12図に対応する。今、条件データとし
ての第1のリレーシヨンをS1、対象リレーシヨ
ン(第2のリレーシヨン)をS2とする。また、
S2は、RALレジスタ26Lの容量単位に応じ
てS21〜S23に分割されるものとする。な
お、条件データであるS1は、RAUレジスタ2
6Uの容量を越えないことを前提とする。この場
合、CPU11からマージヤ10に対し、まず
LOAD(U)、ENG.GOコマンドが与えられる。
これによりCMP28Uに関するレジスタ、フラ
グ類がクリアされ(第17図のLOAD(U)、
ENG.GOコマンドの欄参照)、S1がUB20U
の0番地から所定バイト単位で書込まれる。S1
の書込みが完了すると、CPU11からマージヤ
10に対し、REST−EQ(L)、ENG.GOコマン
ドが与えられる。これにより、LB20Lに関す
るレジスタ、フラグ類がクリアされ(第17図の
REST−EQ(L)、ENG.GOコマンドの欄参
照)、S21をLB20Lの0番地から始まる領域
に書込む動作が開始される。LB20Lへのデー
タ書込みが開始されると、前記したようにUB2
0UおよびLB20Lからのデータ読出しが開始
され、VDLレジスタ47で指定されたキーフイ
ールド部分の比較が行なわれる。そして、FUE
フラグ50UおよびFLEフラグ50Lが共にセ
ツト状態となると、レコード間の比較結果、
MRG.GOコマンド、およびAS/DSビツトによ
り、UB20U、LB20Lに書込まれたレコー
ドに対する出力指示、およびレコード更新が制御
され、次のレコード処理に進む。
Next, the RESTRICT type calculation (REST-EQ calculation) for the target relation exceeding the capacity of the LB 20L will be explained with reference to FIGS. 17 and 18. In addition, Fig. 17 is similar to Fig. 11 and Fig. 1
FIG. 8 corresponds to FIG. 12. Now, assume that the first relation as condition data is S1, and the target relation (second relation) is S2. Also,
It is assumed that S2 is divided into S21 to S23 according to the capacity unit of the RAL register 26L. Note that the condition data S1 is the RAU register 2.
It is assumed that the capacity does not exceed 6U. In this case, first, from CPU 11 to merger 10,
LOAD(U), ENG.GO command is given.
As a result, the registers and flags related to CMP28U are cleared (LOAD (U) in Figure 17,
(See ENG.GO command column), S1 is UB20U
is written in predetermined byte units starting from address 0. S1
When writing is completed, the CPU 11 gives the merger 10 REST-EQ (L) and ENG.GO commands. As a result, the registers and flags related to LB20L are cleared (see Figure 17).
REST-EQ (L), see the ENG.GO command column), the operation of writing S21 into the area starting from address 0 of LB20L is started. When data writing to LB20L is started, as mentioned above, UB2
Data reading from 0U and LB20L is started, and the key field portions designated by VDL register 47 are compared. And F.U.E.
When the flag 50U and the FLE flag 50L are both set, the comparison result between records,
The MRG.GO command and the AS/DS bit control output instructions and record updates for records written to UB20U and LB20L, and processing proceeds to the next record.

このようにして、REST−EQ(L)、ENG.GO
コマンドで指定された演算が実行され、例えば第
17図および第18図のに示すように、RAL
レジスタ26Lの内容がWALレジスタ25Lの
それに一致し、CMP28Lから一致検出信号が
出力されたものとする。この場合、前記した外部
ソートの場合と同様に、FLEMPフラグ52Lが
セツトし、CPU11に対し割込みがかかる。こ
れによりCPU11は、S1とS21との間の演
算終了を判断する。CPU11は、次のS22と
UB20U内のS1との間のREST−EQ演算のた
めに、マージヤ10に対し、REST−EQ(L)、
ENG.GOコマンドを与える。但し、S1につい
ては、再度先頭レコードから読出す必要があるた
め、第17図のに示すように、URTRYが指定
されたENG.GOコマンド、即ちENG.GO=
URTRY=1、REG.IND=RST=MRG.GO=
LRTRY=0のMRG.GOコマンドが適用される。
URTRY指定のENG.GOコマンドが適用される
るこの場合、マージヤ10の起動に際し、第7図
のクリア回路61により、論理“1”のURTRY
ビツトに応じてRAUレジスタ26Uおよび
FUEMPフラグ52Uがクリアされ、論理“1”
のENG.GOビツト(およびU/Lビツトによる
LB20L指定)に応じてWALレジスタ25L、
FLWEDフラグ51L、RALレジスタ26L、
FLEMPフラグ52Lがクリアされる。また、
WAUレジスタ25U、FUWEDフラグ51Uに
ついては、前の状態を保持する。したがつて、
UB20Uに既に書込まれているS1について
は、その先頭レコードからの読出しが可能とな
る。また、S1が全て読出され、UB20Uが空
状態となる場合の正しい検出も可能となる。一
方、S22については、その先頭レコードから
LB20Lに書込まれ、同先頭レコードから読出
されることは、明らかである。
In this way, REST-EQ(L), ENG.GO
The operation specified by the command is executed, and the RAL
It is assumed that the contents of the register 26L match those of the WAL register 25L and a coincidence detection signal is output from the CMP 28L. In this case, as in the case of the external sort described above, the FLEMP flag 52L is set and an interrupt is issued to the CPU 11. Thereby, the CPU 11 determines the end of the calculation between S1 and S21. CPU11 is the next S22
For REST-EQ calculation with S1 in UB20U, REST-EQ (L),
Give the ENG.GO command. However, as for S1, it is necessary to read from the first record again, so as shown in Fig. 17, the ENG.GO command with URTRY specified, that is, ENG.GO=
URTRY=1, REG.IND=RST=MRG.GO=
The MRG.GO command with LRTRY=0 is applied.
In this case, when the ENG.GO command with URTRY specification is applied, when the merger 10 is started, the clear circuit 61 shown in FIG.
RAU register 26U and
FUEMP flag 52U is cleared and logic “1”
ENG.GO bit (and U/L bit)
LB20L specification) WAL register 25L,
FLWED flag 51L, RAL register 26L,
FLEMP flag 52L is cleared. Also,
The WAU register 25U and FUWED flag 51U retain their previous states. Therefore,
Regarding S1 that has already been written to the UB20U, it becomes possible to read it from the first record. Moreover, it is also possible to correctly detect when S1 is completely read and UB20U becomes empty. On the other hand, for S22, from the first record
It is clear that the data is written to LB20L and read from the same first record.

このようにして、REST−EQ(L)、並びに
URTRY指定のENG.GOコマンドで指定された
演算が実行され、例えば第17図および第18図
のに示すように、RAUレジスタ26Uの内容
がWAUレジスタ25Uのそれに一致し、CMP2
8Uから一致検出信号が出力されたものとする。
この場合、FUEMPフラグ52Uがセツトし、
CPU11に対し割込みがかかる。これにより
CPU11は、S1とS22との間の演算終了を
判断する。CPU11は、次のS23とUB20U
内のS1との間のREST−EQ演算のために、マ
ージヤ10に対し、REST−EQ(L)、並び
URTRY指定のENG.GOコマンドを与える。こ
れにより、UB20Uに既に書込まれているS1
と、LB20Lに新たに書込まれるS23との間
のREST−EQ演算が、その先頭レコードから行
なわれる。
In this way, REST-EQ(L) and
The operation specified by the ENG.GO command with the URTRY specification is executed, and as shown in FIGS. 17 and 18, the contents of the RAU register 26U match those of the WAU register 25U, and the CMP2
It is assumed that a coincidence detection signal is output from 8U.
In this case, the FUEMP flag 52U is set,
An interrupt is generated for the CPU11. This results in
The CPU 11 determines the end of the calculation between S1 and S22. CPU11 is the following S23 and UB20U
For the REST-EQ operation between S1 in the merger 10, REST-EQ(L),
Give the ENG.GO command with URTRY specification. As a result, S1 that has already been written to UB20U
The REST-EQ operation between S23 and S23, which is newly written to LB20L, is performed from the first record.

次に、マージヤ10による関係演算処理につい
て、JOIN系演算の場合を例にとり説明する。
JOIN系演算は、2つのリレーシヨンの指定キー
フイールドの比較を行ない、条件が成立した組で
新たなリレーシヨンを作り出す、いわゆる2スト
リーム入力合成出力型の演算である。例えば、
JOIN系演算の1つであるJOIN−EQ演算では、
指定キーフイールドが一致した2レコードが1つ
のレコードに合成出力される。マージヤ10によ
るJOIN系演算では、LOAD(U)演算指定によ
り、第1のストリームをUB20Uに格納した
後、JOIN(L)系演算指定により第2のリレー
シヨンをLB20Lに格納しつつ、JOIN演算が行
なわれる。そして、UB20Uからの読出しレコ
ード(U側レコード)の指定キーフイールドと、
LB20Lからの読出しレコード(L側レコード)
のそれとの比較を行ない、演算条件が成立したと
き、U側およびL側レコードの出力指示が制御信
号発生回路65から与えられる。JOIN−EQ演算
における制御信号発生回路65の入出力論理を、
第19図に示す。但し、第19図の入出力論理
は、マージヤ10へのリレーシヨンが昇順でソー
トされていることを前提としている。なお、
JOIN系演算では、第1および第2のリレーシヨ
ンは、UB20U、LB20Lの容量を越えず、
そのソート順も同じ必要がある。ソート順が同じ
であることは、前記したSORT系演算、
RESTRICT系演算の場合にも同様である。
Next, relational calculation processing by the merger 10 will be explained using a JOIN type calculation as an example.
A JOIN type operation is a so-called two-stream input synthesis output type operation that compares designated key fields of two relations and creates a new relation based on the set where the conditions are met. for example,
In the JOIN-EQ operation, which is one of the JOIN-type operations,
Two records with matching specified key fields are combined and output as one record. In the JOIN operation by merger 10, after storing the first stream in UB20U by specifying LOAD (U) operation, and storing the second relation in LB20L by specifying JOIN (L) operation, JOIN operation is performed. It is done. And the specified key field of the read record from UB20U (U side record),
Read record from LB20L (L side record)
When the calculation conditions are satisfied, an instruction to output the U-side and L-side records is given from the control signal generation circuit 65. The input/output logic of the control signal generation circuit 65 in the JOIN-EQ operation is
It is shown in FIG. However, the input/output logic in FIG. 19 is based on the assumption that the relations to the merger 10 are sorted in ascending order. In addition,
In JOIN operations, the first and second relations do not exceed the capacity of UB20U and LB20L,
The sort order must also be the same. The fact that the sort order is the same means that the SORT type operations mentioned above,
The same applies to RESTRICT operations.

さて、UB20U、LB20Lからの読出しレ
コードは、CMP23による比較動作と並行して、
URB30U、LRB30Lに書込まれる。そし
て、FUEフラグ50UおよびFLEフラグ50L
が共にセツト状態となると、即ち、U側レコード
およびL側レコードの最終データの読出しが共に
検出されると、制御信号発生回路65は前記した
外部ソートの場合と同様に、UB20U、LB2
0Lに書込まれたレコードの出力指示、およびレ
コード更新の制御を行なう。JOIN−EQ演算のこ
の例において、比較制御部62によりU=Lが確
定しているものとすると、制御信号発生回路65
は、第19図の入出力論理に示すように、論理
“1”の出力指示信号85U,85Lを出力する。
この論理“1”の指示信号85U,85Lは、
FUOフラグ53U、FLOフラグ53Lに導かれ、
これにより同フラグ53U,53Lはセツトす
る。出力シーケンス制御部83は、FUOフラグ
53UおよびFLOフラグ53Lを監視している。
この例のように、FUOフラグ53U、FLOフラ
グ53Lが共にセツトした場合、出力シーケンス
制御部83は、まずURB読出し制御部84Uに
対してUB20Uからのレコードの読出し出力を
指示すると共に、切出し制御部89にU側レコー
ドに対する切出し制御を指示する。URB読出し
制御部84Uは、出力シーケンス制御部83から
の指示に応じてRAURレジスタ35Uおよび
CTRカウンタ56をクリアし、しかる後RAUR
レジスタ35Uを用いてURB30Uからのデー
タ読出しを行なう。URB30Uからの読出しデ
ータは、マルチプレクサ32を介してROUTレ
ジスタ33に導かれる。URB読出し制御部84
Uは、URB30Uから所定バイトのデータを読
出す毎に、RAURレジスタ35UおよびCTRカ
ウンタ56の内容を+1すると共に、出力ストロ
ーブ信号87Uを出力する。CTRカウンタ56
の内容は、CMP57U〜59U、CMP57L〜
59Lに導かれ、OSUAレジスタ54U、OSUB
レジスタ55U、RSUレジスタ43U、OSLA
レジスタ54L、OSLBレジスタ55L、RSLレ
ジスタ43Lと比較される。CMP57U,58
UおよびCMP57L,58Lの比較結果は切出
し制御部89に導かれる。
Now, the read records from UB20U and LB20L are done in parallel with the comparison operation by CMP23.
Written to URB30U and LRB30L. And FUE flag 50U and FLE flag 50L
When both are in the set state, that is, when the reading of the final data of the U-side record and the L-side record are both detected, the control signal generation circuit 65 outputs UB20U and LB2 as in the case of the external sort described above.
Instructs to output records written to 0L and controls record updates. In this example of JOIN-EQ calculation, assuming that U=L has been determined by the comparison control section 62, the control signal generation circuit 65
outputs output instruction signals 85U and 85L of logic "1" as shown in the input/output logic of FIG.
These logic “1” instruction signals 85U, 85L are
Guided by FUO flag 53U and FLO flag 53L,
As a result, the flags 53U and 53L are set. The output sequence control unit 83 monitors the FUO flag 53U and the FLO flag 53L.
As in this example, when the FUO flag 53U and FLO flag 53L are both set, the output sequence control unit 83 first instructs the URB readout control unit 84U to read and output records from the UB 20U, and also 89 to control the extraction of the U-side record. The URB read control unit 84U controls the RAUR register 35U and
Clear CTR counter 56 and then RAUR
Data is read from the URB 30U using the register 35U. Read data from URB 30U is guided to ROUT register 33 via multiplexer 32. URB read control unit 84
Each time U reads a predetermined byte of data from URB 30U, it increments the contents of RAUR register 35U and CTR counter 56 by 1 and outputs an output strobe signal 87U. CTR counter 56
The contents are CMP57U~59U, CMP57L~
Guided by 59L, OSUA register 54U, OSUB
Register 55U, RSU register 43U, OSLA
It is compared with register 54L, OSLB register 55L, and RSL register 43L. CMP57U, 58
The comparison results of U and CMPs 57L and 58L are led to a cutting control section 89.

切出し制御部89は、割込み制御部63からU
側レコードの切出し制御を指示された場合、
CMP57UおよびCMP58Uを開始する。そし
て、切出し制御部89は、現読出し中のデータの
レコード内位置を示すCTRカウンタ56の内容
(この例では、RAURレジスタ35Uの内容、即
ちURB30Uに対する読出しアドレスに一致)
をXとすると、CMP57U,57Uにより
OSUA≦X≦OSUBが検出されている期間は、ゲ
ート88に対して出力許可を与える。この結果、
切出し制御部89から出力許可が与えられている
期間だけ、URB読出し制御部84Uからの出力
ストローブ信号87UがROUTレジスタ33に
導かれ、URB30Uからの読出しデータが
ROUTレジスタ33にラツチされる。したがつ
て、OSUA(第1の切出し位置)およびOSUB(第
2の切出し位置)を適切な値に設定することによ
り、出力対象となるU側レコードから所望の属性
だけを選択的に切出し出力することができる。こ
れは、L側レコードについても同様である。な
お、OSUA(OSUA)=0、OSUB(OSLB)=
RSUの場合には、1レコード分のデータがその
まま出力される。
The cutout control unit 89 is connected to the U from the interrupt control unit 63.
If you are instructed to control the extraction of side records,
Start CMP57U and CMP58U. Then, the extraction control unit 89 controls the contents of the CTR counter 56 (in this example, the contents of the RAUR register 35U, which match the read address for the URB 30U) indicating the position in the record of the data currently being read.
If is X, then by CMP57U, 57U
During the period in which OSUA≦X≦OSUB is detected, output permission is given to the gate 88. As a result,
Only during the period when output permission is given from the cutout control unit 89, the output strobe signal 87U from the URB readout control unit 84U is guided to the ROUT register 33, and the readout data from the URB 30U is
It is latched into the ROUT register 33. Therefore, by setting OSUA (first extraction position) and OSUB (second extraction position) to appropriate values, only desired attributes can be selectively extracted and output from the U-side records to be output. be able to. This also applies to the L-side record. Note that OSUA (OSUA) = 0, OSUB (OSLB) =
In the case of RSU, data for one record is output as is.

URB30Uからの読出しデータが該当レコー
ドの最終データとなると、CMP59Uはオーバ
フロー状態となり、CMP59Uからボロー信号
が出力される。URB読出し制御部84Uは、
CMP59Uからボロー信号が出力されると、レ
コード読出し終了を判断し、その旨を出力シーケ
ンス制御部83に通知する。出力シーケンス制御
部83は、URB読出し制御部84Uから終了が
通知され、この例のようにFLOフラグ53Lが
セツトされていると、LRB読出し制御部84L
に対してLB20Lからのレコードの読出し出力
を指示すると共に、切出し制御部89にL側レコ
ードに対する切出し制御を指示する。これによ
り、上記した場合と同様にして、L側レコードの
うちOSLA≦X≦OSLBを満足するフイールド部
分のデータが切出し出力される。
When the read data from the URB 30U becomes the final data of the corresponding record, the CMP 59U enters an overflow state and a borrow signal is output from the CMP 59U. The URB read control unit 84U is
When a borrow signal is output from the CMP 59U, it is determined that the record reading has ended, and the output sequence control unit 83 is notified of this fact. The output sequence control unit 83 is notified of the end by the URB readout control unit 84U, and if the FLO flag 53L is set as in this example, the output sequence control unit 83 outputs the LRB readout control unit 84L.
It instructs the LB 20L to read and output records, and also instructs the extraction control unit 89 to perform extraction control for the L-side record. As a result, in the same manner as in the case described above, the data of the field portion satisfying OSLA≦X≦OSLB in the L-side record is extracted and output.

なお、前記実施例では、出力対象レコードのう
ち、第1および第2の切出し位置で挟まれたフイ
ールド部分を切出しセンタ切出すの場合について
説明したが、その外側部分を切出すサイド切出し
も可能である。また、センタ切出し/サイド切出
しを指定するフラグを設けることにより、センタ
およびサイドの両切出しに対処することも可能で
ある。
In the above embodiment, a case was explained in which the field portion sandwiched between the first and second extraction positions of the record to be output is extracted and center extraction is performed, but it is also possible to perform side extraction in which the outer portion is extracted. be. Further, by providing a flag specifying center cutting/side cutting, it is also possible to deal with both center cutting and side cutting.

[発明の効果] 以上詳述したようにこの発明によれば、特に関
係演算で扱われるレコード中の所望のフイールド
だけを高速で選択出力することができる。
[Effects of the Invention] As described in detail above, according to the present invention, it is possible to selectively output only a desired field in a record that is particularly handled in a relational operation at high speed.

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

第1図はこの発明の一実施例に係るマージヤの
ブロツク構成図、第2図は第1図のマージヤを適
用する関係データベースエンジン(RDBE)の全
体構成図、第3図はマージ演算指定情報のフオー
マツト図、第4図はコマンドデータのフオーマツ
ト図、第5図は第1図に示す主制御部の機能構成
を示すブロツク図、第6図は第5図に示す割込み
制御部周辺のブロツク構成図、第7図は第5図に
示すクリア回路周辺の回路構成図、第8図は第5
図に示す出力制御部周辺のブロツク構成図、第9
図は外部ソートの手順を示す概略図、第10図は
外部ソートの概念図、第11図は外部ソートを実
行するためのコマンド列と、各コマンドによる起
動時および終了時における各種レジスタ、フラグ
類の内容との対応関係を示す図、第12図は第1
1図に示す各コマンドの実行終了時のU/Lバツ
フアへの書込み並びに読出し位置の変化を説明す
る図、第13図は外部ソートが指定されている場
合の制御信号発生回路の入出力論理の一例を示す
図、第14図乃至第16図は第11図乃至第13
図に対応するもので、RESTRICT(制約)系演
算を説明するための図、第17図および第18図
は第11図および第12図に対応するもので、対
象リレーシヨンがマージヤのバツフア容量を越え
る場合のRESTRICT(制約)系演算を説明する
ための図、第19図はJOIN系演算(JOIN−EQ)
が指定されている場合の制御信号発生回路の入出
力論理の一例を示す図である。 10……マージヤ、11……CPU、20U…
…Uバツフア、20L……Lバツフア、23,2
8U,28L,57U〜59U,57L〜59L
……比較器(CMP)、27U……BUUレジスタ、
27L……BULレジスタ、38……主制御部、
39……MOPレジスタ、41……CMDレジス
タ、42……TRNレジスタ、43U……RSUレ
ジスタ、43L……RSLレジスタ、47……
VDLレジスタ、50U……FUEフラグ、50L
……FLEフラグ、51U……FUWEDフラグ、5
1L……FLWEDテラグ、52U……FUEMPフ
ラグ、52L……FLEMPフラグ、53U……
FUOフラグ、53L……FLOフラグ、54U…
…OSUAレジスタ、54L……OSLAレジスタ、
55U……OSUBレジスタ、55L……OSLBレ
ジスタ、61……クリア回路、62……比較制御
部、63……割込み制御部、64……出力制御
部、65……制御信号発生回路、89……切出し
制御部。
FIG. 1 is a block configuration diagram of a merger according to an embodiment of the present invention, FIG. 2 is an overall configuration diagram of a relational database engine (RDBE) to which the merger of FIG. 1 is applied, and FIG. 3 is a diagram of merge operation specification information. 4 is a format diagram of command data, FIG. 5 is a block diagram showing the functional configuration of the main control section shown in FIG. 1, and FIG. 6 is a block configuration diagram around the interrupt control section shown in FIG. 5. , Figure 7 is a circuit configuration diagram around the clear circuit shown in Figure 5, and Figure 8 is a diagram of the circuit around the clear circuit shown in Figure 5.
Block configuration diagram around the output control section shown in Figure 9.
The figure is a schematic diagram showing the procedure of external sorting, Figure 10 is a conceptual diagram of external sorting, and Figure 11 is a command sequence for executing external sorting, and various registers and flags at the time of startup and termination by each command. Figure 12 is a diagram showing the correspondence relationship with the contents of
Figure 1 is a diagram explaining the changes in the writing and reading positions to the U/L buffer at the end of execution of each command shown in Figure 1, and Figure 13 is a diagram showing the input/output logic of the control signal generation circuit when external sorting is specified. Figures 14 to 16 show examples, and Figures 11 to 13
Figures 17 and 18 correspond to Figures 11 and 12, and are diagrams for explaining RESTRICT operations. Figures 17 and 18 correspond to Figures 11 and 12. A diagram to explain the RESTRICT (constraint) type operation when exceeding the limit, Figure 19 is the JOIN type operation (JOIN-EQ)
FIG. 3 is a diagram illustrating an example of input/output logic of a control signal generation circuit when . 10...Majiya, 11...CPU, 20U...
...U Batsuhua, 20L...L Batsuhua, 23,2
8U, 28L, 57U~59U, 57L~59L
...Comparator (CMP), 27U...BUU register,
27L...BUL register, 38...Main control unit,
39...MOP register, 41...CMD register, 42...TRN register, 43U...RSU register, 43L...RSL register, 47...
VDL register, 50U...FUE flag, 50L
...FLE flag, 51U...FUWED flag, 5
1L...FLWED Terrag, 52U...FUEMP flag, 52L...FLEMP flag, 53U...
FUO flag, 53L...FLO flag, 54U...
...OSUA register, 54L...OSLA register,
55U...OSUB register, 55L...OSLB register, 61...Clear circuit, 62...Comparison control section, 63...Interrupt control section, 64...Output control section, 65...Control signal generation circuit, 89... Cutting control section.

Claims (1)

【特許請求の範囲】 1 ソート処理が施された第1のリレーシヨンを
格納する第1バツフア20Uと、 ソート処理が施された第2のリレーシヨンを格
納する第2バツフア20Lと、 演算種別を示すオペレーシヨンコード、および
上記第1または第2バツフアのいずれか一方を指
定するバツフア指定ビツトを保持する第1レジス
タ39と、 上記第1または第2バツフアに格納されるリレ
ーシヨンを構成するレコードのレコード数を示す
レコード数情報を保持する第2レジスタ42と、 上記第1または第2バツフアに格納されるリレ
ーシヨンを構成するレコードのレコード長を示す
レコード長情報を保持する第3レジスタ43U,
43Lと、 上記リレーシヨンのキーフイールド長を示すキ
ーフイールド長情報を保持する第4レジスタ47
と、 上記第1レジスタに保持された上記オペレーシ
ヨンコードによりロード処理または関係演算処理
が指定されている場合に、上記第1または第2バ
ツフアのうち上記バツフア指定ビツトで指定され
たバツフアに、上記第2レジスタで指定されるレ
コード数、および上記第3レジスタで指定される
レコード長で示されるデータ量の上記リレーシヨ
ンを書込む手段38と、 上記第1レジスタに保持された上記オペレーシ
ヨンコードにより関係演算処理が指定されている
場合に、上記第1および第2バツフアからそれぞ
れ1レコードずつデータを読出す手段65と、 上記第1バツフアから読出された1レコード分
のデータを一時格納する第3バツフア30Uと、 上記第2バツフアから読出された1レコード分
のデータを一時格納する第4バツフア30Lと、 上記第1および第2バツフアから読出された上
記両レコードを上記第4レジスタで指定されてい
る上記キーフイールド間で比較する第1比較器2
3と、 この第1比較器の比較結果および上記第1レジ
スタに保持された上記オペレーシヨンコードに応
じ、上記第1および第2バツフアに対する読出し
アドレスの更新制御を行なう手段65と、 上記第3または第4バツフアに格納されている
1レコード分のデータの外部への出力を制御する
読出し制御部84U,84Lと、 外部出力対象レコードの第1の切出し位置を指
定する第1切出しポインタ54U,54Lと、 上記外部出力対象レコードの第2の切出し位置
を指定する第2切出しポインタ55U,55L
と、 上記読出し制御部が提示する上記第3または第
4バツフアへの読出しアドレスと上記第1切出し
ポインタの内容とを比較する第2比較器57U,
57Lと、 上記読出しアドレスと上記第2切出しポインタ
の内容とを比較する第3比較器58U,58L
と、 上記第2および第3比較器の比較結果に応じて
上記読出し制御部の動作を制御する切出し制御部
89と を具備することを特徴とするデータ処理装置。
[Scope of Claims] 1. A first buffer 20U that stores a first relation that has been subjected to a sorting process, a second buffer 20L that stores a second relation that has been subjected to a sorting process, and a calculation type. a first register 39 that holds an operation code to indicate and a buffer specification bit that specifies either the first or second buffer; and a record that constitutes a relation stored in the first or second buffer. a second register 42 that holds record number information indicating the number of records; a third register 43U that holds record length information indicating the record length of the records constituting the relation stored in the first or second buffer;
43L, and a fourth register 47 that holds key field length information indicating the key field length of the relation.
and, when load processing or relational operation processing is specified by the operation code held in the first register, the above is applied to the buffer specified by the buffer specification bit among the first or second buffer. means 38 for writing the relation of the amount of data indicated by the number of records specified in the second register and the record length specified in the third register; and the operation code held in the first register. When relational calculation processing is specified, a means 65 for reading data one record each from the first and second buffers, and a third means 65 for temporarily storing data for one record read from the first buffer. a buffer 30U; a fourth buffer 30L for temporarily storing data for one record read from the second buffer; and a buffer 30L for temporarily storing data for one record read from the second buffer; A first comparator 2 that compares between the key fields
3, means 65 for controlling the updating of read addresses for the first and second buffers according to the comparison result of the first comparator and the operation code held in the first register; Read control units 84U, 84L that control the output of one record of data stored in the fourth buffer to the outside, and first cutout pointers 54U, 54L that specify the first cutout position of the record to be output to the outside. , second extraction pointers 55U, 55L that specify the second extraction position of the external output target record.
and a second comparator 57U that compares the read address to the third or fourth buffer presented by the read control unit with the content of the first extraction pointer.
57L, and third comparators 58U and 58L that compare the read address and the contents of the second extraction pointer.
and an extraction control section 89 that controls the operation of the readout control section according to the comparison results of the second and third comparators.
JP59183742A 1984-09-04 1984-09-04 Data processing device Granted JPS6162139A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP59183742A JPS6162139A (en) 1984-09-04 1984-09-04 Data processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59183742A JPS6162139A (en) 1984-09-04 1984-09-04 Data processing device

Publications (2)

Publication Number Publication Date
JPS6162139A JPS6162139A (en) 1986-03-31
JPH0370824B2 true JPH0370824B2 (en) 1991-11-11

Family

ID=16141179

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59183742A Granted JPS6162139A (en) 1984-09-04 1984-09-04 Data processing device

Country Status (1)

Country Link
JP (1) JPS6162139A (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4827447A (en) * 1986-06-13 1989-05-02 International Business Machines Corporation Method for selectively returning to the beginning or the previous revision point in document edition

Also Published As

Publication number Publication date
JPS6162139A (en) 1986-03-31

Similar Documents

Publication Publication Date Title
JPH06290076A (en) Debugger device
KR970003321B1 (en) System using microprocessor address lines coprocessor selection within a multi-coprocessor apparatus
JP3605978B2 (en) Microcomputer
JPH0370824B2 (en)
JPH0370822B2 (en)
JPH0370820B2 (en)
JPH0370823B2 (en)
JPH0370825B2 (en)
JPH0373018B2 (en)
JPH0370821B2 (en)
JPH0373017B2 (en)
JPH0373022B2 (en)
JPS6238953A (en) Main storage device for compression of partial write access
JP2741514B2 (en) Multi CPU system
JPH06274462A (en) Asynchronous writing system for shared memory
JPS6352240A (en) Data processor
JP5062950B2 (en) Direct memory access device and control method thereof
JP2553630B2 (en) Data processing device
JPS60225948A (en) Debugging device
JPS62212745A (en) Data processor having buffer memory
JPS63103312A (en) Timer control system
JPH0253820B2 (en)
JPH0630056B2 (en) Signal processor
JPH0439732A (en) Variable length data processor
JPH04148331A (en) Microcomputer

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term