画面表示制御装置
【課題】圧縮データの画像メモリへの書込みを効率よく行うことのできる技術を提供する。
【解決手段】書込みラインと読出しラインが一致していても、当該ラインの圧縮データの読み出しにしたがってVRAM766に発生する画素単位の空き領域に、ラインバッファ762に保持されている画像データを圧縮部764により圧縮して形成された当該ラインの圧縮データを画素単位で書込む制御が書込/読出制御手段763により実行される。すなわち、1ライン分の圧縮データのVRAM766への書込期間や、画素単位でのVRAM766への圧縮データの書込みの可否を判定することにより、競合が生じるおそれのあるラインの圧縮データのVRAM766からの読出しが終了するを待機することなく、VRAM766に発生した空き領域へ画素単位での新しい圧縮データの書込みを行うことができ、圧縮データのVRAM766への書込みを効率よく行うことができる。
【解決手段】書込みラインと読出しラインが一致していても、当該ラインの圧縮データの読み出しにしたがってVRAM766に発生する画素単位の空き領域に、ラインバッファ762に保持されている画像データを圧縮部764により圧縮して形成された当該ラインの圧縮データを画素単位で書込む制御が書込/読出制御手段763により実行される。すなわち、1ライン分の圧縮データのVRAM766への書込期間や、画素単位でのVRAM766への圧縮データの書込みの可否を判定することにより、競合が生じるおそれのあるラインの圧縮データのVRAM766からの読出しが終了するを待機することなく、VRAM766に発生した空き領域へ画素単位での新しい圧縮データの書込みを行うことができ、圧縮データのVRAM766への書込みを効率よく行うことができる。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、画面表示制御を行う技術に関するものである。
【背景技術】
【0002】
従来、特許文献1に記載されているような、画像データを処理する機能を備える画面表示制御装置が知られている。この種の画面表示制御装置は、処理したデータを一時的に格納する画像メモリ(VideoRAM)を一般的に備えており、画像メモリに格納された処理済の画像データを周期的に読み出すことで画面表示を行うように構成されている。ところで、近年の液晶ディスプレイやプラズマディスプレイ、有機ELディスプレイといった画面表示装置では、高解像度化および高諧調度化が進んでおり、当該画面表示装置に表示する画像のデータ容量も増大している。したがって、容量が増大した画像データを格納するために画像メモリも高容量化する必要があり、コストアップの原因となっていた。このような問題を解決するため、隣接する画素データの差分を予測符号化(DPCM符号化)する等の周知のデータ圧縮法により画像データを圧縮し、当該圧縮データを画像メモリに格納する技術が知られている。そして、画面表示の際には、画像メモリから圧縮データを読み出して伸長することで元の画像データを復元するように構成されている。
【0003】
【特許文献1】特開2007−264572号公報(段落0017,0018、図1など)
【発明の開示】
【発明が解決しようとする課題】
【0004】
ところで、例えばライン単位で画像データを圧縮して、当該圧縮データを画像メモリに格納する構成の場合、ライン単位で圧縮データの画像メモリへの書込みと読出しとが行われることとなる。この書込みと読出しとは非同期で行われるため、画像メモリへ書込まれる圧縮データのラインと、画像メモリから読出される圧縮データのラインとが同じラインとなることがある。このように画像メモリへの圧縮データの書込みと画像メモリからの圧縮データの読出しとが同じラインとなった場合には、次のような問題が生じるおそれがあった。すなわち、画像メモリに格納されている圧縮データの読出しの途中で新圧縮データの書込みが追い越すか、あるいは、画像メモリへの新圧縮データの書込みの途中で読出しが追い越すおそれがあった。上記したように隣接する画素データの差分を利用して画像データの圧縮を行っているため、いずれか一方の追い越しが発生すれば、追い越しが発生した以降は圧縮データを読出しても画像データを復元できないこととなる。このような問題を解決するため、画像メモリへの圧縮データの書込みと、画像メモリからの圧縮データの読出しとが同じラインとなった場合に、書込むべき新しい圧縮データをバッファメモリにより一時的に保持し、画像メモリからの圧縮データの読出しが完了した後にバッファメモリに保持された新圧縮データを画像メモリに書込む技術が知られている。しかしながら、このような構成とすれば、バッファメモリに新圧縮データを保持した後、画像メモリからの旧圧縮データの読出しが完了するまで新圧縮データを画像メモリに書込めないため効率が悪く、技術の改善が求められていた。
【0005】
この発明は、上記課題に鑑みなされたものであり、圧縮データの画像メモリへの書込みを効率よく行うことのできる技術を提供することを目的とする。
【課題を解決するための手段】
【0006】
この発明にかかる画面表示制御装置は、上記目的を達成するため、入力された画像データをライン単位で圧縮する圧縮部と、前記圧縮部によるライン単位の圧縮データが、読出しとは非同期に書込まれる書換自在の画像メモリと、前記画像メモリから画面表示に同期して周期的に読出された圧縮データを伸長して元の画像データを復元する伸長部と、前記伸長部により伸長して復元された画像データの画像を表示する表示部とを備えた画像表示制御装置において、前記画像データの1ライン分のデータを一時的に保持可能な緩衝記憶手段と、前記画像メモリへの前記圧縮データの書込みと、前記緩衝記憶手段への前記画像データの書込みおよび読出しとを制御する書込/読出制御手段とを備え、前記書込/読出制御手段は、同じラインの前記圧縮データの前記画像メモリへの書込みと読出しとが競合するときに、書込むべき当該ラインの前記画像データを前記緩衝記憶手段に保持させる制御と、当該ラインの前記圧縮データの読み出しにしたがって前記画像メモリに発生する画素単位の空き領域に、前記緩衝記憶手段に保持されている前記画像データを前記圧縮部により圧縮して形成された当該ラインの前記圧縮データを、画素単位で前記空き領域に書込む制御とを行うことを特徴としている。
【0007】
このように構成された発明では、同じラインの圧縮データの画像メモリへの書込みと読出しとが競合するときに、書込むべき当該ラインの画像データを緩衝記憶手段に保持させる制御と、当該ラインの圧縮データの読み出しにしたがって画像メモリに発生する画素単位の空き領域に、緩衝記憶手段に保持されている画像データを圧縮部により圧縮して形成された当該ラインの圧縮データを画素単位で書込む制御とが書込/読出制御手段により実行される。したがって、競合が生じたラインの圧縮データの画像メモリからの読出しが終了するのを待機することなく、画像メモリに発生した空き領域への画素単位での新しい圧縮データの書込みを行うことができ、圧縮データの画像メモリへの書込みを効率よく行うことができる。
【0008】
また、前記緩衝記憶手段は、前記圧縮部の前段に設けられて前記画像データを保持するラインバッファメモリである構成としてもよい。このような構成とすれば、緩衝記憶手段を実用的な構成で実現でき、書込/読出制御手段による緩衝記憶手段への画像データの書込みおよび読出し制御を容易に行える。
【0009】
また、この発明にかかる画面表示制御装置は、入力された画像データをライン単位で圧縮する圧縮部と、前記圧縮部によるライン単位の圧縮データが、読出しとは非同期に書込まれる書換自在の画像メモリと、前記画像メモリから画面表示に同期して周期的に読出された圧縮データを伸長して元の画像データを復元する伸長部と、前記伸長部により伸長して復元された画像データの画像を表示する表示部とを備えた画像表示制御装置において、前記圧縮データの1ライン分のデータを一時的に保持可能な緩衝記憶手段と、前記画像メモリへの前記圧縮データの書込みと、前記緩衝記憶手段への前記圧縮データの書込みおよび読出しとを制御する書込/読出制御手段とを備え、前記書込/読出制御手段は、同じラインの前記圧縮データの前記画像メモリへの書込みと読出しとが競合するときに、書込むべき当該ラインの前記圧縮データを前記緩衝記憶手段に保持させる制御と、当該ラインの前記圧縮データの読み出しにしたがって前記画像メモリに発生する画素単位の空き領域に、前記緩衝記憶手段に保持されている当該ラインの前記圧縮データを、画素単位で前記空き領域に書込む制御とを行うことを特徴としている。
【0010】
このように構成された発明では、同じラインの圧縮データの画像メモリへの書込みと読出しとが競合するときに、書込むべき当該ラインの圧縮データを緩衝記憶手段に保持させる制御と、当該ラインの圧縮データの読み出しにしたがって画像メモリに発生する画素単位の空き領域に、緩衝記憶手段に保持されている圧縮データを画素単位で書込む制御とが書込/読出制御手段により実行される。したがって、競合が生じたラインの圧縮データの画像メモリからの読出しが終了するのを待機することなく、画像メモリに発生した空き領域への画素単位での新しい圧縮データの書込みを行うことができ、圧縮データの画像メモリへの書込みを効率よく行うことができる。
【発明を実施するための最良の形態】
【0011】
図1は本発明の画面表示制御装置の一実施形態であるLCDコントローラ76が実装されるフォトプリンタを示す斜視図である。また、図2はフォトプリンタの内部構成の概略を示す図である。このフォトプリンタ10では、プリンタ本体12の内部にはプリント機構50(図2参照)が内蔵されており、フォトプリンタ10の全体の制御を司るコントローラ70(図2参照)からの動作指令に応じて用紙Pへの印刷を実行する。そして、こうして印刷された用紙がプリンタ本体12の前面に排紙される。
【0012】
このプリンタ本体12の前面には、図1に示すように、前面扉14が開閉自在に取り付けられている。この前面扉14はプリンタ本体12の前面を開閉するための蓋である。そして、開状態のときには、プリント機構50から排紙される用紙Pを受けるための排紙トレイとして機能する。また、プリンタ本体12の前面に設けられた各種のメモリカードスロット16をユーザが利用可能な状態となる。つまり、この状態でユーザは印刷対象となる画像ファイルを記憶したメモリカードMをメモリカードスロット16に差し込むことができる。画像ファイルデータを記憶する外部媒体としてはメモリカードに限定されず、USBメモリやディスク媒体など他のものであってもよい。また、画像を記憶したデジタルカメラや携帯電話等の電子機器を本フォトプリンタ10にケーブルや赤外線を利用した通信によって接続し外部媒体として機能させてもよい。
【0013】
また、プリンタ本体12の上面には操作パネル20が設けられる一方、プリンタ本体12の上面の奥の一辺に対してカバー30が開閉自在に取り付けられている。このカバー30は、プリンタ本体12の上面を覆うことのできる大きさに成形された樹脂板であり、開状態では操作パネル20の表面を外部に露出する(図1参照)。一方、カバー30が閉状態に閉じられると、操作パネル20全体を覆う。
【0014】
この操作パネル20には、文字や図形、記号などを表示する例えばLCDディスプレイにより構成された表示部22と、この表示部22の周囲に配置されたボタン群24とを備えている。ボタン群24は、図2に示すように、電源のオンオフを行うための電源ボタン24a、メインメニュー画面を呼び出すためのメニューボタン24b、操作を途中でキャンセルしたり用紙Pへの印刷を途中で中断したりするためのキャンセルボタン24c、用紙Pへの印刷実行を指示するための印刷ボタン24d、メモリカードスロット16に挿入されたメモリカードMに編集画像等を保存するための保存ボタン24e、表示部22に表示された複数の選択肢の中から所望の選択肢を選択したりカーソルを移動したりするときに操作される上下左右の各矢印ボタン24f〜24i、この上下左右の各矢印ボタン24f〜24iの中央に配置され各矢印ボタン24f〜24iによって選択されている選択肢に決定したことを指示するためのOKボタン24j、表示部22での画面表示を切り替えるための表示切替ボタン24k、表示部22に表示される左ガイドを選択する左ガイド選択ボタン24l、表示部22に表示される右ガイドを選択する右ガイド選択ボタン24m、排紙トレイとしての機能を備えた前面扉14を開く排紙トレイオープンボタン24nなどで構成されている。
【0015】
また、表示部22の表示内容を確認するために、カバー30には表示部22と同じ大きさの窓32が設けられている。つまり、カバー30が閉状態にあるときにはユーザはこの窓32を介して表示部22の表示内容を確認することができる。一方、カバー30は開状態のときには、表示部22を図1に示すように好みの角度に調整することが可能となっている。
【0016】
このようにカバー30を開状態としたときには、操作パネル20に対して斜め後方に傾斜した状態でカバー30は保持され、用紙Pをプリント機構50へ供給するためのトレイとして利用可能となっている。また、操作パネル20の奥には、プリント機構50の給紙口58が設けられるとともに、ガイド幅が用紙の幅に合うように左右方向にスライド操作される一対の用紙ガイド59が設けられている。
【0017】
そして、給紙口58を介して用紙Pがプリント機構50に送り込まれて印刷が実行される。このプリント機構50には、図2に示すように、キャリッジ53が左右方向にループ状に架け渡されたタイミングベルト51により駆動されガイド52に沿って左右に往復動する。このキャリッジ53には、紙端検出センサ57が設けられ、用紙Pの左右端や上下端を検出する。つまり、紙端検出センサ57は、給紙口58にセットされた用紙に対して印刷前にキャリッジ53が左右方向に走査したときにその用紙の左右端を検出して用紙幅の認識を可能にしたり、印刷途中で用紙の後端を検出して用紙長さの認識を可能にしたりする。
【0018】
また、このキャリッジ53には、シアン・マゼンタ・イエロー・ブラック等の各色のインクを個別に収容したインクカートリッジ54が搭載されている。これらのインクカートリッジ54はそれぞれ印刷ヘッド55に接続されている。そして、印刷ヘッド55はインクカートリッジ54からのインクに圧力をかけてノズル(図示省略)から用紙Pに向かってインクを吐出する。この実施形態では、印刷ヘッド55は圧電素子に電圧をかけることにより該圧電素子を変形させてインクを加圧する方式を採用しているが、発熱抵抗体(例えばヒータなど)に電圧をかけインクを加熱して発生した気泡によりインクを加圧する方式を採用してもよい。こうして印刷された用紙Pは搬送ローラ56によって開状態の前面扉(排紙トレイ)14へ送り出される。
【0019】
また、図示を省略しているものの、プリンタ本体12の背面にはバッテリパックを装着可能となっており、商用電源に接続しなくとも本プリンタ10をバッテリにより動作させることが可能となっている。この点および本プリンタ10がホストコンピュータに接続しなくても使用することができるスタンドアロンプリンタとなっている点により、本プリンタ10は持ち運び容易でどこでも使用できるようになっている。
【0020】
図3はコントローラ70の構成を示すブロック図である。また、図4は表示部22およびVRAM766の構成を示す図である。コントローラ70は、図3に示すように、CPU71を中心とするマイクロプロセッサとして構成されており、各種処理プログラムや各種データ、各種プログラムや各種テーブルなどを記憶したROM72、一時的にデータを記憶するRAM73、プリント機構50やメモリカードスロット16などとの通信を可能とするインターフェース(I/F)74などを備えている。また、コントローラ70は、メモリカードMに編集画像などを保存するほか、プリント機構50の印刷ヘッド55への制御信号や操作パネルの表示部22への制御信号を出力する。
【0021】
また、コントローラ70には、インターフェース74を通してメモリカードMなどの外部記憶媒体から与えられる画像データに対し必要な画像処理を行うための画像処理モジュール75が設けられている。画像処理モジュール75はまた、表示部22に表示させるためのメニュー画面などのプリンタ固有の画像に対応する画像データを生成する機能も有する。
【0022】
画像処理モジュール75から出力されるRGB画像データは、表示部22を表示制御するためのLCDコントローラ76(本発明の「画面表示制御装置」に相当)に与えられる。なお、以下では、LCDディスプレイにより構成される表示部22の画素数はQVGA(Quarter Video Graphics Array)形式の320ドット×240ドットであり、320ドット分の画素データにより画像データの1ラインが構成されており、240ラインのラインデータにより一の画像が構成される(図4(a)参照)。
【0023】
LCDコントローラ76は、同期信号発生部769を備え、表示部22への画像の表示タイミングを制御するための水平・垂直同期信号など、種々の同期信号を発生可能に構成されている。また、画像処理モジュール75から入力されたシリアルデータをパラレルデータに変換する入力データ変換部761と、入力データ変換部761によりパラレルデータに変換された画像データの1ライン分のデータを一時的に保持可能なラインバッファ(本発明の「緩衝記憶手段」に相当)762とを備えている。そして、ラインバッファ762の後段に設けられ、入力された画像データをライン単位で圧縮する圧縮部764と、圧縮部764によるライン単位の圧縮データが、読出しとは非同期に書込まれる書換自在のVRAM766(本発明の「画像メモリ」に相当)と、表示部22への画面表示の水平・垂直同期信号に同期してVRAM766から周期的に読出しされた圧縮データを伸長して元の画像データを復元する伸長部767と、伸長部により伸長して復元された画像データを表示部22へ出力するためのデータ変換を行う出力データ変換部768とを備えている。したがって、伸長部767により伸長して復元された画像データは出力データ変換部768を介して表示部22に出力されて表示される。なお、本実施形態では、圧縮部764は隣接する画素データの差分情報(一致状況)を利用して画像データを圧縮するように構成されているが、画像データの圧縮方法についてはこれに限られず、周知の種々の手法を用いることができる。これらのデータ圧縮方法については周知の技術であるため、その詳細な説明は省略する。
【0024】
また、図4(b)に示すように、VRAM766には、少なくとも圧縮部764により圧縮された240ライン分(一の画像分)の圧縮データを格納可能な領域が設けられている。本実施形態では、VRAM766のメモリアドレス0、10,20…,2390が示す格納領域に、各ライン0,1,2…,239の圧縮データがそれぞれ格納されるように構成されている。また、VRAM766への圧縮データの書込みと、ラインバッファ762への画像データの書込みおよび読出しとを制御する書込/読出制御手段763を備え、書込/読出制御手段763から制御指令がRAM制御部765に出力されることにより、VRAM766への圧縮データの書込みのタイミングが制御される。
【0025】
次に、書込/読出制御手段763について、さらに詳細に説明する。図3に示すように、書込/読出制御手段763は、VRAM766へ書込まれる圧縮データのラインと、VRAM766から読出される圧縮データのラインとが同じラインかどうかを比較判定するライン判定部763aを備えている。すなわち、メモリ等により構成された書込ラインカウンタ(図示省略)のカウンタ値(書込ライン)と、メモリ等により構成された読出ラインカウンタ(図示省略)のカウンタ値(読出ライン)とを比較することで、書込みおよび読出しされる圧縮データのラインの比較を行うことができる。また、書込/読出制御手段763は、メモリ等により構成された書込画素カウンタ(図示省略)の値と読出画素カウンタ(図示省略)の値とを比較判定する画素カウンタ判定部763bを備えている。この書込画素カウンタの値は、圧縮部764により圧縮された1ラインの圧縮データから1画素分のデータがVRAM766へ書込まれる度に加算される。また、読出画素カウンタの値は、VRAM766からの1画素分の圧縮データの読出しタイミングを規定するために同期信号発生部769が発生するクロック信号に基づいて加算される。この書込画素カウンタと読出画素カウンタについて図5を参照して説明する。
【0026】
図5はラインごとの圧縮データの書込みと読出しのタイミングを示す図である。図5に示すように、水平同期信号が出力される1周期の間に1ラインの圧縮データがVRAM766から読出される。また、圧縮データの読出しについて、水平同期信号の出力から圧縮データの読出しが始るまでの”バックポーチ期間”、圧縮データを読出して表示部22に画像データを出力している期間である”アクティブエリア期間”、圧縮データの読出し終了から次の水平同期信号の出力までの”フロントポーチ期間”の3つの期間に、水平同期信号の1周期を分割することができる。各期間は表示部22の解像度数などの構成やVRAM766に格納される圧縮データの圧縮方法に応じた構成から予め設定される固定値である。ここで、読出画素カウンタは各期間の開始時に”0”にリセットされ、同期信号発生部769が発生する1画素分の圧縮データの読出しタイミングを規定するクロック信号の度に加算されるように構成されている。したがって、水平同期信号が出力されてバックポーチ期間の開始とともに読出画素カウンタの”0”からの加算が開始される。そして、読出画素カウンタの値がバックポーチ期間として予め設定された値となれば、読出画素カウンタが”0”にリセットされるとともにアクティブエリア期間が開始され、実際の圧縮データの読出しを開始する。最後に、読出画素カウンタの値がアクティブエリア期間として予め設定された値となれば、すなわち1ライン分の圧縮データの読出しが完了すれば、読出画素カウンタが”0”にリセットされるとともにフロントポーチ期間が開始される。なお、クロック信号が出力される度に1画素分の圧縮データが読出されるように構成されている。また、上記した3つの期間のうち、現在、どの期間に属するのかということを示す信号が、出力データ変換部768からリアルタイムで書込/読出制御手段763に出力されるように構成されている。
【0027】
一方、圧縮データのVRAM766への書込みは、上記した読出しとは非同期に行われるため、水平・垂直同期信号が出力されるタイミングとは無関係に圧縮データの書込処理が行われる。ここで、読出画素カウンタは1ラインの圧縮データの書込開始時に”0”にリセットされ、1画素分の圧縮データがVRAM766に書込まれる度に加算されるように構成されている。図5に示すように、1ラインの圧縮データをVRAM766に書込む期間は、表示部22の大きさ(1ライン分の圧縮データの長さ)等により定まる固定値であり、表示部22の構成により、書込期間が水平同期信号の1周期以内に収まる場合(状態A)と、書込期間が水平同期信号の1周期以内に収まらず、2周期にまたがる場合(状態B)との2つの場合がある。
【0028】
また、書込/読出制御手段763は、ライン判定部763a、画素カウンタ判定部763bの判定結果と、出力データ変換部768から出力される読出し期間(”バックポーチ期間”、”アクティブエリア期間”、”フロントポーチ期間”)についての情報に基づいて、現在、VRAM766へ書込みを行うとされているラインの圧縮データについて、書込禁止であるかどうか、すなわち、同じラインの圧縮データのVRAM766への書込みと読出しとが競合するかどうかの判定を行なう書込判定部763cを備えている。
【0029】
なお、同じラインの圧縮データのVRAM766への書込みと読出しとが競合するとは、VRAM766に格納されている一のラインの圧縮データの読出しの途中で当該一のラインの新圧縮データの書込みが追い越すか、あるいは、VRAM766への一のラインの新圧縮データの書込みの途中で当該一のラインの圧縮データの読出しが追い越すことをいう。本実施形態では、以下に説明する期間を、これらの追い越しが発生するおそれがある期間として書込禁止期間とし、新圧縮データのVRAM766への書込みを禁止している。次に、書込判定部763cが書込禁止期間であるかどうかを判定する処理について図6を参照して説明する。
【0030】
図6は書込禁止判定の一例を示す図である。図5および図6に示すように、書込みが開始されるタイミングに応じて、同じラインの圧縮データのVRAM766への書込みと読出しとが競合することとなる。まず、”バックポーチ期間”、”フロントポーチ期間”であるときの処理について説明する。ここで、図6中の、
「BP(バックポーチ)禁止画素カウンタ値」
「FP(フロントポーチ)禁止画素カウンタ値」
とは、1ラインの圧縮データのVRAM766への書込期間の長さに応じて予め設定されている値であり、読出画素カウンタの値がこれらの値を超えた後に、圧縮データの書込みを開始すれば、一のラインの圧縮データのVRAM766への書込みが完了する前に、VRAM766から同じラインの圧縮データの読出しが開始されることとなる値である(図5中の「書込禁止開始」の矢印参照)。このように一のラインの圧縮データのVRAM766への書込みが完了する前に当該ラインの圧縮データのVRAM766からの読出しが開始されれば、VRAM766からの圧縮データの読出しは表示部22への画面表示に同期してVRAM766への新圧縮データの書込みに関係なく周期的に行われるため、VRAM766への新圧縮データの書込みの途中で読出しが追い越すことにより同じラインの圧縮データのVRAM766への書込みと読出しとが競合するおそれがある。
【0031】
図5に示す例では、読出画素カウンタの値が各禁止画素カウンタ値を超えた後に書込みが開始されれば、同図中の「書込禁止開始」の矢印で示すタイミングよりも後に書込みが開始されることとなり、1ラインの圧縮データのVRAMへの書込みが終了する前に同じラインの圧縮データのVRAM766からの読出しが開始されて書込みと読出しとが競合するおそれがある(図5中の「競合可能性有」参照)。
【0032】
したがって、書込/読出制御手段763がラインバッファ762から圧縮データの書込要求を受けたときに、書込判定部763cは、上記したような同じラインの圧縮データのVRAM766への書込みと読出しとが競合するおそれがある期間を書込禁止期間と判定する。そして、書込/読出制御手段763は、書込判定部763cによる書込禁止期間であるとの判定結果に応じてVRAM766への新圧縮データの書込みを禁止し、書込むべき当該ラインの画像データのラインバッファ762への保持状態を維持し、当該ラインの圧縮データのVRAM766への書込みを禁止する制御を行う。
【0033】
一方、”アクティブエリア期間”では、VRAM766からの一のラインの圧縮データの読出しにしたがって、VRAM766の当該一のラインの圧縮データを格納する格納領域に空き領域が発生する。したがって、VRAM766へ書込みされる一のラインの新圧縮データのうち、この空き領域に対応する圧縮画素データ、すなわち、既にVRAM766から読出された圧縮画素データのみを書込むことで、VRAM766に格納されている一のラインの圧縮データの読出しの途中で当該一のラインの新圧縮データの書込みが追い越すおそれはない。
【0034】
そこで、本実施形態では、書込判定部763cは上記した空き領域が発生すれば、VRAM766上に生じた空き領域への新圧縮画素データの書込みを許可する判定を行うように構成されている。そして、書込/読出制御手段763は、書込判定部763cによるVRAM766の空き領域への書込みを許可するという判定結果に応じて、VRAM766に発生した画素単位の空き領域へ当該一のラインの新圧縮データを画素単位で書込む制御を行うように構成されている。すなわち、書込/読出制御手段763は、書込禁止期間にVRAM766への書込みが禁止されてラインバッファ762に保持されている画像データのうち、空き領域に対応する画素データを圧縮部764により圧縮して形成した圧縮画素データを、画素単位で空き領域へ書込む制御を行う。
【0035】
なお、本実施形態では、上記したように、VRAM766からの圧縮データの読出しは、表示部22への画面表示に同期して、すなわち同期信号発生部769からの水平・垂直同期信号に同期して行われる。その一方で、VRAM766への圧縮データの書込みは、この画面表示のための読出しとは非同期に行われるように構成されている。また、各ラインの圧縮データはそれぞれVRAM766の定められた領域に書込まれるように構成されているため、上記したように圧縮データのVRAM766への書込みと読出しとが競合するおそれがある。また、本実施形態における空き領域とは、VRAM766の格納領域のうち、表示部22への画面表示にしたがいVRAM766から圧縮画素データが既に読出された領域のことをいい、当該領域に格納されていた圧縮画素データは既に読出されているため、新圧縮画素データが当該領域に書込まれても、当該領域の後に続くVRAM766の格納領域から読出された圧縮画素データを復元するのに影響を与えることがない。なお、当該領域から圧縮画素データが読出された後は、VRAM766の当該領域は初期化されていてもよいし、旧圧縮画素データが保持されたままでもよい。当該領域へ新圧縮画素データを書込むときに、該領域に旧圧縮画素データが保持されたままであっても、旧圧縮画素データに新圧縮画素データを上書きすればよい。次に、図7を参照して読出処理の一例について説明する。
【0036】
1.読出処理の一例
<読出処理>
図7はVRAM766から圧縮データを読出して画像データを復元する読出処理の一例を示す図である。図7の読出処理は同期信号発生部769が1/60秒ごと出力する垂直同期信号に同期して行われる処理であり、VRAM766からの各ラインの圧縮データの読出しは同期信号発生部769が出力する水平同期信号に同期して行われる。まず、同期信号発生部769から垂直同期信号が出力されれば、メモリ等により構成された読出ラインカウンタのカウンタ値(読出ライン)が”0”に設定される(ステップS1)。また、同期信号発生部769から水平同期信号が出力されれば、メモリ等により構成された読出画素カウンタのカウンタ値(読出画素)が”0”に設定される(ステップS2)。なお、読出ラインカウンタのカウンタ値である読出ラインとは、圧縮データのうち、これからVRAM766より読出すラインの番号を示す値である。また、読出画素カウンタのカウンタ値である読出画素とは、一のラインの圧縮データを構成する各圧縮画素データ(320個)のうち、先頭の圧縮画素データから一の画素についての圧縮画素データを読出す度に加算される値であり、先頭から何番目の画素の圧縮画素データを読出して復元しているのかを示す値である。
【0037】
次に、ステップS3において、読出ラインおよび読出画素により表される一の圧縮画素データがVRAM766から読出され、伸長部767により伸長されて復元される(ステップS4)。そして、ステップS4において復元された画像(画素)データが出力データ変換部768に出力されて表示部22に出力され(ステップS5)、読出画素カウンタのカウンタ値に1加算され(ステップS6)、1ラインの圧縮データの読出しが終了したかどうかが判定される(ステップS7)。
【0038】
ステップS7においてNOと判定されればステップS3からの処理を、1ラインの圧縮データの読出しが終了するまで繰返して実行する。一方、ステップ7においてYESと判定されれば、読出ラインカウンタのカウンタ値に1加算して(ステップS8)、ステップS9において全ラインの読出しが終了したかどうかが判定される。ステップS9においてYESと判定されれば、ステップS1に進み、次の垂直同期信号が出力されればステップS1からの処理を実行する。また、ステップS9においてNOと判定されれば、ステップS2からの処理を全ラインの圧縮データの読出しが終了するまで繰返して実行する。次に、図8ないし図11を参照して、本実施形態における圧縮データのVRAM766への書込処理の一例について説明する。
【0039】
2.書込処理の一例
図8は書込処理の一例である第1書込処理を示す図、図9はバックポーチ処理を示す図、
図10はアクティブエリア処理を示す図、図11は第1フロントポーチ処理を示す図である。図8に示す第1書込処理は、図5および図6に示すように、1ラインの圧縮データの書込期間が状態Aである場合の処理を示す。
【0040】
<第1書込処理>
図8を参照して第1書込処理について説明する。まず、画像処理モジュール75により処理された表示部22に表示されるべき画像データが、LCDコントローラ76の入力データ変換部761に入力されれば、メモリ等により構成された書込ラインカウンタのカウンタ値(書込ライン)が”0”に設定される(ステップS100、図4参照)。すなわち、以下の処理において、第0ラインの圧縮データのVRAM766への書込みについての可否が判定される。以下の説明においては理解を容易にするために、第0ラインについて書込みが行われることとして、図4および図5も参照して説明を行う。なお、書込ラインカウンタのカウンタ値である書込ラインとは、画像データのうち、これからVRAM766に書込まれるラインの番号を示す値である。
【0041】
次に、ステップS100において書込ラインとして設定された第0ラインの画像データがラインバッファ762に一時的に格納される(ステップS101)。そして、書込ライン(第0ライン)と読出ライン、すなわち現在読出し中のラインとが一致するかどうかがライン判定部763aにより判定される(ステップS102)。ステップS102においてNOと判定されれば、同じ第0ラインの圧縮データの書込みと読出しとの競合はないと書込判定部763cにより判定され、RAM制御部765にVRAM766のメモリアドレス”0”の領域にラインバッファ762に格納された全ての画像データを格納するように書込/読出制御手段763から指令が与えられる(ステップS103)。すなわち、ラインバッファ762に格納された第0ラインの画像データが、圧縮部764により圧縮された後、VRAM766に書込まれる。
【0042】
一方、ステップS102においてYESと判定されれば、出力データ変換部768の出力信号に基づいてバックポーチ期間であるかどうかが書込判定部763cにより判定され(ステップS104)、YESと判定されれば、後述するバックポーチ処理が実行される(ステップS105)。ステップS104においてNOと判定されれば、出力データ変換部768の出力信号に基づいてアクティブ期間であるかどうかが書込判定部763cにより判定される(ステップS106)。ステップS106においてYESと判定されれば、後述するアクティブエリア処理が実行される(ステップS107)。
【0043】
一方、ステップS106においてNOと判定されれば、後述する第1フロントポーチ処理が実行されて、ステップS109に進み、書込ラインカウンタのカウンタ値(書込ライン)に1加算され、全ライン(240ライン)分の圧縮データの書込処理が終了したかどうかが判定され(ステップS110)、YESと判定されれば処理を終了し、NOと判定されればステップS101に進み、同様の処理が繰返される。
【0044】
<バックポーチ処理>
図9を参照してバックポーチ処理について説明する。まず、書込判定部763cは画素カウンタ判定部763bの判定結果に基づいて書込禁止期間であるかどうかを判定する(ステップS200、図5および図6参照)。NOと判定されれば、RAM制御部765にラインバッファ762に格納された画像データをVRAM766に書込むように書込/読出制御手段763から指令が与えられる(ステップS201)。すなわち、ラインバッファ762に格納された第0ラインの画像データが、圧縮部764により圧縮された後、VRAM766に書込まれて処理を終了し、図8のステップS109に進む。一方、ステップS200においてYESと判定されれば、出力データ変換部768の出力信号に基づいてアクティブ期間であると判定されるまで待機した後、処理を終了する(ステップS202)。この処理によれば、読出ラインと書込ラインとが一致する場合であっても、VRAM766から圧縮データの読出しが開始される前に1ラインの圧縮データの全てをVRAM766に書込み可能であれば、圧縮データの書込みが実行されるため、効率よくVRAM766に圧縮データを書込みできる。
【0045】
<アクティブエリア処理>
図10を参照してアクティブエリア処理について説明する。まず、書込判定部763cは画素カウンタ判定部763bの判定結果に基づいて書込許可できるかどうかを判定する(ステップS300、図5および図6参照)。NOと判定されれば、書込許可できるまで、すなわち、VRAM766に空き領域が発生するまで待機する(ステップS300)。ステップS300においてYESと判定されれば、すなわち、VRAM766に空き領域が発生すればラインバッファ762の画像データが1画素分書込まれる(ステップS301)。
【0046】
続いて、ステップS302において書込画素カウンタの値に1加算した後、ラインバッファ762に画像データが残存しているかどうかが書込画素カウンタの値に基づいて書込判定部763cにより判定される(ステップS303)。NOと判定されれば、すなわち、ラインバッファ762に格納された1ライン分の画像データの全てがVRAM766に書込まれれば処理を終了し、YESと判定されればステップS300に進み、ラインバッファ762に格納された全てのデータのVRAM766への書込が終了するまで同様の処理が繰返される。
【0047】
<第1フロントポーチ処理>
図11を参照して第1フロントポーチ処理について説明する。図5および図6に示すように、1ライン分の圧縮データのVRAM766への書込期間の長さが状態Aである場合には、書込開始のタイミングがフロントポーチ期間であれば、圧縮データの書込みと読出しとが競合して書込禁止となることはない。したがって、図11に示すように、圧縮データの書込開始のタイミングがフロントポーチ期間である場合には、RAM制御部765にラインバッファ762に格納された画像データをVRAM766に書込むように書込/読出制御手段763から指令が与えられる(ステップS400)。すなわち、ラインバッファ762に格納された画像データが、圧縮部764により圧縮された後、VRAM766に書込まれて処理を終了する。
【0048】
3.書込処理の他の例
図12は書込処理の他の例である第2書込処理を示す図、図13は第2フロントポーチ処理を示す図である。図12に示す第2書込処理は1ラインの圧縮データの書込期間が状態Bである場合の処理を示す(図5および図6参照)。この書込処理の他の例(第2書込処理)が図7の第1書込処理と異なる点は、1ライン分の圧縮データのVRAM766への書込期間が長く、書込禁止の開始時期が異なる点である(図5中の「書込禁止開始」の矢印参照)。具体的には、圧縮データの書込開始のタイミングが、
「読出ライン+1=書込ライン」
であって、読出し側が、
「フロントポーチ期間」
であり、
「読出画素カウンタ値がFP禁止画素カウンタ値よりも大きい」
場合に圧縮データのVRAM766への書込みが禁止となる(図6の「状態B」、「フロントポーチ期間HFP」参照)。なお、「読出ライン=書込ライン」である場合のバックポーチ期間は常に圧縮データはVRAM766へ書込禁止となる。したがって、BP禁止画素カウンタ値は”0”に初期設定される。以下、上記した第1書込処理と異なる点についてのみ説明し、その他の処理については上記した説明と同様であるためその説明を省略する。なお、この第2書込処理は、圧縮データのVRAMへの書込みが禁止であるかどうかを判定する第2フロントポーチ処理をさらに備えている。
【0049】
<第2書込処理>
図12を参照して第2書込処理について説明する。ステップS502において書込ラインと読出ラインとが一致するかどうかがライン判定部763aにより判定され(ステップS502)、YESと判定された後の処理は上記した第1書込処理と同様であるため、その処理の説明は省略する。一方、ステップS502においてNOと判定されれば、読出ラインが書込ラインより1つ前のラインかどうかが、すなわち、
「読出ライン+1=書込ライン」
であるかどうかが、ライン判定部763aにより判定される(ステップS503)。ステップS503においてNOと判定されれば、RAM制御部765に指令が与えられ、ラインバッファに格納された全ての画像データが圧縮部764により圧縮されてVRAM766に書込まれる(ステップS504)。
【0050】
一方、ステップS503においてYESと判定されれば、出力データ変換部768の出力信号に基づいてフロントポーチ期間であるかどうかが書込判定部763cにより判定される(ステップS505)。ステップS505においてYESと判定されれば、後述する第2フロントポーチ処理が実行される(ステップS506)。また、ステップS505においてNOと判定されれば、ラインバッファに格納された全ての画像データが圧縮部764により圧縮されてVRAM766に書込まれる(ステップS504)。その後の処理は上記した第1書込処理と同様の処理であるため、その処理の説明は省略する。
【0051】
<第2フロントポーチ処理>
図13を参照して第2フロントポーチ処理について説明する。まず、書込判定部763cは画素カウンタ判定部763bの判定結果に基づいて書込禁止期間であるかどうかを判定する(ステップS600、図5および図6参照)。NOと判定されれば、RAM制御部765にラインバッファ762に格納された画像データをVRAM766に書込むように指令が与えられる(ステップS601)。すなわち、ラインバッファ762に格納された画像データが、圧縮部764により圧縮された後、VRAM766に書込まれる。そして、第2フロントポーチ処理を終了し、図12のステップS512に進む。一方、ステップS600においてYESと判定されれば、出力データ変換部768の出力信号に基づいてバックポーチ期間であると判定されるまで待機した後(ステップS602)、第2フロントポーチ処理を終了して図12のステップS507に進む。
【0052】
以上のように、本実施形態では、書込みラインと読出しラインが一致していても、当該ラインの圧縮データの読み出しにしたがってVRAM766に発生する画素単位の空き領域に、ラインバッファ762に保持されている画像データを圧縮部764により圧縮して形成された当該ラインの圧縮データを画素単位で書込む制御が書込/読出制御手段763により実行される。すなわち、1ライン分の圧縮データのVRAM766への書込期間や、画素単位でのVRAM766への圧縮データの書込みの可否を判定することにより、競合が生じるおそれのあるラインの圧縮データのVRAM766からの読出しが終了するのを待機することなく、VRAM766に発生した空き領域へ画素単位での新しい圧縮データの書込みを行うことができ、圧縮データのVRAM766への書込みを効率よく行うことができる。
【0053】
また、圧縮部764の前段に設けられたラインバッファ762により、本発明の「緩衝記憶手段」を構成しているため、「緩衝記憶手段」を実用的な構成で実現でき、書込/読出制御手段763によるラインバッファ762への画像データの書込みおよび読出し制御を容易に行える。
【0054】
なお、本発明は上記した実施形態に限定されるものではなく、その趣旨を逸脱しない限りにおいて上述したもの以外に種々の変更を行うことが可能である。例えば、上記した実施形態では、ラインバッファ762に圧縮前の画像データを一時的に保持する構成としたが、画像データを圧縮後の圧縮データを一時的に保持する構成としてもよく、上記した実施形態と同様の効果を奏することができる。また、上記した実施形態は、常に画像データをラインバッファ762に格納してから圧縮部764による圧縮を行う構成としたが、圧縮データのVRAM766への書込みと読出しとが競合するとき、または競合するおそれがあるときにのみ、画像データや圧縮データをラインバッファ762に格納する構成としてもよいことは言うまでもない。
【0055】
また、上記実施形態では、インクカードリッジ方式のフォトプリンタ10を例として説明したが、その他のインクジェット式プリンタ等の印刷装置にも本発明を適用してもよい。また、液晶ディスプレイやプラズマディスプレイ、有機ELディスプレイといった画面表示装置に画像を表示する技術に本発明を広く適用できる。
【図面の簡単な説明】
【0056】
【図1】本発明の画面表示制御装置が実装されるフォトプリンタを示す斜視図。
【図2】フォトプリンタの内部構成の概略を示す図。
【図3】コントローラの構成を示すブロック図。
【図4】表示部およびVRAMの構成を示す図。
【図5】圧縮データの書込と読出しのタイミングを示す図。
【図6】書込禁止判定の一例を示す図。
【図7】読出処理の一例を示す図。
【図8】書込処理の一例を示す図。
【図9】バックポーチ処理を示す図。
【図10】アクティブエリア処理を示す図。
【図11】第1フロントポーチ処理を示す図。
【図12】書込処理の他の例を示す図。
【図13】第2フロントポーチ処理を示す図。
【符号の説明】
【0057】
22…表示部、76…LCDコントローラ(画面表示制御装置)、762…ラインバッファ(緩衝記憶手段)、763…書込/読出制御手段、764…圧縮部、766…VRAM(画像メモリ)、767…伸長部
【技術分野】
【0001】
この発明は、画面表示制御を行う技術に関するものである。
【背景技術】
【0002】
従来、特許文献1に記載されているような、画像データを処理する機能を備える画面表示制御装置が知られている。この種の画面表示制御装置は、処理したデータを一時的に格納する画像メモリ(VideoRAM)を一般的に備えており、画像メモリに格納された処理済の画像データを周期的に読み出すことで画面表示を行うように構成されている。ところで、近年の液晶ディスプレイやプラズマディスプレイ、有機ELディスプレイといった画面表示装置では、高解像度化および高諧調度化が進んでおり、当該画面表示装置に表示する画像のデータ容量も増大している。したがって、容量が増大した画像データを格納するために画像メモリも高容量化する必要があり、コストアップの原因となっていた。このような問題を解決するため、隣接する画素データの差分を予測符号化(DPCM符号化)する等の周知のデータ圧縮法により画像データを圧縮し、当該圧縮データを画像メモリに格納する技術が知られている。そして、画面表示の際には、画像メモリから圧縮データを読み出して伸長することで元の画像データを復元するように構成されている。
【0003】
【特許文献1】特開2007−264572号公報(段落0017,0018、図1など)
【発明の開示】
【発明が解決しようとする課題】
【0004】
ところで、例えばライン単位で画像データを圧縮して、当該圧縮データを画像メモリに格納する構成の場合、ライン単位で圧縮データの画像メモリへの書込みと読出しとが行われることとなる。この書込みと読出しとは非同期で行われるため、画像メモリへ書込まれる圧縮データのラインと、画像メモリから読出される圧縮データのラインとが同じラインとなることがある。このように画像メモリへの圧縮データの書込みと画像メモリからの圧縮データの読出しとが同じラインとなった場合には、次のような問題が生じるおそれがあった。すなわち、画像メモリに格納されている圧縮データの読出しの途中で新圧縮データの書込みが追い越すか、あるいは、画像メモリへの新圧縮データの書込みの途中で読出しが追い越すおそれがあった。上記したように隣接する画素データの差分を利用して画像データの圧縮を行っているため、いずれか一方の追い越しが発生すれば、追い越しが発生した以降は圧縮データを読出しても画像データを復元できないこととなる。このような問題を解決するため、画像メモリへの圧縮データの書込みと、画像メモリからの圧縮データの読出しとが同じラインとなった場合に、書込むべき新しい圧縮データをバッファメモリにより一時的に保持し、画像メモリからの圧縮データの読出しが完了した後にバッファメモリに保持された新圧縮データを画像メモリに書込む技術が知られている。しかしながら、このような構成とすれば、バッファメモリに新圧縮データを保持した後、画像メモリからの旧圧縮データの読出しが完了するまで新圧縮データを画像メモリに書込めないため効率が悪く、技術の改善が求められていた。
【0005】
この発明は、上記課題に鑑みなされたものであり、圧縮データの画像メモリへの書込みを効率よく行うことのできる技術を提供することを目的とする。
【課題を解決するための手段】
【0006】
この発明にかかる画面表示制御装置は、上記目的を達成するため、入力された画像データをライン単位で圧縮する圧縮部と、前記圧縮部によるライン単位の圧縮データが、読出しとは非同期に書込まれる書換自在の画像メモリと、前記画像メモリから画面表示に同期して周期的に読出された圧縮データを伸長して元の画像データを復元する伸長部と、前記伸長部により伸長して復元された画像データの画像を表示する表示部とを備えた画像表示制御装置において、前記画像データの1ライン分のデータを一時的に保持可能な緩衝記憶手段と、前記画像メモリへの前記圧縮データの書込みと、前記緩衝記憶手段への前記画像データの書込みおよび読出しとを制御する書込/読出制御手段とを備え、前記書込/読出制御手段は、同じラインの前記圧縮データの前記画像メモリへの書込みと読出しとが競合するときに、書込むべき当該ラインの前記画像データを前記緩衝記憶手段に保持させる制御と、当該ラインの前記圧縮データの読み出しにしたがって前記画像メモリに発生する画素単位の空き領域に、前記緩衝記憶手段に保持されている前記画像データを前記圧縮部により圧縮して形成された当該ラインの前記圧縮データを、画素単位で前記空き領域に書込む制御とを行うことを特徴としている。
【0007】
このように構成された発明では、同じラインの圧縮データの画像メモリへの書込みと読出しとが競合するときに、書込むべき当該ラインの画像データを緩衝記憶手段に保持させる制御と、当該ラインの圧縮データの読み出しにしたがって画像メモリに発生する画素単位の空き領域に、緩衝記憶手段に保持されている画像データを圧縮部により圧縮して形成された当該ラインの圧縮データを画素単位で書込む制御とが書込/読出制御手段により実行される。したがって、競合が生じたラインの圧縮データの画像メモリからの読出しが終了するのを待機することなく、画像メモリに発生した空き領域への画素単位での新しい圧縮データの書込みを行うことができ、圧縮データの画像メモリへの書込みを効率よく行うことができる。
【0008】
また、前記緩衝記憶手段は、前記圧縮部の前段に設けられて前記画像データを保持するラインバッファメモリである構成としてもよい。このような構成とすれば、緩衝記憶手段を実用的な構成で実現でき、書込/読出制御手段による緩衝記憶手段への画像データの書込みおよび読出し制御を容易に行える。
【0009】
また、この発明にかかる画面表示制御装置は、入力された画像データをライン単位で圧縮する圧縮部と、前記圧縮部によるライン単位の圧縮データが、読出しとは非同期に書込まれる書換自在の画像メモリと、前記画像メモリから画面表示に同期して周期的に読出された圧縮データを伸長して元の画像データを復元する伸長部と、前記伸長部により伸長して復元された画像データの画像を表示する表示部とを備えた画像表示制御装置において、前記圧縮データの1ライン分のデータを一時的に保持可能な緩衝記憶手段と、前記画像メモリへの前記圧縮データの書込みと、前記緩衝記憶手段への前記圧縮データの書込みおよび読出しとを制御する書込/読出制御手段とを備え、前記書込/読出制御手段は、同じラインの前記圧縮データの前記画像メモリへの書込みと読出しとが競合するときに、書込むべき当該ラインの前記圧縮データを前記緩衝記憶手段に保持させる制御と、当該ラインの前記圧縮データの読み出しにしたがって前記画像メモリに発生する画素単位の空き領域に、前記緩衝記憶手段に保持されている当該ラインの前記圧縮データを、画素単位で前記空き領域に書込む制御とを行うことを特徴としている。
【0010】
このように構成された発明では、同じラインの圧縮データの画像メモリへの書込みと読出しとが競合するときに、書込むべき当該ラインの圧縮データを緩衝記憶手段に保持させる制御と、当該ラインの圧縮データの読み出しにしたがって画像メモリに発生する画素単位の空き領域に、緩衝記憶手段に保持されている圧縮データを画素単位で書込む制御とが書込/読出制御手段により実行される。したがって、競合が生じたラインの圧縮データの画像メモリからの読出しが終了するのを待機することなく、画像メモリに発生した空き領域への画素単位での新しい圧縮データの書込みを行うことができ、圧縮データの画像メモリへの書込みを効率よく行うことができる。
【発明を実施するための最良の形態】
【0011】
図1は本発明の画面表示制御装置の一実施形態であるLCDコントローラ76が実装されるフォトプリンタを示す斜視図である。また、図2はフォトプリンタの内部構成の概略を示す図である。このフォトプリンタ10では、プリンタ本体12の内部にはプリント機構50(図2参照)が内蔵されており、フォトプリンタ10の全体の制御を司るコントローラ70(図2参照)からの動作指令に応じて用紙Pへの印刷を実行する。そして、こうして印刷された用紙がプリンタ本体12の前面に排紙される。
【0012】
このプリンタ本体12の前面には、図1に示すように、前面扉14が開閉自在に取り付けられている。この前面扉14はプリンタ本体12の前面を開閉するための蓋である。そして、開状態のときには、プリント機構50から排紙される用紙Pを受けるための排紙トレイとして機能する。また、プリンタ本体12の前面に設けられた各種のメモリカードスロット16をユーザが利用可能な状態となる。つまり、この状態でユーザは印刷対象となる画像ファイルを記憶したメモリカードMをメモリカードスロット16に差し込むことができる。画像ファイルデータを記憶する外部媒体としてはメモリカードに限定されず、USBメモリやディスク媒体など他のものであってもよい。また、画像を記憶したデジタルカメラや携帯電話等の電子機器を本フォトプリンタ10にケーブルや赤外線を利用した通信によって接続し外部媒体として機能させてもよい。
【0013】
また、プリンタ本体12の上面には操作パネル20が設けられる一方、プリンタ本体12の上面の奥の一辺に対してカバー30が開閉自在に取り付けられている。このカバー30は、プリンタ本体12の上面を覆うことのできる大きさに成形された樹脂板であり、開状態では操作パネル20の表面を外部に露出する(図1参照)。一方、カバー30が閉状態に閉じられると、操作パネル20全体を覆う。
【0014】
この操作パネル20には、文字や図形、記号などを表示する例えばLCDディスプレイにより構成された表示部22と、この表示部22の周囲に配置されたボタン群24とを備えている。ボタン群24は、図2に示すように、電源のオンオフを行うための電源ボタン24a、メインメニュー画面を呼び出すためのメニューボタン24b、操作を途中でキャンセルしたり用紙Pへの印刷を途中で中断したりするためのキャンセルボタン24c、用紙Pへの印刷実行を指示するための印刷ボタン24d、メモリカードスロット16に挿入されたメモリカードMに編集画像等を保存するための保存ボタン24e、表示部22に表示された複数の選択肢の中から所望の選択肢を選択したりカーソルを移動したりするときに操作される上下左右の各矢印ボタン24f〜24i、この上下左右の各矢印ボタン24f〜24iの中央に配置され各矢印ボタン24f〜24iによって選択されている選択肢に決定したことを指示するためのOKボタン24j、表示部22での画面表示を切り替えるための表示切替ボタン24k、表示部22に表示される左ガイドを選択する左ガイド選択ボタン24l、表示部22に表示される右ガイドを選択する右ガイド選択ボタン24m、排紙トレイとしての機能を備えた前面扉14を開く排紙トレイオープンボタン24nなどで構成されている。
【0015】
また、表示部22の表示内容を確認するために、カバー30には表示部22と同じ大きさの窓32が設けられている。つまり、カバー30が閉状態にあるときにはユーザはこの窓32を介して表示部22の表示内容を確認することができる。一方、カバー30は開状態のときには、表示部22を図1に示すように好みの角度に調整することが可能となっている。
【0016】
このようにカバー30を開状態としたときには、操作パネル20に対して斜め後方に傾斜した状態でカバー30は保持され、用紙Pをプリント機構50へ供給するためのトレイとして利用可能となっている。また、操作パネル20の奥には、プリント機構50の給紙口58が設けられるとともに、ガイド幅が用紙の幅に合うように左右方向にスライド操作される一対の用紙ガイド59が設けられている。
【0017】
そして、給紙口58を介して用紙Pがプリント機構50に送り込まれて印刷が実行される。このプリント機構50には、図2に示すように、キャリッジ53が左右方向にループ状に架け渡されたタイミングベルト51により駆動されガイド52に沿って左右に往復動する。このキャリッジ53には、紙端検出センサ57が設けられ、用紙Pの左右端や上下端を検出する。つまり、紙端検出センサ57は、給紙口58にセットされた用紙に対して印刷前にキャリッジ53が左右方向に走査したときにその用紙の左右端を検出して用紙幅の認識を可能にしたり、印刷途中で用紙の後端を検出して用紙長さの認識を可能にしたりする。
【0018】
また、このキャリッジ53には、シアン・マゼンタ・イエロー・ブラック等の各色のインクを個別に収容したインクカートリッジ54が搭載されている。これらのインクカートリッジ54はそれぞれ印刷ヘッド55に接続されている。そして、印刷ヘッド55はインクカートリッジ54からのインクに圧力をかけてノズル(図示省略)から用紙Pに向かってインクを吐出する。この実施形態では、印刷ヘッド55は圧電素子に電圧をかけることにより該圧電素子を変形させてインクを加圧する方式を採用しているが、発熱抵抗体(例えばヒータなど)に電圧をかけインクを加熱して発生した気泡によりインクを加圧する方式を採用してもよい。こうして印刷された用紙Pは搬送ローラ56によって開状態の前面扉(排紙トレイ)14へ送り出される。
【0019】
また、図示を省略しているものの、プリンタ本体12の背面にはバッテリパックを装着可能となっており、商用電源に接続しなくとも本プリンタ10をバッテリにより動作させることが可能となっている。この点および本プリンタ10がホストコンピュータに接続しなくても使用することができるスタンドアロンプリンタとなっている点により、本プリンタ10は持ち運び容易でどこでも使用できるようになっている。
【0020】
図3はコントローラ70の構成を示すブロック図である。また、図4は表示部22およびVRAM766の構成を示す図である。コントローラ70は、図3に示すように、CPU71を中心とするマイクロプロセッサとして構成されており、各種処理プログラムや各種データ、各種プログラムや各種テーブルなどを記憶したROM72、一時的にデータを記憶するRAM73、プリント機構50やメモリカードスロット16などとの通信を可能とするインターフェース(I/F)74などを備えている。また、コントローラ70は、メモリカードMに編集画像などを保存するほか、プリント機構50の印刷ヘッド55への制御信号や操作パネルの表示部22への制御信号を出力する。
【0021】
また、コントローラ70には、インターフェース74を通してメモリカードMなどの外部記憶媒体から与えられる画像データに対し必要な画像処理を行うための画像処理モジュール75が設けられている。画像処理モジュール75はまた、表示部22に表示させるためのメニュー画面などのプリンタ固有の画像に対応する画像データを生成する機能も有する。
【0022】
画像処理モジュール75から出力されるRGB画像データは、表示部22を表示制御するためのLCDコントローラ76(本発明の「画面表示制御装置」に相当)に与えられる。なお、以下では、LCDディスプレイにより構成される表示部22の画素数はQVGA(Quarter Video Graphics Array)形式の320ドット×240ドットであり、320ドット分の画素データにより画像データの1ラインが構成されており、240ラインのラインデータにより一の画像が構成される(図4(a)参照)。
【0023】
LCDコントローラ76は、同期信号発生部769を備え、表示部22への画像の表示タイミングを制御するための水平・垂直同期信号など、種々の同期信号を発生可能に構成されている。また、画像処理モジュール75から入力されたシリアルデータをパラレルデータに変換する入力データ変換部761と、入力データ変換部761によりパラレルデータに変換された画像データの1ライン分のデータを一時的に保持可能なラインバッファ(本発明の「緩衝記憶手段」に相当)762とを備えている。そして、ラインバッファ762の後段に設けられ、入力された画像データをライン単位で圧縮する圧縮部764と、圧縮部764によるライン単位の圧縮データが、読出しとは非同期に書込まれる書換自在のVRAM766(本発明の「画像メモリ」に相当)と、表示部22への画面表示の水平・垂直同期信号に同期してVRAM766から周期的に読出しされた圧縮データを伸長して元の画像データを復元する伸長部767と、伸長部により伸長して復元された画像データを表示部22へ出力するためのデータ変換を行う出力データ変換部768とを備えている。したがって、伸長部767により伸長して復元された画像データは出力データ変換部768を介して表示部22に出力されて表示される。なお、本実施形態では、圧縮部764は隣接する画素データの差分情報(一致状況)を利用して画像データを圧縮するように構成されているが、画像データの圧縮方法についてはこれに限られず、周知の種々の手法を用いることができる。これらのデータ圧縮方法については周知の技術であるため、その詳細な説明は省略する。
【0024】
また、図4(b)に示すように、VRAM766には、少なくとも圧縮部764により圧縮された240ライン分(一の画像分)の圧縮データを格納可能な領域が設けられている。本実施形態では、VRAM766のメモリアドレス0、10,20…,2390が示す格納領域に、各ライン0,1,2…,239の圧縮データがそれぞれ格納されるように構成されている。また、VRAM766への圧縮データの書込みと、ラインバッファ762への画像データの書込みおよび読出しとを制御する書込/読出制御手段763を備え、書込/読出制御手段763から制御指令がRAM制御部765に出力されることにより、VRAM766への圧縮データの書込みのタイミングが制御される。
【0025】
次に、書込/読出制御手段763について、さらに詳細に説明する。図3に示すように、書込/読出制御手段763は、VRAM766へ書込まれる圧縮データのラインと、VRAM766から読出される圧縮データのラインとが同じラインかどうかを比較判定するライン判定部763aを備えている。すなわち、メモリ等により構成された書込ラインカウンタ(図示省略)のカウンタ値(書込ライン)と、メモリ等により構成された読出ラインカウンタ(図示省略)のカウンタ値(読出ライン)とを比較することで、書込みおよび読出しされる圧縮データのラインの比較を行うことができる。また、書込/読出制御手段763は、メモリ等により構成された書込画素カウンタ(図示省略)の値と読出画素カウンタ(図示省略)の値とを比較判定する画素カウンタ判定部763bを備えている。この書込画素カウンタの値は、圧縮部764により圧縮された1ラインの圧縮データから1画素分のデータがVRAM766へ書込まれる度に加算される。また、読出画素カウンタの値は、VRAM766からの1画素分の圧縮データの読出しタイミングを規定するために同期信号発生部769が発生するクロック信号に基づいて加算される。この書込画素カウンタと読出画素カウンタについて図5を参照して説明する。
【0026】
図5はラインごとの圧縮データの書込みと読出しのタイミングを示す図である。図5に示すように、水平同期信号が出力される1周期の間に1ラインの圧縮データがVRAM766から読出される。また、圧縮データの読出しについて、水平同期信号の出力から圧縮データの読出しが始るまでの”バックポーチ期間”、圧縮データを読出して表示部22に画像データを出力している期間である”アクティブエリア期間”、圧縮データの読出し終了から次の水平同期信号の出力までの”フロントポーチ期間”の3つの期間に、水平同期信号の1周期を分割することができる。各期間は表示部22の解像度数などの構成やVRAM766に格納される圧縮データの圧縮方法に応じた構成から予め設定される固定値である。ここで、読出画素カウンタは各期間の開始時に”0”にリセットされ、同期信号発生部769が発生する1画素分の圧縮データの読出しタイミングを規定するクロック信号の度に加算されるように構成されている。したがって、水平同期信号が出力されてバックポーチ期間の開始とともに読出画素カウンタの”0”からの加算が開始される。そして、読出画素カウンタの値がバックポーチ期間として予め設定された値となれば、読出画素カウンタが”0”にリセットされるとともにアクティブエリア期間が開始され、実際の圧縮データの読出しを開始する。最後に、読出画素カウンタの値がアクティブエリア期間として予め設定された値となれば、すなわち1ライン分の圧縮データの読出しが完了すれば、読出画素カウンタが”0”にリセットされるとともにフロントポーチ期間が開始される。なお、クロック信号が出力される度に1画素分の圧縮データが読出されるように構成されている。また、上記した3つの期間のうち、現在、どの期間に属するのかということを示す信号が、出力データ変換部768からリアルタイムで書込/読出制御手段763に出力されるように構成されている。
【0027】
一方、圧縮データのVRAM766への書込みは、上記した読出しとは非同期に行われるため、水平・垂直同期信号が出力されるタイミングとは無関係に圧縮データの書込処理が行われる。ここで、読出画素カウンタは1ラインの圧縮データの書込開始時に”0”にリセットされ、1画素分の圧縮データがVRAM766に書込まれる度に加算されるように構成されている。図5に示すように、1ラインの圧縮データをVRAM766に書込む期間は、表示部22の大きさ(1ライン分の圧縮データの長さ)等により定まる固定値であり、表示部22の構成により、書込期間が水平同期信号の1周期以内に収まる場合(状態A)と、書込期間が水平同期信号の1周期以内に収まらず、2周期にまたがる場合(状態B)との2つの場合がある。
【0028】
また、書込/読出制御手段763は、ライン判定部763a、画素カウンタ判定部763bの判定結果と、出力データ変換部768から出力される読出し期間(”バックポーチ期間”、”アクティブエリア期間”、”フロントポーチ期間”)についての情報に基づいて、現在、VRAM766へ書込みを行うとされているラインの圧縮データについて、書込禁止であるかどうか、すなわち、同じラインの圧縮データのVRAM766への書込みと読出しとが競合するかどうかの判定を行なう書込判定部763cを備えている。
【0029】
なお、同じラインの圧縮データのVRAM766への書込みと読出しとが競合するとは、VRAM766に格納されている一のラインの圧縮データの読出しの途中で当該一のラインの新圧縮データの書込みが追い越すか、あるいは、VRAM766への一のラインの新圧縮データの書込みの途中で当該一のラインの圧縮データの読出しが追い越すことをいう。本実施形態では、以下に説明する期間を、これらの追い越しが発生するおそれがある期間として書込禁止期間とし、新圧縮データのVRAM766への書込みを禁止している。次に、書込判定部763cが書込禁止期間であるかどうかを判定する処理について図6を参照して説明する。
【0030】
図6は書込禁止判定の一例を示す図である。図5および図6に示すように、書込みが開始されるタイミングに応じて、同じラインの圧縮データのVRAM766への書込みと読出しとが競合することとなる。まず、”バックポーチ期間”、”フロントポーチ期間”であるときの処理について説明する。ここで、図6中の、
「BP(バックポーチ)禁止画素カウンタ値」
「FP(フロントポーチ)禁止画素カウンタ値」
とは、1ラインの圧縮データのVRAM766への書込期間の長さに応じて予め設定されている値であり、読出画素カウンタの値がこれらの値を超えた後に、圧縮データの書込みを開始すれば、一のラインの圧縮データのVRAM766への書込みが完了する前に、VRAM766から同じラインの圧縮データの読出しが開始されることとなる値である(図5中の「書込禁止開始」の矢印参照)。このように一のラインの圧縮データのVRAM766への書込みが完了する前に当該ラインの圧縮データのVRAM766からの読出しが開始されれば、VRAM766からの圧縮データの読出しは表示部22への画面表示に同期してVRAM766への新圧縮データの書込みに関係なく周期的に行われるため、VRAM766への新圧縮データの書込みの途中で読出しが追い越すことにより同じラインの圧縮データのVRAM766への書込みと読出しとが競合するおそれがある。
【0031】
図5に示す例では、読出画素カウンタの値が各禁止画素カウンタ値を超えた後に書込みが開始されれば、同図中の「書込禁止開始」の矢印で示すタイミングよりも後に書込みが開始されることとなり、1ラインの圧縮データのVRAMへの書込みが終了する前に同じラインの圧縮データのVRAM766からの読出しが開始されて書込みと読出しとが競合するおそれがある(図5中の「競合可能性有」参照)。
【0032】
したがって、書込/読出制御手段763がラインバッファ762から圧縮データの書込要求を受けたときに、書込判定部763cは、上記したような同じラインの圧縮データのVRAM766への書込みと読出しとが競合するおそれがある期間を書込禁止期間と判定する。そして、書込/読出制御手段763は、書込判定部763cによる書込禁止期間であるとの判定結果に応じてVRAM766への新圧縮データの書込みを禁止し、書込むべき当該ラインの画像データのラインバッファ762への保持状態を維持し、当該ラインの圧縮データのVRAM766への書込みを禁止する制御を行う。
【0033】
一方、”アクティブエリア期間”では、VRAM766からの一のラインの圧縮データの読出しにしたがって、VRAM766の当該一のラインの圧縮データを格納する格納領域に空き領域が発生する。したがって、VRAM766へ書込みされる一のラインの新圧縮データのうち、この空き領域に対応する圧縮画素データ、すなわち、既にVRAM766から読出された圧縮画素データのみを書込むことで、VRAM766に格納されている一のラインの圧縮データの読出しの途中で当該一のラインの新圧縮データの書込みが追い越すおそれはない。
【0034】
そこで、本実施形態では、書込判定部763cは上記した空き領域が発生すれば、VRAM766上に生じた空き領域への新圧縮画素データの書込みを許可する判定を行うように構成されている。そして、書込/読出制御手段763は、書込判定部763cによるVRAM766の空き領域への書込みを許可するという判定結果に応じて、VRAM766に発生した画素単位の空き領域へ当該一のラインの新圧縮データを画素単位で書込む制御を行うように構成されている。すなわち、書込/読出制御手段763は、書込禁止期間にVRAM766への書込みが禁止されてラインバッファ762に保持されている画像データのうち、空き領域に対応する画素データを圧縮部764により圧縮して形成した圧縮画素データを、画素単位で空き領域へ書込む制御を行う。
【0035】
なお、本実施形態では、上記したように、VRAM766からの圧縮データの読出しは、表示部22への画面表示に同期して、すなわち同期信号発生部769からの水平・垂直同期信号に同期して行われる。その一方で、VRAM766への圧縮データの書込みは、この画面表示のための読出しとは非同期に行われるように構成されている。また、各ラインの圧縮データはそれぞれVRAM766の定められた領域に書込まれるように構成されているため、上記したように圧縮データのVRAM766への書込みと読出しとが競合するおそれがある。また、本実施形態における空き領域とは、VRAM766の格納領域のうち、表示部22への画面表示にしたがいVRAM766から圧縮画素データが既に読出された領域のことをいい、当該領域に格納されていた圧縮画素データは既に読出されているため、新圧縮画素データが当該領域に書込まれても、当該領域の後に続くVRAM766の格納領域から読出された圧縮画素データを復元するのに影響を与えることがない。なお、当該領域から圧縮画素データが読出された後は、VRAM766の当該領域は初期化されていてもよいし、旧圧縮画素データが保持されたままでもよい。当該領域へ新圧縮画素データを書込むときに、該領域に旧圧縮画素データが保持されたままであっても、旧圧縮画素データに新圧縮画素データを上書きすればよい。次に、図7を参照して読出処理の一例について説明する。
【0036】
1.読出処理の一例
<読出処理>
図7はVRAM766から圧縮データを読出して画像データを復元する読出処理の一例を示す図である。図7の読出処理は同期信号発生部769が1/60秒ごと出力する垂直同期信号に同期して行われる処理であり、VRAM766からの各ラインの圧縮データの読出しは同期信号発生部769が出力する水平同期信号に同期して行われる。まず、同期信号発生部769から垂直同期信号が出力されれば、メモリ等により構成された読出ラインカウンタのカウンタ値(読出ライン)が”0”に設定される(ステップS1)。また、同期信号発生部769から水平同期信号が出力されれば、メモリ等により構成された読出画素カウンタのカウンタ値(読出画素)が”0”に設定される(ステップS2)。なお、読出ラインカウンタのカウンタ値である読出ラインとは、圧縮データのうち、これからVRAM766より読出すラインの番号を示す値である。また、読出画素カウンタのカウンタ値である読出画素とは、一のラインの圧縮データを構成する各圧縮画素データ(320個)のうち、先頭の圧縮画素データから一の画素についての圧縮画素データを読出す度に加算される値であり、先頭から何番目の画素の圧縮画素データを読出して復元しているのかを示す値である。
【0037】
次に、ステップS3において、読出ラインおよび読出画素により表される一の圧縮画素データがVRAM766から読出され、伸長部767により伸長されて復元される(ステップS4)。そして、ステップS4において復元された画像(画素)データが出力データ変換部768に出力されて表示部22に出力され(ステップS5)、読出画素カウンタのカウンタ値に1加算され(ステップS6)、1ラインの圧縮データの読出しが終了したかどうかが判定される(ステップS7)。
【0038】
ステップS7においてNOと判定されればステップS3からの処理を、1ラインの圧縮データの読出しが終了するまで繰返して実行する。一方、ステップ7においてYESと判定されれば、読出ラインカウンタのカウンタ値に1加算して(ステップS8)、ステップS9において全ラインの読出しが終了したかどうかが判定される。ステップS9においてYESと判定されれば、ステップS1に進み、次の垂直同期信号が出力されればステップS1からの処理を実行する。また、ステップS9においてNOと判定されれば、ステップS2からの処理を全ラインの圧縮データの読出しが終了するまで繰返して実行する。次に、図8ないし図11を参照して、本実施形態における圧縮データのVRAM766への書込処理の一例について説明する。
【0039】
2.書込処理の一例
図8は書込処理の一例である第1書込処理を示す図、図9はバックポーチ処理を示す図、
図10はアクティブエリア処理を示す図、図11は第1フロントポーチ処理を示す図である。図8に示す第1書込処理は、図5および図6に示すように、1ラインの圧縮データの書込期間が状態Aである場合の処理を示す。
【0040】
<第1書込処理>
図8を参照して第1書込処理について説明する。まず、画像処理モジュール75により処理された表示部22に表示されるべき画像データが、LCDコントローラ76の入力データ変換部761に入力されれば、メモリ等により構成された書込ラインカウンタのカウンタ値(書込ライン)が”0”に設定される(ステップS100、図4参照)。すなわち、以下の処理において、第0ラインの圧縮データのVRAM766への書込みについての可否が判定される。以下の説明においては理解を容易にするために、第0ラインについて書込みが行われることとして、図4および図5も参照して説明を行う。なお、書込ラインカウンタのカウンタ値である書込ラインとは、画像データのうち、これからVRAM766に書込まれるラインの番号を示す値である。
【0041】
次に、ステップS100において書込ラインとして設定された第0ラインの画像データがラインバッファ762に一時的に格納される(ステップS101)。そして、書込ライン(第0ライン)と読出ライン、すなわち現在読出し中のラインとが一致するかどうかがライン判定部763aにより判定される(ステップS102)。ステップS102においてNOと判定されれば、同じ第0ラインの圧縮データの書込みと読出しとの競合はないと書込判定部763cにより判定され、RAM制御部765にVRAM766のメモリアドレス”0”の領域にラインバッファ762に格納された全ての画像データを格納するように書込/読出制御手段763から指令が与えられる(ステップS103)。すなわち、ラインバッファ762に格納された第0ラインの画像データが、圧縮部764により圧縮された後、VRAM766に書込まれる。
【0042】
一方、ステップS102においてYESと判定されれば、出力データ変換部768の出力信号に基づいてバックポーチ期間であるかどうかが書込判定部763cにより判定され(ステップS104)、YESと判定されれば、後述するバックポーチ処理が実行される(ステップS105)。ステップS104においてNOと判定されれば、出力データ変換部768の出力信号に基づいてアクティブ期間であるかどうかが書込判定部763cにより判定される(ステップS106)。ステップS106においてYESと判定されれば、後述するアクティブエリア処理が実行される(ステップS107)。
【0043】
一方、ステップS106においてNOと判定されれば、後述する第1フロントポーチ処理が実行されて、ステップS109に進み、書込ラインカウンタのカウンタ値(書込ライン)に1加算され、全ライン(240ライン)分の圧縮データの書込処理が終了したかどうかが判定され(ステップS110)、YESと判定されれば処理を終了し、NOと判定されればステップS101に進み、同様の処理が繰返される。
【0044】
<バックポーチ処理>
図9を参照してバックポーチ処理について説明する。まず、書込判定部763cは画素カウンタ判定部763bの判定結果に基づいて書込禁止期間であるかどうかを判定する(ステップS200、図5および図6参照)。NOと判定されれば、RAM制御部765にラインバッファ762に格納された画像データをVRAM766に書込むように書込/読出制御手段763から指令が与えられる(ステップS201)。すなわち、ラインバッファ762に格納された第0ラインの画像データが、圧縮部764により圧縮された後、VRAM766に書込まれて処理を終了し、図8のステップS109に進む。一方、ステップS200においてYESと判定されれば、出力データ変換部768の出力信号に基づいてアクティブ期間であると判定されるまで待機した後、処理を終了する(ステップS202)。この処理によれば、読出ラインと書込ラインとが一致する場合であっても、VRAM766から圧縮データの読出しが開始される前に1ラインの圧縮データの全てをVRAM766に書込み可能であれば、圧縮データの書込みが実行されるため、効率よくVRAM766に圧縮データを書込みできる。
【0045】
<アクティブエリア処理>
図10を参照してアクティブエリア処理について説明する。まず、書込判定部763cは画素カウンタ判定部763bの判定結果に基づいて書込許可できるかどうかを判定する(ステップS300、図5および図6参照)。NOと判定されれば、書込許可できるまで、すなわち、VRAM766に空き領域が発生するまで待機する(ステップS300)。ステップS300においてYESと判定されれば、すなわち、VRAM766に空き領域が発生すればラインバッファ762の画像データが1画素分書込まれる(ステップS301)。
【0046】
続いて、ステップS302において書込画素カウンタの値に1加算した後、ラインバッファ762に画像データが残存しているかどうかが書込画素カウンタの値に基づいて書込判定部763cにより判定される(ステップS303)。NOと判定されれば、すなわち、ラインバッファ762に格納された1ライン分の画像データの全てがVRAM766に書込まれれば処理を終了し、YESと判定されればステップS300に進み、ラインバッファ762に格納された全てのデータのVRAM766への書込が終了するまで同様の処理が繰返される。
【0047】
<第1フロントポーチ処理>
図11を参照して第1フロントポーチ処理について説明する。図5および図6に示すように、1ライン分の圧縮データのVRAM766への書込期間の長さが状態Aである場合には、書込開始のタイミングがフロントポーチ期間であれば、圧縮データの書込みと読出しとが競合して書込禁止となることはない。したがって、図11に示すように、圧縮データの書込開始のタイミングがフロントポーチ期間である場合には、RAM制御部765にラインバッファ762に格納された画像データをVRAM766に書込むように書込/読出制御手段763から指令が与えられる(ステップS400)。すなわち、ラインバッファ762に格納された画像データが、圧縮部764により圧縮された後、VRAM766に書込まれて処理を終了する。
【0048】
3.書込処理の他の例
図12は書込処理の他の例である第2書込処理を示す図、図13は第2フロントポーチ処理を示す図である。図12に示す第2書込処理は1ラインの圧縮データの書込期間が状態Bである場合の処理を示す(図5および図6参照)。この書込処理の他の例(第2書込処理)が図7の第1書込処理と異なる点は、1ライン分の圧縮データのVRAM766への書込期間が長く、書込禁止の開始時期が異なる点である(図5中の「書込禁止開始」の矢印参照)。具体的には、圧縮データの書込開始のタイミングが、
「読出ライン+1=書込ライン」
であって、読出し側が、
「フロントポーチ期間」
であり、
「読出画素カウンタ値がFP禁止画素カウンタ値よりも大きい」
場合に圧縮データのVRAM766への書込みが禁止となる(図6の「状態B」、「フロントポーチ期間HFP」参照)。なお、「読出ライン=書込ライン」である場合のバックポーチ期間は常に圧縮データはVRAM766へ書込禁止となる。したがって、BP禁止画素カウンタ値は”0”に初期設定される。以下、上記した第1書込処理と異なる点についてのみ説明し、その他の処理については上記した説明と同様であるためその説明を省略する。なお、この第2書込処理は、圧縮データのVRAMへの書込みが禁止であるかどうかを判定する第2フロントポーチ処理をさらに備えている。
【0049】
<第2書込処理>
図12を参照して第2書込処理について説明する。ステップS502において書込ラインと読出ラインとが一致するかどうかがライン判定部763aにより判定され(ステップS502)、YESと判定された後の処理は上記した第1書込処理と同様であるため、その処理の説明は省略する。一方、ステップS502においてNOと判定されれば、読出ラインが書込ラインより1つ前のラインかどうかが、すなわち、
「読出ライン+1=書込ライン」
であるかどうかが、ライン判定部763aにより判定される(ステップS503)。ステップS503においてNOと判定されれば、RAM制御部765に指令が与えられ、ラインバッファに格納された全ての画像データが圧縮部764により圧縮されてVRAM766に書込まれる(ステップS504)。
【0050】
一方、ステップS503においてYESと判定されれば、出力データ変換部768の出力信号に基づいてフロントポーチ期間であるかどうかが書込判定部763cにより判定される(ステップS505)。ステップS505においてYESと判定されれば、後述する第2フロントポーチ処理が実行される(ステップS506)。また、ステップS505においてNOと判定されれば、ラインバッファに格納された全ての画像データが圧縮部764により圧縮されてVRAM766に書込まれる(ステップS504)。その後の処理は上記した第1書込処理と同様の処理であるため、その処理の説明は省略する。
【0051】
<第2フロントポーチ処理>
図13を参照して第2フロントポーチ処理について説明する。まず、書込判定部763cは画素カウンタ判定部763bの判定結果に基づいて書込禁止期間であるかどうかを判定する(ステップS600、図5および図6参照)。NOと判定されれば、RAM制御部765にラインバッファ762に格納された画像データをVRAM766に書込むように指令が与えられる(ステップS601)。すなわち、ラインバッファ762に格納された画像データが、圧縮部764により圧縮された後、VRAM766に書込まれる。そして、第2フロントポーチ処理を終了し、図12のステップS512に進む。一方、ステップS600においてYESと判定されれば、出力データ変換部768の出力信号に基づいてバックポーチ期間であると判定されるまで待機した後(ステップS602)、第2フロントポーチ処理を終了して図12のステップS507に進む。
【0052】
以上のように、本実施形態では、書込みラインと読出しラインが一致していても、当該ラインの圧縮データの読み出しにしたがってVRAM766に発生する画素単位の空き領域に、ラインバッファ762に保持されている画像データを圧縮部764により圧縮して形成された当該ラインの圧縮データを画素単位で書込む制御が書込/読出制御手段763により実行される。すなわち、1ライン分の圧縮データのVRAM766への書込期間や、画素単位でのVRAM766への圧縮データの書込みの可否を判定することにより、競合が生じるおそれのあるラインの圧縮データのVRAM766からの読出しが終了するのを待機することなく、VRAM766に発生した空き領域へ画素単位での新しい圧縮データの書込みを行うことができ、圧縮データのVRAM766への書込みを効率よく行うことができる。
【0053】
また、圧縮部764の前段に設けられたラインバッファ762により、本発明の「緩衝記憶手段」を構成しているため、「緩衝記憶手段」を実用的な構成で実現でき、書込/読出制御手段763によるラインバッファ762への画像データの書込みおよび読出し制御を容易に行える。
【0054】
なお、本発明は上記した実施形態に限定されるものではなく、その趣旨を逸脱しない限りにおいて上述したもの以外に種々の変更を行うことが可能である。例えば、上記した実施形態では、ラインバッファ762に圧縮前の画像データを一時的に保持する構成としたが、画像データを圧縮後の圧縮データを一時的に保持する構成としてもよく、上記した実施形態と同様の効果を奏することができる。また、上記した実施形態は、常に画像データをラインバッファ762に格納してから圧縮部764による圧縮を行う構成としたが、圧縮データのVRAM766への書込みと読出しとが競合するとき、または競合するおそれがあるときにのみ、画像データや圧縮データをラインバッファ762に格納する構成としてもよいことは言うまでもない。
【0055】
また、上記実施形態では、インクカードリッジ方式のフォトプリンタ10を例として説明したが、その他のインクジェット式プリンタ等の印刷装置にも本発明を適用してもよい。また、液晶ディスプレイやプラズマディスプレイ、有機ELディスプレイといった画面表示装置に画像を表示する技術に本発明を広く適用できる。
【図面の簡単な説明】
【0056】
【図1】本発明の画面表示制御装置が実装されるフォトプリンタを示す斜視図。
【図2】フォトプリンタの内部構成の概略を示す図。
【図3】コントローラの構成を示すブロック図。
【図4】表示部およびVRAMの構成を示す図。
【図5】圧縮データの書込と読出しのタイミングを示す図。
【図6】書込禁止判定の一例を示す図。
【図7】読出処理の一例を示す図。
【図8】書込処理の一例を示す図。
【図9】バックポーチ処理を示す図。
【図10】アクティブエリア処理を示す図。
【図11】第1フロントポーチ処理を示す図。
【図12】書込処理の他の例を示す図。
【図13】第2フロントポーチ処理を示す図。
【符号の説明】
【0057】
22…表示部、76…LCDコントローラ(画面表示制御装置)、762…ラインバッファ(緩衝記憶手段)、763…書込/読出制御手段、764…圧縮部、766…VRAM(画像メモリ)、767…伸長部
【特許請求の範囲】
【請求項1】
入力された画像データをライン単位で圧縮する圧縮部と、
前記圧縮部によるライン単位の圧縮データが、読出しとは非同期に書込まれる書換自在の画像メモリと、
前記画像メモリから画面表示に同期して周期的に読出された圧縮データを伸長して元の画像データを復元する伸長部と、
前記伸長部により伸長して復元された画像データの画像を表示する表示部とを備えた画像表示制御装置において、
前記画像データの1ライン分のデータを一時的に保持可能な緩衝記憶手段と、
前記画像メモリへの前記圧縮データの書込みと、前記緩衝記憶手段への前記画像データの書込みおよび読出しとを制御する書込/読出制御手段とを備え、
前記書込/読出制御手段は、
同じラインの前記圧縮データの前記画像メモリへの書込みと読出しとが競合するときに、書込むべき当該ラインの前記画像データを前記緩衝記憶手段に保持させる制御と、
当該ラインの前記圧縮データの読み出しにしたがって前記画像メモリに発生する画素単位の空き領域に、前記緩衝記憶手段に保持されている前記画像データを前記圧縮部により圧縮して形成された当該ラインの前記圧縮データを、画素単位で前記空き領域に書込む制御と
を行うことを特徴とする画面表示制御装置。
【請求項2】
前記緩衝記憶手段は、前記圧縮部の前段に設けられて前記画像データを保持するラインバッファメモリである請求項1に記載の画面表示制御装置。
【請求項3】
入力された画像データをライン単位で圧縮する圧縮部と、
前記圧縮部によるライン単位の圧縮データが、読出しとは非同期に書込まれる書換自在の画像メモリと、
前記画像メモリから画面表示に同期して周期的に読出された圧縮データを伸長して元の画像データを復元する伸長部と、
前記伸長部により伸長して復元された画像データの画像を表示する表示部とを備えた画像表示制御装置において、
前記圧縮データの1ライン分のデータを一時的に保持可能な緩衝記憶手段と、
前記画像メモリへの前記圧縮データの書込みと、前記緩衝記憶手段への前記圧縮データの書込みおよび読出しとを制御する書込/読出制御手段とを備え、
前記書込/読出制御手段は、
同じラインの前記圧縮データの前記画像メモリへの書込みと読出しとが競合するときに、書込むべき当該ラインの前記圧縮データを前記緩衝記憶手段に保持させる制御と、
当該ラインの前記圧縮データの読み出しにしたがって前記画像メモリに発生する画素単位の空き領域に、前記緩衝記憶手段に保持されている当該ラインの前記圧縮データを、画素単位で前記空き領域に書込む制御と
を行うことを特徴とする画面表示制御装置。
【請求項1】
入力された画像データをライン単位で圧縮する圧縮部と、
前記圧縮部によるライン単位の圧縮データが、読出しとは非同期に書込まれる書換自在の画像メモリと、
前記画像メモリから画面表示に同期して周期的に読出された圧縮データを伸長して元の画像データを復元する伸長部と、
前記伸長部により伸長して復元された画像データの画像を表示する表示部とを備えた画像表示制御装置において、
前記画像データの1ライン分のデータを一時的に保持可能な緩衝記憶手段と、
前記画像メモリへの前記圧縮データの書込みと、前記緩衝記憶手段への前記画像データの書込みおよび読出しとを制御する書込/読出制御手段とを備え、
前記書込/読出制御手段は、
同じラインの前記圧縮データの前記画像メモリへの書込みと読出しとが競合するときに、書込むべき当該ラインの前記画像データを前記緩衝記憶手段に保持させる制御と、
当該ラインの前記圧縮データの読み出しにしたがって前記画像メモリに発生する画素単位の空き領域に、前記緩衝記憶手段に保持されている前記画像データを前記圧縮部により圧縮して形成された当該ラインの前記圧縮データを、画素単位で前記空き領域に書込む制御と
を行うことを特徴とする画面表示制御装置。
【請求項2】
前記緩衝記憶手段は、前記圧縮部の前段に設けられて前記画像データを保持するラインバッファメモリである請求項1に記載の画面表示制御装置。
【請求項3】
入力された画像データをライン単位で圧縮する圧縮部と、
前記圧縮部によるライン単位の圧縮データが、読出しとは非同期に書込まれる書換自在の画像メモリと、
前記画像メモリから画面表示に同期して周期的に読出された圧縮データを伸長して元の画像データを復元する伸長部と、
前記伸長部により伸長して復元された画像データの画像を表示する表示部とを備えた画像表示制御装置において、
前記圧縮データの1ライン分のデータを一時的に保持可能な緩衝記憶手段と、
前記画像メモリへの前記圧縮データの書込みと、前記緩衝記憶手段への前記圧縮データの書込みおよび読出しとを制御する書込/読出制御手段とを備え、
前記書込/読出制御手段は、
同じラインの前記圧縮データの前記画像メモリへの書込みと読出しとが競合するときに、書込むべき当該ラインの前記圧縮データを前記緩衝記憶手段に保持させる制御と、
当該ラインの前記圧縮データの読み出しにしたがって前記画像メモリに発生する画素単位の空き領域に、前記緩衝記憶手段に保持されている当該ラインの前記圧縮データを、画素単位で前記空き領域に書込む制御と
を行うことを特徴とする画面表示制御装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2009−211026(P2009−211026A)
【公開日】平成21年9月17日(2009.9.17)
【国際特許分類】
【出願番号】特願2008−144246(P2008−144246)
【出願日】平成20年6月2日(2008.6.2)
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】
【公開日】平成21年9月17日(2009.9.17)
【国際特許分類】
【出願日】平成20年6月2日(2008.6.2)
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】
[ Back to top ]