Processing

Please wait...

Settings

Settings

Goto Application

1. WO2012060114 - DRAWING DEVICE AND DRAWING METHOD

Document

明 細 書

発明の名称 描画装置及び描画方法

技術分野

0001  

背景技術

0002   0003  

先行技術文献

特許文献

0004  

発明の概要

発明が解決しようとする課題

0005   0006   0007  

課題を解決するための手段

0008  

発明の効果

0009  

図面の簡単な説明

0010  

発明を実施するための形態

0011   0012   0013   0014   0015   0016   0017   0018   0019   0020   0021   0022   0023   0024   0025   0026   0027   0028   0029   0030   0031   0032   0033   0034   0035   0036   0037   0038   0039   0040   0041   0042   0043   0044   0045   0046   0047   0048   0049   0050   0051   0052   0053   0054   0055   0056   0057   0058   0059   0060   0061   0062   0063   0064   0065   0066   0067   0068   0069   0070   0071   0072   0073   0074   0075   0076   0077   0078   0079   0080   0081   0082   0083   0084   0085   0086   0087   0088   0089   0090   0091   0092   0093   0094   0095   0096   0097   0098   0099   0100   0101   0102   0103   0104   0105   0106   0107   0108   0109   0110   0111  

産業上の利用可能性

0112  

符号の説明

0113  

請求の範囲

1   2   3   4   5   6   7   8   9  

図面

1   2   3   4   5   6   7   8   9   10   11   12   13   14   15   16  

明 細 書

発明の名称 : 描画装置及び描画方法

技術分野

[0001]
 本発明は、空気調和装置や照明装置等の遠隔操作に用いられるリモートコントローラ等のフルドット液晶画面に画像を描画する描画装置及び描画方法に関する。

背景技術

[0002]
 従来、空気調和装置や照明装置等の遠隔操作に用いられるリモートコントローラの表示画面には、例えばセブンセグメントタイプの単純なものが用いられてきた。しかしながら、最近では、フルドット液晶の表示画面を備えるものが増えている(例えば、特許文献1参照)。
[0003]
 フルドット液晶の表示画面において文字などの2次元画像を表示する際には、マイクロコンピュータのプロセッサとは独立してデータ転送を行うDMAコントローラが用いられるようにするがの望ましい。DMAコントローラを用いてROM(Read Only Memory)から文字のビットマップ画像をVRAM(Video Random Access Memory)に転送すれば、プロセッサの不可は著しく軽減される。

先行技術文献

特許文献

[0004]
特許文献1 : 特開2010-175786号公報

発明の概要

発明が解決しようとする課題

[0005]
 ところが、ROMでは、各行のデータ列が上から順番に連結された状態でアドレス順に文字等のビットマップ画像が記憶されている。このため、一般的なDMA(Direct Memory Access)コントローラを用いて、ビットマップ画像のデータをそのままVRAMに転送しても、表示画面上でその文字の画像が正確に表示されるようにはならない。VRAMにその文字の画像を正確に表示するためには、1行分のデータ列が書き込まれる度に、VRAMにおける書き込み位置を改行する必要がある。
[0006]
 このような背景から、現状では、ROMから読み込んだ画像データをVRAMに書き込む際にDMAコントローラは用いられていない。
[0007]
 本発明は、上記実情に鑑みてなされたもので、フルドット液晶の表示画面に画像を表示する際のプロセッサの負荷を軽減することができる描画装置及び描画方法を提供することを目的とする。

課題を解決するための手段

[0008]
 上記目的を達成するために、この発明に係る描画装置は、各行のデータ列が順番に連結されて記憶媒体に記憶された画像情報を読み出して、2次元の画像表示用メモリの所定の領域に書き込むことにより、画像情報に基づく画像を表示する。この描画装置において、読み出し部は、プロセッサとは独立して、記憶媒体に記憶された画像情報を、その先頭の読み出し開始位置から所定の単位で順次読み出していく。書き込み部は、プロセッサとは独立して、読み出し部によって読み出されたデータを、画像表示用メモリにおける書き込み開始位置から所定の単位で横方向に順次書き込んでいく。書き込み位置更新部は、書き込み部による各行のデータ列の書き込みが完了する度に、画像表示用メモリにおける書き込み開始位置を、次の行の同じ列の位置に更新する。

発明の効果

[0009]
 この発明によれば、書き込み位置更新部により、画像表示用メモリへの各行のデータ列の書き込みが完了する度に、画像表示用メモリにおける書き込み開始位置を改行する。これにより、画像情報を記憶媒体から読み込んで画像表示用メモリに書き込むのにDMAコントローラを用いることができる。この結果、フルドット液晶の表示画面に画像を表示する際のプロセッサの負荷を軽減することができる。

図面の簡単な説明

