JP2016154001A - 画像処理装置、画像処理用データ転送制御方法、及び画像処理用データ転送制御プログラム - Google Patents
画像処理装置、画像処理用データ転送制御方法、及び画像処理用データ転送制御プログラム Download PDFInfo
- Publication number
- JP2016154001A JP2016154001A JP2015234838A JP2015234838A JP2016154001A JP 2016154001 A JP2016154001 A JP 2016154001A JP 2015234838 A JP2015234838 A JP 2015234838A JP 2015234838 A JP2015234838 A JP 2015234838A JP 2016154001 A JP2016154001 A JP 2016154001A
- Authority
- JP
- Japan
- Prior art keywords
- data transfer
- arbitration
- control means
- data
- built
- 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.)
- Pending
Links
Abstract
【課題】デバイスに搭載される内蔵メモリを使用した外部記憶領域への画像データのデータ転送時に優先順位の高いデータ転送の帯域が低減されることがなく、装置全体でのデータ転送を効率良く行うことができる画像処理装置を提供する。【解決手段】この画像処理装置に備えられるコントローラASIC101では、内蔵メモリ(SRAM−A207、SRAM−B209、SRAM−C211、SRAM−D213)を使用して外部記憶領域へ優先順位の高いダイレクト・メモリ・アクセス制御(DMAC)による画像データのデータ転送を行うとき、コントローラASIC101に搭載されたアービタ215のアービトレーション機能によって、使用可能な内蔵SRAMが無い場合でも優先順位の低い機能ブロックのデータ転送の残データ転送量やデータ転送進捗度に基づいて停止させるデータ転送を決定して停止させ、優先順位の高い機能ブロックのデータ転送を開始させる。【選択図】図2
Description
本発明は、画像処理装置、画像処理用データ転送制御方法、及び画像処理用データ転送制御プログラムに関する。
従来、プリンタ、複写機、スキャナ、ファクシミリ等の複数の機能を一つの筐体に纏めたデジタル複合機である多機能周辺装置(MFP:MultiFunction Peripheral)仕様の画像形成装置が知られている。このような画像形成装置に備えられる画像処理装置では、コントローラASIC(Application Specific Integrated Circuit)にエンジンASICを接続し、コントローラASICに接続された装置全体の制御を行うプロセッサ(CPU)からコントローラASICを介して画像処理用の指示制御を行うように構成されるのが一般的である。例えばコントローラASICとエンジンASICとの間をPCI(Peripheral Component Interface)やPCI−EXPRESS(登録商標:以下、PCIeと表記する)等により接続する構成を前提とする。こうした前提でコントローラASICとプロセッサとの間をPCIe等により直接接続するか、或いはチップセットを介して接続した構成が知られている。このような構成において、コントローラASICに搭載される多くの機能ブロックは、同じくコントローラASIC内に搭載される内蔵メモリを使用することによって限りある容量の内蔵メモリを効率的に使用している。
係る周知技術の関連技術として、例えば複数の機能処理モジュールが使用する内蔵メモリを効率的に共有することを可能とする「半導体集積回路」(特許文献1参照)が挙げられる。
上述した特許文献1に係る技術では、半導体集積回路において、内蔵する複数の機能モジュールが使用する内蔵メモリのアクセスバス幅が異なる場合でも効率的に内蔵メモリを共有可能とすることを目的としている。この目的を達成するため、回路内で内蔵メモリへのアクセスを並列的に実現するシステム機能のメモリアクセス制御を可能としている。
ところが、係るメモリアクセス制御は多機能周辺装置における画像処理装置を構成する制御系デバイスであるエンジンASIC、コントローラASIC、プロセッサ等のデバイスに接続される外部記憶領域へのダイレクト・メモリ・アクセス制御による画像データのデータ転送を考慮していない。このため、こうした使用環境下では必ずしも効率良くデータ転送が行われず、しばしば優先順位の高い他のデータ転送の帯域が低減されてしまうという問題がある。
本発明は、このような問題点を解決すべくなされたもので、その技術的課題は、デバイスに搭載される内蔵メモリを使用した外部記憶領域への画像データのデータ転送時に優先順位の高いデータ転送の帯域が低減されることがなく、装置全体でのデータ転送を効率良く行うことができる画像処理装置、画像処理用データ転送制御方法、及び画像処理用データ転送制御プログラムを提供することにある。
上記技術的課題を達成するため、本発明の第1の手段は、画像処理装置に備えられるアービトレーション制御手段によってデバイスに内蔵したメモリの使用権調停を行う対象を汎用的に使用可能な物理的に独立した複数の内蔵メモリとし、当該画像処理装置に備えられるデータ転送制御手段によって当該アービトレーション制御手段で当該使用権調停される当該複数の内蔵メモリを利用して任意の外部記憶領域から任意の外部記憶領域へのダイレクト・メモリ・アクセス制御による画像データのデータ転送を行う画像処理用データ転送制御方法であって、データ転送制御手段により、プロセッサからの指示制御を受けてアービトレーション制御手段に対して複数の内蔵メモリにおける使用権獲得要求とデータ転送量情報とを伝達し、当該アービトレーション制御手段による使用権調停の実行時の当該複数の内蔵メモリの使用可否とデータ転送についての可否及び順序とを予め設定された優先順位を比較した結果に基づいて決定するデータ転送調停処理を行うデータ転送調停処理ステップと、アービトレーション制御手段により、データ転送調停処理ステップでのデータ転送調停処理に伴うデータ転送動作中の優先順位と残データ転送量とを比較した結果に基づいて停止するデータ転送を決定してデータ転送制御手段に対してデータ転送停止要求を通知するデータ転送停止要求通知ステップと、データ転送制御手段により、データ転送停止要求通知ステップで通知されたデータ転送停止要求に応じてデータ転送を停止するデータ転送停止ステップと、を有することを特徴とする。
また、上記技術的課題を達成するため、本発明の第2の手段は、画像処理装置に備えられるアービトレーション制御手段によってデバイスに内蔵したメモリの使用権調停を行う対象を汎用的に使用可能な物理的に独立した複数の内蔵メモリとし、当該画像処理装置に備えられるデータ転送制御手段によって当該アービトレーション制御手段で当該使用権調停される当該複数の内蔵メモリを利用して任意の外部記憶領域から任意の外部記憶領域へのダイレクト・メモリ・アクセス制御による画像データのデータ転送を行う画像処理用データ転送制御方法であって、データ転送制御手段により、プロセッサからの指示制御を受けてアービトレーション制御手段に対して複数の内蔵メモリにおける使用権獲得要求とデータ転送量情報とを伝達し、当該アービトレーション制御手段による使用権調停の実行時の当該複数の内蔵メモリの使用可否とデータ転送についての可否及び順序とを予め設定された優先順位を比較した結果に基づいて決定するデータ転送調停処理を行うデータ転送調停処理ステップと、アービトレーション制御手段により、データ転送調停処理ステップでのデータ転送調停処理に伴うデータ転送動作中の優先順位とデータ転送進捗度とを比較した結果に基づいて停止するデータ転送を決定してデータ転送制御手段に対してデータ転送停止要求を通知するデータ転送停止要求通知ステップと、データ転送制御手段により、データ転送停止要求通知ステップで通知されたデータ転送停止要求に応じてデータ転送を停止するデータ転送停止ステップと、を有することを特徴とする。
本発明によれば、優先順位の高い機能ブロックのテータ転送を行うときに使用可能な内蔵メモリが無い場合でも優先順位の低い機能ブロックのデータ転送の転送状況に応じて強制停止させるデータ転送(データフロー)を決定するため、デバイスに搭載される内蔵メモリを使用した外部記憶領域への画像データのデータ転送時に優先順位の高いデータ転送の帯域を低減させることなく、且つ装置全体でのデータ転送を効率良く行うことができる。上記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
以下に、本発明の画像処理装置、画像処理用データ転送制御方法、及び画像処理用データ転送制御プログラムについて、幾つかの実施例を挙げ、図面を参照して詳細に説明する。
図1は、本発明の実施例1に係る画像処理装置を備えた画像形成装置の基本構成を示したブロック図である。この画像形成装置は、ローカルメモリ(Local Memory)LM105が制御配下として接続されると共に、スキャナ109及びプロッタ110と接続されたエンジンASIC102と、ハードディスクドライブ(Hard Disk Drive)HDD107に対して接続されると共に、内蔵するPCIe Root Complex部(PCIe ROOT)112に対してPCIe エンジン I/F111を介してエンジンASIC102が接続されるコントローラASIC101と、バーチャルメモリ(Virtual Memory)V−Mem108が制御配下として接続されると共に、コントローラASIC101の内蔵するPCIe End Point部(PCIe ENDP)114に対してPCIe CPU I/F113を介して接続されて装置全体の制御を行うプロセッサ(System on a Chip)SOC103と、ローカルメモリLM105、ハードディスクドライブHDD107、及びバーチャルメモリV−Mem108と、を備えて構成される。
このうち、ローカルメモリLM105は、例えばSRAM(Static Random Access Memory)で構成される場合を例示できる。バーチャルメモリV−Mem108は、DDR3 SDRAM(Double−Data−Rate3 Synchronous Dynamic Random Access Memory)で構成される場合を例示できる。
上述したエンジンASIC102に接続されたスキャナ109は、白黒又はカラー画像の入力機器であり、プロッタ110は白黒又はカラー画像の出力機器である。また、ローカルメモリLM105は、スキャナ109により入力した画像データやプロッタ110により出力する画像データを一時記憶するメモリである。
プロセッサSOC103に接続されたバーチャルメモリV−Mem108は、各種の画像データや制御プログラムを記憶するメインメモリである。また、ハードディスクドライブHDD107は、画像データや符号データ、フォントデータ等を一時記憶する記憶媒体となっている。
因みに、図1に示される画像形成装置において、スキャナ109やプロッタ110を除く制御系デバイスとして互いに接続されるエンジンASIC102、コントローラASIC101、及びプロセッサSOC103は、画像処理装置を構成する各部とみなすことができる。また、ローカルメモリLM105、ハードディスクドライブHDD107、及びバーチャルメモリV−Mem108は、画像処理装置に対する外部接続記憶領域として機能する。
図2は、上述した画像処理装置に備えられるコントローラASIC101の細部構成を示したブロック図である。コントローラASIC101には内部バス201が備えられ、内部バス201は内部の各機能ブロック間を接続するシステムバスとして用いられている。内部バス201については、図示した形態の他、転送性能向上のために複数のバスを組み合わせて構成しても良い。
この内部バス201に接続されたPCIe ROOT202は、上述したPCIe Root Complex部(PCIe ROOT)112と同一なもので、PCIe エンジン I/F111を介してエンジンASIC102に接続するための機能を備える。同様に、内部バス201に接続されたPCIe ENDP203についても、上述したPCIe End Point部(PCIe ENDP)114と同一なもので、PCIe CPU I/F113を介してプロセッサSOC103に接続するための機能を備える。
また、内部バス201に接続されたHDDコントローラ205は、ハードディスクドライブHDD107に接続され、ハードディスクドライブHDD107との間でデータ転送を行う際のインタフェースを制御するための機能を備えている。
更に、内部バス201に接続された機能A206、機能B208、機能C210、機能212はコントローラASIC101が持つ幾つかの処理機能を汎用的に表した機能ブロックである。ここでの幾つかの処理機能としては、例えばスキャナ109から読み取った画像データを入力する入力器、プロッタ110へ画像データを出力する出力器、各種メモリから画像データを読み出して圧縮処理をして符号データを各種メモリへ書き戻す圧縮器、バーチャルメモリV−Mem108との間でハードディスクドライブHDD107とのデータ転送を制御するHDDコントローラ205、各種メモリ上のデータを0にしてクリアするクリア器、コマンドリストに基づいて描画処理を行う描画器、各種メモリから符号データを読み出して伸長処理をして画像データを各種メモリへ書き戻す伸長器等の機能が挙げられる。
これらの機能A206、機能B208、機能C210、機能D212は、それぞれダイレクト・メモリ・アクセス制御(DMAC)を行う機能を有している。また、これらの機能A206、機能B208、機能C210、機能D212はそれぞれアービタ215に接続された上、これらの各部がセレクタ216を介して汎用的に使用可能な物理的に独立した内蔵メモリ(SRAM)であるSRAM−A207、SRAM−B209、SRAM−C211、SRAM−D213に接続されて構成されている。ここではSRAM−A207、SRAM−B209、SRAM−C211、SRAM−D213の4つを接続している例を示しているが、接続するSRAMは任意の数量や容量にしても良い。
アービタ215は、接続する各機能ブロックからの各内蔵メモリにおける使用権獲得要求とデータ転送量情報とを受け取り、使用権調停(アービトレーション)を行ってセレクタ216を介して内蔵SRAMを各機能ブロックに割り当てする機能を持つ。このとき、アービタ215は各機能ブロックから得られる各内蔵メモリにおける使用権獲得要求に対する優先順位情報とデータ転送量情報とに基づいてアービトレーション制御を行う。アービタ215によって各機能ブロックに割り当てられた各内蔵メモリのSRAM−A207、SRAM−B209、SRAM−C211、SRAM−D213は、ダイレクト・メモリ・アクセス制御によるデータ転送を行う際に転送される画像データを一時的に記憶するために使用する。
また、アービタ215では、各機能ブロックからの内蔵メモリ使用権獲得要求を受け取ったとき、他の機能ブロックによるデータ転送動作によって即時に使用可能な内蔵メモリが無いと判断すると、使用権獲得要求の優先順位とデータ転送動作中の機能ブロックの優先順位とを比較し、また、データ転送中の機能ブロックの残データ転送量に基づいてデータ転送を強制停止させる機能ブロックを選定し、その選定した機能ブロックに対してデータ転送の強制停止を通知する機能を有する。これにより、データ転送の強制停止を通知された機能ブロックは、データ転送を停止する機能を有する。
図3は、実施例1の画像処理装置に備えられるコントローラASIC101に接続されるハードディスクドライブHDD107から画像出力するときのデータ処理の流れを示した機能ブロック図である。因みに、ここでのデータ処理の流れは、コントローラASIC101に接続されるハードディスクドライブHDD107から画像データを読み出してプロセッサSOC103に接続されるバーチャルメモリV−Mem108へデータ転送して格納させるものである。
図3を参照して具体的に説明すれば、データ処理の流れの初期段階では、データフローA1に示されるように、コントローラASIC101内のHDDコントローラ205がハードディスクドライブHDD107から画像データを読み出して内蔵SRAM217へ一旦記憶する。この後の段階では、データフローA2に示されるように、HDDコントローラ205が内蔵SRAM217から読み出した画像データをPCIe CPU I/F113及びプロセッサSOC103を介してバーチャルメモリV−Mem108へデータ転送して格納させる。
ここで使用した内蔵SRAM217は、データ転送を開始する前にHDDコントローラ205がアービタ215に対して優先順位情報を含む内蔵メモリ使用権獲得要求とデータ転送量情報とを伝達し、アービタ215のアービトレーション機能によって使用が許可された内蔵SRAM領域である。図3中には示されないが、例えば内蔵メモリの使用優先順位は3位(高優先を1位、低優先を3位)として、また、使用する内蔵SRAMとして図2中に示されるSRAM−A207、SRAM−B209を選択する場合を例示できる。
図4は、実施例1の画像処理装置に備えられるコントローラASIC101における画像データの圧縮処理を含むデータ処理の流れを示した機能ブロック図である。因みに、ここでのデータ処理の流れは、プロセッサSOC103に接続されるバーチャルメモリV−Mem108から読み出した画像データをコントローラASIC101内で圧縮してからバーチャルメモリV−Mem108へデータ転送して書き戻しの格納を行わせるものである。
図4を参照して具体的に説明すれば、データ処理の流れの初期段階では、データフローB1に示されるように、コントローラASIC101内の圧縮器302がプロセッサSOC103に接続されたバーチャルメモリV−Mem108からプロセッサSOC103及びPCIe CPU I/F113を介して読み出した画像データを取り込んで圧縮処理を行って生成した符号データを内蔵SRAM218へ一旦記憶する。この後の段階では、データフローB2に示されるように、圧縮器302が内蔵SRAM218から読み出した符号データをPCIe CPU I/F113及びプロセッサSOC103を介してバーチャルメモリV−Mem108へデータ転送して書き戻しの格納を行わせる。
ここで使用した内蔵SRAM218は、データ転送を開始する前に圧縮器302がアービタ215に対して優先順位情報を含む内蔵メモリにおける使用権獲得要求とデータ転送量情報とを伝達し、アービタ215のアービトレーション機能によって使用が許可された内蔵SRAM領域である。図4中には示されないが、例えば内蔵メモリの使用優先順位は3位(高優先を1位、低優先を3位)として、また、使用する内蔵SRAMとして図2中に示されるSRAM−A211、SRAM−D213を選択する場合を例示できる。
図5は、実施例1の画像処理装置に備えられるコントローラASIC101における画像データの出力処理を含むデータ処理の流れを示した機能ブロック図である。因みに、ここでのデータ処理の流れは、プロセッサSOC103に接続されるバーチャルメモリV−Mem108から読み出した画像データをコントローラASIC101内に取り込んでからエンジンASIC102に接続されるローカルメモリLM105へデータ転送して格納させた後、エンジンASIC102がローカルメモリLM105から読み出した画像データをプロッタ110へ出力するものである。
図5を参照して具体的に説明すれば、データ処理の流れの初期段階では、データフローC1に示されるように、コントローラASIC101内の出力器301がプロセッサSOC103に接続されたバーチャルメモリV−Mem108からプロセッサSOC103及びPCIe CPU I/F113を介して読み出した画像データを取り込んで内蔵SRAM219へ一旦記憶する。この後の段階では、データフローC2に示されるように、出力器301が内蔵SRAM219から読み出した画像データをPCIe エンジン I/F111及びエンジンASIC102を介してローカルメモリLM105へデータ転送して格納させ、更にエンジンASIC102がローカルメモリLM105から読み出した画像データをプロッタ110へ出力する。
ここで使用した内蔵SRAM219は、データ転送を開始する前に出力器301がアービタ215に対して優先順位情報を含む内蔵メモリ使用権獲得要求とデータ転送量情報とを伝達し、アービタ215のアービトレーション機能によって使用が許可された内蔵SRAM領域である。図5中には示されないが、例えば内蔵メモリの使用優先順位は3位(高優先を1位、低優先を3位)としてアービトレーションを行うが、係るアービトレーション機能の詳細動作については後述する。
図6は、実施例1の画像処理装置に備えられるコントローラASIC101でのHDDコントローラ205によるデータ転送と圧縮器302によるデータ転送とが行われているときに、出力器301から優先度のより高いデータ転送を行うためにHDDコントローラ205によってデータ転送を停止する手順を示したシーケンス図である。即ち、ここでは図2を参照して説明したデータ処理の流れ(データフローA1、A2)と図3を参照して説明したデータ処理の流れ(データフローB1、B2)とが実行されているときにHDDコントローラ205によってデータ処理を停止し、優先度のより高い出データ処理を行って出力器301から出力させる手順を示している。尚、図6中ではデータフローを転送と換言して示す。
図6を参照して具体的に説明すれば、この手順の初期段階ではステップS601に示されるように、転送A1、A2を内蔵SRAM−A207、内蔵SRAM−B209を使用して行う。また、転送B1、B2を内蔵するSRAM−C211、SRAM−D213を使用して行う。
次の段階ではステップS602に示されるように、転送C1、C2を内蔵SRAM−A207、内蔵SRAM−B209を使用して行う。このとき、ハードディスクドライブHDD107から読み出した画像データをバーチャルメモリV−Mem108へデータ転送するHDDコントローラ205による転送A1、A2とバーチャルメモリV−Mem108から読み出した画像データを圧縮処理してバーチャルメモリV−Mem108に対して書き戻し格納させる圧縮器302による転送B1、B2とにより内蔵SRAMが使用されている状態にある。こうした場合、HDDコントローラ205はアービタ215からの指示を受け、バーチャルメモリV−Mem108から読み出した画像データを出力器301及び内蔵SRAMを介してローカルメモリLM105へ格納するデータ処理(転送C1、C2)の内蔵メモリの使用優先順位は高位であり、アービタ215が認識しているデータ転送の優先順位に基づいてより優先順位の高い転送C1、転送C2を優先し、より優先順位の低いデータフローを停止させる。
アービタ215は、例えば図8に示す各機能ブロックについてのデータ転送とその優先順位及び転送状態との関係からデータ転送を停止させるデータフローを選択する。まずHDDコントローラ205による転送A1、A2と圧縮器302による転送B1、B2とを比較した結果、優先順位は何れも3であるために優先順位の点では同等と判断する。次に残データ転送量を比較した結果、HDDコントローラ205のデータ転送では残データ転送量が2,048kBであり、圧縮器302のデータ転送では残データ転送量が512kBであることにより、残データ転送量がより多いHDDコントローラ205のデータ転送を停止させることを選択する。そこで、アービタ215は、HDDコントローラ205に対してデータ転送の強制停止を通知すると共に、出力器301に対して内蔵SRAM領域の使用を許可する。その結果、図9に示すような各機能ブロック(対象は圧縮器302、出力器301に限定される)についてのデータ転送とその優先順位及び転送状態との関係でステップS602のデータ転送を開始する。
更に、次の段階ではステップS603に示されるように、転送C1、C2のデータ転送が終了した後、転送A1、A2を再開する。
以上に説明したように、実施例1に係る画像処理装置によれば、優先順位の高いダイレクト・メモリ・アクセス制御による画像データのデータ転送を行うとき、コントローラASIC101に搭載されたアービタ215のアービトレーション機能によって、使用可能な内蔵SRAMが無い場合でも優先順位の低い機能ブロックのデータ転送の残データ転送量に基づいて停止させるデータ転送を決定して停止させ、優先順位の高い機能ブロックのデータ転送を開始させるため、優先順位の高いデータ転送の帯域を低減させることなく、且つ装置全体のデータ転送を効率良く行うことができる。
図7は、本発明の実施例2に係る画像処理装置に備えられるコントローラASIC101でのHDDコントローラ205によるデータ転送と圧縮器302によるデータ転送とが行われているときに、出力器301から優先度のより高いデータ転送を行うために圧縮器302によってデータ転送を停止する手順を示したシーケンス図である。即ち、ここでは図3を参照して説明したデータ処理の流れ(データフローB1、B2)が実行されているときに圧縮器302によってデータ処理を停止し、優先度のより高いデータ処理を行って出力器301から出力させる手順を示している。尚、図7中についてもデータフローを転送と換言して示す。
図7を参照して具体的に説明すれば、初期の段階ではステップS701に示されるように、転送A1、A2を内蔵SRAM−A207、内蔵SRAM−B209を使用して行う。また、転送B1、B2を内蔵するSRAM−C211、SRAM−D213を使用して行う。
次の段階ではステップS702に示されるように、転送C1、C2を内蔵SRAM−A207、内蔵SRAM−B209を使用して行う。このとき、ハードディスクドライブHDD107から読み出した画像データをバーチャルメモリV−Mem108へデータ転送するHDDコントローラ205による転送A1、A2とバーチャルメモリV−Mem108から読み出した画像データを圧縮処理してバーチャルメモリV−Mem108に対して書き戻し格納させる圧縮器302による転送B1、B2とにより内蔵SRAMが使用されている状態にある。こうした場合、圧縮器302はアービタ215からの指示を受け、バーチャルメモリV−Mem108から読み出した画像データを出力器301及び内蔵SRAM219を介してローカルメモリLM105へ格納するデータ処理(転送C1、C2)の内蔵メモリの使用優先順位は高位であり、アービタ215が認識しているデータ転送の優先順位に基づいてより優先順位の高い転送C1、C2を優先し、より優先順位の低いデータフローを停止させる。
アービタ215は、例えば図8に示す各機能ブロックについてのデータ転送とその優先順位及び転送状態との関係からデータ転送を停止させるデータフローを選択する。まずHDDコントローラ205による転送A1、A2と圧縮器302による転送B1、B2とを比較した結果、優先順位は何れも3であるから優先順位の点では同等と判断する。次にデータ転送進捗度を比較した結果、HDDコントローラ205のデータ転送ではデータ転送進捗度が75%であり、圧縮器302のデータ転送ではデータ転送進捗度が25%であることにより、データ転送進捗度がより低い圧縮器302のデータ転送を停止させることを選択する。そこで、アービタ215は、圧縮器302に対してデータ転送強制停止を通知すると共に、出力器301に対して内蔵SRAM領域の使用を許可する。その結果、図10に示すような各機能ブロック(対象はHDDコントローラ205、出力器301に限定される)についてのデータ転送とその優先順位及び転送状態との関係でステップS702のデータ転送を開始する。
更に、次の段階ではステップS703に示されるように、転送C1、C2のデータ転送が終了した後、転送B1、B2を再開する。
以上に説明したように、実施例2に係る画像処理装置によれば、優先順位の高いダイレクト・メモリ・アクセス制御による画像データのデータ転送を行うとき、コントローラASIC101に搭載されたアービタ215のアービトレーション機能によって、使用可能な内蔵SRAMが無い場合でも優先順位の低い機能ブロックのデータ転送のデータ転送進捗度に基づいて停止させるデータ転送を決定して停止させ、優先順位の高い機能ブロックのデータ転送を開始させるため、優先順位の高いデータ転送の帯域を低減させることなく、且つ装置全体のデータ転送を効率良く行うことができる。
以上の各実施例に係る画像処理装置におけるコントローラASIC101に搭載されたアービタ215のアービトレーション機能(アービトレーション制御手段)は、デバイス(コントローラASIC101)に内蔵したメモリの使用権調停を行う対象を汎用的に使用可能な物理的に独立した複数の内蔵メモリ(内蔵SRAM)とし、画像処理装置に備えられるデータ転送制御手段(実施例1ではHDDコントローラ205、実施例2では圧縮器302が該当する)により、ハードディスクドライブHDD107、ラインメモリLM105、バーチャルメモリV−Mem108の任意の外部記憶領域から任意の外部記憶領域へのダイレクト・メモリ・アクセス制御による画像データのデータ転送を行う画像処理用データ転送制御方法として換言することができる。
係る画像処理用データ転送制御方法は、データ転送制御手段により、プロセッサSOC103からの指示制御を受けてアービトレーション制御手段に対して各内蔵SRAMにおける使用権獲得要求とデータ転送量情報とを伝達し、アービトレーション制御手段による使用権調停の実行時の各内蔵SRAMの使用可否とデータ転送についての可否及び順序とを予め設定された優先順位を比較した結果に基づいて決定するデータ転送調停処理を行うデータ転送調停処理ステップと、アービトレーション制御手段により、データ転送調停処理ステップでのデータ転送調停処理に伴うデータ転送動作中の優先順位と残データ転送量(実施例1)やデータ転送進捗度(実施例2)とを比較した結果に基づいて停止するデータ転送を決定してデータ転送制御手段に対してデータ転送停止要求を通知するデータ転送停止要求通知ステップと、データ転送制御手段により、データ転送停止要求通知ステップで通知されたデータ転送停止要求に応じてデータ転送を停止するデータ転送停止ステップと、を有するものとなる。更に、ここでの各実施例に係るデータ転送調停処理ステップ、データ転送停止要求通知ステップ、及びデータ転送停止ステップは、それぞれコンピュータにより実行させるための画像処理用データ転送制御プログラムとして構築することが可能である。
尚、以上の各実施例で説明した画像処理装置の各部(特にコントローラASIC101やプロセッサSOC103の各部構成)やその処理機能については種々変更することが可能であるため、本発明は各実施例で開示した形態に限定されない。
101 コントローラASIC
102 エンジンASIC
103 プロセッサSOC
105 ローカルメモリLM
107 ハードディスクドライブHDD
108 バーチャルメモリV−Mem
109 スキャナ
110 プロッタ
111 PCIe エンジン I/F
112、202 PCIe Root Complex部(PCIe ROOT)
113 PCIe CPU I/F
114、203 PCIe End Point部(PCIe ENDP)
201 内部バス
205 HDDコントローラ
206 機能A
207 SRAM−A
208 機能B
209 SRAM−B
210 機能C
211 SRAM−C
212 機能D
213 SRAM−D
215 アービタ
216 セレクタ
217、218、219 内蔵SRAM
301 出力器
302 圧縮器
102 エンジンASIC
103 プロセッサSOC
105 ローカルメモリLM
107 ハードディスクドライブHDD
108 バーチャルメモリV−Mem
109 スキャナ
110 プロッタ
111 PCIe エンジン I/F
112、202 PCIe Root Complex部(PCIe ROOT)
113 PCIe CPU I/F
114、203 PCIe End Point部(PCIe ENDP)
201 内部バス
205 HDDコントローラ
206 機能A
207 SRAM−A
208 機能B
209 SRAM−B
210 機能C
211 SRAM−C
212 機能D
213 SRAM−D
215 アービタ
216 セレクタ
217、218、219 内蔵SRAM
301 出力器
302 圧縮器
Claims (5)
- デバイスに内蔵したメモリの使用権調停を行うアービトレーション制御手段と、汎用的に使用可能な物理的に独立した複数の内蔵メモリと、前記アービトレーション制御手段で前記使用権調停される前記複数の内蔵メモリを利用して任意の外部記憶領域から任意の外部記憶領域へのダイレクト・メモリ・アクセス制御による画像データのデータ転送を行うデータ転送制御手段と、を備えた画像処理装置であって、
前記データ転送制御手段は、プロセッサからの指示制御を受けて前記アービトレーション制御手段に対して前記複数の内蔵メモリにおける使用権獲得要求とデータ転送量情報とを伝達し、当該アービトレーション制御手段による前記使用権調停の実行時の当該複数の内蔵メモリの使用可否とデータ転送についての可否及び順序とを予め設定された優先順位を比較した結果に基づいて決定するデータ転送調停処理を行い、
前記アービトレーション制御手段は、前記データ転送調停処理に伴うデータ転送動作中の優先順位と残データ転送量とを比較した結果に基づいて停止するデータ転送を決定して前記データ転送制御手段に対してデータ転送停止要求を通知し、
前記データ転送制御手段は、前記アービトレーション制御手段から通知された前記データ転送停止要求に応じてデータ転送を停止することを特徴とする画像処理装置。 - デバイスに内蔵したメモリの使用権調停を行うアービトレーション制御手段と、汎用的に使用可能な物理的に独立した複数の内蔵メモリと、前記アービトレーション制御手段で前記使用権調停される前記複数の内蔵メモリを利用して任意の外部記憶領域から任意の外部記憶領域へのダイレクト・メモリ・アクセス制御による画像データのデータ転送を行うデータ転送制御手段と、を備えた画像処理装置であって、
前記データ転送制御手段は、プロセッサからの指示制御を受けて前記アービトレーション制御手段に対して前記複数の内蔵メモリにおける使用権獲得要求とデータ転送量情報とを伝達し、当該アービトレーション制御手段による前記使用権調停の実行時の当該複数の内蔵メモリの使用可否とデータ転送についての可否及び順序とを予め設定された優先順位を比較した結果に基づいて決定するデータ転送調停処理を行い、
前記アービトレーション制御手段は、前記データ転送調停処理に伴うデータ転送動作中の優先順位とデータ転送進捗度とを比較した結果に基づいて停止するデータ転送を決定して前記データ転送制御手段に対してデータ転送停止要求を通知し、
前記データ転送制御手段は、前記アービトレーション制御手段から通知された前記データ転送停止要求に応じてデータ転送を停止することを特徴とする画像処理装置。 - 画像処理装置に備えられるアービトレーション制御手段によってデバイスに内蔵したメモリの使用権調停を行う対象を汎用的に使用可能な物理的に独立した複数の内蔵メモリとし、当該画像処理装置に備えられるデータ転送制御手段によって当該アービトレーション制御手段で当該使用権調停される当該複数の内蔵メモリを利用して任意の外部記憶領域から任意の外部記憶領域へのダイレクト・メモリ・アクセス制御による画像データのデータ転送を行う画像処理用データ転送制御方法であって、
前記データ転送制御手段により、プロセッサからの指示制御を受けて前記アービトレーション制御手段に対して前記複数の内蔵メモリにおける使用権獲得要求とデータ転送量情報とを伝達し、当該アービトレーション制御手段による前記使用権調停の実行時の当該複数の内蔵メモリの使用可否とデータ転送についての可否及び順序とを予め設定された優先順位を比較した結果に基づいて決定するデータ転送調停処理を行うデータ転送調停処理ステップと、
前記アービトレーション制御手段により、前記データ転送調停処理ステップでの前記データ転送調停処理に伴うデータ転送動作中の優先順位と残データ転送量とを比較した結果に基づいて停止するデータ転送を決定して前記データ転送制御手段に対してデータ転送停止要求を通知するデータ転送停止要求通知ステップと、
前記データ転送制御手段により、前記データ転送停止要求通知ステップで通知された前記データ転送停止要求に応じてデータ転送を停止するデータ転送停止ステップと、を有することを特徴とする画像処理用データ転送制御方法。 - 画像処理装置に備えられるアービトレーション制御手段によってデバイスに内蔵したメモリの使用権調停を行う対象を汎用的に使用可能な物理的に独立した複数の内蔵メモリとし、当該画像処理装置に備えられるデータ転送制御手段によって当該アービトレーション制御手段で当該使用権調停される当該複数の内蔵メモリを利用して任意の外部記憶領域から任意の外部記憶領域へのダイレクト・メモリ・アクセス制御による画像データのデータ転送を行う画像処理用データ転送制御方法であって、
前記データ転送制御手段により、プロセッサからの指示制御を受けて前記アービトレーション制御手段に対して前記複数の内蔵メモリにおける使用権獲得要求とデータ転送量情報とを伝達し、当該アービトレーション制御手段による前記使用権調停の実行時の当該複数の内蔵メモリの使用可否とデータ転送についての可否及び順序とを予め設定された優先順位を比較した結果に基づいて決定するデータ転送調停処理を行うデータ転送調停処理ステップと、
前記アービトレーション制御手段により、前記データ転送調停処理ステップでの前記データ転送調停処理に伴うデータ転送動作中の優先順位とデータ転送進捗度とを比較した結果に基づいて停止するデータ転送を決定して前記データ転送制御手段に対してデータ転送停止要求を通知するデータ転送停止要求通知ステップと、
前記データ転送制御手段により、前記データ転送停止要求通知ステップで通知された前記データ転送停止要求に応じてデータ転送を停止するデータ転送停止ステップと、を有することを特徴とする画像処理装置用データ転送制御方法。 - 請求項3又は4記載の画像処理用データ転送制御方法における前記データ転送調停処理ステップ、前記データ転送停止要求通知ステップ、及び前記データ転送停止ステップをコンピュータにより実行させるための画像処理用データ転送制御プログラム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015028996 | 2015-02-17 | ||
JP2015028996 | 2015-02-17 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2016154001A true JP2016154001A (ja) | 2016-08-25 |
Family
ID=56760542
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015234838A Pending JP2016154001A (ja) | 2015-02-17 | 2015-12-01 | 画像処理装置、画像処理用データ転送制御方法、及び画像処理用データ転送制御プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2016154001A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110419009A (zh) * | 2017-04-28 | 2019-11-05 | 株式会社日立制作所 | 控制器以及控制方法 |
-
2015
- 2015-12-01 JP JP2015234838A patent/JP2016154001A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110419009A (zh) * | 2017-04-28 | 2019-11-05 | 株式会社日立制作所 | 控制器以及控制方法 |
CN110419009B (zh) * | 2017-04-28 | 2022-04-22 | 株式会社日立制作所 | 控制器以及控制方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10296217B2 (en) | Techniques to configure a solid state drive to operate in a storage mode or a memory mode | |
US10209922B2 (en) | Communication via a memory interface | |
US9575887B2 (en) | Memory device, information-processing device and information-processing method | |
US9172839B2 (en) | Image forming apparatus, control method and storage medium | |
JP2013196667A (ja) | 画像処理装置 | |
WO2015194133A1 (ja) | 演算装置、演算装置の制御方法、及び、演算装置の制御プログラムが記録された記憶媒体 | |
TWI530785B (zh) | 電腦系統及非揮發性記憶體的控制方法 | |
US20200159680A1 (en) | Programming and controlling compute units in an integrated circuit | |
US8756356B2 (en) | Pipe arbitration using an arbitration circuit to select a control circuit among a plurality of control circuits and by updating state information with a data transfer of a predetermined size | |
JP2008282314A (ja) | シミュレータ、シミュレーション方法 | |
JP2016154001A (ja) | 画像処理装置、画像処理用データ転送制御方法、及び画像処理用データ転送制御プログラム | |
US20120159024A1 (en) | Semiconductor apparatus | |
JP6294732B2 (ja) | データ転送制御装置及びメモリ内蔵装置 | |
US20160154603A1 (en) | Data transfer control device, apparatus including the same, and data transfer control method | |
JP2008009702A (ja) | 演算処理システム | |
JP2023533728A (ja) | 循環fifoによるスキャッタ及びギャザーストリーミングデータ | |
JP2007264751A (ja) | データ転送制御装置 | |
JP2013131139A (ja) | アクセス制御装置、画像処理装置及びアクセス制御方法 | |
US11003474B2 (en) | Semiconductor device for providing a virtualization technique | |
JP2007108858A (ja) | ピン共有装置およびピン共有方法 | |
US20150121393A1 (en) | Methods and apparatus for software chaining of co-processor commands before submission to a command queue | |
JP2014130425A (ja) | 画像形成装置 | |
JP2005258783A (ja) | データ転送装置、データ転送方法、画像形成装置及びオプションボード | |
JP6080490B2 (ja) | 情報処理装置、起動方法およびプログラム | |
JP2014211662A (ja) | アクセス制御装置及びアクセス制御方法 |