特許第6035848号(P6035848)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ セイコーエプソン株式会社の特許一覧

特許6035848画像表示装置およびプログラム並びに画像表示装置の制御方法
<>
  • 特許6035848-画像表示装置およびプログラム並びに画像表示装置の制御方法 図000002
  • 特許6035848-画像表示装置およびプログラム並びに画像表示装置の制御方法 図000003
  • 特許6035848-画像表示装置およびプログラム並びに画像表示装置の制御方法 図000004
  • 特許6035848-画像表示装置およびプログラム並びに画像表示装置の制御方法 図000005
  • 特許6035848-画像表示装置およびプログラム並びに画像表示装置の制御方法 図000006
  • 特許6035848-画像表示装置およびプログラム並びに画像表示装置の制御方法 図000007
  • 特許6035848-画像表示装置およびプログラム並びに画像表示装置の制御方法 図000008
  • 特許6035848-画像表示装置およびプログラム並びに画像表示装置の制御方法 図000009
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6035848
(24)【登録日】2016年11月11日
(45)【発行日】2016年11月30日
(54)【発明の名称】画像表示装置およびプログラム並びに画像表示装置の制御方法
(51)【国際特許分類】
   G09G 5/00 20060101AFI20161121BHJP
   G09G 5/397 20060101ALI20161121BHJP
   G09G 5/399 20060101ALI20161121BHJP
   H04N 5/66 20060101ALI20161121BHJP
【FI】
   G09G5/00 555M
   G09G5/00 555W
   G09G5/00 550P
   G09G5/00 550R
   G09G5/00 555A
   H04N5/66 B