[0010]
[図1] この発明の実施の形態1に係る描画装置の構成を示すブロック図である。
[図2] 図2(A)は、文字のビットマップ画像の一例を示す図である。図2(B)は、図2(A)の文字のビットマップ画像のデータがROMに格納されている様子を模式的に示す図である。
[図3] 図1のDMAコントローラの構成を示すブロック図である。
[図4] 図4(A)は、図3のDMAコントローラにおける第1の転送モードを説明するための図である。図4(B)は、図3のDMAコントローラにおける第2の転送モードを説明するための図である。図4(C)は、図3のDMAコントローラにおける第3の転送モードを説明するための図である。
[図5] 図1のVRAMのメモリマップを説明するための図である。
[図6] 図1の表示部の表示画面に表示される全体画像の一例を示す図である。
[図7] 図1のコンパニオンチップの構成と、信号の流れを説明するためのブロック図である。
[図8] 図1の描画装置の処理シーケンス図である。
[図9] この発明の実施の形態2に係る描画装置の構成を示すブロック図である。
[図10] 図9のコンパニオンチップの構成と、信号の流れを説明するためのブロック図である。
[図11] 図9の描画装置の処理シーケンス図である。
[図12] ROMのメモリマップの一例を示す図である。
[図13] この発明の実施の形態3に係る描画装置の構成を示すブロック図である。
[図14] オフセットを説明するための図である。
[図15] 図15(A)及び図15(B)は、連続して横に並ぶ文字を1つの画像データとしてROMに記憶する方法を説明するための図である。
[図16] 各文字の画像データを、連続して横に並ぶ2文字の画像データに変換してRAMに保持する様子を説明するための図である。

発明を実施するための形態

[0011]
 この発明の実施の形態について、図面を参照して詳細に説明する。
[0012]
実施の形態1.
 まず、この発明の実施の形態1について説明する。
[0013]
 まず、図1を参照して、本実施形態に係る描画装置100の構成について説明する。この描画装置100は、例えば、図示しない空気調和装置のリモートコントローラである。図1に示すように、描画装置100は、マイクロコンピュータ1、表示部2及びコンパニオンチップ3を備える。
[0014]
 マイクロコンピュータ1は、CPU10、ROM11、RAM(Random Access Memory)12、DMAコントローラ13A、13B、13C、外部インターフェイス(I/F)14、VRAM15及び操作入力インターフェイス(I/F)16を備える。これらはバス17を介して互いにデータ送受信可能に接続されている。
[0015]
 プロセッサとしてのCPU10は、描画装置100全体を統括制御する。CPU10は、描画装置(リモートコントローラ)100だけでなく、空気調和装置全体を統括制御するものであってもよい。また、CPU10は、複数の空気調和装置に跨る協調動作を行うものであってもよい。
[0016]
 記憶媒体としてのROM11には、表示される複数の画像データが記憶されている。このような画像データには、文字や図形などの画像データが含まれている。図2(A)には、このような画像の一例として、文字「D」のビットマップ画像が示されている。このビットマップ画像は、16ビット×16ビットの画像データである。1バイトを8ビットとすると、このビットマップ画像は、32バイトの画像データとなる。
[0017]
 ここで、ビットマップ画像の最上行の左側8ビットをまとめてデータD1とし、最上行の右側8ビットをデータD2とする。また、次の行の左側8ビットをまとめてデータD3とし、その行の右側8ビットをデータD4とする。同様にして、各行の左側8ビットと右側8ビットとをそれぞれまとめていくと、ビットマップ画像の最下行の右側8ビットは、データD32となる。
[0018]
 このビットマップ画像のデータは、ROM11に、図2(B)のようにして記憶されている。図2(B)に示すように、図2(A)のビットマップ画像の最上行の左側8ビットのデータD1は、アドレスA1に格納されている。その次のアドレスA2には、データD2が格納されている。同様に、アドレスA3には、次の行の左側8ビットのデータD3が格納され、アドレスA4には、右側8ビットのデータD4が格納されている。そして、最後のアドレスA32には、最下行の右側8ビットのデータD32が格納されている。
[0019]
 このように、ROM11には、表示されるべき文字等の画像データの各行のデータ列が順番に連結された状態で、アドレス順に記憶されている。
[0020]
 RAM12には、CPU10で用いられるデータ等が必要に応じて書き込まれる。
[0021]
 DMAコントローラ13A、13B、13Cは、CPU10とは独立してデータ転送を行う。図3には、DMAコントローラ13Aの構成が示されている。図3に示すように、DMAコントローラ13Aは、制御部20、読み出し開始アドレスレジスタ21、書き込み開始アドレスレジスタ22及び転送回数レジスタ23を備えている。
[0022]
 制御部20は、バス17を介して転送元から転送先にデータを転送する。読み出し開始アドレスレジスタ21には、転送元における読み出し開始アドレスが設定される。書き込み開始アドレスレジスタ22には、転送先における書き込み開始アドレスが設定される。転送回数レジスタ23には、DMA転送を行う回数が設定される。1回の転送につき転送されるデータサイズは1バイトであるため、例えば32バイトのデータを転送する際の転送回数は32回となる。
[0023]
 制御部20は、読み出し開始アドレスレジスタ21に設定された読み出し開始アドレスからデータをアドレス単位(1バイト)で読み取っていく。そして、制御部20は、読み取ったデータを、書き込み開始アドレスレジスタ22に設定された書き込み開始アドレスから順次書き込むことにより、転送元から転送先へデータをDMA転送する。DMA転送は、転送回数レジスタ23に格納された転送回数で終了する。
[0024]
 DMAコントローラ13B、13Cの構成も、図3に示すDMAコントローラ13Aの構成と同じである。なお、以下では、読み出し開始アドレスレジスタ21、書き込み開始アドレスレジスタ22及び転送回数レジスタ23をまとめてレジスタ群とも呼ぶ。
[0025]
 DMAコントローラ13A、13B、13Cは、3つの転送モードでのデータ転送が可能である。
[0026]
 図4(A)には、第1の転送モードが模式的に示されている。図4(A)に示すように、第1の転送モードは、転送元のアドレス及び転送先のアドレスを両方1バイト書き込む度にシフトさせていく転送モードである。この第1の転送モードによれば、転送元のデータは転送先にそのままコピーされる。
[0027]
 図4(B)には、第2の転送モードが模式的に示されている。図4(B)に示すように、第2の転送モードは、転送先のアドレスを固定する転送モードである。この第2の転送モードによれば、転送元のデータは、転送先の同じアドレス(書き込み開始アドレス)に上書きされる。
[0028]
 図4(C)には、第3の転送モードが模式的に示されている。図4(C)に示すように、第3の転送モードは、転送元のアドレスを固定する転送モードである。この第3の転送モードによれば、読み出し開始アドレスに書き込まれた転送元のデータが、書き込み開始アドレスから、転送先の複数のアドレスに転送回数に応じたバイト数だけ書き込まれる。
[0029]
 この実施の形態では、DMAコントローラ13Aが第2の転送モードで動作し、DMAコントローラ13Bが第3の転送モードで動作し、DMAコントローラ13Cが第1の転送モードで動作する。
[0030]
 外部I/F14は、外部の機器とのデータ送受信を行うための通信インターフェイスである。外部I/F14には、コンパニオンチップ3が接続されている。これにより、コンパニオンチップ3は、CPU10、ROM11、RAM12、DMAコントローラ13A、13B、13C、外部I/F14及びVRAM15とデータ送受信が可能である。
[0031]
 VRAM15は、2次元の画像表示用メモリである。図5には、VRAM15のメモリマップが模式的に示されている。図5に示すように、VRAM15におけるアドレスの方向は、列方向(横方向)となっている。最小のアドレスは、VRAM15の左上端となっており、最大のアドレスは、右下端となっている。
[0032]
 仮に、VRAM15の特定の位置Pを基準に、画像データ4を書き込もうとする場合には、特定の位置Pに対応するアドレスから画像データ4を書き込んでいくようになる。この際、画像データ4における次の行のデータ列を書き込むには、転送先のアドレスを、次の行の書き込み開始アドレスと同列のアドレスに更新するか、オフセットを加算する必要がある。
[0033]
 操作入力インターフェイス16は、ユーザによって操作されるボタン等の操作入力部を有するマンマシンインターフェイスである。
[0034]
 表示部2は、フルドット液晶の表示画面を有する。この表示画面のサイズは、例えば、縦が120乃至240ドットで、横が250乃至320ドットとなっている。VRAM15に画像データが書き込まれると、この表示画面には、その画像データに基づく画像が表示される。図6には、表示部2に表示された画面の一例が示されている。なお、表示画面上には、タッチパネルが設けられていてもよい。
[0035]
 図7には、コンパニオンチップ3の詳細な構成が示されている。図7に示すように、コンパニオンチップ3は、バッファ30と、制御部31と、レジスタデータメモリ(RDM)32とを備える。
[0036]
 バッファ30は、例えば1バイトのデータを保持可能なメモリである。制御部31は、CPU10からの指示に従って、バッファ30を介したDMA転送を制御する。レジスタデータメモリ32は、DMAコントローラ13Bの読み出し開始アドレスレジスタ21、書き込み開始アドレスレジスタ22及び転送回数レジスタ23に設定されるデータを記憶するメモリである。
[0037]
 コンパニオンチップ3の構成についてさらに詳細に説明する。
[0038]
 バッファ30には、ROM11から1バイト分の画像データがDMA転送される。このDMA転送は、DMAコントローラ13Aによって実行される。
[0039]
 このDMA転送に先立って、CPU10は、DMAコントローラ13Aのレジスタ群への設定を行う。この設定により、DMAコントローラ13Aの読み出し開始アドレスレジスタ21には、ROM11の画像データの先頭アドレスが設定される。また、書き込み開始アドレスレジスタ22には、コンパニオンチップ3のバッファ30のアドレスが設定される。また、転送回数レジスタ23には、画像データ全体のバイト数(すなわち画像データ全体の転送に必要な転送回数)が設定される。
[0040]
 コンパニオンチップ3の制御部31は、DMAコントローラ13Aの制御部20に対して制御信号を出力する。制御部31が、DMA転送開始の制御信号を出力すると、DMAコントローラ13Aの制御部20は、ROM10からバッファ30へのDMA転送を開始する。
[0041]
 バッファ30にDMA転送された1バイト分の画像データは、VRAM15へDMA転送される。このDMA転送は、DMAコントローラ13Bによって実行される。
[0042]
 DMA転送に先立って、DMAコントローラ13Bのレジスタ群の設定が行われる。この設定により、DMAコントローラ13Bの読み出し開始アドレスレジスタ21には、コンパニオンチップ3のバッファ30のアドレスが設定される。また、書き込み開始アドレスレジスタ22には、VRAM15の書き込み開始アドレスが設定される。また、転送回数レジスタ23には、画像情報の各行のデータ列の長さに対応するバイト数(1行分のデータ列の転送に必要な転送回数)が設定される。このレジスタ群の設定は、以下のようにして行われる。
[0043]
 描画装置100では、DMAコントローラ13Bのレジスタ群の設定のためにDMAコントローラ13Cが設けられている。DMAコントローラ13Bのレジスタ群に設定されるデータは、DMAコントローラ13Cにより、コンパニオンチップ3のレジスタデータメモリ32から、DMAコントローラ13Bのレジスタ群へDMA転送される。
