(57)【特許請求の範囲】
【請求項１】
それぞれの演算に必要なデータ数が演算単位データ数として定められており、各々に設けられている生成タイミングごとに演算を実行し、生成タイミングごとにデータを生成する複数の演算部と、
前記複数の演算部の中から、いずれかの演算部を、先行して演算を実行する先行演算部として選択し、他のいずれかの演算部を、前記先行演算部により生成されるデータを用いて演算を実行する後続演算部として選択する選択部と、
前記選択部により選択された先行演算部により生成されたデータのうち、前記選択部により選択された後続演算部の演算に必要なデータが生成される生成タイミングで生成されたデータを抽出するデータ抽出部と、
前記データ抽出部により抽出されたデータを蓄積するデータ蓄積部と、
前記データ蓄積部に蓄積されるデータのデータ数を監視し、前記データ蓄積部のデータ数が前記後続演算部の演算単位データ数に達した際に、前記データ蓄積部に蓄積されているデータを前記データ蓄積部から前記後続演算部に出力させるデータ監視部と
を備えることを特徴とするデータ処理装置。
【請求項２】
前記データ処理装置は、
前記複数の演算部として、Ｎ（Ｎ≧３）個の演算部を備え、
前記データ蓄積部として、（Ｎ−１）個のデータ蓄積部を備え、
前記データ処理装置は、更に、
前記Ｎ個の演算部で演算が実行される順序が実行順序として示される設定情報を記憶する設定情報記憶部を備え、
前記選択部は、
前記設定情報に示される実行順序に従って、前記Ｎ個の演算部から順次、前記先行演算部と前記後続演算部とを選択して、前記Ｎ個の演算部において前記先行演算部と前記後続演算部とのペアを（Ｎ−１）個生成し、
各データ蓄積部は、
いずれかのペアの先行演算部と後続演算部とに対応付けられ、対応付けられた先行演算部が生成したデータのうち、前記データ抽出部により抽出されたデータを蓄積し、
前記データ監視部は、
各データ蓄積部に蓄積されるデータのデータ数を監視し、いずれかのデータ蓄積部のデータ数が、当該データ蓄積部に対応付けられている後続演算部の演算単位データ数に達した際に、当該データ蓄積部に蓄積されているデータを当該データ蓄積部から、当該データ蓄積部に対応付けられている後続演算部に出力させることを特徴とする請求項１記載のデータ処理装置。
【請求項３】
前記設定情報記憶部は、
前記Ｎ個の演算部の実行順序が相互に異なる複数種の設定情報を記憶し、
前記選択部は、
前記複数種の設定情報の中から選択された設定情報に示される実行順序に従って、前記Ｎ個の演算部から順次、前記先行演算部と前記後続演算部とを選択して、前記Ｎ個の演算部において前記先行演算部と前記後続演算部とのペアを（Ｎ−１）個生成することを特徴とする請求項２記載のデータ処理装置。
【請求項４】
前記データ処理装置は、
Ｍ（Ｍ≧Ｎ）個の演算部を備え、
前記設定情報記憶部は、
前記Ｍ個の演算部のうちのいずれかＮ個の演算部が指定され、指定されているＮ個の演算部での実行順序が示され、各々において指定されているＮ個の演算部の組合せが一様でない複数種の設定情報を記憶し、
前記選択部は、
前記複数種の設定情報の中から選択された設定情報で指定されているＮ個の演算部を前記Ｍ個の演算部から選択し、選択された設定情報に示される実行順序に従って、当該Ｎ個の演算部から順次、前記先行演算部と前記後続演算部とを選択することを特徴とする請求項３記載のデータ処理装置。
【請求項５】
前記Ｎ個の演算部のうち前記実行順序において先頭に位置する演算部は、
演算実行時に、先頭演算部として外部からデータを入力し、
前記データ処理装置は、更に、
前記先頭演算部により入力されたデータのデータ数が前記先頭演算部の演算単位データ数に達した際に、前記先頭演算部に演算を実行させる実行制御部と
を備えることを特徴とする請求項２記載のデータ処理装置。
【請求項６】
前記データ処理装置は、更に、
外部からデータを入力し、入力したデータを蓄積する入力蓄積部と、
前記入力蓄積部に蓄積されるデータのデータ数を監視し、前記入力蓄積部のデータ数が前記Ｎ個の演算部のうち前記実行順序において先頭に位置する演算部の演算単位データ数に達した際に、前記入力蓄積部に蓄積されているデータを前記入力蓄積部から前記実行順序において先頭に位置する演算部に出力させる入力監視部と
を備えることを特徴とする請求項２記載のデータ処理装置。
【請求項７】
前記選択部は、
いずれかのペアの後続演算部として選択した演算部を、他のいずれかのペアの先行演算部として選択することを特徴とする請求項２記載のデータ処理装置。
【請求項８】
前記データ処理装置は、更に、
前記データ抽出部により抽出されるデータのデータ数と抽出される順番とを監視し、
前記データ抽出部により抽出されるデータを、前記選択部により後続演算部として選択された演算部の演算単位データ数毎に、最初に抽出されるデータから順次グルーピングするグルーピング部を備え、
前記データ蓄積部は、
前記グルーピング部によりグルーピングされたグループ毎に区別してデータを蓄積することを特徴とする請求項１記載のデータ処理装置。
【請求項９】
それぞれの演算に必要なデータ数が演算単位データ数として定められており、各々に設けられている生成タイミングごとに演算を実行し、生成タイミングごとにデータを生成する複数の演算部を有するコンピュータが、前記複数の演算部の中から、いずれかの演算部を、先行して演算を実行する先行演算部として選択し、他のいずれかの演算部を、前記先行演算部により生成されるデータを用いて演算を実行する後続演算部として選択する選択ステップと、
前記コンピュータが、前記選択ステップにより選択された先行演算部により生成されたデータのうち、前記選択ステップにより選択された後続演算部の演算に必要なデータが生成される生成タイミングで生成されたデータを抽出するデータ抽出ステップと、
前記コンピュータが、前記データ抽出ステップにより抽出されたデータを所定の蓄積データ記憶領域に蓄積するデータ蓄積ステップと、
前記コンピュータが、前記蓄積データ記憶領域に蓄積されるデータのデータ数を監視し、前記蓄積データ記憶領域のデータ数が前記後続演算部の演算単位データ数に達した際に、前記蓄積データ記憶領域に蓄積されているデータを前記蓄積データ記憶領域から前記後続演算部に出力させるデータ監視ステップと
を備えることを特徴とするデータ処理方法。
【請求項１０】
それぞれの演算に必要なデータ数が演算単位データ数として定められており、各々に設けられている生成タイミングごとに演算を実行し、生成タイミングごとにデータを生成する複数の演算部を有するコンピュータに、
前記複数の演算部の中から、いずれかの演算部を、先行して演算を実行する先行演算部として選択し、他のいずれかの演算部を、前記先行演算部により生成されるデータを用いて演算を実行する後続演算部として選択する選択ステップと、
前記選択ステップにより選択された先行演算部により生成されたデータのうち、前記選択ステップにより選択された後続演算部の演算に必要なデータが生成される生成タイミングで生成されたデータを抽出するデータ抽出ステップと、
前記選択ステップにより選択された先行演算部が生成したデータを所定の蓄積データ記憶領域に蓄積するデータ蓄積ステップと、
前記蓄積データ記憶領域に蓄積されるデータのデータ数を監視し、前記蓄積データ記憶領域のデータ数が前記後続演算部の演算単位データ数に達した際に、前記蓄積データ記憶領域に蓄積されているデータを前記蓄積データ記憶領域から前記後続演算部に出力させるデータ監視ステップと
を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、複数の異なる処理を行うデータ処理装置およびデータ処理方法およびプログラムに関する。
【背景技術】
【０００２】
従来、複数の異なる演算を行う複数の演算部（演算ブロック）を備え、演算部の実行順序を入れ替えることで複数の異なるシステムに対応した複数の異なる処理を行うデータ処理装置が知られている（例えば、特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−１１０５２８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従来のデータ処理装置は、先行して演算が行われる演算部の演算終了後に、後続して演算が行われる演算部の演算が開始される為、各演算部の演算時間が考慮された各演算部の制御情報を予め記憶しておく必要があるという課題があった。
また、先行して演算が行われる演算部から入力される演算結果に応じて、演算内容が変化する演算部がある。そして、この演算内容が変化する演算部は、演算時間が変化するため、演算内容が変化する演算部に後続して演算が行われる演算部の演算の開始タイミングが変化することとなる。しかし、従来のデータ処理装置は、演算部の演算開始タイミングを変化させて処理を行うことが出来ないという課題があった。
【０００５】
この発明は前記のような課題を解決することを主な目的とするもので、例えば、演算部の演算開始タイミングを変化させて処理を行うデータ処理装置を実現することを主な目的とする。
【課題を解決するための手段】
【０００６】
この発明に係るデータ処理装置は、
それぞれの演算に必要なデータ数が演算単位データ数として定められており、それぞれが異なる演算を実行してデータを生成する複数の演算部と、
演算部毎に、演算単位データ数を記憶するデータ数記憶部と、
前記複数の演算部の中から、いずれかの演算部を、先行して演算を実行する先行演算部として選択し、他のいずれかの演算部を、前記先行演算部により生成されるデータを用いて演算を実行する後続演算部として選択する選択部と、
前記選択部により選択された先行演算部が生成したデータを蓄積するデータ蓄積部と、
前記データ蓄積部に蓄積されるデータのデータ数を監視し、前記データ蓄積部のデータ数が前記後続演算部の演算単位データ数に達した際に、前記データ蓄積部に蓄積されているデータを前記データ蓄積部から前記後続演算部に出力させるデータ監視部と
を備えることを特徴とする。
【発明の効果】
【０００７】
この発明に係るデータ処理装置は、先行演算部のデータをデータ蓄積部が蓄積する。そして、データ蓄積部に蓄積されたデータのデータ数が後続演算部の必要データ数になった場合に、データ蓄積部からデータが出力される。そして、後続演算部は、データが出力されたタイミングで、演算を開始し、データが出力されるタイミングの変化に対応して、後続演算部の演算開始タイミングが変化する。
したがって、演算部の演算開始タイミングを変化させて処理を行うデータ処理装置を実現する。
【図面の簡単な説明】
【０００８】
【図１】実施の形態１を示す図で、データ処理装置の構成の例を示す図。
【図２】実施の形態１を示す図で、データ処理の具体例を示す図。
【図３】実施の形態１を示す図で、データ処理の例を示すフローチャート。
【図４】実施の形態１を示す図で、イネーブル信号の例を示す図。
【図５】実施の形態１を示す図で、メモリアドレスの例を示す図。
【図６】実施の形態１を示す図で、データ蓄積処理の例を示すフローチャート。
【図７】実施の形態２を示す図で、データ処理装置の構成の例を示す図。
【図８】実施の形態２を示す図で、データ処理の例を示すフローチャート。
【図９】実施の形態１〜２を示す図で、本実施の形態に示したデータ処理装置のハードウェア資源の例を示す図。
【発明を実施するための形態】
【０００９】
実施の形態１．
まず、図１と図２とを用いてデータ処理装置の概要と構成とについて説明する。
図１は、データ処理装置の構成の例を示す図である。
図２は、データ処理の具体例を示す図である。
【００１０】
（データ処理装置の概要）
データ処理装置１００は、複数の処理部２００と複数のメモリ４００とを備える。
複数の処理部２００は、それぞれの演算に必要なデータ数が演算単位データ数として定められており、それぞれが異なる演算を実行してデータを生成する。
また、メモリ４００は、処理部２００が生成したデータを蓄積する。
ここで、処理部２００は、演算部に対応する。また、処理部２００は信号処理ブロックや前述の演算ブロックにも対応する。
また、メモリ４００は、データ蓄積部に対応する。
なお、図１には、６個の処理部２００と５個のメモリ４００との例を示したが、処理部２００は３個以上であり、メモリ４００は２個以上であればよい。
ここで、特に具体例を用いず、データ処理装置１００に備えられる複数の処理部２００の数を示す場合は、Ｍ個の処理部２００と以降称する。
【００１１】
データ処理装置１００は、外部のシステムから入力信号Ｓ１（図１）を入力し、データ処理を行った後、出力信号Ｓ４（図１）を外部のシステムに出力する。データ処理装置１００は、外部のシステムからの信号にデータ処理を行い、外部のシステムに転送するデータ転送装置である。
【００１２】
データ処理装置１００は、例えばシステムＸ用のデータ処理においては、図２に示すように、「処理部２００ａ→メモリ４００ａ→処理部２００ｂ→メモリ４００ｂ→処理部２００ｆ」と接続されることにより、システムＸ用のデータ処理を行う。
また、図示は省略するが、例えばシステムＹ用のデータ処理においては、「処理部２００ａ→メモリ４００ｂ→処理部２００ｃ→メモリ４００ｃ→処理部２００ｅ」と接続されることにより、システムＹ用のデータ処理を行う。
このように、データ処理装置１００は、使用する処理部２００とその実行順序を入れ替えることで複数の異なるシステムに対応した複数の異なるデータ処理を行う。
【００１３】
（データ処理装置の構成）
データ処理装置１００は、前述で説明の処理部２００とメモリ４００との他に、クロスバースイッチ３００、メモリ監視部４５０、パラメータ設定部５００、カウンタ部６００、開始制御部７００、メモリアクセス制御部８００、接続制御部８５０を備える。
【００１４】
クロスバースイッチ３００は、処理部２００とメモリ４００とを接続する接続部である。なお、処理部２００とメモリ４００とのデータ通信が可能であれば、接続部はクロスバースイッチ３００に限定するものではない。
【００１５】
メモリ監視部４５０は、メモリ４００に蓄積されるデータのデータ数を監視する。ここで、メモリ監視部４５０は、データ監視部と入力監視部とに対応する。
パラメータ設定部５００は、外部からパラメータ信号Ｓ５（図１）を入力する。このパラメータ信号Ｓ５には、各種のパラメータ（後述）が含まれる。データ処理装置１００は、この各種のパラメータが示す情報を用いることにより各種の制御を行う。そして、パラメータ設定部５００は、パラメータ信号Ｓ５に含まれる各種のパラメータを記憶する。なお、パラメータの種類によっては、パラメータがパラメータ信号Ｓ５の入力以前に、予めパラメータ設定部５００に記憶されていてもよい。ここで、パラメータ設定部５００は、データ数記憶部、設定情報記憶部、タイミング記憶部に対応する。
カウンタ部６００は、所定のカウント（後述）を行う。
開始制御部７００は、特定の処理部２００に演算処理を開始させる。開始制御部７００は、実行制御部に対応する。
接続制御部８５０は、クロスバースイッチ３００（接続部）による処理部２００とメモリ４００との接続を制御する。接続制御部８５０は、選択部に対応する。
メモリアクセス制御部８００は、データが蓄積されるメモリ４００内のメモリアドレスや、イネーブル信号（後述）を生成する。メモリアクセス制御部８００は、データ抽出部、グルーピング部に対応する。
【００１６】
（設定情報の説明）
次に設定情報の説明を行う。
データ処理装置１００は、前述の通り複数の処理部２００（Ｍ個の処理部２００）を備える。
パラメータ設定部５００は、システム毎（システムＸ、システムＹ等）にＭ個の処理部２００のうちのいずれかＮ個（Ｎ≧３）の処理部２００が指定される設定情報を記憶する。ここでＭ≧Ｎである。パラメータ設定部５００は、設定情報記憶部に対応する。なお、設定情報は前述のパラメータの一種である。
【００１７】
そして、図１と図２との例の設定情報は、Ｍ個の処理部２００である処理部２００ａ〜２００ｆの６個のうち、Ｎ個の処理部２００として、処理部２００ａ、処理部２００ｂ、処理部２００ｆの３個が指定される。そして、図２の例の設定情報は、処理部２００ａ→処理部２００ｂ→処理部２００ｆの実行順序が示される。
更に、パラメータ設定部５００は、例えば、前例のシステムＸ用とシステムＹ用との複数種の設定情報を記憶し、それぞれの設定情報に指定される処理部２００の組合せは異なる。
【００１８】
パラメータ設定部５００が記憶する複数種の設定情報は、前述のようにそれぞれ複数種の異なるシステム（例えば前述のシステムＸやシステムＹ）に対応付けられている。
そして、データ処理装置１００がデータ処理を行う対象のシステム（例えばシステムＸ）が例えばデータ処理装置１００のユーザに選択されることにより、設定情報が選択されることとなる。
【００１９】
また、図示は省略するが、設定情報に指定されるＮ個の処理部２００が同じであったとしても、その実行順序が異なれば、データ処理装置１００は、異なるデータ処理を行う。
すなわち、この場合、パラメータ設定部５００は、Ｎ個の処理部２００の実行順序が相互に異なる複数種の設定情報を記憶する。
【００２０】
データ処理装置１００は、データ処理を開始する前に、外部からパラメータ信号Ｓ５を入力する。このパラメータ信号Ｓ５には、データ処理装置１００がデータ処理を行う対象のシステム（例えばシステムＸ）が示されている。
そして、パラメータ設定部５００は、設定情報を予め複数種の異なるシステムに対応付けて記憶していてもよい。また、パラメータ設定部５００は、パラメータ信号Ｓ５として入力された設定情報を複数種の異なるシステムに対応付けて、パラメータ信号Ｓ５が入力される度に蓄積して記憶してもよい。また、パラメータ設定部５００は、特定のシステムに対応するパラメータ信号Ｓ５として入力された設定情報のみを記憶してもよい。
【００２１】
（接続制御部の動作説明）
次に、接続制御部８５０の動作説明を行う。
接続制御部８５０は、複数種の設定情報の中から、パラメータ設定部５００に記憶されている設定情報を選択する。ここで、パラメータ設定部５００が予め複数種の異なるシステムに対応付けて複数種の設定情報を記憶している場合、接続制御部８５０はパラメータ信号Ｓ５に示されるデータ処理装置１００がデータ処理を行う対象のシステムに対応付けられた設定情報を選択する。また、接続制御部８５０がパラメータ信号Ｓ５として入力された設定情報のみを記憶している場合は、接続制御部８５０は、その入力された設定情報を選択する。
【００２２】
そして、接続制御部８５０は、例えば、図２の例の設定情報に従って、先行演算部と後続演算部とを選択する。
ここで、例えば、処理部２００ａは処理部２００ｂに対して、先行して演算を実行する処理部２００であり、この先行して演算を実行する処理部２００を「先行演算部」と称する。また、処理部２００ｂは、処理部２００ａ（先行演算部）により生成されるデータを用いて演算を実行する処理部２００であり、この先行演算部により生成されるデータを用いて演算を実行する処理部２００を「後続演算部」と称する。
【００２３】
例えば、図２の例の設定情報において、前述のように実行順序が「処理部２００ａ→処理部２００ｂ→処理部２００ｆ」と示される。接続制御部８５０は、設定情報に示される実行順序に従って最初に処理部２００ａを先行演算部として選択する。そして、接続制御部８５０は、処理部２００ｂを後続演算部として選択する。引き続き、接続制御部８５０は、処理部２００ｂを先行演算部として選択し、処理部２００ｆを後続演算部として選択する。
ここで、メモリ４００ａは、接続制御部８５０により先行演算部として選択された処理部２００ａが生成したデータを蓄積する。同様にメモリ４００ｂは、接続制御部８５０により先行演算部として選択された処理部２００ｂが生成したデータを蓄積する。
【００２４】
ここで、図２の例において、接続制御部８５０は、６個（Ｍ個）の演算部から設定情報で指定されているＮ個の処理部２００として、３個の演算部を選択している。
また、接続制御部８５０は、３個（Ｎ個）の処理部２００に対して、２個（Ｎ−１）個のメモリ４００を選択している。
ここで、接続制御部８５０により選択されるメモリ４００の情報が設定情報に含まれている場合は、接続制御部８５０は設定情報に従ってメモリ４００を選択してもよい。また、データ処理装置１００は任意のメモリ４００を選択してもよい（特に、メモリ４００が全て同性能（データ蓄積に要する時間や、蓄積可能な容量などが同じ）である場合など）。
【００２５】
そして、接続制御部８５０は、３個（Ｎ個）の処理部２００において先行演算部と後続演算部とのペアを２個（Ｎ−１）個生成している。
各メモリ４００は、いずれかのペアの先行演算部と後続演算部とに対応付けられ、対応付けられた先行演算部が生成したデータを蓄積する。
【００２６】
なお、接続制御部８５０は、前述のように、いずれかのペアの後続演算部として選択した演算部を、他のいずれかのペアの先行演算部として選択する。
【００２７】
そして、接続制御部８５０は、選択した処理部２００とメモリ４００とで設定情報に示された実行順序に沿ってデータ通信が行われるように、クロスバースイッチ３００（接続部）の接続を制御する。
【００２８】
（データ処理の動作説明）
次に、図３を用いて、データ処理の動作について説明する。
図３は、データ処理の例を示すフローチャートである。
なお、ここでは、図２に示すデータ処理の具体例を想定して説明を進める。
【００２９】
まず、パラメータ設定部５００は、外部のシステムからパラメータ信号Ｓ５（図１）を入力する（図３のＳＴ３０１）。このパラメータ信号Ｓ５には、演算単位データ数（各処理部２００が演算に必要なデータのデータ数）の情報が含まれている。そして、パラメータ設定部５００は、パラメータ信号Ｓ５に示される演算単位データ数を処理部２００毎に記憶する。
開始制御部７００は、パラメータ設定部５００から先頭演算部（処理部２００ａ）の演算単位データ数を読み出す（図１のＳ７）。
また、同様に、メモリ監視部４５０は、各処理部２００の演算単位データ数を読み出す（図１のＳ１０）。
【００３０】
そして、接続制御部８５０は、前述で説明の通り、設定情報を読み出し（図１のＳ８）、図２に示すデータ処理が行われるようにクロスバースイッチ３００を制御する（図１のＳ１６、図３のＳＴ３０２）。つまり、クロスバースイッチ３００は、「処理部２００ａ→メモリ４００ａ→処理部２００ｂ→メモリ４００ｂ→処理部２００ｆ」とデータ通信が行われるように接続を行う。
【００３１】
次に、処理部２００のうち実行順序において先頭に位置する演算部（先頭に位置する演算部を先頭演算部と称する）は、演算実行時に外部から入力信号Ｓ１（図１）を入力する（図３のＳＴ３０３）。
図２の例においては、先頭演算部は処理部２００ａとなっているが、データ処理装置１００が行うデータ処理の内容によっては、先頭演算部は処理部２００ａ以外（例えば処理部２００ｂ）であってもよい。
ここで、入力信号Ｓ１は、クロック信号に同期している。そして、このクロック信号は、データ処理装置１００と外部のシステムとの間でも同期されている。
そして、入力信号Ｓ１は、例えば、１６ビットのデータがクロック信号毎に対応付けられている。
【００３２】
カウンタ部６００は、入力信号Ｓ１が入力されるとカウントアップを開始する（図３のＳＴ３０４）。具体的には、カウンタ部６００は、クロック信号をカウントする。すなわち、カウンタ部６００は、入力信号Ｓ１が入力されてからのクロック信号をカウントすることで、先頭演算部（処理部２００ａ）に入力されるデータのデータ数をカウントする。
なお、入力信号Ｓ１が入力されるタイミングのクロック信号は予め特定されており、その特定されているクロック信号の情報がパラメータ信号Ｓ５に含まれていてもよい。そして、パラメータ設定部５００は、カウントアップ開始信号Ｓ６（図１）を生成し、カウントアップの開始をカウンタ部６００に通知することができる。
【００３３】
そして、開始制御部７００は、カウンタ部６００のカウント値を入力し（図１のＳ１１）、カウンタ部６００のカウント値が演算単位データ数と等しくなるまで待機する（図３のＳＴ３０５の「ＮＯ」）。そして、開始制御部７００は、カウンタ部６００のカウント値が演算単位データ数と等しくなったら、演算を実行させるコマンドを先頭演算部に出力する（図１のＳ１５、図３のＳＴ３０５の「ＹＥＳ」）。すなわち、開始制御部７００は、先頭演算部（処理部２００ａ）により入力されたデータのデータ数が先頭演算部（処理部２００ａ）の演算単位データ数に達したら、演算を実行させるコマンドを先頭演算部に出力する。
【００３４】
なお、先頭演算部（処理部２００ａ）の演算が実行された後も、先頭演算部（処理部２００ａ）に継続して入力信号Ｓ１が入力される場合、カウンタ部６００は、カウンタ値をリセットして再度カウントアップを開始し、開始制御部７００は前述と同様の処理を行う。
【００３５】
先頭演算部（処理部２００ａ）は、演算を実行すると、順次演算結果を例えば１６ビット毎にクロック信号と同期させて出力する（図１のＳ２、図３のＳＴ３０６）。
ここで、処理部２００ａは、先頭演算部でもあり、処理部２００ｂを後続演算部とした場合の先行演算部でもある。以降、処理部２００ａを先行演算部として説明を進める。
【００３６】
メモリ４００ａは、データを蓄積する（図１のＳ３、図３のＳＴ３０８）。
ここでは、メモリ４００は、先頭演算部が出力したデータを全て蓄積し、後続演算部は先頭演算部が出力したデータを全て用いて演算するものとする。
そして、例えば、メモリ４００は、データがクロック信号毎に同期されて入力される度に、メモリアドレスを１つずつインクリメントし、各メモリアドレスに順次データを蓄積するものとする。
この場合は、図３のＳＴ３０７の処理は省略可能である。
【００３７】
一方、メモリ４００は、先頭演算部が出力したデータのうち、後続演算部が演算に必要なデータのみを蓄積することも可能である。また、メモリ４００は、生成されたメモリアドレスの情報に基づき、データを蓄積することも可能である。この場合、図３のＳＴ３０７の処理において、メモリアクセス制御部８００は、イネーブル信号や、メモリアドレスを生成し（図１のＳ１７）、メモリ４００に蓄積されるデータとメモリアドレスの制御をすることが出来る（図３のＳＴ３０７）。この処理については後述で説明する。
【００３８】
メモリ監視部４５０は、メモリ４００ｂに蓄積されるデータのデータ数を監視する（図１のＳ１２）。そして、メモリ監視部４５０は、メモリ４００ｂのデータ数が後続演算部（処理部２００ｂ）の演算単位データ数に達した際に（図３のＳＴ３０９の「ＹＥＳ」）、メモリ４００ｂに蓄積されているデータをメモリ４００ｂから後続演算部（処理部２００ｂ）に出力させる（図１のＳ３、図３のＳＴ３１０）。
【００３９】
ここで、メモリ監視部４５０がメモリ４００に蓄積されているデータをメモリ４００から処理部２００に出力させる処理について説明する。
前述の例の場合、メモリ監視部４５０は、メモリ４００ｂのデータ数が後続演算部（処理部２００ｂ）の演算単位データ数に達した際に、メモリ４００ｂからデータを出力させるコマンドを開始制御部７００に出力する（図１のＳ１３）。
そして、開始制御部７００は、メモリアクセス制御部８００にデータ出力のコマンドを転送し（図１のＳ１４）、メモリアクセス制御部８００はメモリ４００ｂに蓄積されているデータを出力させる。あるいは、開始制御部７００は、データ出力のコマンドを後続演算部（処理部２００ｂ）に転送し、後続演算部（処理部２００ｂ）がメモリ４００ｂからデータを入力してもよい。
以降、メモリ監視部４５０がメモリ４００に蓄積されているデータをメモリ４００から処理部２００に出力させる処理は同様であり、説明を省略する。
【００４０】
ここで、メモリ監視部４５０はメモリ４００ｂのデータ数が後続演算部（処理部２００ｂ）の演算単位データ数に達しない場合は、待機する（図３のＳＴ３０９の「ＮＯ」）。
【００４１】
処理部２００ｂは、クロスバースイッチ３００経由でメモリ４００ｂからデータを入力し（図１のＳ２）、演算を開始する。すなわち、処理部２００ｂは、処理部２００ｂの演算に必要なデータ数のデータが揃った時点で演算を開始する。
【００４２】
ここで、処理部２００ｂは、先行演算部として前述と同様に演算を開始する（図３のＳＴ３０６）。つまり、今度は、処理部２００ｂが先行演算部となり、処理部２００ｆが後続演算部となる。そして、図３のＳＴ３０６〜ＳＴ３１０の処理が同様に行われ、処理部２００ｂは、演算結果をメモリ４００ｂに蓄積し、処理部２００ｆは、メモリ４００ｂに処理部２００ｆの演算に必要なデータ数のデータが揃った時点で演算を開始する。
ここで、処理部２００ｆよりも後続の処理部２００は設定されていないので、処理部２００ｆは、演算結果を出力信号Ｓ４（図１）として外部に出力する。
【００４３】
すなわち、接続制御部８５０により選択された先行演算部と後続演算部とのペア毎に、図３のＳＴ３０６〜ＳＴ３１０の処理が行われる。
【００４４】
なお、例えば、メモリ４００ａに蓄積されたデータが処理部２００ｂに出力された後も継続して、処理部２００ａからデータが生成されメモリ４００ａに蓄積される場合、メモリ監視部４５０は、データ数をリセットして再度監視を開始し、前述で説明と同様な処理を行う。
【００４５】
そして、各処理部２００は並列処理が可能であり、接続制御部８５０により選択された先行演算部と後続演算部とのペアは、継続して先行演算部にデータが入力されれば、図３のＳＴ３０６〜ＳＴ３１０の処理を各ペア間で並列して行う。
【００４６】
つまり、メモリ監視部４５０は、いずれかのメモリ４００のデータ数が、当該メモリ４００に対応付けられている後続演算部の演算単位データ数に達した際に、当該メモリ４００に蓄積されているデータを当該メモリ４００から、当該メモリ４００に対応付けられている後続演算部に出力させる。
【００４７】
そして、最後に処理が行われる処理部２００（図２の例では処理部２００ｆ）にデータが入力されなくなった場合にデータ処理装置１００はデータ処理を終了する。ここで、最後に処理が行われる処理部２００ｆにデータが入力されなくなった場合とは、例えば、入力信号Ｓ１が外部から入力されなくなり、メモリ４００ｂに蓄積されるデータのデータ数が処理部２００ｆのいずれかの処理部２００の演算単位データ数に達しなくなる場合などが想定される。
【００４８】
（イネーブル信号の説明）
ここで、前述では説明を省略したメモリ４００が、先頭演算部が出力したデータのうち、後続演算部が演算に必要なデータのみを蓄積する場合や、メモリ４００が、生成されたメモリアドレスの情報に基づき、データを蓄積する場合について説明する。
まず、メモリ４００が、先頭演算部が出力したデータのうち、後続演算部が演算に必要なデータのみを蓄積する場合について説明する。
図４は、イネーブル信号の例を示す図である。
メモリアクセス制御部８００は、パラメータ設定部５００に記憶されているパラメータを入力し（図１のＳ９）、イネーブル信号を生成する（図３のＳＴ３０７）。
【００４９】
イネーブル信号は、信号レベルが所定の値よりも高い「ハイレベル信号（Ｈ信号と称する）」と信号レベルが所定の値よりも低い「ローレベル信号（Ｌ信号と称する）」とから成る。デジタル信号で表現した場合に、Ｈ信号は「１」の信号で、Ｌ信号は「０」の信号となる。
そして、図４に示すイネーブル信号は、周期性を持った例であり、Ｈ信号である区間（Ｈ区間と称する）とＬ信号である区間（Ｌ区間と称する）とが１セットとなり、この１セットの周期が予めパラメータで設定された回数繰り返される。
そして、Ｈ区間には、予めパラメータで設定されたクロック信号の回数分のＨ信号が含まれ、同様にＬ区間には、予めパラメータで設定されたクロック信号の回数分のＬ信号が含まれる。
【００５０】
前述で説明の通り、各処理部２００は、データをクロック信号と同期させて出力する。すなわち、各処理部２００は、各々に設けられている生成タイミングごとに繰り返しデータを生成する。
そして、イネーブル信号もクロック信号を同期している。
【００５１】
そして、例えば、処理部２００ａがデータを生成する生成タイミングのうち、処理部２００ｂが演算に必要なデータが生成されるタイミングが予めパラメータとして設定されている。そして、そのパラメータをパラメータ設定部５００は外部からパラメータ信号Ｓ５として入力し、記憶している。
同様に、パラメータ設定部５００は例えば、処理部２００ｂがデータを生成する生成タイミングのうち、処理部２００ｆが演算に必要なデータが生成されるタイミングが予めパラメータとして設定されている。
【００５２】
前述の通り、接続制御部８５０は、先行演算部及び後続演算部として２つの処理部２００を選択し、選択される２つの処理部２００の組合せは１つ以上である。そして、パラメータ設定部５００は、その組合せ毎に、先行演算部の生成タイミングのうち、後続演算部の演算に必要なデータが生成される必要データタイミングを記憶している。
【００５３】
そして、メモリアクセス制御部８００は、必要データタイミングにおいてＨ信号となるイネーブル信号を生成する。これによりメモリアクセス制御部８００は、Ｈ区間のイネーブル信号に同期するクロック信号に対応したデータを抽出する。
すなわち、メモリアクセス制御部８００は、接続制御部８５０により選択された先行演算部により生成されるデータのうち、必要データタイミングで生成されるデータを抽出する（図３のＳＴ３０７）。
【００５４】
そして、メモリ４００は、メモリアクセス制御部８００により抽出されるデータを蓄積する（図３のＳＴ３０８）。
よって、後続演算部は、必要なデータのみを入力して処理を行うことができる。
【００５５】
なお、イネーブル信号がＨ信号である状態とは、メモリへのデータ蓄積が有効な状態である。そして、イネーブル信号がＨ信号になることを「イネーブルがアサートされる」と称する。
例えば、Ｈ区間において、Ｈ信号が５０回生成されているとすると、イネーブルが５０回アサートされていることになる。
【００５６】
（メモリアドレスの説明）
次に、メモリ４００が、生成されたメモリアドレスの情報に基づき、データを蓄積する場合について説明する。
図５は、メモリアドレスの例を示す図である。
図６は、データ蓄積処理の例を示すフローチャートである。
前述で説明のように、メモリアドレスを１つずつインクリメントしながらデータを蓄積する場合は、メモリアクセス制御部８００は、イネーブルが１回アサートされる時に、メモリアドレスを１つインクリメントしてメモリ４００にデータを蓄積すればよい。
【００５７】
ここでは、イネーブル信号を使ったデータ蓄積処理の例を説明する。
メモリアクセス制御部８００は、パラメータ設定部５００に記憶されているパラメータを入力する（図１のＳ９）。ここでは、メモリアクセス制御部８００は、パラメータとして、オフセットアドレス、インクリメント値、不連続間隔値、不連続時の加算値が示される。これらのパラメータはパラメータ信号Ｓ５（図１）としてパラメータ設定部５００により入力され、記憶されている。
【００５８】
まず、処理部２００が演算結果の出力を開始すると、メモリアクセス制御部８００は、開始制御部７００から処理の開始指示を入力する（図１のＳ１４、図６のＳＴ１）。
【００５９】
そして、メモリアクセス制御部８００は、メモリアドレスとしてパラメータに示されるオフセットアドレスを設定する（図６のＳＴ２）。ここでオフセットアドレスとは、データの格納を開始するメモリアドレスの値である。図５においてはオフセットアドレスを「Ａ」で示している。
【００６０】
メモリアクセス制御部８００は、イネーブルがアサートされたか否かを判定し、イネーブルがアサートされていない場合は（図６のＳＴ３の「ＮＯ」）、メモリアドレスの更新は行わず保持する（図６のＳＴ５）。
そして、イネーブルがアサートされた場合（図６のＳＴ３の「ＹＥＳ」）、メモリアクセス制御部８００はイネーブル数をカウントする（図６のＳＴ４）。
すなわち、メモリアクセス制御部８００はイネーブル信号に基づき、抽出されるデータのデータ数と抽出される順番とを監視する。
【００６１】
そして、メモリアクセス制御部８００は、イネーブル数がパラメータに示される不連続間隔値を超えるか否かを判定する（図６のＳＴ６）。ここで不連続間隔値は、後続演算部の演算単位データ数と等しく設定される。
すなわち、メモリアクセス制御部８００は、抽出されるデータのデータ数が演算単位データ数を超えるか否かを判定する。
【００６２】
イネーブル数が不連続間隔値を超えない場合（図６のＳＴ６の「ＮＯ」）、メモリアクセス制御部８００は、パラメータに示されるインクリメント値を用いてデータが格納されるメモリアドレスを生成する（図６のＳＴ９）。
図５の例では、インクリメント値が「２」、不連続間隔値が「２８」として設定されており、メモリアクセス制御部８００は、抽出されたデータ数が「２８」以内であれば、「Ａ＋０」、「Ａ＋２」と２つずつインクリメントしたメモリアドレスに各データを格納する。
【００６３】
一方、イネーブル数が不連続間隔値を超える場合（図６のＳＴ６の「ＹＥＳ」）、メモリアクセス制御部８００は、パラメータに示される不連続時の加算値を用いてメモリアドレスを生成する（図６のＳＴ７）。
図５の例では不連続時の加算値は「１７０」として設定されており、メモリアクセス制御部８００は、抽出されたデータ数が「２８」を超えた場合、「２９」個目のデータが蓄積されるメモリアドレスを生成する。ここで、「２８」個目のデータは「Ａ＋５４」のメモリアドレスに蓄積されるので、「２９」個目のデータは不連続時の加算値「１７０」を加えた「Ａ＋２２４」のメモリアドレスに蓄積される。
【００６４】
そして、メモリアクセス制御部８００は、イネーブル数のカウントを初期化（カウント値を「１」に設定）し（図６のＳＴ８）、再度イネーブル数をカウントする（図６のＳＴ３〜ＳＴ４）。
【００６５】
すなわち、メモリアクセス制御部８００は、抽出されるデータを、選択部により後続演算部として選択された演算部の演算単位データ数毎に、最初に抽出されるデータから順次グルーピングしている。そして、メモリ４００は、メモリアクセス制御部８００によりグルーピングされたグループ毎に区別してデータを蓄積する。
【００６６】
（実施の形態１の効果）
以上のように、実施の形態１のデータ処理装置１００は、各処理部２００の動作開始をメモリ４００の蓄積量に基づいて行う。そのため、データ処理装置１００は、各演算部の制御情報を予め記憶しておく必要はなく、実際の信号処理の状態に合わせて各処理部２００の動作タイミングを制御することができる。
【００６７】
また、実施の形態１のデータ処理装置１００は、メモリ４００の蓄積量に基づいて処理部２００の動作開始タイミングが与えられる。したがって、演算結果によって演算時間が変化する処理部２００が有っても、演算時間が変化する処理部２００に後続して演算が行われる処理部２００も正しく動作開始タイミングが与えられる。よって、実施の形態１のデータ処理装置１００は、演算結果によって演算時間が変化する処理部２００が有っても、システム全体が正しく動作するように制御することができる。
【００６８】
以上、実施の形態１においては、以下の特徴を備えたデータ処理装置１００について説明した。
（１）複数のシステムの信号処理を行うことができるデータ処理装置１００は、信号処理を行う複数の処理部２００と、データを格納する複数のメモリ４００と、処理部２００とメモリ４００を接続するクロスバースイッチ３００と、信号処理に必要なパラメータを保持するパラメータ設定部５００と、カウンタを保有するカウンタ部６００と、メモリ４００の蓄積量を監視するメモリ監視部４５０と、パラメータ設定部５００からのパラメータとカウンタ部６００からのカウント値の比較やメモリ監視部４５０からの情報に基づいて動作開始タイミングを指示する開始制御部７００と、メモリ４００のメモリアドレスやイネーブル信号を生成するメモリアクセス制御部８００と、クロスバースイッチ３００の接続先を設定する接続制御部８５０とを備える。
（２）開始制御部７００は、カウンタ部６００からのカウンタ値とパラメータ設定部５００からの動作開始タイミングパラメータを比較し、一致した場合に処理部２００に動作開始指示を与える。
（３）メモリ監視部４５０は、メモリ４００に蓄積されたデータ量を監視し、パラメータ設定部５００から与えられる次にメモリ４００から読み出しを行う処理部２００が必要なデータ量が蓄積された場合に、開始制御部７００に開始指示を通知する。
（４）メモリアクセス制御部８００は、パラメータに基づいてイネーブル信号を生成する。例えば、メモリアクセス制御部８００は、Ｈ区間サイクル数パラメータ、Ｌ区間サイクル数パラメータ、セット回数パラメータを用いてイネーブル信号を生成する。
（５）メモリアクセス制御部８００は、パラメータに基づいてメモリアドレスを生成する。例えば、メモリアクセス制御部８００は、オフセットアドレスパラメータ、インクリメント値パラメータ、不連続間隔パラメータ、不連続時の加算値パラメータを用いてアドレスを生成する。
【００６９】
実施の形態２．
（実施の形態２におけるデータ処理装置の概要）
実施の形態１におけるデータ処理装置１００では、処理部２００が外部からの入力信号Ｓ１を入力したが、実施の形態２におけるデータ処理装置１００では、メモリ４００が外部からの入力信号Ｓ１を入力する実施形態を説明する。
【００７０】
図７は、データ処理装置の構成の例を示す図である。
実施の形態２のデータ処理装置１００は、図１に示す実施の形態１のデータ処理装置１００と比べ、前述の通り、メモリ４００が入力信号Ｓ１を入力する点とカウンタ部６００が無い点とが異なる。
そして、以上の相違点以外、実施の形態２におけるデータ処理装置１００は、実施の形態１におけるデータ処理装置１００と同じ構成である。従って、実施の形態１と同じ構成要素と同じ処理内容とについては説明を省略する。
【００７１】
（データ処理の動作説明）
図８は、データ処理の例を示すフローチャートである。
ここでは、「メモリ４００ａ→処理部２００ｂ→メモリ４００ｂ→処理部２００ｆ」の順番でデータ処理が行われるものとする。この例においては、処理部２００ｂが先頭演算部である。
【００７２】
まず、実行順序において先頭に位置するメモリ４００（メモリ４００ａ）は、外部から入力信号Ｓ１（図７）を入力し、蓄積する（図８のＳＴ８０１）。ここで、外部からデータを入力し、入力したデータを蓄積するメモリ４００を入力蓄積部と称する（図７において「入力蓄積部」の図示は省略する）。
本例においては、入力蓄積部はメモリ４００ａとなっているが、データ処理装置１００が行うデータ処理の内容によっては、入力蓄積部はメモリ４００ａ以外（例えばメモリ４００ｂ）であってもよい。
【００７３】
メモリ監視部４５０は、入力蓄積部（メモリ４００ａ）に蓄積されるデータのデータ数を監視する（図７のＳ１２）。
そして、メモリ監視部４５０は、入力蓄積部（メモリ４００ａ）のデータ数が先頭演算部（処理部２００ｂ）の演算単位データ数に達した際に（図８のＳＴ８０２の「ＹＥＳ」）、入力蓄積部に蓄積されているデータを入力蓄積部から先頭演算部（処理部２００ｂ）に出力させる（図８のＳＴ８０３）。
なお、メモリ監視部４５０は、入力蓄積部のデータ数が先頭演算部の演算単位データ数に達しない場合は、待機する（図８のＳＴ８０２の「ＮＯ」）。
【００７４】
そして、先頭演算部（処理部２００ｂ）は、後続演算部（処理部２００ｆ）に対する先行演算部として図３のＳＴ３０６に示す処理を行う。以降は、実施の形態１と同様である為、説明を省略する。
【００７５】
（実施の形態２の効果）
以上のように、実施の形態２のデータ処理装置１００は、実施の形態１の効果に加えて、外部からのデータをメモリ４００が入力することにより、すべての処理部２００の動作開始タイミングをメモリ蓄積量に基づいて指示することができる。
【００７６】
以上、実施の形態２においては、以下の特徴を備えたデータ処理装置１００について説明した。
（１）複数のシステムの信号処理を行うことができるデータ処理装置１００は、信号処理を行う複数の処理部２００と、データを格納する複数のメモリ４００と、処理部２００とメモリ４００を接続するクロスバースイッチ３００と、信号処理に必要なパラメータを保持するパラメータ設定部５００と、メモリ４００の蓄積量を監視するメモリ監視部４５０と、メモリ監視部４５０からの情報に基づいて動作開始タイミングを指示する開始制御部７００と、メモリ４００のメモリアドレスやイネーブル信号を生成するメモリアクセス制御部８００と、クロスバースイッチ３００の接続先を設定する接続制御部８５０とを備える。
（２）メモリ監視部４５０は、メモリ４００に蓄積されたデータ量を監視し、パラメータ設定部５００から与えられる次にメモリ４００から読み出しを行う処理部２００が必要なデータ量が蓄積された場合に、開始制御部７００に開始指示を通知する。
【００７７】
（実施の形態１〜２のデータ処理装置１００のハードウェア構成）
最後に、実施の形態１〜２に示したデータ処理装置１００のハードウェア構成例について説明する。
図９は、本実施の形態に示したデータ処理装置１００のハードウェア資源の一例を示す図である。
なお、図９の構成は、あくまでもデータ処理装置１００のハードウェア構成の一例を示すものであり、データ処理装置１００のハードウェア構成は図９に記載の構成に限らず、他の構成であってもよい。
【００７８】
図９において、データ処理装置１００は、プログラムを実行するＣＰＵ９１１（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう）を備えている。
ＣＰＵ９１１は、バス９１２を介して、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）９１３、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９１４、通信ボード９１５、表示装置９０１、キーボード９０２、マウス９０３、磁気ディスク装置９２０と接続され、これらのハードウェアデバイスを制御する。
更に、ＣＰＵ９１１は、ＦＤＤ９０４（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ  Ｄｒｉｖｅ）、コンパクトディスク装置９０５（ＣＤＤ）と接続していてもよい。また、磁気ディスク装置９２０の代わりに、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、光ディスク装置、メモリカード（登録商標）読み書き装置などの記憶装置でもよい。
ＲＡＭ９１４は、揮発性メモリの一例である。ＲＯＭ９１３、ＦＤＤ９０４、ＣＤＤ９０５、磁気ディスク装置９２０の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置の一例である。
本実施の形態で説明したパラメータ設定部５００、メモリ４００は、磁気ディスク装置９２０等により実現される。
通信ボード９１５、キーボード９０２、マウス９０３、ＦＤＤ９０４などは、入力装置の一例である。
また、通信ボード９１５、表示装置９０１などは、出力装置の一例である。
【００７９】
磁気ディスク装置９２０には、オペレーティングシステム９２１（ＯＳ）、ウィンドウシステム９２２、プログラム群９２３、ファイル群９２４が記憶されている。
プログラム群９２３のプログラムは、ＣＰＵ９１１がオペレーティングシステム９２１、ウィンドウシステム９２２を利用しながら実行する。
【００８０】
また、ＲＡＭ９１４には、ＣＰＵ９１１に実行させるオペレーティングシステム９２１のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。
また、ＲＡＭ９１４には、ＣＰＵ９１１による処理に必要な各種データが格納される。
【００８１】
また、ＲＯＭ９１３には、ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）プログラムが格納され、磁気ディスク装置９２０にはブートプログラムが格納されている。
データ処理装置１００の起動時には、ＲＯＭ９１３のＢＩＯＳプログラム及び磁気ディスク装置９２０のブートプログラムが実行され、ＢＩＯＳプログラム及びブートプログラムによりオペレーティングシステム９２１が起動される。
【００８２】
上記プログラム群９２３には、本実施の形態の説明において「〜部」（「〜記憶部」以外、以下同様）として説明している機能を実行するプログラムが記憶されている。プログラムは、ＣＰＵ９１１により読み出され実行される。
【００８３】
ファイル群９２４には、本実施の形態の説明において、「〜の判断」、「〜の計算」、「〜の比較」、「〜の照合」、「〜の参照」、「〜の検索」、「〜の抽出」、「〜の検査」、「〜の生成」、「〜の設定」、「〜の登録」、「〜の選択」、「〜の入力」、「〜の受信」、「〜の判定」、「〜の定義」、「〜の算出」、「〜の更新」、「〜の登録」等として説明している処理の結果を示す情報やデータや信号値や変数値やパラメータが、「ファイル」や「データベース」の各項目として記憶されている。
「ファイル」や「データベース」は、ディスクやメモリなどの記録媒体に記憶される。
ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してＣＰＵ９１１によりメインメモリやキャッシュメモリに読み出される。
そして、読み出された情報やデータや信号値や変数値やパラメータは、抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示・制御・判定・識別・検知・判別・選択・算出・導出・更新・生成・取得・通知・指示・判断・区別・削除・登録・付与・監視・待機などのＣＰＵの動作に用いられる。
抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示・制御・判定・識別・検知・判別・選択・算出・導出・更新・生成・取得・通知・指示・判断・区別・削除・登録・付与・監視・待機などのＣＰＵの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリ、レジスタ、キャッシュメモリ、バッファメモリ等に一時的に記憶される。
また、本実施の形態で説明しているフローチャートの矢印の部分は主としてデータや信号の入出力を示す。
データや信号値は、ＲＡＭ９１４のメモリ、ＦＤＤ９０４のフレキシブルディスク、ＣＤＤ９０５のコンパクトディスク、磁気ディスク装置９２０の磁気ディスク、その他光ディスク、ミニディスク、ＤＶＤ等の記録媒体に記録される。
また、データや信号は、バス９１２や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
【００８４】
また、本実施の形態の説明において「〜部」として説明しているものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。
すなわち、本実施の形態で説明したフローチャートに示すステップ、手順、処理により、本発明に係る情報処理方法を実現することができる。
また、「〜部」として説明しているものは、ＲＯＭ９１３に記憶されたファームウェアで実現されていても構わない。
或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。
ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、ＤＶＤ等の記録媒体に記憶される。
プログラムはＣＰＵ９１１により読み出され、ＣＰＵ９１１により実行される。
すなわち、プログラムは、本実施の形態の「〜部」としてコンピュータを機能させるものである。あるいは、本実施の形態の「〜部」の手順や方法をコンピュータに実行させるものである。
【００８５】
このように、本実施の形態に示すデータ処理装置１００は、処理装置たるＣＰＵ、記憶装置たるメモリ、磁気ディスク等、入力装置たるキーボード、マウス、通信ボード等、出力装置たる表示装置、通信ボード等を備えるコンピュータである。
そして、上記したように「〜部」として示された機能をこれら処理装置、記憶装置、入力装置、出力装置を用いて実現するものである。
【符号の説明】
【００８６】
１００  データ処理装置、２００  処理部、３００  クロスバースイッチ、４００  メモリ、４５０  メモリ監視部、５００  パラメータ設定部、６００  カウンタ部、７００  開始制御部、８００  メモリアクセス制御部、８５０  接続制御部、９０１  表示装置、９０２  キーボード、９０３  マウス、９０４  ＦＤＤ、９０５  コンパクトディスク装置、９１１  ＣＰＵ、９１２  バス、９１３  ＲＯＭ、９１４  ＲＡＭ、９１５  通信ボード、９２０  磁気ディスク装置、９２１  オペレーティングシステム、９２２  ウィンドウシステム、９２３  プログラム群、９２４  ファイル群。
【図１】
0005901252.tif 000002
【図２】
0005901252.tif 000003
【図３】
0005901252.tif 000004
【図４】
0005901252.tif 000005
【図５】
0005901252.tif 000006
【図６】
0005901252.tif 000007
【図７】
0005901252.tif 000008
【図８】
0005901252.tif 000009
【図９】
0005901252.tif 000010