【請求項の数】4
【全頁数】16
(21)【出願番号】特願2012-102779(P2012-102779)
(22)【出願日】2012年4月27日
(65)【公開番号】特開2013-231787(P2013-231787A)
(43)【公開日】2013年11月14日
【審査請求日】2015年4月3日
(73)【特許権者】
【識別番号】000002369
【氏名又は名称】セイコーエプソン株式会社
(74)【代理人】
【識別番号】110000017
【氏名又は名称】特許業務法人アイテック国際特許事務所
(72)【発明者】
【氏名】山本 貴彦
【審査官】 橋本 直明
(56)【参考文献】
【文献】 特開2009−211025(JP,A)
【文献】 特開昭57−060374(JP,A)
【文献】 特開昭59−191644(JP,A)
【文献】 特開2005−275242(JP,A)
【文献】 特開2009−211026(JP,A)
【文献】 特開2007−178851(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G09G 5/00
G09G 5/397
G09G 5/399
H04N 5/66
(57)【特許請求の範囲】
【請求項1】
表示部に画像を表示する画像表示装置であって、
それぞれ単位フレーム分の画像データを記憶可能な複数の画像データ領域とデータを一時的に記憶する一時記憶領域とを有する記憶手段と、
画像データを取得すると共に該取得した画像データを圧縮して前記記憶手段に書き込む画像データ書き込み手段と、
前記画像データ書き込み手段による画像データの書き込みとは非同期に動作し、前記記憶手段の画像データ領域に記憶された画像データを読み出して解凍する画像データ読み出し手段と、
前記画像データ読み出し手段により解凍された画像データを前記表示部に出力する表示出力手段と、
を備え、
前記画像データ書き込み手段は、前記画像データの書き込みが前記画像データの読み出しと競合しない非競合時には所定のタイミングで前記画像データを前記画像データ領域の書き込むべきアドレスに書き込む非競合時書き込み処理を実行し、前記画像データの書き込みが前記画像データの読み出しと競合する競合時には該競合が解消されるまで前記画像データを前記書き込むべきアドレスと関連付けて前記一時記憶領域に書き込む競合時書き込み処理を実行し、前記競合が解消された以降には前記非競合時書き込み処理を再開すると共に前記所定のタイミングとは異なる空き時間に前記一時記憶領域に記憶された画像データを読み出して前記画像データ領域の前記書き込むべきアドレスに書き戻す書き戻し処理を実行する手段であって、前記単位フレーム分の画像データの書き込みが完了する毎に前記複数の画像データ領域に対して書き込み対象を順次切り替えて前記画像データを書き込む手段であり、
前記画像データ読み出し手段は、前記単位フレーム分の画像データの読み出しが完了する毎に前記複数の画像データ領域のうち前記書き込み対象とは異なる画像データ領域を読み出し対象として前記画像データを読み出す手段であって、前記競合が生じた場合には、該競合が生じたラインにおける画像データの読み出しが完了するまで該画像データの読み出しを継続し、前記競合が生じたラインにおける画像データの読み出しが完了したときに前記読み出し対象を切り替えて続きのラインから画像データの読み出しを行なう手段である
ことを特徴とする画像表示装置。
【請求項2】
請求項1記載の画像表示装置であって、
前記非競合時書き込み処理は、前記所定のタイミングとしてクロック信号が入力される毎に単位画素分の画像データを取得すると共に該取得した画像データを圧縮して前記画像データ領域に書き込む処理であり、
前記書き戻し処理は、前記クロック信号が入力されて前記非競合時書き込み処理が完了してから次のクロック信号が入力されるまでの空き時間に、前記一時記憶領域に記憶された画像データを読み出して前記画像データ領域に書き戻す処理である
ことを特徴とする画像表示装置。
【請求項3】
表示部を備えるコンピューターを、請求項1または2に記載の画像表示装置として機能させるためのプログラム。
【請求項4】
それぞれ単位フレーム分の画像データを記憶可能な複数の画像データ領域とデータを一時的に記憶する一時記憶領域とを有する記憶手段を備え、表示部への画像の表示を制御する画像表示装置の制御方法であって、
(a)画像データを取得すると共に該取得した画像データを圧縮して前記記憶手段に書き込むステップと、
(b)前記ステップ(a)による画像データの書き込みとは非同期に動作し、前記記憶手段の画像データ領域に記憶された画像データを読み出して解凍するステップと、
(c)前記ステップ(b)により解凍された画像データを前記表示部に出力するステップと、
を備え、
前記ステップ(a)は、前記画像データの書き込みが前記画像データの読み出しと競合しない非競合時には所定のタイミングで前記画像データを前記画像データ領域の書き込むべきアドレスに書き込む非競合時書き込み処理を実行し、前記画像データの書き込みが前記画像データの読み出しと競合する競合時には該競合が解消されるまで前記画像データを前記書き込むべきアドレスと関連付けて前記一時記憶領域に書き込む競合時書き込み処理を実行し、前記競合が解消された以降には前記非競合時書き込み処理を再開すると共に前記所定のタイミングとは異なる空き時間に前記一時記憶領域に記憶された画像データを読み出して前記画像データ領域の前記書き込むべきアドレスに書き戻す書き戻し処理を実行するステップであって、前記単位フレーム分の画像データの書き込みが完了する毎に前記複数の画像データ領域に対して書き込み対象を順次切り替えて前記画像データを書き込むステップであり、
前記ステップ(b)は、前記単位フレーム分の画像データの読み出しが完了する毎に前記複数の画像データ領域のうち前記書き込み対象とは異なる画像データ領域を読み出し対象として前記画像データを読み出すステップであって、前記競合が生じた場合には、該競合が生じたラインにおける画像データの読み出しが完了するまで該画像データの読み出しを継続し、前記競合が生じたラインにおける画像データの読み出しが完了したときに前記読み出し対象を切り替えて続きのラインから画像データの読み出しを行なうステップである
ことを特徴とする画像表示装置の制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、表示部に画像を表示する画像表示装置およびコンピューターを画像表示装置として機能させるためのプログラム並びに画像表示装置の制御方法に関する。
【背景技術】
【0002】
従来、この種の画像表示装置としては、1ライン分の画像データを一時的に格納するラインバッファーと、1フレーム分の圧縮データを格納可能な領域とこの領域とは別に1ライン分の圧縮データを一時的に保持可能なバッファー領域(空き領域)とが設けられたVRAM(VideoRAM)とを備え、VRAMに対するデータの書き込みと読み出しとをライン毎に非同期で行なうものが提案されている(例えば、特許文献1参照)。この装置では、VRAMの各ラインにそれぞれ格納された圧縮データが有効なものか無効なものかを示すフラグを格納するためのフラグテーブルと、各ラインに対応するVRAMのメモリーアドレスを格納するためのポインターテーブルとを備えており、書き込み処理ではポインターテーブルから書き込みライン毎のメモリーアドレスを順次取得して圧縮データを1画素ずつ書き込み、読み出し処理ではポインターテーブルから読み出しライン毎のメモリーアドレスを順次取得して圧縮データを1画素ずつ読み出す。また、書き込みラインと読み出しラインとが一致する競合時には、本来の格納先であるメモリーアドレスのデータを無効とすると共にポインターテーブルを本来の格納先であるメモリーアドレスからバッファー領域のメモリーアドレスへ更新し、競合が生じたラインの全ての圧縮データをバッファー領域に書き込む。そして、競合が解消すると、本来の格納先であるメモリーアドレスのデータを有効とすると共にポインターテーブルをバッファー領域のメモリーアドレスから本来の格納先であるメモリーアドレスに更新する。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2009−211025号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上述の画像表示装置では、ラインの途中で圧縮データの書き込みと読み出しとが競合しても、1ライン分の全ての圧縮データをバッファー領域に退避させなければならない。このため、ライン終盤で競合が生じた場合でも、ライン先頭で競合が生じた場合と同様に、1ライン分の退避時間が必要となってしまう。さらに、上述の画像表示装置では、フラグテーブルとポインターテーブルによって競合が生じたラインの管理を行なわなければならず、管理が複雑となってしまう。
【0005】
本発明の画像表示装置およびプログラム並びに画像表示装置の制御方法は、画像データの書き込みと読み出しとの競合をより適切に回避することを主目的とする。
【0006】
本発明の画像表示装置およびプログラム並びに画像表示装置の制御方法は、上述の主目的を達成するために以下の手段を採った。
【課題を解決するための手段】
【0007】
本発明の画像表示装置は、
表示部に画像を表示する画像表示装置であって、
単位フレーム分の画像データを記憶する画像データ領域とデータを一時的に記憶する一時記憶領域とを有する記憶手段と、
画像データを取得すると共に該取得した画像データを圧縮して前記記憶手段に書き込む画像データ書き込み手段と、
前記画像データ書き込み手段による画像データの書き込みとは非同期に動作し、前記記憶手段の画像データ領域に記憶された画像データを読み出して解凍する画像データ読み出し手段と、
前記画像データ読み出し手段により解凍された画像データを前記表示部に出力する表示出力手段と、
を備え、
前記画像データ書き込み手段は、前記画像データの書き込みが前記画像データの読み出しと競合しない非競合時には所定のタイミングで前記画像データを前記画像データ領域の書き込むべきアドレスに書き込む非競合時書き込み処理を実行し、前記画像データの書き込みが前記画像データの読み出しと競合する競合時には該競合が解消されるまで前記画像データを前記書き込むべきアドレスと関連付けて前記一時記憶領域に書き込む競合時書き込み処理を実行し、前記競合が解消された以降には前記非競合時書き込み処理を再開すると共に前記所定のタイミングとは異なる空き時間に前記一時記憶領域に記憶された画像データを読み出して前記画像データ領域の前記書き込むべきアドレスに書き戻す書き戻し処理を実行する手段である
ことを要旨とする。
【0008】
この本発明の画像表示装置では、画像データの書き込みが画像データの読み出しと競合しない非競合時には所定のタイミングで画像データを画像データ領域の書き込むべきアドレスに書き込む非競合時書き込み処理を実行し、画像データの書き込みが画像データの読み出しと競合する競合時にはその競合が解消されるまで画像データを書き込むべきアドレスと関連付けて一時記憶領域に書き込む競合時書き込み処理を実行し、競合が解消された以降には非競合時書き込み処理を再開すると共に所定のタイミングとは異なる空き時間に一時記憶領域に記憶された画像データを読み出して画像データ領域の書き込むべきアドレスに書き戻す書き戻し処理を実行する。これにより、複雑なアドレス管理を行なうことなく、画像データの書き込みと読み出しとが競合する競合時における画像データの書き込みと書き戻しとを行なうことができる。また、書き戻し処理は、所定のタイミングとは異なる空き時間に行なうから、書き込み処理全体で遅延が生じないようにすることができる。これらの結果、画像データの書き込みと読み出しとの競合をより適切に回避することができる。
【0009】
こうした本発明の画像表示装置において、前記非競合時書き込み処理は、前記所定のタイミングとしてクロック信号が入力される毎に単位画素分の画像データを取得すると共に該取得した画像データを圧縮して前記画像データ領域に書き込む処理であり、前記書き戻し処理は、前記クロック信号が入力されて前記非競合時書き込み処理が完了してから次のクロック信号が入力されるまでの空き時間に、前記一時記憶領域に記憶された画像データを読み出して前記画像データ領域に書き戻す処理であるものとすることもできる。こうすれば、画像データの書き戻しを比較的早期に行なうことができる。
【0010】
また、本発明の画像表示装置において、前記記憶手段は、それぞれ単位フレーム分の画像データを記憶可能な複数の画像データ領域を有する手段であり、前記画像データ書き込み手段は、前記単位フレーム分の画像データの書き込みが完了する毎に前記複数の画像データ領域に対して書き込み対象を順次切り替えて前記画像データを書き込む手段であり、前記画像データ読み出し手段は、前記単位フレーム分の画像データの読み出しが完了する毎に前記複数の画像データ領域のうち前記書き込み対象とは異なる画像データ領域を読み出し対象として前記画像データを読み出す手段であるものとすることもできる。こうすれば、競合の発生頻度をより少なくすることができる。この態様の本発明の画像表示装置において、前記画像データ読み出し手段は、前記競合が生じた場合には、該競合が生じたラインにおける画像データの読み出しが完了するまで該画像データの読み出しを継続し、前記競合が生じたラインにおける画像データの読み出しが完了したときに前記読み出し対象を切り替えて続きのラインから画像データの読み出しを行なう手段であるものとすることもできる。
【0011】
本発明のプログラムは、表示部を備えるコンピューターを上述したいずれかの本発明の画像表示装置として機能させるためのものである。このプログラムは、コンピューターが読み取り可能な記録媒体(例えばハードディスク、ROM、FD、CD、DVDなど)に記録されていてもよいし、伝送媒体(インターネットやLANなどの通信網)を介してあるコンピューターから別のコンピューターへ配信されてもよいし、その他どのような形で授受されてもよい。このプログラムをコンピューターに実行させれば、上述した画像表示装置と同様の効果を得ることができる。
【0012】
本発明の画像表示装置の制御方法は、
単位フレーム分の画像データを記憶する画像データ領域とデータを一時的に記憶する一時記憶領域とを有する記憶手段を備え、表示部への画像の表示を制御する画像表示装置の制御方法であって、
(a)画像データを取得すると共に該取得した画像データを圧縮して前記記憶手段に書き込むステップと、
(b)前記ステップ(a)による画像データの書き込みとは非同期に動作し、前記記憶手段の画像データ領域に記憶された画像データを読み出して解凍するステップと、
(c)前記ステップ(b)により解凍された画像データを前記表示部に出力するステップと、
を備え、
前記ステップ(a)は、前記画像データの書き込みが前記画像データの読み出しと競合しない非競合時には所定のタイミングで前記画像データを前記画像データ領域の書き込むべきアドレスに書き込む非競合時書き込み処理を実行し、前記画像データの書き込みが前記画像データの読み出しと競合する競合時には該競合が解消されるまで前記画像データを前記書き込むべきアドレスと関連付けて前記一時記憶領域に書き込む非競合時書き込み処理を実行し、前記競合が解消された以降には前記非競合時書き込み処理を再開すると共に前記所定のタイミングとは異なる空き時間に前記一時記憶領域に記憶された画像データを読み出して前記画像データ領域の前記書き込むべきアドレスに書き戻す書き戻し処理を実行するステップである
ことを要旨とする。
【0013】
この本発明の画像表示装置の制御方法によれば、画像データの書き込みが画像データの読み出しと競合しない非競合時には所定のタイミングで画像データを画像データ領域の書き込むべきアドレスに書き込む非競合時書き込み処理を実行し、画像データの書き込みが画像データの読み出しと競合する競合時にはその競合が解消されるまで画像データを書き込むべきアドレスと関連付けて一時記憶領域に書き込む競合時書き込み処理を実行し、競合が解消された以降には非競合時書き込み処理を再開すると共に所定のタイミングとは異なる空き時間に一時記憶領域に記憶された画像データを読み出して画像データ領域の書き込むべきアドレスに書き戻す書き戻し処理を実行する。これにより、複雑なアドレス管理を行なうことなく、画像データの書き込みと読み出しとが競合する競合時における画像データの書き込みと書き戻しとを行なうことができる。また、書き戻し処理は、所定のタイミングとは異なる空き時間に行なうから、書き込み処理全体で遅延が生じないようにすることができる。これらの結果、画像データの書き込みと読み出しとの競合をより適切に回避することができる。
【図面の簡単な説明】
【0014】
図1】本実施形態のプリンター20の外観斜視図。
図2】本実施形態のプリンター20の概略構成図。
図3】LCDコントローラー60の機能ブロック図。
図4】VRAMデータ書き込み処理の一例を示すフローチャート。
図5】VRAMデータ読み出し処理の一例を示すフローチャート。
図6】VRAMに対するデータの書き込みおよび読み出しの様子。
図7】変形例のVRAMデータ読み出し処理を示すフローチャート。
図8】VRAMに対するデータの書き込みおよび読み出しの様子。
【発明を実施するための形態】
【0015】
次に、本発明の実施の形態を図面に基づいて説明する。図1は、本発明の一実施形態であるプリンター20の外観を示す外観斜視図であり、図2は、本実施形態のプリンター20の構成の概略を示す概略構成図である。
【0016】
本実施形態のプリンター20は、印刷機構40(図2参照)を内蔵しL版サイズの用紙に印刷を行なうフォトプリンターとして構成されており、その外観としては、図1に示すように、本体21の上面には本体21を持ち運ぶための取っ手22が、本体21の背面にはセットした用紙を自動給紙するオートシートフィーダー23が、本体21の前面には印刷機構40により印刷された用紙を保持する排紙トレイ24と写真や印刷時の設定を確認するための液晶ディスプレイ(LCD)25が、本体21の側面には電源をオンオフするための電源ボタン26が、それぞれ設けられている。また、本体21の前面には、排紙トレイ24に隣接した位置に赤外線通信ポート28(受光部)が設けられており、この赤外線通信ポート28に発光部30aを向けてリモートコントロール装置30を操作することにより、プリンター20を遠隔操作できるようになっている。なお、リモートコントロール装置30は、プリンター20を遠隔操作するためのボタン類として、電源をオンオフするための電源ボタン31と、印刷中に押されると印刷を中止し写真選択画面で押されると印刷枚数や写真の選択を解除するストップ/設定クリアボタン32と、トップメニュー画面を表示するためのトップメニューボタン33と、印刷枚数を設定するための印刷枚数設定ボタン34と、項目や設定値を選択するための上下左右ボタン35と、項目を決定したり次の画面に進むためのOKボタン36と、一つ前の画面に戻る戻るボタン37と、印刷を開始する印刷ボタン38と、設定画面を表示する設定ボタン39などを備える。
【0017】
印刷機構40は、図2に示すように、左右方向(主走査方向)にループ状に架け渡されたキャリッジベルト43により駆動されガイド42に沿って左右に往復するキャリッジ41と、キャリッジ41にシアン・マゼンタ・イエロー・ブラック等の各色のインクを供給するインクカートリッジ44と、各インクカートリッジ44から供給された各インクに圧力をかけてノズルから用紙Sに向けてインクを吐出する印刷ヘッド45と、副走査方向に用紙Sを搬送する搬送ローラー46とを備える。インクカートリッジ44は、印刷機構40の下方に取り付けられており、インクカートリッジ44がキャリッジ41上に搭載されていない、いわゆるオフキャリッジタイプである。印刷ヘッド45は、ここでは圧電素子に電圧をかけることによりこの圧電素子を変形させてインクを加圧する方式を採用しているが、発熱抵抗体(例えばヒータなど)に電圧をかけインクを加熱して発生した気泡によりインクを加圧する方式を採用してもよい。
【0018】
LCD25は、LCDコントローラー60による表示制御を受けて文字や図形,記号などを表示する。LCD25は、本実施形態では、800×480ピクセルの解像度により構成されており、800ピクセル分の画像データにより1ラインが形成され、480ラインのラインデータにより1フレーム(1画像)が形成される。
【0019】
また、本実施形態のプリンター20は、その制御系としては、図2に示すように、プリンター全体の制御を司るメインコントローラー50と、印刷機構40を制御するプリンターASIC48と、赤外線通信ポート28を介して入力した赤外線信号を操作信号として処理する赤外線通信コントローラー56と、LCD25を表示制御するLCDコントローラー60と、メモリーカードスロット57に挿入されたメモリーカードMCに対するデータの書き込みや読み出しを制御するメモリーカードコントローラー58と、を備え、これらはバス59を介して互いに電気的に接続されている。
【0020】
図3は、LCDコントローラー60の機能ブロックを示すブロック図である。LCDコントローラー60は、図示するように、入力されたシリアルデータの画像データをパラレルデータの画像データに変換する入力SP変換部61と、パラレルデータに変換された画像データの1ライン分を一時的に保持するラインバッファー62と、ラインバッファー62から画像データを1画素ずつ読み出して圧縮する圧縮部63と、1フレーム分の圧縮データを格納可能な画像データ領域と圧縮データを一時的に格納可能なTMP領域とをそれぞれ有する二つのVRAM65a,65b(以下、VRAM65aをVRAM1と呼び、VRAM65bをVRAM2と呼ぶ場合がある)と、VRAM65a,65bへの圧縮データの書き込みとVRAM65a,65bからの圧縮データの読み出しとを制御するVRAM制御部64と、水平/垂直同期信号などの各種同期信号を発生させる同期信号発生部66と、水平/垂直同期信号に同期してVRAM65から周期的に圧縮データを読み出すと共に解凍して元の画像データを復元する解凍部67と、復元された画像データをLCD25に表示するためのデータ変換を行なう出力データ変換部68と、LCD25に接続されたLCDインターフェース(I/F)69とを備える。ここで、圧縮データの書き込みは、1フレーム分の書き込みが完了する毎に2つのVRAM65a,65bの間で書き込み対象を交互に切り替えて行ない、圧縮データの読み出しは、1フレーム分の読み出しが完了したときに圧縮データの書き込みが行なわれているVRAM(書き込み対象)とは逆のVRAMを読み出し対象に設定して行なう。
【0021】
VRAM65a,65bからの圧縮データの読み出しは、同期信号発生部66から水平同期信号が出力されたときに解凍部67がVRAM制御部64に指示することにより開始され、次の水平同期信号が出力されるまでの1周期の間に1ライン分のデータを画像の左端から右方向に順に読み出すことにより行なわれる。具体的には、同期信号発生部66から出力される1画素分の圧縮データの読み出しタイミングを定めるクロック信号DCLK(例えば、10MHz)に従って、1画素分ずつ圧縮データを読み出すことにより行なわれる。一方、VRAM65a,65bへの圧縮データの書き込みは、ラインバッファー62に1ライン分の画像データが格納されたときに圧縮部63がVRAM制御部64に指示することにより開始され、上述したデータの読み出し(水平同期信号)とは非同期に行なわれる。具体的には、同期信号発生部66から出力される1画素分のデータの書き込みのタイミングを定めるクロック信号SCLK(例えば、20MHz)に従って、画像の左端から右方向に1画素分ずつラインバッファー62から画像データを読み出し圧縮してからVRAM65a,65bに書き込むことにより行なわれる。このように、VRAM65a,65bからの圧縮データの読み出しとVRAM65a,65bへの圧縮データの書き込みとは非同期で行なわれることから、VRAM65a,65bからのデータの読み出しの途中で同一のVRAMに対して新たなデータの書き込みが追い越し、或いは、VRAM65a,65bへのデータの書き込みの途中で同一のVRAMに対してデータの読み出しが追い越す場合が生じ得る。本実施形態では、圧縮データの書き込みタイミングを定めるクロック信号SCLKを20MHzで発生させ、圧縮データの読み出しタイミングを定めるクロック信号DCLKを10MHzで発生させるものとしたから、前者の追い越し現象が生じ得るものとなる。
【0022】
メインコントローラー50は、CPU51を中心とするマイクロプロセッサーとして構成されており、各種処理プログラムや各種データ、各種テーブルなどを記憶するROM52と、一時的にデータを記憶するRAM53と、電気的に書き換え可能で電源を切ってもデータは保持されるフラッシュメモリー54と、電源ボタン26からの操作信号を入力するインターフェース55(I/F)とを備える。このメインコントローラー50は、メモリーカードスロット57に挿入されたメモリーカードMCから画像ファイルなどを入力したり、赤外線通信コントローラー56からの操作信号や印刷機構40の各部からの検出信号などを入力したりする。また、メインコントローラー50は、メモリーカードMCに編集画像などを保存したり、プリンターASIC48への指令信号やLCDコントローラー60への制御信号を出力したりする。
【0023】
次に、こうして構成された本実施形態のプリンター20の動作、特に、LCDコントローラー60の動作について説明する。図4は、圧縮部63により実行されるVRAMデータ書き込み処理の一例を示すフローチャートであり、図5は、解凍部67により実行されるVRAMデータ読み出し処理の一例を示すフローチャートである。以下、VRAMデータ書き込み処理とVRAMデータ読み出し処理の詳細について順に説明する。
【0024】
図4のVRAMデータ書き込み処理では、まず、ラインバッファー62に1ライン分の画像データが格納されるのを待つ(ステップS100)。ラインバッファー62に1ライン分の画像データが格納されると、クロック信号SCLKが入ったか否かを判定し(ステップS102)、クロック信号SCLKが入ったと判定されると、ラインバッファー62から画像データを読み出して(ステップS104)、読み出した画像データを圧縮する(ステップS106)。なお、画像データの圧縮は、ライン毎に行なわれ、本実施形態では、ラインバッファー62の先頭画素(各ラインの左端画素)については無圧縮とし、そのラインにおける2番目の画素から最終画素までの各画素については左に隣接する画素の画像データとの差分を演算すると共に演算した差分を量子化(DPCM符号化)することにより行なうものとした。
【0025】
次に、圧縮データの書き込みと読み出しとが競合しているか否かを値として示す競合判定フラグFが値0か否かを判定し(ステップS108)、競合判定フラグFが値0(競合なし)の場合には、読み出し(リード)側のアドレスカウンターAc2を解凍部67から入力し(ステップS110)、入力した読み出し側のアドレスカウンターAc2と現在の書き込み(ライト)側のアドレスカウンターAc1との差分(Ac2−Ac1)が予め定められている閾値Aref以上か否かを判定する(ステップS112)。この判定は、本実施形態では、圧縮データの書き込み速度が読み出し速度よりも速いことから、圧縮データの書き込みが読み出しを追い越す可能性があるか否か(読み出しと書き込みとで競合が生じているか否か)を判定するものとなる。アドレスカウンターAc1,Ac2の差分が閾値Aref以上と判定されると、後述するVRAMデータ読み出し処理で圧縮データを読み出しているラインでは読み出しと書き込みとは競合しないと判断して、圧縮データを書き込み対象のアドレスカウンターAc1が示すアドレスに書き込み(ステップS114)、アドレスカウンターAc1を値1だけインクリメントする(ステップS116)。そして、TMPカウンターCtmpが値0か否か(ステップS118)、1ライン分の圧縮データの格納が完了したか否か(ステップS120)をそれぞれ判定する。ここで、TMPカウンターCtmpは、後述する書き戻し処理により書き戻すべき圧縮データがTMP領域に含まれているか否かを判定するものである。ステップS118でTMPカウンターCtmpが値0でない即ちTMP領域に書き戻すべき圧縮データが含まれていると判定されたり、ステップS120で1ライン分の圧縮データの格納が完了していないと判定されたときには、ステップS102に戻る。一方、TMPカウンターCtmpが値0と判定され且つ1ライン分の圧縮データの格納が完了したと判定されると、アドレスカウンターAc1が、VRAM65a,65bのうち今回の書き込み対象の画像データ領域における最終ラインの最終画素を示すアドレスAendであるか否かを判定し(ステップS122)、アドレスカウンターAc1が最終画素を示すアドレスAendでないと判定されると、次のラインの圧縮データの書き込みを行なうためにステップS100に戻る。一方、アドレスカウンターAc1が最終画素を示すアドレスAendと判定されると、アドレスカウンターAc1を画像の先頭ラインの先頭画素を示すアドレスに初期化すると共に(ステップS124)、次の書き込み対象をVRAM65a,65bの2つの画像データ領域のうち今回の書き込み対象とは異なる方に設定して(ステップS126)、本処理を終了する。なお、本実施形態では、先頭ラインの先頭画素から最終ラインの最終画素までの各画素におけるアドレス管理を、VRAM65a,65bとで同一のアドレスカウンターAc1,Ac2を用いて行なうものとした。
【0026】
ステップS112で読み出し側のアドレスカウンターAc2と書き込み側のアドレスカウンターAc1との差分(Ac2−Ac1)が閾値Aref未満と判定されると、VRAMデータ読み出し処理で圧縮データを読み出しているラインで書き込みと読み出しとが競合していると判断して、競合判定フラグFに値1を設定し(ステップS128)、圧縮データを現在の書き込み側のアドレスカウンターAc1が示すアドレスと関連付けてTMP領域に書き込む(ステップS130)。そして、TMPカウンターCtmpを値1だけインクリメントして(ステップS132)、ステップS116の処理に進む。なお、ステップS108で競合判定フラグFが値1と判定された場合には、ステップS110,S112,S128をスキップして、ステップS130の圧縮データのTMP領域への書き込みとステップS132のTMPカウンターCtmpのインクリメントとを行なう。このように、VRAMデータ読み出し処理で圧縮データを読み出しているラインで書き込みと読み出しとが競合する場合には、競合判定フラグFが値1から値0となるまで(競合が解消するまで)圧縮データをTMP領域に退避させることで、競合による書き込みエラーや読み出しエラーが生じるのを防止しているのである。
【0027】
ステップS102でクロック信号SCLKが入力されていないと判定されたときには、次のクロック信号SCLKが入力されるまでに、書き戻し処理を実行するための空き時間があるか否か(ステップS134)、競合判定フラグFが値0であるか否か、即ち、競合が解消されているか否か(ステップS136)、TMPカウンターCtmpが値1以上か否か、即ちTMP領域に書き戻すべき圧縮データが含まれているか否か(ステップS138)をそれぞれ判定する。ステップS134〜S138の判定のいずれもが肯定的な場合には、TMP領域から圧縮データと書き込み側のアドレスカウンターAc1とを読み出し(ステップS140)、読み出した圧縮データを書き込み対象のアドレスカウンターAc1が示すアドレスに書き戻す書き戻し処理を実行し(ステップS142)、TMPカウンターCtmpをデクリメントして(ステップS144)、ステップS118に進む。このように、書き戻し処理は、読み出しと書き込みの競合が解消した以降に、クロック信号SCLKが入って本来の圧縮データの書き込みが完了してから次のクロック信号DCLKが入るまでの空き時間に行なわれる。この際、TMP領域には圧縮データとアドレスカウンターAc1とを関連付けて書き込んでおくことにより、特別なアドレス管理の必要なしに、圧縮データの書き戻しを行なうことができる。なお、ステップS134〜S138の判定のいずれかが否定的な場合には、書き戻し処理を行なうことなく、ステップS118に進む。
【0028】
次に、図5のVRAMデータ読み出し処理について説明する。VRAMデータ読み出し処理では、まず、同期信号発生部66から水平同期信号が入るのを待ち(ステップS200)、水平同期信号が入ると、クロック信号DCLKが入るのを待つ(ステップS202)。クロック信号DCLKが入ると、VRAM65a,65bの2つの画像データ領域のうち現在の読み出し対象の読み出し(リード)側のアドレスカウンターAc2が示すアドレスから1画素分の圧縮データを読み出すと共に(ステップS204)、アドレスカウンターAc2を値1だけインクリメントして(ステップS206)、1ライン分の圧縮データの読み出しが完了したか否かを判定する(ステップS208)。1ライン分の圧縮データの読み出しが完了していないと判定されると、ステップS202に戻り、次のクロック信号DCLKが入るのを待って次の読み出し側のアドレスカウンターAc2が示すアドレスから圧縮データを読み出すステップS202〜S206の処理を繰り返す。一方、1ライン分の圧縮データの読み出しが完了したと判定されると、読み出した1ライン分の圧縮データを解凍し(ステップS210)、解凍して得られた元の画像データを出力データ変換部68に出力する(ステップS212)。そして、競合判定フラグFを入力し(ステップS214)、入力した競合判定フラグFが値1(競合あり)か否かを判定し(ステップS216)、競合判定フラグFが値1と判定されると、圧縮データの書き込みと読み出しとの競合は解消されたと判断し、競合判定フラグFに値0を設定して(ステップS218)、次のステップS220の処理に進む。なお、競合判定フラグFが値0と判定された場合にはステップS218の処理をスキップして次のステップS220の処理に進む。
【0029】
そして、読み出し側のアドレスカウンターAc2が、VRAM65a,65bのうち今回の書き込み対象の画像データ領域における最終ラインの最終画素を示すアドレスAendであるか否か、即ち全ラインのデータの読み出しが完了したか否かを判定する(ステップS220)。全ラインのデータの読み出しが完了していないときには、ステップS200に戻って水平同期信号が入るたびに残りのラインに対してステップS202〜S218の処理を繰り返し、全ラインのデータの読み出しが完了すると、アドレスカウンターAc2を画像の先頭ラインの先頭画素を示すアドレスに初期化すると共に(ステップS222)、次の読み出し対象をVRAM65a,65bの2つの画像データ領域のうち現在の書き込み対象とは異なる方に設定して(ステップS224)、本処理を終了する。
【0030】
図6は、書き込み速度が読み出し速度よりも速い状態で同一のVRAM(画像データ領域)に対して圧縮データの書き込みと読み出しとが競合する場合における書き込み処理と読み出し処理の様子を示す説明図である。いま、VRAM1(VRAM65a)に対して1フレーム分の圧縮データの読み出しが完了し、次にVRAM2(VRAM65b)に対して次の1フレーム分の圧縮データの読み出しを行なっている途中で書き込み(ライト)が読み出し(リード)に追いついた場合を考える。VRAM2への圧縮データの書き込みが読み出しに追いつくと、書き込み側ではVRAM2のTMP領域に圧縮データの書き込み(退避)を開始し、読み出し側では追いつかれたラインの圧縮データの読み出しを継続してそのラインを読み切る。前述したように、今は書き込み速度が読み出し速度よりも速い状態を考えているから、読み出し側が競合が発生したラインの圧縮データを読み切ると、書き込み側のアドレスカウンターAc1は読み出し側のアドレスカウンターAc2よりも進んでいる状態となる。そして、読み出し側が書き込み側に追いつかれたラインを読み切ると、そのまま続きのラインの読み出しを順次行なう。一方、書き込み側は、読み出し側が競合したラインの圧縮データを読み切って競合が解消されると、正規の位置(アドレスカウンターAc1が示すアドレス)に書き込みを再開する。そして、クロック信号SCLKに従って正規の位置への圧縮データの書き込みが完了すると、次にクロック信号DSCLが入るまでの空き時間に、TMP領域に格納された圧縮データをこれに関連付けられたアドレスカウンターAc1と共に読み出し、読み出した圧縮データを読み出したアドレスカウンターAc1が示すアドレスに書き戻す。
【0031】
ここで、本実施形態の構成要素と本発明の構成要素との対応関係を明らかにする。本実施形態の液晶ディスプレイ(LCD)25が本発明の「表示部」に相当し、VRAM65a,65bが「記憶手段」に相当し、圧縮部63とVRAM制御部64と同期信号発生部66とが「画像データ書き込み手段」に相当し、解凍部37とVRAM制御部64と同期信号発生部66とが「画像データ読み出し手段」に相当し、出力データ変換部68が「表示出力手段」に相当する。なお、本実施形態では、プリンター20の動作を説明することにより本発明の画像表示装置の制御方法の一例も明らかにしている。
【0032】
以上説明した本実施形態のプリンター20によれば、VRAM65a,65bに対してクロック信号SCLKに従って圧縮データを書き込む書き込み処理とクロック信号SCLKとは非同期のクロック信号DCLKに従って圧縮データを読み出す読み出し処理とを行なうものにおいて、同一のVRAMに対する圧縮データの書き込みと読み出しとが競合する場合には、書き込み処理側で、圧縮データを本来の格納先であるアドレスカウンターAc1に関連付けてTMP領域に書き込んでおき、競合が解消された場合には本来の格納先である画像データ領域のアドレスカウンターAc1が示すアドレスに対して圧縮データの書き込みを再開し、その空き時間にTMP領域から圧縮データとアドレスカウンターAc1とを読み出すと共に読み出した圧縮データを読み出したアドレスカウンターAc1が示すアドレスに書き込むことにより、本来の格納先に書き戻すから、特別なアドレス管理を必要とすることなしに、同一のVRAMに対して圧縮データの書き込みが読み出しを追い越す追い越し現象が生じるのを回避することができる。この結果、液晶ディスプレイ25への画像の表示をより適切に行なうことができる。
【0033】
上述した実施形態では、入力SP変換部61からの画像データをラインバッファー62を介して取得すると共に圧縮してVRAMに書き込むものとしたが、入力SP変換部61から直接に画像データを取得するものとしてもよい。この場合、ラインバッファー62を省略することができる。
【0034】
上述した実施形態では、読み出し処理側では、圧縮データの書き込みと読み出しとが競合したときには、競合が生じたラインの圧縮データを読み切り、競合が生じたラインの圧縮データを読み切ると、同一のVRAMに対して続くラインの圧縮データの読み出しを順次行なうものとしたが、これに限定されるものではなく、競合が生じたラインの圧縮データを読み切ると、読み出し対象のVRAMを切り替えてラインの途中から圧縮データを読み出すものとしてもよい。この場合の変形例のVRAMデータ読み出し処理を図7に示す。なお、図7のVRAMデータ読み出し処理のうち図5のVRAMデータ読み出し処理と同一の処理については同一のステップ番号を付し、その説明は重複するから省略する。図7のVRAMデータ読み出し処理では、1ライン分の圧縮データの読み出しが完了し(ステップS208)、読み出した圧縮データの解凍やデータ出力を行なうと(ステップS210,S212)、競合判定フラグFが値1である場合に(ステップS214,S216)、競合は解消したと判断して、競合判定フラグFを値0に設定すると共に(ステップS218)、読み出し対象のVRAMを切り替えて(ステップS219)、ステップS220の処理に進む。このとき、読み出し側のアドレスカウンターAc2はリセットしない状態で読み出し対象のVRAMだけを切り替えるから、続きのラインから圧縮データの読み出しが再開されることになる。
【0035】
図8は、図7に示す変形例のVRAMデータ読み出し処理を用いた場合の競合時における書き込み処理と読み出し処理の様子を示す説明図である。なお、図8の説明図では、競合が解消した後の読み出し処理が異なる点を除いて図6の説明図と同様であり、同様の部分の説明は重複するから省略する。読み出し側が書き込みに追いつかれたラインの読み出しを完了すると、読み出し対象のVRAMを切り替えて、読み出し側のアドレスカウンターAc2を1つ進めた続きのラインからの圧縮データの読み出しを開始する。一方、書き込み側は、読み出し側が競合したラインの圧縮データを読み切ると、競合が解消されたと判断し、正規の位置(アドレスカウンターAc1が示すアドレス)に書き込みを再開し、その空き時間に圧縮データの書き戻しを行なう。このように、競合が解消されると、書き込み側と読み出し側とは別々のVRAMに対して処理を行なうから、同一のVRAMに対して読み出しが書き込みに複数回に亘って追いつかれるのを回避することができる。したがって、上述した実施形態では、読み出し速度と書き込み速度が同一のVRAMに対して読み出しが書き込みに1回だけ追いつかれる場合に有効なものとなり、この変形例では、読み出し速度が書き込み速度に対して著しく遅く、同一のVRAMに対して読み出しが書き込みに複数回追いつかれることがあり得る場合に特に有効なものとなる。
【0036】
上述した実施形態では、クロック信号SCLKが入ってから次のクロック信号SCLKが入るまでの空き時間に書き戻し処理を行なうものとしたが、1フレーム分の圧縮データの書き込みが完了してから次の1フレーム分の圧縮データの書き込みを開始するまでの空き時間に書き戻し処理を行なうものとしてもよい。
【0037】
上述した実施形態では、VRAM65a,65bへの圧縮データの書き込み速度(クロック信号SCLK)が読み出し速度(クロック信号DCLK)よりも速い場合を例に説明したが、書き込み速度が読み出し速度よりも遅い場合であっても構わない。この場合、圧縮データの書き込みと読み出しの競合は、VRAMの先頭アドレスに圧縮データを書き込むタイミングと同一のVRAMの先頭アドレスから圧縮データを読み出すタイミングとが丁度重なったときに生じ得る。
【0038】
上述した実施形態では、2つのVRAM65a,65bのそれぞれに圧縮データを一時的に記憶するTMP領域を設けるものとしたが、一方のVRAMだけにTMP領域を設けるものとしてもよい。この場合、圧縮データの書き込みと読み出しとの競合が生じたときに、TMP領域には圧縮データとアドレスカウンターAc1の他に2つのVRAM65a,65bのうちいずれのVRAMに書き戻すべきかを示す識別情報を格納するものとすればよい。
【0039】
上述した実施形態では、圧縮データの書き込みや読み出しを行なうためのVRAMとしてVRAM65aとVRAM65bの2つを備えるものとしたが、1つだけ備えるものとしてもよいし、3つ以上備えるものとしてもよい。
【0040】
上述した実施形態では、本発明を液晶ディスプレイ25付きのプリンター20に適用して説明したが、これに限られず、ディスプレイを備える機器であれば、例えば、FAX機器やビューワー,パーソナルコンピューターなど如何なる機器に適用するものとしてもよい。また、ディスプレイも液晶ディスプレイに限られず、プラズマディスプレイや有機ELディスプレイなど複数の画素により構成される如何なるディスプレイに適用するものとしてもよい。
【0041】
なお、本発明は上述した実施形態に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の態様で実施し得ることはいうまでもない。
【符号の説明】
【0042】
20 プリンター、21 本体、22 取っ手、23 オートシートフィーダー、24 排紙トレイ、25 液晶ディスプレイ、26 電源ボタン、28 赤外線通信ポート、30 リモートコントロール装置、30a 発光部、31 電源ボタン、32 ストップ/設定クリアボタン、33 トップメニューボタン、34 印刷枚数設定ボタン、35 上下左右ボタン、36 OKボタン、37 戻るボタン、38 印刷ボタン、39 設定ボタン、40 印刷機構、41 キャリッジ、42 ガイド、43 キャリッジベルト、44 インクカートリッジ、45 印刷ヘッド、46 搬送ローラー、48 プリンターASIC、50 メインコントローラー、51 CPU、52 ROM、53 RAM、54 フラッシュメモリー、55 インターフェース(I/F)、56 赤外線通信コントローラー、57 メモリーカードスロット、58 メモリーカードコントローラー、60 LCDコントローラー、61 入力SP変換部、62 ラインバッファー、63 圧縮部、64 VRAM制御部、65a,65b VRAM、66 同期信号発生部、67 解凍部、68 出力データ変換部、69 LCDインターフェース(I/F)、MC メモリーカード。
図1
図2
図3
図4
図5
図6
図7
図8