[0044]
 まず、CPU10は、DMAコントローラ13Cのレジスタ設定を行う。DMAコントローラ13Cの読み出し開始アドレスレジスタ21には、コンパニオンチップ3のレジスタデータメモリ32のアドレスが設定される。また、書き込み開始アドレスレジスタ22には、DMAコントローラ13Cのレジスタ群のアドレスが設定される。また、転送回数レジスタ23には、レジスタ群のバイト数が設定される。
[0045]
 続いて、CPU10は、まず、コンパニオンチップ3の制御部31に対して、ROM11から読み出す画像データの縦横のバイト数や、VRAM15へその画像を描画する位置(VRAM15上の書き込み開始アドレス)を出力する。制御部31は、バッファ30のアドレスと、VRAM15上の書き込み開始アドレスと、1行のデータ列のバイト数とを、レジスタデータメモリ32に設定する。
[0046]
 制御部31は、DMAコントローラ13Cの制御部20にDMA転送開始の制御信号を出力する。すると、DMAコントローラ13Cの制御の下で、コンパニオンチップ3のレジスタデータメモリ32に含まれるデータが、DMAコントローラ13Bのレジスタ群にDMA転送される。この結果、上述のように、DMAコントローラ13Bの読み出し開始アドレスレジスタ21には、コンパニオンチップ3のバッファ30のアドレスが設定される。また、書き込み開始アドレスレジスタ22には、VRAM15の書き込み開始アドレスが設定される。また、転送回数レジスタ23には、画像データの各行のデータ列の長さに対応するバイト数(各行のデータ列を転送するのに必要な転送回数)が設定される。
[0047]
 この状態で、制御部31が、DMAコントローラ13A、13CへのDMA転送指示の制御信号を所定のタイミングで切り替えることにより、DMAコントローラ13AによるROM11→バッファ30へのDMA転送と、DMAコントローラ13Bによるバッファ30→VRAM15のDMA転送とが交互に行われる。
[0048]
 コンパニオンチップ3の制御部31は、データの転送回数が、ROM11から読み出す画像データの1行のデータ列の転送に必要な転送回数に達したか否かにより、DMAコントローラ13Bによる各行のデータ列のVRAM15への書き込みが完了したか否かを判定している。書き込みが完了したと判定された場合、制御部31は、レジスタデータメモリ32の書き込み開始アドレスに対応する領域に、次の行の書き込み開始アドレスと同じ列のアドレスを設定する。
[0049]
 続いて、制御部31は、DMAコントローラ13Cに、DMA転送開始の制御信号を出力する。これを受けて、DMAコントローラ13Cは、レジスタデータメモリ32のデータを、DMAコントローラ13Bのレジスタ群にDMA転送する。この結果、DMAコントローラ13Bの書き込み開始アドレスレジスタ21に設定されたアドレスは、次の行で書き込み開始アドレスと同列のアドレスに更新される。これにより、次からのバッファ30からVRAM15へのDMA転送は、更新された書き込み開始アドレスから行われるようになる。
[0050]
 次に、この実施の形態に係る描画装置100の動作について、図8のシーケンス図を参照して説明する。
[0051]
 図8には、CPU10が、ある文字を表示部2の表示画面の所定の位置に表示させる場合の処理シーケンスが示されている。ここでは、16ビット×16ビットの文字の画像データを表示部2の表示画面に表示させる場合について説明する。なお、DMAA、DMAB、DMACは、それぞれ、DMAコントローラ13A、13B、13Cを示している。
[0052]
 まず、CPU10は、DMAコントローラ13Aのレジスタ設定を行う(ステップS1)。これにより、ROM11からコンパニオンチップ3のバッファ30へのDMA転送が可能な状態となる。
[0053]
 続いて、CPU10は、DMAコントローラ13Cのレジスタ設定を行う(ステップS2)。これにより、コンパニオンチップ3のレジスタデータメモリ32からDMAコントローラ13Bのレジスタ群へのDMA転送が可能な状態となる。
[0054]
 続いて、CPU10は、コンパニオンチップ3の制御部31に、表示する画像データの縦横のバイト数や、VRAM15の書き込み開始アドレスなどを含む描画命令を送信する(ステップS3)。
[0055]
 この描画命令を受けて、コンパニオンチップ3の制御部31は、レジスタデータメモリ32に、バッファ30のアドレスと、VRAM15の書き込み開始アドレスと、1行分のバイト数(転送回数)とを、レジスタデータメモリ32に設定する(ステップS10)。
[0056]
 続いて、制御部31は、DMAコントローラ13CにDMA転送開始の制御信号を出力する(ステップS11)。これにより、レジスタデータメモリ32からDMAコントローラ13Bのレジスタ群へのDMA転送が行われる(ステップS12)。この結果、バッファ30から、VRAM15へのDMA転送が可能となる。
[0057]
 続いて、制御部31は、DMAコントローラ13AにDMA転送開始の制御信号を出力し(ステップS13)、DMAコントローラ13BにDMA転送開始の制御信号を出力する(ステップS14)。これにより、ROM11の画像データの先頭アドレスの1バイト分のデータが、コンパニオンチップ3のバッファ30に転送され(ステップS15)、バッファ30に転送されたデータが、VRAM15の書き込み開始アドレスに転送される(ステップS16)。
[0058]
 続いて、ROM11の画像データの次のアドレスの1バイト分のデータが、コンパニオンチップ3のバッファ30に転送され(ステップS17)、バッファ30に転送されたデータが、VRAM15の書き込み開始アドレスの次のアドレス(書き込み開始アドレスの右横の位置)に転送される(ステップS18)。
[0059]
 これらステップS10乃至S18の処理が1行目の書き込み処理である。
[0060]
 制御部31は、この時点で、1行目の書き込みが終了したことを検出し、レジスタデータメモリ32の書き込み開始アドレスを、VRAM15上の次の行で、書き込み開始アドレスと列位置が同じアドレスに更新する(ステップS20)。続いて、制御部31は、DMAコントローラ13CにDMA転送開始の制御信号を出力する(ステップS21)。これにより、レジスタデータメモリ32からDMAコントローラ13Bのレジスタ群へのDMA転送が行われ(ステップS22)、DMAコントローラ13Bの書き込み開始アドレスレジスタ22のアドレスが、次の行の前回の書き込み開始アドレスの同列のアドレスに更新される。
[0061]
 続いて、制御部31は、DMAコントローラ13AにDMA転送開始の制御信号を出力し(ステップS23)、DMAコントローラ13BにDMA転送開始の制御信号を出力する(ステップS24)。これにより、ROM11の画像データの3番目のアドレスの1バイト分のデータが、コンパニオンチップ3のバッファ30に転送され(ステップS25)、バッファ30に転送されたデータが、VRAM15の次の行の書き込み開始アドレスと同列のアドレスに転送される(ステップS26)。
[0062]
 続いて、ROM11の画像データの4番目のアドレスの1バイト分のデータが、コンパニオンチップ3のバッファ30に転送され(ステップS27)、バッファ30に転送されたデータが、VRAM15のその次のアドレスに転送される(ステップS28)。
[0063]
 これらステップS20乃至S28の処理が2行目の書き込み処理である。
[0064]
 以降、2行目の書き込み処理と同様にして、3行目乃至16行目の書き込み処理が行われる。
[0065]
 16行目の書き込みが完了すると、制御部31は、CPU10に完了通知の信号を出力する(ステップS30)。これにより、文字の画像データがVRAM15に書き込まれ、表示部2の表示画面に、その画像データに基づく文字が表示される。
[0066]
 以上詳細に説明したように、この実施の形態によれば、コンパニオンチップ3により、VRAM15への各行のデータ列の書き込みが完了する度に、DMAコントローラ13Cを介して、VRAM15における書き込み開始位置を改行するので、画像データをROM11から読み込んでVRAM15に書き込むのにDMAコントローラ13A、13Bを用いることができる。この結果、フルドット液晶の表示画面に画像を表示する際のCPU10の負荷を軽減することができる。
[0067]
 CPU10が、描画装置(リモートコントローラ)100だけでなく、空気調和装置全体を統括制御するものであったり、複数の空気調和装置に跨る協調動作を制御するものである場合には、CPU10の負荷を軽減することにより、それらの制御が円滑に行われるようになる。
[0068]
実施の形態2.
 次に、この発明の実施の形態2について説明する。
[0069]
 図9には、この実施の形態に係る描画装置100の構成が示されている。図9に示すように、この実施の形態に係る描画装置100では、DMAコントローラ13Cが設けられていない点が、上記実施の形態1に係る描画装置100と異なっている。
[0070]
 図10には、この実施の形態に係るコンパニオンチップ3の構成が示されている。図10に示すように、この実施の形態では、コンパニオンチップ3にレジスタデータメモリ32が設けられていない点が、上記実施の形態1と異なっている。
[0071]
 この実施の形態では、コンパニオンチップ3の制御部31が、1行分のデータ列が書き込まれる度に、1行分の書き込みの完了通知の信号をCPU10に送信する。CPU10は、1行分の書き込みの完了通知の信号を受信する度に、DMAコントローラ13Bの書き込み開始アドレスレジスタ21へ設定するアドレスを、次の行で最初の書き込み開始アドレスと同列のアドレスに更新する。
[0072]
 次に、この実施の形態に係る描画装置100の動作について、図11のシーケンス図を参照して説明する。
[0073]
 図11には、CPU10が、ある文字を表示部2の表示画面の所定の位置に表示させる場合の処理シーケンスが示されている。ここでは、16ビット×16ビットの文字の画像データを表示部2の表示画面に表示させる場合について説明する。
[0074]
 まず、CPU10は、DMAコントローラ13Aのレジスタ設定を行う(ステップS1)。ROM11からコンパニオンチップ3のバッファ30へのDMA転送が可能な状態となる。
[0075]
 続いて、CPU10は、DMAコントローラ13Bのレジスタ設定を行う(ステップS4)。これにより、バッファ30から、VRAM15へのDMA転送が可能となる。
[0076]
 続いて、CPU10は、コンパニオンチップ3の制御部31に、表示する画像データの縦横のバイト数を含む描画命令を送信する(ステップS3)。
[0077]
 続いて、制御部31は、DMAコントローラ13AにDMA転送開始の制御信号を出力し(ステップS13)、DMAコントローラ13BにDMA転送開始の制御信号を出力する(ステップS14)。これにより、ROM11の画像データの先頭アドレスの1バイト分のデータが、コンパニオンチップ3のバッファ30に転送され(ステップS15)、バッファ30に転送されたデータが、VRAM15の書き込み開始アドレスに転送される(ステップS16)。
[0078]
 続いて、ROM11の画像データの次のアドレスの1バイト分のデータが、コンパニオンチップ3のバッファ30に転送され(ステップS17)、バッファ30に転送されたデータが、VRAM15の書き込み開始アドレスの次のアドレス(書き込み開始アドレスの右横の位置)に転送される(ステップS18)。
[0079]
 これらステップS13乃至S18の処理が1行目の書き込み処理である。
[0080]
 制御部31は、この時点で、1行目の書き込みが終了したことを検出し、1行分のデータの書き込み完了通知の信号をCPU20に出力する(ステップS40)。
[0081]
 これを受けて、CPU20は、DMAコントローラ13Bの書き込み開始アドレスを次の行に更新する(ステップS41)。CPU20は、転送開始通知を、制御部31に通知する(ステップS42)。
[0082]
 続いて、制御部31は、DMAコントローラ13AにDMA転送開始の制御信号を出力し(ステップS23)、DMAコントローラ13BにDMA転送開始の制御信号を出力する(ステップS24)。これにより、ROM11の画像データの次のアドレスの1バイト分のデータが、コンパニオンチップ3のバッファ30に転送され(ステップS25)、バッファ30に転送されたデータが、VRAM15の次の行の書き込み開始アドレスに転送される(ステップS26)。
[0083]
 続いて、ROM11の画像データの次のアドレスの1バイト分のデータが、コンパニオンチップ3のバッファ30に転送され(ステップS27)、バッファ30に転送されたデータが、VRAM15のその次のアドレスに転送される(ステップS28)。
[0084]
 これらステップS40乃至S42、S23乃至S28の処理が2行目の書き込み処理である。
[0085]
 以降、2行目の書き込み処理と同様にして、3行目乃至16行目の書き込み処理が行われる。
[0086]
 16行目の書き込みが完了すると、制御部31は、CPU10に完了通知の信号を出力する(ステップS30)。これにより、文字の画像データがVRAM15に書き込まれ、表示部2の表示画面に、その画像データに基づく文字が表示される。
[0087]
 以上詳細に説明したように、この実施の形態においても、コンパニオンチップ3により、VRAM15への各行のデータ列の書き込みが完了する度に、CPU10が、VRAM15における書き込み開始位置を改行する。これにより、画像データをROM11から読み込んでVRAM15に書き込むのにDMAコントローラ13A、13Bを用いることができる。この結果、フルドット液晶の表示画面に画像を表示する際のCPU10の負荷を軽減することができる。
[0088]
 この実施の形態では、DMAコントローラ13Cやレジスタデータメモリ32を設ける必要がないので、マイクロコンピュータ1やコンパニオンチップ3の部品点数を少なくすることができる。
[0089]
 なお、上記各実施の形態では、DMA転送に先立って、CPU10からコンパニオンチップ3の制御部31へ、画像データの縦、横のバイト数の情報が送信された。しかしながら、他の方法により、制御部21へ画像データの縦、横のバイト数の情報が送信されるようにしてもよい。
[0090]
 例えば、図12に示すように、ROM11に記憶される個々の画像データには、ヘッダ情報40が付加されるようにしてもよい。ヘッダ情報40には、その画像データの縦のバイト数(例えば2バイト)、横のバイト数(例えば2バイト)などの情報が記載されている。
[0091]
 コンパニオンチップ3の制御部31は、ROM11からDMA転送された上位2バイトをヘッダ情報として読み取り、読み取ったヘッダ情報に基づいて、表示する画像データの各行のデータ列のバイト長(横のバイト長)と、行数(縦のビット長)とを求める。
[0092]
 コンパニオンチップ3の制御部31は、求められた横のバイト長に基づいて、レジスタデータメモリ32の転送回数を設定する。そして、DMAコントローラ13CのDMA転送によりDMAコントローラ13Bの転送回数レジスタ23にこの転送回数が設定される。
[0093]
 コンパニオンチップ3の制御部31は、3バイト目のデータがROM11からDMA転送されてきた時点で、DMAコントローラ13BにDMA転送開始の制御信号を出力する。これにより、3バイト目以降のデータが、VRAM15にDMA転送されるようにすることができる。
[0094]
 なお、行数(縦のビット長)は、画像全ての書き込み完了の判定に用いられる。
[0095]
実施の形態3.
 次に、この発明の実施の形態3について説明する。
[0096]
 図13には、この実施の形態に係る描画装置100の構成が示されている。図13に示すように、この実施の形態に係る描画装置100は、3つのDMAコントローラ13A乃至13Cの代わりに、1つのDMAコントローラ13Dが設けられている点が、上記実施の形態1に係る描画装置100と異なる。また、コンパニオンチップ3が外部I/F14に接続されていない点も、上記実施の形態1に係る描画装置100と異なる。
[0097]
 DMAコントローラ13Dには、読み出し開始アドレスレジスタ21、書き込み開始アドレスレジスタ22、転送回数レジスタ23に加え、繰り返しオフセットレジスタ24及び繰り返しカウンタレジスタ25が設けられている。
[0098]
 繰り返しオフセットレジスタ24には、画像データの1行のデータ列の右端のアドレスと、改行後の書き込み開始アドレスとのオフセットが設定される。図14に示すように、画像データ4を書き込む場合には、offset1とoffset2との和がこのオフセットになる。
