(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024169890
(43)【公開日】2024-12-06
(54)【発明の名称】表示コントローラー及び表示システム
(51)【国際特許分類】
H04N 1/387 20060101AFI20241129BHJP
H04N 1/21 20060101ALI20241129BHJP
G06T 3/606 20240101ALI20241129BHJP
【FI】
H04N1/387 700
H04N1/21
G06T3/60 710
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2023086728
(22)【出願日】2023-05-26
(71)【出願人】
【識別番号】000002369
【氏名又は名称】セイコーエプソン株式会社
(74)【代理人】
【識別番号】100104710
【弁理士】
【氏名又は名称】竹腰 昇
(74)【代理人】
【識別番号】100090479
【弁理士】
【氏名又は名称】井上 一
(74)【代理人】
【識別番号】100124682
【弁理士】
【氏名又は名称】黒田 泰
(74)【代理人】
【識別番号】100166523
【弁理士】
【氏名又は名称】西河 宏晃
(72)【発明者】
【氏名】北澤 幸行
【テーマコード(参考)】
5B057
【Fターム(参考)】
5B057CA12
5B057CA16
5B057CB12
5B057CB16
5B057CD03
5B057CH11
(57)【要約】
【課題】画像データの圧縮伸張及び回転処理をバッファー容量を抑えて実現できる表示コントローラー等の提供。
【解決手段】表示コントローラー1は、圧縮画像バッファー30とフレームバッファー40と圧縮画像バッファー制御部10と復号部50と復号画像バッファー70と復号画像バッファー制御部60を含む。圧縮画像バッファー30は、1フレームの画像データを複数のブロックの各ブロック単位で圧縮した画像データが記憶される。フレームバッファー40は、圧縮画像バッファー30の各ブロックの圧縮画像データが書き込まれることで、複数のブロックの圧縮画像データが記憶される。圧縮画像バッファー制御部10は、フレームバッファー40の書き込み方向と読み出し方向を画像回転角度に応じて制御する。復号画像バッファー制御部60は復号画像バッファー70への書き込み方向を画像回転角度に応じて制御する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
1フレームの画像データを複数のブロックの各ブロック単位で圧縮した圧縮画像データが記憶される圧縮画像バッファーと、
前記圧縮画像バッファーの各ブロックの前記圧縮画像データが書き込まれることで、前記複数のブロックの前記圧縮画像データが記憶されるフレームバッファーと、
前記フレームバッファーの書き込み方向と読み出し方向を、画像回転角度に応じて制御する圧縮画像バッファー制御部と、
前記フレームバッファーから読み出された前記各ブロックの前記圧縮画像データを復号化する復号部と、
前記復号化された前記各ブロックの復号画像データが記憶される復号画像バッファーと、
前記復号画像バッファーへの書き込み方向を、前記画像回転角度に応じて制御する復号画像バッファー制御部と、
を含む表示コントローラー。
【請求項2】
請求項1に記載の表示コントローラーにおいて、
前記圧縮画像バッファー制御部は、
第nフレームの前記圧縮画像データを第1書き込み方向で前記フレームバッファーに書き込む制御を行い、
前記第nフレームの前記圧縮画像データを、前記第1書き込み方向に対して前記画像回転角度に応じた角度だけ回転した第1読み出し方向で前記フレームバッファーから読み出す制御を行うことを特徴とする表示コントローラー。
【請求項3】
請求項2に記載の表示コントローラーにおいて、
前記圧縮画像バッファー制御部は、
第n+1フレームの前記圧縮画像データを、前記第1読み出し方向と同じ第2書き込み方向で前記フレームバッファーに書き込む制御を行うことを特徴とする表示コントローラー。
【請求項4】
請求項1に記載の表示コントローラーにおいて、
前記復号画像バッファー制御部は、
前記各ブロックの前記復号画像データを、読み出し方向に対して前記画像回転角度に応じた角度だけ回転した書き込み方向で前記復号画像バッファーへ書き込むことを特徴とする表示コントローラー。
【請求項5】
請求項1に記載の表示コントローラーにおいて、
前記復号画像バッファーは、
第1バッファーと第2バッファーとを含み、
前記復号画像バッファー制御部によって前記第1バッファーに前記復号画像データが書き込まれているときに、前記第2バッファーから前記復号画像データが読み出されることを特徴とする表示コントローラー。
【請求項6】
請求項1に記載の表示コントローラーにおいて、
前記フレームバッファーにおいて、1ブロック分の前記圧縮画像データが記憶される記憶容量は、一定であることを特徴とする表示コントローラー。
【請求項7】
請求項1に記載の表示コントローラーにおいて、
前記1フレームの前記画像データを前記複数のブロックの前記圧縮画像データに圧縮する圧縮部を含むことを特徴とする表示コントローラー。
【請求項8】
請求項7に記載の表示コントローラーと、
前記画像データを前記表示コントローラーへ出力する処理装置と、
を含むことを特徴とする表示システム。
【請求項9】
請求項1乃至6のいずれか一項に記載の表示コントローラーと、
前記圧縮画像データを前記表示コントローラーへ出力する処理装置と、
を含み、
前記処理装置は、
前記1フレームの前記画像データを前記複数のブロックの前記圧縮画像データに圧縮する圧縮部を含むことを特徴とする表示システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、表示コントローラー及び表示システム等に関する。
【背景技術】
【0002】
特許文献1には、画像データの圧縮伸張と回転処理を行う画像処理装置が開示されている。当該画像処理は、画像データをブロック単位で圧縮伸張処理する機能及び同画像データをブロック単位で回転処理する機能を兼ねる制御部と記憶バッファーとを有する。そして、画像データをブロック単位で圧縮伸張する処理と同時に、同画像データをブロック単位で回転する処理を行う。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1に開示された画像処理装置においては、画像の圧縮処理は1画素ごとに行われるため、圧縮率が高くない。従って、画像データのサイズによってはIC単体のフレームバッファーサイズでは、バッファー容量が不足する場合がある。
【課題を解決するための手段】
【0005】
本開示の一態様は、1フレームの画像データを複数のブロックの各ブロック単位で圧縮した圧縮画像データが記憶される圧縮画像バッファーと、前記圧縮画像バッファーの各ブロックの前記圧縮画像データが書き込まれることで、前記複数のブロックの前記圧縮画像データが記憶されるフレームバッファーと、前記フレームバッファーの書き込み方向と読み出し方向を、画像回転角度に応じて制御する圧縮画像バッファー制御部と、前記フレームバッファーから読み出された前記各ブロックの前記圧縮画像データを復号化する復号部と、前記復号化された前記各ブロックの復号画像データが記憶される復号画像バッファーと、前記復号画像バッファーへの書き込み方向を、前記画像回転角度に応じて制御する復号画像バッファー制御部と、を含む表示コントローラーに関係する。
【0006】
また本開示の他の態様は、上記に記載の表示コントローラーと、前記画像データを前記表示コントローラーへ出力する処理装置と、を含む表示システムに関係する。
【0007】
また本開示の他の態様は、上記に記載の表示コントローラーと、前記圧縮画像データを前記表示コントローラーへ出力する処理装置と、を含み、前記処理装置は、前記1フレームの前記画像データを前記複数のブロックの前記圧縮画像データに圧縮する圧縮部を含む表示システムに関係する。
【図面の簡単な説明】
【0008】
【
図1】本実施形態の表示コントローラーの構成例を示す図。
【
図2】本実施形態の表示コントローラーの具体的な構成例を示すブロック図。
【
図3】0度回転表示におけるフレームバッファーへの書き込み及び読み出しの順序を説明する図。
【
図4】0度回転表示におけるフレームバッファーからの画像データの読み出しについて説明する図。
【
図5】90度回転表示におけるフレームバッファーへの書き込み及び読み出しの順序を説明する図。
【
図6】90度回転表示におけるフレームバッファーへの書き込み及び読み出しの順序を説明する図。
【
図7】90度回転表示におけるフレームバッファーからの画像データの読み出しについて説明する図。
【
図8】180度回転表示におけるフレームバッファーへの書き込み及び読み出しの順序を説明する図。
【
図9】180度回転表示におけるフレームバッファーへの書き込み及び読み出しの順序を説明する図。
【
図10】180度回転表示におけるフレームバッファーからの画像データの読み出しについて説明する図。
【
図11】270度回転表示におけるフレームバッファーへの書き込み及び読み出しの順序を説明する図。
【
図12】270度回転表示におけるフレームバッファーへの書き込み及び読み出しの順序を説明する図。
【
図13】270度回転表示におけるフレームバッファーからの画像データの読み出しについて説明する図。
【
図15】本実施形態の表示システムの第1構成例を示す図。
【
図16】本実施形態の表示システムの第2構成例を示す図。
【
図17】本実施形態の表示システムの第2構成例の具体的な構成例を示す図。
【
図18】本実施形態の表示システムの第2構成例の詳細な構成例を示す図。
【発明を実施するための形態】
【0009】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲の記載内容を不当に限定するものではない。また本実施形態で説明される構成の全てが必須構成要件であるとは限らない。
【0010】
1.表示コントローラー
図1に、本実施形態の表示コントローラー1の構成例を示すブロック図を示す。本実施形態の表示コントローラー1は、圧縮画像バッファー30とフレームバッファー40と圧縮画像バッファー制御部10と復号部50と復号画像バッファー70と復号画像バッファー制御部60を含む。
【0011】
圧縮画像バッファー制御部10は、圧縮画像バッファー30、フレームバッファー40及び復号部50を制御する。圧縮画像バッファー制御部10は、例えば表示コントローラー1の出力画像の回転角度に応じて、圧縮画像バッファー30に記憶された画像データをフレームバッファー40に書き込みする際の順序、及びフレームバッファー40からのデータ読み出しの順序を制御する。
【0012】
圧縮画像バッファー30は、圧縮画像データをフレームバッファー40に書き込む際のバッファーである。圧縮画像バッファー30は、圧縮画像バッファー制御部10の制御に基づいて、圧縮された画像データを記憶し、圧縮された画像データを例えばフレームバッファー40に出力する。具体的にはm画素×m画素(mは2以上の整数)の画像データを1ブロックとしたときに、圧縮画像バッファー30は、ブロック単位で圧縮された画像データを記憶する。以下では1ブロックが16画素×16画素である場合を例にとり説明するが、本実施形態はこれに限定されず、これよりも小さいサイズ又は大きいサイズのブロックの単位で画像データが圧縮されてもよい。1ブロックごとに圧縮された画像データは、例えば後述の
図2で説明する圧縮部20から出力される。このように圧縮画像バッファー30には画像データをブロック単位で圧縮した圧縮画像データが記憶される。
【0013】
フレームバッファー40は、1フレーム分の画像データをブロック単位で圧縮されたデータ形式で記憶する。具体的にはフレームバッファー40は、圧縮画像バッファー制御部10の制御に基づいて、表示コントローラー1の出力画像の回転角度に応じた書き込みする際の順序で、圧縮画像バッファー30から出力された圧縮画像データを記憶する。
【0014】
復号部50は画像データを復元する。復号部50は圧縮画像バッファー制御部10の制御に基づいて、フレームバッファー40から出力された圧縮画像データを復号する。そして、復号した画像データを復号画像バッファー70に出力する。
【0015】
復号画像バッファー制御部60は、復号画像バッファー70の制御を行う。復号画像バッファー制御部60は、復号部50が出力した復号後の画像データを、表示コントローラー1の出力画像の回転角度に応じて、例えば各ブロック内で各画素が書き込み位置を制御する。このように復号画像バッファー制御部60は、復号画像バッファー70への書き込み方向を、画像回転角度に応じて制御する。復号画像バッファー制御部60及び前述の圧縮画像バッファー制御部10は、例えばASIC(Application Specific Integrated Circuit)や、CPUなどのプロセッサーなどにより実現できる。
【0016】
復号画像バッファー70は、復号部50が復号した画像データのバッファーである。復号画像バッファー70には、復号部50が復号した画像データが、復号画像バッファー制御部60の制御に基づいて書き込まれる。そして、復号画像バッファー制御部60の制御に基づいて、復号後の画像データが表示コントローラー1の出力画像として出力される。復号画像バッファー70及び前述した圧縮画像バッファー30、フレームバッファー40は、例えばVRAM(Video Random Access Memory)などによって構成することができる。
【0017】
また表示コントローラー1は
図1に示すように圧縮部20を含んでもよい。圧縮部20は、表示コントローラー1に入力された画像データの圧縮を行い、圧縮された画像データを圧縮画像バッファー30に出力する。
【0018】
このように本実施形態の表示コントローラー1は、圧縮画像バッファー30とフレームバッファー40と圧縮画像バッファー制御部10と復号部50と復号画像バッファー70と復号画像バッファー制御部60を含む。圧縮画像バッファー30は、1フレームの画像データを複数のブロックの各ブロック単位で圧縮した圧縮画像データが記憶される。フレームバッファー40は、圧縮画像バッファー30の各ブロックの圧縮画像データが書き込まれることで、複数のブロックの圧縮画像データが記憶される。圧縮画像バッファー制御部10は、フレームバッファー40の書き込み方向と読み出し方向を、画像回転角度に応じて制御する。復号部50は、フレームバッファー40から読み出された各ブロックの圧縮画像データを復号化する。復号画像バッファー70は、復号化された各ブロックの復号画像データが記憶される。復号画像バッファー制御部60は、復号画像バッファー70への書き込み方向を、画像回転角度に応じて制御する。
【0019】
このようにすれば、表示コントローラー1に入力された画像データは、ブロックごとに圧縮された圧縮画像データとして圧縮画像バッファー30に記憶される。そして、圧縮画像バッファー制御部10の制御に基づき、画像の回転角度に応じてブロック単位でフレームバッファー40に画像データの書き込みが行われる。従って、入力画像データが圧縮されたデータ形式で圧縮画像バッファー30及びフレームバッファー40に書き込みが行われるため、フレームバッファー40の記憶容量を小さくできるため、表示コントローラー1の小規模化を図れる。フレームバッファー40に記憶された画像データは、復号部50によって復号され、復号画像バッファー制御部60の制御に基づいて、画像の回転角度に応じて復号画像バッファー70に書き込まれる。従って復号画像バッファー70に記憶された復号後の画像データを表示コントローラー1から出力できるようになる。
【0020】
図2は、本実施形態の表示コントローラー1の具体的な構成例を示すブロック図である。
図2に示す構成例は、
図1に示す構成例の構成要素に加えてセレクター80を含む。また
図2に示す構成例では、復号画像バッファー70は第1バッファー71と第2バッファー72を含む。セレクター80は、復号画像バッファー制御部60の制御に基づいて、復号画像バッファー70から出力される復号後の画像データのうち、第1バッファー71が出力する画像データと第2バッファー72が出力する画像データのいずれかを選択し、表示コントローラー1の出力データとして出力する。以下、
図2に示す表示コントローラー1の具体的な動作について説明する。
【0021】
まず、圧縮部20に入力信号として、ドットクロック信号DCK、同期信号VS、同期信号HS、データイネーブル信号DE、画像信号RD、GD、BDが入力される。これらの入力信号のうち、ドットクロック信号DCKは、圧縮画像バッファー制御部10、圧縮画像バッファー30、フレームバッファー40、復号部50、復号画像バッファー制御部60、第1バッファー71及び第2バッファー72にも入力される。また入力信号のうち、同期信号VS、同期信号HS、データイネーブル信号DEは、圧縮画像バッファー制御部10にも入力される。ドットクロック信号DCKは、表示コントローラー1内の動作の基準となるクロック信号であり、全ての信号がこの信号に同期して出力される。データイネーブル信号DEは、画像信号RD、GD、BDの有効部分を示す信号である。
【0022】
圧縮部20は、入力信号に基づいて画像データの圧縮を行う。ここで圧縮部20は、入力信号を所定のブロックサイズ、例えば16画素×16画素ごとに圧縮を行う。圧縮形式は、可逆圧縮、不可逆圧縮のいずれであってもよい。そして、圧縮部20は制御信号WLと信号DCを圧縮画像バッファー30に出力する。制御信号WLは圧縮画像バッファー30への書き込み制御信号、信号DCは圧縮部20から出力された圧縮画像データの信号である。例えば、圧縮部20が不可逆圧縮により画像データを圧縮した場合、フレームバッファー40のバッファーサイズとして必要になる容量は、1/3~1/5程度に低減される。
【0023】
圧縮画像バッファー制御部10は、ドットクロック信号DCK、同期信号VS、同期信号HS、データイネーブル信号DEに基づいて、アドレス信号WLa、RLaを圧縮画像バッファー30に出力する。アドレス信号WLaは圧縮画像バッファー30への書き込みアドレス、アドレス信号RLaは圧縮画像バッファー30からの読み出しアドレスである。また圧縮画像バッファー制御部10は、アドレス信号WFa、アドレス信号RFa、信号WFをフレームバッファー40に出力する。アドレス信号WFaはフレームバッファー40への書き込みアドレス、アドレス信号RFaはフレームバッファー40からの読み出しアドレス、制御信号WFはフレームバッファー40への書き込み制御信号である。また圧縮画像バッファー制御部10は、同期信号VSdi、同期信号HSdiを復号部50に出力する。同期信号VSdiは圧縮画像バッファー制御部10で生成された垂直同期信号、同期信号HSdiは圧縮画像バッファー制御部10で生成された水平同期信号である。このようにして圧縮画像バッファー制御部10は、圧縮画像バッファー30、フレームバッファー40及び復号部50の制御を行う。
【0024】
圧縮画像バッファー30は、ドットクロック信号DCK、制御信号WL、信号DC、アドレス信号WLa、アドレス信号RLaに基づいて、信号DLをフレームバッファー40に出力する。信号DLは圧縮画像バッファー30から出力される圧縮画像データの信号である。
【0025】
フレームバッファー40は、ドットクロック信号DCK、制御信号WF、アドレス信号WFa、アドレス信号RFaに基づいて、信号DFを復号部50に出力する。信号DFはフレームバッファー40から出力される圧縮画像データの信号である。
【0026】
復号部50は、ドットクロック信号DCK、同期信号VSdi、HSdi、信号DFに基づいて、同期信号VSdo、HSdo、データイネーブル信号DEdoを復号画像バッファー制御部60に出力し、画像信号RDd、GDd、BDdを復号画像バッファー70に出力する。同期信号VSdoは復号部50で生成された垂直同期信号、同期信号HSdoは復号部50で生成された水平同期信号である。データイネーブル信号DEdoは復号部50から出力されるデータイネーブル信号である。画像信号RDdは復号部50で復号された赤映像データの出力信号、信号GDdは復号部50で復号された緑映像データの出力信号、信号BDdは復号部50で復号された青映像データの出力信号である。
【0027】
復号画像バッファー70は、ドットクロック信号DCK、同期信号VSdo、HSdo、データイネーブル信号DEdoに基づいて、同期信号VSo、HSo、データイネーブル信号DEoを出力信号として出力し、信号SEをセレクター80に出力する。そして、アドレス信号Wa及びアドレス信号Raを復号画像バッファー70の第1バッファー71及び第2バッファー72に出力し、制御信号Wodを第1バッファー71に、制御信号Wevを第2バッファー72に出力する。同期信号VSoは復号画像バッファー制御部60で生成された垂直同期信号、同期信号HSoは復号画像バッファー制御部60で生成された水平同期信号である。データイネーブル信号DEoは復号画像バッファー制御部60で生成されたデータイネーブル信号である。アドレス信号Waは第1バッファー71及び第2バッファー72への書き込みアドレスの信号である。制御信号Wodは第1バッファー71への書き込み制御信号、制御信号Wevは第2バッファー72への書き込み制御信号である。アドレス信号Raは、第1バッファー71及び第2バッファー72からの読み出しアドレスである。信号SEは、第1バッファー71、第2バッファー72の出力選択信号である。
【0028】
復号画像バッファー70の第1バッファー71は、ドットクロック信号DCK、アドレス信号Wa、Ra、制御信号Wod、画像信号RDd、GDd、BDdに基づいて、画像信号RDod、GDod、BDodをセレクター80に出力する。画像信号RDodは第1バッファー71からの赤画像データの信号、画像信号GDodは第1バッファー71からの緑画像データの信号、画像信号BDodは第1バッファー71からの青画像データの出力である。
【0029】
復号画像バッファー70の第2バッファー72は、ドットクロック信号DCK、アドレス信号Wa、Ra、制御信号Wev、画像信号RDd、GDd、BDdに基づいて、画像信号RDev、GDev、BDevをセレクター80に出力する。画像信号RDevは第2バッファー72からの赤画像データの信号、画像信号GDevは第2バッファー72からの信号、画像信号BDevは第2バッファー72からの青画像信号の出力である。
【0030】
セレクター80は、信号SE、画像信号RDod、GDod、BDod、RDd、GDd、BDdに基づいて、画像信号RDo、GDo、BDoを表示コントローラー1の出力信号として出力する。画像赤画像信号RDo、GDo、BDoは、それぞれセレクター80から出力された赤画像データ、緑画像データ、青画像データの信号である。
【0031】
図2に示す本実施形態の表示コントローラー1では、1フレームの画像データを複数のブロックの圧縮画像データに圧縮する圧縮部20を含む。
【0032】
このようにすれば、1フレームの画像データを複数のブロックの圧縮画像データに圧縮することができる。従って、1ブロックの画像を圧縮後の少ない容量で、書き込み及び読み出しを行うことが可能になる。
【0033】
図3、
図4は表示コントローラー1の出力画像を0度回転で表示させる場合についての具体的な動作を説明する図である。
図3は、圧縮画像バッファー30からフレームバッファー40への書き込み及び読み出しの順序について、1フレーム目の画像が「A」、2フレーム目の画像が「B」の場合を例に示している。
【0034】
図3の(A1)は、1フレーム目の画像を圧縮画像バッファー30からフレームバッファー40に書き込む順序を示している。まず、圧縮画像バッファー制御部10の制御により、圧縮部20で圧縮された画像データが圧縮画像バッファー30に書き込まれる。圧縮画像バッファー30には、1ブロックライン分の圧縮画像データが記憶される。例えば1ブロックが16画素×16画素である場合には、1ブロックラインの圧縮画像データは、圧縮前の16ライン分の画像データに対応する。なお以下では説明の簡素化のために、1ブロックラインを1ラインと表記する。そして、圧縮画像バッファー制御部10の制御により、各ラインの圧縮画像データが、圧縮画像バッファー30をFIFO(First In, First Out)として、順次、フレームバッファー40に書き込まれていく。ここで、
図3の(A1)の右側に示す矢印の向きに圧縮画像データが書き込まれていく。出力画像を0度回転で表示させる場合、1フレーム目では、画面の上側から1ライン目、2ライン目、3ライン目、・・・と順次書き込み、最も下側のラインまで書き込みを行う。このようにして、(A1)の右側に示すように、フレームバッファー40に1フレーム目の画像として「A」が書き込まれる。
【0035】
図3の(A2)は、1フレーム目の「A」の読出しと2フレーム目の「B」の書き込みを行う順序を示している。(A1)と同様に、圧縮画像バッファー制御部10の制御により、2フレーム目の画像を構成する各ラインの圧縮画像データが、圧縮画像バッファー30をFIFOとして、順次、フレームバッファー40に書き込まれていくが、2フレーム目の書き込みを行う直前に、フレームバッファー40に書き込まれている1フレーム目の圧縮画像データの読出しを行ってから2フレーム目の書き込みが行われる。即ち、(A2)ではフレームバッファー40の上側の1ライン目に書き込まれている1フレーム目の圧縮画像データの読出しを行う。そして、1ライン目に書き込まれている1フレーム目の圧縮画像データの読み出しが完了したら、2フレーム目の圧縮画像データの書き込みが行われる。そして、次に上側から2ライン目に書き込まれている1フレーム目の圧縮データの読出しを行い、1フレーム目の読み出しが完了したら、上側から2ライン目に2フレーム目の圧縮画像データの書き込みが行われる。3ライン目以降も同様である。このように、前のフレームの圧縮画像データの読出しが完了した後に、次のフレームの書き込みを行う。このようにして、(A2)の左側に示すように、1フレーム目で書きこんだ「A」が読み出され、2フレーム目の画像である「B」が上書きされる。以降の動作は
図3に記載していないが、(A2)に示す動作と同様になる。このようにして各フレームの画像が0度回転、即ち回転処理がされずに上書きされていく。nを自然数とした場合、読み出しが完了した第nフレームのブロックに、第n+1フレームの圧縮画像データを上書きしていく。これにより、フレームバッファー40は1画面分のサイズだけ設ければ足りることになる。
【0036】
本実施形態の表示コントローラー1では、1ブロックの圧縮後のデータサイズが書き込まれる領域の容量は一定に設定されている。具体的には、本実施形態では、1ブロックの圧縮画像データが書き込まれる領域の容量を、画像の圧縮率が理論上最も低いとき、即ち圧縮画像データの容量が理論上最大になったときの容量に設定する。このようにすることで、各ブロックの圧縮後のデータサイズは、そのブロックの画像の内容により圧縮後のデータサイズが変化しても、常に1ブロックの圧縮画像データが書き込まれる領域の容量以下に抑えることができる。従って、常時一定のデータサイズの単位でデータの転送を行えばよく、読み出し制御が簡素化される。
【0037】
本実施形態の表示コントローラー1では、フレームバッファー40において、1ブロック分の圧縮画像データが記憶される記憶容量は一定である。
【0038】
このようにすれば、1ブロック分の圧縮画像データが記憶される領域の記憶容量を、1ブロック分の圧縮画像データのデータサイズとして理論上最大になるデータサイズに設定することができる。このため、フレームバッファー40から1ライン分の画像データを読み出す際に、1ブロック分の圧縮画像データのサイズに左右されず、常時、一定のデータサイズで読み出すことができるようになり、読み出し時のアドレス計算を簡略化できる。
【0039】
図4は、フレームバッファー40から復号画像バッファー70への画像データの書き込み、及び復号画像バッファー70からの画像データの読み出しの順序について、1フレーム目の画像としてフレームバッファー40に「A」が書き込まれている場合を例に説明した図である。
【0040】
図4の(B1)は、1ライン目の圧縮画像データの復号と復号画像バッファー70への書き込みを示している。まず、フレームバッファー40の1ライン目にブロック単位で圧縮されて記憶されている画像データが復号部50に入力される。復号部50では、ブロック単位で圧縮された1ライン分の画像データが復号される。復号部50で復号された1ライン目の画像データは、復号画像バッファー70の第1バッファー71に書き込まれる。ここで、復号部50は画像の回転角度に応じて、復号画像バッファー70に書き込む画像のブロック内での回転処理を行う。
図3、
図4では、表示コントローラー1の出力画像を0度回転で表示させて表示する場合についての動作を説明する図であり、復号部50は各ブロック内の画像データの回転処理を行わなくてもよい。そして復号画像バッファー70の第2バッファー72には画像データの書き込みを行わない。
【0041】
図4の(B2)は、2ライン目の画像データの復号と復号画像バッファー70への書き込みを示している。まず、フレームバッファー40の2ライン目に記憶されている画像データが復号部50に入力される。復号部50では、1ライン分の画像データが復号される。復号部50で復号された2ライン目の画像データは、復号画像バッファー70の第2バッファー72に書き込まれる。(B1)と同様に、第2バッファー72に復号後の画像データを書き込む際、各ブロック内の画像データは無回転で書きこまれる。そして復号画像バッファー70の第1バッファー71には画像データの書き込みを行わない。
【0042】
図4の(B3)は、3ライン目の画像データの復号と復号画像バッファー70への書き込みを示している。(B1)、(B2)と同様に、まずフレームバッファー40の3ライン目に記憶されている画像データが復号部50に入力され、復号部50において1ライン分の画像データが復号される。そして、復号部50で復号された3ライン目の画像データは、第1バッファー71に無回転で書き込まれ、第2バッファー72には画像データの書き込みを行わない。
【0043】
このようにフレームバッファー40の1ライン目、2ライン目、3ライン目、・・・の順番に復号部50で復号が行われる。そして、奇数番目のラインの復号画像データは復号画像バッファー70の第1バッファー71に書き込まれ、偶数番目のラインの復号画像データは復号画像バッファー70の第2バッファー72に書き込まれる。このようにして、1フレーム目の「A」が0度回転で表示される。
【0044】
図4について補足すると、0度回転時は、まず(B1)に示すようにフレームバッファー40の1ライン目の読み出し時は第1バッファー71に復号されたデータ16ライン分を書き込む。次に(B2)に示すように、フレームバッファー40の2ライン目の読み出し時は、第2バッファー72に復号されたデータ16ライン分を書き込みつつ、第1バッファー71のデータを出力する。フレームバッファー40の3ライン目の読み出し時は第1バッファー71に復号されたデータ16ライン分を書き込みつつ、第2バッファー72のデータを出力する。以降、最終ラインまで(B2)、(B3)を交互に繰り返す。
【0045】
図5~
図7は表示コントローラー1の出力画像を90度回転で表示させる場合についての具体的な動作を説明する図である。
図5、
図6は、圧縮画像バッファー30からフレームバッファー40への書き込み及び読み出しの順序について、1フレーム目の画像が「A」、2フレーム目の画像が「B」、3フレーム目の画像が「C」、4フレーム目の画像が「D」の場合を例に示している。
【0046】
図5の(C1)は、1フレーム目の圧縮画像データを圧縮画像バッファー30からフレームバッファー40に書き込む順序を示している。出力画像を90度回転で表示させる場合も、基本的には0度回転で表示する場合と同様に、圧縮画像バッファー制御部10の制御により、圧縮部20で圧縮された1ライン分の圧縮画像データが圧縮画像バッファー30に書き込まれる。そして、1フレームを構成する各ラインの圧縮画像データが、圧縮画像バッファー30をFIFO(First In, First Out)として、順次、フレームバッファー40に書き込まれていく。ここで、90度回転で表示させる場合には
図5の(C1)に示すように、フレームバッファー40において、例えば矢印の向きに圧縮画像データが書き込まれていく。即ち、フレームバッファー40の左下のブロックから上側に向かって1ライン目の書き込みがされる。圧縮部20で圧縮された圧縮画像データをフレームバッファー40に書き込む場合の書き込み方向を第1書き込み方向という。そして、2ライン目、3ライン目、・・・と順次書き込みが行われる。このようにして、(C1)の右側に示すように、フレームバッファー40に1フレーム目の画像として90度回転した「A」が書き込まれる。なお、フレームバッファー40に圧縮画像データを書き込む段階では、ブロック単位で回転処理がされており、ブロック内での回転は行われない。
【0047】
図5の(C2)は、1フレーム目の「A」の読出しと2フレーム目の「B」の書き込みを行う順序を示している。0度回転で表示する場合と同様に、圧縮画像バッファー制御部10の制御により、フレームバッファー40に書き込まれている1フレーム目の圧縮データの読出しを行ってから2フレーム目の書き込みが行われる。出力画像を90度回転して表示する場合には、(C2)のフレームバッファー40の矢印で示すように、フレームバッファー40の一番上のラインから読出しを行う。1フレーム目の画像の書き込み方向である第1書き込み方向に対して、(C2)に示す1フレーム目の画像の読み出し方向を第1読み出し方向という。出力画像を90度回転で表示させる場合、(C1)に示す第1書き込み方向に対して、(C2)に示す第1読み出し方向は時計回りに90度回転した角度になっている。即ち、第1読み出し方向はフレームバッファー40の1ライン目の左側から右側に向かう方向になる。このようにすることで、(C1)で90度回転して書き込まれている「A」は、90度回転したままの「A」として読み出される。ここで、まず1ライン目に書き込まれている1フレーム目の圧縮画像データの読み出しが完了したら、2フレーム目の圧縮画像データを、読み出しを行った1ライン目に上書きする。そして、次に一番上から2ライン目に書き込まれている1フレーム目の圧縮データを第2読み出し方向、即ち1ライン目の左側から右側に向かう方向で読出しを行い、1フレーム目の読み出しが完了したら、2フレーム目の圧縮画像データを、読み出しを行った2ライン目に上書きする。3ライン目以降も同様である。このように、1つ前のフレームの圧縮画像データの読出しが完了した後に、次のフレームの圧縮画像データを上書きする。このようにして、(C2)の右側に示すように、1フレーム目の画像として90度回転した「A」が読み出される。2フレーム目の画像として上書きされた「B」は、第2書き込み方向、即ち1番上のラインの左から右に向かう方向で書き込みがされるため、(C2)の右側に示すように0度回転で書き込まれる。このように本実施形態では、第2書き込み方向は、(C2)のフレームバッファー40に示すように左から右向きの横方向であり、第1読み出し方向と同じ方向になる。
【0048】
図6の(C3)は、2フレーム目の「B」の読出しと3フレーム目の「C」の書き込みを行う順序を示している。
図5の(C2)と同様に、3フレーム目の書き込みを行う直前に、フレームバッファー40に書き込まれている2フレーム目の圧縮データの読出しを行ってから3フレーム目の書き込みが行われる。2フレーム目の「B」の読出しと3フレーム目の「C」の書き込みにおいては、
図6の(C3)のフレームバッファー40の矢印で示すように、フレームバッファー40の一番右の列から読出しを行う。即ち、第2書き込み方向に対して、反時計周りに90度回転した方向を第2読み出し方向として、2フレーム目の「B」を読み出すことで、
図5の(C2)において0度回転で書き込まれている「B」が90度回転した「B」として読み出される。そして、3フレーム目の画像として上書きされる「C」は、右から1番目の列から書き込みがされるため、
図6の(C3)の右側に示すように270度回転で書き込まれる。即ち、第3書き込み方向は上から下に向かう縦方向になる。そして、第3書き込み方向は、(C3)のフレームバッファー40に示すように、上から下に向かう方向であり、第2読み出し方向と同じ方向になる。
【0049】
図6の(C4)は、3フレーム目の「C」の読出しと4フレーム目の「D」の書き込みを行う順序を示している。(C3)と同様に、フレームバッファー40に書き込まれている3フレーム目の圧縮データの読出しを行ってから、4フレーム目の書き込みが行われる。3フレーム目の「C」の読出しと4フレーム目の「D」の書き込みにおいては、(C4)のフレームバッファー40の矢印で示すように、フレームバッファー40の一番下のラインから読出しを行う。即ち、第3書き込み方向に対して、反時計回りに90度傾いた方向を第3読み出し方向として、「C」の読み出しがされる。このようにすることで、(C3)において270度回転で書き込まれている「C」が90度回転した「C」として読み出される。そして、4フレーム目の画像として上書きされた「D」は、フレームバッファー40の一番下のラインから書き込みがされるため、(C4)の右側に示すように180度回転で書き込まれる。以降の動作は
図5に記載していないが、(C2)~(C4)に示す動作と同様になる。このようにして各フレームの圧縮画像が90度回転して上書きされていく。0度回転時と90度回転時のフレームバッファー40への書き込み手法の違いは、データ読込時のスキャン方向がデータ書き込み時のスキャン方向に対して時計回りに90度回転している点である。これにより、読み出しデータが反時計周りに90度回転した順番で出力される。
【0050】
このように本実施形態では、nを自然数としたとき、読み出しが完了した第nフレームのブロックに、第n+1フレームの圧縮画像データを上書きする。そして、画像を90度回転で表示する場合には、第nフレームの第1書き込み方向に対して、第nフレームの第1読み出し方向を時計回りに90度回転させることで、出力される画像を90度回転させることができる。
【0051】
以上のように本実施形態の圧縮画像バッファー制御部10は、第nフレームの圧縮画像データを第1書き込み方向でフレームバッファー40に書き込む制御を行う。また圧縮画像バッファー制御部10は、第nフレームの圧縮画像データを、第1書き込み方向に対して画像回転角度に応じた角度だけ回転した第1読み出し方向でフレームバッファー40から読み出す制御を行う。
【0052】
このようにすれば、第nフレームの圧縮画像データの読み出しを行いながら、第n+1フレームの圧縮画像データの上書きを行う動作において、第1読み出し方向を第1書き込み方向に対して所定の角度だけ回転させる処理により、第nフレームの画像を一定の角度に回転させて読み出すことができる。
【0053】
本実施形態の圧縮画像バッファー制御部10は、第n+1フレームの圧縮画像データを、第1読み出し方向と同じ第2書き込み方向でフレームバッファー40に書き込む制御を行う。
【0054】
このようにすれば、フレームバッファー40において、第nフレームの画像の読み出しを行う順序と、第n+1フレームの画像の書き込みを行う順序が同じになる。従って、各ブロックについて、第n+1フレームの画像の書き込みを行う前に、第nフレームの画像の読み出しを行うことにより、第nフレームの画像の読み出しと第n+1フレームの画像の書き込みを各ライン単位で同時に行うことができる。
【0055】
また、このようにすればフレームバッファー40に記憶されている第nフレームの圧縮画像データのうち、復号画像バッファー70への書き込みが終わり、フレームバッファー40から消去されても問題ないデータが記憶されている領域に、第n+1フレームの圧縮画像データが上書きされる。従って、フレームバッファー40のバッファー領域を無駄なく使用することができる。
【0056】
図7は、フレームバッファー40から復号画像バッファー70への画像データの書き込み、及び復号画像バッファー70からの画像データの読み出しの順序について、1フレーム目の画像としてフレームバッファー40に「A」が書き込まれている場合を例に説明した図である。
【0057】
図7の(D1)は、1ライン目の圧縮画像データの復号と復号画像バッファー70への書き込みを示している。
図4で説明した動作と同様に、フレームバッファー40の1ライン目にブロック単位で圧縮されて記憶されている圧縮画像データが復号部50に入力される。復号部50では、ブロック単位で圧縮された1ライン分の圧縮画像データが復号される。そして、復号画像バッファー制御部60の制御により、復号部50で復号された1ライン目の画像データは、復号画像バッファー70の第1バッファー71に書き込まれる。
【0058】
ここで、
図7は表示コントローラー1の出力画像を90度回転で表示させて表示する場合についての動作を説明する図であり、(D1)に示すように第1バッファー71に復号後の画像データを書き込む際、各ブロック内の画像データは、復号部50により90度の回転処理がされ、復号画像バッファー70の第1バッファー71に書き込まれる。フレームバッファー40の出力データを復号して、そのまま復号画像バッファー70に書き込むと、読み出し方向に対してデータがブロックごとに時計回りに90度回転した状態で出力されるため、復号画像バッファー70に書き込む際に反時計回りに90度回転して復号画像バッファー70に書き込む。即ち、(D1)に示すように、復号された各ブロックの画像データは、左から右に向かう読み出し方向に対して、反時計回り90度回転した方向で書きこまれる。このように、読み出し方向に対して画像回転角度に応じた角度だけ回転した書き込み方向で書きこまれる。後述の(D2)、(D3)についても同様の処理がされる。
【0059】
図7の(D2)は、2ライン目の圧縮画像データの復号と復号画像バッファー70への書き込みを示している。まず、フレームバッファー40の2ライン目に記憶されている圧縮画像データが復号部50に入力される。復号部50では、1ライン分の圧縮画像データが復号され、ブロック内の画像データは90度の回転処理がされる。そして、復号画像バッファー制御部60の制御により、復号部50で復号された2ライン目の画像データは、復号画像バッファー70の第2バッファー72に書き込まれる。
【0060】
図7の(D3)は、3ライン目の圧縮画像データの復号と復号画像バッファー70への書き込みを示している。(D1)、(D2)と同様に、まずフレームバッファー40の3ライン目に記憶されている圧縮画像データが復号部50に入力され、復号部50において1ライン分の画像データが復号され、ブロック内の画像データは90度の回転処理がされる。そして、90度の回転処理がされた3ライン目の画像データは、第1バッファー71に書き込まれる。
【0061】
図4において説明したのと同様に、フレームバッファー40の1ライン目、2ライン目、3ライン目、・・・の順番に復号部50で復号が行われ、奇数番目のラインの復号画像データは復号画像バッファー70の第1バッファー71に書き込まれ、偶数番目のラインの復号画像データは復号画像バッファー70の第2バッファー72に書き込まれる。このようにすることで、1フレーム目の画像である「A」がブロック単位で90度回転され、さらにブロック内でも90度回転される。従って、1フレーム目の画像である「A」は90度回転して表示コントローラー1から出力される。
【0062】
このように、本実施形態の表示コントローラー1では、各ブロックの復号画像データを読み出し方向に対して画像回転角度に応じた角度だけ回転した書き込み方向で復号画像バッファー70へ書き込む。
【0063】
このように本実施形態の復号画像バッファー制御部60は、各ブロックの復号画像データを、読み出し方向に対して画像回転角度に応じた角度だけ回転した書き込み方向で復号画像バッファー70へ書き込む。
【0064】
このようにすれば、各ブロックの復号画像データは、読み出し方向に対して画像回転角度に応じた角度だけ回転して書き込みがされる。従って、ブロック内の画像を画像回転角度だけ回転して読み出すことができる。
【0065】
また本実施形態の復号画像バッファー70は、第1バッファー71と第2バッファー72を含む。また本実施形態の復号画像バッファー70は、復号画像バッファー制御部60によって第1バッファー71に復号画像データが書き込まれているときに、第2バッファー72から復号画像データが読み出される。
【0066】
このようにすれば、復号画像バッファー制御部60の制御により、第1バッファー71に復号画像データが書き込まれているときに、第2バッファー72から復号画像データが読み出すことができる。従って、第1バッファー71と第2バッファー72のいずれかを使って、復号画像データを常時読み出すことが可能になる。
【0067】
図8、
図9、
図10は表示コントローラー1の出力画像を180度回転で表示させる場合についての具体的な動作を説明する図である。
図8、
図9は、圧縮画像バッファー30からフレームバッファー40への書き込み及び読み出しの順序について、1フレーム目の画像が「A」、2フレーム目の画像が「B」、3フレーム目の画像が「C」の場合を例に示している。
【0068】
図8の(E1)は、1フレーム目の圧縮画像データを圧縮画像バッファー30からフレームバッファー40に書き込む順序を示している。
図3、
図5、
図6の場合と同様に、まず圧縮部20で圧縮された1ライン分の圧縮画像データが圧縮画像バッファー30に書き込まれる。そして、1フレームを構成する各ラインの圧縮画像データが、圧縮画像バッファー30をFIFOとして、順次、フレームバッファー40に書き込まれていく。ここで、
図8の(E1)に示すように、フレームバッファー40において、例えば矢印の向きに圧縮画像データが書き込まれていく。即ち、フレームバッファー40の例えば一番上の1ライン目から1ライン目の書き込みが行われる。そして、2ライン目、3ライン目、・・・と順次書き込みが行われる。このようにして、(E1)の右側に示すように、フレームバッファー40に1フレーム目の画像として0度回転した「A」が書き込まれる。
【0069】
図8の(E2)は、1フレーム目の「A」の読出しと2フレーム目の「B」の書き込みを行う順序を示している。
図3、
図5、
図6で説明した動作と同様に、フレームバッファー40に書き込まれている1フレーム目の圧縮データの読出しを行ってから2フレーム目の書き込みが行われる。180度回転で表示する場合には、
図8の(E2)のフレームバッファー40の矢印で示すように、フレームバッファー40の一番下のラインから読出しを行う。出力画像を180度回転で表示させる場合、(E1)に示す第1書き込み方向に対して、(E2)に示す第1読み出し方向は時計回りに180度回転した角度になっている。このように、第1書き込み方向に対して第1読み出し方向を時計回りに180度回転させることで、(E1)で0度回転して書き込まれている「A」が180度回転した「A」として読み出される。まず一番下のラインに書き込まれている1フレーム目の圧縮画像データの読み出しが完了したら、2フレーム目の圧縮画像データを、読み出しを行った1ライン目に上書きする。そして、次に一番下から2ライン目に書き込まれている1フレーム目の圧縮データの読出しを行い、読み出しが完了したら、2フレーム目の圧縮画像データを、読み出しを完了した2ライン目に上書きする。3ライン目以降も同様である。このように、前のフレームの圧縮画像データの読出しが完了した後に、次のフレームの圧縮画像データを上書きする。このようにして、(E2)の右側に示すように、1フレーム目の画像として180度回転した「A」が読み出される。ここで、2フレーム目の画像として上書きされた「B」は、一番下のラインから書き込みがされるため、(E2)の右側に示すように180度回転して書き込まれる。
【0070】
図9の(E3)は、2フレーム目の「B」の読出しと3フレーム目の「C」の書き込みを行う順序を示している。
図8の(E2)と同様に、フレームバッファー40に書き込まれている2フレーム目の圧縮データの読出しを行ってから3フレーム目の書き込みが行われる。2フレーム目の「B」の読出しと3フレーム目の「C」の書き込みにおいては、
図9の(E3)のフレームバッファー40の矢印で示すように、フレームバッファー40の一番上のラインから読出しを行う。このようにすることで、
図8の(E2)において180度回転で書き込まれている「B」が180度回転したままの「B」として読み出される。そして、3フレーム目の画像として上書きされた「C」は、一番上のラインから書き込みがされているため、
図9の(E3)の右側に示すように0度回転で書き込まれる。以降の動作は
図8、
図9に記載していないが、(E2)、(E3)に示す動作と同様になる。このようにして各フレームの画像が180度回転して上書きされていく。
【0071】
0度回転時と180度回転時のフレームバッファー40への書き込み動作の違いは、データ読込時のスキャン方向がデータ書き込み時のスキャン方向に対して時計回りに180度回転している点である。これにより、読み出しデータが反時計周りに180度回転して出力される。そして、180度回転で表示する場合には、第nフレームの第1書き込み方向に対して、第nフレームの第1読み出し方向を時計回りに180度回転させることで、出力される画像を180度回転させることができる。
【0072】
図10は、
図4、
図7と同様にフレームバッファー40から復号画像バッファー70への画像データの書き込み、及び復号画像バッファー70からの画像データの読み出しの動作について、1フレーム目の画像としてフレームバッファー40に「A」が書き込まれている場合を例に説明した図である。
【0073】
図10の(F1)は、1ライン目の圧縮画像データの復号と復号画像バッファー70への書き込みを示している。
図4、
図7で説明した動作と同様に、フレームバッファー40の1ライン目にブロック単位で圧縮されて記憶されている圧縮画像データが復号部50に入力される。復号部50では、ブロック単位で圧縮された1ライン分の圧縮画像データが復号される。そして、復号画像バッファー制御部60の制御により、復号部50で復号された1ライン目の画像データは、復号画像バッファー70の第1バッファー71に書き込まれる。
【0074】
ここで、
図10は表示コントローラー1の出力画像を180度回転で表示させて表示する場合についての動作を説明する図であり、(F1)に示すように第1バッファー71に復号後の画像データを書き込む際、各ブロック内の画像データは、復号部50により180度の回転処理がされ、復号画像バッファー70の第1バッファー71に書き込まれる。フレームバッファー40の出力データを復号して、そのまま復号画像バッファー70に書き込むと、読み出し方向に対してデータがブロックごとに時計回りに180度回転した状態で出力されるため、復号画像バッファー70に書き込む際に反時計回りに180度回転して復号画像バッファー70に書き込む。即ち、(F1)に示すように、復号された各ブロックの画像データは、左から右に向かう読み出し方向に対して、反時計回り180度回転した方向で書きこまれる。このように、読み出し方向に対して画像回転角度に応じた角度だけ回転した書き込み方向で書きこまれる。後述の(F2)、(F3)についても同様の処理がされる。そして復号画像バッファー70の第2バッファー72には画像データの書き込みを行わない。
図10の(F2)は2ライン目、(F3)は3ライン目についての説明であり、(F1)と同様の動作になる。
【0075】
図11、
図12、
図13は表示コントローラー1の出力画像を270度回転で表示させる場合についての具体的な動作を説明する図である。
図11、
図12は、圧縮画像バッファー30からフレームバッファー40への書き込み及び読み出しの順序について、1フレーム目の画像が「A」、2フレーム目の画像が「B」、3フレーム目の画像が「C」、4フレーム目の画像が「D」の場合を例に示している。
【0076】
図11、
図12の(G1)~(G4)に示す動作は、
図3、
図5、
図6、
図8、
図9で説明した動作と基本的に同様であるが、各フレームの圧縮画像データの読み出し方向及び書き込み方向が異なっている。まず
図11の(G1)では、一番右の列からフレームバッファー40に「A」の書き込みを行う。これにより、1フレーム目の「A」は270度回転して書き込まれる。次に(G2)では、1フレーム目の読み出しをフレームバッファー40の一番上のラインから行う。このように、第1書き込み方向に対して第1読み出し方向を時計回りに270度回転させることで、1フレーム目の270度回転して書き込まれている「A」は、270度回転したまま読み出される。そして「A」を読み出しながら、「B」を書き込んでいくため、2フレーム目の「B」は0度回転、即ち無回転の状態で書き込まれる。
図12の(G3)では、2フレーム目の読み出しをフレームバッファー40の一番左側の列から行う。これにより、2フレーム目の無回転で書き込まれている「B」は、270度回転して読み出される。そして「B」を読み出しながら、「C」を書き込んでいくため、3フレーム目の「C」は90度回転した状態で書き込まれる。(G4)では、3フレーム目の読み出しをフレームバッファー40の一番下のラインから行う。これにより、3フレーム目の90回転で書き込まれている「C」は、270度回転して読み出される。そして「C」を読み出しながら、「D」を書き込んでいくため、4フレーム目の「D」は90度回転した状態で書き込まれる。以降の動作は
図11、
図12に記載されていないが、(G2)~(G4)に示す動作と同様になる。このようにして各フレームの画像が270度回転して上書きされていく。
【0077】
0度回転時と270度回転時のフレームバッファー40への書き込み手順の違いは、データ読込時のスキャン方向がデータ書き込み時のスキャン方向に対して時計回りに270度回転している点である。これにより、読み出しデータが反時計周りに270度回転して出力される。そして、270度回転で表示する場合には、第nフレームの第1書き込み方向に対して、第nフレームの第1読み出し方向を時計回りに270度回転させることで、出力される画像を270度回転させることができる。
【0078】
図13は、フレームバッファー40から復号画像バッファー70への画像データの書き込み、及び復号画像バッファー70からの画像データの読み出しの順序について、1フレーム目の画像としてフレームバッファー40に「A」が書き込まれている場合を例に説明した図である。270度回転させて表示する場合も、基本的には
図4、
図7、
図10で説明した動作と同様であるが、例えば
図13の(H1)では、復号部50により復号され、ブロック内で270度の回転処理がされた1ライン目の画像データが、第1バッファー71に書き込まれる。
【0079】
図14は、特許文献1に開示される画像処理装置を適用した場合の表示コントローラー100の構成例である。
図14に示す従来の構成例において、表示コントローラー100は、書き込み制御部90、フレームバッファー42及び読み出し制御部110を含む。
【0080】
フレームバッファー42は、画像データを一時的に保存するメモリーである。書き込み制御部90は、ドットクロック信号DCK、同期信号VS、同期信号HS、データイネーブル信号DEから、アドレス信号Wa及び制御信号WEを生成する。アドレス信号Waはフレームバッファー42への書き込みアドレスの信号であり、制御信号WEはフレームバッファー42への書き込み制御信号である。読み出し制御部110は、ドットクロック信号DCK、同期信号VS、同期信号HS、データイネーブル信号DEから、アドレス信号Raを生成する。アドレス信号Raはフレームバッファー42からの読み出しアドレスの信号である。
【0081】
図14に示す従来の構成例は、
図1等に示す本実施形態と異なり、圧縮画像バッファー30、復号画像バッファー70を有していない。このため、従来の構成例では、フレームバッファー42が、書き込み制御部90からのアドレス信号Wa及び制御信号WE、読み出し制御部110からのアドレス信号Raに基づいて、画像データの回転処理を行う。従って、従来の構成例では、入力される画像信号の解像度に応じた容量のフレームバッファー42をIC上に設ける必要があった。このため、画像データのサイズによっては、IC単体で必要とされるフレームバッファーの容量を実現することが困難であった。
【0082】
この点、本実施形態では、画像の回転処理のために、圧縮画像バッファー30、フレームバッファー40及び復号画像バッファー70の3種類のバッファーを設ける。そして、フレームバッファー40はブロックサイズを圧縮した際に理論上最大となるデータサイズのステップで圧縮データを書き込む。これにより、読み出し時のアドレス計算を簡略化することが可能になる。さらに圧縮された画像信号は、画像の回転角度に応じてフレームバッファー40に書き込む順番およびフレームバッファー40から読み出す順番を変える。これにより、入力画像サイズより少ないバッファーサイズで、90度刻みの任意の回転画像をリアルタイムで生成、出力できる。
【0083】
本実施形態の他の実施態様としては、圧縮部20が設けられていない実施態様も考えられる。仮に圧縮されたデータが表示コントローラー1に直接入力される場合、圧縮部20が設けられていない構成でも上述した表示コントローラー1と同様の効果が得られる。
【0084】
2.表示システム
図15に、本実施形態の表示システム6の第1構成例のブロック図を示す。第1構成例は、処理装置5と上述した表示コントローラー1と第1ディスプレイ201と第2ディスプレイ202を含む。処理装置5は例えばSoC(System On Chip)である。
【0085】
このように本実施形態の表示システム6は、上記に記載の表示コントローラー1と画像データを表示コントローラー1へ出力する処理装置を含む。このようにすれば、表示システム6においても、上記で説明した表示コントローラー1と同様の効果が得られる。
【0086】
また本実施形態の表示システム6は、
図15に示す第1構成例に限定されず、圧縮部20を処理装置5に設けた第2構成例のようにすることもできる。
図16は、表示システム6の第2構成例のブロック図である。
【0087】
図16に示す第2構成例では、処理装置5は、圧縮部20においてブロック単位で圧縮されたデータを表示コントローラー1に出力する。そして表示コントローラー1では、圧縮画像データの回転処理と復号化を行う。表示コントローラー1は回転及び復号化されたデータを第1ディスプレイ201、第2ディスプレイに出力する。このように、表示システム6の第2構成例では、
図1等で説明した表示コントローラー1の圧縮部20と復号部50を別のチップに設けることで、圧縮したデータを転送でき、通信負荷を減らすことができる。
【0088】
図17は、表示システム6の第2構成例の具体的な構成を説明する図である。
図17に示すように、第2構成例では、処理装置5は圧縮画像データを第1スプリッター211に出力する。そして圧縮画像データは、第1スプリッター211からデイジーチェーン方式で接続された第2スプリッター212、第3スプリッター213に伝達される。第1スプリッター211、第2スプリッター212及び第3スプリッター213は、圧縮画像データをそれぞれ第1表示コントローラー2、第2表示コントローラー3、第3表示コントローラー4に出力する。そして、各表示コントローラーで回転処理と復号化が行われ、第1ディスプレイ201、第2ディスプレイ202、第3ディスプレイ203に出力される。
【0089】
図18は、表示システム6の第2構成例の詳細を示すブロック図である。
図18に示す構成は、基本的には
図1の表示コントローラー1と同様の構成になっているが、破線の左側に示すように、圧縮部20は処理装置5に含まれている。そして、破線の右側が表示コントローラー1になっている。
【0090】
本実施形態の表示システム6は、上記に記載の表示コントローラー1と圧縮画像データを表示コントローラー1へ出力する処理装置5を含む。処理装置5は、1フレームの画像データを複数のブロックの圧縮画像データに圧縮する圧縮部20を含む。
【0091】
このようにすれば、処理装置5において圧縮した画像データを表示コントローラー1へ出力することができ、通信負荷を減らすことができる。
【0092】
以上のように本実施形態の表示コントローラーは、圧縮画像バッファーとフレームバッファーと圧縮画像バッファー制御部と復号部と復号画像バッファーと復号画像バッファー制御部を含む。圧縮画像バッファーは、1フレームの画像データを複数のブロックの各ブロック単位で圧縮した圧縮画像データが記憶される。フレームバッファーは、圧縮画像バッファーの各ブロックの圧縮画像データが書き込まれることで、複数のブロックの圧縮画像データが記憶される。圧縮画像バッファー制御部は、フレームバッファーの書き込み方向と読み出し方向を、画像回転角度に応じて制御する。復号部は、フレームバッファーから読み出された各ブロックの圧縮画像データを復号化する。復号画像バッファーは、復号化された各ブロックの復号画像データが記憶される。復号画像バッファー制御部は、復号画像バッファーへの書き込み方向を、画像回転角度に応じて制御する。
【0093】
このようにすれば、表示コントローラーに入力された画像データは、ブロックごとに圧縮された圧縮画像データとして圧縮画像バッファーに記憶される。そして、圧縮画像バッファー制御部の制御に基づき、画像の回転角度に応じてブロック単位でフレームバッファーに画像データの書き込みが行われる。従って、入力画像データが圧縮されたデータ形式で圧縮画像バッファー及びフレームバッファーに書き込みが行われるため、表示コントローラーのバッファーサイズを入力画像のデータサイズより小さい容量にすることができる。フレームバッファー40に記憶された画像データは、復号部50によって復号され、復号画像バッファー制御部60の制御に基づいて、画像の回転角度に応じて復号画像バッファー70に書き込まれる。そして、復号画像バッファー70に記憶された画像データが表示コントローラー1から出力される。
【0094】
本実施形態の圧縮画像バッファー制御部は、第nフレームの圧縮画像データを第1書き込み方向でフレームバッファーに書き込む制御を行う。また圧縮画像バッファー制御部は、第nフレームの圧縮画像データを、第1書き込み方向に対して画像回転角度に応じた角度だけ回転した第1読み出し方向でフレームバッファーから読み出す制御を行う。
【0095】
このようにすれば、第nフレームの画像の読み出しを行いながら、第n+1フレームの画像の上書きを行う動作において、第1読み出し方向を第1書き込み方向に対して所定の角度だけ回転させる処理により、第nフレームの画像を一定の角度に回転させて読み出すことができる。
【0096】
本実施形態の圧縮画像バッファー制御部は、第n+1フレームの圧縮画像データを、第1読み出し方向と同じ第2書き込み方向でフレームバッファーに書き込む制御を行う。
【0097】
このようにすれば、フレームバッファーにおいて、第nフレームの画像の読み出しを行う順序と、第n+1フレームの画像の書き込みを行う順序が同じになる。従って、各ブロックについて、第n+1フレームの画像の書き込みを行う前に、第nフレームの画像の読み出しを行うことにより、第nフレームの画像の読み出しと第n+1フレームの画像の書き込みを各ライン単位で同時に行うことができる。
【0098】
本実施形態の復号画像バッファー制御部は、各ブロックの復号画像データを、読み出し方向に対して画像回転角度に応じた角度だけ回転した書き込み方向で復号画像バッファーへ書き込む。
【0099】
このようにすれば、各ブロックの復号画像データは、読み出し方向に対して画像回転角度に応じた角度だけ回転して書き込みがされる。従って、ブロック内の画像を画像回転角度だけ回転して読み出すことができる。
【0100】
本実施形態の復号画像バッファーは、第1バッファーと第2バッファーを含む。また本実施形態の復号画像バッファーは、復号画像バッファー制御部によって第1バッファーに復号画像データが書き込まれているときに、第2バッファーから復号画像データが読み出される。
【0101】
このようにすれば、復号画像バッファー制御部の制御により、第1バッファーに復号画像データが書き込まれているときに、第2バッファーから復号画像データが読み出すことができる。従って、第1バッファーと第2バッファーのいずれかを使って、復号画像データを常時読み出すことが可能になり、読み出しが高速化される。
【0102】
本実施形態の表示コントローラーでは、フレームバッファーにおいて、1ブロック分の圧縮画像データが記憶される記憶容量は一定である。
【0103】
このようにすれば、1ブロック分の圧縮画像データが記憶される記憶容量を、1ブロック分の圧縮画像データのデータサイズとして理論上最大になるデータサイズに設定することができる。このため、フレームバッファーから1ライン分の画像データを読み出す際に、1ブロック分の圧縮画像データのサイズに左右されず、常時、一定のデータサイズで読み出すことができるようになり、読み出し時のアドレス計算を簡略化できる。
【0104】
本実施形態の表示コントローラーでは、1フレームの画像データを複数のブロックの圧縮画像データに圧縮する圧縮部を含む。
【0105】
このようにすれば、1フレームの画像データを複数のブロックの圧縮画像データに圧縮することができる。従って、1ブロックの画像を圧縮後の少ない容量で、書き込み及び読み出しを行うことが可能になる。
【0106】
本実施形態の表示システムは、上記に記載の表示コントローラーと画像データを表示コントローラーへ出力する処理装置を含む。
【0107】
本実施形態の表示システムは、上記に記載の表示コントローラーと圧縮画像データを表示コントローラーへ出力する処理装置を含む。処理装置は、1フレームの画像データを複数のブロックの圧縮画像データに圧縮する圧縮部を含む。
【0108】
なお、上記のように本実施形態について詳細に説明したが、本開示の新規事項及び効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本開示の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語と共に記載された用語は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。また本実施形態及び変形例の全ての組み合わせも、本開示の範囲に含まれる。また表示コントローラー、表示システムの構成・動作等も本実施形態で説明したものに限定されず、種々の変形実施が可能である。
【符号の説明】
【0109】
1…表示コントローラー、2…第1表示コントローラー、3…第2表示コントローラー、4…第3表示コントローラー、5…処理装置、6…表示システム、10…圧縮画像バッファー制御部、20…圧縮部、30…圧縮画像バッファー、40、42…フレームバッファー、50…復号部、60…復号画像バッファー制御部、70…復号画像バッファー、71…第1バッファー、72…第2バッファー、80…セレクター、90…書き込み制御部、100…表示コントローラー、110…読み出し制御部、201…第1ディスプレイ、202…第2ディスプレイ、203…第3ディスプレイ、211…第1スプリッター、212…第2スプリッター、213…第3スプリッター、BD、BDd、BDev、BDo、BDod…画像信号、DC…信号、DCK…ドットクロック信号、DE、DEdo、DEo…データイネーブル信号、DF、DL…信号、GD、GDd、GDev、GDo、GDod…画像信号、HS、HSdi、HSdo、HSo…同期信号、RD、RDd、RD、RDo、RDod…画像信号、RFa、RLa、Ra…アドレス信号、SE…信号、VS、VSdi、VSdo、VSo…同期信号、WE、WF…制御信号、WFa…アドレス信号、WL…制御信号、WLa、Wa…アドレス信号、Wev、Wod…制御信号