JP3263362B2 - データ処理装置 - Google Patents

データ処理装置

Info

Publication number
JP3263362B2
JP3263362B2 JP15697698A JP15697698A JP3263362B2 JP 3263362 B2 JP3263362 B2 JP 3263362B2 JP 15697698 A JP15697698 A JP 15697698A JP 15697698 A JP15697698 A JP 15697698A JP 3263362 B2 JP3263362 B2 JP 3263362B2
Authority
JP
Japan
Prior art keywords
data
bus
input
output
processor
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
JP15697698A
Other languages
English (en)
Other versions
JPH11353270A (ja
Inventor
光則 郡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP15697698A priority Critical patent/JP3263362B2/ja
Priority to US09/204,076 priority patent/US6223236B1/en
Priority to CA002255350A priority patent/CA2255350C/en
Priority to GB9827128A priority patent/GB2338092B/en
Priority to DE19901792A priority patent/DE19901792C2/de
Publication of JPH11353270A publication Critical patent/JPH11353270A/ja
Application granted granted Critical
Publication of JP3263362B2 publication Critical patent/JP3263362B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Multi Processors (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、入出力デバイスを
備えるデータ処理装置及びデータ処理方法に関するもの
である。
【0002】
【従来の技術】ディスク制御装置、ネットワーク制御装
置などの入出力デバイスは、通常、バスに接続される。
しかし、単一のバスに接続可能なデバイスの数には、バ
スの電気的な条件や制御信号の数などによって決まる上
限があるため、無制限に接続デバイス数を拡大すること
はできない。
【0003】バスに接続可能なデバイスの数を拡大する
ために、階層化という手段がある。階層化されたバスを
以下、階層バスと呼ぶ。階層バスでは、上位階層のバス
と下位階層バスの間にバス結合装置を配置する。バス結
合装置は、バス上に送出されるデータ転送先のアドレス
によって、バス上のデータを適切なバスに中継し、送出
する機能を備えている。
【0004】図23は、従来の階層バスにおけるデータ
転送方式を示す図である。ここでは、入出力デバイスと
してディスク制御装置及びそれによって制御される磁気
ディスク装置(以下、単にディスク装置ともいう)を例
にとる。通常の入出力では、データの転送元または転送
先が主記憶装置であり、主記憶装置はすべての入出力デ
バイスから共用されるため、バスの最上位階層に接続さ
れている。
【0005】次に、図23の動作につき説明する。ここ
では、ディスク装置8a,8b,8c,8d,8e,8
fに格納されているファイル61a,61b,61c,
61d,61e,61fの内容をそれぞれ、主記憶装置
2上のバッファ10a,10b,10c,10d,10
e,10fに転送した後、中央処理装置1で処理する場
合について説明する。
【0006】中央処理装置1は、ディスク制御装置7a
に対して、ディスク装置8aに格納されたファイル61
aの内容をバッファ10a上へ転送するように要求す
る。ディスク制御装置7aは、入出力バス5aにデータ
を転送する。入出力バス5aに転送されたデータは、入
出力バス結合装置6aによって中継され、入出力バス5
dに転送される。入出力バス5dに転送されたデータ
は、システムバス・入出力バス結合装置4によって中継
され、システムバス3を経由して、主記憶装置2上のバ
ッファに格納される。
【0007】同様に、中央処理装置1は、ディスク制御
装置7bに対して、ディスク装置8bに格納されたファ
イル61bの内容をバッファ10b上へ転送するように
要求する。ディスク制御装置7bは、入出力バス5aに
データを転送する。入出力バス5aに転送されたデータ
は、入出力バス結合装置6aによって中継され、入出力
バス5dに転送される。入出力バス5dに転送されたデ
ータは、システムバス・入出力バス結合装置4によって
中継され、システムバス3を経由して、主記憶装置2上
のバッファに格納される。
【0008】同様に、中央処理装置1は、ディスク制御
装置7cに対して、ディスク装置8cに格納されたファ
イル61cの内容をバッファ10c上へ転送するように
要求する。ディスク制御装置7cは、入出力バス5bに
データを転送する。入出力バス5bに転送されたデータ
は、入出力バス結合装置6bによって中継され、入出力
バス5dに転送される。入出力バス5dに転送されたデ
ータは、システムバス・入出力バス結合装置4によって
中継され、システムバス3を経由して、主記憶装置2上
のバッファに格納される。
【0009】同様に、中央処理装置1は、ディスク制御
装置7dに対して、ディスク装置8dに格納されたファ
イル61dの内容をバッファ10d上へ転送するように
要求する。ディスク制御装置7dは、入出力バス5bに
データを転送する。入出力バス5bに転送されたデータ
は、入出力バス結合装置6bによって中継され、入出力
バス5dに転送される。入出力バス5dに転送されたデ
ータは、システムバス・入出力バス結合装置4によって
中継され、システムバス3を経由して、主記憶装置2上
のバッファに格納される。
【0010】同様に、中央処理装置1は、ディスク制御
装置7eに対して、ディスク装置8eに格納されたファ
イル61eの内容をバッファ10e上へ転送するように
要求する。ディスク制御装置7eは、入出力バス5cに
データを転送する。入出力バス5cに転送されたデータ
は、入出力バス結合装置6cによって中継され、入出力
バス5dに転送される。入出力バス5dに転送されたデ
ータは、システムバス・入出力バス結合装置4によって
中継され、システムバス3を経由して、主記憶装置2上
のバッファに格納される。
【0011】同様に、中央処理装置1は、ディスク制御
装置7fに対して、ディスク装置8fに格納されたファ
イル61fの内容をバッファ10f上へ転送するように
要求する。ディスク制御装置7fは、入出力バス5cに
データを転送する。入出力バス5cに転送されたデータ
は、入出力バス結合装置6cによって中継され、入出力
バス5dに転送される。入出力バス5dに転送されたデ
ータは、システムバス・入出力バス結合装置4によって
中継され、システムバス3を経由して、主記憶装置2上
のバッファに格納される。
【0012】中央処理装置1は、バッファ10a〜10
fに転送されたデータに対して処理を行い、その結果を
最終出力バッファ101に格納する。
【0013】以上のように、すべてのデータ転送は入出
力バス5d、システムバス・入出力バス結合装置4及び
システムバス3を経由して主記憶装置2に送られる。即
ち、階層バスの上位層に位置するバスには、階層バスの
下位階層に接続されたすべての入出力デバイスからのデ
ータ転送が集中する。
【0014】一方、一般にバスには、単位時間あたり転
送可能なデータ転送量の限界があり、この限界を超える
データ転送を行うことはできない。1つのデータ転送に
よってバスが占有されている間に別のデータ転送要求が
発生した場合、一般に前のデータ転送が完了するまで後
のデータ転送は待たされる。従って、ファイル61a〜
61eからのデータ転送を同時に行った場合、そのデー
タ転送速度は入出力バス5dやシステムバス3のデータ
転送速度によって制限される。即ち、階層バスによって
接続可能なデバイスの数を増やしても、その転送能力は
最上位に位置するバスの転送能力で制限されるため、デ
バイスの数に見合ったデータ転送能力を得ることができ
ない。
【0015】また、従来の階層バスにおけるデータ処理
は、すべて中央処理装置1によって処理される。中央処
理装置の単位時間あたり処理可能なデータ量には限界が
あり、この限界を超えるデータ処理を行うことはできな
い。従って、ファイル61a〜61eからのデータ転送
を中央処理装置1によって行った場合、そのデータ処理
速度は中央処理装置1の処理能力によって制限される。
即ち、階層バスによって接続可能なデバイスの数を増や
しても、その処理能力は中央処理装置の処理能力によっ
て制限されるため、デバイスの数に見合ったデータ処理
能力を得ることができない。
【0016】
【発明が解決しようとする課題】従来の階層バスは、以
上のように構成されているため、上位階層のバスにデー
タ転送が集中するため、接続可能なデバイス数が増えて
も、それに見合った転送速度性能が得られないという問
題点があった。
【0017】また、従来の階層バスは以上のように構成
されているため、中央処理装置の処理能力によってデー
タ処理能力が制限されるため、接続可能なデバイス数が
増えても、それに見合った処理速度性能が得られないと
いう問題点があった。
【0018】この発明は、上記のような課題を解決する
ためになされたものであり、階層バスにより接続可能な
デバイスの数を拡大しつつ、デバイスの数に応じた転送
速度性能の拡大を図ることを目的とする。
【0019】また、この発明は、階層バスにより接続可
能なデバイスの数を拡大しつつ、デバイスの数に応じた
処理速度性能の拡大を図ることを目的とする。
【0020】
【課題を解決するための手段】この発明に係るデータ処
理装置は、階層化されて接続された上位バスと下位バス
と、上位バスに接続された記憶装置と、下位バスに接続
されたデバイスと、下位バスに接続され、下位バスを介
してデバイスからデータを受け取り、受け取ったデータ
の一部を抽出し、抽出したデータを上位バスを介して記
憶装置へ転送するプロセッサと、上位バスに接続され、
記憶装置に記憶されたデータを処理する処理装置とを備
えたことを特徴とする。
【0021】上記プロセッサは、データの集計処理を実
行することによりデバイスから受け取ったデータの量を
削減して記憶装置へ転送することを特徴とする。
【0022】上記プロセッサは、データ数をカウントす
ることによりデバイスから受け取ったデータの量を削減
して記憶装置へ転送することを特徴とする。
【0023】上記プロセッサは、データの最大値を抽出
することによりデバイスから受け取ったデータの量を削
減して記憶装置へ転送することを特徴とする。
【0024】上記プロセッサは、データの最小値を抽出
することによりデバイスから受け取ったデータの量を削
減して記憶装置へ転送することを特徴とする。
【0025】上記データ処理装置は、更に、上位バスと
下位バスの間に上位バスと下位バスとを接続するバス結
合装置を備え、上記プロセッサは、バス結合装置と一体
化されていることを特徴とする。
【0026】上記下位バスとデバイスとプロセッサは複
数存在し、上記プロセッサは、そのプロセッサが接続さ
れた下位バスとは異なる下位バスに接続されたデバイス
からデータを受け取ることを特徴とする。
【0027】上記デバイスは、そのデバイスのデータを
分割して複数のプロセッサに転送することを特徴とす
る。
【0028】上記プロセッサは、抽出したデータを他の
プロセッサに転送するとともに、他のプロセッサは、複
数プロセッサからデータを受け取り、更に、データの一
部を抽出することを特徴とする。
【0029】この発明に係るデータ処理方法は、階層化
されて接続された上位バスと下位バスと、上位バスに接
続された記憶装置と、下位バスに接続されたデバイス
と、下位バスに接続されたプロセッサと、上位バスに接
続された処理装置とを備えたデータ処理装置のデータ処
理方法において、下位バスを介してデバイスからプロセ
ッサにデータを転送する工程と、プロセッサにおいて、
転送されたデータの一部を抽出する工程と、抽出された
データを上位バスを介して記憶装置へ転送する工程と、
処理装置において、記憶装置に記憶されたデータを処理
する工程とを備えたことを特徴とする。
【0030】
【発明の実施の形態】実施の形態1.図1は、本発明の
実施の形態1を実現するためのシステム構成の一例であ
る。図1において、1は中央処理装置(CPU)であ
り、システム全体の各装置の制御を担当している。2は
主記憶装置である。3はシステムバスであり、中央処理
装置1と主記憶装置2の間のデータ転送及びシステムバ
ス・入出力バス結合装置4と主記憶装置2の間のデータ
転送の経路として用いられる。4はシステムバス・入出
力バス結合装置であり、入出力バスに結合された装置と
システムバスに接続された装置の間でのデータ転送は、
このシステムバス・入出力バス結合装置4を経由して行
われる。5a,5b,5c,5dはシステムバス3とは
異なる制御手順により制御される入出力バスであり、デ
ィスク制御装置などの入出力デバイスまたはバス結合装
置が接続される。6a,6b,6cは入出力バス結合装
置であり、2本の入出力バスを結合し、異なる入出力バ
スに接続された入出力デバイスやバス結合装置の間での
データ転送を中継する機能を備える。システムバス3及
びすべての入出力バス5a〜5dは、共通の物理アドレ
ス空間を持つものとする。102a,102b,102
c,102d,102e,102fは入出力デバイスで
ある。入出力デバイス102a,102b,102c,
102d,102e,102fはそれぞれディスク制御
装置及び磁気ディスク装置からなる。7a,7b,7
c,7d,7e,7fはディスク制御装置であり、それ
ぞれ磁気ディスク装置(単にディスク装置ともいう)8
a,8b,8c,8d,8e,8fを制御する。9a,
9b,9cはプロセッサである。10a,10b,10
cは主記憶装置2上に配置されたバッファである。61
a,61b,61c,61d,61e,61fはそれぞ
れディスク装置8a,8b,8c,8d,8e,8fに
格納されたファイルである。101は主記憶装置2上に
配置された最終出力バッファである。
【0031】図2は、本実施の形態におけるシステムバ
ス・入出力バス結合装置4の構成を示す構成図である。
図2において、3はシステムバスである。5dは入出力
バスである。11はシステムバスインタフェース部であ
る。12は入出力バスインタフェース部である。13,
14はバッファであり、バッファ13は、入出力バス5
dからシステムバス3に転送されるデータを一時的に貯
える働きをし、バッファ14は、システムバス3から入
出力バス5dに転送されるデータを一時的に貯える働き
をする。15は入出力バス物理アドレス範囲レジスタで
あり、入出力バス5dの物理アドレス範囲を格納する。
入出力バス5dに物理アドレスを割り当てるとは、この
入出力バス物理アドレス範囲レジスタ15に入出力バス
5dの物理アドレス範囲を設定する操作に相当する。
【0032】システムバス・入出力バス結合装置4は、
システムバス3上に入出力バス物理アドレス範囲レジス
タ15に指定された物理アドレス範囲に含まれる物理ア
ドレス範囲に対する転送要求があると、その転送要求に
応答する。データの転送方向がシステムバス3から入出
力バス5dに対する転送の場合は、システムバスインタ
フェース部11がシステムバス3上のデータ転送要求に
応答し、システムバス3から送られるデータをバッファ
14に取り込み、入出力バスインタフェース部12を経
由して入出力バス5dに対してデータを転送する。デー
タの転送方向が入出力バス5dからシステムバス3に対
する転送の場合は、入出力バスインタフェース部12が
入出力バス5dに当該アドレス範囲に対する転送要求を
中継した後、入出力バス5dから転送されるデータを受
け取り、バッファ13にデータを取り込み、システムバ
スインタフェース部11を経由してシステムバス3に対
してデータを転送する。システムバス・入出力バス結合
装置4は、システムバス3上の入出力バス物理アドレス
範囲レジスタ15に指定された物理アドレス範囲に含ま
れない物理アドレス範囲に対する転送要求に対しては応
答しない。
【0033】システムバス・入出力バス結合装置4は、
入出力バス5d上に入出力バス物理アドレス範囲レジス
タ15に指定された物理アドレス範囲に含まれない物理
アドレス範囲に対する転送要求があると、その転送要求
に応答する。データの転送方向が入出力バス5dからシ
ステムバス3に対する転送の場合は、入出力バスインタ
フェース部12が入出力バス5d上のデータ転送要求に
応答し、入出力バス5dから送られるデータをバッファ
13に取り込み、システムバスインタフェース部11を
経由してシステムバス3に対してデータを転送する。デ
ータの転送方向が、システムバス3から入出力バス5d
に対する転送の場合は、システムバスインタフェース部
11がシステムバス3に当該アドレス範囲に対する転送
要求を中継した後、システムバス3から転送されるデー
タを受け取り、バッファ14にデータを取り込み、入出
力バスインタフェース部12を経由して入出力バス5d
に対してデータを転送する。システムバス・入出力バス
結合装置4は、入出力バス5d上の入出力バス物理アド
レス範囲レジスタ15に指定された物理アドレス範囲に
含まれる物理アドレス範囲に対する転送要求に対しては
応答しない。
【0034】図3は、本実施の形態における入出力バス
結合装置6aの構成を示す構成図である。入出力バス結
合装置6b,6cも図3の構成と同じ構成をとる。図3
において、5d,5aは入出力バスであり、5dがバス
階層の上位に位置するバス、5aがバス階層の下位に位
置するバスである。21は上位バスインタフェース部で
ある。22は下位バスインタフェース部である。23,
24はバッファであり、バッファ23は、下位階層の入
出力バス5aから上位階層の入出力バス5dに転送され
るデータを一時的に貯える働きをし、バッファ24は、
上位階層の入出力バス5dから下位階層の入出力バス5
aに転送されるデータを一時的に貯える働きをする。2
5は下位階層入出力バス物理アドレス範囲レジスタであ
り、バス階層の下位に位置する入出力バス5aの物理ア
ドレス範囲を格納する。下位階層の入出力バス5aに物
理アドレスを割り当てるとは、この下位階層入出力バス
物理アドレス範囲レジスタ25に下位階層の入出力バス
5aの物理アドレス範囲を設定する操作に相当する。入
出力バス結合装置6は、上位階層の入出力バス5dに、
下位階層入出力バス物理アドレス範囲レジスタ25に指
定された物理アドレス範囲に含まれる物理アドレス範囲
に対する転送要求があると、その転送要求に対して応答
し、バッファ24にデータを取り込み、下位バスインタ
フェース部22を経由して下位階層の入出力バス5aに
対してデータを転送する。
【0035】入出力バス結合装置6は、上位階層の入出
力バス5d上に下位階層入出力バス物理アドレス範囲レ
ジスタ25に指定された物理アドレス範囲に含まれる物
理アドレス範囲に対する転送要求があると、その転送要
求に応答する。データの転送方向が上位階層の入出力バ
ス5dから下位階層の入出力バス5aに対する転送の場
合は、上位バスインタフェース部21が上位階層の入出
力バス5d上のデータ転送要求に応答し、上位階層の入
出力バス5dから送られるデータをバッファ24に取り
込み、下位バスインタフェース部22を経由して入出力
バス5aに対してデータを転送する。データの転送方向
が下位階層の入出力バス5aから上位階層の入出力バス
5dに対する転送の場合は、下位バスインタフェース部
22が入出力バス5dに当該アドレス範囲に対する転送
要求を中継した後、下位階層の入出力バス5aから転送
されるデータを受け取り、バッファ23にデータを取り
込み、上位バスインタフェース部21を経由して上位階
層の入出力バス5dに対してデータを転送する。入出力
バス結合装置6は、上位階層の入出力バス5d上の入出
力バス物理アドレス範囲レジスタ25に指定された物理
アドレス範囲に含まれない物理アドレス範囲に対する転
送要求に対しては応答しない。
【0036】システムバス・入出力バス結合装置4は、
下位階層の入出力バス5a上に下位階層入出力バス物理
アドレス範囲レジスタ25に指定された物理アドレス範
囲に含まれない物理アドレス範囲に対する転送要求があ
ると、その転送要求に応答する。データの転送方向が下
位階層の入出力バス5aから上位階層の入出力バス5d
に対する転送の場合は、下位バスインタフェース部22
が下位階層の入出力バス5a上のデータ転送要求に応答
し、下位階層の入出力バス5aから送られるデータをバ
ッファ23に取り込み、上位バスインタフェース部21
を経由して上位階層の入出力バス5dに対してデータを
転送する。データの転送方向が、上位階層の入出力バス
5dから下位階層の入出力バス5aに対する転送の場合
は、上位バスインタフェース部21が上位階層の入出力
バス5dに当該アドレス範囲に対する転送要求を中継し
た後、上位階層の入出力バス5dから転送されるデータ
を受け取り、バッファ24にデータを取り込み、下位バ
スインタフェース部22を経由して下位階層の入出力バ
ス5aに対してデータを転送する。入出力バス結合装置
6は、下位階層の入出力バス5a上の下位階層入出力バ
ス物理アドレス範囲レジスタ25に指定された物理アド
レス範囲に含まれる物理アドレス範囲に対する転送要求
に対しては応答しない。
【0037】図4は、本実施の形態におけるプロセッサ
9aの構成を示す構成図である。プロセッサ9b,9c
も、図4の構成と同じ構成をとる。図4において、5a
は入出力バスである。9aは入出力バス5aに接続され
るプロセッサ全体を指す。30は入出力バス・ローカル
バス結合装置であり、入出力バスに接続された入出力デ
バイスやバス結合装置と、ローカルバス31に接続され
たマイクロプロセッサ32、ローカルメモリ33または
DMA(Direct Memory Access)
コントローラ36との間でのデータ転送を可能にする機
能を提供する。31はローカルバスであり、入出力バス
5aとは異なるアドレス空間を持つものとする。32は
マイクロプロセッサである。33はローカルメモリであ
り、マイクロプロセッサ32から見ると主記憶装置とし
ての役割を果たす。34はアドレス変換装置であり、入
出力バス5aの物理アドレスとローカルバス31上のロ
ーカルアドレスを相互に変換し、異なるアドレス空間を
持つ入出力バス5aとローカルバス31の間でのデータ
転送を可能にする。35は物理アドレス範囲レジスタで
あり、プロセッサ9aに物理アドレス範囲を割り当てる
とは、物理アドレス範囲レジスタ35に物理アドレス範
囲を設定する操作に相当する。37a及び37bはロー
カルメモリ33上に配置された入力バッファ、38a及
び38bはローカルメモリ33上に配置された出力バッ
ファである。
【0038】図5は、本実施の形態における物理アドレ
ス空間上のアドレス配置を示す図である。41は物理ア
ドレス空間全体を示す。42は物理アドレス空間のうち
システムバス3に割り当てられている物理アドレス範囲
を示す。43は物理アドレス空間のうち主記憶装置2に
割り当てられている物理アドレス範囲を示す。
【0039】図5において、44aは物理アドレス空間
のうち入出力バス5aに割り当てられている物理アドレ
ス範囲を示す。45aは入出力バス5aに割り当てられ
ている物理アドレス範囲のうち、プロセッサ9aに割り
当てられている物理アドレス範囲を示す。46a及び4
6bはプロセッサ9aに割り当てられている物理アドレ
ス範囲のうち、ローカルメモリ33の中の入力バッファ
37a,37bに割り当てられている物理アドレス範囲
を示す。47a及び47bはプロセッサ9aに割り当て
られている物理アドレス範囲のうち、ローカルメモリ3
3の中の出力バッファ38a,38bに割り当てられて
いる物理アドレス範囲を示す。
【0040】同様に、図5において、44bは物理アド
レス空間のうち入出力バス5bに割り当てられている物
理アドレス範囲を示す。45bは入出力バス5bに割り
当てられている物理アドレス範囲のうち、プロセッサ9
bに割り当てられている物理アドレス範囲を示す。46
c及び46cはプロセッサ9bに割り当てられている物
理アドレス範囲のうち、ローカルメモリ33の中の入力
バッファ37a,37bに割り当てられている物理アド
レス範囲を示す。47c及び47dはプロセッサ9bに
割り当てられている物理アドレス範囲のうち、ローカル
メモリ33の中の出力バッファ38a,38bに割り当
てられている物理アドレス範囲を示す。
【0041】同様に、図5において、44cは物理アド
レス空間のうち入出力バス5cに割り当てられている物
理アドレス範囲を示す。45cは入出力バス5cに割り
当てられている物理アドレス範囲のうち、プロセッサ9
cに割り当てられている物理アドレス範囲を示す。46
e及び46fはプロセッサ9cに割り当てられている物
理アドレス範囲のうち、ローカルメモリ33の中の入力
バッファ37a,37bに割り当てられている物理アド
レス範囲を示す。47e及び47fはプロセッサ9cに
割り当てられている物理アドレス範囲のうち、ローカル
メモリ33の中の出力バッファ38a,38bに割り当
てられている物理アドレス範囲を示す。
【0042】図5において、48aは主記憶装置2に割
り当てられている物理アドレス範囲のうち、バッファ1
0aに割り当てられた物理アドレス範囲を示す。同様
に、48bは主記憶装置2に割り当てられている物理ア
ドレス範囲のうち、バッファ10bに割り当てられた物
理アドレス範囲を示す。同様に、48cは主記憶装置2
に割り当てられている物理アドレス範囲のうち、バッフ
ァ10cに割り当てられた物理アドレス範囲を示す。同
様に、48dは主記憶装置2に割り当てられている物理
アドレス範囲のうち、バッファ10dに割り当てられた
物理アドレス範囲を示す。同様に、48eは主記憶装置
2に割り当てられている物理アドレス範囲のうち、バッ
ファ10eに割り当てられた物理アドレス範囲を示す。
同様に、48fは主記憶装置2に割り当てられている物
理アドレス範囲のうち、バッファ10fに割り当てられ
た物理アドレス範囲を示す。同様に、48gは主記憶装
置2に割り当てられている物理アドレス範囲のうち、最
終出力バッファ101に割り当てられた物理アドレス範
囲を示す。
【0043】図6は、本実施の形態におけるプロセッサ
9aにおけるアドレス変換を示す図である。41は物理
アドレス空間を示す。51はローカルバス上のローカル
アドレス空間を示す。45aは物理アドレス範囲レジス
タ35の指す物理アドレス範囲であり、55は物理アド
レス範囲45aがアドレス変換装置34によって変換さ
れた結果得られるローカルアドレス範囲を示す。入力バ
ッファ37aの内容は、入出力バス側からは物理アドレ
ス空間41内の物理アドレス範囲46aに存在し、同時
に、ローカルバス側からはローカルアドレス空間51内
のローカルアドレス範囲56aに存在する。入力バッフ
ァ37bの内容は、入出力バス側からは物理アドレス空
間41内の物理アドレス範囲46bに存在し、同時に、
ローカルバス側からはローカルアドレス空間51内のロ
ーカルアドレス範囲56bに存在する。同様に、出力バ
ッファ38aの内容は、入出力バス側からは物理アドレ
ス空間41内の物理アドレス範囲47aに存在し、同時
に、ローカルバス側からはローカルアドレス空間51内
のローカルアドレス範囲57aに存在する。出力バッフ
ァ38bの内容は、入出力バス側からは物理アドレス空
間41内の物理アドレス範囲47bに存在し、同時に、
ローカルバス側からはローカルアドレス空間51内のロ
ーカルアドレス範囲57bに存在する。
【0044】図7は、本実施の形態におけるファイル6
1aのデータの形式を示す図である。他のファイル61
b,61c,61d,61e,61fも、同じ形式をと
る。ファイル61aは、複数のブロック62a,62
b,62c,62d等からなる。ブロック62a,62
b,62c,62dの大きさは、入力バッファ37a,
37bの大きさと等しいものとする。
【0045】図8は、本実施の形態におけるファイル6
1aを構成するブロック62a内のデータの形式を示す
図である。他のブロック62b,62c,62dも、同
じ形式をとる。図において、ブロック62aは、複数の
レコード63a〜63m等からなる。各レコード63a
〜63m等は、キーフィールド64、数値フィールド6
5、日付フィールド66及びその他のフィールドからな
るものとする。
【0046】図9は、本実施の形態における一次集計処
理の一例とその結果として生成される一次集計結果を示
す図である。図において、71aは一次集計処理を示
す。72aはブロック62aに対する一次集計処理の結
果生成される一次集計結果を示す。一次集計結果72a
は、一次集計レコード73a〜73dからなる。各一次
集計レコード73a〜73dは、キーフィールド74と
数値フィールド75からなる。本実施の形態において
は、一次集計処理によって、日付フィールド66の日付
が1998年5月に含まれるレコードについて、同一の
キーフィールドを持つレコードの数値フィールドの合計
が取られる。
【0047】図10は、本実施の形態における一次集計
処理の内部構造を示す図である。図において、71aは
一次集計処理であり、62aは一次集計処理の入力とな
るブロックであり、72aは、一次集計処理71aの出
力となる一次集計結果72aである。一次集計処理71
aは、選択・射影処理76とブロック集計処理77の二
段階の処理からなる。67は選択・射影結果であり、選
択・射影処理76の結果出力として生成され、ブロック
集計処理77の入力となる。
【0048】図11は、本実施の形態における選択・射
影処理76の一例と、その結果として生成される選択・
射影結果67を示す図である。図において、76は選択
・集計処理を示す。67はブロック62aに対する選択
・射影処理の結果生成される選択・射影結果を示す。1
63c〜163iは、選択・射影結果を構成する選択・
射影後レコードを示す。各選択・射影後レコード163
c〜163iは、キーフィールド64と数値フィールド
65からなる。図11に示されるように、本実施の形態
における選択・射影処理では、日付フィールド66の日
付が1998年5月であるレコード、即ち、レコード6
3c〜63iを選択し、そのレコードに含まれるキーフ
ィールド64と数値フィールド65を抽出して選択・射
影後レコード163c〜163iをそれぞれ生成し、選
択・射影結果67とする。
【0049】図12は、本実施の形態におけるブロック
集計処理77の一例と、その結果として生成される一次
集計結果72aを示す図である。図において、77はブ
ロック集計処理を示す。72aは選択・射影結果67に
対するブロック集計処理の結果生成される一次集計結果
を示す。ブロック集計処理77により、同一のキーフィ
ールド64を持つレコードの数値フィールドの合計がと
られ、一次集計レコード73a〜73dが生成される。
図においては、選択・射影後レコード163c,163
hから一次集計レコード73aが、選択・射影後レコー
ド163b,163g,163iから一次集計レコード
73bが、選択・射影後レコード163eから一次集計
レコード73cが、選択・射影後レコード163fから
一次集計レコード73dが、それぞれ生成される。
【0050】図13は、本実施の形態における二次集計
処理の一例とその結果として生成される二次集計結果を
示す図である。図において、72aは一次集計処理によ
って生成された一次集計結果である。82aは二次集計
処理を行う前の二次集計結果を示す。82は一次集計結
果72a及び二次集計結果82aに対して、二次集計処
理を行った後の二次集計結果を示す。二次集計結果82
aは、二次集計レコード83a〜83dからなる。二次
集計結果82は、二次集計レコード83e〜83iから
なる。各二次集計レコード83a〜83d及び83e〜
83iは、二次集計キーフィールド84と数値フィール
ド85からなる。
【0051】図14は、本実施の形態における集計処理
の一例を示す図である。図において、61a〜61fは
ファイルである。62a〜62d等はファイル61aを
構成するブロックである。71a〜71fはそれぞれフ
ァイル61a〜61fに対する一次集計処理を示す。一
次集計処理71a及び71bは、プロセッサ9a上で実
行される。一次集計処理71c及び71dは、プロセッ
サ9b上で実行される。一次集計処理71e及び71f
は、プロセッサ9c上で実行される。72a〜72d等
はブロック62a〜62dに対する一次集計処理71a
の結果得られた一次集計結果である。72a〜72d等
の同一の一次集計処理によって生成された一次集計結果
を総称して、一次集計結果列と呼ぶ。92a〜92fは
一次集計処理71a〜71fによって生成された一次集
計結果の集合である一次集計結果列である。91は一次
集計結果の待ち行列を示す。81は二次集計処理を示
す。82は二次集計処理81の結果得られる二次集計結
果を示す。
【0052】図15は、本実施の形態における集計処理
の動作を示すフローチャートである。ステップS0〜ス
テップS8は、動作を示すステップである。
【0053】次に、動作について説明する。本実施の形
態では、磁気ディスク装置8a,8b,8c,8d,8
e,8fに格納されたファイル61a,61b,61
c,61d,61e,61fに含まれるデータについ
て、同一のキーフィールド64を持つレコード毎に数値
フィールド65の合計をとり、二次集計結果82を得
て、この二次集計結果82を最終処理結果とする場合を
例にとって動作を説明する。
【0054】システム初期化時、中央処理装置1は、入
出力バス結合装置6aの下位階層入出力バス物理アドレ
ス範囲レジスタ25に物理アドレス範囲44aを、入出
力バス結合装置6bの下位階層入出力バス物理アドレス
範囲レジスタ25に物理アドレス範囲44bを、入出力
バス結合装置6cの下位階層入出力バス物理アドレス範
囲レジスタ25に物理アドレス範囲44cをそれぞれ設
定する。
【0055】更に、システム初期化時、中央処理装置1
は、システムバス・入出力バス結合装置4の入出力バス
物理アドレス範囲レジスタ15に物理アドレス範囲44
dを設定する。
【0056】更に、システム初期化時、中央処理装置1
は、プロセッサ9aの物理アドレス範囲レジスタ35に
物理アドレス範囲45aを、プロセッサ9bの物理アド
レス範囲レジスタ35に物理アドレス範囲45bを、プ
ロセッサ9cの物理アドレス範囲レジスタ35に物理ア
ドレス範囲45cをそれぞれ設定する。
【0057】以上により、図1に示される階層バスは、
図5に示される物理アドレス範囲を持つように初期化さ
れたことになる。
【0058】次に、図15に示す動作に従って、集計処
理が行われる。中央処理装置1は、最終出力バッファ1
01内の二次集計結果82を空にする。即ち、二次集計
結果82に含まれる二次集計レコードが1つも存在しな
い状態にする(ステップS0)。
【0059】次に、中央処理装置1は、ディスク制御装
置7aに対して磁気ディスク装置8a内のファイル61
aの先頭のブロックを物理アドレス範囲46aに対して
データ転送するよう指示する(ステップS1)。ディス
ク制御装置7aは、磁気ディスク装置8aからファイル
61aの内容を読み出し、入出力バス5aに物理アドレ
ス範囲46aを指定してデータ転送要求を発行する。プ
ロセッサ9aの入出力バス・ローカルバス結合装置30
内の物理アドレス範囲レジスタ35には、物理アドレス
範囲46aが割り付けられているので、プロセッサ9a
の入出力バス・ローカルバス結合装置はこの要求に応答
し、ディスク制御装置7aからプロセッサ9aへのデー
タ転送が行われる。プロセッサ9aに転送されたデータ
は、ローカルメモリ33内の入力バッファ37aに格納
される(ステップS2)。
【0060】このとき、物理アドレス範囲46aは入出
力バス結合装置6a内の下位バスアドレス範囲レジスタ
の物理アドレス範囲に含まるので、入出力バス結合装置
6aは、ディスク制御装置7aのデータ転送要求には応
答しない。
【0061】入力バッファ37に格納されたデータは、
マイクロプロセッサ32から見ると、ローカルアドレス
上のローカルアドレス範囲56を持つため、マイクロプ
ロセッサ32から直接に操作することが可能である。
【0062】データ転送後、中央処理装置1は、プロセ
ッサ9aの内部のマイクロプロセッサ32に対して入力
バッファ37aに対する一次集計処理を指示する(ステ
ップS3)。
【0063】マイクロプロセッサ32は、入力バッファ
37a内のデータに対して一次集計処理を行い、一次集
計結果を出力バッファ38aに出力する(ステップS
4)。
【0064】図8に示されるブロック62aが転送され
た場合、出力バッファ38aの内容は、図9の一次集計
結果72aのようになる。図9に示されるように、一般
にブロック62a内には、同一のキーフィールド64を
持つレコードが複数存在するので、一次集計結果72a
のサイズは、ブロック62aのサイズよりも小さくな
る。
【0065】一次集計処理が完了すると、中央処理装置
1は、プロセッサ9a内部のDMAコントローラ36を
起動し、出力バッファ38aに含まれる一次集計結果7
2aを主記憶装置2内部のバッファ10aに転送する
(ステップS5)。このとき、一次集計結果72aのサ
イズだけ、一次集計結果72aを転送すればよく、出力
バッファ38a全体を転送する必要はない。
【0066】DMAコントローラ36は、主記憶装置2
上のバッファ10aの物理アドレス範囲48aを指定し
て入出力バス5aにデータ転送要求を出す(ステップS
6)。入出力バス結合装置6aの下位階層入出力バス物
理アドレス範囲レジスタ25には、物理アドレス範囲4
4aが設定されており、バッファ10aの物理アドレス
範囲48aが物理アドレス範囲44aに含まれないこと
から、入出力バス結合装置6aの下位バスインタフェー
ス部22はこの転送要求に対して応答し、転送されたデ
ータをバッファ23に取り込む。
【0067】入出力バス結合装置6aは、入出力バス5
dに対して、主記憶装置2上のバッファ10aの物理ア
ドレス範囲48aを指定して入出力バス5dにデータ転
送要求を出す。システムバス・入出力バス結合装置4の
入出力バス物理アドレス範囲レジスタ15には、物理ア
ドレス範囲44dが設定されており、バッファ10aの
物理アドレス範囲48aが物理アドレス範囲44dに含
まれないことから、システムバス・入出力バス結合装置
4の入出力バスインタフェース部12は、この転送要求
に対して応答し、転送されたデータをバッファ13に取
り込む。
【0068】システムバス・入出力バス結合装置4は、
システムバス3に対して、主記憶装置2上のバッファ1
0aの物理アドレス範囲48aを指定してシステムバス
3にデータ転送要求を出す。物理アドレス範囲48a
は、主記憶装置2の物理アドレス範囲43に含まれるの
で、主記憶装置2はこの転送要求に応答し、転送された
データをバッファ10aの物理アドレス範囲48aに格
納する。
【0069】中央処理装置1は、バッファ10aの一次
集計結果と最終出力バッファ101内の二次集計結果8
2に対して二次集計処理を行い、二次集計結果82を更
新する(ステップS7)。
【0070】中央処理装置1は、図15に示すように、
ステップS1〜S7の操作をファイル61aに含まれる
すべてのブロック62a〜62dに対する処理が終わる
まで繰り返す(ステップS8)。
【0071】同様に、図15に示される操作をファイル
61b、磁気ディスク装置8b、ディスク制御装置7
b、入出力バス5a、プロセッサ9a、入力バッファ3
7b、出力バッファ38b、バッファ10bに対して行
う。即ち、図15に示される操作で、ファイル61aを
ファイル61bに、磁気ディスク装置8aを磁気ディス
ク装置8bに、ディスク制御装置7aをディスク制御装
置7bに、入力バッファ37aを入力バッファ37b
に、出力バッファ38aを出力バッファ38bにそれぞ
れ読み替えて行う。この操作は、待ち行列91による排
他制御を行うことにより、図15に示される操作と同時
に、並列的に行われてもよい。
【0072】同様に、図15に示される操作をファイル
61c、磁気ディスク装置8c、ディスク制御装置7
c、入出力バス5b、プロセッサ9b、バッファ10c
に対して行う。即ち、図15に示される操作で、ファイ
ル61aをファイル61cに、磁気ディスク装置8aを
磁気ディスク装置8cに、ディスク制御装置7aをディ
スク制御装置7cに、入出力バス5aを入出力バス5b
に、プロセッサ9aをプロセッサ9bにそれぞれ読み替
えて行う。この操作は、待ち行列91による排他制御を
行うことにより、図15に示される操作と同時に、並列
的に行われてもよい。
【0073】同様に、図15に示される操作をファイル
61d、磁気ディスク装置8d、ディスク制御装置7
d、入出力バス5b、プロセッサ9b、入力バッファ3
7b、出力バッファ38b、バッファ10dに対して行
う。即ち、図15に示される操作で、ファイル61aを
ファイル61dに、磁気ディスク装置8aを磁気ディス
ク装置8dに、ディスク制御装置7aをディスク制御装
置7dに、入出力バス5aを入出力バス5bに、プロセ
ッサ9aをプロセッサ9bに、入力バッファ37aを入
力バッファ37bに、出力バッファ38aを出力バッフ
ァ38bにそれぞれ読み替えて行う。この操作は、待ち
行列91による排他制御を行うことにより、図15に示
される操作と同時に、並列的に行われてもよい。
【0074】同様に、図15に示される操作をファイル
61e、磁気ディスク装置8e、ディスク制御装置7
e、入出力バス5c、プロセッサ9c、バッファ10e
に対して行う。即ち、図15に示される操作で、ファイ
ル61aをファイル61eに、磁気ディスク装置8aを
磁気ディスク装置8eに、ディスク制御装置7aをディ
スク制御装置7eに、入出力バス5aを入出力バス5c
に、プロセッサ9aをプロセッサ9cにそれぞれ読み替
えて行う。この操作は、待ち行列91による排他制御を
行うことにより、図15に示される操作と同時に、並列
的に行われてもよい。
【0075】同様に、図15に示される操作をファイル
61f、磁気ディスク装置8f、ディスク制御装置7
f、入出力バス5c、プロセッサ9c、入力バッファ3
7b、出力バッファ38b、バッファ10fに対して行
う。即ち、図15に示される操作で、ファイル61aを
ファイル61fに、磁気ディスク装置8aを磁気ディス
ク装置8fに、ディスク制御装置7aをディスク制御装
置7fに、入出力バス5aを入出力バス5cに、プロセ
ッサ9aをプロセッサ9cに、入力バッファ37aを入
力バッファ37bに、出力バッファ38aを出力バッフ
ァ38bにそれぞれ読み替えて行う。この操作は、待ち
行列91による排他制御を行うことにより、図15に示
される操作と同時に、並列的に行われてもよい。
【0076】一般に、一次集計結果72aから72dの
サイズは、ブロック62a〜62dのサイズよりも小さ
いため、本実施の形態におけるDMA転送によって主記
憶上のバッファ10a〜10fに転送されるデータの量
は、ブロック62a〜62dを直接転送する場合に比較
して小さくなる。即ち、一次集計結果列92a〜92f
のサイズは、ファイル61a〜61fのサイズより小さ
くなる。従って、本実施の形態においては、入出力バス
5d、システムバス・入出力バス結合装置4、システム
バス3、主記憶装置2に転送されるデータの量は、ファ
イル61a〜61fに含まれるブロックのすべてを主記
憶装置2に転送してから処理する場合に比べて小さい。
同様に、中央処理装置によって処理されるデータ量も、
ファイル61a〜61fに含まれるブロックのすべてを
主記憶装置2に転送してから処理する場合に比べて小さ
い。
【0077】以上のように、本実施の形態によれば、階
層バスによって接続するデバイスの数を増やしても、増
加されたデバイスの数に見合ったデータ転送性能及びデ
ータ処理能力を得ることが可能になる。
【0078】実施の形態2.以上の実施の形態では、プ
ロセッサ9a〜9cが入出力バス5a〜5c上だけに接
続されているものとしたが、以下に述べるように、プロ
セッサ9a〜9cと入出力バス結合装置6a〜6cを一
体化することもでき、同様の効果を奏することができ
る。
【0079】図16は、本発明の実施の形態2を実現す
るためのシステム構成の一例である。図16において、
1は中央処理装置、2は主記憶装置、3はシステムバ
ス、4はシステムバス・入出力バス結合装置、5a〜5
dは入出力バス、7a〜7fはディスク制御装置、8a
〜8eはディスク装置、61a〜61fはファイルであ
り、それぞれ、実施の形態1の対応する各装置と同様の
働きをなす。106a〜106cはプロセッサ付き入出
力バス結合装置である。9a〜9cはプロセッサであ
り、それぞれ、プロセッサ付き入出力バス結合装置10
6a〜106cの内部に含まれる。
【0080】図17は、本実施の形態におけるプロセッ
サ付き入出力バス結合装置106aの構成を示す図であ
る。入出力バス結合装置106b,106cも、同じ構
成をとる。図において、5dは上位階層の入出力バス、
5aは下位階層の入出力バスである。106aはプロセ
ッサ付き入出力バス結合装置全体を指す。6aはプロセ
ッサ付き入出力バス結合装置106aに含まれる入出力
バス結合装置であり、実施の形態1の図3に示されるの
と同様の構造を持つ。30a及び30bはプロセッサ付
き入出力バス結合装置106aに含まれる入出力バス・
ローカルバス結合装置であり、実施の形態1の図4に示
される入出力バス・ローカルバス結合装置30と同一の
構造を持つ。31はローカルバス、32はマイクロプロ
セッサ、33はローカルメモリ、36はDMAコントロ
ーラ、37a,37bはローカルメモリ上の入力バッフ
ァ、38a,38bはローカルメモリ上の出力バッファ
である。
【0081】実施の形態2の動作は、実施の形態1とほ
ぼ同一であるため、実施の形態1との差異について示
す。実施の形態1では、プロセッサ9a〜9cの出力バ
ッファ38a,38b上の一次集計結果を主記憶装置2
上のバッファ10a〜10fにDMA転送する際に、入
出力バス結合装置6a〜6cを経由していた。しかし、
実施の形態2においては、ローカルメモリ33の接続さ
れているローカルバス31は、図17の入出力バス・ロ
ーカルバス結合装置30aを経由して、直接上位階層の
入出力バス5aに接続されているため、この転送の際に
は、入出力バス結合装置6aを経由することなく、入出
力バス・ローカルバス結合装置30aを経由してデータ
転送を行う。これ以外の動作、制御については、実施の
形態1と同様である。
【0082】実施の形態3.実施の形態1では、入出力
デバイス上のデータは同一のバス階層に配置されたプロ
セッサで前処理した上、中央処理装置に送り出すとした
が、必要に応じて、異なる階層のプロセッサに送っても
よい。
【0083】図18は、実施の形態3を示すシステム構
成図である。図18において、1は中央処理装置、2は
主記憶装置、3はシステムバス、4はシステムバス・入
出力バス結合装置、5a〜5dは入出力バス、6a〜6
cは入出力バス結合装置、9a〜9dはプロセッサ、1
02a〜102dは入出力デバイスである。なお、主記
憶装置2上のバッファの配置、入出力デバイス102a
〜102dの内部構造については実施の形態1と同一で
あるため、図18には図示していない。
【0084】実施の形態1においては、入出力デバイス
の内容は同一の入出力バスに接続されているプロセッサ
に転送され、処理されていた。しかし、入出力デバイス
の内容の転送先は、同一の入出力バスに接続されている
プロセッサでなくてもよい。即ち、図18において、入
出力デバイス102aの内容を転送し、処理するプロセ
ッサは9aでなくてもよく、異なる入出力バスに接続さ
れているプロセッサ9b,9c,9dに転送して処理し
てもよい。同様に、入出力デバイス102b,102
c,102dについても、処理するプロセッサは、プロ
セッサ9a,9b,9c,9dのいずれであってもよ
い。
【0085】実施の形態4.実施の形態1においては、
入出力デバイスの内容はその入出力デバイスに対応する
特定のプロセッサに転送され処理されていた。しかし、
以下に述べるように、同一の入出力デバイスの内容を、
ブロックを単位として異なるプロセッサに転送して処理
してもよい。また、必要に応じて一部のブロックを主記
憶装置上のバッファに送り、中央処理装置上で一次集計
処理を行ってもよい。
【0086】実施の形態4におけるシステム構成は、実
施の形態3のシステム構成を示した図18と同一である
とする。図19は、実施の形態4の集計処理を示す図で
ある。図19において、61a〜61dはそれぞれ入出
力デバイス102a〜102dに含まれる磁気ディスク
装置に格納されているファイルである。71a〜71d
は一次集計処理を示す。一次集計処理71aはプロセッ
サ9aにて行われ、一次集計処理71bはプロセッサ9
bにて行われ、一次集計処理71cはプロセッサ9cに
て行われ、一次集計処理71dはプロセッサ9dにて行
われるものとする。一次集計処理71eは、中央処理装
置1上で行われるものとする。81は二次集計処理を示
し、中央処理装置1上で行われるものとする。
【0087】次に、動作について説明する。実施の形態
4では、ファイル61aの内容は、ブロック62a〜6
2d等を単位として、いずれのプロセッサまたは中央処
理装置上で実行される一次集計処理71a〜71eで処
理してもよい。例えば、ブロック62aは、プロセッサ
9aに転送して一次集計処理71aを行うか、プロセッ
サ9bに転送して一次集計処理71bを行うか、プロセ
ッサ9cに転送して一次集計処理71cを行うか、プロ
セッサ9dに転送して一次集計処理71dを行うか、あ
るいは、主記憶装置2に転送して中央処理装置1によっ
て一次集計処理71eを行うか、いずれを選択してもよ
い。ブロック62b、ブロック62c等についても同様
に、個々のブロックについて独立に転送先を任意に選択
してよく、それぞれの一次集計処理が行われるプロセッ
サまたは中央処理装置が異なっていてもよい。
【0088】なお、本実施の形態4では、すべてのファ
イルのブロックをどのプロセッサに転送してもよいとし
たが、ハードウェア上の制限、転送効率や実行時の負荷
状態に応じて、転送先のプロセッサを制限してもよい。
【0089】実施の形態5.実施の形態1では、一次集
計結果が生成される毎に主記憶装置にDMA転送すると
したが、以下に述べるように、プロセッサ内部で二次集
計処理まで行ってもよい。
【0090】実施の形態5におけるシステム構成及びシ
ステム初期化手順は、実施の形態1と同一であり、実施
の形態5の動作のうち、実施の形態1と異なる部分につ
いて示す。
【0091】図20は、実施の形態5における集計処理
を示す図である。61a〜61fはファイルである。8
1a〜81fは二次集計処理である。82a〜82fは
二次集計結果である。実施の形態1においては、プロセ
ッサ9aにおいて一次集計処理71aを行うと、各ブロ
ック62a〜62dの一次集計結果72a〜72dをそ
のまま主記憶装置2上のバッファ10aに転送して処理
し、中央処理装置1によって二次集計処理を行った。実
施の形態5では、一次集計結果72a〜72dに対し
て、更にプロセッサ9aにおいて二次集計処理81aま
で行う。二次集計処理81aの結果得られた二次集計結
果82aは、プロセッサ9a内の出力バッファに格納さ
れ、DMA転送によって主記憶装置2上のバッファ10
aに送られる。以降の処理は、実施の形態1と同様であ
る。
【0092】図21は、実施の形態5の動作を示すフロ
ーチャートである。中央処理装置1は、最終出力バッフ
ァ101内の二次集計結果82を空にする。即ち、二次
集計結果82に含まれる二次集計レコードが1つも存在
しない状態にする(ステップS100)。
【0093】次に、中央処理装置1は、ディスク制御装
置7aに対して磁気ディスク装置8a内のファイル61
aの先頭のブロックを物理アドレス範囲46aに対して
データ転送するよう指示する(ステップS101)。デ
ィスク制御装置7aは、磁気ディスク装置8aからファ
イル61aの内容を読み出し、そのデータは、ローカル
メモリ33内の入力バッファ37aに格納される(ステ
ップS102)。
【0094】データ転送後、中央処理装置1は、プロセ
ッサ9aの内部のマイクロプロセッサ32に対して入力
バッファ37aに対する一次集計処理及び二次集計処理
を指示する(ステップS103)。
【0095】マイクロプロセッサ32は、入力バッファ
37a内のデータに対して一次集計処理及び二次集計処
理を行い、二次集計結果を出力バッファ38aに出力す
る(ステップS104)。
【0096】中央処理装置1は、プロセッサ9a内部の
DMAコントローラ36を起動し、出力バッファ38a
に含まれる二次集計結果82aを主記憶装置2内部のバ
ッファ10aに転送する(ステップS105)。このと
き、二次集計結果82aのサイズだけ、二次集計結果8
2aを転送すればよく、出力バッファ38a全体を転送
する必要はない。
【0097】DMAコントローラ36は、主記憶装置2
上のバッファ10aの物理アドレス範囲48aを指定し
てデータ転送する(ステップS106)。
【0098】中央処理装置1は、バッファ10aの二次
集計結果と最終出力バッファ101内の二次集計結果8
2に対して二次集計処理を行い、二次集計結果82を更
新する(ステップS107)。
【0099】中央処理装置1は、ステップS101〜S
107の操作を、ファイル61aに含まれるすべてのブ
ロック62a〜62dに対する処理が終わるまで繰り返
す(ステップS108)。
【0100】実施の形態1と同様に、図21の動作は、
複数のプロセッサ9a〜9cにて同時、並列的に動作し
てもよい。
【0101】なお、実施の形態5において、二次集計処
理を階層的に実行してもよい。図22は、複数のプロセ
ッサを用いて階層的に二次集計処理を実行する例であ
る。81a〜81fは下位層の二次集計処理であり、8
1g,81hは上位層の二次集計処理であり、それぞれ
異なるプロセッサまたは同一のプロセッサにて実行され
る。
【0102】以上のように、実施の形態1〜5に係るデ
ータ処理装置は、階層バスの各階層にプロセッサを配置
し、階層バス内に接続されている入出力デバイスからこ
れらのプロセッサの一部、あるいは、全部に対して主記
憶装置を介在せずに、データを転送するとともに、これ
らのプロセッサでデータの前処理を行い、これらのプロ
セッサで前処理された処理結果を主記憶装置に転送する
ことを特徴とする。
【0103】また、上記データ処理装置は、階層バス内
に接続されている入出力デバイスから階層バス内に配置
されているプロセッサを経由せずに、主記憶装置へデー
タを転送することを特徴とする。
【0104】また、図示しないが、実施の形態1〜5に
係るデータ処理装置において、前述したデータの転送方
向と逆方向にデータを転送してもよい。即ち、階層バス
の各階層のすべてまたは一部にプロセッサを配置し、主
記憶装置からこれらのプロセッサにデータを転送すると
ともに、これらのプロセッサでデータの処理を行い、こ
れらのプロセッサで処理された処理結果をプロセッサか
ら階層バス内に接続されている入出力デバイスの一部ま
たは全部に対して主記憶装置を介在せずに、データを転
送することも可能である。
【0105】また、上記データ処理装置は、主記憶装置
から階層バス内に配置されているプロセッサを経由せず
に、階層バス内に接続されている入出力デバイスへデー
タを転送することも可能である。
【0106】このように、階層バスの各階層の一部また
はすべてのプロセッサを配置し、そのプロセッサにおい
て入出力デバイスへ送るデータを処理することにより、
階層バスの上位階層に流れるデータ転送量を削減し、更
に、中央処理装置によるデータ処理量を削減することに
より、階層バスによる入出力デバイスの数の拡大に見合
った転送速度性能及び処理速度性能を得ることができ
る。
【0107】なお、以上の実施の形態1〜5において
は、処理の一例として選択・射影処理を伴う集計処理を
例としたが、前処理によってデータ量を減らすことので
きる処理であれば、いかなる処理であっても適用可能で
ある。そのような例として、特定の条件を満たすデータ
の数のカウント、データの最大値の検索、データの最小
値の検索などがあり、更に、これらの処理を組み合わせ
たより複雑な処理であっても、本発明は適用可能であ
る。
【0108】また、以上の実施の形態1〜5において
は、処理の一例として、選択・射影処理を伴う集計処理
を例としたが、これらのうち一部の処理の組み合せから
なる処理であっても、本発明は適用可能である。即ち、
選択処理、射影処理、集計処理のうち1つまたは2つの
処理の組み合せであっても、本実施の形態の一部の処理
だけを行うことによって、容易に適用可能である。
【0109】なお、以上の実施の形態1〜5において
は、プロセッサでの処理結果を直接主記憶装置に転送す
るものとしたが、プロセッサでの処理結果を一時的に入
出力デバイスに書き戻し、その後、処理を続行してもよ
い。
【0110】なお、以上の実施の形態1〜5において
は、二次集計処理を中央処理装置1で行うものとした
が、二次集計処理をいずれかのプロセッサにおいて行っ
てもよい。一般に、集計処理以外の場合でも、データ量
を削減した後の処理を中央処理装置1でなく、いずれか
のプロセッサで行ってもよい。
【0111】なお、以上の実施の形態1〜5において
は、ディスク制御装置に接続されている磁気ディスク装
置の数を1としたが、複数の磁気ディスク装置が1個の
ディスク制御装置に接続されていてもよい。
【0112】また、以上の実施の形態1〜5において
は、磁気ディスク装置内に存在するファイルの数を1と
したが、複数のファイルが1個の磁気ディスク装置内に
存在していてもよい。
【0113】また、以上の実施の形態1〜5において
は、1本の入出力バスに接続されているプロセッサの数
を1としたが、プロセッサの数は複数であってもよい。
【0114】また、以上の実施の形態1〜5において
は、ファイルに対応する入力バッファは入出力デバイス
の数と同数としたが、ファイルあたり複数のバッファを
用意して、いわゆるダブルバッファリング制御などを行
ってもよい。
【0115】また、以上の実施の形態1〜5において
は、一次集計結果を格納する出力バッファは入出力デバ
イスの数と同数としたが、複数のバッファを用意して、
いわゆるダブルバッファリング制御などを行ってもよ
い。
【0116】また、以上の実施の形態1〜5において
は、主記憶装置2上のバッファ10a〜10fは入出力
デバイスの数と同数としたが、バッファの数は1であっ
ても、複数であっても、適当な排他制御を行うことによ
って本実施の形態と同様の効果を奏することができる。
【0117】また、以上の実施の形態1〜5において
は、プロセッサは入出力デバイスに接続されるものとし
たが、システムバスに直接接続されていてもよい。
【0118】また、以上の実施の形態1〜5において
は、システムバスと入出力バスが異なる種類のバスであ
る場合を例としたが、システムバスと入出力バスが同一
の種類の制御手順によって制御される同種のバスであっ
てもよい。
【0119】また、以上の実施の形態1〜5において
は、入出力バスがすべて同一の種類である場合を例とし
たが、異なる制御手順によって制御される入出力バスが
混在していても、適切なバス接続装置を用意することに
よって、本実施の形態と同様の効果を奏することができ
る。
【0120】また、以上の実施の形態1〜5において
は、入出力デバイスとして磁気ディスク装置とそれを制
御するディスク制御装置を例としたが、磁気テープ装
置、半導体ディスク装置等、いかなる記憶装置であって
も構わない。また、通信回線を介したネットワークやネ
ットワークファイルシステムなどを介在しても構わな
い。
【0121】また、以上の実施の形態1〜5において
は、システムバスに接続される中央処理装置1の数を1
としたが、中央処理装置1の数は複数であってもよい。
【0122】また、以上の実施の形態1〜5において
は、ファイルの転送開始やDMA転送の開始を中央処理
装置が指示する場合を例としたが、プロセッサ内のマイ
クロプロセッサが指示してもよい。
【0123】
【発明の効果】本発明によれば、階層バスの各階層の一
部またはすべてのプロセッサを配置し、そのプロセッサ
において入出力デバイスから送られるデータを処理する
ことにより、階層バスの上位階層に流れるデータ転送量
を削減し、更に、中央処理装置によるデータ処理量を削
減することにより、階層バスによる入出力デバイスの数
の拡大に見合った転送速度性能及び処理速度性能を得る
ことができる。
【図面の簡単な説明】
【図1】 この発明の実施の形態1を示すシステム構成
図である。
【図2】 この発明の実施の形態1におけるシステムバ
ス・入出力バス結合装置の構成図である。
【図3】 この発明の実施の形態1における入出力バス
結合装置の構成図である。
【図4】 この発明の実施の形態1におけるプロセッサ
の構成図である。
【図5】 この発明の実施の形態1における物理アドレ
ス空間上のアドレス配置を示す図である。
【図6】 この発明の実施の形態1におけるプロセッサ
におけるアドレス変換を示す図である。
【図7】 この発明の実施の形態1におけるファイルの
構成を示す図である。
【図8】 この発明の実施の形態1におけるファイルを
構成するブロックの構成を示す図である。
【図9】 この発明の実施の形態1における一次集計処
理の一例とそれによって生成される一次集計結果を示す
図である。
【図10】 この発明の実施の形態1における一次集計
処理の内部構造を示す図である。
【図11】 この発明の実施の形態1における選択・射
影処理の一例とそれによって生成される選択・射影結果
を示す図である。
【図12】 この発明の実施の形態1におけるブロック
集計処理の一例とそれによって生成される一次集計結果
を示す図である。
【図13】 この発明の実施の形態1における二次集計
処理の一例とそれによって生成される二次集計結果を示
す図である。
【図14】 この発明の実施の形態1における集計処理
を示す図である。
【図15】 この発明の実施の形態1における動作を示
すフローチャート図である。
【図16】 この発明の実施の形態2を示すシステム構
成図である。
【図17】 この発明の実施の形態2におけるプロセッ
サ付き入出力バス結合装置の構成図である。
【図18】 この発明の実施の形態3を示すシステム構
成図である。
【図19】 この発明の実施の形態4における集計処理
を示す図である。
【図20】 この発明の実施の形態5における集計処理
を示す図である。
【図21】 この発明の実施の形態5における動作を示
すフローチャート図である。
【図22】 この発明の実施の形態5における階層的集
計処理を示す図である。
【図23】 従来例のシステム構成図である。
【符号の説明】
1 中央処理装置、2 主記憶装置、3 システムバ
ス、4 システムバス・入出力バス結合装置、5a〜5
c 入出力バス、6a〜6c 入出力バス結合装置、7
a〜7f ディスク制御装置、8a〜8f 磁気ディス
ク装置、9a〜9c プロセッサ、10a〜10f バ
ッファ、61a〜61f ファイル、101 最終出力
バッファ、102a〜102f 入出力デバイス。
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G06F 12/00,13/36,15/16 G06F 15/173,15/177,17/00

Claims (5)

    (57)【特許請求の範囲】
  1. 【請求項1】 階層化されて接続された上位バスと複数
    下位バスと、 上位バスに接続された記憶装置と、複数の 下位バスにそれぞれ接続され、データを記憶する
    複数のデバイスと、複数の 下位バスにそれぞれ接続され、下位バスを介して
    デバイスからデータを受け取り、受け取ったデータの一
    部を抽出し、抽出したデータを上位バスを介して記憶装
    置へ転送する複数のプロセッサと、 上位バスに接続され、記憶装置に記憶されたデータを処
    理する処理装置とを備え 上記デバイスは、記憶したデータを所定のサイズのブロ
    ックに分割し、分割した個々のブロックについて独立に
    上記記憶装置と上記複数のプロセッサとの中からいずれ
    かを転送先として選択して、選択した転送先へそのブロ
    ックを転送し、 上記転送先となったプロセッサは、転送されたブロック
    に対してデータの一次集計処理を実行することによりデ
    バイスから受け取ったデータの量を削減した一次集計結
    果を求めて記憶装置へ転送し、 上記処理装置は、デバイスにより記憶装置が転送先とし
    て選択された場合には、記憶装置に転送されたブロック
    に対してデータの一次集計処理を実行することによりデ
    バイスから受け取ったデータの量を削減して一時集計結
    果を求めるとともに、求めた一次集計結果と各プロセッ
    サから転送された一次集計結果とに対してデータの二次
    集計処理を実行することにより、データの量を削減した
    二次集計結果を求めることを特徴とするデータ処理装
    置。
  2. 【請求項2】 上記プロセッサは、データ数をカウント
    することによりデバイスから受け取ったデータの量を削
    減して記憶装置へ転送することを特徴とする請求項1記
    載のデータ処理装置。
  3. 【請求項3】 上記プロセッサは、データの最大値を抽
    出することによりデバイスから受け取ったデータの量を
    削減して記憶装置へ転送することを特徴とする請求項1
    記載のデータ処理装置。
  4. 【請求項4】 上記プロセッサは、データの最小値を抽
    出することによりデバイスから受け取ったデータの量を
    削減して記憶装置へ転送することを特徴とす る請求項1
    記載のデータ処理装置。
  5. 【請求項5】 上記データ処理装置は、更に、上位バス
    と下位バスの間に上位バスと下位バスとを接続するバス
    結合装置を備え、上記プロセッサは、バス結合装置と一
    体化されていることを特徴とする請求項1記載のデータ
    処理装置。
JP15697698A 1998-06-05 1998-06-05 データ処理装置 Expired - Lifetime JP3263362B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP15697698A JP3263362B2 (ja) 1998-06-05 1998-06-05 データ処理装置
US09/204,076 US6223236B1 (en) 1998-06-05 1998-12-03 Hierarchical bus structure data processing apparatus and method with reduced data transfer volume
CA002255350A CA2255350C (en) 1998-06-05 1998-12-09 A data processing apparatus and its data processing method
GB9827128A GB2338092B (en) 1998-06-05 1998-12-09 A data processing apparatus and its data processing method
DE19901792A DE19901792C2 (de) 1998-06-05 1999-01-08 Datenverarbeitunsvorrichtung und Datenverarbeitungsverfahren

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15697698A JP3263362B2 (ja) 1998-06-05 1998-06-05 データ処理装置

Publications (2)

Publication Number Publication Date
JPH11353270A JPH11353270A (ja) 1999-12-24
JP3263362B2 true JP3263362B2 (ja) 2002-03-04

Family

ID=15639456

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15697698A Expired - Lifetime JP3263362B2 (ja) 1998-06-05 1998-06-05 データ処理装置

Country Status (5)

Country Link
US (1) US6223236B1 (ja)
JP (1) JP3263362B2 (ja)
CA (1) CA2255350C (ja)
DE (1) DE19901792C2 (ja)
GB (1) GB2338092B (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2978882B1 (ja) 1998-06-03 1999-11-15 三菱電機株式会社 デバイス間データ転送装置及びデバイス間データ転送方法
DE10050980A1 (de) * 2000-10-13 2002-05-02 Systemonic Ag Speicherkonfiguration mit I/O-Unterstützung
US6865695B2 (en) * 2001-07-26 2005-03-08 International Business Machines Corpoation Robust system bus recovery
US6865656B2 (en) * 2001-09-10 2005-03-08 Qualcomm Incorporated Method and system for efficient transfer of data between custom application specific integrated circuit hardware and an embedded microprocessor
US6928509B2 (en) * 2002-08-01 2005-08-09 International Business Machines Corporation Method and apparatus for enhancing reliability and scalability of serial storage devices
JPWO2015155850A1 (ja) * 2014-04-09 2017-04-13 株式会社日立製作所 入出力装置及び方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4647123A (en) * 1983-02-07 1987-03-03 Gulf & Western Manufacturing Company Bus networks for digital data processing systems and modules usable therewith
EP0154551A3 (en) 1984-03-06 1987-12-16 Codex Corporation Apparatus for enabling a first processor to cause a second processor to effect a transfer of data between said processors
GB8816413D0 (en) 1988-07-09 1988-08-17 Int Computers Ltd Data processing system
JPH04137165A (ja) 1990-09-28 1992-05-12 Yokogawa Electric Corp マルチプロセッサ・システム
JPH05120240A (ja) 1991-10-29 1993-05-18 Toshiba Corp 並列処理装置
US5574869A (en) * 1992-03-30 1996-11-12 Intel Corporation Bus bridge circuit having configuration space enable register for controlling transition between various modes by writing the bridge identifier into CSE register
JP3064706B2 (ja) 1992-11-04 2000-07-12 カシオ計算機株式会社 データ処理装置
US5568620A (en) 1993-06-30 1996-10-22 Intel Corporation Method and apparatus for performing bus transactions in a computer system
US5594926A (en) 1993-07-19 1997-01-14 Efar Microsystems, Inc. Hard disk accelerating system for computer
JPH09507939A (ja) 1995-04-18 1997-08-12 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン マルチプロセッサ・システムにおける入出力オペレーションの実行
KR100197407B1 (ko) * 1995-12-28 1999-06-15 유기범 전전자 교환기에 있어서 프로세서들간 통신버스구조
JPH09269927A (ja) 1996-03-29 1997-10-14 Mitsubishi Electric Corp バスアクセス方法、バス、並びにバス接続システム
US6073225A (en) * 1997-06-24 2000-06-06 Intel Corporation Method and apparatus for monitoring bus transactions based on cycle type and memory address range

Also Published As

Publication number Publication date
US6223236B1 (en) 2001-04-24
DE19901792A1 (de) 1999-12-09
CA2255350A1 (en) 1999-12-05
DE19901792C2 (de) 2003-10-30
CA2255350C (en) 2002-02-12
GB9827128D0 (en) 1999-02-03
GB2338092A (en) 1999-12-08
JPH11353270A (ja) 1999-12-24
GB2338092B (en) 2000-04-19

Similar Documents

Publication Publication Date Title
US7493426B2 (en) Data communication method and apparatus utilizing programmable channels for allocation of buffer space and transaction control
US7647435B2 (en) Data communication method and apparatus utilizing credit-based data transfer protocol and credit loss detection mechanism
JP3364587B2 (ja) 通信システムで比較的大きなデータ・オブジェクトの伝送を制御するシステムと方法
US6047120A (en) Dual mode bus bridge for interfacing a host bus and a personal computer interface bus
CN1985247B (zh) 存储器读请求越过存储器写
US7249207B2 (en) Internal data bus interconnection mechanism utilizing central interconnection module converting data in different alignment domains
US20060174050A1 (en) Internal data bus interconnection mechanism utilizing shared buffers supporting communication among multiple functional components of an integrated circuit chip
JPH07225727A (ja) 計算機システム
JP3263362B2 (ja) データ処理装置
JPH11259383A (ja) Ras情報取得回路及びそれを備えた情報処理システム
GB2388934A (en) System for detecting runt block data transfers
JP3683211B2 (ja) ノード間データ転送方法及びノード間データ転送装置
JPH04288638A (ja) コンピュータシステム
CN101520760A (zh) 通道装置、信息处理***以及数据传送方法
JPH11149455A (ja) メモリディスク共有方法及びその実施装置
US20030027465A1 (en) Connection device
JPH03131951A (ja) データ転送方式
JPS585824A (ja) チヤネル間デ−タ転送方式
JPS605367A (ja) 通信制御処理装置
EP1380954B1 (en) Computer system and data processing method
JPH04205047A (ja) データ処理装置
JPS6261976B2 (ja)
JPH01314326A (ja) データ処理方式における通信制御方式
JP2002324044A (ja) コンピュータシステムおよびノード並びにコンピュータシステムにおけるデータ受信方法およびデータ送信方法
JPH0675793A (ja) 仮想計算機間データ送受信処理方法

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071221

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081221

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091221

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091221

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101221

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111221

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111221

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121221

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121221

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131221

Year of fee payment: 12

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term