[0099]
 繰り返しカウンタレジスタ25には、画像データの行数(縦のビット数)が設定される。
[0100]
 まず、CPU10は、DMAコントローラ13Dの読み出し開始アドレスレジスタ21にROM11の画像データの先頭アドレスを設定し、書き込み開始アドレスレジスタ22に、VRAM15の画像データの書き込み先頭アドレスを設定し、転送回数レジスタ23に画像データの1行分のデータ列のバイト長(1行分のデータ列を転送するのに必要な転送回数)を設定し、さらに、繰り返しオフセットレジスタ24をオフセット(図14参照)に設定し、繰り返しカウンタレジスタ25に行数(画像データの縦のビット数)を設定する。
[0101]
 そして、CPU10は、DMAコントローラ13DにDMA転送開始の制御信号を出力する。すると、DMAコントローラ13Dは、ROM11からVRAM15へのDMA転送を開始する。
[0102]
 このDMA転送は、ROM11上の画像データの先頭アドレスと、VRAM15の書き込みアドレスとを開始位置として開始される。
[0103]
 画像データの1行分のデータが書き込まれると、VRAM15の書き込みアドレスレジスタに繰り返しオフセットレジスタ24に設定されたオフセットが加算されたアドレスが、書き込み開始アドレスレジスタ21に設定されることにより、VRAM15への書き込みアドレスが、次の行の書き込み開始アドレスと同列のアドレスに更新される(図14参照)。そして、更新された書き込み開始アドレスから、データの書き込みが再開される。
[0104]
 このような処理を繰り返すことにより、画像データの各行のデータ列が、VRAM15に書き込まれていく。繰り返し数が、繰り返しカウンタレジスタ25に設定された数に到達し、画像データの最後の1行分のデータが書き込まれると、画像データの書き込みが完了したとして、DMA転送が終了する。
[0105]
 以上詳細に説明したように、この実施の形態によれば、コンパニオンチップ3を設けなくても、ROM11に記憶された画像データを、VRAM15にDMA転送することにより、表示部2にその画像を表示させることができる。
[0106]
 なお、上記各実施の形態では、画像データの単位を画像1文字としたが、本発明はこれには限られない。例えば、図15(A)に示されるように、連続して横方向に並ぶ複数の文字の画像データであっても、VRAM15への書き込みは十分可能である。ここで、最上行1バイトずつのデータを左側からデータD1、D2、D3、D4とする。
[0107]
 この場合、図15(B)に示すように、ROM11には、先頭アドレスから、データD1、D2、D3、D4という順で、記憶されるようになる。
[0108]
 また、バッファ30への転送元をROM11とはせず、RAM12とするようにしてもよい。この場合、連続して横方向に並ぶ2つの文字の画像データを表示する場合には、CPU10は、DMA転送に先立って、ROM11から2つの文字の画像データを入力する。そして、CPU10は、それぞれの画像データを、図16に示すように、2文字分の1つの画像データに変換してRAM12に格納する。この場合、コンパニオンチップ3のバッファ30への転送元は、RAM12となる。
[0109]
 なお、上記各実施の形態に係る描画装置100は、空気調和装置のリモートコントローラであったが、照明装置や他の電気機器のリモートコントローラであってもよい。
[0110]
 この発明は、この発明の広義の精神と範囲を逸脱することなく、様々な実施の形態及び変形が可能とされるものである。また、上述した実施の形態は、この発明を説明するためのものであり、この発明の範囲を限定するものではない。すなわち、この発明の範囲、実施の形態ではなく、特許請求の範囲によって示される。そして、特許請求の範囲内及びそれと同等の発明の意義の範囲内で施される様々な変形が、この発明の範囲内とみなされる。
[0111]
 本出願は、2010年11月1日に出願された、日本国特許出願2010-245743号に基づく。本明細書中に日本国特許出願2010-245743号の明細書、特許請求の範囲、図面全体を参照として取り込むものとする。

産業上の利用可能性

[0112]
 本発明は、空気調和装置や照明装置などの電気機器のリモートコントローラに好適である。

符号の説明

[0113]
 1 マイクロコンピュータ
 2 表示部
 3 コンパニオンチップ
 4 画像データ
 10 CPU
 11 ROM
 12 RAM
 13A、13B、13C、13D DMAコントローラ
 14 外部インターフェイス(I/F)
 15 VRAM
 16 操作入力インターフェイス(I/F)
 17 バス
 20 制御部
 21 読み出し開始アドレスレジスタ
 22 書き込み開始アドレスレジスタ
 23 転送回数レジスタ
 24 繰り返しオフセットレジスタ
 25 繰り返しカウンタレジスタ
 30 バッファ
 31 制御部
 32 レジスタデータメモリ(RDM)
 40 ヘッダ情報
 100 描画装置
 P 位置

請求の範囲

[請求項1]
 各行のデータ列が順番に連結されて記憶媒体に記憶された画像情報を読み出して、2次元の画像表示用メモリの所定の領域に書き込むことにより、前記画像情報に基づく画像を表示する描画装置であって、
 プロセッサとは独立して、前記記憶媒体に記憶された前記画像情報を、その先頭の読み出し開始位置から所定の単位で順次読み出していく読み出し部と、
 前記プロセッサとは独立して、前記読み出し部によって読み出されたデータを、前記画像表示用メモリにおける書き込み開始位置から前記所定の単位で横方向に順次書き込んでいく書き込み部と、
 前記書き込み部による前記各行のデータ列の書き込みが完了する度に、前記画像表示用メモリにおける前記書き込み開始位置を、次の行の同じ列の位置に更新する書き込み位置更新部と、
 を備える描画装置。
[請求項2]
 前記プロセッサと、前記記憶媒体と、前記画像表示用メモリと、前記読み出し部と、前記書き込み部とが、マイクロコンピュータ内に実装され、
 前記記憶媒体と前記画像表示用メモリとの間でデータの入出力が可能なバッファを有するデータ中継部が前記マイクロコンピュータの外部にさらに設けられ、
 前記読み出し部は、
 前記記憶媒体における前記読み出し開始位置と、前記画像情報全体の転送に必要な転送回数と、前記バッファにおける書き込み位置とがレジスタに設定される第1のDMAコントローラであり、
 前記書き込み部は、
 前記バッファにおける読み込み位置と、前記画像情報の各行のデータ列の転送に必要な転送回数と、前記画像表示用メモリの前記書き込み開始位置とがレジスタに設定される第2のDMAコントローラである、
 請求項1に記載の描画装置。
[請求項3]
 前記データ中継部が保持するデータを、前記第2のDMAコントローラのレジスタに転送する第3のDMAコントローラをさらに備え、
 前記データ中継部は、
 前記バッファへのデータの転送回数が、前記画像情報の各行のデータ列の転送に必要な転送回数に達する度に、前記第3のDMAコントローラを用いて、前記第2のDMAコントローラにおける前記書き込み開始位置を、次の行の同じ列の位置に更新させる、
 請求項2に記載の描画装置。
[請求項4]
 前記データ中継部は、
 前記バッファへのデータの転送回数が、前記画像情報の各行のデータ列の転送に必要な転送回数に達する度に、前記プロセッサに完了信号を出力し、
 前記書き込み位置更新部としての前記プロセッサは、
 前記完了信号を入力したときに、前記第2のDMAコントローラにおける前記書き込み開始位置を、次の行の同じ列の位置に更新する、
 請求項2に記載の描画装置。
[請求項5]
 前記記憶媒体には、前記画像情報のヘッダ部分に、前記画像情報の各行のデータ列の長さに関する情報が記憶されており、
 前記データ中継部は、前記バッファに書き込まれた前記画像情報のヘッダ部分から各行のデータ列の長さに関する情報を抽出し、
 抽出された情報を用いて、前記バッファへのデータの転送回数が、前記画像情報の各行のデータ列の転送に必要な転送回数に達したことを検出する、
 請求項3又は4のいずれか一項に記載の描画装置。
[請求項6]
 前記記憶媒体は、
 横書きの連続文字を構成する画像を前記画像情報として記憶する、
 請求項1乃至5のいずれか一項に記載の描画装置。
[請求項7]
 他の記憶媒体に記憶された複数の文字各々の前記画像情報を読み込んで、横書きの連続文字を構成する画像を前記画像情報として前記記憶媒体に記憶する変換部をさらに備える、
 請求項1乃至5のいずれか一項に記載の描画装置。
[請求項8]
 前記記憶媒体における前記読み出し開始位置と、前記画像情報全体の転送に必要な転送回数と、前記画像表示用メモリにおける前記書き込み開始位置と、前記画像表示用メモリにおけるその行の書き込み最終位置と次の行における前記書き込み開始位置と同じ列の位置との差分であるオフセットと、前記画像表示用メモリにおける前記書き込み開始位置の更新回数と、がレジスタに設定される第4のDMAコントローラが、前記読み出し部と、前記書き込み部と、前記書き込み位置更新部として設けられ、
 前記第4のDMAコントローラは、
 前記バッファへのデータの転送回数が、前記画像情報の各行のデータ列の転送に必要な転送回数に達する度に、前記画像表示用メモリへの現在の書き込み位置に前記オフセットを加算することにより、前記画像表示用メモリにおける前記書き込み開始位置を次の行の同じ列の位置に更新する処理を、全転送回数が前記画像情報全体の転送に必要な転送回数に達するまで繰り返す、
 請求項1に記載の描画装置。
[請求項9]
 各行のデータ列が順番に連結されて記憶媒体に記憶された画像情報を読み出して、2次元の画像表示用メモリの所定の領域に書き込むことにより、前記画像情報に基づく画像を表示する描画方法であって、
 プロセッサとは独立して動作するDMAコントローラを用いて、前記記憶媒体に記憶された前記画像情報を、その先頭の読み出し開始位置から所定の単位で順次読み出していく読み出し工程と、
 前記プロセッサとは独立して動作するDMAコントローラを用いて、前記読み出し工程において読み出されたデータを、前記画像表示用メモリにおける書き込み開始位置から前記所定の単位で横方向に順次書き込んでいく書き込み工程と、
 前記書き込み工程における前記各行のデータ列の書き込みが完了する度に、前記画像表示用メモリにおける前記書き込み開始位置を、次の行の同じ列の位置に更新する書き込み位置更新工程と、
 を含む描画方法。

図面

[ 図 1]

[ 図 2]

[ 図 3]

[ 図 4]

[ 図 5]

[ 図 6]

[ 図 7]

[ 図 8]

[ 図 9]

[ 図 10]

[ 図 11]

[ 図 12]

[ 図 13]

[ 図 14]

[ 図 15]

[ 図 16]