JP5034738B2 - データ処理装置及びデータ処理プログラム - Google Patents

データ処理装置及びデータ処理プログラム Download PDF

Info

Publication number
JP5034738B2
JP5034738B2 JP2007186850A JP2007186850A JP5034738B2 JP 5034738 B2 JP5034738 B2 JP 5034738B2 JP 2007186850 A JP2007186850 A JP 2007186850A JP 2007186850 A JP2007186850 A JP 2007186850A JP 5034738 B2 JP5034738 B2 JP 5034738B2
Authority
JP
Japan
Prior art keywords
data
partial
reference table
unit
partial reference
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
JP2007186850A
Other languages
English (en)
Other versions
JP2009025954A (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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation Corp
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 Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP2007186850A priority Critical patent/JP5034738B2/ja
Publication of JP2009025954A publication Critical patent/JP2009025954A/ja
Application granted granted Critical
Publication of JP5034738B2 publication Critical patent/JP5034738B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Color Image Communication Systems (AREA)
  • Image Processing (AREA)
  • Facsimile Image Signal Circuits (AREA)

Description

本発明は、データ処理装置またはデータ処理プログラムに関する。
下記特許文献1には、画像データに対し、LUT(ルックアップテーブル)を用いた色変換処理を行う技術が開示されている。この技術では、大容量低速メモリに格納されたLUTの一部を、小容量高速メモリに記憶させて変換に使用する。そして、参照したいデータが小容量高速メモリにない場合は、小容量高速メモリのデータの書き換えを行う。
下記特許文献2にも、画像データに対し、LUTを用いた色変換処理を行う技術が開示されている。この技術では、ミスヒットがあったときには、FIFO(FirstInFirstOut)を用いて処理を遅延させ、その間にLUTを更新している。
特開2005−157530号公報 特開2006−157252号公報
本発明の目的は、部分参照表を用いたデータ処理の効率を高めることにある。
本発明のデータ処理装置の一態様においては、処理対象データを入力する入力手段と、前記処理対象データがとり得るすべてのデータ値の各々について当該データ値に対応する参照データが登録された表である参照表を記憶する第1の記憶手段と、参照表を構成する複数の参照データの部分集合である部分参照表を複数記憶する第2の記憶手段であって、前第2の記憶手段の容量は前記参照表全体のデータ量よりも小さいため前記第2の記憶手段に記憶された複数の部分参照表は前記参照表全体のうちの一部しかカバーしておらず、かつ前記第2の記憶手段に記憶された複数の部分参照表は、それぞれ当該部分参照表に含まれる参照データに対応する前記データ値の範囲であるデータ範囲が互いに異なっていることを特徴とする第2の記憶手段と、入力した処理対象データの前記データ値に応じて、前記第2の記憶手段に記憶された前記複数の部分参照表の中に当該データ値に対応する前記データ範囲を持つ部分参照表がある場合には、当該部分参照表を選択部分参照表として選択し、前記第2の記憶手段に記憶された前記複数の部分参照表の中に当該データ値に対応するデータ範囲を持つ部分参照表がない場合には、当該データ値に対応するデータ範囲を持つ部分参照表を前記参照表から取得し、前記第2の記憶手段に記憶されている前記複数の部分参照表のうちのいずれかを当該取得した部分参照表に変更してから、前記第2の記憶手段内にある当該変更された部分参照表を選択部分参照表として選択し、選択した当該選択部分参照表から当該データ値に対応する参照データを参照する参照手段と、前記入力した処理対象データの前記データ値に応じて前記参照手段が前記第2の記憶手段内の前記選択部分参照表から参照した前記参照データを用いて、前記処理対象データに対するデータ処理を行うデータ処理手段と、前記入力した処理対象データのデータ値から、今後入力される処理対象データの前記データ値を予測する予測手段と、前記予測手段が予測した前記今後入力される処理対象データの前記データ値が、前記第2の記憶手段に記憶された前記複数の部分参照表のいずれの前記データ範囲にも含まれない場合に、前記今後入力される処理対象データの前記データ値を含んだ前記データ範囲に対応する部分参照表を前記参照表から取得し、前記第2の記憶手段に記憶された前記複数の部分参照表のうち、前記選択部分参照表以外の一又は二以上の部分参照表を、当該取得した部分参照表に変更する変更手段と、論理仕様を再構成可能な再構成可能回路と、前記再構成可能回路の論理仕様を再構成する再構成手段と、を備え、前記参照手段、前記データ処理手段、及び前記変更手段による各処理の少なくとも一部は、前記再構成可能回路に設定された論理に基づいて行われ、前記再構成手段は、前記予測手段が予測した前記今後入力される処理対象データの前記データ値が、前記記憶手段に記憶された前記複数の部分参照表のいずれの前記データ範囲にも含まれない場合に、前記再構成可能回路を再構成して、変更対象となった前記部分参照表を前記変更手段が変更する論理を設定し、かつ、前記部分参照表が変更された後に前記再構成可能回路を再構成して、変更された前記部分参照表を前記参照手段が参照する論理、及び、変更された前記部分参照表の参照結果に基づいて前記データ処理手段がデータ処理を行う論理を設定する
参考例においては、前記参照手段または前記データ処理手段による処理の実行と、前記変更手段による処理の実行とは、少なくともその一部が並列的に行われる。
本発明のデータ処理装置の一態様においては、前記再構成可能回路は、論理仕様を変更可能な複数の記憶回路を備え、前記記憶手段は、二以上の前記論理回路に一又は二以上の前記部分参照表を記憶し、前記変更手段は、前記選択部分参照表が記憶されていない前記論理回路に記憶された一又は二以上の前記部分参照表を変更する。
本発明のデータ処理装置の一態様においては、前記記憶回路の容量は前記参照表の大きさに比べて小さい。
本発明のデータ処理装置の一態様においては、前記参照手段により選択されるべき部分参照表が前記記憶手段により記憶されていない場合に、前記予測手段による前記処理対象データの予測態様を変更する予測態様変更手段を備える。
本発明のデータ処理装置の一態様においては、前記処理対象データは、画像を構成する複数の画素データであり、前記データは、前記画素データの画素値である。
参考例のデータプログラムの一態様においては、コンピュータを、処理対象データを入力する入力手段と、参照表を構成する複数の参照データの部分集合である部分参照表を複数記憶する記憶手段であって、前記参照表は、前記処理対象データがとり得るすべてのデータ値の各々について当該データ値に対応する参照データが登録された表であり、前記記憶手段の容量は前記参照表全体のデータ量よりも小さいため前記記憶手段に記憶された複数の部分参照表は前記参照表全体のうちの一部しかカバーしておらず、かつ前記記憶手段に記憶された複数の部分参照表は、それぞれ当該部分参照表に含まれる参照データに対応する前記データ値の範囲であるデータ範囲が互いに異なっていることを特徴とする記憶手段と、入力した処理対象データの前記データ値に応じて、前記記憶手段に記憶された前記複数の部分参照表の中に当該データ値に対応する前記データ範囲を持つ部分参照表がある場合には、当該部分参照表を選択部分参照表として選択し、前記記憶手段に記憶された前記複数の部分参照表の中に当該データ値に対応するデータ範囲を持つ部分参照表がない場合には、当該データ値に対応するデータ範囲を持つ部分参照表を前記参照表から取得し、前記記憶手段に記憶されている前記複数の部分参照表のうちのいずれかを当該取得した部分参照表に変更してから、前記記憶手段内にある当該変更された部分参照表を選択部分参照表として選択し、選択した当該選択部分参照表から当該データ値に対応する参照データを参照する参照手段と、前記入力した処理対象データの前記データ値に応じて前記参照手段が前記記憶手段内の前記選択部分参照表から参照した前記参照データを用いて、前記処理対象データに対するデータ処理を行うデータ処理手段と、前記入力した処理対象データとの関連性に基づいて、今後入力される処理対象データの前記データ値を予測する予測手段と、前記予測手段が予測した前記今後入力される処理対象データの前記データ値が、前記記憶手段に記憶された前記複数の部分参照表のいずれの前記データ範囲にも含まれない場合に、前記今後入力される処理対象データの前記データ値を含んだ前記データ範囲に対応する部分参照表を前記参照表から取得し、前記記憶手段に記憶された前記複数の部分参照表のうち、前記選択部分参照表以外の一又は二以上の部分参照表を、当該取得した部分参照表に変更する変更手段、として機能させる。
請求項1に記載の発明によれば、部分参照表を用いたデータ処理において、参照される蓋然性が高い部分参照表が用意されるため、データ処理の効率を高めることが可能となる。また、部分参照表を参照する過程と、部分参照表を変更する過程とが、再構成により切り換えられて実行されるため、データ処理の効率を高めることが可能となる。
参考例によれば、参照データの参照あるいは処理対象データに対するデータ処理が行われている間を利用して、参照されていない部分参照表の変更が行われるため、データ処理の効率を高めることができる。
請求項に記載の発明によれば、部分参照表の参照と、部分参照表の変更とにおいて、同一の記憶回路の競合が発生することを防止できる。
請求項に記載の発明によれば、記憶回路が参照表を記憶する容量を有しない場合においても、効率を高めたデータ処理が可能となる。
請求項に記載の発明によれば、予測が精度よく行われていない場合に、予測態様を変更して予測精度の向上を試みることが可能となる。
請求項に記載の発明によれば、画像データに対する処理効率を向上させることが可能となる。
参考例によれば、参照される蓋然性が高い部分参照表が用意され、データ処理の効率を高めることが可能なデータ処理プログラムが提供される。
[用語等の説明] ここでは、特許請求の範囲、明細書、または図面において用いられる用語や概念等について説明する。
データ処理装置は、コンピュータハードウエアと、その動作を規定するプログラム(ソフトウエア)を用いて構築される装置である。コンピュータハードウエアは、プログラムの制御によって、入力手段、記憶手段、参照手段、データ処理手段、予測手段、変更手段、予測態様変更手段などの各手段として機能することになる。データ処理装置は、単体のコンピュータハードウエアを利用した集中処理システムとして構築されてもよいし、通信可能な複数のコンピュータハードウエアを利用した分散処理システムとして構築されてもよい。
入力手段は、複数の処理対象データを入力する手段である。処理対象データは、1自由度(1ビット)からなるデータであっても、複数自由度(複数ビット)からなるデータであってもよい。また、処理対象データは、例えば、一つの要素をもつもの(1次元データ)であってもよいし、複数の要素をもつもの(多次元データ)であってもよい。入力される複数の処理対象データの間には、データ特性になんらかの関連性がある。データ特性の例としては、その処理対象データ自体がもつ絶対的な特性(例えばデータ値の大きさ)、他の処理対象データとの比較により求められる相対的な特性(例えばデータ分布)、あるいは、処理対象データに対し適当な演算を施すことにより判別可能な特性(例えばデータ変換後のデータ値の大きさ)などを挙げることができる。また、関連性とは、例えば、全体として意味あるデータ群を構成する(例えば全体として画像を構成したり、全体として時系列データを構成したりする)ものや、相互に相関をもつもの(相互に対比対象となる実験・観測データなど)などを例示することができる。
記憶手段は、半導体メモリなどの記憶装置に、参照表の一部である部分参照表を複数記憶する手段である。ここで、参照表は全参照データによって構成されるデータ構造であり、部分参照表は全参照データの部分集合によって構成されるデータ構造である。参照表は、所望のデータを参照(読み出し)できるようにデータ構造が設定されたデータ群を指す。参照表には、しばしばハッシュやツリーなどの探索アルゴリズムが用いられる。参照表の典型例としては、ルックアップテーブル(LUT)を挙げることができる。なお、参照表自体は、当該データ処理装置内に別途記憶されてもよいし、外部から取得されてもよい。
参照手段は、入力した処理対象データのデータ特性に応じた参照データを参照する。この参照過程では、複数ある部分参照表の中から、参照に用いる部分参照表(選択部分参照表と呼ぶ)を選択し、この選択部分参照表の中から参照データを参照する。
データ処理手段は、入力した処理対象データに対してデータ処理を行う手段である。データ処理の例としては、データ変換処理、フィルタ処理、統計処理などを挙げることができる。データ処理は、例えば、入力した各処理対象データに対して行われてもよいし、選択された一部の処理対象データに対して行われてもよい。また、二以上の処理対象データをひとまとまりとして行われてもよい。データ処理は、部分参照表の中から処理対象データのデータ特性に応じた参照データを参照して行われる。参照データは、例えば、処理対象データの置き換え、処理対象データとの対比、実行する演算のパラメータなどに用いられる。なお、データ処理においては、参照手段により行われる参照データを参照するための演算結果が使用されてもよい。
予測手段は、予測を開始する時点ではまだ入力されていない処理対象データ、つまり、まだデータ特性を吟味することのできない処理対象データについて、そのデータ特性を予測する。データ特性の予測は、入力が完了した(処理済みても、未処理でも、その両方であってもよい)一または二以上の処理対象データとのデータ特性が関連することを利用して行われる。予測は、例えば、補間処理、確率・統計処理など様々な態様で行うことが可能である。
予測態様変更手段は、予測の精度が悪く、参照に必要となる部分参照表が前記記憶手段により記憶されていない場合、つまりミスヒットが発生する場合に、予測手段による予測態様を変更する。予測態様の変更は、ミスヒットが発生した場合に直ちに行うようにしてもよいし、ミスヒットの発生が許容範囲以上発生した場合に行うようにしてもよい。予測態様の変更の例としては、時間間隔を短くする(予測頻度を高める)、予測アルゴリズム(補間関数など)の精度を上げる、遠未来から近未来と予測時間を短縮するなどの態様を挙げることができる。
変更手段は、予測結果に応じて、記憶手段により記憶された部分参照表を変更(更新)する。変更される部分参照表は、選択部分参照表に含まれないものの中から選ばれる。なお、参照手段による択部分参照表の参照あるいはデータ処理手段による参照結果を利用したデータ処理と、変更手段による部分参照表の変更は、並列的に実行することができる。ここで、並列的とは、少なくとも一部が同時刻帯に実行されることをいう。
コンピュータハードウエアとしては、典型的には、その論理仕様が固定されたものが用いられる。しかし、例えば、そのコンピュータハードウエアが備える演算装置の一部または全部を、論理仕様を再構成可能な再構成可能回路(リコンフィギュラブル回路)によって構築することも可能である。再構成可能回路は、典型的には、主として演算処理を行う算術論理演算部(ALU)などの演算回路と、主としてデータの記憶を行うランダムアクセスメモリ(RAM)などの記憶回路とを含んでいる。そして、再構成論理回路では、ハードウエア的に規定された論理仕様をソフトウエア的(プログラム的に)に変更することが可能である。特に、論理仕様を数サイクル以内に切り換えることができる場合には、一連の処理の最中に論理仕様を変更する動的再構成が可能となる。
切り換え対象となる論理仕様には、例えば、演算回路で行われる演算処理の態様を定めた演算論理仕様、再構成論理回路内の配線の態様を定めた結線論理仕様、再構成論理回路と外部装置との配線の態様を定めた入出力論理仕様などが含まれる。なお、記憶回路では、典型的には内部的な論理仕様が固定され、結線論理仕様あるいは入出力論理仕様などが再構成可能に構築されるが、例えば、内部的な論理仕様を再構成可能とされてもよい。
再構成可能回路は、典型的には、分散配置(例えばチップ上に2次元アレイ状に配置)された複数の要素(エレメント)からなる。具体的には、演算回路を複数の演算要素によって構築したり、記憶回路を複数の記憶要素によって構築したりする例が挙げられる。再構成のためのプログラミングが、こうした演算要素や記憶要素を単位として行われることも多い。
再構成手段は、再構成可能回路の論理仕様を再構成し、データ処理手段の機能の一部または全部を実現するデータ処理論理、あるいは、変更手段の機能の一部または全部を実現する変更論理などを設定する。再構成にあたっては、記憶回路に記憶されているデータ、あるいは、演算回路のレジスタに記憶されているデータを初期化してもよいし、保全して(破壊しないで)再構成後に再利用するようにしてもよい。
[実施の形態] 以下に本発明の実施の形態を例示する。
図1は、本実施の形態にかかる画像処理装置10の構成例を示す概略図である。画像処理装置10は、データ処理装置の一種であり、図示した例においては単体の筐体をもつ装置として構成されている。画像処理装置10の内部には、内部通信路としての内部バス11が設けられている。そして、内部バス11には、CPU(中央処理装置)12、ROM(ReadOnlyMemory)14、RAM(RandomAccessMemory)16、HDD(HardDiscDrive)18、再構成可能システム20、UI(UserInterface)21、スキャナ22、プリンタ24、CDD(CompactDiscDrive)26、及びネットワークインタフェース28の各構成装置が接続されている。
CPU12は、ROM14などに格納されたプログラムに従って、画像処理装置10の各構成装置の制御や、画像処理等を行う装置である。ROM14は長期的な記憶が可能な半導体メモリ(記憶装置)であり、各種のプログラムや設定情報などを記憶する。RAM16は主として短期的な記憶に用いられる半導体メモリである。DRAM(ダイナミックRAM)を用いた場合には、比較的大容量だがランダムアクセス読み出しがやや遅い記憶装置となり、SRAM(スタティックRAM)を用いた場合には、比較的小容量だがランダムアクセス読み出しがやや早い記憶装置となる。RAM16には、処理対象となる画像データなどが記憶される。RAM16と再構成可能システム20との入出力を高速化するために、内部バス11を介さずに両者を直結したり、DDR(ダブルデータレート)方式を用いたりする場合もある。HDD18は磁気ディスクなどを用いて構成された大容量の記憶装置であり、画像データの長期的な記憶などに用いられる。
再構成可能システム20は、コンフィグメモリ32とリコンフィギュラブルプロセッサ34とを含む装置であり、典型的には、同一のチップ上にこうした装置を設置されている。コンフィグメモリ32は、リコンフィギュラブルプロセッサ34の論理仕様を規定する論理仕様データが入力される記憶装置である。コンフィグメモリ32は、例えば、選択可能な複数の論理仕様データをスイッチで切り替えることで、採用する論理仕様データを数サイクル(例えば1サイクル)で選択できるように設定されている。
リコンフィギュラブルプロセッサ34は、再構成可能回路としての装置であり、アレイ状に配置された複数のプロセッサエレメント(PE)を備えている。プロセッサエレメントは、リコンフィギュラブルプロセッサ34を構成する小回路であり、例えば、演算要素としてのALUエレメント、あるいは、記憶要素としてのRAMエレメントなどからなる。このうち、ALUエレメントは、再構成された論理仕様に基づいて、データに対する演算処理を行う小回路であり、RAMエレメントは、データの入出力及び記憶が行われる小回路であり、例えば、高速な入出力が可能なSRAMを用いて構築される。RAMエレメントは、外部設置されるROM14やRAM16などに比べて容量が小さいことが多い。ALUエレメントの内部的な論理仕様である演算論理仕様や、他のALUエレメントやRAMエレメントとの接続を規定する結線論理仕様、外部装置との接続を規定する入出力論理仕様などは、コンフィグメモリ32に設定された論理仕様データに基づいて再構成される。なお、リコンフィギュラブルプロセッサ34には、外部装置との入出力を高速に行う専用入出力I/F(インタフェース)や、論理仕様が固定された(再構成不可能な)小演算回路などが設けられることも多い。再構成可能システム20は、論理仕様データの選択や再構成時期などを制御する制御部を自装置内に備えて自らの動作を制御するものであってもよいし、CPU12などの外部装置によって動作を制御されるものであってもよい。こうした制御部あるいはCPU12は、プログラムに従って、コンフィグメモリ32にコンフィグデータを入力してリコンフィギュラブルプロセッサ34に画像処理論理などのコンフィギュレーションを設定し、それを実行させる。コンフィグデータは、ROM14、RAM16、HDD18などに格納されている。
UI21は、液晶ディスプレイや発光ダイオードなどの表示装置、及び、タッチパネルやキーボードなどの入力装置を備え、画像処理装置10のユーザにデータを表示したり、ユーザから操作命令を受け付けたりする。スキャナ22は、用紙表面の画像を読み取って画像データを生成する読取装置である。プリンタ24は、画像データに基づいて用紙に印刷を行う印刷装置である。CDD26は、記録媒体としてのCD(コンパクトディスク)に記録されたデータを読み取る装置であり、例えば、CPU12や再構成可能システム20を制御するためのプログラムがCDD26により提供された場合にこのプログラムを読み取るために用いられる。ネットワークインタフェース28は、インターネットなどのネットワーク30に接続してデータを入出力するためのインタフェースであり、例えば、CPU12や再構成可能システム20を制御するためのプログラムがネットワーク30を通じて提供される場合、このプログラムのデータ信号を受信するために用いられる。
続いて、図2乃至図4を参照して、図1に示した画像処理装置10を用いて行う画像処理の概要について説明する。
図2は、画像処理(データ処理)の一例である色変換処理の流れを説明する図であり、L***表色系で表現された画像データを、CMYK表色系に変換する処理の例を示している。この例では、画像データを構成する各画素データのL*成分、a*成分、b*成分が順次入力され、アドレス変換処理部40でL***値に対応したアドレスに変換される。変換により与えられるアドレスは、データメモリ42,44,46,48に格納されたCMYK色変換用の各ルックアップテーブル(それぞれ、C−LUT,M−LUT,Y−LUT,K−LUTと呼ぶ)の格納位置に対応したものである。すなわち、アドレス変換処理部40が与えるアドレスに従ってデータメモリ42〜48を参照すると、入力した画素値の近傍におけるCMYKの各成分の値が得られる。そして、得られた値を基に補間処理部50,52,54,56で補間処理を行うことで、入力した画素値に対応したC成分、M成分、Y成分、K成分の値が出力される。
図3は、図2で説明したC−LUTの例を模式的に示す図である。C−LUTは、3次元空間(L*,a*,b*)上で定義されており、L*成分、a*成分、b*成分の値と、C成分との関係を表している。図には、入力済みの画素データIN3,IN2,IN1,IN0と、これから入力される画素データINa,INb,INc,INd,INeが図示されている。これらの各画素データに対しては、そのC−LUTを用いて変換を行うことで、近傍のCの値を求めることができる。しかし、C−LUTは一般にサイズが大きく、全てをメモリに格納するのは困難であることが多い。そこで、C−LUTの部分集合である部分LUT(これは部分参照表の例である)が用いられる。例えば、図3の例では、入力済みの画素データIN3,IN2,IN1,IN0に対しては、C−LUT1を用いて変換が行われる。
ところが、入力がなされていない画素データINa,INb,INc,INd,INeに対しては、どの部分LUTを用いればよいかは自明ではない。すなわち、画素データINa,INb,INcに対してはC−LUT2を適用すればよいことや、画素データINc,INd,INeに対してはC−LUT3を適用すればよいことは、これらが未入力の段階ではまだわからない。
図4に図示したグラフは、未入力の画素データに必要な部分LUTの予測態様を説明するものである。グラフの横軸は時間(サイクル)を表し、縦軸は、L*の値を表している。そして、グラフ中には、図3に示した画素データIN3,IN2,IN1と、これから線形補間(線形補外)した予測画素データM1,M2,M3が図示されている。すなわち、ある時刻に入力されたIN3、それからsサイクル後に入力されたIN2、さらにsサイクル後に入力されたIN3の各L*成分を基に3点補間を行って、未来に入力される予測画素データM1,M2,M3のL*成分値を予測している。図示した例では、画素データM1,M2,M3はIN1から3s,4s,5sサイクル後にそれぞれ入力され、その値は形式的には、次式で表される。
M1=((IN1−IN2)+(IN2−IN3))/2s × 4s + IN2
M2=((IN1−IN2)+(IN2−IN3))/2s × 5s + IN2
M3=((IN1−IN2)+(IN2−IN3))/2s × 6s + IN2
画像データにおいては、各画素の色や輝度は、近傍の画素間で類似する傾向にあり、距離とともに比較的滑らかに変化することが多い。ここでは、このデータ特性を利用して、予測画素データM1,M2,M3の入力を予測し、これらの予測画素を範囲に含む部分LUTを対応する時刻に用意することとした。図示した例では、画素データIN3,IN2,IN1などの変換に用いている部分LUT60を備えていると仮定している。そこで、更新する部分LUT62は、予測画素データM1,M2,M3の両側にバランスよく拡がるような範囲に設定されている。このため、部分LUT60と部分LUT62は一部の範囲が重複している。なお、予測画素データM1,M2,M3の値によっては、部分LUT60と部分LUT62とが重複することも接することもなく、ジャンプする可能性もある。このような時には、例えば、画像の連続性を考慮してジャンプを作らないことを優先してもよいし、予測結果を優先するようにしてもよい。なお、同様の処理は、a*成分及びb*成分に対しても行われる。
続いて、図5〜図8を用いて、以上に説明した処理を行うための構成について説明する。図5は、リコンフィギュラブルプロセッサ34に設定した論理について説明する図である。リコンフィギュラブルプロセッサ34には、参照処理部70、参照部76、及び画像処理部78が設けられている。
参照処理部70は、参照手段として機能する処理部であり、参照部76のデータを参照するための処理を行っている。具体的には、入力される画素データを順次シフトして出力するシフトレジスタ72、シフトレジスタ72からデータを入力し、先入れ先出し方式で出力するFIFO74、部分LUTの選択を行う部分LUT選択制御部80、及び、部分LUTの変更(更新)についての処理を行う部分LUT予測部82を備えている。
参照部76は、部分参照表を記憶する記憶手段としての構成要素であり、部分参照表の例である色変換用の部分LUTを記憶し管理する。ここでは、リコンフィギュラブルプロセッサ34に設けられているRAMエレメントの容量が小さく、全LUT(現在一般的に用いられているものは1色につき40キロバイト、4色で160キロバイト程度である)を格納できないことを想定しており、参照部76では、RAMエレメントの容量に応じた部分LUT(例えば1色につき4キロバイト、4色で16キロバイトのもの)を管理している。参照部76には、RAMエレメントとしての2つのデータメモリ86,88と、このデータメモリ86,88からの出力切り換えを行うSEL(選択部)90が設けられている。そして、データメモリ86,88には、それぞれ部分LUTであるLUT−A87と、LUT−B89が設定されている。
画像処理部78は、データ処理手段の例であり、参照部76から、部分LUTの参照結果(参照データ)を入力し、補間処理などの画像処理を行って、その結果を出力する。なお、部分LUTとして入力するLUT92は、RAM16に格納されている。そして、LUT92からの参照データ出力は、CPU12あるいはDMA(直接メモリアクセス)コントローラなどを利用したDRAM(ダイナミックRAM)制御部84によって制御されている。
図6は、部分LUT選択制御部80の構成を説明するブロック図である。部分LUT選択制御部80には、指示処理部100、適合判定部102、タグデータ変更部104、及びタグデータ106が設けられている。指示処理部100は、FIFO74に対し画素データの読み出しを開始あるいは停止させる指示、部分LUT予測部82に対しLUT−A87とLUT−B89のいずれを更新用とするかの指示、SEL90に対しLUT−A87とLUT−B89のいずれの出力を採用するかの指示などを行う。適合判定部102は、FIFO74から出力される画素データが、LUT−A87またはLUT−B89に適合しているか(変換可能な範囲に含まれるか)を判定する。タグデータ106は、部分LUTの更新を行った場合に、タグデータ106を対応する値に変更する処理を行う。タグデータ106は、部分LUTに含まれる範囲の情報を与えるデータである。適合判定部102における適合性の判定は、画素データに対応するタグデータを参照して行われる。
図7は、部分LUT選択制御部80の選択動作を説明する表である。列110と列112は、適合判定部102によるLUT−A87とLUT−B89の適合結果を表している。部分LUT選択制御部80は、この適合結果に基づいて処理を行うものであり、列114は部分LUTに対する処理を示しており、列116はFIFOに対する処理態様を示している。
例えば、色変換対象となる画素データがLUT−A87に適合、LUT−B89には不適合である場合には、LUT−A87が参照対象と採用され、その旨の指令が指示処理部100からSEL90に送られる。そして、LUT−B89は更新用となり、LUT−A87よりも優先的に更新されるべき旨の指令が部分LUT予測部82に送られる。また、FIFO74に対しては、通過の指令、つまり読み出しを継続する指令が行われる。なお、入力された画素データが、LUT−A87とLUT−B89の両方に適合した場合にも、ここに示した場合と同様の処理が行われる。他方、入力された画素データが、LUT−A87に不適合、LUT−B89に適合する場合には、これとは逆の態様で処理が行われる。
これに対し、LUT−A87とLUT−B89の両方に不適合であった場合には、LUT−B89を直ちに更新する指令が部分LUT予測部82を経由してDRAM制御部84に送られる。そして、LUT−A87は更新対象となり、次回以降にLUT−B89よりも優先的に更新されるべき旨の指令が部分LUT予測部82に送られる。また、FIFO74に対しては、LUT−B89の更新が終了するまでは、一旦読み出しを中止するべき旨の指令がなされる。
図8は、予測手段としての部分LUT予測部82の構成を説明するブロック図である。部分LUT予測部82は、予測画素データ演算部120、予測時間変更部122、ヒット率評価部126、及び更新処理部124が設けられている。予測画素データ演算部120は、図4を用いて説明したように、入力済みの複数の画素データを基に線形補間を行って、適当な時間後に入力される画素データである予測画素データを求める。予測時間変更部122は、予測画素データ演算部120がどれだけ先の予測画疎データを求めるかを決める予測時間の変更を行う。更新処理部124は、予測画素データ演算部120の予測結果に基づいて、部分LUTを更新するか否か、LUT−A87とLUT−B89のいずれを更新するか、どの範囲をカバーする部分LUTに更新するかなどを決定する。そして、変更手段としてのDRAM制御部84に対し指示を行う。また、ヒット率評価部126は、部分LUT選択制御部80からの情報に基づいて、入力された画素データが参照部76に設定された部分LUTに適合した度合い(これをヒット率と呼ぶ)を評価する。そして、ヒット率に基づいて、予測時間変更部122に予測時間の変更を行わせるか否か決定する。ヒット率評価部126及び予測時間変更部122は、予測態様変更手段の例である。
続いて、図5〜図8に示した構成の動作について説明する。リコンフィギュラブルプロセッサ34の参照処理部70に対しては、RAM16などから画像を構成する画素データが順次入力される。シフトレジスタ72では、その時点で最も新しい(後から入力された)画素データIN0をFIFOに出力する。画素データIN0は、参照部76に入力され、部分LUTに対応するアドレスに変換されて、LUT−A87とLUT−B89に入力される。そして、LUT−A87とLUT−B89は、入力されたアドレスに対応するCMYKの各成分のデータをSEL90に出力する。そして、SEL90で選択されたデータは画像処理部78に出力され、必要な補間処理を受けた後に、RAM16などに出力される。
ここで、この過程における部分LUT選択制御部80の制御について、図9を用いて説明する。部分LUT選択制御部80では、FIFO74による画素データIN0の入力(及び出力)が開始されると(S10)、タグデータ106を参照した上で、適合判定部102が部分LUTの適合性を判定する。図9の例では、LUT−B89が更新用の部分LUTに設定されていることを過程しており、まず、画素データIN0がLUT−A87に適合するか否かが判定される(S12)。その結果、LUT−A87に適合する場合には、LUT−A87が採用される(S14)。そして、指示処理部100は、図7の表に示したように、SEL90に対しLUT−A87の出力を選択するように指示し、FIFO74に対しては読み込みの継続を指示する。なお、更新用の部分LUTはLUT−B89に設定されたまま変更されない。
他方、LUT−A87に適合しない場合には、LUT−B89に適合するか否かが判定される(S16)。そして、LUT−B89に適合した場合には、LUT−B89が採用され(S18)、SEL90に対してはLUT−B89からの出力を選択する指示がなされる。また、部分LUT予測部82に対しては、LUT−A87を更新用に設定する旨の指示が送られる(S20)。
LUT−B89にも適合しなかった場合には、SEL90に対しては、LUT−B89からの出力を選択するよう指示がなされる一方、FIFO74に対して読み込みの停止が指示される(S24)。そして、部分LUT予測部82を通じてLUT−B89の更新が行われ(S26)、更新が完了するとFIFO74に対し読み込み再開が指示される(S28)。最後に、LUT−A87が更新用に設定される(S30)。
続いて、図10を用いて、部分LUT予測部82の動作について説明する。画素データが参照処理部70に入力されると(S40)、シフトレジスタ72は、画素データIN0よりも前に入力された三つの画素データIN3,IN2,IN1(これらは連続して入力されたものでも、何個か置きに選択されたものでもよい)を生成し、部分LUT予測部82に入力する(S42)。予測画素データ演算部120では、画素データIN3,IN2,IN1を用いて、線形補間を行い、予測画素データM1〜M3を順次生成する(S44)。次いで、更新処理部124は、まずM1を選択して(S46)、更新用の部分LUTとM1との適合性を調べ、更新用LUTを更新する必要があるか否かを確認する(S48,S50)。その結果、更新の必要性がないと判定された場合には、M2,M3の順で同様の処理を繰り返す(S52,S54,S46)。そして、M3に対しても更新の必要性がないと判断されたときは、次の画素データの組を対象として同様の処理を繰り返す(S54,S42)。他方、更新の必要があると判定された場合には、更新処理部124は、どの範囲の部分LUTへと更新するかを決定し(S56)、DRAM制御部84に更新用の部分LUTを更新させる(S58)。なお、更新処理部124では、部分LUT選択制御部80から、適合する部分LUTがない旨の連絡を受けると、更新用の部分LUTに対する更新を行い、処理中の画素データIN0の値に適合するデータを設定する。
次に、図11と図12を用いて、部分LUT予測部82の予測時間変更部122及びヒット率評価部126の動作について説明する。図11は、動作の流れを表すフローチャートであり、図12は、図4に対応する模式的な説明図である。
図11に示すように、予測時間変更部122は、はじめ、予測時間をTαサイクル(制御信号のサイクルで時間を表現している)に設定して予測を行う。予測時間のTαサイクルは、予測の結果、部分LUTの更新を行うことになった場合に必要となる所要時間に基づいて決められているおり、例えば所要時間と同じサイクル数(部分LUTの大きさにもよるが1000サイクル程度)に設定される。図12に示した例では、画素データIN3,IN2,IN1の線形補間の結果、予測時間をTαサイクルの後には、予測画素データMαが入力されると予測されている。この予測結果は、実際に入力される画素データINαとは大きく相違している。このため、画素データINαは、その時点で参照部76に設定されているLUT−A87とLUT−B89のいずれにも適合せず、ミスヒットが発生することになる。予測時間変更部122は、このようなミスヒットがY回中X回以上発生するまでは、予測時間をTαにサイクル維持する(S62)。そして、ミスヒットがY回中X回以上発生した場合には、予測時間変更部122は、予測画素データ演算部120における予測時間をTαサイクルよりも短いTβサイクルに変更する(S64)。これは、図12に示した例では、画素データIN3,IN2,IN1を線形補間してTβ時間後に予測画素データMβが入力されると予測することに相当する。これにより、一般的には、実際に入力される画素データINβとの差(予測誤差)が減少する。
その後、Y回連続してヒットに成功(ミスヒットがない)場合には(S66)、再び予測時間をTαに設定し、予測に要する時間の節約が図られる。他方、Y回中X回以上ミスヒットが発生しない場合には、予測時間Tβが維持され(S68)、再びY回中X回以上ミスヒットが発生した場合には、予測時間変更部122は、予測画素データ演算部120における予測時間をTβよりも短いTγサイクルに変更する(S70)。図12に示したように、一般に、予測時間がTγサイクルの場合における予測画素データMγと実際に入力される画素データINγとの差は、予測時間がTβサイクルの場合に比べてさらに小さくなり、ミスヒットも減少する。そして、Y回連続してヒットに成功した場合には、予測時間がTβサイクルに戻される(S72)。予測時間をどの程度に変更するか、また、どのような条件を満たしたときに変更するかは、全体の所要時間を短縮化することを考えて決定される。
最後に、図13を用いて、リコンフィギュラブルプロセッサ34を再構成して、部分LUTの更新を行う例について説明する。図13(a)は、図5のリコンフィギュラブルプロセッサ34に対応する図である。すなわち、参照処理部70、参照部76、及び画像処理部78が設けられ、参照部76には部分LUTとしてのLUT−A87とLUT−B89が構築されている。ここで、部分LUT予測部82によって、LUT−B89を更新すべき旨の判定が下されたとする。このとき、図5に示した例では、リコンフィギュラブルプロセッサ34の外部にあるDRAM制御部84によって、RAM16に格納されたLUT92の一部が読み出され、データメモリ86,88の所定のアドレスに格納された。これに対し、図13に示した例では、リコンフィギュラブルプロセッサ34の再構成が行われ、図13(b)に示す論理が設定される。具体的には、図13(b)では、参照処理部70と画像処理部78とが、図13(a)と同じ位置に設けられている。また、参照部76中のLUT−A87は、再構成後まで値が保全されている。そして、参照処理部70によってLUT−A87を参照し、参照結果を画像処理部78に出力する結線論理も図13(a)と同様にして設定されている。しかし、参照処理部70によってLUT−B89を参照し、参照結果を画像処理部78に出力する結線論理は、図13(b)では設定されていない。
代わりに、図13(b)では、リコンフィギュラブルプロセッサ34中の未使用のALUエレメントの論理仕様を変更することにより、部分LUTセット部130が設定されている。この部分LUTセット部130は、図5に示したRAM16からLUT92の一部のデータを入力し、適当なアドレスを設定してLUT−B89を更新するものである。部分LUTセット部130は、その論理をハードウエア的に構築されているため、ソフトウエア的な処理に比べて高速に(例えば書き込み時間が1/1000程度になる)LUT−B89の更新を行う。そして、これと並列的に、参照処理部70によるLUT−A87の参照と、画像処理部78による参照結果を利用した色変換処理が行われる。やがて、LUT−B89の更新が完了すると、再び図13(a)に示す論理が設定され、LUT−A87とLUT−B89を選択した色変換処理が行われる。
本実施の形態にかかる画像処理装置の構成例を示す概略図である。 LUTを用いた色変換の例を説明する図である。 LUTと入力される画素データとの関係を例示する模式図である。 入力される画素データのデータ特性の予測原理を例示する図である。 リコンフィギュラブルプロセッサに設定される論理の例を示す図である。 部分LUT選択制御部の構成例を説明する図である。 部分LUT選択制御部で行われる判定結果と処理態様を示す表である。 部分LUT予測部の構成例を説明する図である。 部分LUT選択制御部における処理の流れを示すフローチャートである。 部分LUT予測部における処理の流れを示すフローチャートである。 予測時間を変更する制御について説明するフローチャートである。 予測時間の変更について説明する模式図である。 リコンフィギュラブルプロセッサの再構成例について説明する図である。
符号の説明
10 画像処理装置、11 内部バス、12 CPU、14 ROM、16 RAM、18 HDD、20 再構成可能システム、21 UI、22 スキャナ、24 プリンタ、26 CDD、28 ネットワークインタフェース、30 ネットワーク、32 コンフィグメモリ、34 リコンフィギュラブルプロセッサ、40 アドレス変換処理部、42〜48,86,88 データメモリ、50〜56 補間処理部、70 参照処理部、72 シフトレジスタ、76 参照部、78 画像処理部、80 部分LUT選択制御部、82 部分LUT予測部、84 DRAM制御部、87 LUT−A、89 LUT−B、90 SEL、100 指示処理部、102 適合判定部、104 タグデータ変更部、106 タグデータ、120 予測画素データ演算部、122 予測時間変更部、124 更新処理部、126 ヒット率評価部、130 部分LUTセット部。

Claims (5)

  1. 処理対象データを入力する入力手段と、
    前記処理対象データがとり得るすべてのデータ値の各々について当該データ値に対応する参照データが登録された表である参照表を記憶する第1の記憶手段と、
    参照表を構成する複数の参照データの部分集合である部分参照表を複数記憶する第2の記憶手段であって、前第2の記憶手段の容量は前記参照表全体のデータ量よりも小さいため前記第2の記憶手段に記憶された複数の部分参照表は前記参照表全体のうちの一部しかカバーしておらず、かつ前記第2の記憶手段に記憶された複数の部分参照表は、それぞれ当該部分参照表に含まれる参照データに対応する前記データ値の範囲であるデータ範囲が互いに異なっていることを特徴とする第2の記憶手段と、
    入力した処理対象データの前記データ値に応じて、前記第2の記憶手段に記憶された前記複数の部分参照表の中に当該データ値に対応する前記データ範囲を持つ部分参照表がある場合には、当該部分参照表を選択部分参照表として選択し、前記第2の記憶手段に記憶された前記複数の部分参照表の中に当該データ値に対応するデータ範囲を持つ部分参照表がない場合には、当該データ値に対応するデータ範囲を持つ部分参照表を前記参照表から取得し、前記第2の記憶手段に記憶されている前記複数の部分参照表のうちのいずれかを当該取得した部分参照表に変更してから、前記第2の記憶手段内にある当該変更された部分参照表を選択部分参照表として選択し、選択した当該選択部分参照表から当該データ値に対応する参照データを参照する参照手段と、
    前記入力した処理対象データの前記データ値に応じて前記参照手段が前記第2の記憶手段内の前記選択部分参照表から参照した前記参照データを用いて、前記処理対象データに対するデータ処理を行うデータ処理手段と、
    前記入力した処理対象データのデータ値から、今後入力される処理対象データの前記データ値を予測する予測手段と、
    前記予測手段が予測した前記今後入力される処理対象データの前記データ値が、前記第2の記憶手段に記憶された前記複数の部分参照表のいずれの前記データ範囲にも含まれない場合に、前記今後入力される処理対象データの前記データ値を含んだ前記データ範囲に対応する部分参照表を前記参照表から取得し、前記第2の記憶手段に記憶された前記複数の部分参照表のうち、前記選択部分参照表以外の一又は二以上の部分参照表を、当該取得した部分参照表に変更する変更手段と、
    論理仕様を再構成可能な再構成可能回路と、
    前記再構成可能回路の論理仕様を再構成する再構成手段と、
    を備え
    前記参照手段、前記データ処理手段、及び前記変更手段による各処理の少なくとも一部は、前記再構成可能回路に設定された論理に基づいて行われ、
    前記再構成手段は、前記予測手段が予測した前記今後入力される処理対象データの前記データ値が、前記記憶手段に記憶された前記複数の部分参照表のいずれの前記データ範囲にも含まれない場合に、前記再構成可能回路を再構成して、変更対象となった前記部分参照表を前記変更手段が変更する論理を設定し、かつ、前記部分参照表が変更された後に前記再構成可能回路を再構成して、変更された前記部分参照表を前記参照手段が参照する論理、及び、変更された前記部分参照表の参照結果に基づいて前記データ処理手段がデータ処理を行う論理を設定する、
    ことを特徴とするデータ処理装置。
  2. 請求項に記載のデータ処理装置において、
    前記再構成可能回路は、論理仕様を変更可能な複数の記憶回路を備え、
    前記第2の記憶手段は、二以上の前記論理回路に一又は二以上の前記部分参照表を記憶し、
    前記変更手段は、前記選択部分参照表が記憶されていない前記論理回路に記憶された一又は二以上の前記部分参照表を変更する、
    ことを特徴とするデータ処理装置。
  3. 請求項に記載のデータ処理装置において、
    前記記憶回路の容量は前記参照表の大きさに比べて小さい、ことを特徴とするデータ処理装置。
  4. 請求項1に記載のデータ処理装置において、
    前記参照手段により選択されるべき部分参照表が前記第2の記憶手段により記憶されていない場合に、前記予測手段による前記処理対象データの予測態様を変更する予測態様変更手段を備える、ことを特徴とするデータ処理装置。
  5. 請求項1乃至のいずれか1項に記載のデータ処理装置において
    前記処理対象データは、画像を構成する画素データであり、
    前記データ値は、前記画素データの画素値である、ことを特徴とするデータ処理装置。
JP2007186850A 2007-07-18 2007-07-18 データ処理装置及びデータ処理プログラム Expired - Fee Related JP5034738B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007186850A JP5034738B2 (ja) 2007-07-18 2007-07-18 データ処理装置及びデータ処理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007186850A JP5034738B2 (ja) 2007-07-18 2007-07-18 データ処理装置及びデータ処理プログラム

Publications (2)

Publication Number Publication Date
JP2009025954A JP2009025954A (ja) 2009-02-05
JP5034738B2 true JP5034738B2 (ja) 2012-09-26

Family

ID=40397720

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007186850A Expired - Fee Related JP5034738B2 (ja) 2007-07-18 2007-07-18 データ処理装置及びデータ処理プログラム

Country Status (1)

Country Link
JP (1) JP5034738B2 (ja)

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02260027A (ja) * 1989-03-31 1990-10-22 Canon Inc 印刷装置
JP3305266B2 (ja) * 1998-07-24 2002-07-22 キヤノン株式会社 画像処理方法
JP2002057910A (ja) * 2000-08-07 2002-02-22 Canon Inc 画像処理装置及び画像処理方法並びに記憶媒体
JP2004274131A (ja) * 2003-03-05 2004-09-30 Canon Inc 色変換装置
JP3756888B2 (ja) * 2003-04-17 2006-03-15 株式会社東芝 グラフィックスプロセッサ、グラフィックスカード及びグラフィックス処理システム
JP4284520B2 (ja) * 2003-12-02 2009-06-24 富士ゼロックス株式会社 画像形成装置、校正方法及びそのプログラム
JP2007124230A (ja) * 2005-10-27 2007-05-17 Seiko Epson Corp 画像形成装置、色変換装置、及び色変換ルックアップテーブルの作成方法
JP2007158968A (ja) * 2005-12-07 2007-06-21 Canon Inc 情報処理装置及び情報処理方法

Also Published As

Publication number Publication date
JP2009025954A (ja) 2009-02-05

Similar Documents

Publication Publication Date Title
JP5504985B2 (ja) データ処理装置
JP2010118081A (ja) 動作合成ツールにおける配列変換
JPH06131155A (ja) 再構成可能な順次処理装置
JP2010175738A (ja) 表示制御装置および表示制御方法
JP2012234337A (ja) 画像データ処理装置及びプログラム
KR100823379B1 (ko) 화상 처리를 위한 데이터 필터링 장치, 방법 및 시스템
US20060195684A1 (en) Reconfigurable data processing device and method
JP5023856B2 (ja) 演算処理装置及び演算処理プログラム
US20100228958A1 (en) Information processing apparatus, method for controlling information processing apparatus and computer readable medium
JP5776306B2 (ja) 画像データ処理装置及びプログラム
JP5034738B2 (ja) データ処理装置及びデータ処理プログラム
JP5277615B2 (ja) データ処理装置及びデータ処理プログラム
JP2006107532A (ja) 情報処理システムおよび情報処理方法
WO2021070303A1 (ja) 演算処理装置
WO2017010127A1 (ja) 情報処理装置、方法及びプログラム
JPWO2008010599A1 (ja) メモリアクセス制御装置、メモリアクセス制御方法、データ格納方法及びメモリアクセス制御プログラム
JP2006302132A (ja) 信号処理装置及び再構成可能論理回路装置及び再構成可能順序回路
JP5205843B2 (ja) 演算処理装置及び演算処理プログラム
US7996657B2 (en) Reconfigurable computing circuit
JP5835498B2 (ja) Lsi及びlsi製造方法
JP3836109B2 (ja) プログラマブル論理回路制御装置、プログラマブル論理回路制御方法及びプログラム
JP2002229771A (ja) ポインタレジスタ装置およびポインタ値の更新方法
JPH11232309A (ja) 情報処理システム
JP6919072B2 (ja) 画像処理装置
KR102290229B1 (ko) 병렬 처리를 위한 데이터 생성 장치

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100622

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110829

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110906

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111031

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120313

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120509

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: 20120605

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: 20120618

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

Free format text: PAYMENT UNTIL: 20150713

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees