JP4351292B2 - データ制御装置、データ制御方法およびデータ制御プログラム - Google Patents

データ制御装置、データ制御方法およびデータ制御プログラム Download PDF

Info

Publication number
JP4351292B2
JP4351292B2 JP2008501570A JP2008501570A JP4351292B2 JP 4351292 B2 JP4351292 B2 JP 4351292B2 JP 2008501570 A JP2008501570 A JP 2008501570A JP 2008501570 A JP2008501570 A JP 2008501570A JP 4351292 B2 JP4351292 B2 JP 4351292B2
Authority
JP
Japan
Prior art keywords
data
output
central processing
processing unit
storage unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2008501570A
Other languages
English (en)
Other versions
JPWO2007097018A1 (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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JPWO2007097018A1 publication Critical patent/JPWO2007097018A1/ja
Application granted granted Critical
Publication of JP4351292B2 publication Critical patent/JP4351292B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0804Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0615Address space extension
    • G06F12/0623Address space extension for memory modules

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

この発明は、データを処理する中央処理部およびデータを記憶する主記憶部にそれぞれ接続され、データの出力を制御するデータ制御装置、データ制御方法およびデータ制御プログラムに関する。
従来より、コンピュータシステムにおいて、中央処理部(CPU)のキャッシュメモリにあるデータを出力する場合、CPUがデータ出力依頼を受け付けた後、即時出力するデータと、出力先へ問合せをして許可を得てから出力するデータとがあり、これらのデータを一時的に記憶するデータキュー(記憶部)をそれぞれ用意する必要があった。(例えば、特許文献1など)
図11を用いて、具体的に説明すると、図11に示したコンピュータシステムは、CPU110、CPU111と、データ制御装置120、データ制御装置121と、主記憶部130、主記憶部131とから構成される。そして、これらはそれぞれクラスタ構成になっており、クラスタ間のデータ転送はデータ制御装置120またはデータ制御装置121を用いて行われる。また、データ制御装置120は、データを一時的に記憶する複数のデータキュー(MIQ120a、MSQ120b、MOQ120c、MBQ120d)と、MOQ120aまたはMSQ120bから主記憶に出力されるデータの調停を行うセレクタ120eとから構成される。データ制御装置121も、データ制御装置120と同様に、MIQ121a、MSQ121b、MOQ121c、MBQ121d、セレクタ121eとを備えて構成される。
また、CPU110またはCPU111が自身のキャッシュメモリ上のデータを他装置などに出力する場合、データキュー(例えば、MIQ120aなど)は、データの順序性を守るために同一宛先へのデータを、CPUから出力された順序で出力先に出力する必要があるので、データキューは、受信したデータをFIFO(First In First Out)で制御する。
このような構成のもと、CPU110のキャッシュメモリのデータをCPU111に出力する場合には、CPU111からの要求であることから、CPU111は既にデータを受け入れ可能状態であるので、CPU110は、データキューにすぐにデータを出力する。
具体的には、CPU110のキャッシュメモリのデータをCPU111に出力する場合、CPU110は、データ制御装置120のMBQ120dに要求されたデータを出力する。そして、データを受信したMBQ120dは、通信路が空いていることを確認後、出力先であるCPU111に当該データを出力する。
一方、CPU110のキャッシュメモリのデータを主記憶部131に出力する場合には、CPU110は、データキューにデータを出力し、データを受信したデータキューは、出力先が受け入れ可能状態であるか否かわからないので、データを受信したデータキューは、出力先である主記憶部131が受け入れ可能状態であるか否かを問合せて、許可を取った上で、受信し記憶しているデータを出力する。
具体的には、CPU110のキャッシュメモリのデータを主記憶部131に出力する場合、CPU110は、データ制御装置120のMOQ120cにデータを出力する。そして、MOQ120cは、データ制御装置121のMSQ121bに主記憶131が受け付け可能状態か否かを問合せ、許可を得てから、受信したデータをMSQ121bに出力する。その後、MSQ121bは、受信し記憶したデータをデータ制御装置121のセレクタ121eに出力し、セレクタ121eは、受信したデータを調停してから主記憶部131に出力する。
特開平08−063954号公報
ところで、上記した従来の技術は、システム性能向上のために、CPUと同等の処理速度を持つメモリ(MOQまたはMBQ)が複数必要であり、システム構築時のコストが高くなるという問題点があった。すなわち、CPUから主記憶部へデータを出力するためのメモリ(MOQ)と、他CPUなどへデータを出力するためのメモリ(MBQ)とが必要であり、CPUと同等の処理速度を有する両メモリを用意するのは、高コストであった。
そこで、この発明は、上述した従来技術の課題を解決するためになされたものであり、システム構築のコスト削減が可能であるデータ制御装置、データ制御方法およびデータ制御プログラムを提供することを目的とする。
上述した課題を解決し、目的を達成するため、請求項1に係る発明は、データを処理する中央処理部および前記データを記憶する主記憶部にそれぞれ接続され、前記データの出力を制御するデータ制御装置であって、前記中央処理部から前記主記憶部へ出力されるデータおよび前記中央処理部から他の中央処理部へ出力されるデータをともに記憶するデータ記憶手段と、前記データ記憶手段に記憶された前記データが出力可能状態になった場合に、出力可能状態になった旨を示す情報を前記データに付加する情報付加手段と、前記情報付加手段により前記情報が付加されたデータを、前記データ記憶手段に最も古く記憶された順に出力するデータ出力手段と、を備えたことを特徴とする。
また、請求項2に係る発明は、上記の発明において、データを処理する中央処理部から前記データを記憶する主記憶部へ出力されるデータおよび前記中央処理部から他の中央処理部へ出力されるデータをともにデータ記憶手段に記憶するデータ記憶工程と、前記データ記憶手段に記憶された前記データが出力可能状態になった場合に、出力可能状態になった旨を示す情報を前記データに付加する情報付加工程と、前記情報付加工程により前記情報が付加されたデータを、前記データ記憶手段に最も古く記憶された順に出力するデータ出力工程と、を含んだことを特徴とする。
また、請求項3に係る発明は、上記の発明において、データを処理する中央処理部から前記データを記憶する主記憶部へ出力されるデータおよび前記中央処理部から他の中央処理部へ出力されるデータをともにデータ記憶手段に記憶するデータ記憶手順と、前記データ記憶手段に記憶された前記データが出力可能状態になった場合に、出力可能状態になった旨を示す情報を前記データに付加する情報付加手順と、前記情報付加手順により前記情報が付加されたデータを、前記データ記憶手段に最も古く記憶された順に出力するデータ出力手順と、をコンピュータに実行させることを特徴とする。
請求項1、2または3の発明によれば、中央処理部から主記憶部へ出力されるデータおよび中央処理部から他の中央処理部へ出力されるデータをともに記憶し、記憶されたデータが出力可能状態になった場合に、出力可能状態になった旨を示す情報をデータに付加し、情報が付加されたデータを、最も古く記憶された順に出力するので、例えば、中央処理部(CPU)から入力されたデータを出力先を問わず一つのデータ記憶部(メモリ)で記憶し、記憶されたデータが出力可能状態になると、記憶された順に出力先へ出力することができる結果、システム性能向上のために中央処理部と同等の速度を持つ高コストの記憶部(メモリ)などを出力先ごとに複数用意する必要がなく、一つのメモリでデータ制御を行うことができ、システム構築のコスト削減が可能である。
以下に添付図面を参照して、この発明に係るデータ制御装置の実施例を詳細に説明する。
以下の実施例1では、本発明に係るデータ制御装置の概要および特徴、データ制御装置の構成、データ制御装置の原理説明、タイムチャートの説明および実施例1による効果等を順に説明する。
[データ制御装置の概要および特徴]
まず最初に、図1と図2を用いて、実施例1に係るデータ制御装置の概要および特徴を説明する。図1は、実施例1に係るデータ制御装置の全体構成を示すシステム構成図である。同図に示すように、実施例1に係るデータ制御装置30は、中央処理部(CPU)10と主記憶部50との間に位置し、データ記憶部35を備えて構成される。なお、図1の(A)および(B)は、データが記憶され、出力されるまでのデータ制御装置の状態遷移を表している。
このような構成のもと、データ制御装置30は、中央処理部(CPU)10から出力されたデータを一時的に記憶し、例えば、主記憶部50や他装置の中央処理部などの出力先へ出力することを概要とするものであり、システム構築のコスト削減が可能である点に主たる特徴がある。
この主たる特徴を具体的に説明すると、データ制御装置30のデータ記憶部35は、中央処理部10から他の中央処理部へ出力されるデータである「データA」および中央処理部10から主記憶部60へ出力されるデータである「データB」が入力されると、入力された順に「データA」と「データB」をともに記憶する(図1の(A)の(1))。
そして、データ制御装置30は、データ記憶部35に記憶されたデータが出力可能状態になった場合に、出力可能状態になった旨を示す情報(以下、FLAG)をデータに付加する。具体的には、データ制御部30は、中央処理部10から他の中央処理部へ出力されるデータは即時出力が可能であるので、「データA」にはFLAG=1を付加する。
一方、データ制御部30は、中央処理部10から主記憶部60へ出力されるデータは出力先に問合せが必要であるので、「データB」にはFLAG=0を付加し、続いて、「データB」の出力先であるMSQ42に受け入れ可能か否かの問合せを行い、出力先であるMSQ42より出力許可を受信すると、データ記憶部35に記憶された「データB」にFLAG=1を付加する(図1の(A)の(2)〜図1の(B)の(1))。
そして、データ制御装置30は、FLAG=1が付加されたデータを、データ記憶部35に最も古く記憶された順に出力する。具体的には、「データA」については、即時出力可能なデータであることから、データ記憶部35に記憶されると、FLAG=1が付加され、その際、データ記憶部35に記憶されるデータのうちFLAG=1が付加された最も古いデータであるので、すぐに、出力先である他の中央処理部へ出力される(図1の(B)の(2))。
一方、「データB」については、データ記憶部35に記憶されると、即時出力可能なデータでないことから、出力先であるMSQ42に出力可能か否かの問合せを行い、許可応答を受信すると、FLAG=1が付加され、その後、データ記憶部35に記憶されるデータのうちFLAG=1が付加された最も古いデータであるので、出力先であるMSQ42に出力される(図1の(B)の(3))。
このように、実施例1に係るデータ制御装置30は、中央処理部(CPU)から出力されたデータを一つのデータ記憶部(メモリ)で記憶し、記憶されたデータが出力可能状態になると、記憶された順に出力先へ出力することができる結果、システム性能向上のために中央処理部と同等の速度を持つ高コストの記憶部(メモリ)などを複数用意する必要がなく、一つのメモリでデータ制御を行うことができ、システム構築のコスト削減が可能である。
[データ制御装置を含むシステムの全体構成]
次に、図2を用いて、図1に示したデータ制御装置30を含むシステムの全体構成を説明する。図2は、データ制御装置30を含むシステムの全体構成を示すブロック図である。同図に示すように、このシステムは、中央処理部10、中央処理部20と、データ制御装置30、データ制御装置40と、主記憶部50、主記憶部60とから構成され、それぞれがクラスタ構成となっており、それぞれ同じ機能を有するので、ここでは、中央処理部10と、データ制御装置30と、主記憶部50について説明する。
このうち、中央処理部10は、OS(Operating System)などの制御プログラム、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有し、これらによって種々の処理を実行する処理部であり、具体的には、他の中央処理部に対してデータ転送要求を出力したり、主記憶部50、主記憶部60に記憶されているプログラムを実行したりする。
データ制御装置30は、データの出力を制御する手段であり、特に本発明に密接に関連するものとしては、MIQ31と、MSQ32と、MOMBQ33と、セレクタ34とを備える。なお、データ制御装置40のMIQ41と、MSQ42と、MOMBQ43と、セレクタ44は、ここで説明するMIQ31と、MSQ32と、MOMBQ33と、セレクタ34と同様の機能を有するので、その詳細な説明は省略する。
このうち、MIQ31は、主記憶部および他クラスタのMOMBQからのデータを一時的に記憶する手段である。具体的には、主記憶部50およびMOMBQ43からのデータを一時的に記憶する。例えば、中央処理部10は、このMIQ31に空きがあることを確認してから、他CPUや主記憶部50などに対してデータ要求を行う。
MSQ32は、他クラスタから主記憶へのデータを一時的に記憶する手段である。具体的に例を挙げれば、中央処理部20からデータ制御装置40を介して、主記憶部50に出力されるデータを一時的に記憶する。
MOMBQ33は、中央処理部から主記憶部に出力するデータおよび中央処理部から他の中央処理部へ出力するデータを一時的に記憶し、記憶されたデータが出力可能状態になった場合に、出力可能状態になった旨を示す情報をデータに付加し、情報が付加されたデータを、最も古く記憶された順に出力する手段であり、特に本発明に密接に関連するものとしては、データ記憶部33aと、情報付加部33bと、データ出力部33cとを備える。なお、データ記憶部33aは、特許請求の範囲に記載の「データ記憶手段」に対応し、情報付加部33bは、同様に「情報付加手段」、データ出力部33cは、同様に「データ出力手段」に対応する。
このうち、データ記憶部33aは、中央処理部から主記憶部へ出力されるデータおよび中央処理部から他の中央処理部へ出力されるデータをともに記憶する手段である。具体的に例を挙げれば、中央処理部10から主記憶部50、主記憶部60に出力するデータおよび中央処理部10から他の中央処理部へ出力するデータをともに、出力された順に記憶する。
また、情報付加部33bは、データ記憶部43aに記憶されたデータが出力可能状態になった場合に、出力可能状態になった旨を示す情報をデータに付加する手段である。具体的に例を挙げれば、中央処理部10から他の中央処理部へ出力されるデータに対して、データ記憶部43aに記憶された際に、出力可能状態になった旨を示す情報(例えば、FLAG=1)を当該データに付加する。また、中央処理部10から主記憶部50または主記憶部60へ出力されるデータに対しては、出力先である主記憶部50または主記憶部60が受け入れ可能状態か否かを問い合わせ、許可を取った後、出力可能状態になった旨を示す情報(例えば、FLAG=1)を当該データに付加する。
そして、データ出力部33cは、情報付加部33bにより情報が付加された最も古いデータから順に出力する手段である。具体的に例を挙げれば、中央処理部10から主記憶部50、主記憶部60に送信するデータおよび中央処理部10から他の中央処理部へ送信するデータのうち、出力可能状態になった旨を示す情報(例えば、FLAG=1)が付加された最も古いデータから順に、出力先へ出力する。
セレクタ34は、MOMBQまたはMSQから出力されたデータの主記憶への格納を調停する手段であり、具体的に例を挙げれば、MOMBQ33またはMSQ32から出力されたデータの主記憶50への格納を調停する。
主記憶部50は、中央処理部10により各種処理に必要なデータおよびプログラムを格納する格納手段(記憶手段)であり、具体的に例を挙げれば、中央処理部10または中央処理部20により実行されるプログラムや、中央処理部10または中央処理部20によりキャッシュメモリのデータが出力されると、それを記憶する。
[データ制御装置の原理説明]
次に、図4〜8を用いて、データ制御装置30の原理について説明する。図4は、実施例1に係るデータ制御装置30(MOMBQ)の原理説明図であり、図5は、実施例1に係るデータ制御装置30(WPとRP)の原理を詳細に説明するための図であり、図6は、実施例1に係るデータ制御装置30(REQVLDとFLAGとASK)の原理を詳細に説明するための図であり、図7は、実施例1に係るデータ制御装置30(RPX_VとRPX)の原理を詳細に説明するための図であり、図8は、実施例1に係るデータ制御装置30(MSQRSV_VとMSQRSV_IDX)の原理を詳細に説明するための図である。なお、データ制御装置30の原理とデータ制御装置40の原理とは同様であるので、ここでは、データ制御装置30の原理について説明する。
まず、図4に示すように、CPUから出力データがある場合、CPU_V=1としてCPU_DATAで送信される。そして、CPU_V=1である場合、CPU_DATAはRAM<WP>に書込まれるが、即時出力が可能であれば、FLAG<WP>=1とし、問合せが必要であれば、FLAG<WP>=0とする。
続いて、未問合せで、FLAG=0であるデータがあれば、データ制御装置30は、そのうち最も古いデータを探し、MSQRSV_V=1としてRAMのアドレスを示すMSQRSV_IDXと共に出力先へ問い合わせる。
そして、問合わせに対する許可としてMSQACK_V=1でMSQACK_IDXが送信されてきた場合、データ制御装置30は、FLAG<MSQACK>=1となり、具体的には、FLAG=1である最も古いCPU_DATAをMOMBQ_DATAとして、MOMBQからの出力があることを示す。
次に、図5を用いて、WP(Write Pointer)とRP(Read Pointer)について説明する。同図に示すように、WPは、nビットのレジスタであり、CPU_V=1では、値を1つ増やされ、それ以外では値を保持する。具体的には、WPは、RAMの書込みアドレスに使用される。
RPは、nビットのレジスタでRPの値とWPの値と等しくなく、かつ、FLAG<RP>=1である場合に、値を1つ増やされ、それ以外では、値を保持する。具体的には、RPは、RAMに保持された最も古いCPU_DATAのアドレスである。
次に、図6を用いて、REQVLDとFLAGとASKについて説明する。このうち、REQVLDは、2のn乗ビットのレジスタであり、CPU_V=1ではREQVLD<WP>=1にされ、RPX_V=1では、REQVLD<RPX>=0となる。
また、FLAGは、2のn乗ビットのレジスタであり、CPU_V=1でCPU_DATAが即時出力可能であれば1、問い合わせが必要であれば0となり、MSQACK_V=1ではFLAG<MSQACK_IDX>=1となり、具体的には、FLAGは、RAMに保持されているCPU_DATAが出力可能であることを示す。
ASKは、2のn乗ビットのレジスタであり、MSQRSV_V=1ではASK<MSQRSV_IDX>=1となり、CPU_V=1ではASK<WP>=0となり、具体的には、RAMに保持されているCPU_DATAが問い合わせ済みであることを示す。
次に、図7を用いて、RPX_VとRPXについて説明する。このうち、RPX_Vは、1ビットの信号でありRAM内にREQVLD=1かつFLAG=1であるCPU_DATAが存在する場合に1となり、具体的には、MOMBQから出力されるデータが存在することを示す。
また、RPXは、nビットの信号であり、m=RP,RP+1,・・・,2のn乗―1,0,・・・,RP−1に対して最初にREQVLD=1かつFLAG=1となるmを示しており、具体的には、RAM内の出力可能なCPU_DATAのうち、最も古いCPU_DATAのアドレスを示す。
次に、図8を用いて、MSQRSV_VとMSQRSV_IDXとについて説明する。このうち、MSQRSV_Vは、1ビットの信号であり、RAM内にREQVLD=1かつFLAG=0かつASK=0であるCPU_DATAが存在する場合に、1となり、具体的には、MSQRSVが、問い合わせを行っている状態を示す。
また、MSQRSV_IDXは、nビットの信号であり、m=RP,RP+1,・・・,2のn乗―1,0,・・・,RP−1に対して最初にREQVLD=1かつFLAG=0かつASK=0となるmを示しており、具体的には、MSQRSV_IDXは、問い合わせがRAMのどのアドレスのCPU_DATAから行われたものであるかを示す。
[タイムチャート(問合せが必要な場合)]
次に、図8〜9を用いて、実施例1に係るデータ制御装置30のタイムチャートについて説明する。図8は、実施例1に係るデータ制御装置30のタイムチャート(問合せが必要な場合)であり、図9は、実施例1に係るデータ制御装置30のタイムチャート(問合せが必要な場合と必要でない場合)である。なお、データ制御装置30の原理とデータ制御装置40の原理とは同様であるので、ここでは、データ制御装置30の原理について説明する。
図8に示したように、時刻T0の時点では、CPU_DATA_IMMEDIATE=0であり、即時出力できるデータではないことを示している。また、WP=Aより、RAMの書き込みアドレスがAであることを示す。
その後、時刻T1の時点で、MSQRSV_IDX=A、FLAG<A>=0となり、問合せが必要なデータが存在することを示している。続いて、時刻T2の時点で、ASK<A>=Aとなり、アドレスAについて、問合せが行われたことを示す。その後、T3、T4では、問合せの結果待ち状態である。
そして、時刻T5の時点で、RAMのアドレスAについて、出力許可が得られる、つまり、MSQACK_IDX=Aとなると、時刻T6の時点で、FLAG<A>=1となり、RAMのアドレスAに書き込まれたデータが出力可能状態となる。続いて、RPX=Aとなり、つまり、REQVLD=1かつFLAG=1である出力可能なCPU_DATAのうち、最も古いCPU_DATAのアドレスがAとなる
その後、時刻T7の時点で、RP=A+1となり、RAMに保持されたデータのうち最も古いCPU_DATAのアドレスがAであることから、MOMBQからCPU_DATAのアドレスAのデータが出力される。
[タイムチャート(問合せが必要な場合と必要でない場合)]
図9に示したように、時刻T0の時点で、CPU_DATA_IMMEDIATE=0であり、即時出力できるデータではないことを示している。また、WP=Aより、RAMの書き込みアドレスがAであることを示し、そして、時刻T1の時点で、MSQRSV_IDX=A、FLAG<A>=0となり、RAMのアドレスAについて出力先へ問い合わせが必要であること示し、T2の時点から、問合せが行われている。
その後、時刻T5の時点で、RAMのアドレスAについて、出力許可が得られる、つまり、MSQACK_IDX=Aとなる。そして、時刻T6の時点で、FLAG<A>=1となり、RAMのアドレスAに書き込まれたデータが出力可能状態となる。
一方、時刻T3の時点で、CPU_DATA_IMMEDIATE=1となり、即時出力できるデータが存在することが示される。続いて、そのデータはRAMのアドレスA+1に格納され、即時出力可能であることより、時刻T4の時点で、FLAG<A+1>=1となる。
ここで、FLAG<A+1>=1となるのは時刻T4、FLAG<A>=1となるのは時刻T6であることより、RPX=A+1、つまり、CPU_DATAのうち、FLAG=1であるデータで最も古いデータのアドレスが、T4ではA+1、T6ではAとなる。したがって、時刻T5の時点で、アドレスA+1のデータが出力され、その後、時刻T7の時点で、アドレスAのデータが出力される。
[実施例1による効果]
このように、実施例1によれば、中央処理部から主記憶部へ出力されるデータおよび中央処理部から他の中央処理部へ出力されるデータをともに記憶し、記憶されたデータが出力可能状態になった場合に、出力可能状態になった旨を示す情報をデータに付加し、情報が付加されたデータを、最も古く記憶された順に出力するので、例えば、中央処理部(CPU)から入力されたデータの出力先を問わず一つのデータ記憶部(メモリ)で記憶し、記憶されたデータが出力可能状態になると、記憶された順に出力先へ出力することができる結果、システム性能向上のために中央処理部と同等の速度を持つ高コストの記憶部(メモリ)などを出力先ごとに複数用意する必要がなく、一つのメモリでデータ制御を行うことができ、システム構築のコスト削減が可能である。
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では実施例2として、本発明に含まれる他の実施例について説明する。
例えば、上記した実施例1では、各構成要素がクラスタ構成になっている場合を説明したが、本発明はこれに限定されるものではなく、異なる機能を有する他のコンピュータシステムに対して、データを出力する場合に適用してもよい。
また、本実施例において説明したデータ制御装置による処理(図3参照)のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報(例えば、FLAGやCPU_DATAなど)については、特記する場合を除いて任意に変更することができる。
また、図2に図示しデータ制御装置の各構成要素や、図3〜7に図示したデータ制御装置の原理説明は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合、例えば、データ付加部33bとデータ出力部33cを統合・分散するなど、具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、データ制御装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
ところで、上記の実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータシステムで実行することによって実現することができる。そこで、以下では、上記の実施例と同様の機能を有するプログラムを実行するコンピュータシステムの一例を説明する。
[データ制御プログラムを実行するコンピュータシステム]
図10は、データ制御プログラムを実行するコンピュータシステム100を示す図である。同図に示すように、コンピュータシステム100は、RAM101と、HDD102と、ROM103と、CPU104と、主記憶105とから構成される。ここで、ROM103には、上記の実施例と同様の機能を発揮するプログラム、つまり、図10に示すように、情報付加プログラム103aと、データ出力プログラム103bがあらかじめ記憶されている。
そして、CPU104には、これらのプログラム103a、103bを読み出して実行することで、図10に示すように、情報付加プロセス104aと、データ出力プロセス104bとなる。なお、各プロセス104a、104bは、図2に示した、情報付加部33bと、データ出力部33cにそれぞれ対応する。
また、HDD102には、CPU104から主記憶105や他装置のCPUに送信されるデータを一時的に記憶するデータ記憶テーブル102aが設けられる。そして、CPU104は、データ記憶テーブル102aに格納される情報をRAM101に呼び出して、各種処理を実行する。なお、データ記憶テーブル102aは、図2に示した、データ記憶部102aに対応する。
ところで、上記したプログラム103a、103bは、必ずしもROM103に記憶させておく必要はなく、例えば、コンピュータシステム100に挿入されるフレキシブルディスク(FD)、CD−ROM、MOディスク、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」の他に、コンピュータシステム100の内外に備えられるハードディスクドライブ(HDD)などの「固定用の物理媒体」、さらに、公衆回線、インターネット、LAN、WANなどを介してコンピュータシステム100に接続される「他のコンピュータシステム」に記憶させておき、コンピュータシステム100がこれらからプログラムを読み出して実行するようにしてもよい。
以上のように、本発明に係るデータ制御装置、データ制御方法およびデータ制御プログラムは、データを処理する中央処理部およびデータを記憶する主記憶部に、それぞれ接続され、データを制御するのに有用であり、特に、システム構築のコスト削減が可能することに適する。
図1は実施例1に係るデータ制御装置の全体構成を示すシステム構成図である。 図2は、データ制御装置30を含むシステムの全体構成を示すブロック図である。 図3は、実施例1に係るデータ制御装置30の原理説明図である。 図4は、実施例1に係るデータ制御装置30の原理を詳細に説明するための図である。 図5は、実施例1に係るデータ制御装置30の原理を詳細に説明するための図である。 図6は、実施例1に係るデータ制御装置30の原理を詳細に説明するための図である。 図7は、実施例1に係るデータ制御装置30の詳細をまとめた図である。 図8は、実施例1に係るデータ制御装置30のタイムチャート(問合せが必要な場合)である。 図9は、実施例1に係るデータ制御装置30のタイムチャート(問合せが必要な場合と必要でない場合)である。 図10は、データ制御プログラムを実行するコンピュータシステムの例を示す図である。 図11は、従来技術を説明するための図である。
10 中央処理部(CPU)
20 中央処理部(CPU)
30 データ制御装置
30a データA
30b データB
31 MIQ
32 MSQ
33 MOMBQ
33a データ記憶部
33b 情報付加部
33c データ出力部
35 データ記憶部
40 データ制御装置
41 MIQ
42 MSQ
43 MOMBQ
43a データ記憶部
43b 情報付加部
43c データ出力部
50 主記憶部
60 主記憶部
100 コンピュータシステム
101 RAM
102 HDD
102a データ記憶テーブル
103 ROM
103a 情報付加プログラム
103b データ出力プログラム
104 CPU
104a 情報付加プロセス
104b データ出力プロセス
105 主記憶
110 CPU
111 CPU
120 制御装置
120a MIQ
120b MSQ
120c MOQ
120d MBQ
120e セレクタ
121 制御装置
121a MIQ
121b MSQ
121c MOQ
121d MBQ
121e セレクタ
130 主記憶部
131 主記憶部

Claims (3)

  1. データを処理する中央処理部および前記データを記憶する主記憶部にそれぞれ接続され、前記データの出力を制御するデータ制御装置であって、
    前記中央処理部から前記主記憶部へ出力されるデータおよび前記中央処理部から他の中央処理部へ出力されるデータをともに記憶するデータ記憶手段と、
    前記データ記憶手段に記憶された前記データが出力可能状態になった場合に、出力可能状態になった旨を示す情報を前記データに付加する情報付加手段と、
    前記情報付加手段により前記情報が付加されたデータを、前記データ記憶手段に最も古く記憶された順に出力するデータ出力手段と、
    を備えたことを特徴とするデータ制御装置。
  2. データを処理する中央処理部から前記データを記憶する主記憶部へ出力されるデータおよび前記中央処理部から他の中央処理部へ出力されるデータをともにデータ記憶手段に記憶するデータ記憶工程と、
    前記データ記憶手段に記憶された前記データが出力可能状態になった場合に、出力可能状態になった旨を示す情報を前記データに付加する情報付加工程と、
    前記情報付加工程により前記情報が付加されたデータを、前記データ記憶手段に最も古く記憶された順に出力するデータ出力工程と、
    を含んだことを特徴とするデータ制御方法。
  3. データを処理する中央処理部から前記データを記憶する主記憶部へ出力されるデータおよび前記中央処理部から他の中央処理部へ出力されるデータをともにデータ記憶手段に記憶するデータ記憶手順と、
    前記データ記憶手段に記憶された前記データが出力可能状態になった場合に、出力可能状態になった旨を示す情報を前記データに付加する情報付加手順と、
    前記情報付加手順により前記情報が付加されたデータを、前記データ記憶手段に最も古く記憶された順に出力するデータ出力手順と、
    をコンピュータに実行させるためのデータ制御プログラム。
JP2008501570A 2006-02-27 2006-02-27 データ制御装置、データ制御方法およびデータ制御プログラム Expired - Fee Related JP4351292B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2006/303588 WO2007097018A1 (ja) 2006-02-27 2006-02-27 データ制御装置、データ制御方法およびデータ制御プログラム

Publications (2)

Publication Number Publication Date
JPWO2007097018A1 JPWO2007097018A1 (ja) 2009-07-09
JP4351292B2 true JP4351292B2 (ja) 2009-10-28

Family

ID=38437078

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008501570A Expired - Fee Related JP4351292B2 (ja) 2006-02-27 2006-02-27 データ制御装置、データ制御方法およびデータ制御プログラム

Country Status (4)

Country Link
US (1) US8171243B2 (ja)
EP (1) EP1990726B1 (ja)
JP (1) JP4351292B2 (ja)
WO (1) WO2007097018A1 (ja)

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6336180B1 (en) * 1997-04-30 2002-01-01 Canon Kabushiki Kaisha Method, apparatus and system for managing virtual memory with virtual-physical mapping
JPH02140860A (ja) * 1988-11-22 1990-05-30 Fujitsu Ltd 中央処理装置間通信命令制御方式
JP3016788B2 (ja) * 1989-03-02 2000-03-06 日本電気株式会社 装置間通信・キャッシュ一致処理方式
JPH0438543A (ja) 1990-06-04 1992-02-07 Nec Corp 装置間通信方式
JP3162459B2 (ja) 1992-02-18 2001-04-25 富士通株式会社 データ処理装置
JPH06187302A (ja) 1992-12-18 1994-07-08 Fujitsu Ltd 転送要求キュー制御方式
CA2150151A1 (en) 1994-08-05 1996-02-06 John H. Baldwin First-in first-out memory
US6134630A (en) * 1997-11-14 2000-10-17 3Ware High-performance bus architecture for disk array system
JP3698987B2 (ja) * 2000-12-18 2005-09-21 エヌイーシーコンピュータテクノ株式会社 バッファ制御装置、汎用ポート制御装置、入出力システム、情報処理装置
US7099983B2 (en) 2002-11-25 2006-08-29 Lsi Logic Corporation Multi-core communications module, data communications system incorporating a multi-core communications module, and data communications process
US7240160B1 (en) * 2004-06-30 2007-07-03 Sun Microsystems, Inc. Multiple-core processor with flexible cache directory scheme

Also Published As

Publication number Publication date
US20080313412A1 (en) 2008-12-18
JPWO2007097018A1 (ja) 2009-07-09
WO2007097018A1 (ja) 2007-08-30
US8171243B2 (en) 2012-05-01
EP1990726A1 (en) 2008-11-12
EP1990726A4 (en) 2009-11-04
EP1990726B1 (en) 2017-05-17

Similar Documents

Publication Publication Date Title
US10203878B2 (en) Near memory accelerator
US10216645B2 (en) Memory data transfer method and system
JP2007034392A (ja) 情報処理装置及びデータ処理方法
JP2004508634A (ja) 分割トランザクション相互接続のスループットを改善するための中間バッファ制御
US20050066135A1 (en) Memory control apparatus and memory control method
JP2010244580A (ja) 外部デバイスアクセス装置
US20090235026A1 (en) Data transfer control device and data transfer control method
JP4855864B2 (ja) ダイレクトメモリアクセスコントローラ
JP4860891B2 (ja) ビット順次手法により大容量並列プロセッサアレイをメモリアレイに接続する方法及び装置
JP2007501473A (ja) メインメモリとストレージ装置との間のデータ転送を行うための方法及び装置
KR102507275B1 (ko) Simd 게더 및 카피 동작들을 수행하기 위한 방법 및 장치
JP4351292B2 (ja) データ制御装置、データ制御方法およびデータ制御プログラム
JP5630281B2 (ja) ベクトル命令制御回路及びリストベクトルの追い越し制御方法
JP2005258509A (ja) ストレージ装置
JP2008129904A (ja) バス中継装置及びバス制御システム
JP2010079536A (ja) メモリアクセス制御回路、メモリアクセス制御方法
JP4229242B2 (ja) ダイレクトメモリアクセスコントローラ
JP2009199384A (ja) データ処理装置
JP4900381B2 (ja) メモリ制御装置およびメモリ制御装置の制御方法
JP4726187B2 (ja) 半導体集積回路
US20050060475A1 (en) Data transfer apparatus and data transfer method
JP2022169331A (ja) メモリ制御回路
WO2007097003A1 (ja) データ制御装置、データ制御方法およびデータ制御プログラム
JP2004234461A (ja) 情報処理装置および方法、並びにプログラム
JP2023104402A (ja) 情報処理装置、情報処理方法、情報処理プログラム、及び車両

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090407

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090519

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090721

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090723

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

Free format text: PAYMENT UNTIL: 20120731

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4351292

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120731

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130731

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees