(57)【特許請求の範囲】
【請求項１】
複数のマルチプレクサデータ入力と、複数の選択入力と、１つのマルチプレクサ出力とをもつグリッジのないマルチプレクサ（ｍｕｘ）、前記マルチプレクサ出力は、どの単一選択入力ビットの変化によってもグリッジを生じない；
複数のラッチデータ入力および複数のラッチデータ出力を有する複数のラッチ、前記複数のラッチデータ出力は前記複数のマルチプレクサデータ入力と結合され；
前記マルチプレクサの前記複数の選択入力に結合され、前記マルチプレクサ出力のために予め定められたカウントシーケンスで前記複数のマルチプレクサデータ入力のうちの１つを選択するカウンタ；および
前記複数のラッチに結合され、前記複数のラッチのうちの１つのサブセットのラッチデータ出力が前記マルチプレクサ出力のために選択される前記カウントシーケンスのうちの半分の期間に、前記複数のラッチのうちの別の１つのサブセットのみのラッチデータ出力を更新するように前記複数のラッチを動作可能にし、制御するエネーブラ；
を備え、
前記カウンタは前記エネ−ブラを制御し、入力クロックの立ち上がりエッジおよび立下りエッジで前記カウンタは遷移し、前記カウンタの単一ステートビットのみがカウントシーケンスにおける連続する２つの任意のステート間のカウンタ遷移毎に変化し、前記マルチプレクサは、前記入力クロックの立ち上がりエッジで１ビットを出力し、前記入力クロックの立下りビットで１ビットを出力する、２倍データレートのシリアル符号器。
【請求項２】
前記マルチプレクサは、Ｎ個のマルチプレクサデータ入力および１つのマルチプレクサ出力を有するＮ：１マルチプレクサであり、ここでＮは２の整数累乗である、請求項１記載の符号器。
【請求項３】
前記マルチプレクサは８つのマルチプレクサデータ入力を有する請求項１記載の符号器。
【請求項４】
前記カウンタは、前記マルチプクサにグレイコードシーケンスに従う入力選択値を提供する請求項１記載の符号器。
【請求項５】
前記カウンタは、前記グレイコードシーケンスに基づいてグリッチのないマルチプレクサ出力を提供する出力選択アルゴリズムを含む請求項４記載の符号器。
【請求項６】
前記出力選択アルゴリズムは、前記グレイコードシーケンスに従った入力遷移の間のみグリッチの無い出力を提供し、それによって前記マルチプレクサのサイズを縮小する請求項５記載の符号器。
【請求項７】
ｓ（ｎ）が入力選択値のビットを表し、ｓｎ（ｎ）がｓ（ｎ）の否定を表し、ｄ（ｋ）が前記マルチプレクサの入力のビットを表すとして、前記出力選択アルゴリズムは、以下の式
出力＝(sn(2) AND sn(1) AND sn(0) AND d(0)) OR (sn(2) AND sn(1) AND s(0) AND d(1)) OR (sn(2) AND s(1) AND sn(0) AND d(2)) OR (sn(2) AND s(1) AND s(0) AND d(3)) OR (s(2) AND sn(1) AND sn(0) AND d(4)) OR (s(2) AND sn(1) AND s(0) AND d(5)) OR (s(2) AND s(1) AND sn(0) AND d(6)) OR (s(2) AND s(1) AND s(0) AND d(7)) OR (sn(2) AND sn(1) AND d(1) AND d(0)) OR (sn(1) AND sn(0) AND d(4) AND d(0)) OR (sn(2) AND s(0) AND d(3) AND d(1)) OR (sn(2) AND s(1) AND d(3) AND d(2)) OR (s(2) AND sn (1) AND d(5) AND d(4)) OR (s(1) AND sn(0) AND d(6) AND d(2)) OR (s(2) AND s(0) AND d(7) AND d(5)) OR (s(2) AND s(1) AND d(7) AND d(6))
に従って前記マルチプレクサの出力を選択する請求項６記載の符号器。
【請求項８】
前記カウンタは、前記入力クロックのエッジ毎に遷移し、前記マルチプレクサが前記入力クロックのエッジ毎に１ビットを出力する請求項６記載の符号器。
【請求項９】
前記符号器は、前記カウンタで生成される前記入力選択値に基づいて前記複数のラッチを動作可能にする請求項４記載の符号器。
【請求項１０】
前記符号器は、パラレル入力データを受信し、それをシリアル通信リンクにシリアルに出力する請求項１記載の符号器。
【請求項１１】
前記シリアル通信リンクは、携帯機器向ディスプレイディジタルインタフェース（ＭＤＤＩ）リンクである請求項１０記載の符号器。
【請求項１２】
複数の入力ビットをラッチする複数のラッチ；
予め定められたシーケンスで入力選択を生成するカウンタを含む、入力選択シーケンスを生成する手段、前記カウンタは入力クロックの立ち上がりエッジおよび立下りエッジで遷移し、前記カウンタの単一ビットのみがカウントシーケンスにおける連続する任意の２つのステート間のカウンタ遷移毎に変化し；
前記入力選択シーケンスに従って、前記複数のラッチからの複数の出力ビットのうちの１つを選択することにより、前記複数のラッチからの前記複数の出力ビットをシリアルに出力する手段；および
前記複数のラッチのうちの１つのサブセットの出力ビットが選択される前記入力選択シーケンスのうちの半分の期間に、前記複数のラッチのうちの別の１つのサブセットのみの出力ビットを更新する手段；
を含み、
前記シリアルに出力する手段は、前記入力選択シーケンスにおける入力遷移中にグリッチの無い出力を備え、前記入力クロックの立ち上がりエッジで１ビットを出力し、立下りエッジで１ビットを出力する、シリアル符号器。
【請求項１３】
前記入力選択シーケンスはグレイコードシーケンスである請求項１２記載のシリアル符号器。
【請求項１４】
前記出力する手段は、前記グレイコードシーケンスに基づいて前記グリッチのない前記マルチプレクサ出力を提供する出力選択アルゴリズムを含む請求項１３記載のシリアル符号器。
【請求項１５】
前記出力選択アルゴリズムは、前記グレイコードシーケンスに従った入力遷移の間のみ前記グリッチの無い出力を提供する請求項１４記載のシリアル符号器。
【請求項１６】
前記シリアルに出力する手段は、前記入力クロックのエッジ毎に１ビットを出力する請求項１２記載のシリアル符号器。
【請求項１７】
複数のマルチプレクサデータ入力と、複数の選択入力と、１つのマルチプレクサ出力とをもつグリッジのないマルチプレクサ（ｍｕｘ）、前記マルチプレクサ出力は、どの単一選択入力ビットの変化によってもグリッジを生じない；
複数のラッチデータ入力および複数のラッチデータ出力を有する複数のラッチ、前記複数のラッチデータ出力は前記複数のマルチプレクサデータ入力と結合され；
前記マルチプレクサの前記複数の選択入力に結合され、前記マルチプレクサ出力のために予め定められたカウントシーケンスで前記複数のマルチプレクサデータ入力のうちの１つを選択するカウンタ；および
前記複数のラッチに結合され、前記複数のラッチのうちの１つのサブセットのラッチデータ出力が前記マルチプレクサ出力のために選択される前記カウントシーケンスのうちの半分の期間に、前記複数のラッチのうちの別の１つのサブセットのみのラッチデータ出力を更新するように前記複数のラッチを動作可能にし、制御するエネーブラ；
を備え、
前記カウンタは前記エネ−ブラを制御し、入力クロックの立ち上がりエッジおよび立下りエッジごとに前記カウンタは遷移し、前記カウンタの単一ステートビットのみがカウントシーケンスにおける連続する任意の２つのステート間のカウンタ遷移毎に変化し、前記マルチプレクサは、前記入力クロックの立ち上がりエッジごとに１ビットを出力し、立下りエッジごとに１ビットを出力する、システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に高データレートのシリアル通信リンクのためのシリアル符号器に関する。より詳細には、本発明は携帯機器向ディスプレイディジタルインタフェース（ＭＤＤＩ）リンクのための２倍データレートのシリアル符号器に関する。
【背景技術】
【０００２】
内部配線技術の分野において、常にデータレートの向上に対する要求が、特にビデオ表示に関連して、増え続けている。
【０００３】
携帯機器向ディスプレイディジタルインタフェース（ＭＤＤＩ）は、ホストとクライアント間の近距離通信リンクを通じて極めて高速のデータ転送を可能とする費用効果的で、低消費電力な転送メカニズムである。ＭＤＤＩは最大３．２Ｇｂｐｓの最大帯域幅を達成する双方向データ転送のために最小限４本の線路と電力を必要とする。
【０００４】
１つの応用において、ＭＤＤＩは、送受信機のヒンジを通りディジタルベースバンド制御器とＬＣＤディスプレイおよび／またはカメラとを接続する線路の数を顕著に減少させることにより、クラムシェル型電話機における信頼性を向上させ電力消費を低減する。この線路の減少により、送受信機メーカはクラムシェル型またはスライド型送受信機の設計を簡易化することによって、開発コストを下げることができる。
【０００５】
ＭＤＤＩはシリアル転送プロトコルであり、従って、ＭＤＤＩリンク上の伝送のためにパラレルに受信したデータはシリアル化される必要がある。したがって、要求されることは、ＭＤＤＩリンク制御器に組み込み可能な、ＭＤＤＩの高速データレートをサポートするシリアル符号器である。
【発明の概要】
【０００６】
本発明の１つの態様において、ＭＤＤＩ用の２倍データレートのシリアル符号器が提供される。シリアル符号器は、複数の入力、マルチプレクサの入力に接続された複数のラッチ、ラッチをデータ入力更新可能とするためのエネーブラ、およびマルチプレクサの複数の入力の１つを出力用に選択するためのカウンタとを含む。
【０００７】
本発明の他の態様において、マルチプレクサは入力遷移の期間にグリッチのない出力を提供する。マルチプレクサはカウンタによって提供される入力選択シーケンスの先験的知識に基づいて最適化される出力選択アルゴリズムを含むかもしれない。入力選択シーケンスはグレイコードシーケンスであるかもしれない。
【０００８】
本発明のさらに他の実施例、特徴、および利点は本発明の種々の実施例の構造および動作と同様に、添付図面を参照して以下に詳細に説明される。
【図面の簡単な説明】
【０００９】
【図１】携帯機器向ディスプレイディジタルインタフェース（ＭＤＤＩ）を用いる実施例を示すブロック図。
【図１Ａ】ディジタル装置および周辺装置と結合されるディジタルデータ装置のブロックズ。
【図２】図１の実施例に基づくＭＤＤＩリンク配線を示すブロック図。
【図３】図１のＭＤＤＩホストのＭＤＤＩホストコアの内部構造を示すブロック図。
【図４】図３のＭＤＤＩホストコア内部のデータフローを示すブロック図。
【図５】本発明の実施例に基づくＭＤＤＩシリアル符号器を示すブロック図。
【図６】本発明の他の実施例に基づくＭＤＤＩシリアル符号器を示す回路図。
【図７】グレイコード入力選択シーケンスに対応するマルチプレクサ出力選択アルゴリズム。
【図８】選択用入力の遷移およびデータ入力の遷移に起因するマルチプレクサ出力で発生しうる出力グリッチの例示図。
【図９】入力クロック、選択用入力、データ入力および図６のマルチプレクサのマルチプレクサ出力に関連するタイミング図の例。
【発明を実施するための形態】
【００１０】
ここに組み込まれ、明細書の一部を形成する添付図面は、説明と共に本発明を例示し、本発明の原理を説明しかつ関連する当業者が本発明を製造、使用することを可能にすることにさらに役立つ。
【００１１】
本発明は添付図面を参照して説明されるだろう。ある要素が最初に現れる図面は、通常、対応する参照番号の一番左の数字によって示される。
【００１２】
本明細書は本発明の特徴を組み込む１つ以上の実施例を開示する。開示された実施例は本発明の単なる例である。本発明の範囲は開示された実施例に限定されない。本発明はここに添付された請求範囲で定義される。
【００１３】
説明される実施例、および明細書における「一実施例」、「実施例」、「例示の実施例」などへの参照は、説明される実施例が特定の特徴、構造、または特性を含むかもしれないがすべての実施例がその特定の特徴、構造、または特性を必ずしも含む必要がないかもしれない、ということを示す。さらに、そのような語句は必ずしも同じ実施例を参照しているというわけではない。さらに、一実施例に関して特定の特徴、構造、または特性が説明される場合、それは他の実施例に関してそのような特徴、構造、または特性を達成することが当業者の知識の範囲内であるということを、明示的に説明されるか否かにかかわらず示している。
【００１４】
本発明の実施例はハードウェア、ファームウェア、ソフトウェア、またはそれらの任意の組合せで実施されるかもしれない。また、本発明の実施例は、機械読取り可能な媒体に蓄積され、１つ以上のプロセッサによって読込まれ実行されるかもしれない命令として実施されるかもしれない。機械読取り可能な媒体は、機械（例えば計算装置）で読込み可能な形態で情報を蓄積しまたは伝送するための任意の機構を含むかもしれない。例えば、機械読取り可能な媒体は読出し専用メモリー（ＲＯＭ）、ランダムアクセスメモリー（ＲＡＭ）、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリー、電気的、光学的、音響的または他の形態の伝搬された信号（例えば搬送波、赤外信号、ディジタル信号など）、などを含むかもしれない。さらに、ファームウェア、ソフトウェア、ルーチン、命令は、一定の動作の実行として、ここに説明されるかもしれない。しかし、そのような説明は単に便宜のためであり、そのような動作は事実上、計算装置、プロセッサ、制御器、またはファームウェア、ソフトウェア、ルーチン、命令などを実行する他の装置から生ずるものであることが認識されるべきである。
【００１５】
携帯機器向ディスプレイディジタルインタフェース（ＭＤＤＩ）
携帯機器向ディスプレイディジタルインタフェース（ＭＤＤＩ）は、ホストとクライアント間の近距離通信リンク上で超高速シリアルデータ転送を可能にする費用効果的で低消費電力な転送メカニズムである。
【００１６】
以下に、ＭＤＤＩの例が携帯電話の上側のクラムシェルに収納されたカメラモジュールに関連して提示されるだろう。しかし、カメラモジュールと機能的に同等な特徴を持つ任意のモジュールが本発明の実施例において容易に置き換えられ用いられるであろうことは、関連する当業者には明らかだろう。
【００１７】
さらに、本発明の実施例に基づいて、ＭＤＤＩホストは本発明を用いることによって利益を得ることができるいくつかの形式の装置の１つを含むかもしれない。例えば、ホストはハンドヘルド、ラップトップ、または類似のモバイル計算装置の形態の携帯型計算機であるかもしれない。それは、携帯情報端末（ＰＤＡ）、ページング装置、または多くの無線電話またはモデムの１つであるかもしれない。代替的に、ホストは、携帯用ＤＶＤもしくはＣＤプレーヤなどの携帯用娯楽もしくは提示装置、またはゲーム機であるかもしれない。さらに、ホストは、ホスト装置または制御要素として、クライアントとの高速通信リンクが望まれている種々の広く用いられている他の製品、または計画中の商品の中にあるかもしれない。例えば、ホストは、ビデオ録画装置から、応答を改善するために蓄積ベースのクライアントまたは提示用の高精細大画面へ高速でデータを転送するために用いられることができるだろう。オンボード在庫管理または計算システムおよび／または他の家庭用装置とのブルートゥース接続を組み込む冷蔵庫などの器具は、インターネットまたはブルートゥース接続モードで動作している場合、より改善されたディスプレイ能力を持つことができる。または電子計算機もしくは制御システム（ホスト）は本体側のどこかにあって、ドア内ディスプレイ（クライアント）およびキーパッドまたはスキャナ（クライアント）に対する配線の要求を減少させることができる。一般に、当業者はこのインタフェースを使用することによって利益を得るかもしれない種々の新しい電子装置および器具を理解するだろう。また、新たに加えられるまたは既存のコネクタもしくはケーブルが利用できる制限された数の導線を利用して、情報をより高いデータレートで伝送することにより古い装置を改良する能力についても同様に理解するだろう。同時に、ＭＤＤＩクライアントはエンドユーザに情報を提示するか、またはユーザからホストへの情報を提示することに役立つ種々の装置を含むかもしれない。例えば、ゴーグルまたは眼鏡に組み込まれたマイクロディスプレイ、帽子またはヘルメットに組み込まれた投射装置、窓もしくはフロントガラスのような自動車に組み込まれる小型スクリーンもしくはホログラフィック部品、または種々のスピーカ、ヘッドホンまたは高品質の音響もしくは音楽を提供するための音響システム。他の提示装置は会議用または映画およびテレビジョン映像用の情報を提示するために用いられるプロジェクタまたは投射装置を含む。他の例は、ユーザの接触または音以外には実際の「入力」がほとんど無い装置またはシステムユーザから、大きな情報量を転送するために用いられるかもしれないタッチパッドまたは感知装置、音声認識装置、セキュリティスキャナ、その他を使うという例だろう。さらに、計算機と自動車用品またはデスクトップ用品とのドッキングステーションおよび無線電話用ホルダーは、エンドユーザまたは他の装置および機器とのインタフェース装置として動作するかもしれないし、またクライアント（マウスのような出力もしくは入力装置）またはホストのいずれかを用いて、特に高速ネットワークが組み込まれているところで、データ転送を支援するかもしれない。しかし、当業者は、本発明はこれらの装置に限定されず、他の多くの装置が市場にはあり、使用のために提案され、それらは蓄積および伝送、または再生における表示のいずれかに関してエンドユーザに高品質の画像および音を提供するように意図されていることを容易に理解するだろう。本発明は、所望のユーザ体験を実現するために必要である高いデータレートに対応するために、種々の部品または装置間のデータスループットを増加させることに有効である。
【００１８】
図１Ａはディジタル装置１５０および周辺装置１８０と結合されたディジタルデータ装置インタフェース１００の図である。ディジタル装置１５０は非限定的に携帯電話、携帯用情報端末、スマートフォンまたはパソコンを含む。一般的ディジタル装置１５０はディジタル命令に対する処理ユニットおよびディジタル提示データの処理として役立つ任意の形式のディジタル装置を含むことができる。ディジタル装置１５０はシステム制御器１６０およびリンク制御器１７０を含む。
【００１９】
周辺装置１８０は、非限定的に、カメラ、バーコードリーダ、イメージスキャナ、オーディオ装置、およびセンサを含むことができる。一般的周辺装置１８０はディジタル提示データが周辺装置及び処理ユニット間で交換される任意の形式のオーディオ、ビデオまたは画像取得およびディスプレイ装置を含むことができる。周辺装置１８０は制御ブロック１９０を含む。周辺装置１８０が例えばカメラの場合、制御ブロック１９０は非限定的に、レンズ制御、フラッシュまたは白色ＬＥＤ制御およびシャッタ制御装置を含むことができる。ディジタル提示データはオーディオ、画像およびマルチメディアデータを表すディジタルデータを含むことができる。
【００２０】
ディジタルデータインタフェース装置１００はディジタル提示データを通信リンク１０５上で高レートで転送する。一例において、最大帯域幅３．２Ｇｂｐｓでの双方向データ転送をサポートするＭＤＤＩ通信リンクが用いられるかもしれない。このレートの例より高いまたは低い他の高レートのデータ転送は、通信リンクに依存してサポートされることができる。ディジタルデータインタフェース装置１００はメッセージ解釈モジュール１１０、コンテンツモジュール１２０、制御モジュール１３０およびリンク制御器１４０を含む。
【００２１】
ディジタルデータインタフェース１００内にあるリンク制御器１４０、およびディジタル装置１５０内にあるリンク制御器１７０は通信リンク１０５を確立する。リンク制御器１４０およびリンク制御器１７０はＭＤＤＩリンク制御器であるかもしれない。
【００２２】
ここに全体として参照により組み込まれるビデオ電子装置規格化協会（ＶＥＳＡ）のＭＤＤＩ規格は、携帯装置に小型携帯装置からより大きな外部ディスプレイへディジタル画像を伝送させる高速ディジタルパケットインタフェースの要求事項を記述している。ＭＤＤＩは、携帯コンピューティング、通信および娯楽用装置をウエアラブルマイクロディスプレイのような新しい製品へリンクするために都合の良いミニチュアコネクタシステムおよび薄いフレキシブルケーブルを適用する。また、それは、これらの接続のコストを低下させ信頼性を向上させるために、ホストプロセッサとディスプレイ装置間の接続を簡素化する方法に関する情報を含む。リンク制御器１４０および１７０はＶＥＳＡ  ＭＤＤＩ規格に基づく通信パス１０５を確立する。
【００２３】
２００４年７月６日にＺｏｕ他に交付された米国特許番号６，７６０，７７２（’７７２特許）名称「Generating and Implementing a Communication Protocol and Interface for High Data Rate Signal Transfer（高データレートの信号転送のための通信プロトコルおよびインタフェースの生成および実施）」は、提示データ用に通信プロトコルを形成するために共にリンクされたパケット構造を用いて通信パス上のホストとクライアント間のディジタルデータ転送用のデータインタフェースを記述している。’７７２特許に教示される発明の実施例はＭＤＤＩインタフェースに向けられている。信号プロトコルは、リンク制御器１４０および１７０のようなリンク制御器によって用いられるものであって、リンク制御器は例えば通信プロトコルを形成するパケットを生成し、送信しおよび受信するように構成され、またディジタルデータを１つ以上の形式のデータパケットに形成するように構成され、少なくとも１つはホスト装置にあり、通信パス１０５のような通信パスを通じてクライアントと接続されるような制御器である。
【００２４】
本インタフェースは、近距離「シリアル」形式のデータリンク上で費用効果的で、低電力、双方向の高速データ転送メカニズムを提供する。これはミニチュアコネクタおよび薄いフレキシブルケーブルによる実施に役立つ。リンク制御器１４０および１７０の実施例は’７７２特許の教示に基づく通信パス１０５を確立する。’７７２特許は参照によりここに全体として組み込まれる。
【００２５】
他の実施例において、リンク制御器１４０および１７０はともにＵＳＢリンク制御器であるかもしれない。またはそれら双方共、例えば、ＭＤＤＩリンク制御器と例えばＵＳＢリンク制御器のような他の形式のリンク制御器の組合せを含むことができる。代替的に、リンク制御器１４０および１７０は、ＭＤＤＩリンク制御器のような制御器と、ディジタルデータインタフェース装置１００とディジタル装置１５０間の肯定応答メッセージを交換するための単一リンクの組合せを含むことができる。リンク制御器１４０および１７０は、さらにイーサネット（登録商標）またはＲＳ−２３２シリアルポートインタフェースのような他の形式のインタフェースをサポートすることができる。追加的インタフェースは関連する当業者がここでの教示に基づいて分かるようにサポートされるかもしれない。
【００２６】
ディジタルデータインタフェース装置１００内において、メッセージ解釈モジュール１１０はシステム制御器１６０との通信リンク１０５から命令を受信し、同通信リンク１０５を介する応答メッセージを生成し、命令メッセージを解釈し、命令の情報内容をディジタルデータインタフェース装置１００内の適切なモジュールへ送る。
【００２７】
コンテンツモジュール１２０は周辺装置１８０からデータを受信し、データを蓄積し、およびデータを通信リンク１０５を通じてシステム制御器１６０へ転送する。
【００２８】
制御モジュール１３０はメッセージ解釈器１１０から情報を受信し、情報を周辺装置１８０の制御ブロック１９０へ送る。また、制御モジュール１３０は制御ブロック１９０から情報を受信し、その情報をメッセージ解釈器タモジュール１１０に送ることができる。
【００２９】
図１はＭＤＤＩインタフェースを用いた環境例を示すブロック図である。図１の例において、ＭＤＤＩは、クラムシェル電話機１００のヒンジを横切ってモジュールを内部接続するために用いられる。本発明の特定の実施例がクラムシェル電話機におけるＭＤＤＩ配線のような特定の例に関連して説明されるが、これは単に例示目的になされ、本発明はそのような実施例に限定するように用いられるべきではないことを、ここで注意しなければならない。ここの教示に基づいて関連当業者に理解されるように、本発明の実施例はＭＤＤＩ配線を有することによって利益を得るかもしれないどのようなものも含む他の装置において用いられるかもしれない。
【００３０】
図１を参照して、クラムシェル電話機１００の下側のクラムシェル部１０２は移動局モデム（ＭＳＭ）ベースバンドチップ１０４を含む。ＭＳＭ１０４はディジタルベースバンド制御器である。クラムシェル電話機１００の上側のクラムシェル部１１４は液晶ディスプレイ（ＬＣＤ）モジュール１１６およびカメラモジュール１１８を含む。
【００３１】
さらに図１を参照して、ＭＤＤＩリンク１１０はカメラモジュール１１８をＭＳＭ１０４に接続する。通常、ＭＤＤＩリンク制御器はカメラモジュール１１８およびＭＳＭ１０４各々に組み込まれる。図１の例において、ＭＤＤＩホスト１２２はカメラモジュール１１２に組み込まれ、一方ＭＤＤＩクライアント１０６はＭＤＤＩリンク１１０のＭＳＭ側にある。ＭＤＤＩホストは通常、ＭＤＤＩリンクの主制御器である。図１の例において、カメラモジュール１１８からの画素データは、ＭＤＤＩホスト１２２によって受信され、ＭＤＤＩリンク１１０で伝送する前に、ＭＤＤＩパケットにフォーマットされる。ＭＤＤＩクライアント１０６は、ＭＤＤＩパケットを受信し、それらをカメラモジュール１１８で生成されたと同じフォーマットの画素データへ再変換する。次に画素データは処理のためにＭＳＭ１０４内の適切なブロックへ送られる。
【００３２】
さらに図１を参照して、ＭＤＤＩリンク１１２はＬＣＤモジュール１１６をＭＳＭ１０４に接続する。図１の例において、ＭＤＤＩリンク１１２はＭＳＭ１０４に組み込まれたＭＤＤＩホスト１０８とＬＣＤモジュール１１６に組み込まれたＭＤＤＩクライアント１２０とを接続する。図１の例において、ＭＳＭ１０４のグラフィックス制御器によって生成されたディスプレイデータは、ＭＤＤＩリンク１１２上で伝送される前にＭＤＤＩホスト１０８によって受信されＭＤＤＩパケットへフォーマットされる。ＭＤＤＩクライアント１２０はＭＤＤＩパケットを受信し、ＬＣＤモジュール１１６で使用するためにそれらをディスプレイデータに再変換する。
【００３３】
図２は図１の例に基づくＭＤＤＩリンク配線１１０を示すブロック図である。上で説明されるように、ＭＤＤＩリンク１１０の機能の１つはカメラモジュール１１８からＭＳＭ１０４まで画素データを転送することである。従って、図２の実施例において、フレームインタフェース２０６はＭＤＤＩホスト１２２へカメラモジュール１１８を接続する。フレームインタフェース２０６は画素データをカメラモジュール１１８からＭＤＤＩホスト１２２へ転送するために用いられる。
【００３４】
通常、カメラモジュール１１８はカメラからパラレルインタフェースを通じて画素データを受信し、画素データを格納し、次に、それをＭＤＤＩホスト１１２へ、ホストの準備ができていれば、転送する。ＭＤＤＩホスト１２２は受信画素データをＭＤＤＩパケットにカプセル化する。しかし、ＭＤＤＩホスト１２２が画素データをＭＤＤＩリンク１１０上で伝送できるためには、ＭＤＤＩパケットのシリアル化が必要である。
【００３５】
図２の実施例において、ＭＤＤＩホスト１２２に組み込まれたシリアル化モジュール２０２はＭＤＤＩリンク１１０上でＭＤＤＩパケットをシリアルに変換出力することに役立つ。ＭＤＤＩリンク１１０のＭＳＭ端において、ＭＤＤＩクライアント１０６に組み込まれた逆シリアル化モジュール２０４はＭＤＤＩリンク１１０上で受信されたシリアルデータからＭＤＤＩパケットを再構築する。次にＭＤＤＩクライアント１０６は、ＭＤＤＩカプセル化を除去しパラレル画素データをフレームインタフェース２０８を通じてＭＳＭ１０４の適切なブロックへ転送する。
【００３６】
ＭＤＤＩホストコアアーキテクチャ
ＭＤＤＩホストコアはＶＥＳＡ（ビデオ電子装置規格化協会）によって定義されるＭＤＤＩ仕様のホスト側のハードウェア実施を提供する。ＭＤＤＩホストコアはＭＤＤＩホストプロセッサと、ＭＤＤＩ仕様で指定されるように動作する外部接続との双方に接合する。
【００３７】
図３はＭＤＤＩホスト１２２のＭＤＤＩホストコア３００の内部アーキテクチャを示すブロック図である。ＭＤＤＩホストコア３００はコマンドプロセサ（ＣＭＤ）ブロック３０２、マイクロプロセッサインタフェース（ＭＩＮＴ）ブロック３０４、レジスタ（ＲＥＧ）ブロック３０６、ＭＤＤＩパケットビルダ（ＭＰＢ）ブロック３０８、直接アクセスメモリー（ＤＡＭ）インタフェース（ＤＩＮＴ）ブロック３１０、データ入力／出力（ＤＩＯ）ブロック３１２、およびＤＩＯ  ＰＡＤブロック３１４を含む。ＭＤＤＩホストコア３００の各ブロックの機能は、図３を参照して以下に説明される。
【００３８】
ＣＭＤブロック３０２はＭＤＤＩホストプロセッサによって発せられた命令の処理に責任を持つ。ホストプロセッサによって発せられた命令は、ＭＤＤＩリンクの電力を上下することおよび一定のＭＤＤＩパケットを発生させることのようなタスクを含む。
【００３９】
ＭＩＮＴブロック３０４はＭＤＤＩホストプロセッサとの接合に責任を持つ。ＭＤＤＩホストプロセッサは、ＭＩＮＴブロック３０４を用いて、レジスタを設定し、レジスタを読込み、ＭＤＤＩホストコア３００に命令を発する。ＭＩＮＴブロック３０４はプロセッサ命令をＣＭＤブロック３０２へ通過させ、レジスタ読込／書込命令をＲＥＧブロック３０６へ通過させる。
【００４０】
ＲＥＧブロック３０６はＭＤＤＩリンクを通るデータ伝送に必要な種々のレジスタを格納する。ＲＥＧブロック３０６のレジスタはＭＤＤＩホストコア３００の構成と同様にＭＤＤＩリンクの挙動を制御する。
【００４１】
ＭＰＢブロック３０８は伝送の順序を決定することと同様に、ＭＤＤＩリンク上で伝送されるべきＭＤＤＩパケットの生成に責任を持つ。ＭＤＤＩパケットは内部のレジスタ値、およびＤＩＮＴブロック３１０で検索されたデータから生成される。
【００４２】
ＤＩＮＴブロック３１０はＭＤＤＩホスト１２２のＤＭＡバスへの接合に責任を持つ。ＤＩＮＴブロック３１０はＭＤＤＩホスト１２２の外部ＳＤＲＡＭメモリーに対してＭＰＢブロック３０８に対するデータをバッファリングするようにバースト要求を発する。さらに、ＤＩＮＴブロック３１０はＭＤＤＩリンク上のパケット伝送の順序決定の際にＭＰＢブロック３０８を支援する。
【００４３】
ＤＩＯブロック３１２は物理ＭＤＤＩリンクの管理に責任を持つ。ＤＩＯブロック３１２はホスト-クライアントハンドシェイキング、データ出力、およびラウンドトリップ遅延測定に責任を持つ。ＤＩＯブロック３１２はＭＰＢブロック３０８からデータを受信し、変換するためにそれをＤＩＯ  ＰＡＤブロック３１４へ通過させる。
【００４４】
ＤＩＯ  ＰＡＤブロック３１４は、ＤＩＯブロック３１２からパラレルデータを受信し、それをシリアルに変換してＭＤＤＩリンクへ出力する。本質的には、ＤＩＯ  ＰＡＤブロック３１４はＭＤＤＩリンク上の伝送に必要なデータシリアル化に責任を持つ。図３に示すように、ＤＩＯ  ＰＡＤブロック３１４は、ＭＤＤＩホストからＭＤＤＩ入力／出力クロック信号（ＭＤＤＩ＿ＩＯ＿ＣＬＫ）を受信し、ＭＤＤＩデータ出力（ＭＤＤＩ＿ＤＯＵＴ）およびＭＤＤＩストローブ出力（ＭＤＤＩ＿ＳＴＢ＿ＯＵＴ）信号を出力する。一例において、ＤＩＯ  ＰＡＤブロック３１４はＭＤＤＩ入力／出力クロックレートの２倍でデータを変換する。
【００４５】
図４はＭＤＤＩホストコア３００の中からデータフローを示すブロック図である。図の簡単さのために、ＭＤＤＩホストコア３００の一定のブロックが省略されている。
【００４６】
通常、ＭＤＤＩリンク始動の際、出力データはホスト-クライアントハンドシェイキングのためにＤＩＯブロック３１２内ですべて生成される。ハンドシェイクキングシーケンスがいったん完了すると、ＭＰＢブロック３０８は３つの信号源から受信するデータの出力フローを送ることができる。ＭＰＢブロック３０８のサブブロックであるＭＰＢ＿ＡＵＴＯＧＥＮブロック４０２はＭＰＢブロック３０８の中で内部的にパケットを生成する。ＭＰＢ＿ＡＵＴＯＧＥＮブロック４０２からのデータは８ビットのパラレルバス上で受信される。そのようなパケットは例えば充填パケット、ラウンドトリップ遅延測定値、およびリンク停止パケットを含む。
【００４７】
ＭＤＤＩホストコア３００のＤＩＮＴブロック３１０はＭＤＤＩホスト１２２の外部ＳＤＲＡＭメモリーから受信するパケットをＭＰＢブロック３０８へ送る。ＤＩＮＴブロック３１０はデータをＭＰＢブロック３０８へ送るために４個の３２ビットパラレルバスを用いる。ＭＰＢブロック３０８のサブブロックであるＭＤＤＩデータパケット（ＭＤＰ）インタフェース（ＭＤＰＩＮＴ）ブロック４０４は、ＭＤＤＩホストコアの外部のＭＤＰブロックと接合し、通常は伝送用ビデオデータパケットを受信する。ＭＤＰＩＮＴブロック４０４は、８ビットパラレルバスを用いてＭＰＢブロック３０８と接合する。
【００４８】
ＭＰＢブロック３０８は、ＤＩＮＴブロック３１０、ＭＰＢ＿ＡＵＴＯＧＥＮブロック４０２、およびＭＤＰＩＮＴブロック４０４から受信したパケットの送信順序を決定する。ＭＰＢブロック３０８は次に８ビットパラレルバス上でＤＩＯブロック３１２へ送信用データを送る。次に、ＤＩＯブロック３１２は８ビットパラレルバス上でＤＩＯ  ＰＡＤブロック３１４へデータを転送する。ＤＩＯ  ＰＡＤブロック３１４はＭＤＤＩリンクで送信するためにＤＩＯから受信したデータをシリアル化する。本発明に基づくＤＩＯ  ＰＡＤブロック３１４の実施例は以下でさらに検討される。
【００４９】
ＭＤＤＩシリアル符号器
基本的には、ＤＩＯ  ＰＡＤブロック３１４はＭＤＤＩのためのシリアル符号器を含む。図５は本発明の実施例に基づくＭＤＤＩシリアル符号器５００を示すブロック図である。
【００５０】
ＭＤＤＩシリアル符号器５００はラッチ５０２のブロック、エネーブラブロック５０４、カウンタブロック５０６、およびマルチプレクサ５０８を含む。パラレルデータインタフェースはパラレルデータストリーム５１８をシリアル符号器５００に出力する。パラレルデータストリームはラッチ５０２で受信され格納される。カウンタ５０６は、マルチプレクサ５０８の出力を制御するために入力選択シーケンスを出力する。図５の実施例において、カウンタ５０６は、マルチプレクサ５０８の出力を選択するために１セットの選択用信号５１２を周期的にマルチプレクサ５０８に提供する。
【００５１】
選択用信号５１２のセットから得られた信号を用いて、エネーブラ５０４は、ラッチ５０２がデータ入力を更新するのを可能とするために１セットの信号５１４をラッチ５０２に提供する。１セットの信号５１０はラッチ５０２をマルチプレクサ５０８の入力と結合する。従って、ラッチ５０２のデータの入力およびマルチプレクサ５０８の入力はカウンタ５０６によって生成される入力選択シーケンスに従って更新される。
【００５２】
マルチプレクサ５０８はＭＤＤＩリンクにシリアルデータストリーム５２０を出力する。一例において、マルチプレクサ５０８はＮ入力および１出力を有するＮ：１マルチプレクサである。ここでＮは２の整数乗である。
【００５３】
図６は本発明の他の実施例に基づくＭＤＤＩシリアル符号器６００を示す回路図である。図６の実施例において、ＭＤＤＩシリアル符号器６００はラッチの第１の層６０２、ラッチの第２の層６０４、マルチプレクサ６０６、カウンタ６０８、およびエネーブラ６１０を含む。
【００５４】
ラッチの第１の層６０２はラッチの第１および第２のセット６１２および６１４を含む。同様に、ラッチの第２の層６０４はラッチの第１および第２のセット６１６および６１８を含む。ラッチの第１の層６０２のラッチの第１および第２のセット６１２および６１４は、それぞれラッチの第２の層６０４の第１および第２のセット６１６および６１８と結合される。ラッチの各セット６１２、６１４、６１６、および６１８は４個のＤ−ラッチのセットを含む。入力クロック信号６４０は、ラッチの第１および第２の層６０２および６０４にあるＤ−ラッチの各々のクロック入力に結合される。
【００５５】
マルチプレクサ６０６はラッチの第２の層６０４の出力と結合した複数のデータ入力を有する。さらに、マルチプレクサ６０６はカウンタ６０８によって提供される１セットの選択用入力を含む。通常、マルチプレクサは２Ｎ個のデータ入力を有する。ここでＮは選択用入力の数である。図６の実施例において、マルチプレクサ６０６は８個のデータ入力と３個の選択用入力ｂ０、ｂ１、およびｂ２を有する。
【００５６】
カウンタ６０８は複数のＤ−ラッチを含む。図６の実施例において、カウンタ６０８は３個のＤ−ラッチ６２０、６２２、および６２４のセットを含む。クロック信号６４０は、カウンタ６０８への入力を提供する。Ｄ−ラッチ６２０、６２２、および６２４の出力は、マルチプレクサ６０６の選択用入力ｂ０、ｂ１、およびｂ２にそれぞれ対応する。さらに、Ｄ−ラッチ６２０および６２４の出力はエネーブラ６１０の入力である。入力クロック信号６４０はカウンタ６０８を駆動する。
【００５７】
エネーブラ６１０は、複数のＡＮＤゲートを含む。図６の実施例において、エネーブラ６１０は３個のＡＮＤゲート６２６、６２８、および６３０を含む。ＡＮＤゲート６２６、６２８、および６３０への入力は、カウンタ６０８のＤ−ラッチ６２０および６２４の出力から得られる。ＡＮＤゲート６２６、６２８、および６３０の出力はそれぞれラッチの第２のセット６１８、ラッチの第１のセット６１６、並びにラッチの第１および第２のセット６１２および６１４に結合される。
【００５８】
ＭＤＤＩシリアル符号器６００の動作は以下に説明される。
【００５９】
シリアル符号器６００が始動直後であると仮定して、入力クロック信号６４０の最初の立ち上がりエッジにおいて、カウンタ６０８は｛ｂ２，ｂ１，ｂ０｝＝｛０，０，１｝を出力する。｛ｂ２，ｂ１，ｂ０｝のこの値に対して、エネーブラ６１０のＡＮＤゲート６２８および６３０の出力は真であり、その結果、ラッチの第１の層６０２のラッチの第１および第２のセット６１２および６１４の入力は、ラッチの第２の層６０４のラッチの第１のセット６１６の入力と同様に、更新され得る。さらに、クロック信号６４０が立ち上がりエッジにあるとすれば、ラッチの第１および第２のセット６１２および６１４の出力はそれらの対応する入力に従う。同様に、ラッチの第２の層６０４のラッチの第１のセット６１６の出力はそれらの対応する入力を反映する。しかし、ラッチの第２の層６０４のラッチの第２のセット６１８の入力は変更が無くそのままである。マルチプレクサ６０６は出力のために入力選択値００１に対応する入力を選択する。
【００６０】
入力クロック信号６４０の次の立ち下がりエッジにおいて、カウンタ６０８は｛ｂ２，ｂ１，ｂ０｝＝｛０，１，１｝を出力する。｛ｂ２，ｂ０｝＝｛０，１｝であるとすれば、ラッチの第１および第２のセット６１２および６１４は更新され得る。しかし、入力クロック信号６４０は立ち下がりエッジにあるため、ラッチ６１２および６１４の出力は更新された入力をまだ反映していないだろう。言い換えれば、ラッチ６１２および６１４の出力は同じままに止まるだろう。その結果、ラッチ６１６の入力も同じままに止まるだろう。マルチプレクサ６０６は出力用に入力選択価値０１１に対応する入力を選択する。
【００６１】
入力クロック信号６４０の次の２つの立ち上がりおよび立ち下がりエッジにおいて、カウンタ６０８はそれぞれ｛ｂ２，ｂ１，ｂ０｝＝｛０，１，０｝および｛ｂ２，ｂ１，ｂ０｝＝｛１，１，０｝を出力する。ラッチのいずれのセットの入力または出力にも変化は起きない。
【００６２】
入力クロック信号６４０の次の立ち上がりエッジにおいて、カウンタ６０８は｛ｂ２，ｂ１，ｂ０｝＝｛１，１，１｝を出力する。｛ｂ２，ｂ０｝＝｛１，１｝に対して、エネーブラ６１０のＡＮＤゲート６２６の出力は真であり、その結果、ラッチの第２の層６０４のラッチの第２のセット６１８の入力が更新される。さらに、入力クロック信号６４０が立ち上がりエッジにあるとすれば、ラッチ６１８の出力はそれらの対応する入力に従う。マルチプレクサ６０６は出力のために入力選択値１１１に対応する入力を選択する。
【００６３】
次の３つの立ち上がりおよび立ち下がりクロックエッジに対して、カウンタはシーケンス｛ｂ２，ｂ１，ｂ０｝＝｛１０１，１００，０００｝により遷移する。ラッチのすべてのセット６１２、６１４、６１６、および６１８の入力と出力はこれらの遷移中、同じままに止まる。次に、入力選択のシーケンスは｛ｂ２，ｂ１，ｂ０｝＝｛０，０，１｝に戻り、上で説明したサイクルが再び始まる。
【００６４】
ＭＤＤＩのシリアル符号器６００の動作の上記説明によれば、カウンタ６０８は入力クロック信号６４０の立ち上がりまたは立ち下がりエッジのいずれかで遷移し、マルチプレクサ６０６が入力クロック信号６４０のエッジ毎に１ビットを出力することが指摘される。従って、ＭＤＤＩのシリアル符号器６００は２倍のデータレートの符号器である。さらに、入力選択シーケンス｛ｂ２，ｂ１，ｂ０｝はカウンタ遷移の度に１ビットだけ変化する信号を有している。従って、カウンタ６０８によって出力された入力選択シーケンスはグレイコードシーケンスを表す。
【００６５】
図７は図６の実施例のグレイコード入力選択シーケンスに対応するマルチプレクサ出力シーケンスを示す。図７のマルチプレクサ出力シーケンスに基づいて、マルチプレクサ６０６は、出力のために、ラッチの第２のセット６１８に結合された入力を入力選択シーケンスの前半の期間に、およびラッチの第１のセット６１６に結合された入力を入力選択シーケンスの後半の期間に順次選択することが指摘される。
【００６６】
一方、エネーブラ６１０はラッチの第１のセット６１６を入力選択シーケンスの前半の期間に、およびラッチの第２セット６１８を入力選択シーケンスの後半に更新することを可能とする。従って、ラッチの第１および第２のセット６１６および６１８は、それらが出力用にマルチプレクサ６０６によって選択されていない時に更新される。
【００６７】
グリッチの無い出力
本発明により、ＭＤＤＩシリアル符号器６００のマルチプレクサ６０６は入力選択遷移期間にグリッチのない出力を提供する。図８に、選択された入力および／またはデータ入力における遷移に起因して、マルチプレクサの出力において起こりうる出力グリッチの例を示す。
【００６８】
図８の例において、マルチプレクサ８０２は４個のデータ入力Ｄ０、Ｄ１、Ｄ２、Ｄ３、および２個の選択用入力Ｓ０およびＳ１を有する。第１の出力グリッチ８０４はマルチプレクサの選択用入力における遷移に起因する。この例において、入力選択シーケンス｛Ｓ１，Ｓ０｝はマルチプレクサ出力をＤ０からＤ３へ変化させるために｛０，０｝から｛１，１｝へ遷移する。しかし、Ｓ０およびＳ１の「０から１」遷移間のスキュー遅延のために、入力選択シーケンス｛Ｓ１，Ｓ０｝は、少しの間値｛０，１｝を取り、これによりデータ入力Ｄ１が不正確に選択される。遷移の間を通じて出力が「１」に止まるべき場合は、マルチプレクサ８０２の出力において「０」グリッチが現れる。
【００６９】
通常、グリッチ８０４の形式のグリッチは、１より多い選択用入力が入力選択遷移の期間に値を変えるときはいつも、マルチプレクサの出力で発生するかもしれない。従って、ＭＤＤＩシリアル符号器６００のマルチプレクサ６０６の出力における前述のグリッチの発生を防ぐために、本発明の実施例はグレイコードの入力選択シーケンスを採用する。
【００７０】
図８の８０６で示される他の形式の出力グリッチはマルチプレクサのデータ入力における遷移に起因して発生する。図８の例において、入力選択サイクルにおいて、入力選択シーケンス｛Ｓ１，Ｓ０｝は｛０，０｝から｛０，１｝に遷移する。しかし、選択用信号Ｓ１，Ｓ０およびデータ信号Ｄ０の間のタイミングスキューにより、データ信号Ｄ０は選択期間が終る前に値を変える。遷移の間を通じて出力が「１」に止まるべき場合は、マルチプレクサ８０２の出力において「０」グリッチが現れる。ＭＤＤＩシリアル符号器６００のマルチプレクサ６０６の出力における前述のグリッチを防ぐために、本発明の実施例はマルチプレクサへのデータ入力が使用される前の１クロックサイクル安定したままであることを確実にする。これは、マルチプレクサの選択用入力から出力までの経路を遅延整合することによりなされる。
【００７１】
図８に示した２つの形式のマルチプレクサ出力グリッチに加えて、さらに他の形式の出力グリッチがマルチプレクサの出力において発生しうる。通常マルチプレクサ自体内の内部信号間のタイミング不均衡によって引き起こされるこの形式のグリッチにより、入力遷移の期間はマルチプレクサは入力の選択ができない。従って、入力遷移が双方とも値「１」を有するデータ入力の間にあるときはいつもこの形式のグリッチがマルチプレクサの出力において見られるかもしれない。そのようなグリッチを防ぐために、ＭＤＤＩシリアル符号器６００のマルチプレクサ６０６の出力は、遷移の時間に双方が値「１」を有するデータ入力間の任意の入力遷移の間中「１」に止まるように設計される。
【００７２】
最適化された出力選択アルゴリズム
ＭＤＤＩシリアル符号器６００のマルチプレクサ６０６の出力は以下の出力選択アルゴリズムにより管理される。
【００７３】
マルチプレクサ出力＝
(sn(2) AND sn(1) AND sn(0) AND d(0)) OR (sn(2) AND sn(1) AND s(0) AND d(1)) OR (sn(2) AND s(1) AND sn(0) AND d(2)) OR (sn(2) AND s(1) AND s(0) AND d(3)) OR
(s(2) AND sn(1) AND sn(0) AND d(4)) OR (s(2) AND sn(1) AND s(0) AND d(5)) OR
(s(2) AND s(I) AND sn(0) AND d(6)) OR (s(2) AND s(1) AND s(0) AND d(7)) OR
(sn(2) AND sn(1) AND d(1) AND d(0)) OR (sn(1) AND sn(0) AND d(4) AND d(0)) OR
(sn(2) AND s(0) AND d(3) AND d(1)) OR (sn(2) AND s(1) AND d(3) AND d(2)) OR
(s(2) AND sn(1) AND d(5) AND d(4)) OR (s(1) AND sn(0) AND d(6) AND d(2)) OR
(s(2) AND s(0) AND d(7) AND d(5)) OR (s(2) AND s(1) AND d(7) AND d(6))。
【００７４】
ここで、ｓ（ｎ）はマルチプレクサのｎ番目の選択用入力を表し、ｓｎ（ｎ）はｓ（ｎ）の否定を表し、ｄ（ｋ）はマルチプレクサのｋ番目のデータ入力の値を表す。例えば、図７のグレイコード入力選択シーケンスの場合において、上式のデータ入力ｄ（０）、ｄ（１）、…、ｄ（７）はそれぞれＤ７，Ｄ０，Ｄ２、Ｄ１，Ｄ６，Ｄ５，Ｄ３およびＤ４に対応する。
【００７５】
関連の当業者に明らかなように、上式の最初の８項はマルチプレクサの出力を選択することに関わる。最後の８項は、上述したように内部のマルチプレクサグリッチが入力の遷移の間現れないことを確実にする。さらに、安定したマルチプレクサ入力を有し、グレイコード入力選択シーケンスを用いることは、上述したように他の２つの形式の出力グリッチが起こらないことを保証する。
【００７６】
上の出力選択アルゴリズムはマルチプレクサの入力選択シーケンスに関する先験的な知識に基づいて最適化される。言い換えれば、入力選択シーケンスが与えられると、出力選択アルゴリズムは、入力選択シーケンスに従って入力遷移に対してのみグリッチの無いマルチプレクサ出力を出力するように設計される。従って、出力選択アルゴリズムは、入力選択シーケンスの中に無い入力遷移に対して、グリッチの無い出力を提供するということとは関係がない。本発明のこの設計上の選択は上述の出力選択アルゴリズムにおける項数を必要最小限まで減少させる。その結果、マルチプレクサの物理的な大きさも減少する。
【００７７】
タイミング図の例
図９は、マルチプレクサ６０６の入力クロック、選択用入力、データ入力、およびマルチプレクサ出力に関連するタイミング図の例である。図９の例において、入力選択シーケンス｛Ｓ２，Ｓ１，Ｓ０｝は図７に示したグレイコード入力選択シーケンスに従っている。
【００７８】
図９から、入力選択シーケンス｛Ｓ２，Ｓ１，Ｓ０｝は入力クロックの立ち上がりおよび立ち下がりエッジ毎に遷移し、遷移毎に１つの選択用入力が変化することが指摘される。マルチプレクサ出力は、グリッチが無く、入力クロックの４サイクル毎にデータバイトを出力する。データビットＤ０，…，Ｄ７は例示的目的にのみ用いられ、実施における実際のシーケンスに必ずしも対応していない代表的シーケンスである。
【００７９】
結論
本発明の種々の実施例が上で説明されたが、それらが限定ではなく例としてのみ述べられことが理解されるべきである。本発明の精神および範囲から逸脱することなく種々の変更が形態および詳細において可能であることは当業者に明らかであろう。したがって、本発明の広さと範囲は上で説明された代表的な実施例のいずれによっても限定されるべきでなく、以下の請求範囲およびそれら等価物に従ってのみ定義されるべきである。
以下に本件出願当初の特許請求の範囲に記載された発明を付記する。
［１］  複数の入力を有するマルチプレクサと、
複数のデータ入力を有し、前記マルチプレクサの前記複数の入力に結合された複数のラッチと、
前記複数のラッチに結合され、前記複数のラッチがそれらのデータ入力を更新することを可能にするエネーブラと、
前記マルチプレクサに結合され、出力用に前記マルチプレクサの前記複数の入力のうちの１つを選択するカウンタと、
を含む２倍データレートのシリアル符号器。
［２］  前記マルチプレクサは、Ｎ入力および１出力を有するＮ：１マルチプレクサであり、ここでＮは２の整数累乗である、［１］の符号器。
［３］  前記マルチプレクサが８入力を有する［１］の符号器。
［４］  前記マルチプレクサは、選択入力の遷移中にグリッチのない出力を提供する［１］の符号器。
［５］  前記カウンタは、前記マルチプレクサにグレイコードシーケンスに従う入力選択値を提供する［１］の符号器。
［６］  前記マルチプレクサは、前記グレイコードシーケンスの先験的知識に基づいて最適化された出力選択アルゴリズムを含む［５］の符号器。
［７］  前記出力選択アルゴリズムは、前記グレイコードシーケンスに従った入力遷移の間のみグリッチの無い出力を提供し、それによって前記マルチプレクサのサイズを縮小する［６］の符号器。
［８］  ｓ（ｎ）が入力選択値のビットを表し、ｓｎ（ｎ）がｓ（ｎ）の否定を表し、ｄ（ｋ）が前記マルチプレクサの入力のビットを表すとして、前記出力選択アルゴリズムは、以下の式
出力＝
(sn(2) AND sn(1) AND sn(0) AND d(0)) OR (sn(2) AND sn(1) AND s(0) AND d(1)) OR (sn(2) AND s(1) AND sn(0) AND d(2)) OR (sn(2) AND s(1) AND s(0) AND d(3)) OR
(s(2) AND sn(1) AND sn(0) AND d(4)) OR (s(2) AND sn(1) AND s(0) AND d(5)) OR
(s(2) AND s(I) AND sn(0) AND d(6)) OR (s(2) AND s(1) AND s(0) AND d(7)) OR
(sn(2) AND sn(1) AND d(1) AND d(0)) OR (sn(1) AND sn(0) AND d(4) AND d(0)) OR
(sn(2) AND s(0) AND d(3) AND d(1)) OR (sn(2) AND s(1) AND d(3) AND d(2)) OR
(s(2) AND sn(1) AND d(5) AND d(4)) OR (s(1) AND sn(0) AND d(6) AND d(2)) OR
(s(2) AND s(0) AND d(7) AND d(5)) OR (s(2) AND s(1) AND d(7) AND d(6))
に従って前記マルチプレクサ出力を選択する［７］の符号器。
［９］  前記カウンタは、入力クロックの立ち上がりまたは立ち下がりのいずれかのエッジで遷移する［１］の符号器。
［１０］  前記マルチプレクサは、前記入力クロックのエッジ毎に１ビットを出力する［９］の符号器。
［１１］  前記複数のラッチのうちの１つのサブセットが前記マルチプレクサによって出力用に選択されている間、前記複数のラッチのうちの別の１つのサブセットのみが更新される［１］の符号器。
［１２］  前記エネーブラは、前記カウンタで生成される前記入力選択値に基づいて前記複数のラッチを動作可能にする［５］の符号器。
［１３］  前記符号器は、パラレル入力データを受信し、それをシリアル通信リンクにシリアルに出力する［１］の符号器。
［１４］  前記シリアル通信リンクは、携帯機器向ディスプレイディジタルインタフェース（ＭＤＤＩ）リンクである［１］の符号器。
［１５］  複数の入力ビットを記憶する手段と、
入力選択シーケンスを生成する手段と、
前記入力選択シーケンスに従って、前記複数の入力ビットをシリアルに出力する手段と、
を含むシリアル符号器。
［１６］  前記記憶する手段内の前記複数の入力ビットを更新する手段をさらに含む［１５］のシリアル符号器。
［１７］  前記出力する手段は、前記入力選択シーケンスにおける入力遷移の間にグリッチの無い出力を提供する［１５］のシリアル符号器。
［１８］  前記入力選択シーケンスはグレイコードシーケンスである［１５］のシリアル符号器。
［１９］  前記出力する手段は、前記グレイコードシーケンスの先験的知識に基づいて最適化された出力選択アルゴリズムを含む［１８］のシリアル符号器。
［２０］  前記出力選択アルゴリズムは、前記グレイコードシーケンスに従った入力遷移の間のみグリッチの無い出力を提供する［１９］のシリアル符号器。
［２１］  前記入力遷移は、入力クロックの立ち上がりまたは立ち下がりのいずれかのエッジで発生する［１７］のシリアル符号器。
［２２］  前記シリアルに出力する手段は、前記入力クロックのエッジ毎に１ビットを出力する［２１］のシリアル符号器。
［２３］  複数の入力を有するマルチプレクサと、
複数のデータ入力を有し、前記マルチプレクサの前記複数の入力と結合された複数のラッチと、
前記複数のラッチに結合され、前記複数のラッチがそれらのデータ入力を更新することを可能とするエネーブラと、
前記マルチプレクサに結合され、出力用に前記マルチプレクサの前記複数の入力のうちの１つを選択するためのカウンタと、
を含むシステム。
【図１】
0005166617.tif 000002
【図１Ａ】
0005166617.tif 000003
【図２】
0005166617.tif 000004
【図３】
0005166617.tif 000005
【図４】
0005166617.tif 000006
【図５】
0005166617.tif 000007
【図６】
0005166617.tif 000008
【図７】
0005166617.tif 000009
【図８】
0005166617.tif 000010
【図９】
0005166617.tif 000011