説明

画像処理装置

【課題】 画像処理装置におけるPCIeによる画像データの転送効率を高くする。
【解決手段】 画像処理装置において、集積回路1のルートコンプレックス11は、バッファー部22−iを有し、そのバッファー部22−iは、集積回路1内で発生した集積回路2内の宛先を有するライトリクエストを複数個保持し、所定の条件が成立すると、その複数のライトリクエストに係る画像データを結合して1つのペイロードとして1つのパケットで送出する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置に関するものである。
【背景技術】
【0002】
近年、PCIe(Peripheral Component Interconnect Express)が、電子機器内の集積回路間の接続に使用されている。
【0003】
PCIeで使用される1つのパケットにおけるペイロードのサイズは可変であり、最大で4キロバイトである。このため、ある装置は、ペイロードのサイズが小さい複数のパケットを結合して1つのパケットのペイロードとして送信する(例えば特許文献1参照)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特表2006−526363号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上述の特許文献1の技術では、複数のパケットを結合したものにヘッダー等を付加して1つのパケットとしているため、そのパケットのペイロードに、データ転送には不要な情報(結合前の各パケットのヘッダーなど)が含まれており、データの転送効率が低くなっている。
【0006】
本発明は、上記の問題に鑑みてなされたものであり、PCIeでの画像データの転送効率が高い画像処理装置を得ることを目的とする。
【課題を解決するための手段】
【0007】
上記の課題を解決するために、本発明では以下のようにした。
【0008】
本発明に係る画像処理装置は、PCIeに従って画像データに関するリクエストを送信する送信部を有する第1集積回路と、PCIeに従ってそのリクエストを受信する受信部を有する第2集積回路とを備える。そして、第1集積回路の送信部は、第1集積回路内で発生した、第2集積回路内の宛先を有するライトリクエストを複数個保持し、所定の条件が成立すると、その複数のライトリクエストに係る画像データを結合して1つのペイロードとして1つのパケットで送出するバッファー部を有する。
【0009】
これにより、PCIeでの画像データの転送効率が高くなる。
【0010】
また、本発明に係る画像処理装置は、上記の画像処理装置に加え、次のようにしてもよい。この場合、第1集積回路の送信部は、複数の宛先にそれぞれ割り当てられる複数のバッファー部と、リクエストの宛先に対応するバッファー部を複数のバッファー部から選択し選択したバッファー部にそのリクエストを供給するセレクターと、複数のバッファー部から第2集積回路の受信部への伝送路の調停を行う調停部とを有する。そして、複数のバッファー部のそれぞれは、第1集積回路内で発生した第2集積回路内の宛先を有するライトリクエストを複数個保持し、所定の条件が成立すると、その複数のライトリクエストに係る画像データを結合して1つのペイロードとして1つのパケットで送出する。
【0011】
これにより、複数の宛先が存在する場合でも、各宛先についての転送効率が高くなる。
【0012】
また、本発明に係る画像処理装置は、上記の画像処理装置のいずれかに加え、次のようにしてもよい。この場合、バッファー部は、保持している複数のライトリクエストに係る画像データの合計サイズが所定の値に到達すると、その複数のライトリクエストに係る画像データを結合して1つのペイロードとして1つのパケットで送出する。
【0013】
また、本発明に係る画像処理装置は、上記の画像処理装置のいずれかに加え、次のようにしてもよい。この場合、バッファー部は、複数のライトリクエストの最初のライトリクエストからの経過時間が所定の値に到達すると、その複数のライトリクエストに係る画像データを結合して1つのペイロードとしてペイロードを1つのパケットで送出する。
【0014】
これにより、データ転送の遅延が長くならずに済む。
【0015】
また、本発明に係る画像処理装置は、上記の画像処理装置のいずれかに加え、次のようにしてもよい。この場合、バッファー部は、第1集積回路内で発生した、第2集積回路内の宛先を有するリードリクエストを複数個保持し、所定の条件が成立すると、その複数のリードリクエストに係る画像データを取得するためのリードリクエストを1つのパケットで送出し、そのリードリクエストのコンプリーションとして得られる画像データを分割して、複数のリードリクエストの応答を生成する。
【0016】
これにより、応答を伴うリードリクエストの場合でもパケット数が少なくなり、転送効率が高くなる。
【0017】
また、本発明に係る画像処理装置は、上記の画像処理装置のいずれかに加え、次のようにしてもよい。この場合、上述の送信部および受信部の一方はPCIeのルートコンプレックスであり、他方はPCIeのエンドポイントである。
【発明の効果】
【0018】
本発明によれば、画像処理装置において、PCIeでの画像データの転送効率が高くなる。
【図面の簡単な説明】
【0019】
【図1】図1は、本発明の実施の形態1に係る画像処理装置の構成を示すブロック図である。
【図2】図2は、図1におけるセレクターの動作について説明するフローチャートである。
【図3】図3は、図1におけるバッファー部の動作について説明するフローチャートである。
【図4】図4は、ペイロード以外の部分のサイズが28バイトの場合の、ペイロードのサイズと転送効率との対応関係を示す図である。
【発明を実施するための形態】
【0020】
以下、図に基づいて本発明の実施の形態を説明する。
【0021】
実施の形態1.
【0022】
図1は、本発明の実施の形態1に係る画像処理装置の構成を示すブロック図である。図1に示す画像処理装置では、集積回路(IC:Integrated Circuit)1が、集積回路2に、PCIeの伝送路3で接続されている。集積回路1,2は、例えばASIC(Application Specific Integrated Circuit)である。
【0023】
集積回路1には、画像読取装置4が接続されている。画像読取装置4は、原稿画像を光学的に読み取り、その読取結果に基づいて画像データを生成する。
【0024】
集積回路1は、PCIeのルートコンプレックス11、画像データ取得部12、データ加工部13、およびそれらを接続する内部バス14を有する。
【0025】
画像データ取得部12は、内部バス14に接続されたPCIeのマスターであり、画像読取装置4から画像データを取得し、その画像データをPCIeで転送させてメモリー5へ記憶させる。
【0026】
データ加工部13は、内部バス14に接続されたPCIeのマスターであり、メモリー5からその画像データをPCIeで転送させて読み出して所定の処理(データフォーマットの変換など)を実行し、処理後の画像データをPCIeで転送させてメモリー5に記憶させる。
【0027】
ルートコンプレックス11は、内部バス14に接続されており、通常のルートコンプレックスの機能の他に、セレクター21、複数のバッファー部22−1〜22−N、および調停部23を有する。
【0028】
セレクター21は、画像データ取得部12およびデータ加工部13からのライトリクエストおよびリードリクエストを受け付け、そのリクエストの宛先に対応するバッファー部22−i(i=1,・・・,N)をバッファー部22−1〜22−Nから選択し選択したバッファー部22−iにそのリクエストを供給する。
【0029】
複数のバッファー部22−1〜22−Nは、リクエストの複数の宛先にそれぞれ割り当てられており、各バッファー部22−iは、集積回路1内で発生した集積回路2内の宛先を有するライトリクエストを複数個保持し、所定の条件が成立すると、その複数のライトリクエストに係る画像データを結合して1つのペイロードとして1つのパケットで送出する。PCIeのパケットは、最大で4キロバイトのペイロードを有し、最大で28バイトのヘッダー等(ペイロード以外の部分)を有する。
【0030】
実施の形態1では、各バッファー部22−iは、保持している複数のライトリクエストに係る画像データの合計サイズが所定の値(ペイロードの最大サイズ以下の値)に到達すると、その複数のライトリクエストに係る画像データを結合して1つのペイロードとして1つのパケットで送出する。また、実施の形態1では、各バッファー部22−iは、保持している複数のライトリクエストの最初のライトリクエストからの経過時間が所定の値に到達すると、その複数のライトリクエストに係る画像データを結合して1つのペイロードとして1つのパケットで送出する。
【0031】
調停部23は、複数のバッファー部22−1〜22−Nから集積回路2のエンドポイント31への伝送路3の調停を行う。
【0032】
一方、集積回路2には、DRAM(Dynamic Random Access Memory)などのメモリー5、および印刷装置6が接続されている。印刷装置6は、画像処理後のデータを供給され、そのデータに基づく画像を印刷用紙に印刷する。
【0033】
集積回路2は、PCIeのエンドポイント31、メモリー5のメモリーコントローラー32、画像処理部33、およびそれらを接続する内部バス34を有する。
【0034】
メモリーコントローラー32は、内部バス34に接続されているPCIeのスレーブであって、メモリー5に対するアクセスを行う。
【0035】
画像処理部33は、内部バス34に接続されているPCIeのスレーブであって、メモリー5から画像データを読み出して所定の処理(色変換、ハーフトーニングなど)を実行し、処理後のデータを印刷装置6に出力してそのデータに基づく印刷を実行させる。
【0036】
エンドポイント31は、PCIeに従って上述のリクエストを受信し、そのリクエストを、指定されている宛先(メモリーコントローラー32など)に供給する。
【0037】
次に、上記画像処理装置の動作について説明する。
【0038】
図2は、図1におけるセレクター21の動作について説明するフローチャートである。図3は、図1におけるバッファー部22−iの動作について説明するフローチャートである。
【0039】
集積回路1のルートコンプレックス11では、セレクター21は、ライトリクエストを受け付けると(ステップS1)、そのライトリクエストにおいて指定されている宛先を特定し(ステップS2)、その宛先に対応するバッファー部22−iを選択し(ステップS3)、そのバッファー部22−iにそのライトリクエストをバッファリングさせる(ステップS4)。
【0040】
各バッファー部22−iは、所定の送信条件が成立したか否かを監視しており(ステップS11)、所定の送信条件が成立すると、バッファリングされているライトリクエストの画像データを結合して1つのペイロードとして(ステップS12)、その結合した画像データを1つのパケットで送出する(ステップS13)。このとき、それらのライトリクエストの共通の宛先が、そのパケットの宛先にセットされ、結合後の画像データのデータ長が、ペイロードのデータ長としてそのパケットに記述される。
【0041】
集積回路2では、エンドポイント31が、そのパケットを受信し、そのパケットの宛先に、ライトリクエストを出力する。
【0042】
例えば、集積回路1において、画像データ取得部12が、メモリー5に画像データを記憶させる場合、画像読取装置4から所定サイズ(例えば32バイト)の画像データを取得するごとに、その所定サイズの画像データを集積回路2のメモリーコントローラー32へ転送させるためのメモリーライトリクエストをルートコンプレックス11へ発行する。セレクター21は、そのリクエストを受け付けると、メモリーコントローラー32に対応するバッファー部22−iにそのリクエストを供給する。そのバッファー部22−iは、そのリクエストを保持し、所定の条件が成立すると、その時点までに保持しているリクエストの画像データを結合してペイロードとして1つのパケットを生成し、調停部23を介して送出する。そのパケットを送出した後、そのバッファー部22−iは、その時点までに保持しているリクエストを破棄する。そして、集積回路2では、エンドポイント31が、そのパケットを受信し、そのパケットの宛先であるメモリーコントローラー32にそのメモリーライトリクエストを出力する。メモリーコントローラー32は、ライトリクエストに含まれる画像データを指定されたメモリー5のアドレスに記憶させる。
【0043】
以上のように、上記実施の形態1によれば、集積回路1のルートコンプレックス11は、バッファー部22−iを有し、そのバッファー部22−iは、集積回路1内で発生した集積回路2内の宛先を有するライトリクエストを複数個保持し、所定の条件が成立すると、その複数のライトリクエストに係る画像データを結合して1つのペイロードとして1つのパケットで送出する。
【0044】
これにより、ペイロード以外の部分に対してペイロード部分のデータが多くなり、かつ、ペイロード部分に画像データ以外のデータが含まれないので、PCIeでの画像データの転送効率が高くなる。図4は、ペイロード以外の部分のサイズが28バイトの場合の、ペイロードのサイズと転送効率との対応関係を示す図である。図4に示すように、ペイロードのサイズが大きくなると、転送効率が高くなる。
【0045】
実施の形態2.
【0046】
本発明の実施の形態2に係る画像処理装置では、バッファー部22−iは、メモリーリードリクエストなどの複数のリードリクエストを1つのパケットにまとめて送出する。
【0047】
実施の形態2では、バッファー部22−iは、集積回路1内で発生した、集積回路2内の宛先を有するリードリクエストを複数個保持し、所定の条件が成立すると、その複数のリードリクエストに係る画像データを取得するためのリードリクエストを1つのパケットで送出し、そのリードリクエストのコンプリーションとして得られる画像データを分割して、複数のリードリクエストの応答を生成し、リクエストの発行元に出力する。
【0048】
バッファー部22−iは、保持している複数のリードリクエストの、リード対象のアドレスを特定し、すべてのアドレスのデータを取得可能なリードリクエストを送出する。このとき、バッファー部22−iは、保持している複数のリードリクエストのそれぞれについて、リクエスト発行元、リード対象のアドレス、リードリクエストの結合順番などを記憶しておき、それらの情報に基づいて、元のリードリクエストに対応するデータをコンプリーションから抽出し、リクエスト発行元へ出力する。
【0049】
なお、実施の形態2に係る画像処理装置のその他の構成および動作については実施の形態1のものと同様であるので、その説明を省略する。
【0050】
以上のように、上記実施の形態2によれば、実施の形態1による効果に加え、応答を伴うリードリクエストの場合でもパケット数が少なくなり、転送効率が高くなる。
【0051】
なお、上述の各実施の形態は、本発明の好適な例であるが、本発明は、これらに限定されるものではなく、本発明の要旨を逸脱しない範囲において、種々の変形、変更が可能である。
【0052】
例えば、上記各実施の形態において、エンドポイント31に、セレクター21、バッファー部22−1〜22−N、および調停部23と同様のセレクター、バッファー部、および調停部を設け、集積回路2から集積回路1へのPCIeによるリクエストに対しても、上述の処理を行うようにしてもよい。
【0053】
また、上記各実施の形態において、各バッファー部22−iは、保持しているリクエストの個数が所定の値に到達すると、上述のように1つのパケットを送出するようにしてもよい。
【0054】
また、上記各実施の形態において、各バッファー部22−iは、保持しているメモリーライトリクエストのアドレスの一部または全部をリード対象とするリードリクエストがあった場合、そのリードリクエストより先に、そのメモリーライトリクエストを上述のように1つのパケットで送出するようにしてもよい。
【0055】
また、上記各実施の形態では、メモリーコントローラー32が宛先となる場合について説明しているが、別の宛先(例えば画像処理部33)が指定された場合には、メモリーコントローラー32に対応するバッファー部22−jとは別のバッファー部22−k(j≠k)がその別の宛先に対するリクエストについて使用される。
【産業上の利用可能性】
【0056】
本発明は、例えば、複写機、複合機などの画像形成装置に適用可能である。
【符号の説明】
【0057】
1 集積回路(第1集積回路の一例)
2 集積回路(第2集積回路の一例)
11 ルートコンプレックス(送信部の一例)
22−1〜22−N バッファー部
21 セレクター
23 調停部
31 エンドポイント(受信部の一例)

【特許請求の範囲】
【請求項1】
PCIeに従って画像データに関するリクエストを送信する送信部を有する第1集積回路と、
PCIeに従って前記リクエストを受信する受信部を有する第2集積回路とを備え、
前記第1集積回路の送信部は、前記第1集積回路内で発生した、前記第2集積回路内の宛先を有するライトリクエストを複数個保持し、所定の条件が成立すると、その複数のライトリクエストに係る画像データを結合して1つのペイロードとして1つのパケットで送出するバッファー部を有すること、
を特徴とする画像処理装置。
【請求項2】
前記第1集積回路の送信部は、複数の宛先にそれぞれ割り当てられる複数のバッファー部と、前記リクエストの宛先に対応するバッファー部を前記複数のバッファー部から選択し選択した前記バッファー部に前記リクエストを供給するセレクターと、前記複数のバッファー部から前記第2集積回路の受信部への伝送路の調停を行う調停部とを有し、
前記複数のバッファー部のそれぞれは、前記第1集積回路内で発生した前記第2集積回路内の宛先を有するライトリクエストを複数個保持し、所定の条件が成立すると、その複数のライトリクエストに係る画像データを結合して1つのペイロードとして1つのパケットで送出すること、
を特徴とする請求項1記載の画像処理装置。
【請求項3】
前記バッファー部は、保持している前記複数のライトリクエストに係る画像データの合計サイズが所定の値に到達すると、その複数のライトリクエストに係る画像データを結合して1つのペイロードとして1つのパケットで送出することを特徴とする請求項1記載の画像処理装置。
【請求項4】
前記バッファー部は、前記複数のライトリクエストの最初のライトリクエストからの経過時間が所定の値に到達すると、その複数のライトリクエストに係る画像データを結合して1つのペイロードとして1つのパケットで送出することを特徴とする請求項1記載の画像処理装置。
【請求項5】
前記バッファー部は、前記第1集積回路内で発生した、前記第2集積回路内の宛先を有するリードリクエストを複数個保持し、所定の条件が成立すると、その複数のリードリクエストに係る画像データを取得するためのリードリクエストを1つのパケットで送出し、そのリードリクエストのコンプリーションとして得られる画像データを分割して、前記複数のリードリクエストの応答を生成することを特徴とする請求項1記載の画像処理装置。
【請求項6】
前記送信部および前記受信部の一方はPCIeのルートコンプレックスであり、他方はPCIeのエンドポイントであることを特徴とする請求項1から請求項5のうちのいずれか1項記載の画像処理装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate