(58)【調査した分野】(Int.Cl.,DB名)
列方向に並ぶ複数の画素に共通に接続されたデータ線と、行方向に並ぶ複数の画素に共通に接続された走査線とが、それぞれ複数配設され、前記データ線と前記走査線の各交差点に対応して画素が形成されている表示部に対し、前記各データ線を対応する画素の階調値に応じた期間長の定電流信号とされたデータ線駆動信号で駆動する表示駆動装置であって、
同一階調値の表示データ数と、前記期間長を短縮させる値としての補正量との対応関係を示したルックアップテーブルと、
前記走査線の1ライン期間に相当する表示データ単位内で、階調値毎の表示データ数を計数し、前記ルックアップテーブルを参照して階調値毎の表示データ数の計数結果に応じた補正量を取得し、表示データについての補正値を、その表示データの階調値より下位の階調値について前記ルックアップテーブルから取得した補正量を合計した補正量に相当する値となるように生成する補正値生成部と、
表示データについて前記補正値生成部で生成した補正値を用いて前記期間長を短縮させるための補正処理を行い、補正処理後の表示データに基づいて前記データ線駆動信号を生成する駆動信号生成部と、を備えた
表示駆動装置。
列方向に並ぶ複数の画素に共通に接続されたデータ線と、行方向に並ぶ複数の画素に共通に接続された走査線とが、それぞれ複数配設され、前記データ線と前記走査線の各交差点に対応して画素が形成されている表示部に対し、前記各データ線を対応する画素の階調値に応じた期間長の定電流信号とされたデータ線駆動信号で駆動する表示駆動方法として、
前記走査線の1ライン期間に相当する表示データ単位内で、階調値毎の表示データ数を計数し、同一階調値の表示データ数と前記期間長を短縮させる値としての補正量との対応関係を示したルックアップテーブルを参照して階調値毎の表示データ数の計数結果に応じた補正量を取得し、表示データについての補正値を、その表示データの階調値より下位の階調値について前記ルックアップテーブルから取得した補正量を合計した補正量に相当する値となるように生成し、
表示データについて、生成した補正値を用いて前記期間長を短縮させるための補正処理を行い、補正処理後の表示データに基づいて前記データ線駆動信号を生成する
表示駆動方法。
列方向に並ぶ複数の画素に共通に接続されたデータ線と、行方向に並ぶ複数の画素に共通に接続された走査線とが、それぞれ複数配設され、前記データ線と前記走査線の各交差点に対応して画素が形成されている表示部と、
前記各データ線を対応する画素の階調値に応じた期間長の定電流信号とされたデータ線駆動信号で駆動する表示駆動部と、
前記走査線に対して走査信号を与える走査線駆動部と、
同一階調値の表示データ数と、前記期間長を短縮させる値としての補正量との対応関係を示したルックアップテーブルと、
を備え、
前記表示駆動部は、
前記走査線の1ライン期間に相当する表示データ単位内で、階調値毎の表示データ数を計数し、前記ルックアップテーブルを参照して階調値毎の表示データ数の計数結果に応じた補正量を取得し、表示データについての補正値を、その表示データの階調値より下位の階調値について前記ルックアップテーブルから取得した補正量を合計した補正量に相当する値となるように生成する補正値生成部と、
表示データについて前記補正値生成部で生成した補正値を用いて前記期間長を短縮させるための補正処理を行い、補正処理後の表示データに基づいて前記データ線駆動信号を生成する駆動信号生成部と、を備えている
表示装置。
【発明を実施するための形態】
【0017】
以下、本発明の実施の形態を次の順序で説明する。
<1.実施の形態の表示装置及び表示駆動装置の構成>
<2.表示上に発生する輝度変化の説明>
<3.補正処理>
<4.まとめ及び変形例>
【0018】
<1.実施の形態の表示装置及び表示駆動装置の構成>
図1は実施の形態の表示装置1と、表示装置1の表示動作制御を行うMPU(Micro Processing Unit:演算装置)2を示している。
表示装置1は、表示画面を構成する表示部10と、コントローラIC(Integrated Circuit)20と、カソードドライバ21を有する。
なお、表示装置1が本発明請求項の表示装置に相当する実施の形態である。またコントローラIC20が本発明請求項の表示駆動装置(又は表示駆動部)に相当する実施の形態である。
【0019】
表示部10は、データ線DL(DL1〜DL256)と、走査線SL(SL1〜SL128)とが、それぞれ複数配設され、データ線DLと走査線SLの各交差点に対応して画素が形成されている。例えば256本のデータ線DL1〜DL256と、128本の走査線SL1〜SL128とが配設され、これに応じて256個の画素が水平方向に配置され、128個の画素が垂直方向に配置される。
従って表示部10は、表示画像を構成する画素として256×128=32768個の画素を有する。本実施の形態の場合、各画素はOLEDを用いた自発光素子として形成される。なお、もちろん画素数、データ線数、走査線数は一例に過ぎない。
256本のデータ線DL1〜DL256のそれぞれは、表示部10の列方向(垂直方向)に並ぶ128個の画素に共通に接続されている。また128本の走査線SL1〜SL128のそれぞれは、行方向(水平方向)に並ぶ256個の画素に共通に接続されている。
走査線SLで選択されたラインの256個の画素に、データ線DLから表示データ(階調値)に基づく駆動信号が与えられることで、当該ラインの各画素が、表示データに応じた輝度(階調)で発光駆動される。
【0020】
この表示部10の表示駆動のためにコントローラIC20、カソードドライバ21が設けられる。
コントローラIC20は、駆動制御部31、表示データ記憶部32、アノードドライバ33を有する。アノードドライバ33は、データ線DL1〜DL256を駆動する。
なお本例の場合、アノードドライバ33は階調に応じた時間長のパルス信号が駆動制御部31から与えられることに応じて、そのパルス信号で規定される期間にデータ線DLに対して定電流出力を行う。説明上、当該パルス信号と、データ線DLに与えられる電流信号を総称して「データ線駆動信号」と呼ぶが、特に区別する場合、パルス信号としてのデータ線駆動信号を「アノード指示信号」、データ線DLに与えられる定電流信号を「アノードドライバ出力信号」と表記又は付記する。
【0021】
駆動制御部31は、MPU2との間でコマンドや表示データの通信を行い、コマンドに応じた表示動作を制御する。例えば駆動制御部31は、表示開始のコマンドを受信すると、それに応じてタイミング設定を行って、カソードドライバ21による走査線SLの走査を開始させる。またカソードドライバ21による走査に同期させてアノードドライバ33から256本のデータ線DLの駆動を実行させる。
アノードドライバ33によるデータ線DLの駆動に関しては、駆動制御部31は、MPU2から受信した表示データを表示データ記憶部32に記憶させると共に、上記の走査タイミングに合わせて、表示データに基づくデータ線駆動信号(アノード指示信号)をアノードドライバ33に供給する。これに応じてアノードドライバ33が階調に応じたデータ線駆動信号(アノードドライバ出力信号)をデータ線DLに出力する。
このような制御により、選択されているライン、つまりカソードドライバ21から選択レベルの走査信号が与えられている1つの走査線SL上の各画素が発光駆動される。順次各ラインが発光駆動されていくことで、フレーム画像表示が実現される。
【0022】
カソードドライバ21は、走査線SLの一端から走査信号を与える走査線駆動部として機能する。
カソードドライバ21は、そのQ1出力端子〜Q128出力端子が、それぞれ走査線SL1〜SL128に接続された状態で配置されている。そして走査方向SDとして示すように、Q1出力端子からQ128出力端子に向かって選択レベルの走査信号を順次出力することで、走査線SL1〜SL128を順次選択状態とする走査を行う。
【0023】
図2Aは、表示駆動装置として機能するコントローラIC20の内部を示しているが、特に駆動制御部31内を詳細に示したものである。
駆動制御部31内には、MPUインターフェース41、コマンドデコーダ42、発振回路43、タイミングコントローラ44が設けられる。
【0024】
MPUインターフェース41は、上述したMPU2との間の各種通信を行うインターフェース回路部である。具体的には表示データやコマンド信号の送受信がMPUインターフェース41とMPU2の間で行われる。
コマンドデコーダ42は、MPU2から送信されてきたコマンド信号を図示しない内部レジスタに取り込むと共に、コマンド信号のデコードを行う。そしてコマンドデコーダ42は、取り込んだコマンド信号の内容に応じた動作を実行させるべく、タイミングコントローラ44に必要な通知を行う。またコマンドデコーダ42は取り込んだ表示データを表示データ記憶部32に記憶させる。
【0025】
発振回路43は、表示駆動制御のためのクロック信号CKを発生させる。
クロック信号CKは表示データ記憶部32に供給されてデータの書込/読出動作のクロックとして用いられる。またクロック信号CKはタイミングコントローラ44の処理に使用される。
【0026】
タイミングコントローラ44は、表示部10の走査線SL、データ線DLの駆動タイミングを設定する。そしてタイミングコントローラ44はカソードドライバ制御信号CAを出力して、カソードドライバ21によるライン走査を実行させる。
またタイミングコントローラ44はアノードドライバ33にデータ線駆動信号(アノード指示信号)を出力してデータ線DLの駆動を実行させる。またこの動作のために、表示データを表示データ記憶部32から読み出し、表示データに基づいてデータ線駆動信号を生成する。これにより、アノードドライバ33が、各走査線SLの走査タイミングにあわせて、該当ラインの各画素にデータ線駆動信号に応じた電流出力を行うことになる。
【0027】
特に本実施の形態では、タイミングコントローラ44は、アノードドライバ33に対する構成として図示のように補正値生成部44a、駆動信号生成部44bとしての構成を有することになる。
補正値生成部44aは、走査線SLの1ライン期間に相当する表示データ単位内で、階調値毎の表示データ数を計数し、計数結果に応じて表示データの補正値を生成する。
駆動信号生成部44bは、表示データについて補正値生成部44aで生成した補正値を用いた補正処理を行い、補正処理後の表示データに基づいて各データ線DLを駆動するためのデータ線駆動信号(アノード指示信号)を生成する。
【0028】
図2Bに、このような補正値生成部44a、駆動信号生成部44bとしての具体的な構成例を示す。
図2Bに示す構成のうち、ルックアップテーブル記憶部56、補正テーブル生成回路57、補正テーブル記憶部58が補正値生成部44aとして機能する。
またバッファ52、セレクタ53,59、階調テーブル記憶部54、加算器55、ラッチ回路60(60−1〜60−256)、カウンタ61、比較回路62(62−1〜62−256)が駆動信号生成部44bとして機能する。
タイミング生成回路51は、以上の補正値生成部44aと駆動信号生成部44bを構成する各部の動作タイミングを制御する。
【0029】
まずこの
図2Bの構成において、補正処理を除いた動作を説明する。
タイミングコントローラ44は上述の表示データ記憶部32に記憶された表示データを1ライン単位でバッファ52に取り込み、データ線駆動信号の生成を行う。
バッファ52には、表示データ記憶部32から読み出された1ライン分の表示データ(256画素の表示データ)がバッファリング(一時保存)される。表示データは例えば1画素につき4ビットで16階調を表現するデータである。
バッファリングされた1ライン分の表示データ、即ち256画素分の表示データは、1画素分(4ビット)毎にセレクタ53に供給される。セレクタ53は、4ビットで表現される階調値に応じて、階調テーブル記憶部54に記憶された目標カウンタ値を選択して出力する。
階調テーブル記憶部54に記憶された階調テーブルは、例えば
図3Aに示すように、4ビットバイナリデータと目標カウンタ値が対応づけられたテーブル構造とされている。なお
図3Aでは参考のため、階調値とパルス幅も加えて示しているが、これらは実際のテーブルデータとして記憶する必要はない。階調値は4ビットバイナリデータ「0000」〜「1111」で表される16階調を「0/15」〜「15/15」と表記したものである。「0/15」は最低輝度の黒表示階調、「15/15」は最高輝度の白表示階調である。パルス幅は、目標カウンタ値によって制御されるデータ線駆動信号(アノード指示信号)としてのパルス幅を時間値で示したもので、これはアノードドライバ出力信号としての定電流出力の時間長となる。
この例では、目標カウンタ値の1カウントが0.25μs相当としており、例えば目標カウンタ値=480であれば、パルス幅は120μsとなる。
【0030】
セレクタ53は、表示データとしての4ビット(階調)に応じて、この階調テーブルを参照し、目標カウンタ値を読み出して出力する。例えば表示データ4ビットが「1100」(12/15階調)である場合、目標カウンタ値=200を出力する。
なお、このように目標カウンタ値は、表示データとしての階調値を、時間値に変換したものであり、実質的には表示データとしての階調値に相当する値である。
補正が行われない場合は、セレクタ53から出力された目標カウンタ値がそのままラッチ回路60にラッチされる。なお後述する補正が行われる場合は、セレクタ53から出力された目標カウンタ値について加算器55で補正のための演算処理が行われる。
【0031】
ラッチ回路60は、1ライン分の各画素に対応して複数個(本例ではラッチ回路60−1〜60−256の256個)設けられている。そして1ライン分の各表示データに基づいて選択された目標カウンタ値は、それぞれ対応するラッチ回路60にラッチされる。従って、1ライン分の各画素についての目標カウンタ値が、それぞれラッチ回路60−1〜60−256に取り込まれる。
各ラッチ回路60−1〜60−256にラッチされた目標カウンタ値は、それぞれ比較回路62−1〜62−256において、カウンタ61のカウント値と比較され、その比較結果として、各データ線についてのデータ線駆動信号(アノード指示信号)が得られる。
【0032】
この動作を
図3Bで説明する。カウンタ61は所定のクロック信号に応じて所定上限値までのカウントアップを繰り返す。所定上限値は走査線SLの1ライン期間に対応した値に設定される。比較回路62の出力は、カウンタ値のリセットタイミングでHレベルに立ち上がる。そしてカウンタ値が、ラッチされた目標カウンタ値に達すると、比較回路62の出力はLレベルに立ち下がる。
例えば或るラッチ回路62−xにラッチされた目標カウンタ値=Dpw1の場合、比較回路62−xからは比較出力ADT1が得られる。また、或るラッチ回路62−yにラッチされた目標カウンタ値=Dpw2の場合、比較回路62−yからは比較出力ADT2が得られる。
結局、比較回路62−1〜62−256の出力は、それぞれ対応するラッチ回路60−1〜60−256にラッチされた目標カウンタ値、つまりは表示データの階調値に応じた時間長のパルスとなる。
このような各比較出力が各データ線DL1〜DL256についてのデータ線駆動信号(アノード指示信号)としてアノードドライバ33に供給される。アノードドライバ33は、各データ線駆動信号のパルスのHレベル期間に、各データ線DL1〜DL256に定電流信号(アノードドライバ出力信号)の出力を行う。例えば定電流源の電流出力をデータ線駆動信号に応じてオン/オフすることで、アノードドライバ出力信号を出力する。
【0033】
以上は、補正を考慮していない基本的なタイミングコントローラ44の動作となる。
本例の場合、1ラインの表示データ単位毎に、ルックアップテーブル記憶部56及び補正テーブル生成回路57により、目標カウンタ値(つまり階調に応じた時間長)を補正するための補正テーブルが作成され、補正テーブル記憶部58に記憶される。そして各画素に対応する補正値(後述のカウント補正値)がセレクタ59によって読み出され、加算器55に与えられる。加算器55では目標カウンタ値と補正値を用いた演算処理により目標カウンタ値が補正される。
【0034】
この補正動作のため、ルックアップテーブル記憶部56には、
図3Cのようなルックアップテーブルが記憶されている。
ルックアップテーブルは、図示のように階調値の数と補正量が対応づけられている。なお参考のためパルス幅の補正量も示しているが、これは実際のテーブルデータとして記憶する必要はない。
階調値の数とは、1ラインの表示データ単位内での同一の階調値の数である。
補正量は、同一階調値の数に応じて目標カウンタ値に与える補正量である。この補正量は後述のカウント補正値として反映される。補正量“1”は目標カウンタ値の1カウント(=0.25μs)に相当する。補正量としては図示のように“−4”“−8”・・・等の負値が記憶されているが、これはデータ線DLへ定電流印加を行う期間長を短縮させる値となっている。
パルス幅は、補正量をデータ線駆動信号のパルス幅の補正量に換算したものである。つまり実際の定電流印加期間長の短縮値となる。
このルックアップテーブルを用いた補正動作について詳しくは後述する。
【0035】
なおルックアップテーブルにおける階調値の数と補正量は、例えばMPU2からの指示で書き換えることができる。例えば電源オン時にMPU2がコントローラIC20にルックアップテーブル書き換えのコマンド及びテーブルデータを送信する。
ここで、
図3Aの階調テーブルについても表示部10のガンマ特性に応じた目標カウンタ値とするため例えば電源オン時にMPU2が設定する場合もある。この場合、電源オン時に階調テーブルとともにルックアップテーブルも設定されるようにするとよい。
【0036】
<2.表示上に発生する輝度変化の説明>
本実施の形態では、上記のように補正を行うものであるが、ここで補正を行う理由について述べておく。
図4Aは表示部10の表示画面の様子を示している。この例は、背景領域Ag1を8/15階調とし、中央領域Ag2を4/15階調とする表示を行っている状態である。例えばこのように中央領域Ag2を比較的低い輝度とし、その周囲の背景領域Ag1を中間的な階調の輝度とした場合に、図中の背景領域Ag1内である領域AR1と領域AR2の輝度が異なる状態となる現象が生ずる。即ち破線で示す範囲の領域AR2(中央領域Ag2の左右の領域)の輝度が他の背景部分よりも輝度が高くなって、表示ムラが生じてしまう。
この現象は、領域AR2における画素の表示のためのデータ線駆動信号(アノードドライバ出力信号)がオーバーシュートすることに起因する。
【0037】
このオーバーシュートについて説明する。
図4Bに走査線SLy〜SLy+3を模式的に示し、この4つの走査線は連続した走査線であるとする。またデータ線DLp、DLu、DLqを示している。
走査線SLy,SLy+1はライン上のすべての画素が背景領域Ag1を構成している走査線で、走査線SLy+2,SLy+3は一部の画素が中央領域Ag2を構成している走査線であるとする。またデータ線DLp、DLuは中央領域Ag2を構成する画素を含むデータ線で、データ線DLqは中央領域Ag2を構成する画素を含まないデータ線であるとする。
データ線DLp、DLqについてのデータ線駆動信号(アノード指示信号)及び走査線SLy〜SLy+3に与えられる走査信号を
図4Cに示している。なおデータ線DLuについてのデータ線駆動信号はデータ線DLpと同様となる。
【0038】
各走査線SLに与えられる走査信号は、Lレベルがラインを選択状態とする信号である。この図の場合、1水平期間(走査線SLの1ライン期間)毎に走査線SLyからSLy+3が順次選択される状態を示している。なお、矢印RSで示す期間に走査信号はすべてLレベルとなっているが、これはいわゆる陰極リセット法としての駆動方法におけるリセット期間である。陰極リセット法では、走査が次の走査線に移る際に、すべての走査線を一旦リセット電位に接続し、これによって画素発光の立ち上がりの遅れを低減している。
データ線DLqについてのアノード指示信号をみると、このデータ線DLqに接続された画素はすべて背景領域Ag1であるため、走査線SLy〜SLy+3がそれぞれ選択される期間は、8/15階調に相当する時間長のパルスとなる。このパルス期間にデータ線DLqに定電流印加が行われる。
一方、データ線DLp(及びDLu)に接続された画素としては背景領域Ag1の画素と中央領域Ag2の画素が混在する。このためデータ線DLpに与えられるアノードドライバ出力信号は、走査線SLy、SLy+1が選択状態となる期間は8/15階調に相当する時間長のパルスとなり、走査線SLy+2、SLy+3が選択状態となる期間は4/15階調に相当する時間長のパルスとなる。
【0039】
図5はデータ線DLに関するデータ線駆動信号を示している。
図5A、
図5Bには参考のため、0/15階調と15/15階調の場合のデータ線駆動信号としてのパルス波形を示した。
図5Cは、
図4Cのデータ線DLp、DLuの中央領域Ag2内の画素に対する期間の4/15階調のアノード指示信号で、
図5Dは、
図4Cのデータ線DLp、DLu、DLqの背景領域Ag1内の画素に対する期間の8/15階調のアノード指示信号である。
図5Cのアノード指示信号に応じては、データ線DLに対して
図5Eのようなアノードドライバ出力信号が与えられ、また
図5Dのアノード指示信号に応じては、データ線DLに対して
図5Fのようなアノードドライバ出力信号が与えられる。なお
図5E、
図5Fにおいては波形立ち上がりが多少鈍っているが、これはデータ線の配線容量の影響と考えられる。
【0040】
ここで
図5Gは、
図5Fと同様に
図5Dのアノード指示信号に応じたアノードドライバ出力信号であるが、波形(データ線上の電位)が一旦低下し、その反動でオーバーシュートOSが発生している。
図5Fの波形を「H1」、
図5Gの波形を「H2」とし、
図4Cのアノード指示信号において対応させて期間H1、H2を付した。
図4CのH1期間においてデータ線DLp、DLu、及びDLqの8/15階調のアノードドライバ出力信号(データ線電位)は
図5Fの波形となり、
図4CのH2期間においてデータ線DLqの8/15階調のアノードドライバ出力信号(データ線電位)は
図5Gの波形となるという意味である。
つまり
図4Aの領域AR2内の画素に対応する期間のアノードドライバ出力信号において
図5GのようにオーバーシュートOSが発生している。このオーバーシュートOSにより、領域AR2の輝度が高くなってしまい、表示ムラとして視認されてしまう。
【0041】
このようなオーバーシュートOSは次の理由により発生する。
図6A、
図6Bは、データ線DLp、DLu、DLqと走査線SLy+2、及びそれらの交差点位置の画素Gp,Gu,Gqの部分を等価的に示している。図では有機EL画素をダイオード記号で示し、またデータ線DLの配線抵抗成分r1、走査線SLの配線抵抗成分r2、有機EL画素Gp,Gu,Gqの寄生容量CELもそれぞれ示している。
【0042】
上述のH2期間は、
図6Aの状態から
図6Bの状態に変化する。
H2期間の前半は、
図6Aに示すように、データ線DLp、DLu、DLqのいずれも定電流駆動され、図中破線矢印のように電流が流れる。
ここで4/15階調の画素と8/15階調の画素では、電流印加期間長が異なる(
図5C、
図5D参照)。このためH2期間の後半は、
図6Bのように、画素を8/15階調で駆動するデータ線DLqは電流が流れる(破線矢印)が、画素を4/15階調で駆動するデータ線DLp、DLuには電流は流れない(<OFF>で示している)。
【0043】
このようなH2期間での図中の点NDaの電位をみると
図6Dのようになる。つまり
図6Aの状態から
図6Bの状態に移行したときの電流値変化により、点NDaの電位は低下する。
図6Cに画素Gqを寄生容量CEL及び内部抵抗RELと共に示しているが、点NDaの電位低下により寄生容量CELからの放電が発生する(放電電流ic)。この放電により点NDbの電位は
図6Eのようになる。そして放電電流icが点NDbから有機EL素子に対して流れるが、これにより有機EL素子には、(アノード電流i)+(放電電流ic)が流れることになる。
このような現象により、アノードドライバ出力信号としての電位上昇(オーバーシュートOS)が発生し、一時的に画素Gqが本来の階調の輝度より高い輝度で発光してしまう。つまり
図4Aの領域AR2の各画素が、本来の背景階調より高い輝度となる。これによって表示ムラが発生すると考えられる。
【0044】
結局このような発光輝度変動は、同一ラインにおいて異なる階調で駆動される画素が存在する場合に、低階調の画素への駆動電流がオフとなった直後に、より高階調側の画素の駆動波形に影響が出て発生する。その影響度合いは、低階調で駆動する画素数に依存する。つまり或る画素が電流オン状態である期間の途中で電流オフとなる画素の数が多ければ、それだけ電流値変化も大きくなるためである。
【0045】
<3.補正処理>
以上のように発生する表示ムラを解消するために本実施の形態では、あらかじめ本来の階調より高輝度に発光してしまう画素について、補正されたデータ線駆動信号を与えるようにする。
図7,
図8で補正処理の手法を説明する。補正は1ラインの表示データ単位毎に行う。例えば
図7Aには1フレームの画像データを模式的に示している。
図2Aに示した表示データ記憶部32には、この1フレームの表示データが記憶される。1フレームの画像データは例えば256列×128行×4ビットのデータとなる。
この1フレームの表示データは1ライン単位で
図2Bのタイミングコントローラ44のバッファ52に取り込まれ、1ドット(1画素:4ビット)毎にセレクタ53に供給される。これにより上述したように、1ラインの各画素の階調値に応じた目標カウンタ値がセレクタ53から出力される。
【0046】
このような動作と並行して、補正テーブル生成回路57により補正テーブルが作成され、補正テーブル記憶部58に記憶される。
例えば
図7Aには、模式的に1フレーム内のラインLa,Lb,Lcを示しているが、各ラインの表示データ単位毎に補正テーブルが作成される。
【0047】
補正テーブルの作成には、補正テーブル生成回路57は、まず1ライン期間の表示データ単位内で、階調値毎の表示データ数の計数を行う。即ち補正テーブル生成回路57はバッファ52に取り込まれた1ライン分の256個の表示データのそれぞれの階調値を確認し、1ライン内に存在する各階調値の数をカウントする。
例えば
図7AのラインLaの256個の表示データについて、146個の画素の表示データが8/15階調であり、110個の画素の表示データが2/15階調であったとする。この場合、計数結果として
図7Bのような階調値の数のテーブルを作成する。
補正テーブル生成回路57は、例えばこの
図7Bの計数結果(階調値の数のテーブル)から、
図3Cのルックアップテーブルを参照し、階調値の数に応じた補正量を求める。例えば
図7Bの2/15階調のデータ数は110個であることから、
図3Cのルックアップテーブルを参照すると、補正量“−8”が得られる(−2μs相当)。また8/15階調のデータ数は146個であり、ルックアップテーブルから補正量“−12”が得られる(−3μs相当)。
【0048】
この補正量を用いて補正テーブルを生成する。
補正テーブルとは、例えば
図7Eや
図7Fのように、階調値とカウント補正値が対応づけられているテーブルである。カウント補正値とは目標カウンタ値に対して与える補正量を示す値である。
なお実際には補正テーブルは、階調値を示す4ビットバイナリデータとカウント補正値が対応づけられているテーブルとすればよい。図の階調値の欄は実際には4ビットバイナリデータとされる。また図ではカウント補正値に相当するパルス幅の補正値も示しているが、これは参考のために図示しているのであって、補正テーブルとして記憶する必要はない。
【0049】
補正テーブル生成回路57は、各階調についてルックアップテーブルから得た補正量をそのままその階調のカウント補正値にするのではなく、各階調値について求めた補正量が、より上位の階調値の補正量(カウント補正値)として反映されるようにする。上述のように、発光輝度変動は、同一ラインにおいて異なる階調で駆動される画素が存在する場合に、低階調の画素への駆動電流がオフとなった直後に、電流印加が継続されるより高階調側の画素の駆動波形に影響が出て発生するためである。
そこで
図7Bのような計数結果の場合、2/15階調についての補正量“−8”を、8/15階調のカウント補正値に反映させる。この場合、8/15階調より上の階調は存在しないため8/15階調についての補正量“−12”は使用しない。
結果として、
図7Eのような補正テーブルが作成される。8/15階調についてカウント補正値が“−8”とされたテーブルとなる。2/15階調については、それより下の階調の表示データが存在しないため補正は行われない(カウント補正値=0)
【0050】
図7AのラインLbについても同様である。例えば
図7Cの階調値の数のテーブルとして示すように各階調値のデータ数の計数結果を得たら、各階調値の補正量をルックアップテーブルから取得する。図示していないが、この場合、6/15階調の補正量“−12”が、より上位の12/15階調のカウント補正値とされた補正テーブルが生成される。
【0051】
図7AのラインLcは、4種類の階調が混在するラインの例としている。各階調値のデータ数の計数結果として
図7Dの階調値の数のテーブルが生成されたとする。ルックアップテーブルから1/15階調のデータ数が60であることから補正量“−4”(−1μs相当)が得られ、さらに8/15階調について補正量“−4”、10/15階調について補正量“−8”、13/15階調について補正量“0”がそれぞれ得られる。
これに基づいて生成される補正テーブルは
図7Fのように、8/15階調については1/15階調の補正量が反映されてカウント補正値は“−4”(−1μs相当)となる。10/15階調については1/15階調の補正量“−4”と8/15階調の補正量“−4”が反映(加算)されてカウント補正値は“−8”(−2μs相当)となる。13/15階調については1/15階調の補正量“−4”と8/15階調の補正量“−4”と10/15階調の補正量−8が反映されてカウント補正値は“−16”(−4μs相当)となる。1/15階調については、それより下の階調の表示データが存在しないため補正は行われない(カウント補正値=0)
【0052】
ライン毎にこのように補正テーブルが作成されて
図2Bの補正テーブル記憶部58に記憶される。そして次のように実際の補正が行われる。
セレクタ59には、セレクタ53と同様に表示データとしての4ビットが順次供給される。そしてセレクタ59は、補正テーブル記憶部58に保存された補正テーブルから、4ビットの階調値に対応するカウント補正値を読み出して加算器55に出力する。そして加算器55で補正演算として、目標カウンタ値とカウント補正値の加算が行われる。
【0053】
例えば今、ラインLcを対象として処理を行っており、
図7Fの補正テーブルが補正テーブル記憶部58に記憶されているとする。
この場合に、或る画素の表示データとして、バッファ52から例えば4ビットデータ「1000」(=8/15階調)がセレクタ53,59に供給されたときは、セレクタ53は階調テーブル(
図3A参照)から8/15階調の目標カウンタ値“80”を読み出し、セレクタ59は補正テーブル(
図7F参照)から
8/15階調のカウント補正値“−4”を読み出す。
そして加算器55で目標カウンタ値“80”とカウント補正値“−4”が加算され、目標カウンタ値は“76”に補正される。
【0054】
このように補正処理として目標カウンタ値がカウント補正値により補正されて、ラッチ回路60に送られる。目標カウンタ値は、比較回路62によってカウンタ61にカウント値と比較してデータ線駆動信号を生成するためのものであるため、目標カウンタ値の補正により結果的にデータ線駆動信号は、そのパルス幅が短縮されるように補正されることになる。
例えば
図7Fの補正テーブルが生成された場合、各階調値に対応するデータ線駆動信号のパルス幅は、
図8Aに示すように補正される。即ち8/15階調のパルス幅は20μsから19μsに、10/15階調のパルス幅は30μsから28μsに、13/15階調のパルス幅は60μsから56μsに、それぞれ補正される。
【0055】
図8B、
図8Cは、データ線駆動信号(アノードドライバ出力信号)としての定電流出力が補正により短縮される様子を示している。
例えば
図7A、
図7B、
図7Eに示したラインLaの場合、8/15階調のデータ線駆動信号のパルス幅が−2μs短縮される。これにより
図8Bのように8/15階調でデータ線を駆動する場合、アノードドライバ出力信号は、本来の8/15階調のパルス幅(
図3Aより20μs)よりも2μs短縮されることになる。
また
図7A、
図7Cに示したラインLbの場合、12/15階調のデータ線駆動信号のパルス幅が−3μs短縮される。これにより
図8Cのように12/15階調でデータ線を駆動する場合、アノードドライバ出力信号は、本来の12/15階調のパルス幅(
図3Aより50μs)よりも3μs短縮されることになる。
【0056】
以上のように補正が行われることで、上述の輝度上昇が発生する画素の輝度が抑えられる。つまりオーバーシュートOSは発生するものの、そのオーバーシュートOSに起因して上昇する輝度分が補正によって抑えられ、結局画面上での表示ムラが解消又は低減される。
【0057】
なお実施の形態の場合、元々目標カウンタ値が低く、パルス幅が短い場合には、補正を行わないようにしている。
図8Dに示すように、例えばデータ線駆動信号のパルス幅が所定閾値th1より短い場合は補正を行わず、所定閾値th1より長い場合に補正を行う。例えば所定閾値th1=10μsとすると、2/15階調、1/15階調、0/15階調の目標カウンタ値は補正対象外とされることになる。つまり元々電流印加期間が短い階調の場合、補正によってその期間長がより短くなってしまうことがないようにしている。
また補正によって目標カウンタ値が減算されることになるが、補正量の限度として、その階調より1つ下の階調の目標カウンタ値以下とならないようにしている。
【0058】
以上の補正動作を実現するための処理、特には補正値生成部44aの処理を
図9,
図10,
図11で説明する。これは主に補正テーブル生成回路57が実行する処理となる。
図9のステップS101として補正テーブル生成回路57はバッファ52から1ライン分の表示データを読み出す。
1ライン分の表示データがすべて“0000”であれば補正を行う必要はないため、補正テーブル生成回路57はステップS102からS105に進み、カウント補正値をすべて“0”とした補正テーブルを作成する。即ち補正テーブル記憶部58の補正テーブルにおいて、すべての階調値(4ビットバイナリデータ)に対応するカウント補正値として“0”を書き込んで、これを当該ラインについての補正テーブルとする。
【0059】
1ラインの表示データにおいて階調値が“0000”以外の表示データが存在する場合は、補正テーブル生成回路57はステップS102からS103に進み、各階調値の数をカウントする。即ち階調値毎のデータ数をカウントし、
図7B、
図7C、
図7Dで例示したような階調値の数のテーブルを作成する。
そしてステップS104でルックアップテーブルを参照し、上述したような補正テーブル作成を行う。
【0060】
ステップS104の具体的な処理例を
図10,
図11に示す。なお
図10,
図11の処理は、各階調値の数の計数結果に基づくカウント補正値の設定に加え、上述した所定閾値以下の階調値の補正を実行しないようにする処理、及び目標カウンタ値の補正結果が1つ下の階調の目標カウンタ値以下にならないようにする処理も付加されている。
【0061】
まず
図10のステップS200〜S206として、ステップS103で得られた階調値の数のテーブルに基づき、各階調値の数に応じた補正量をルックアップテーブル(
図3C参照)から取得する処理が行われる。
補正テーブル生成回路57はステップS200で変数xをゼロにリセットする。変数xは、0/15〜15/15階調について順次処理を行うための変数である。そしてステップS201〜S204の処理が、順次変数xで指定される階調値について行われる。
【0062】
ステップS201で補正テーブル生成回路57は、階調値の数のテーブルに保持された計数結果として、x/15階調のデータ数を確認する。
x/15階調のデータ数が“0”でなければ、ステップS202に進み、データ数に応じた補正量をルックアップテーブルから取得する。そしてステップS204で、この補正量を補正テーブル上のx/15階調に対応するカウント補正値として書き込む。
なお、この段階で補正テーブルに書き込むカウント補正値(ルックアップテーブルから得た補正量)は、最終的なカウント補正値ではない。このステップS204は、
図7B、
図7C、
図7Dの例において欄外に示した補正量の値を、補正テーブル用の記憶領域を用いて一時記憶するという意味である。補正量の記憶に補正テーブル用の記憶領域を用いることで記憶領域が有効利用される。
【0063】
ステップS201でデータ数が“0”と判断された場合はステップS203に進み、x/15階調についてのカウント補正値として“0”を代入する。データ数が“0”であればルックアップテーブルから補正量を取得する必要はないためである。そしてステップS204でそのカウント補正値(=0)を補正テーブル上のx/15階調に対応するカウント補正値として書き込む。
【0064】
ステップS205では変数x=15であるか、つまり全階調について、ルックアップテーブルから補正量を取得する処理を終えたか否かが判断される。変数x=15でなければステップS206で変数xがインクリメントされ、ステップS201からの処理が繰り返される。
全階調について補正量取得を終えたらステップS205からS207に進む。
【0065】
補正テーブル生成回路57はステップS207からS211では、補正テーブルにカウント補正値を書き込む処理を行う。
上述のようにこの時点で、補正テーブルには各階調のカウント補正値としてルックアップテーブルから取得した補正量(又は“0”)が記憶されているが、最終的なカウント補正値は、各階調値について求めた補正量が、より上位の階調値の補正量として反映された補正値である。つまり
図7E、
図7Fで述べたように、各階調のカウント補正値は、その階調値未満の階調値の補正量の積算値とされる。この積算値としてのカウント補正値を設定する処理がステップS207からS212で行われる。
【0066】
補正テーブル生成回路57はステップS207で変数x=15にセットする。そしてステップS208〜S210の処理が、順次変数xで指定される階調値について実行される。この場合、15/15階調側から0/15階調側に向かって順に処理が行われる。
【0067】
ステップS208で補正テーブル生成回路57は、階調値の数のテーブルに保持されたx/15階調のデータ数を確認する。
x/15階調のデータ数が“0”であれば、x/15階調の最終的なカウント補正値は“0”となる。そしてこの時点で既に補正テーブル上ではカウント補正値=0と書き込まれている(ステップS203→S204の処理参照)。そのため補正テーブル上でのカウント補正値の修正は不要であり、ステップS211に進む。
【0068】
ステップS208でx/15階調のデータ数が“0”でなければ、x/15階調は補正を行う可能性があるため、ステップS209に進み、その階調についてカウント補正値を設定する処理を行う。
具体的には補正テーブル生成回路57はステップS209で、x/15階調未満の階調についてのルックアップテーブルから取得した補正量を積算する。つまりその時点で、補正テーブル上でx/15階調未満の階調において仮にカウント補正値として記憶されている補正量(ステップS202→S204の処理参照)を積算する。
そしてステップS210で、積算値をx/15階調のカウント補正値として補正テーブルに書き込む。
なおこの時点で補正テーブル上でx/15階調について仮にカウント補正値として記憶されていた補正量の値(ルックアップテーブルから取得した補正量の値)は、上記の積算値の上書きにより消去されても問題はない。15/15階調側から順に処理が行われており、x/15階調未満の階調についての処理ではx/15階調の補正量は使用されないためである。
【0069】
ステップS211で補正テーブル生成回路57は、変数x=0であるか、つまり全階調について処理を終えたか否かを判断する。変数x=0でなければステップS212で変数xをデクリメントし、次の階調についてステップS208からの処理を行う。
つまり、最初に15/15階調について上記ステップS208〜S210の処理が行われた後は、14/15階調、13/15階調・・・と順次処理が行われる。なお0/15階調についての処理の際においては、0/15階調のデータ数が“0”ではなかったとしても、それより下位の階調は存在せず、積算値=0となるため、0/15階調のカウント補正値=0として補正テーブルに書き込まれる。つまり0/15階調についてはデータ数が“0”であっても“0”でなくてもカウント補正値=0となる。
0/15階調についての処理を終えた時点で、ステップS211で変数x=0となっている。この時点で全階調について補正テーブルにカウント補正値を設定し終えたことになるため、ステップS211から
図11のステップS213に進む。
【0070】
ステップS213〜S218では、補正テーブル生成回路57は上述した所定閾値以下の階調値の補正を実行しないようにする処理を行う。
補正テーブル生成回路57はステップS213で変数x=0にセットする。
ステップS214で補正テーブル生成回路57は、x/15階調が、
図8Dで説明した所定閾値th1以下のパルス幅に相当する階調であるか否かを判断する。つまり常に補正対象外の階調であるか否かを判断する。該当する場合は、当該階調に補正は行わないこととするため、ステップS215に進み、x/15階調についてのカウント補正値=0とする。そしてステップS216で、補正テーブル上のx/15階調に対応するカウント補正値を書き込む。この場合、x/15階調に対応するカウント補正値=0と、補正テーブルに書き込まれることになる。
【0071】
ステップS217では変数x=15であるか、つまり全階調について処理を終えたか否かが判断される。変数x=15でなければステップS218で変数xがインクリメントされ、ステップ
S214からの処理が繰り返される。
【0072】
このステップS213〜S218の処理により所定閾値th1以下の階調についてカウント補正値が強制的に“0”に更新される。
例えば所定閾値th1以下の階調に該当する階調が2/15階調、1/15階調、0/15階調であった場合、変数x=0,1,2の期間にステップS215,S216の処理が行われ、補正テーブル上でこれらの階調についてのカウント補正値=0と書き込まれる。カウント補正値=0とは、即ちその階調について補正が行われないことを意味する。
【0073】
ステップS217で変数x=15となって全階調について以上の処理を終えたらステップS219に進む。
ステップS219〜S224では、補正テーブル生成回路57は目標カウンタ値の補正結果が1つ下の階調の目標カウンタ値以下にならないようにする処理を行う。即ち目標カウンタ値が、1つ下位の階調の目標カウンタ値以下とならないように補正量(カウント補正値)を制限する処理(階調補償)である。
【0074】
補正テーブル生成回路57はステップS219で変数x=0にセットする。
ステップS220で補正テーブル生成回路57は、x/15階調の目標カウンタ値をカウント補正値で補正した値が(x−1)/15階調の目標カウンタ値以下となる否かを確認する。目標カウンタ値については、補正テーブル生成回路57が階調テーブルを参照すればよい。そして(x−1)/15階調の目標カウンタ値以下となる場合は、ステップS221でx/15階調のカウント補正値を+1加算する。なおここでは補正量及びカウント補正値は負値として説明しているため、+1加算とは、カウント補正値で表される補正量を1カウント分少なくするという意味である。
そしてステップS220に戻って補正量を少なくしたカウント補正値の状態で、x/15階調の目標カウンタ値をカウント補正値で補正した値が(x−1)/15階調の目標カウンタ値以下となる否かを確認する。
【0075】
つまりこのステップS220,S221では、補正後の目標カウンタ値が1つ下位の階調の目標カウンタ値よりも少なくなる場合に、補正後の目標カウンタ値が1つ下位の階調の目標カウンタ値より1カウント分大きくなるように、カウント補正値を調整する(補正量を制限する)処理となる。
【0076】
ステップS221を介したカウント補正値の調整を完了した場合は、補正テーブル生成回路57はステップS222に進み、補正テーブル上のx/15階調に対応するカウント補正値を修正する。
なおステップS221に進まなかった場合、つまりx/15階調のカウント補正値について調整処理が不要であった場合は、ステップS222では特に補正テーブル上でカウント補正値を修正する必要はない。
【0077】
ステップS223では変数x=15であるか、つまり全階調について目標カウンタ値の調整処理を終えたか否かが判断される。変数x=15でなければステップS224で変数xがインクリメントされ、ステップS220からの処理が繰り返される。
変数x=15であれば処理を終える。
【0078】
以上の
図10,
図11の処理が、
図9のステップS104で実行される。
図9の処理の終了時点で、現在対象のラインについての補正テーブルが補正テーブル記憶部58に保持された状態となる。
その後は、上述のようにセレクタ53,59によって1画素毎に目標カウンタ値とカウント補正値が読み出され、加算器55で目標カウンタ値の補正が行われる。
【0079】
<4.まとめ及び変形例>
以上のとおり実施の形態では、表示部10のデータ線DLを対応する画素の階調値に応じて駆動するコントローラIC(表示駆動装置)は、補正値生成部44aと駆動信号生成部44bを有する。補正値生成部44aは、走査線SLの1ライン期間に相当する表示データ単位内で、階調値毎の表示データ数を計数し、計数結果に応じて表示データの補正値(カウント補正値)を生成し、補正テーブルを生成する。
駆動信号生成部44bは、補正テーブルに記憶されたカウント補正値を用いた目標カウンタ値の補正処理を行い、補正処理後の表示データ(加算器55を介した目標カウンタ値)に基づいて各データ線DLを駆動するためのデータ線駆動信号を生成している。
このような補正を行うことで、表示上での輝度ムラを解消又は低減でき、表示品質を向上させることができる。
特に、上述のように、1ライン上の他の発光画素の数や発光階調の影響により、ある画素に与えられる信号がオーバーシュートする場合があるところ、実施の形態では、補正すべき表示データ及び補正量を、1ライン期間に相当する表示データ単位内での階調値毎の表示データ数に応じて決めていることで、輝度ムラを発生させる画素についてのデータ線駆動信号の補正を適切に行うことができる。つまりアノードドライバ出力信号がオーバーシュートしてしまう画素部分について輝度を低下させる補正を行うことができ、輝度ムラを有効に解消又は低減できる。換言すればオーバーシュートが生じる場合であっても、それに応じてアノードドライバ出力信号を補正して元々の階調値の本来の輝度での表示を実現できる。
【0080】
また補正値生成部44aは、階調値毎の表示データ数に応じた補正量を求め、各階調値について求めた補正量が、より上位の階調値の補正量として反映されたカウント補正値を生成している。オーバーシュートによる視認輝度への影響は、同一ライン上の下位の階調の表示データ数に応じて、より上位の階調の表示領域に生ずるため、このように階調値毎の表示データ数に応じた補正量が、より上位の階調値の補正量(カウント補正値)として反映されるようにすることで、適切な補正動作が実現される。
【0081】
また補正値生成部44aは、同一階調値の表示データ数と補正量の対応関係を示したルックアップテーブルを用いて、階調値毎の表示データ数の計数結果に応じた補正値を生成している。ルックアップテーブルに同一階調値の表示データ数と補正量を記憶しておくことで、同一階調値の表示データ数に応じた補正量をルックアップテーブルを参照して得られるため、補正量を決定するための演算処理を著しく容易化でき、高速処理も可能である。従ってライン単位で順次補正テーブルを生成していく処理として好適である。
補正テーブル生成処理を簡単な回路で高速に実現できることは、線順次走査の駆動においてラインスキャンに合わせて1ライン毎に処理が可能となることも意味する。これによって例えばフレーム単位などの大きなメモリ領域を用いてあらかじめ各ラインの補正テーブルを生成しておくなどの処理も不要となり、回路規模の点でも有利である。
【0082】
また実施の形態は、データ線DLには、データ線駆動信号として、階調値に応じた期間長の定電流信号を与える構成とされている。この場合に、ルックアップテーブルには、補正量として、期間長を短縮させる値が記憶されている。オーバーシュートにより生ずる輝度の上昇に対する補正であるため、定電流駆動の期間長を短縮するための補正量を記憶させ、これを用いて輝度を低下させる。これによりルックアップテーブルを用いてのカウント補正値生成が容易となるとともに、期間長に応じた値とすることで、適切な量の補正(期間長の短縮)を与えることが容易となる。
【0083】
またルックアップテーブルの表示データ数と補正量の両方もしくは一方はMPU2からのコマンドにより書き換え可能としている。
適切な同一階調値のデータ数と補正量の関係は、表示部10の仕様毎に変化することが想定される。そこでルックアップテーブルの値を書き換え可能としておくことで、コントローラICは各種表示部10に対応して適切な補正を行うことができるチップとすることができ、部品の汎用化に好適である。
【0084】
また、
図8D及び
図11のステップS213〜S218で説明したように、補正値生成部44aは、データ線駆動信号の期間長が所定以下となる階調値の表示データについては補正処理を行わないようにしている。つまりカウント補正値=0として補正が行われないようにしている。
元々低階調の表示データについて補正を行うと低階調領域(例えば黒表示部分)が暗くなりすぎる。そこで補正を行わないようにし、低階調での表示が暗くなりすぎないようにしている。
【0085】
また補正処理において、補正後の表示データ(目標カウンタ値)が1つ下の階調値に相当する値以下にはならないように補正量を制限している(
図11のステップS219〜S224)。このため補正による階調差の消滅は発生せず、画面上での階調差が維持できる。
【0086】
以上、実施の形態について説明したが、本発明の表示装置や表示駆動装置は実施の形態に限定されず多様な変形例が考えられる。
例えば
図9、
図10、
図11の処理を行う補正テーブル生成回路57は、演算処理装置(CPU等)で実現できるがハードウエア構成としてもよい。
ルックアップテーブル記憶部56,階調テーブル記憶部54は、例えば不揮発性メモリ(フラッシュメモリ)領域やD−RAM、S−RAM等の揮発性メモリ領域を用いてもよいが、コントローラICを特定の表示パネルに専用の部品とする場合、ルックアップテーブル記憶部56,階調テーブル記憶部54はROM領域を用いてもよい。
補正テーブルの生成にはルックアップテーブルを用いたが、補正量は各階調値のデータ数を用いた所定の関数演算で求めるようにして、ルックアップテーブルを使用しない手法も考えられる。
【0087】
また
図9、
図10、
図11の処理は一例である。
例えば
図10のステップS207〜S212の処理を行わないようにし、ルックアップテーブルから取得した補正量がそのまま階調値についての補正量(カウント補正値)として用いられるようにする例も考えられる。
また
図11のステップS213〜S218の所定閾値以下の階調値を補正対象外とする処理を行わない例も考えられる。
また
図11のステップS219〜S224の階調補償の処理を行わない例も考えられる。
【0088】
また本発明はOLEDを用いる表示装置だけでなく、他の種の表示装置でも適用可能である。特に電流駆動による自発光素子を用いた表示装置に好適である。