(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-08-05
(45)【発行日】2024-08-14
(54)【発明の名称】ディスプレイの動作特性を改善するためのシステムおよび方法
(51)【国際特許分類】
G09G 3/36 20060101AFI20240806BHJP
G09G 3/20 20060101ALI20240806BHJP
G02F 1/13 20060101ALN20240806BHJP
G02F 1/133 20060101ALN20240806BHJP
【FI】
G09G3/36
G09G3/20 632Z
G09G3/20 642A
G09G3/20 633H
G09G3/20 633P
G09G3/20 633U
G09G3/20 631W
G09G3/20 624B
G09G3/20 611C
G09G3/20 641E
G09G3/20 641A
G02F1/13 505
G02F1/133 550
(21)【出願番号】P 2022187458
(22)【出願日】2022-11-24
(62)【分割の表示】P 2020565472の分割
【原出願日】2019-05-24
【審査請求日】2022-12-19
(32)【優先日】2018-05-24
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】523185970
【氏名又は名称】スナップ インコーポレイテッド
(74)【代理人】
【識別番号】110000176
【氏名又は名称】弁理士法人一色国際特許事務所
(72)【発明者】
【氏名】ハート,ステファン,ジョン
(72)【発明者】
【氏名】ケント,ロック,エドワード
(72)【発明者】
【氏名】ゲッツ,ハワード,ブイ.
(72)【発明者】
【氏名】サンフォード,ジェイムズ,エル.
(72)【発明者】
【氏名】メレナ,ニコラス,ケイ.
【審査官】中村 直行
(56)【参考文献】
【文献】特開2011-064752(JP,A)
【文献】特開2011-059610(JP,A)
【文献】特表平04-507149(JP,A)
【文献】国際公開第01/086619(WO,A1)
【文献】米国特許出願公開第2005/0110796(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G09G 3/00 - 5/42
G02F 1/13
G02F 1/133
(57)【特許請求の範囲】
【請求項1】
ディスプレイ(220)と、ディスプレイドライバ(210)と、を備えるディスプレイシステム(200)であって、
前記ディスプレイドライバは、ビットプレーンシーケンステーブル(600)に従ってビットプレーンを前記ディスプレイに送るように構成され、
前記ビットプレーンシーケンステーブルの各列はビットプレーンを含み、前記ビットプレーンシーケンステーブルの各行は、フレーム又はサブフレーム内の複数の位相値のうちの1つに関連するバイナリ値のシーケンスを含み、
各シーケンスは、前記複数の位相値のそれぞれの1つに関連するいくつかの1値およびいくつかの0値を含み、
1値の数が0より大きく、0値の数が0より大きい各シーケンスについて、1値の数は、1つ以上の1値の1つ以上のグループが1つ以上の0値の1つ以上のグループから離間するように前記シーケンスの長さ全体に分散され、
前記1つ以上の1値の1つ以上のグループのそれぞれは、同じ数の1値を有し、前記1つ以上の0値の1つ以上のグループのそれぞれは、同じ数の0値を有し、
ディスプレイドライバは、ディスプレイシステムの位相リップルを最小化するために、1つまたは複数のビットプレーンの画素電極電源電圧Vpixおよび/またはカバーガラス透明電極電圧Vcomを調整するように構成される、
ディスプレイシステム。
【請求項2】
フレーム内の最初および/または最後のビットプレーンのVpixおよび/またはVcomが調整される請求項1に記載のディスプレイシステム。
【請求項3】
所望の位相値の前記1値を、1つ以上の前記1値の1つ以上の前記グループがフレーム又はサブフレームの持続期間にわたって等間隔であるように、前記0値に散在させることを特徴とする請求項1または2に記載のディスプレイシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本技術分野は、概して、シリコンディスプレイ上の液晶のシステムおよび方法に関連する。
【背景技術】
【0002】
液晶オンシリコン(LCOS)ディスプレイには、通常2つのタイプがある。各タイプは、主に各ディスプレイピクセルの下の回路のタイプ(アナログとデジタル)によって特徴付けられる。
【0003】
アナログディスプレイでは、各ピクセルの下の回路は主にストレージコンデンサである。動作中、アナログ電圧源が、各ピクセルのストレージコンデンサにアナログ電圧を蓄積するように、各ピクセルの蓄積コンデンサに順次接続される。これらの蓄積された電圧は、対応するピクセルのピクセル電極にも接続される。
【0004】
これらのピクセル電極の可変電圧は、これらの各ピクセルの真上の液晶(LC)の応答を決定し、これにより最終的に(振幅表示の場合)そのピクセルから反射された光の偏光変化の量、または(位相表示の場合)そのピクセルから反射された光に適用される位相シフトの量を決定する。この可変電圧はアナログ量であるため、LCでの偏光または位相シフトの結果として生じる変調もアナログ量として変化する。
【0005】
グレースケール画像または可変位相シフトの再生は、このような表示にとっては複雑ではない。初期に開発されたLCOSディスプレイは、基本的にすべてアナログディスプレイであった。しかしながら、ピクセルサイズが小さくなるにつれて、アナログディスプレイの構築はますます困難になる。これは、非常に小さいピクセルは非常に小さいピクセルコンデンサであることを意味するからである。小さなコンデンサは、リーク電流が時間の経過とともに電圧を変化させるため、表示動作を成功させるのに十分な長さの正確な電荷を保持することができない。
【0006】
デジタルLCOSディスプレイはより新しい開発である。このディスプレイは、各ピクセルの内部にデジタルメモリを組み込んでおり、「1」または「0」の状態を格納することができる。ピクセル電極は、完全に「オン」または完全に「オフ」のLC状態に対応する2つの取り得る電圧のいずれかに設定することができる。これらの「1」または「0」状態は、ピクセルに非常に迅速に書き込むことができ、リークに起因して電圧が変化することはない。
【0007】
デジタルLCOSディスプレイは通常、各ピクセルに高速の1と0の列を書き込み、これにより、LCがこれらの完全オン状態と完全オフ状態を交互に切り替えることでグレースケールを実現する。これらの変化は、目が反応するよりもはるかに速く起こる。したがって、目はこれらの「オフ」および「オン」条件のデューティサイクルを平均化して同等のグレースケールにする。
【0008】
使用中、デジタルLCOSディスプレイは通常、デューティサイクル変調(DCM)エンコーディングまたはパルス幅変調(PWM)エンコーディングのいずれかのバリアントを使用して、必要な同等のグレースケール値を達成するために、各フレーム中に1と0の「ビットプレーン」で何度も書き込まれる。
【0009】
デジタルピクセルデザインは、非常に小さくすることができ、リークの問題に悩まされない。ただし、そのようなデザインは、より多くのトランジスタを備えたより複雑なピクセル回路を必要とする傾向にある。また、そのようなデザインは、フレームごとに多数のビットプレーンを書き込むには、より高い外部データレートを必要とする傾向にある。
【0010】
位相モードディスプレイに特に関連するのは、ピクセルでの電圧誤差が、目では平均化することができない画像の位置シフトに対応しているため、人間の目による平均化は機能しない。そのため、位相モードディスプレイにデジタルLCOSディスプレイを使用することはより困難である。
【0011】
位相モードディスプレイは、LCが所望の位相シフトに対応する完全オフと完全オンとの間の中間状態にとどまるのに十分な速度で1ビットプレーンと0ビットプレーンのシーケンスを送ることができる。ここで、LCには、オフ状態またはオン状態のいずれかを完全に達成する時間はない。
【0012】
ただし、このアプローチは、所望の一定の位相シフトの近似値である。
また、実際には、システム(特にLC自体)のさまざまな非線形性と最小電圧持続時間により、この急速に変化する一連のビットプレーンに対するLCの応答に「位相リップル」が発生する。位相リップル110を有する典型的な波形100のシミュレートされた例を
図1に示す。
【0013】
ここで、波形100が所望の位相シフト値120に近づくには、フレームの最初に約2ミリ秒かかる。次に、波形100の位相レベルは、名目上、所望の位相シフト値120の周りで前後に交互に変化する(位相リップル110)。
【0014】
さらに、位相モードデジタルLCOSディスプレイは通常、固定のVpix相当の電源で動作する。すべてのビットプレーンの電圧が同じとなる必要があることを示唆する前提が存在し、デジタルLCOSディスプレイはこの仮定を使用して設計されている。
【発明の概要】
【0015】
本開示のさまざまな実施形態は、位相リップル、位相スイッチングノイズ、および位相不安定性を低減し、他の動作特性を改善するディスプレイのための駆動方式を提供する。
【0016】
本開示の実施形態は、各グレー/位相レベルに対してオン/オフビットの最適な数および分布を有する駆動方式を利用する。フレームまたはサブフレーム中に所望のグレー値または位相値を達成するために使用されるバイナリ値のシーケンスは、そのフレームまたはサブフレーム内のそのグレー値または位相値のオン値の望ましい数を、オン期間がフレームまたはサブフレームの持続期間にわたって実質的に等間隔で発生するように、オフ値を有するそのフレームまたはサブフレームにおいて散在させることによって最適化される。
【0017】
そのため、本明細書で説明するシステムおよび方法は、「1」および「0」のビットプレーンの最適化されたシーケンスを決定し、このシーケンスは、位相モードビットプレーン駆動デジタルLCOSディスプレイに送られると、最小位相リップルを有するグレー値または位相シフト値となる。例えば、6ビットの位相モードディスプレイの場合、システムおよび方法は、6ビットの位相分解能によって定義された64個の取り得る位相シフト値のそれぞれに適用される最適化されたシーケンスを決定する。
【0018】
本開示の実施形態は、最適化されたビットシーケンスの周期的循環を利用して、1/0および0/1遷移グリッチを最小化する。
【0019】
本開示の実施形態は、ビットプレーンごとに異なる電圧を利用する。
【0020】
特に、本明細書に記載のシステムおよび方法は、個々のビットプレーン電圧を微調整し、それによってディスプレイの性能を最適化して位相リップルを最小化することを可能にし、これにより位相ディスプレイのノイズを低減する。ビットプレーン電圧の微調整は、ピクセル電極電源(Vpix)を変更するか、カバーガラスの透明電極電圧(Vcom)を変更することによって行われる。Vcom電圧を変化させると、対処する必要のある問題が発生し得る。そのため、微調整は、Vpixの調整によってのみ行い得る。ただし、Vpix、Vcom、またはその両方を調整することで、同じ目的を達成することができる。
【0021】
これらすべての場合において、これらの調整は駆動シーケンスを変更することによって行われる。
【0022】
本開示の実施形態は、正および負のVcom極性のための異なる電圧、非常に高いVcomスイッチング周波数、実際のVcom結合フリップ(conjugation flip)とのLCへの同期ラッチリリース、および循環を含むグレー/位相レベルごとにフレーム間Vcom結合およびフレーム整合オン/オフビットと組み合わせられた奇数のオン/オフビットを使用することによるDCバランシング、を利用し得る。
【0023】
前述は、さまざまな実施形態のいくつかの態様および特徴を大まかに概説しており、これらは、本開示のさまざまな潜在的な用途の単なる例示であると解釈されるべきである。他の有益な結果は、開示された情報を異なる方法で適用することによって、または開示された実施形態のさまざまな態様を組み合わせることによって得ることができる。したがって、他の態様およびより包括的な理解は、請求の範囲によって定義される範囲に加えて、添付の図面と併せて取り上げられる例示的な実施形態の詳細な説明を参照することによって得られ得る。
【図面の簡単な説明】
【0024】
【
図1】従来技術の位相リップルを含む波形の図解である。
【
図2】本発明の一実施形態による、ディスプレイドライバおよびディスプレイを含むディスプレイシステムの概略図である。
【
図3】本発明にかかる、
図2のディスプレイドライバの例示的なドライバプロセスを示すフローチャートである。
【
図4】本発明にかかる、
図2のディスプレイの例示的なディスプレイプロセスを示すフローチャートである。
【
図5】本発明にかかる、ビットプレーンシーケンステーブルを生成するための例示的なビットプレーン生成プロセスを示すフローチャートである。
【
図6】本発明にかかる、
図5のビットプレーンシーケンスプロセスに従って生成された例示的なビットプレーンシーケンステーブルのグラフィック表示である。
【
図7】本発明にかかる、例示的なビットプレーン電圧調整方法を示すフローチャートである。
【
図8】例示的なベースラインビットプレーンシーケンステーブルのグラフィック表示である。
【
図9】例示的な修正されたビットプレーンシーケンステーブルのグラフィック表示である。
【
図10】例示的な修正されたビットプレーンシーケンステーブルのグラフィック表示である。
【
図11】例示的な振幅モードのグラフィック表示である。
【
図12】例示的な位相モードのグラフィック表示である。
【発明を実施するための形態】
【0025】
以下の詳細な説明では、その一部を形成し、実施され得る実施形態を例示として示している添付の図面を参照する。範囲から逸脱することなく、他の実施形態を利用することができ、構造的または論理的な変更を行うことができることを理解されたい。したがって、以下の詳細な説明は、限定的な意味で解釈されるべきではなく、実施形態の範囲は、添付の請求の範囲およびそれらの均等物によって定義される。
【0026】
さまざまな動作が、実施形態を理解するのに役立ち得る方法で、順番に複数の個別の動作として説明され得る。ただし、説明の順序は、これらの動作が順序に依存していることを意味すると解釈されるべきではない。
【0027】
「結合された」および「接続された」という用語は、それらの派生語とともに使用されることがある。これらの用語は、相互の同義語として意図されたものではないことを理解されたい。
むしろ、特定の実施形態では、「接続された」は、2つ以上の要素が互いに直接物理的に接触していることを示すために使用され得る。「結合された」とは、2つ以上の要素が直接物理的に接触していることを意味する場合がある。ただし、「結合された」とは、2つ以上の要素が互いに直接接触していないが、それでも互いに協働または相互作用していることを意味する場合もある。
【0028】
説明には、「実施形態(embodiment)」または「複数の実施形態(embodiments)」という用語を使用することがあり、これらはそれぞれ、同じまたは異なる実施形態のうちの1つ以上を指し得る。さらに、実施形態に関して使用される「備える(comprising)」、「備える(comprises)」、「含む(including)」、「有する(having)」などの用語は同義であり、一般に「オープン」用語として意図されている(例えば、「含む(including)」は、「~を含むが、これに限定されない」と解釈されるべきであり、「有する(having)」という用語は、「少なくとも~を有する」と解釈されるべきであり、「含む(includes)」という用語は、「~を含むが、これに限定されない」と解釈されるべきである等)。
【0029】
本明細書における任意の複数形および/または単数形の用語の使用に関して、当業者であれば、文脈および/または用途に適切であるように、複数形から単数形へ、および/または単数形から複数形へと変換することができる。さまざまな単数形/複数形の順列が、明確にするために、本明細書で明示的に示される場合がある。
【0030】
ここで、図面を参照してさまざまな実施形態を説明し、同様の参照番号を使用して、全体を通して同様の要素を参照する。以下の説明では、説明の目的で、1つ以上の実施形態の完全な理解を促進するために、多数の特定の詳細が示されている。しかしながら、いくつかまたはすべての事例において、以下に説明される特定の設計の詳細を採用することなく、以下に説明される任意の実施形態を実施できることが明らかとなり得る。
【0031】
本明細書に開示される方法、プロセス、または技術の実施形態は、ハードウェア、ソフトウェア、ファームウェア、またはそのような実装アプローチの組み合わせで実装され得る。本開示の実施形態は、少なくとも1つのプロセッサ、ストレージシステム(揮発性および不揮発性メモリおよび/またはストレージ要素を含む)、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスを備えるプログラマブルシステム上で実行されるコンピュータプログラムまたはプログラムコードとして実装され得る。
【0032】
本明細書の任意の実施形態で使用される場合、「ロジック」という用語は、前述の動作のいずれかを実行するように構成されたアプリケーション、ソフトウェア、ファームウェア、および/または回路を指し得る。ソフトウェアは、ソフトウェアパッケージ、コード、命令、命令セット、および/または非一時的なコンピュータ可読記憶媒体に記録されたデータとして具体化され得る。ファームウェアは、メモリデバイスにハードコード(例えば、不揮発性)されたコード、命令、命令セット、および/またはデータとして具体化され得る。上述のように、ソフトウェアモジュールは、プロセッサによって実行されるロジックを含み得る。
【0033】
「ロジック」という用語はまた、プロセッサの動作に影響を与えるために適用され得る命令信号および/またはデータの形態を有する任意の情報を指し得る。ソフトウェアはそのようなロジックの一例である。プロセッサの例としては、コンピュータプロセッサ(処理ユニット)、マイクロプロセッサ、デジタルシグナルプロセッサ、コントローラ、およびマイクロコントローラなどがある。ロジックは、例えば、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、消去可能/電気的消去可能プログラマブル読み取り専用メモリ(EPROM/EEPROM)、フラッシュメモリ等を含むメモリまたはストレージなどの非一時的なコンピュータ可読媒体に格納されたコンピュータ実行可能命令から形成され得る。ロジックはまた、デジタルおよび/またはアナログハードウェア回路、例えば、論理AND、OR、XOR、NAND、NOR、および他の論理演算を含むハードウェア回路を含み得る。ロジックは、ソフトウェアとハードウェアの組み合わせから形成され得る。ネットワーク上では、ロジックは、サーバまたはサーバの複合体でプログラムされ得る。特定のロジックユニットは、ネットワーク上の単一の論理的な位置に限定されない。
【0034】
本明細書の任意の実施形態で使用される「回路」は、例えば、単独でまたは任意の組み合わせで、ハードワイヤード回路、プログラマブル回路、ステートマシン回路、ロジック、および/またはプログラマブル回路によって実行される命令を格納するファームウェアを含み得る。回路は、集積回路チップ、システムオンチップ(SoC)などのような集積回路として具体化され得る。いくつかの実施形態では、回路は、少なくとも部分的に、本明細書に記載の機能に対応するコードおよび/または命令セット(例えば、ソフトウェア、ファームウェア等)を実行して、したがって、汎用プロセッサを特定目的の処理環境に変換して本明細書に記載の1つ以上の動作を実行する少なくとも1つのプロセッサによって形成され得る。
【0035】
プロセッサには、Intel Corporation製のCeleron、Core、またはPentiumプロセッサ、Sun Microsystems製のSPARCプロセッサ、AMD Corporation製のAthlon、Sempron、Phenom、またはOpteronプロセッサ、その他の市販のプロセッサ、および/または利用可能な、または利用可能になる他のプロセッサなどの市販のプロセッサが含まれ得る。
【0036】
プロセッサのいくつかの実施形態は、マルチコアプロセッサと呼ばれるものを含み得、および/またはシングルコアもしくはマルチコア構成で並列処理技術を使用することが可能になり得る。例えば、マルチコアアーキテクチャは通常、2つ以上のプロセッサ「実行コア」で構成される。この例では、各実行コアは、独立したプロセッサマットが複数のスレッドの並列実行を可能にするように実行し得る。さらに、関連分野の当業者は、プロセッサが、一般に32ビットまたは64ビットアーキテクチャと呼ばれるもの、または現在知られている、または将来開発される可能性がある他のアーキテクチャ構成で構成され得ることを理解するであろう。プロセッサは通常、オペレーティングシステム、例えば、Microsoft CorporationのWindowsタイプのオペレーティングシステム、Apple Computer Corp.のMac OS Xオペレーティングシステム、多くのベンダーから入手可能なUnixもしくはLinux(登録商標)タイプのオペレーティングシステム、またはオープンソースと呼ばれるもの、別のもしくは将来のオペレーティングシステム、またはそれらのいくつかの組み合わせを実行する。
【0037】
オペレーティングシステムは、よく知られた方法でファームウェアおよびハードウェアとインターフェースし、プロセッサがさまざまなプログラミング言語で記述され得るさまざまなコンピュータプログラムの機能を調整および実行するのを容易にする。オペレーティングシステムは、通常はプロセッサと連携して、コンピュータの他のコンポーネントの機能を調整および実行する。オペレーティングシステムはまた、スケジューリング、入出力制御、ファイルとデータの管理、メモリ管理、通信制御と関連サービスを、すべて既知の手法に従って提供する。
【0038】
システムメモリは、所望の情報を格納するために使用することができ、かつコンピュータによってアクセスすることができる、さまざまな既知または将来のメモリストレージデバイスのいずれかを含み得る。コンピュータ可読記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなどの情報を格納するための任意の方法または技術で実装された非一時的な揮発性および不揮発性、取り外し可能および取り外し不可能な媒体を含み得る。例としては、一般的に利用可能なランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、電子的消去可能なプログラマブル読み取り専用メモリ(EEPROM)、デジタル多用途ディスク(DVD)、常駐ハードディスクやテープなどの磁気媒体、読み取りおよび書き込みコンパクトディスクなどの光学媒体、および/または他のメモリストレージデバイスが挙げられる。
【0039】
メモリストレージデバイスとしては、コンパクトディスク駆動、テープ駆動、取り外し可能なハードディスク駆動、USBもしくはフラッシュ駆動、またはディスケット駆動を含む、さまざまな既知または将来のデバイスを挙げ得る。このようなタイプのメモリストレージデバイスは、通常、それぞれ、コンパクトディスク、磁気テープ、取り外し可能なハードディスク、USBもしくはフラッシュ駆動、またはフロッピーディスクなどのプログラムストレージメディアに対して読み取りおよび/または書き込むものである。これらのプログラム記憶媒体のいずれか、または現在使用されている、または後に開発される可能性のある他の媒体は、コンピュータプログラム製品と見なし得る。
【0040】
理解されるように、これらのプログラム記憶媒体は、通常、コンピュータソフトウェアプログラムおよび/またはデータを記憶する。コンピュータ制御ロジックとも呼ばれるコンピュータソフトウェアプログラムは、通常、システムメモリおよび/またはメモリストレージデバイスと組み合わせて使用されるプログラムストレージデバイスに格納される。いくつかの実施形態では、制御ロジック(プログラムコードを含むコンピュータソフトウェアプログラム)が格納されたコンピュータ使用可能媒体を含むコンピュータプログラム製品が説明される。制御ロジックは、プロセッサによって実行されると、プロセッサに本明細書に記載の機能を実行させる。他の実施形態では、いくつかの機能は、例えば、ハードウェアステートマシンを使用するハードウェアで主に実装される。本明細書に記載の機能を実行するためのハードウェアステートマシンの実装は、関連技術の当業者にとって明らかであろう。入出力コントローラは、人間であろうと機械であろうと、ローカルであろうとリモートであろうと、ユーザからの情報を受け入れて処理するためのさまざまな既知のデバイスのいずれかを含むことができる。
【0041】
そのようなデバイスには、例えば、モデムカード、ワイヤレスカード、ネットワークインターフェースカード、サウンドカード、またはさまざまな既知の入力デバイスのいずれかのための他のタイプのコントローラが含まれる。出力コントローラは、人間であろうと機械であろうと、ローカルであろうとリモートであろうと、ユーザに情報を提示するためのさまざまな既知のディスプレイデバイスのいずれかのコントローラを含むことができる。
【0042】
本明細書で説明する実施形態では、コンピュータの機能要素は、システムバスを介して互いに通信する。コンピュータのいくつかの実施形態は、ネットワークまたは他のタイプのリモート通信を使用して、いくつかの機能要素と通信し得る。関連技術の当業者に明らかなように、機器制御および/またはデータ処理アプリケーションは、ソフトウェアに実装されている場合、システムメモリおよび/またはメモリストレージデバイスにロードされ、そこから実行され得る。
【0043】
機器制御および/またはデータ処理アプリケーションの全部または一部はまた、メモリストレージデバイスの読み取り専用メモリまたは同様のデバイスに存在し得、そのようなデバイスは、機器制御および/またはデータ処理アプリケーションが最初に入出力コントローラを介してロードされることを必要としない。機器制御および/またはデータ処理アプリケーション、またはその一部が、プロセッサによって、既知の方法で、実行に有利となるようにシステムメモリまたはキャッシュメモリ、あるいはその両方にロードされ得ることは、関連技術の当業者によって理解されよう。
【0044】
また、コンピュータは、システムメモリに格納された1つ以上のライブラリファイル、実験データファイル、およびインターネットクライアントを含み得る。例えば、実験データは、検出された信号値、または合成による1つ以上のSequencing By Synthesis(SBS)実験またはプロセスに関連する他の値など、1つ以上の実験またはアッセイに関連するデータを含み得る。さらに、インターネットクライアントは、ネットワークを使用して別のコンピュータ上のリモートサービスにアクセスすることを可能にするアプリケーションを含み得、例えば、一般に「ウェブブラウザ」と称されるものを含み得る。一般的に使用されているいくつかのWebブラウザとして、Microsoft Corporationから入手可能なMicrosoft Internet Explorer、Mozilla CorporationのMozilla Firefox、Apple Computer Corp.のSafari、Google CorporationのGoogle Chrome、または技術において現在知られている、または将来開発され得る他のタイプのWebブラウザが挙げられる。
【0045】
また、同じまたは他の実施形態では、インターネットクライアントは、生物学的アプリケーションのためのデータ処理アプリケーションなど、ネットワークを介して遠隔情報にアクセスすることを可能にする特殊なソフトウェアアプリケーションを含み得るか、またはその要素とすることができる。
【0046】
コンピュータまたはプロセッサがネットワークの一部であってもよい。ネットワークは、当業者によく知られている多くのさまざまなタイプのネットワークのうちの1つ以上を含み得る。例えば、ネットワークは、通信するために一般にTCP/IPプロトコルスイートと称されるものを使用し得るローカルまたはワイドエリアネットワークを含み得る。ネットワークは、一般にインターネットと称される相互接続されたコンピュータネットワークのワールドワイドシステムを備えるネットワークを含み得るか、またはさまざまなイントラネットアーキテクチャを含み得る。
【0047】
関連技術の当業者はまた、ネットワーク環境の一部のユーザが、一般に「ファイアウォール」と称されるもの(パケット、フィルタ、または境界防御デバイスとも称される)を使用してハードウェアおよび/またはソフトウェアシステムとの間の情報トラフィックを制御することを好む場合があることを理解するであろう。例えば、ファイアウォールは、ハードウェアまたはソフトウェア要素、あるいはそれらの組み合わせで構成され得、通常、例えばネットワーク管理者等などのユーザによって設定されたセキュリティポリシーを適用するように設計される。
【0048】
特定の実施形態が本明細書に例示および説明されているが、同じ目的を達成するために計算された多種多様な代替および/または同等の実施形態もしくは実装が、範囲から逸脱することなく示されて説明される実施形態の代わりになり得ることが当業者によって理解されるであろう。
【0049】
当業者であれば、実施形態が非常に多種多様な方法で実施され得ることを容易に理解するであろう。このアプリケーションは、本明細書で論じられる実施形態の任意の適応または変形をカバーすることを意図している。したがって、実施形態は、請求の範囲およびその均等物によってのみ制限されることを明らかに意図している。本発明の精神または範囲から逸脱することなく、本発明においてさまざまな修正および変形を行うことができることは当業者にとって明らかであろう。したがって、本発明は、それらが添付の請求の範囲およびそれらの均等物の範囲内にあるという条件で、本発明の修正および変形をカバーすることを意図している。
【0050】
本明細書に記載の動作の実施形態は、1つ以上のプロセッサによって実行されると、少なくとも部分的に方法を実行する命令をそこに格納したコンピュータ可読記憶装置に実装し得る。プロセッサは、例えば、処理ユニットおよび/またはプログラマブル回路を含み得る。ストレージデバイスは、任意のタイプの有形の非一時的なストレージデバイス、例えば、フロッピーディスク、光ディスク、コンパクトディスク読み取り専用メモリ(CD-ROM)、コンパクトディスクリライタブル(CD-RW)、および磁気光学ディスクを含む任意のタイプのディスク、読み取り専用メモリ(ROM)、動的および静的RAMなどのランダムアクセスメモリ(RAM)、消去可能プログラマブル読み取り専用メモリ(EPROM)、電気的消去可能プログラマブル読み取り専用メモリ(EEPROM)、フラッシュメモリ、磁気カードもしくは光学カード、などの半導体デバイス、または電子命令の保存に適した任意のタイプのストレージデバイス、を含むマシン可読ストレージデバイスを含み得る。
【0051】
必要に応じて、詳細な実施形態を本明細書に開示する。開示された実施形態は、さまざまな代替形態の単なる例示であることを理解されたい。本明細書で使用される場合、「例示的」という用語は、例示、標本、モデル、またはパターンとして機能する実施形態を指すために広範に使用される。図は必ずしも縮尺どおりではなく、特定のコンポーネントの詳細を示すために、一部の機能が誇張または最小化されている場合がある。他の例では、本開示が曖昧とならないように、当業者に知られている周知のコンポーネント、システム、材料、または方法については詳細に説明されていない。したがって、本明細書に開示される特定の構造的および機能的詳細は、限定的であると解釈されるべきではなく、単に請求の範囲の基礎として、および当業者に教示するための代表的な基礎として解釈されるべきである。
【0052】
本開示の実施形態は、デジタルLCoS(液晶オンシリコン)デバイスの位相モード動作の文脈で説明されているが、適切かつ必要な修正を加えることで、説明された手順が、振幅モードおよび混合モードのLCデバイス、ならびに例えば透過型LCデバイスを含む他の種類のLCデバイスにも選択的に適用されることも可能なことは当業者にとって明らかであろう。
【0053】
概観
以下でさらに詳細に説明する実施形態では、実質的に位相モードで動作し、かつ本明細書で説明するような1つ以上の機能を備えた駆動方式を使用するデジタル駆動LCoSマイクロディスプレイは、位相リップル、位相スイッチングノイズ、および位相不安定性を低減して、位相精度およびデバイス動作寿命を高める。
【0054】
図2を参照して、特定のシステムおよび方法が、本明細書ではマイクロコード駆動アーキテクチャの文脈で説明される。このアーキテクチャは、ダウンロードされたイベントテーブルおよびデータルックアップテーブル(例えば、
図6のビットプレーンシーケンステーブル600)を利用して、フレームのシーケンス中に発生するすべてのアクションを定義する。駆動アルゴリズムの挙動は、新しいテーブルのセットをダウンロードすることで変更できる。これは、使用されるダウンロード済みテーブルに応じて、同じドライバチップが振幅デバイスとしてまたは位相シフトデバイスとしてディスプレイを駆動できることを示している。
【0055】
ディスプレイシステムおよび方法
ディスプレイシステム200の高レベルのブロック図を
図2に示す。ディスプレイシステム200は、ディスプレイドライバ210、ディスプレイ220、および混合信号チップ230を含む。
【0056】
ビットプレーンシーケンステーブル600(例えば、
図6を参照)は、ディスプレイシステム200のメモリ202に、またはシステムソフトウェアによってアクセス可能なメモリに格納される。例えば、CPUは、ビットプレーンシーケンステーブル600を取得し、それらをSPIインターフェースを介してディスプレイドライバ210に送る。
【0057】
図2において、イメージャビデオデータ矢印240は、ビデオデータをディスプレイドライバ210からディスプレイ220に伝送するための接続(例えば、64ビットDDRバス)を表す。イメージャ矢印250は、構成コマンドをディスプレイ220に送るために使用される接続(例えば、SPIフォーマットのシリアルデータバス)を表す。
【0058】
矢印260は、制御コマンドを混合信号チップ230に送るために使用される接続(例えば、SPIフォーマットシリアルデータバス)を表し、混合信号チップ230は、これらのコマンドを使用して、Vpix出力電圧270およびVcom出力電圧280の値を設定する。Vpix出力電圧270およびVcom出力電圧280の矢印は、ディスプレイピクセル全体に見られる「High」または完全オンおよび「Low」または完全オフの電圧を確立するためにディスプレイ220に接続される電圧である。
【0059】
VpixとVcomの結合
特定の実施形態では、各Vcom結合セグメントで使用されるVcom値およびVpix値は、それらの結合の前に、そのようなセグメントごとに同じ値を使用するのではなく調整され、その結果、特定の結合に関連する性能変動が低減される。例えば、電圧は、例えば、リセットおよびラッチングトランジェントが望ましくない電圧オフセットおよび/または変位を引き起こし得る間の各フレームまたはサブフレームの最初および最後の結合中に調整される。
【0060】
特定の実施形態では、異なるVcom値およびVpix値が、例えば、2つの相反する結合極性についてのアナログ電圧回路の性能の違いを補償するために、同じ値を使用するのではなく、それらの結合の前に、正極性および負極性のVcom結合セグメントにおいて使用される。
【0061】
特定の実施形態では、Vcomスイッチング周波数は、例えば、Vcom結合セグメント中の電流リーク、またはVcom結合セグメント中に発生する他の任意の時間依存ドリフトを低減するために増加される。リークまたはドリフトは、結合セグメント中に望ましくない電圧変化や変動を引き起こす可能性がある。Vcom結合周波数は、LCoSへのビットプレーンロード(bitplane load)ごとのVcom結合、またはあるビットプレーンロードと次のビットプレーンロードとの間のいくつかの結合をもたらすほど十分に高くなり得る。
【0062】
正確かつ効果的なDCバランスは、(a)フレーム間のまたはサブフレームの結合により、フレームまたはサブフレームの最後のVcom結合セグメントの極性が、一致したフレームまたはサブフレームの最初のVcom結合セグメントの極性と確実に反対になるようにフレームまたはサブフレーム中に奇数個のVcom結合を選択することであって、そのペアの一致が、次のフレームもしくはサブフレームと、または整数個のフレームまたはサブフレームが後に発生するフレームもしくはサブフレームと行われる、選択することによって、ならびに(b)同じ循環値で循環された上記の一致したフレームまたはサブフレームのそれぞれに対して同じbのオン値およびオフ値のシーケンスを使用することによって、2つ以上のフレームまたはサブフレームの持続期間にわたって達成できる。
【0063】
特定の実施形態では、Vcom結合セグメントごとに整数個のビットプレーンロードが使用され、ここで、その整数は、有利には1程度に低くてもよく、ビットプレーンロードは、LCoS内の液晶で直接もしくは各ピクセルラッチの外部のいずれかで、Vcomが実際にLCoS内の液晶で結合するのとほぼ同時に、有効になり、上記ビットプレーンのロードおよび上記Vcom結合が、LCoSのソフトウェア、ファームウェア、およびハードウェアとそのドライバの回路およびソフトウェアとによって送られ、発行され、切り替えられ、実行され、またはコマンドされたときと、対応するビットプレーンロードおよびVcom結合が実際に液晶で発生したときと、の間のレイテンシを設計されたもしくは測定されたものにすることを可能にし、その設計または測定されたレイテンシおよび次のような特殊なケースのその他の性能特性を含む。特殊なケースは、例えば、LCoSの駆動回路によってさまざまな初期化、リセット、およびキャッシュロードが必要になり得る実質的前での、最中での、後での、および/または、上記初期化、リセット、ロード、および他の動作が上記ビットプレーンロードおよび上記Vcom結合の最中または時間的に隣接して存在する電圧のタイミングにおよび/または電圧に望ましくないバラツキもしくは変動を引き起こし得る、関連するファームウェアおよび/またはソフトウェアによってさまざまな初期化、リセット、およびキャッシュロードが必要になり得る実質的前での、最中での、後での、最初のおよび/または最後のVcom結合セグメント、および/または、これらの最初のおよび/または最後のVcom結合セグメントの最初のおよび/または最後のビットプレーンロード、および/または、その他のVcom結合セグメントの最初のおよび/または最後のビットプレーンロードである。
【0064】
ディスプレイドライバプロセス
ディスプレイドライバ210の駆動プロセス300の基本的なフローチャートを
図3に示す。第1のステップ310によれば、ディスプレイドライバ210は、イベントテーブルおよびLUTテーブル(例えば、ビットプレーンシーケンステーブル600)をメモリ202からダウンロードする。第2のステップ320によれば、ディスプレイドライバ210は、接続250を介して、デフォルト以外のディスプレイ設定をディスプレイ220に書き込む。第3のステップ330によれば、ディスプレイドライバ210は、ビデオフレームの開始をマークするビデオソース(図示せず)からのVsync332を待つ。Vsync332を受信した後、第4のステップ340によれば、ディスプレイドライバ210は、ダウンロード済みテーブルに従って一連のイベントを実行する。
【0065】
特に、第4のステップ340は、フレームタイマを開始することと、第1のサブステップ342で第1のイベント時間をロードすることと、第2のサブステップ344でイベント時間を待機することと、第3のサブステップ346でビットプレーンまたはその他のイベントを実行すること(ディスプレイ220のLCOSに送信すること)と、第4のサブステップ348による、そのイベントが最後のイベントであるかどうかを決定することと、を含む。イベントが最後のイベントでない場合、サブステップ350に従って新しいイベント時間がロードされ、イベントが第4のサブステップ348で最後のイベントであると決定されるまでサブステップ344、346、348、350が繰り返される。
【0066】
ディスプレイプロセス
ディスプレイ220上のレンダリングプロセス400の基本的なフローチャートを
図4に示す。アイドル状態410にある間、ディスプレイ220は、ディスプレイドライバ210から画像データ240を受信する。第1のステップ412によれば、ディスプレイ220は、パラレルインターフェースを介して受信された画像データ240を解析して、有効なLCoS Headerが受信されたかどうかを決定する。受信されていない場合、フレームタイマを更新し(414)、ディスプレイ220をアイドル状態410に戻す。受信された場合、ヘッダは、ディスプレイ220内の内部レジスタに格納され(416)、次に、ディスプレイ220は、ビットプレーン受信状態420に遷移する。
【0067】
ディスプレイ220は、パラレルインターフェースを介して128個の列ビットを受信し、適切なピクセルのマスターフリップフロップに格納する(422)。続いて、受信後に列選択カウンタをインクリメントし(424)、すべての列データが受信されるまで422および424を繰り返す(426)。列受信の完了に続いて、次の行の最初の列データを受信(422)する前に、行選択カウンタをインクリメントし(430)、列選択カウンタをゼロにする。上記のステップを、最後の行および最後の列のデータを受信するまで繰り返し(432)、受信の時点で、ディスプレイ220は、ロード状態440に遷移する。
【0068】
ロード状態440にある間、ディスプレイ220は、ロードパルスを送って、列グループ全体のマスターフリップフロップデータをスレーブフリップフロップに移し(450)、次に、所定のサイクル数遅延させ(452)、次に、列グループカウンタをインクリメントして(454)、残りのすべての列グループに対して繰り返す。このプロセスがすべての列グループに対して繰り返された後(456)、レベルシフトトリガーが送られて(460)、すべてのスレーブフリップフロップデータを電極に同時に更新し、ディスプレイをアイドル状態410に戻す。
【0069】
ビットプレーンテーブル方式
本明細書に説明されるシステムおよび方法は、「1」および「0」ビットプレーンの最適化されたシーケンスを決定し(例えば、
図6のビットプレーンシーケンステーブル600を参照)、このシーケンスにより、ディスプレイドライバ210によって位相モードビットプレーン駆動デジタルLCOSディスプレイ220に送られると、最小の位相リップル110で所望の位相シフト値120での波形100が得られる。
【0070】
位相モードと振幅モード
文脈上、デジタルLCOSディスプレイ220を位相モードと振幅モードで動作させることの違いについて簡単に説明する。通常、振幅モードでは、ディスプレイシステム200はPWMで動作する。ここでは、特定のグレーレベルで表示される所与のフレーム内の所与のピクセルについて、そのピクセルはフレームの先頭でオンになり、「1」の値で書き直されて、ある時点に到達するまですべてのビットプレーンでのオンを維持し、これは、所望の「フルスケール」のパーセンテージに対応する。
【0071】
したがって、例えば、グレー値が「0」の場合、ピクセルはオンにならない。グレー値が50%の場合、ピクセルは通常、フレームの前半ではオンのままであり、後半ではオフのままである。グレー値が100%に近い場合、ピクセルはほぼフレーム全体でオンのままである。したがって、一般に、各ピクセルは、特定の時点まで各ビットプレーンで長い「1」値の列で書き込まれ、その後、そこからフレームの最後まで長い「0」値の列で書き込まれる。
【0072】
さまざまなグレー値の結果を
図11に示す。これらの振幅モードの場合、取り得るグレーレベルの数(2
2)の例に対応するビットプレーン書き込みは4つのみである。Vsyncパルスは各フレームをオフで開始し、それにピクセル電圧波形および対応するLC応答が続く。グラフには、4つの破線のボックスがあり、それぞれ取り得るグレー値のものであり、4つの異なるグレーレベルであることを必要とする4つの異なるピクセルに対する電圧とLC応答を表すことができる。60Hzで、このシーケンス全体が完了するまでに16.67msかかり、次のフレーム(ただし、DCバランスをとるために反対の極性で)で繰り返される。
【0073】
ここで、(0に近いいくつかのグレー値を除いて)ディスプレイ220のLC222は、PWMパルスが終了する前に常に完全オン状態に達する時間を持ち、(ここでもフルスケールに近いいくつかのグレー値を除いて)その後、完全オフ状態に達するということを理解されたい。
【0074】
ビットプレーンのタイミングに関して(これは所望のガンマに影響されるが、以下のこととは関係ない)、平均ビットプレーン間隔は、おおよそ、フレーム時間を取り得るグレーレベルの数で割ったものである。この数は通常、最小の取り得るビットプレーン時間よりもかなり長く、所望のガンマ値に応じて、この間隔は、取得したフレーム時間へと徐々に増加する。
【0075】
位相モードでのディスプレイシステム200の動作は異なる。ここで、ディスプレイシステム200は、ディスプレイ220のLC222が「完全オン」または「完全オフ」の状態に達しないように設計されている。代わりに、ディスプレイドライバ210は、LC222のLC状態が前後にジグザグとなるような1および0のパターンを、所望の位相シフト値120に対応する「完全オン」の所望のパーセンテージにそのパターンを維持する鋸歯状にして送る。
【0076】
さまざまな位相値の結果を
図12に示す。ここでは、16ビットプレーンの書き込みがあり、電圧を変更する必要があるときはいつでもビットプレーンの書き込みがあることが理解できる。ビットプレーン書き込み間の60μsでは、このグラフは最初の960μs、すなわち、フレームの1/16未満のみを示している。破線は、LC状態の平均値のおおよそのものを示し、これは、所望の位相シフトであることを意図している。
【0077】
「1」ビットプレーンが送られると、LC状態は「完全オン」に向かってランピングを開始し、「0」ビットプレーンが送られると、LC状態は「完全オフ」に向かってランピングを開始する。 LC状態は、常に一方向または他の方向にランピングしている。これらのビットプレーンを送る時間が離れるほど、一方向のランピング時間が長くなり、したがって、波形100の位相リップル110または鋸歯の振幅が大きくなる。
【0078】
ディスプレイシステム200は、位相リップル110を最小化するために、ビットプレーン610を非常に接近させて書き込む。ビットプレーン610の書き込み間の最短間隔は、例えば、約60μsに制限され得る。
【0079】
温度に応じて、位相モードLC222の現在の材料の立ち上がり時間と立ち下がり時間は、約3msであり得る。この場合、ビットプレーン610の同じパターンのかなり長いシーケンス(例えば、1の列または0の列)でさえ、必ずしもLC状態を飽和状態(「完全オン」または「完全オフ」)にするわけではない。
【0080】
例として、「完全オン」の60%であるLC状態を得るために、それらの60%が「1」および40%が「0」である、「1」ビットプレーン610と「0」ビットプレーン610のパターンは、所望の結果を達成する可能性がある。しかしながら、特定のパターン620は、位相シフト値120の周りの位相リップル110を最小化するために重要である。
【0081】
選択されたパターン600は、改善された位相シフト値120を得るために正しいデューティサイクルを適用し、システムが連続していくつかの「オン」または「オフ」ビットプレーンを送る時間を最小化する(これは、
図1に関して上記した位相リップル110を増加させる傾向があるため)。とりわけ、これらの2つの目的を達成するための最適なパターン600を決定するための方法500を、ここでさらに詳細に説明する。
【0082】
ビットプレーンテーブルの生成方法
一般に、バイナリ値のシーケンスは、フレームまたはサブフレーム中に所望のグレー値または位相値を達成し、そのフレームまたはサブフレーム内のそのグレー値または位相値の「オン」値の望ましい数を、「オン」期間がフレームまたはサブフレームの持続期間にわたって実質的に等間隔で発生するように、「オフ」値を有するそのフレームまたはサブフレームにおいて散在させることによって決定される。
【0083】
各フレームまたはサブフレームをオン値またはオフ値などのb=mx(2n-1)に分割する。ここで、nは、フレームまたはサブフレームの整数のネイティブビット深度であり、mは、LCoSとその駆動回路が達成できるよりも高いレートでビットプレーンロードが発生することなく、bビットプレーンロードがフレームまたはサブフレーム中に時間的に実質的に等間隔で発生することができるように選択された整数の乗数である。
【0084】
方法500は、各取り得る位相シフト値620(テーブル600の行)に従って、時間間隔内に存在する「オン」または「1」ビットプレーン610(テーブル600の列)の数のパターン600を決定し、その時間間隔の持続期間にわたって可能な限り均等に「オン」または「1」ビットプレーン610を分配する。次いで、残りのビットプレーン時間は「オフ」または「0」ビットプレーン610になる。このプロセス500は、以下に説明され、
図5に図示される。
【0085】
例えば、6ビット位相モードディスプレイ220の場合、システムおよび方法500は、6ビットの位相分解能によって定義される64個の取り得る位相シフト値120のそれぞれ(テーブル600の行620によって表される位相シフト値の可能性、テーブル600の列610によって示されるビットプレーン、各行は、位相シフト値のためのビットプレーンのシーケンスである)に適用する最適化されたシーケンス620を決定する。
【0086】
方法500は、フレーム時間および位相シフト分解能のビット数を決定する第1のステップ510を含む。例えば、60Hzフレームのフレーム時間は、持続時間内の16.667msである。さまざまな位相シフト分解能が考えられる。一例として、6ビットの位相シフト分解能が選択された場合、基本変調シーケンスには64(26)ビットの位相シフト分解能610があり、パターン600は、「1」に対応する64のうち0から64のうちの63までの可能性620をサポートするように決定される。
【0087】
この例を続けると、最小変調時間は64*60μs=3.84msである。第2のステップ520によれば、64ビットプレーンシーケンス(変調時間)がフレーム内で繰り返される回数が決定される。ここで、フレーム時間は、16.667msの長さであるため、この64ビットプレーンシーケンスを4.34回繰り返す時間がある。
【0088】
次に、各ビットプレーン610の時間は、繰り返しの数が整数になるように調整される。例えば、ビットプレーン610の時間は65.1μsに調整されて、時間フレーム内で64ビットプレーンシーケンス(変調パターン)が正確に4回繰り返される。
【0089】
方法500は、64個の取り得る位相シフト値のそれぞれについてビットパターン620を選択するための一連のサブステップを継続する。
【0090】
第3のステップ530によれば、位相シフト値は正規化され、ネイティブ0-2p位相シフト値120から、0/64、1/64、2/64、3/64、...63/64へと丸められる。いずれの場合も、分子(P)は、取り得る64個のうちの「オン」または「1」ビットプレーンの数である。2pを乗ずることにより、これらの各分数を必要に応じて位相シフト値(ラジアン)に戻すことができることを理解されたい。
【0091】
第4のステップ540によれば、位相シフトが0の場合、64ビットプレーンはすべて「0」である。Pは、値1から開始するように設定されている。
【0092】
第5のステップ550によれば、平均「オン」のビットプレーン間隔(D)は、64を分子値(P)で割ることによって決定される。例えば、8/64(0.785ラジアン)に対応する位相シフトの場合、64を8で割ると、結果は8.0になる。これは、8番目のビットプレーンごとに「オン」ビットプレーンである必要があることを意味する。
【0093】
第5のステップ550のサブステップ552によれば、D値および関連するP値のそれぞれについて、Dが整数であるかどうかが決定される。
【0094】
第6のステップ560によれば、この除算が偶数になる(Dが整数の結果を生成する)位相シフト値について、パターン620が決定される。このパターン620では、「オン」または「1」ビットプレーンは、0(最初)、8、16、24、32、40、48、および56である。2p(フルスケール)の位相シフトの場合、64ビットプレーンはすべて「1」である。また、1p(ミドルスケール)の位相シフトの場合、パターンは、「10101010...」のように1と0(それぞれ32個)が交互になる。
【0095】
しかしながら、(分子Pに関連する)ほとんどの位相シフト値について、ステップ550の除算は、ステップ552で整数の結果を生成しない。例えば、3/64(0.295ラジアン)に対応する位相シフトの場合、除算の結果は64/3=21.3となる。これは、21.3ビットプレーンごとの「オン」ビットプレーンに対応する。しかしながら、「オン」ビットプレーンは、テーブル600において小数位置または非整数位置を持つことができない。代わりに、一連のサブステップ570、572、574、576、578に従って、3つの「オン」ビットプレーンの非小数位置が可能な限り均一であると決定され、その結果、「オン」ビットプレーン610間の平均間隔が、可能な限り21.3に近くなる。
【0096】
一般に、非整数間隔ごとに、システムは、所望の間隔に最も近いパターンを列挙し、各パターンの平均間隔を計算し、平均間隔が所望の平均間隔に最も近いパターン(複数可)を除くすべてを削除する。(上記の例のように)同じ最も近い平均間隔を持つパターンが複数ある場合、システムは、ビットプレーン(複数可)上で最も早い「余分な」パターンを選択する。
【0097】
ここで、サブステップ570によれば、各非整数D値について、システムは、間隔がint(D)またはint(D)+1であると決定する。上記の例の場合、間隔は、それぞれ21または22(int(21.3)もしくはint(21.3)+1)になる。
【0098】
サブステップ570によれば、システムはさらに、(分子Pに関連する)すべての取り得るシーケンスのリストを形成する。一例として、各繰り返しが「オン」ビットプレーンで0から始まる場合、上記の例を継続する選択肢は、{0,21,42}、{0,21,43}、{0,22,43}、または{0,22,44}である。
【0099】
サブステップ572によれば、各シーケンスについて、システムは、隣接する要素間の平均差を計算する。これには、最後の要素と「64」との間の「ラップアラウンド」の差が含まれる。例示的なシーケンスの場合、各シリーズの平均間隔は、それぞれ、21.3、21.3、21.3、および21.7である。
【0100】
サブステップ574によれば、システムは、平均間隔のそれぞれをDの値と比較し、どのシーケンス(複数可)が最小の差に関連するかを決定する。上記の例を続けると、計算された平均間隔のうち、平均間隔がターゲットの21.3から最も遠いため、最後のものが削除される。選択肢{0,21,42}、{0,21,43}、および{0,22,43}は残り、これらのいずれも有効な選択肢である。
【0101】
サブステップ576によれば、システムは、決定されたシーケンスを使用するか、または残りのシーケンスから選択する。例えば、残りの例示的なシーケンスから選択すると、2番目の選択肢{0,21,42}が、少し前に所望の位相値に到達するプロセスを高速化するフレームの早い段階で「オン」ビットプレーンを配置することから、選択される。
【0102】
サブステップ578によれば、各位相シフト値(P)において、ビットプレーンテーブル600は、選択されたシーケンスに従ったビットプレーン値で埋められる。シーケンスは、所与のP値に対して「オン」値を有するビットプレーン610を示す。
【0103】
サブステップ580、582によれば、プロセス500のステップは、追加の値に対して繰り返される。
【0104】
図6は、上記の例示的な6ビットシステムにおいて可能な64の位相シフトレベルのそれぞれについて、どのビットプレーンが「オン」になるかの例を示す図を示す。なお、各行は、異なる位相シフトであり、グリーンセルは「オン」のビットプレーンである。
【0105】
周期的循環
上述したように、各フレームまたはサブフレームは「オン」値または「オフ」値などのb=mx(2n-1)に分割され、ここで、nは、フレームまたはサブフレームの整数のネイティブビット深度であり、mは、LCoSとその駆動回路が達成できるよりも高いレートでビットプレーンロードが発生することなく、bビットプレーンロードがフレームまたはサブフレーム中に時間的に実質的に等間隔で発生することができるように選択された整数の乗数である。
【0106】
所望のグレー値または位相値ごとに、システムは、そのグレー値または位相値のbオン値およびオフ値のシーケンスを整数値だけ周期的に循環させる。例えば、システムは、位相値またはグレー値ごとに1つずつ、整数循環値のセットを選択し、これにより、各bビットプレーンロードでの実質的に等しい数のオンからオフへの遷移と、各bビットプレーンロードでの実質的に等しい数のオフからオンへの遷移とがまとめて発生する。したがって、オンからオフへの遷移のレートおよびオフからオンへの遷移のレートは、フレームまたはサブフレーム内で実質的に一定に維持される。
【0107】
別の例として、システムは、取り得る一意の循環値のセットから選択される整数循環値のセットを選択する(b循環値のm=2nxbの一意の選択肢のみがあり、これにより、bのオン値およびオフ値のシーケンスが異なることになる)。選択は、1つ以上の数値的に定義されたメリット関数を最小化または最大化するために、取り得るセットmの一部またはすべてを数値的に評価することによって決定される。
【0108】
例えば、選択は、オンからオフへの遷移の時間的分布の均一性に関して決定してもよい。または、選択は、例えば、フレームもしくはサブフレームの開始もしくは終了など、フレームまたはサブフレーム内の特定の瞬間またはその近くでかなりの数のオフからオンへの遷移の発生を防ぐように決定してもよい。
【0109】
または、選択は、LCoSの1つ以上のメリット関数を、取り得るセットmの一部またはすべてを一度に1つずつ測定することにより、実験的に選択を決定してもよい。ここで、測定されたメリット関数は、例えば、その循環値のセットで動作するLCoSの回折効率であってもよい。別の例として、メリット関数は、その循環値のセットで動作するLCoSによって生成された一次回折画像の第1の実質的に明るい領域で測定された光パワーとその循環値のセットで動作するLCoSによって生成された一次回折画像の第2の実質的に暗い領域で測定された光パワーまたは1次回折画像の結合の空間的に対応する領域で測定された光パワーとの間の比であり得る。
【0110】
さらに、選択は、候補セットが取り得るセットから数値的に選択され、次にこれらの候補が実験的に評価されるハイブリッド法によって決定してもよい。
【0111】
実際には、各ビットプレーンは、ディスプレイ内のすべてのピクセルの値を同時に設定し、数百万のピクセルが本質的に同時に遷移すると、システムレベルの相互作用が発生する可能性がある。
図6に示されるようなビットシーケンスについて考えた場合、ピクセルの状態が1つのビットプレーンと次のビットプレーンとの間で変化する(0から1または1から0)位相シフト値の数は、20にすぎないか、41にもなることができる。広範囲の位相シフト値を含む画像が数百万のピクセルを含むイメージャに適用されると、フレームの過程でビットプレーンが実行されるときにさまざまなアクティビティレベルにより、目に見えるアーティファクトが生成される。
【0112】
フレームワークの過程でのピクセル1と0の列の状態は、1と0の混合と拡散によってターゲットの位相シフトを実現する。それらは、シーケンス内の特定のポイントで1と0のシーケンスを開始することには依存しない。したがって、システムは、各ビットプレーン間のピクセル状態変化の数を計算し、連続するビットプレーン間のピクセル状態変化の計算された最小数と連続するビットプレーン間のピクセル状態変化の計算された最大数との間の範囲を最小化するために、各ターゲット位相状態値に関連する1および0の各列の開始点を調整する、最適化ステップを実行する。この最適化を適用すると、アーティファクトが大幅に減少し、位相のコントラストが改善される。
【0113】
ビットプレーンあたりの可変電圧
図8は、例示的なベースラインビットプレーンシーケンステーブル800であり、
図9~10は、修正されたビットプレーンシーケンステーブル900、1000(以下の最適化を、
図8に示されるビットプレーンのベースラインセット800に適用することから生じるビットプレーンのセット)である。
【0114】
再び
図2を参照すると、ディスプレイシステム200のマイクロコード駆動アーキテクチャは、他のビットプレーンとは無関係に、ディスプレイ220に送られるビットプレーンの詳細を変更することができる。これらの詳細の1つは、所与のビットプレーンのピクセル電極に印加される電圧である。この電圧(表示電圧Vpix270)は、この例示的な実施形態では、外部混合信号チップ230からディスプレイ220に供給され、実際の電圧は、ディスプレイドライバ210から混合信号チップ230へのSPIインターフェース書き込み250によって設定されている。
【0115】
このSPIインターフェース書き込み250が開始し、書き込まれる値は、ダウンロード済みのイベントテーブルに挿入または提示されたコマンドによって決定される。したがって、新しいイベントテーブルをダウンロードすることにより、各ビットプレーンに使用されるVpix電圧270を個別に調整することが可能である。
【0116】
電圧調整方法700によれば、少しの経験的電圧調整が、通常、送られた最初のビットプレーンから開始して、各ビットプレーンに対して連続して行われ、位相リップル110の測定が、各調整の後に行われる。
【0117】
フレーム(またはシーケンス/行)内のビットプレーンの1つまたは2つだけに適用される、例えば、典型的にはわずか0.1または0.2Vの小さな電圧調整は、位相リップル110の平均量を減らすのに非常に効果的であり得る。特に、これらの電圧調整をフレームの最初のビットプレーンまたはフレームの最後のビットプレーン(あるいはその両方)に対して行うのが最も効果的である。
【0118】
この効果は、フレームの過程で発生するビットプレーンのシーケンスの前後の非アクティブ期間によって引き起こされる非対称性を部分的に「修正」または「補正」することとして最も容易に理解される。これらの調整は、LCOSディスプレイ220に存在する残留DC電圧がちらつきや画像焼き付きアーティファクトにつながる可能性があるため、継続動作中にディスプレイ220の全体的なDCバランスが維持されるように行う必要がある。
【0119】
図7を参照して、以下に例示的な電圧調整方法700をさらに詳細に説明する。第1のステップ710によれば、ベースライン位相モードシーケンステーブル800をディスプレイドライバ210にダウンロードする。位相モードシーケンステーブル800は、ベースライン値に設定されたビットプレーンVpix電圧270を有する。
【0120】
第2のステップ720によれば、ディスプレイシステム200は、このベースラインシーケンステーブル800を使用して位相リップル110を測定し、このビットプレーンのベースライン(#0)として結果を保存する。
【0121】
第3のステップ730によれば、ディスプレイシステム200は、ベースラインシーケンステーブル800を修正して、第1のビットプレーンに対してのみに(「ベースライン」値に対して)+100mVのVpixオフセットを適用する。修正された位相モードシーケンステーブルをディスプレイドライバ210にダウンロードし、ディスプレイシステム200は、この新しいシーケンスを使用して位相リップル110を測定し、結果を(#1)として保存する。
【0122】
第4のステップ740によれば、ディスプレイシステム200は、ベースラインシーケンステーブル800を修正して、第1のビットプレーンのみに(「ベースライン」値に対して)-100mVのVpixオフセットを適用する。修正された位相モードシーケンステーブルをディスプレイドライバ210にダウンロードし、ディスプレイシステム200は、この新しいシーケンスを使用して位相リップル110を測定し、結果を(#2)として保存する。
【0123】
第5のステップ750によれば、ディスプレイシステム200は、結果#0の位相リップル110を結果#1および#2の位相リップル110と比較する。#1または#2のいずれかが#0よりも小さい位相リップルを持っている場合、この第1のビットプレーンでのベースラインシーケンスのベースラインVpix電圧270を、より小さな位相リップル110値を与える、修正されたVpix電圧(Vpix電圧270およびVpixオフセット)に置き換える。
【0124】
ステップ710、720、730、740、750は、シーケンス内の各ビットプレーンに対して繰り返される。いずれの場合も、特定のビットプレーンのVpix電圧270の電圧オフセットが、以前の「低い」位相リップル110値よりも低い位相リップル110値を与えることがわかった場合、Vpix電圧270値は、そのビットプレーンのベースラインシーケンスで、全体的な位相リップル110がより低くなる値と置き換えられる。この新しい「修正されたシーケンス」は、次に残りのステップで使用される。
【0125】
これらの値は相互作用することができ、これにより、シーケンス620内の各ビットプレーン610に対してステップを複数回繰り返すことが有利となり得る。最終結果を微調整するために、100mV未満の電圧オフセットでアルゴリズムを繰り返すことも有利となり得る。他のオフセットも考えられる。
【0126】
第6のステップ760によれば、ディスプレイシステム200は、反対の極性のサブフレームに変更を加え、組み合わされた正および負のサブフレームにわたって位相リップル110を再チェックする。正と負のサブフレームへの変更は、確実にDCバランスが維持されるように、大きさが等しく、極性が反対のものである。位相リップル110をさらに最小化するために、これらの組み合わされたサブフレームにわたってプロセス700を繰り返すことが有利となり得る。
【0127】
第7のステップ770によれば、ディスプレイシステム200は、Vpixオフセットを組み込んだ最終的に修正された「ベースライン」シーケンス900、1000を保存および格納する。
【0128】
プロセス700は、特定の駆動シーケンスおよびLC構築のための工学的最適化の一部である。
【0129】
結論
デジタル設計ではホログラフィに必要な正確な低位相リップル位相シフトを生成できないと考えられてきたため、歴史的にアナログ設計が好まれてきた。しかしながら、デジタル位相モードLCOSディスプレイは、多くの点でアナログ設計よりも少なくとも競争力があり、多くの場合優れている。デジタル位相モードLCOSディスプレイは、アナログバージョンと競合する位相リップル、典型的には6ビットの分解能の場合に3%以下のものが可能である。デジタル位相モードLCOSディスプレイには、アナログディスプレイで問題(特に、ピクセルサイズが小さい場合)となる「垂下(droop)」および不正確な電荷移動のそれぞれがほとんどないか、まったくない。デジタル位相モードLCOSディスプレイは、各ピクセルにストレージコンデンサを取り付けるための最小サイズを必要としないため、はるかに小さいピクセルでの実装が可能である。例えば、デジタル位相モードLCOSディスプレイは、3.015μmのピクセルピッチを使用し得、より小さなピクセルが可能である。このように小さいピクセルでのアナログ位相モードディスプレイは実証されていない。
【0130】
デジタルアーキテクチャにより、ノイズ、オフセット電圧、グラウンドバウンス、PSRRの問題、およびアナログLCOSディスプレイの設計を困難にするその他のアーティファクトに対する耐性が大幅に向上する。
【0131】
システムおよび方法は、従来技術のディスプレイによって生成されたものよりも高いコントラストの位相画像の表示を可能にする。位相リップルを低減してディスプレイを動作させる方法を提供することにより、コントラストが改善される。これにより、ここで説明するシステムおよび方法を使用して生成されたディスプレイがより良くなり(より高品質の画像を生成するため)、エンドカスタマーによる使用により適したものになる。
【0132】
本明細書で使用されている用語および表現は、説明の用語として使用され、限定するものではなく、そのような用語および表現の使用において、示されかつ説明された特徴(またはその一部)の均等物を除外する意図はなく、また、請求の範囲内でさまざまな変更が可能であると認識される。したがって、請求項は、そのようなすべての均等物をカバーすることを意図している。
【0133】
さまざまな特徴、態様、および実施形態が本明細書に記載されている。当業者によって理解されるように、特徴、態様、および実施形態は、互いとの組み合わせ、ならびに変形および修正が容易である。したがって、本開示は、そのような組み合わせ、変形、および修正を包含すると見なされるべきである。
【0134】
上述の実施形態は、原理を明確に理解するために説明されている実装の単なる例示である。変形、修正、および組み合わせは、請求の範囲から逸脱することなく、上記の実施形態に対して行い得る。そのようなすべての変形、修正、および組み合わせは、本開示の範囲および以下の請求の範囲によって本明細書に含まれる。