(57)【要約】【課題】マスタブロックとブロック識別を持つ、複数のスレーブブロックにおいて、ブロック識別をソフトウェアにより、動的に割り当てることを可能とし、スレーブブロックの数が変更された場合でも、ソフトウェアの変更を最小限に抑えるため。【解決手段】各スレーブブロックにブロック識別を記憶する記憶部と、全スレーブブロックの識別記憶部を同じ値に初期化する手段と、その初期値を用いて、順次スレーブブロックの識別記憶部を設定手段とを有する。【選択図】        図１
2004178348.tif 000002
【特許請求の範囲】
【請求項１】
一つのマスタブロックと複数のスレーブブロックがあり、マスタブロックから第一のスレーブブロックへ、第二のスレーブブロックから第三のスレーブブロックへ、同様に各スレーブブロック間を数珠繋ぎ状に設けられたデータ伝達路と、最後のスレーブブロックからマスタブロックへ設けられたデータ伝達路を含み、それらデータ伝達路をデータとそのデータの属性をあらわすヘッダの組（以下、パケット）が伝達される情報処理装置において、
各ブロックでブロックを識別する情報を記憶部と、
前記ブロックの識別情報の記憶部は同じ値に初期化される手段と、
前記ブロックの識別情報の記憶部を書き換える手段と、
パケットのヘッダにはパケットのデータを処理すべき前記ブロックの識別情報を指定する手段と、
各ブロックで入力データ伝達路からのパケットのヘッダのブロックの識別情報を参照し、前記ブロックの識別情報の記憶部の内容と等しい場合には、そのパケットを処理した結果のパケットを、さもなければ、入力されたパケットを出力データ伝達路に送出する手段と、
を有することを特徴とする情報処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ブロック間を接続するデータ伝達路を含む情報処理装置に関するものである。
【０００２】
【従来の技術】
近年、ＣＰＵ（中央処理装置）の高速化、ＩＣメモリやハードディスクの大容量化が進み、情報処理装置で扱うデータ量は増大している。それに伴い、情報処理装置内部のブロック間を伝達するデータ量も増大している。
【０００３】
大量のデータを処理する代表的な装置として、画像データを扱う情報処理装置を例にとって、従来の技術を説明する。画像処理装置では、一般的に画像データの記憶や処理のためのＣＰＵ、ＩＣメモリやハードディスクの部分と、ＣＰＵでは要求される時間で処理しきれない画像処理を実現するためのハードウェア部分とに分けられる。前者の部分は一般のコンピュータと共通な構成なので、コンピュータと同じアーキテクチャが利用され、それに後者の部分が付加された形をとる。また、画像処理においては、一つの画像データに対して複数の処理が施されるのが一般的である。たとえば、カラーの画像データでは、ＲＧＢ、ＹＵＶ、Ｌａｂ、ＣＭＹＫなどに代表される、いろいろな色空間により表現される。一つの画像処理はある色空間のデータを入力し、処理を施すので、入力されるデータの色空間をその色空間へ変更する必要がある。さらに、処理を施された画像データを希望の色空間へ変更される。したがって、この場合、色空間変換、ある画像処理、色空間変換と３つの処理が連続して一つの画像データに対して、施される。
【０００４】
図４は従来の画像処理装置のブロック図である。マスタブロック１は一般のコンピュータと共通な構成でＣＰＵ１１と記憶部１２がデータ伝達路１３で接続されている。スレーブブロック２はＣＰＵ１１と独立に画像処理を実現する画像処理部２３を含む。これらの二つのブロックはＩＦ部１０とＰａｃｋｅｔ  Ｓｅｌｅｃｔ２１を介してデータ伝達路３で接続される。また、スレーブブロック２とスレーブブロック２′はスレーブブロック２のＰａｃｋｅｔ  Ｄｅｓｅｌｅｃｔｏｒ２４とスレーブブロック２′のＰａｃｋｅｔ  Ｓｅｌｅｃｔｏｒを介してデータ伝達路３′で接続される。さらに、最後のスレーブブロック２″とマスタブロック１はスレーブブロック２″のＰａｃｋｅｔ  ＤｅｓｅｌｅｃｔｏｒとＩＦ部１０を介してデータ伝達路４で接続される。もちろん、この図に示すブロック図は説明のためのものであり、実際の画像処理装置はもっと複雑である。
【０００５】
図５は画像処理装置が扱うデータの処理単位を説明するための図である。１枚の画像データは非常に大きなデータ量となる。そのため、同図に示すように、画像処理部２３が処理しやすいように、それをある大きさのタイルに分割する。記憶部１２の容量を抑え、多くの枚数の画像データを記憶できるようにするため、各タイルのデータは圧縮された形で記憶される。この圧縮されたタイル上の画像データが処理単位となるが、このデータがどの画像のどの部分のタイルであるかなどの情報が必要である。従って、その情報をヘッダ部、圧縮されたデータをデータ部として、これらを合わせたものが実際の処理単位となる。以下、これをパケットと呼ぶ。
【０００６】
パケットのヘッダ部には、そのパケットがどの画像か、どの部分のタイルかの情報の他に、画像データの種類、たとえばカラーか、モノクロか、カラーであれば使用されている色空間の情報なども含まれる。さらに、画像自体の情報のほかに、どのブロックにおいて、どのような画像処理を行うかの指定（以下、ブロック指定、処理指定）も含まれる。
【０００７】
図６と図７はそれぞれ、ＩＦ部１０、Ｐａｃｋｅｔ  Ｓｅｌｅｃｔｏｒ２１の内部を示すブロック図である。
【０００８】
ＩＦ部１０は図６に示すように、ＣＰＵ１１を介在することなく、記憶部１２の指定された領域からパケットを読み出し、データ伝達路３に送り出すＤＭＡＣ（ダイレクトメモリアクセスコントローラ）１０１と、データ伝達路４から送られてくるパケットを、ＣＰＵ１１を介在することなく、記憶部１２の指定された領域に書き込むＤＭＡＣ１０２から構成される。
【０００９】
Ｐａｃｋｅｔ  Ｓｅｌｅｃｔｏｒ２１は図７に示すように、データ伝達路３から送られてくるパケットのヘッダを監視し、ヘッダ部のブロック指定が自身のブロック識別の設定２５の値（ここでは、ｘ）と比較し、等しくなければデータ伝達路２２へ、さもなければ、ヘッダ部の処理指定にしたがって、そのパケットを適切な画像処理部２１に振り分けように、セレクタ２０４を制御する。したがって、送られてきたパケットのヘッダ部のブロック指定が自身のブロック識別設定と異なる時には、そのパケットはデータ伝達路２２を経由して次のブロックへそのまま送られる。
【００１０】
画像処理部２３では、入力されるパケットを処理し、処理を施した結果のパケットを出力するが、その際に出力パケットのヘッダ部の、その画像処理部２３に対応するブロック指定、処理指定を削るか、処理済のフラグを立てる。
【００１１】
このようにすることで、マスタブロック１から送出されたパケットは各スレーブブロック２を経由して、必要な処理を次々に施され、マスタブロック１へ戻ってくる。
【００１２】
【発明が解決しようとする課題】
しかしながら、上記従来例ではスレーブブロックのブロック識別の設定が固定されているために、スレーブブロックの数が違う、類似したシステムにおいても、ブロック識別の再割り当て、ＣＰＵ１１が実行するソフトウェアの変更が必要となる。
【００１３】
本発明は上記従来例の問題点に鑑み、各スレーブブロックにブロック識別を記憶する記憶部を設け、それを書き換える手段を設けることにより、スレーブブロックの数が変更されても、共通のソフトウェアでブロック識別の再割り当てが可能な情報処理装置を提供することを目的とする。
【００１４】
【課題を解決するための手段】
本発明は上記目的を達成するために、一つのマスタブロックと複数のスレーブブロックがあり、マスタブロックから第一のスレーブブロックへ、第二のスレーブブロックから第三のスレーブブロックへ、同様に各スレーブブロック間を数珠繋ぎ状に設けられたデータ伝達路と、最後のスレーブブロックからマスタブロックへ設けられたデータ伝達路を含み、それらデータ伝達路をパケットが伝達される情報処理装置において、各ブロックでブロックを識別する情報を記憶部と、前記ブロックの識別情報の記憶部は同じ値に初期化される手段と、前記ブロックの識別情報の記憶部を書き換える手段と、パケットのヘッダにはパケットのデータを処理すべき前記ブロックの識別情報を指定する手段と、各ブロックで入力データ伝達路からのパケットのヘッダのブロックの識別情報を参照し、前記ブロックの識別情報の記憶部の内容と等しい場合には、そのパケットを処理した結果のパケットを、さもなければ、入力されたパケットを出力データ伝達路に送出する手段とを有することを特徴とする。
【００１５】
（作用）
本発明は上記構成により、スレーブブロックの数が変更されても、共通のソフトウェアでブロック識別の再割り当てが可能となるので、スレーブブロックの数の変更によるソフトウェアの変更が必要なく、短期間で類似のシステムを多機種開発することを可能とする。
【００１６】
【発明の実施の形態】
以下、図面を参照して本発明を説明する。図１は、本発明に係る情報処理装置の一実施例の概略構成を示すブロック図であり、従来例において説明した構成部材と同一のものには同一の参照符号を付す。
【００１７】
図１において、マスタブロック１は一般のコンピュータと共通な構成でＣＰＵ１１と記憶部１２がデータ伝達路１３で接続されている。スレーブブロック２はＣＰＵ１１と独立に画像処理を実現する画像処理部２３、ブロック識別情報を記憶するブロック識別設定記憶部２７とそれを制御するブロック識別設定制御部２６を含む。これらの二つのブロックはＩＦ部１０とＰａｃｋｅｔ  Ｓｅｌｅｃｔｏｒ２１を介してデータ伝達路３で接続される。
【００１８】
図２はブロック識別情報を設定するためのパケットを説明するための図である。本発明では画像データとは異なる、このパケットを使用して各スレーブブロックのブロック識別情報を設定する。このパケットを画像データのパケットと区別するために、コマンドパケットと呼び、画像データのパケットをデータパケットと呼ぶことにする。コマンドパケットとデータパケットとはヘッダ部により区別し、コマンドパケットのコマンド部（データパケットのデータ部にあたる）には、設定すべきブロック識別情報が存在する。
【００１９】
コマンドパケットのヘッダ部には、データパケットと同様にブロック指定、処理指定が必要である。コマンドパケットにおいては、処理指定はブロック識別設定制御部２６が指定される。ただし、ブロック指定はコマンドパケット自身が設定するもので、設定する前には正しい値が指定できない。
【００２０】
そこで、ブロック識別設定記憶部２７はシステムの初期時（リセット時）に、ある同じ値に初期化されるようにする。ここでは、説明のために、０に初期化されるものとする。
【００２１】
図３は各スレーブブロックにブロック識別情報を割り当てる時のＣＰＵ１１の動作を説明するためのフローチャートである。
【００２２】
まず、ヘッダ部のブロック指定にブロック識別設定記憶部２７の初期値である０を、処理指定にブロック識別設定制御部２６を設定し、コマンド部１（フローチャートでは変数ｂｌｏｃｋ＿ｎｏを使用）としたコマンドパケットを送出する。
【００２３】
最初のスレーブブロック２では、そのコマンドパケットを受け取ると、ブロック識別設定記憶部２７の内容とヘッダ部のブロック指定が一致するので、Ｐａｃｋｅｔ  Ｓｅｌｅｃｔｏｒ２１がそのパケットをブロック識別設定制御部２６に送り、ブロック識別設定制御部２６はパケットのコマンド部の内容である１をブロック識別設定記憶部２７に設定する。
【００２４】
このコマンドパケットがマスタブロック１に戻らない場合、変数ｂｌｏｃｋ＿ｎｏをインクリメントして、ヘッダ部のブロック指定にブロック識別設定記憶部２７の初期値である０を、処理指定にブロック識別設定制御部２６を設定し、コマンド部を変数ｂｌｏｃｋ＿ｎｏの内容である２としたコマンドパケットを次に送出する。
【００２５】
最初のスレーブブロック２は、すでにブロック識別が１と設定され、ヘッダ部のブロック指定と一致しないため、Ｐａｃｋｅｔ  Ｓｅｌｅｃｔｏｒ２１がそのコマンドパケットをデータ伝達路２２に送り、そのまま次のスレーブブロック２′に送られる。
【００２６】
スレーブブロック２′では、そのコマンドパケットを受け取ると、ブロック識別設定記憶部２７の内容とヘッダ部のブロック指定が一致するので、Ｐａｃｋｅｔ  Ｓｅｌｅｃｔｏｒ２１がそのパケットをブロック識別設定制御部２６に送り、ブロック識別設定制御部２６はパケットのコマンド部の内容である２をブロック識別設定記憶部２７に設定する。
【００２７】
同様にして、マスタブロックから近い順にスレーブブロックのブロック識別情報が、１、２、…と設定される。最後のスレーブブロック２″にコマンドパケットにより、ブロック識別情報が設定された後、ＣＰＵ１１が変数ｂｌｏｃｋ＿ｎｏをインクリメントして、ヘッダ部のブロック指定にブロック識別設定記憶部２７の初期値である０を、処理指定にブロック識別設定制御部２６を設定し、コマンド部を変数ｂｌｏｃｋ＿ｎｏの内容としたコマンドパケットを送出すると、すべてスレーブブロックのブロック識別設定記憶部２７には初期値である０以外の値が設定されているため、このコマンドパケットは各スレーブブロックのデータ伝達路２２を経由し、結果として、そのコマンドパケットはデータ伝達路４を介してマスタブロック１へそのまま戻る。
【００２８】
ＣＰＵ１１はコマンドパケットが戻ってきたことで、すべてのスレーブブロックのブロック識別情報が設定されていたことを知ることができる。また、送出したコマンドパケットの数により、スレーブブロックの個数も知ることができる。
【００２９】
上記の説明では、マスタブロックから近い順にスレーブブロックのブロック識別情報を、１、２、…と設定したが、このような通し番号である必要はない。スレーブブロックのブロック識別情報の設定は、ブロック識別設定記憶部２７の初期値以外の各スレーブブロックでユニークな値を設定すれば良い。
【００３０】
【発明の効果】
以上説明したように本発明は、共通のソフトウェアでブロック識別の再割り当てが可能となるので、スレーブブロックの数の変更によるソフトウェアの変更が必要なく、短期間で類似のシステムを多機種開発することを可能とする。
【図面の簡単な説明】
【図１】本発明に係る情報処理の一実施例の概略構成を示すブロック図である。
【図２】実施例のコマンドパケットを説明するための図である。
【図３】図１のＣＰＵ１１の動作を説明するためのフローチャートである。
【図４】従来の情報処理装置の概略構成を示すブロック図である。
【図５】パケットを説明するための図である。
【図６】図４のＩＦ部１０の詳細なブロック図である。
【図７】図４のＰａｃｋｅｔ  Ｓｅｌｅｃｔｏｒ２１の詳細なブロック図である。
【符号の説明】
１  マスタブロック
２、２′，２″  スレーブブロック
３，４  データ伝達路
１０  ＩＦ部
１１  ＣＰＵ
１２  記憶部
１３  データ伝達路
２１  Ｐａｃｋｅｔ  Ｓｅｌｅｃｔｏｒ
２２  データ伝達路
２３  画像処理部
２４  Ｐａｃｋｅｔ  Ｄｅｓｅｌｅｃｔｏｒ
２５  ブロック識別の設定
２６  ブロック識別設定制御部
２７  ブロック識別設定記憶部
１０１，１０２  ＤＭＡＣ
２１１  Ｈｅａｄｅｒ  Ｗａｔｃｈｅｒ
２１２  セレクタ
【図１】
2004178348.tif 000003
【図２】
2004178348.tif 000004
【図３】
2004178348.tif 000005
【図４】
2004178348.tif 000006
【図５】
2004178348.tif 000007
【図６】
2004178348.tif 000008
【図７】
2004178348.tif 000009