(57)【要約】【課題】  印刷バッファの容量が、出力解像度や色数によらず一定となるようにする。【解決手段】  副走査方向に複数のノズルを有する印刷ヘッドが、各色材に対応して主走査方向に複数配された印刷装置において、該各印刷ヘッドを動作させるための動作データを出力する画像処理装置であって、色空間変換処理が施された描画データを、前記色材ごとの濃度データに分解する色分解部３０４と、前記濃度データを、一定量蓄積する印刷バッファ３０５と、前記蓄積された一定量の濃度データを前記色材ごとに読み出し、それぞれの該濃度データを、前記動作データとしての解像度および階調数に変換する量子化部３０６と、量子化部３０６により変換された前記各濃度データを、前記色材ごとの前記動作データとして、前記印刷ヘッドに出力する出力手段とを備える。【選択図】  図３
2008012866.tif 000002
【特許請求の範囲】
【請求項１】
副走査方向に複数のノズルを有する印刷ヘッドが、各色材に対応して主走査方向に複数配された印刷装置において、該各印刷ヘッドを動作させるための動作データを出力する画像処理装置であって、
色空間変換処理が施された描画データを、前記色材ごとの濃度データに分解する分解手段と、
前記濃度データを、一定量蓄積する蓄積手段と、
前記蓄積された一定量の濃度データを前記色材ごとに読み出し、それぞれの該濃度データを、前記印刷ヘッドにおける解像度および階調数に変換する変換手段と、
前記変換手段により変換された前記各濃度データを、前記色材ごとの前記動作データとして、前記印刷ヘッドに出力する出力手段と
を備えることを特徴とする画像処理装置。
【請求項２】
前記蓄積手段は、前記印刷ヘッドの主走査方向への走査１回分の動作データに相当する前記濃度データを蓄積することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記蓄積手段は、前記印刷ヘッドの主走査方向への走査１回分の動作データのうち、前記各印刷ヘッドのノズル一列分の動作データに相当する前記濃度データを蓄積することを特徴とする画像処理装置。
【請求項４】
前記分解手段における動作速度は、前記印刷ヘッドの動作速度よりも高速であり、前記蓄積手段は、ＦＩＦＯ方式で前記濃度データを前記分解手段より入力し前記変換手段に対して出力することを特徴とする請求項３に記載の画像処理装置。
【請求項５】
副走査方向に複数のノズルを有する印刷ヘッドが、各色材に対応して主走査方向に複数配された印刷装置において、該各印刷ヘッドを動作させるための動作データを出力するための画像処理方法であって、
色空間変換処理が施された描画データを、前記色材ごとの濃度データに分解する分解工程と、
前記濃度データを、一定量蓄積する蓄積工程と、
前記蓄積された一定量の濃度データを前記色材ごとに読み出し、それぞれの該濃度データを、前記動作データとしての解像度および階調数に変換する変換工程と、
前記変換工程により変換された前記各濃度データを、前記色材ごとの前記動作データとして、前記印刷ヘッドに出力する出力工程と
を備えることを特徴とする画像処理方法。
【請求項６】
請求項５に記載の画像処理方法をコンピュータによって実現させるための制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷装置に配された画像処理装置における画像処理技術に関するものである。
【背景技術】
【０００２】
印刷装置において印刷を行う際に用いられる画像処理装置の機能として、従来より、図１に示す各機能が知られている。
【０００３】
同図において、１０１は画像構成部であり、受信した印刷データを描画展開し一連の画素データからなる描画データを生成する。１０２は画像バッファであり、画像構成部１０１において生成された描画データを一時的に格納する。
【０００４】
１０３は色補正部であり、画像バッファ１０２に格納された描画データを画素データ単位で読み出し、印刷データの色空間である入力色空間から印刷装置の色空間である出力色空間へと変換する色空間変換処理を行う。１０４は色分解部であり、色空間変換処理された描画データを、色材ごとの濃度データ（色材別濃度データ）に変換する。このような変換方法の一例として、特許文献１に記載されているようにキャッシュ・メモリを用いる構成が提案されている。
【０００５】
１０５は量子化部であり、色材別濃度データを印刷部１０７の解像度および階調数における色材量データ（印刷部１０７の印刷ヘッドを動作させるための動作データ）に変換する。１０６は印刷バッファであり、印刷部１０７における所定単位の動作（インクジェット方式の印刷部にあっては一走査分の処理、電子写真方式の印刷部にあっては、１ページ分の処理）に必要な色材量データを蓄積する。これにより印刷部１０７では所定単位の動作を連続して行うことができる。
【０００６】
１０７は印刷部であり、色材量データに基づいて、紙などの媒体上に印刷を行う。印刷方式としては、例えば、インクジェット方式や電子写真方式等がある。
【０００７】
ここで、上記印刷バッファ１０６の容量は、印刷部１０５の構成に依存する。図２はインクジェット方式の印刷部の概略構成を示す図である。同図に示すように、主走査方向に各色の印刷ヘッドが配され、各印刷ヘッドには、副走査方向に複数のノズルが配されている。このため、印刷部１０７の一走査分の色材量データのデータ量は、（主走査方向のドット数）×ノズル数×色数（プレーン数）となる。なお、主走査方向のドット数は、印刷幅と主走査方向の出力解像度とにより決まる。
【特許文献１】特開２００４−２７４１３１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
一方、印刷装置では、出力画質の向上を図るべく、出力解像度の高解像度化、インクの多色化が進められている。このため、従来は、出力解像度が６００ｄｐｉ×６００ｄｐｉで、インクの色数が、シアン（Ｃ）、マゼンタ（Ｍ）、イエロ（Ｙ）、ブラック（Ｋ）の４色が一般的であったが、最近では、出力解像度が２４００ｄｐｉ×２４００ｄｐｉのものが登場してきている。更には、４８００ｄｐｉ×４８００ｄｐｉのものも登場してきている。また、インクの色数についても、淡シアン、淡マゼンタ、赤、緑を加えた８色のものが登場してきている。
【０００９】
このように、出力解像度の高解像度化、インクの多色化が進むにつれ、印刷バッファ１０６において必要となる容量が飛躍的に増大してきている。上述のように主走査方向の出力解像度が６００ｄｐｉで色数が４色の場合に比べて、主走査方向の出力解像度が４８００ｄｐｉで、色数が８色の場合、ノズル数が同じであるとすると、一走査あたりの色材量データのデータ量は１６倍になるからである。このため、出力画質の向上に伴う印刷バッファのコストアップの問題が顕在化してきている。
【００１０】
本発明は、上記課題に鑑みてなされたものであり、印刷部における所定単位の動作に必要なデータを蓄積する印刷バッファの容量が出力解像度や色数によらず一定となるように構成することで、出力画質の向上に伴うコストアップの抑制を図ることを目的とする。
【課題を解決するための手段】
【００１１】
上記の目的を達成するために本発明に係る画像処理装置は以下のような構成を備える。即ち、
副走査方向に複数のノズルを有する印刷ヘッドが、各色材に対応して主走査方向に複数配された印刷装置において、該各印刷ヘッドを動作させるための動作データを出力する画像処理装置であって、
色空間変換処理が施された描画データを、前記色材ごとの濃度データに分解する分解手段と、
前記濃度データを、一定量蓄積する蓄積手段と、
前記蓄積された一定量の濃度データを前記色材ごとに読み出し、それぞれの該濃度データを、前記動作データとしての解像度および階調数に変換する変換手段と、
前記変換手段により変換された前記各濃度データを、前記色材ごとの前記動作データとして、前記印刷ヘッドに出力する出力手段とを備える。
【発明の効果】
【００１２】
本発明によれば、印刷部における所定単位の動作に必要なデータを蓄積する印刷バッファの容量が、出力解像度や色数によらず一定となり、出力画質の向上に伴うコストアップを抑制することが可能となる。
【発明を実施するための最良の形態】
【００１３】
以下、必要に応じて添付図面を参照しながら、本発明の各実施形態を詳細に説明する。
【００１４】
［第１の実施形態］
図３は、本発明の第１の実施形態にかかる画像処理装置を備える印刷装置の概略構成を示す図である。図１を用いて示した従来の印刷装置が有する画像処理装置の例と異なる点は、印刷バッファ３０５（図１の印刷バッファ１０６）が量子化部３０６（図１の量子化部１０５）の前段に配されている点である。以下、各部の機能について、順を追って説明する。
【００１５】
＜印刷装置の各部の機能＞
３０１は画像構成部であり、受信した印刷データを描画展開し一連の画素データからなる描画データを生成する。ここでは、従来と同様、６００ｐｐｉの描画データを生成するものとする。
【００１６】
３０２は画像バッファであり、画像構成部１０１において生成された描画データを一時的に格納する。画像バッファ３０２は２つの領域によって構成される、いわゆるダブル・バッファリング機能を備えている。これは、一方の領域に画像構成部３０１が生成した画像データを格納すると同時に、従前に格納された画像データを色補正部３０３が他方の領域より取り出して処理を行うことができるようにするためである。
【００１７】
３０３は色補正部であり、画像バッファ３０２より所定の順序で取り出した描画データに対し色補正処理を行う。具体的には、描画データの近傍の格子点における色補正格子点データを用いて、補間処理を行う。３０８は色補正テーブルであり、所定の格子点における色補正結果（色補正格子点データ）を保持している。
【００１８】
３０４は色分解部であり、色補正処理が施された描画データに対して、対応する色材別濃度データを得る。色材別濃度データは、色補正処理された描画データ近傍の格子点における色分解格子点データを用いて補間演算を行うことにより算出する。ここでは、８色に分解するものとする。３０９は色分解テーブルであり、所定の格子点における色材別濃度データ（色分解格子点データ）を保持している。
【００１９】
３０４は印刷バッファであり、印刷部３０７における一走査分の処理に必要な色材別濃度データを蓄積する。印刷バッファ３０５は、画像バッファ３０２と同様、２つの領域によって構成されている。これは、一方の領域に色分解部３０４が色材別濃度データを格納すると同時に、従前に格納された色材別濃度データを量子化部３０６が他方の領域より取り出すことができるようにするためである。
【００２０】
色補正部３０３および色分解部３０４より出力される色材別濃度データの解像度は、どちらも画像構成部３０１に入力される印刷データと同じである。よって、印刷バッファ３０５に格納する色材別濃度データの解像度は、画像構成部３０１で生成した描画データと同一である（例えば、６００×６００ｐｐｉ）。また、画像構成部３０１から色分解部３０４までの各部における描画データの階調数は、各部で同一である必要はないが、良好な画質を得るためには少なくとも２５６値（８ビット）以上であることが望ましい。
【００２１】
３０６は量子化部である。量子化部３０６は、印刷バッファ３０５に蓄積された色材別濃度データを読み出し、該色材別濃度データの解像度および階調数を、印刷部３０７の解像度および階調数へと変換し、色材量データ（印刷部３０７の印刷ヘッドを動作させる動作データ）を生成する。ここでは入力解像度が６００×６００ｐｐｉ、階調数が２５６値（８ビット）、出力解像度が４８００（主走査）×２４００（副走査）ｄｐｉ、階調数が２階調（１ビット）であるとする。
【００２２】
量子化部３０６は、色材別にそれぞれ独立に動作するものが色数（８色）分並列に設けられている。量子化部３０６は、入力の色材別濃度データと、量子化閾値行列３１０のうち出力画素位置に対応した要素との大小判定によって出力値を決定する。量子化閾値行列３１０の行数、列数は印刷ヘッドのノズル数、もしくは、印刷幅と比較してはるかに小さいものであり、所定の周期で巡回して参照することによって印刷領域全体をカバーする。
【００２３】
つまり、量子化部３０６は印刷部３０７の動作と同期したリアルタイム性を保証することが比較的容易である（なお、量子化部３０６における処理の詳細は後述）。このため、印刷バッファは必ずしも量子化部３０６と印刷部３０７との間に配する必要がない。そこで、本実施形態にかかる印刷装置では、印刷部３０７における一走査分の処理に必要なデータを蓄積するための印刷バッファを量子化部３０６の前段に配することとした。これにより、印刷バッファ３０５では色材量データではなく、色材別濃度データを蓄積すればよいこととなり、蓄積すべきデータ量の削減を図ることが可能となる。
【００２４】
３０７は印刷部であり、色材量データに基づいて、紙などの媒体上に印刷を行う。印刷方式としては、例えば、インクジェット方式や電子写真方式等がある。
【００２５】
＜量子化部３０６における処理の流れ＞
図４は、量子化部３０６における量子化処理の流れを示すフローチャートである。ステップＳ４０１では、量子化処理の初期化を行うとともに印刷部３０７の走査開始との同期をとる。以下の例では印刷領域の大きさを３８４００×２６４００ドット（８×１１ｉｎｃｈ）、印刷ヘッドのノズル数を７６８ドットとする。
【００２６】
列アドレスＸを０、印刷幅カウンタＷを印刷する幅に対応するドット数である３８４００に設定する。また、主走査変倍率Ｎを主走査方向の入／出力解像度の比である４８００ｄｐｉ／６００ｄｐｉ、副走査変倍率Ｍを副走査方向の入／出力解像度の比である２４００ｄｐｉ／６００ｄｐｉに設定する。
【００２７】
ステップＳ４０２からステップＳ４０７では、副走査方向に配列された印刷ヘッドのノズル数分（７６８ドット）の量子化処理を行う。
【００２８】
ステップＳ４０２では、行アドレスＹを０、出力高さカウンタＨを印刷ヘッドのノズル数である７６８とし、列繰り返しカウンタＲを０に初期化する。
【００２９】
ステップＳ４０３では、印刷バッファ３０４から列アドレスＸ、行アドレスＹに相当する１個の濃度値、および、量子化閾値行列３１０から出力高さカウンタＨ、印刷幅カウンタＷによって決まるＭ個の量子化閾値を取得する。
【００３０】
ただし、列アドレスＸおよび行アドレスＹは、印刷バッファ３０５、もしくは、量子化閾値行列３１０におけるメモリ素子の行アドレス、および、列アドレスと同一であることを意味するものでない。
【００３１】
ステップＳ４０４は、ステップＳ４０３で取得した濃度値１個につきＭドット数の量子化処理を行うものである。ステップＳ４０３で取得した濃度値とＭドット数の量子化閾値との比較を行い、Ｍドット数の量子化結果を得る。比較の結果、濃度値が量子化閾値を超えた場合は１を、そうでない場合は０を量子化結果とする。
【００３２】
ステップＳ４０５では、出力高さカウンタＨから１回の量子化処理ドット数Ｍを減じ、また、行アドレスＹを更新する。
【００３３】
ステップＳ４０６では、出力高さカウンタＨの値を検査し、必要であれば印刷ヘッドのノズル数に相当する回数の処理を行うためステップＳ４０３〜Ｓ４０５を繰り返す。
【００３４】
ステップＳ４０７は、主走査方向の変倍率Ｎ回の処理につき１回だけ列アドレスＸを更新するためのものである。
【００３５】
すなわち、０＜Ｒ＜Ｎの間はステップＳ４０３〜４０５の処理は同一の列アドレスＸにより参照される濃度値を用いることになる。ただし、ステップＳ４０８で印刷幅カウンタＷが更新されているため量子化閾値は同一とは限らない。
【００３６】
ここまでステップＳ４０２以下の処理により、副走査方向に配列されたＭドット数の量子化処理の結果が得られた。
【００３７】
ステップＳ４０８では、印刷部３０７との同期をとりながら結果を出力する。ステップＳ４０９では、印刷幅カウンタＷを検査することにより、印刷幅の回数だけステップＳ４０２以下を繰り返す。以上が、１走査・１色の量子化処理となる。
【００３８】
以上のように量子化部３０６は定型的な処理の繰り返しであるため、印刷部３０７の動作と同期したリアルタイム性を保証することが比較的容易である。このため、量子化部３０６と印刷部３０７との間に印刷バッファを配さなくとも、量子化部３０６の前段に配しさえすれば、印刷部３０７に対しては所定単位の動作に必要なデータを連続して提供することが可能となる。
【００３９】
なお、色別に印刷ヘッドの主走査方向に対してオフセットを持たせるためには、たとえばステップＳ４０１において色毎に同期のタイミングをずらすようにすればよい。もしくは、ステップＳ４０３において列アドレスＸに色毎のオフセットを与えることで印刷バッファ３０５から異なる位置の濃度値を取得するようにすれば良い。
【００４０】
＜印刷バッファ３０５を量子化部３０６の前段に配したことによる作用＞
このように、印刷バッファ３０５を量子化部３０６の前段に配することで、印刷バッファ３０５の容量は以下のように作用する。
【００４１】
すなわち、１走査あたりの入力と出力のデータ量を比較すると、画素数でＭ×Ｎ倍（８×４）、階調数で１／８倍となり、量子化処理によりデータ量が４倍に増大していることになる。このため、印刷バッファ３０５に必要な容量は、量子化部３０６の前段に設けた場合は、後段に設けた場合の１／４でよいことがわかる。
【００４２】
以上の説明のとおり、本実施形態によれば、印刷部の主走査方向の出力解像度や色数（プレーン数）が増大しても、その影響範囲を量子化処理までにとどめることが可能となる。この結果、印刷バッファに必要な容量は印刷部の出力解像度や色数（プレーン数）に依存しなくなり、印刷バッファの容量の増大を回避することが可能となる。
【００４３】
［第２の実施形態］
上記第１の実施形態では、印刷バッファ３０５を量子化部３０６の前段に配することで、印刷バッファの容量の増大を回避することとしたが、本発明は特にこれに限定されない。例えば、印刷バッファに格納する色材別濃度データを一走査分ではなく、それよりも少ない列数とするよう構成してもよい。
【００４４】
図５は、本実施形態にかかる画像処理装置を備える印刷装置の機能構成を示す図である。第１の実施形態（図３）との差異は、印刷バッファとして、印刷バッファ３０５より少ない列数のＦＩＦＯ（列バッファ５０５）を用いている点である。列バッファ５０５に必要な容量は、印刷部５０７と色分解部５０４の処理性能（速度）の比、および、量子化部５０６における変倍率によって決まる。
【００４５】
そして、色分解部５０４が印刷部５０７に対して十分高速に動作するならば、列バッファの容量は１列分で良いこととなり、列バッファ５０５は第１の実施形態の印刷バッファ３０４よりも少ない容量で構成することが可能である。
【００４６】
なお、色分解部５０４の動作を十分高速にした場合、色補正部５０３の動作速度とのバランスから、図５に示すように、画像バッファ５０２は、色補正部５０３と色分解部５０４との間に配することが望ましい。
【００４７】
［第３の実施形態］
上記第２の実施形態では、色分解部５０４が印刷部５０７に対して十分高速に動作することを前提としたが、色分解部５０４が印刷部５０７に対して常に十分高速に動作するとは限らない。そして、色分解部５０４が印刷部５０７に対して低速となった場合、印刷部へ色材量データの供給がアンダーランとなることが考えられる。
【００４８】
本実施形態にかかる画像処理装置は、このようなアンダーランの発生を回避するよう構成したものである。
【００４９】
図６は、本発明の第３の実施形態にかかる画像処理装置を備える印刷装置の機能構成を示す図である。同図に示すように、画像構成部６０１、色補正部６０３、色分解部６０４はそれぞれ、メモリバス６１１を介して共有メモリ６０２に接続されている。なお、メモリバス６１１には図示した各部のほか、印刷データを受信する受信部や制御のためのプロセッサ等（不図示）が接続されているものとする。
【００５０】
共有メモリ６０２には、画像構成部６０１へ入力される印刷データや、色補正部６０３が参照する色補正テーブル、色分解部６０４が参照する色分解テーブルが格納されている。図６のような構成にすることで、個々にメモリを配置するよりもコスト低減が可能であるというメリットがある。
【００５１】
ここで、列バッファ６０５に必要な容量は、第２実施形態で説明したように、印刷部６０７と色分解部６０４の処理性能（速度）の比によっても変化する。そして、列バッファ６０５の容量を削減しようとする場合、色分解部６０４の性能を向上させる必要がある。しかし、色分解部６０４が例えば特許文献１で提案されているように、キャッシュを用いて処理を行う構成であった場合、処理対象となる描画データによってキャッシュのヒット率が変化するため性能が一定しないという問題がある。
【００５２】
このような問題に鑑みて、色分解部６０４は不図示の色分解性能予測部を備え、色補正部６０３での処理結果からキャッシュのヒット率を事前に見積り、色分解部６０４におけるキャッシュのヒット率を予測する。そして、一走査分の色分解部６０４におけるキャッシュのヒット率の低下が予測される場合には、画像構成部６０１に対して次走査以降についての画像構成を一時停止するための指示を出す。
【００５３】
画像構成部６０１が停止すると、色補正部６０３への入力が停止するため、色補正部６０３も停止する。よって、共有メモリ６０２のうち、印刷データと色補正テーブルへのアクセスが発生しなくなり、色分解部６０３が利用可能なメモリバス６１１の帯域が増加し、結果的に、色分解部６０４の性能を一時的に向上させることが可能になる。
【００５４】
以上のように色分解部６０４における性能が一定となるようにし、印刷部６０７への色材量データの供給においてアンダーランを回避する構成とすることにより、列バッファ６０４の容量を削減することが可能となる。
【００５５】
［他の実施形態］
なお、本発明は、複数の機器（例えばホストコンピュータ、インタフェース機器、リーダ、プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機、ファクシミリ装置など）に適用してもよい。
【００５６】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給するよう構成することによっても達成されることはいうまでもない。この場合、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することにより、上記機能が実現されることとなる。なお、この場合、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００５７】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピ（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることができる。
【００５８】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現される場合に限られない。例えば、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００５９】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、前述した実施形態の機能が実現される場合も含まれる。つまり、プログラムコードがメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって実現される場合も含まれる。
【図面の簡単な説明】
【００６０】
【図１】従来の印刷装置の機能構成を示すブロック図である。
【図２】インクジェット方式の印刷ヘッドの概略構成を示す図である。
【図３】本発明の第１実施形態にかかる画像処理装置を備える印刷装置の機能構成を示す図である。
【図４】印刷部と同期した量子化部の処理の流れを示す図である
【図５】本発明の第２の実施形態にかかる画像処理装置を備える印刷装置の機能構成を示す図である。
【図６】本発明の第３の実施形態にかかる画像処理装置を備える印刷装置の機能構成を示す図である。
【符号の説明】
【００６１】
３０１  画像構成部
３０２  画像バッファ
３０３  色補正部
３０４  色分解部
３０５  印刷バッファ
３０６  量子化部
３０７  印刷部
３０８  色補正テーブル
３０９  色分解テーブル
３１０  量子化閾値行列
５０１  画像構成部
５０２  画像バッファ
５０３  色補正部
５０４  色分解部
５０５  列バッファ
５０６  量子化部
５０７  印刷部
５０８  色補正テーブル
５０９  色分解テーブル
５１０  量子化閾値行列
６０１  画像構成部
６０２  共有メモリ
６０３  色補正部
６０４  色分解部
６０５  列バッファ
６０６  量子化部
６０７  印刷部
６０８  メモリバス
【図１】
2008012866.tif 000003
【図２】
2008012866.tif 000004
【図３】
2008012866.tif 000005
【図４】
2008012866.tif 000006
【図５】
2008012866.tif 000007
【図６】
2008012866.tif 000008