説明

符号化方法、復号化方法、伝送方法、符号化装置、復号化装置及び伝送システム

【課題】クロックエンベデッドシリアルデータ伝送を可能にするとともに、簡易な構成で符号化または復号化することを可能にする。
【解決手段】本発明に係る符号化方法は、入力されるデータ列の上位4ビットまたは下位4ビットにおいて同じビット値が連続するか否か判定し(S201、S203)、連続しないと判定された場合、隣接ビットと異なるビット値である反転ビットを中間ビットに有する符号列CW1へ、データ列を変換し(S209)、連続すると判定された場合、隣接ビットと同じビット値である連続ビットを中間ビットに有するとともに、反転ビットを上位ビット列または下位ビット列に有する符号列CW2,CW3へ、前記データ列を変換するものである(S202、S204)。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、符号化方法、復号化方法、伝送方法、符号化装置、復号化装置及び伝送システムに関し、特に、隣接ビットの反転ビットや連続ビットを含む符号列を用いる符号化方法、復号化方法、伝送方法、符号化装置、復号化装置及び伝送システムに関する。
【背景技術】
【0002】
近年、様々な伝送システムにおいて、高速伝送の要求が高まっているため、パラレルデータ伝送よりも高速なデータ伝送を可能にする高速シリアルインタフェースが広く利用されている。
【0003】
例えば、液晶パネルなどの表示装置は、高精細化、多色化と共に、動画表示及び、3D表示のために、フレーム周波数の増加が進んでいる。そのため、タイミングコントローラから表示ドライバICへ転送するデータ量は、年々増加しており、タイミングコントローラと表示ドライバICに使用されるI/Fの高速化が必要とされており、多くのクロックエンベデッドシリアルデータ伝送方式が提案されている。
【0004】
一般的にクロックエンベデッドシリアルデータ伝送においては、受信部において受信した信号からクロック成分を抽出し、クロックを再生するクロック再生方式が採用されている。クロック再生方式による伝送は、同一レベルの信号が連続して受信されるとクロック成分を精度よく再生することができないため、同一レベルの信号が連続して現れないような符号化方式を採用する必要がある。
【0005】
同一レベルの信号が連続しないような符号化方式として、mBnB符号化方式が知られている。これは、ある変換テーブルに基づき、m(mは自然数)ビットの信号をn(nは自然数かつn>m)ビットの信号に符号化して伝送することによって、同一レベルの信号が連続しないようにするものである。4B5B符号化方式や、8B10B符号化方式などが広く採用されており、一例としてイーサネット(登録商標)の規格であるIEEE802.3uでも4B5B符号化方式が採用されている。
【0006】
特許文献1には、4B5B符号化の変換テーブルにおいて、なるべく変化の多いコードを採用することによって、全体のマーク率(0と1の比率)の改善と同一レベルの信号が連続して現れないようにすることが記載されている。
【0007】
特許文献2には、mBnB符号化の変換テーブルを2組用意しておき、一定周期で変換テーブルを切り替えながら伝送することによって、より同一レベルの信号が連続して現れないようにすることが記載されている。
【0008】
特許文献3には、mBnB符号化の際に、ノーリターンインバースNRZx変換を施して伝送することによって、より同一レベルの信号が連続して現れないようにすることが記載されている。
【先行技術文献】
【特許文献】
【0009】
【特許文献1】特開昭59−200561号公報
【特許文献2】特開平1−109826号公報
【特許文献3】特開2001−069181号公報
【発明の概要】
【発明が解決しようとする課題】
【0010】
上記のように、従来の伝送システムでは、クロックエンベデッドシリアルデータ伝送を行うために、mBnB符号化方式が採用されている。一方で、シリアルデータ伝送ではさらなる高速化が望まれている。
【0011】
しかしながら、クロックエンベデッドシリアルデータ伝送を可能にするためmBnB符号化方式を採用すると、mビットに対するnビットの長さによっては、符号化効率が悪化し、符号化によるオーバーヘッドが増大するため、符号化や復号化が複雑化するという問題があった。
【課題を解決するための手段】
【0012】
本発明に係る符号化方法は、入力されるデータ列の上位ビット列または下位ビット列において同じビット値が所定ビット連続するか否か判定し、前記所定ビット連続しないと判定された場合、隣接ビットと異なるビット値である反転ビットを中間ビットに有する第1符号列へ、前記データ列を変換し、前記所定ビット連続すると判定された場合、隣接ビットと同じビット値である連続ビットを前記中間ビットに有するとともに、前記反転ビットを上位ビット列または下位ビット列に有する第2符号列へ、前記データ列を変換するものである。
【0013】
本発明に係る復号化方法は、データ列を符号化した符号列の中間ビットが、隣接ビットと同じビット値の連続ビットであるか否か判定し、前記連続ビットではないと判定された場合、前記符号列の中間ビットを除くビットを有する第1復号列へ、前記符号列を変換し、前記連続ビットであると判定された場合、同じビット値が所定ビット連続した上位ビット列または下位ビット列を有する第2復号列へ、前記符号列を変換するものである。
【0014】
本発明に係る伝送方法は、入力されるデータ列の上位ビット列または下位ビット列において同じビット値が所定ビット連続するか否か判定し、前記所定ビット連続しないと判定された場合、隣接ビットと異なるビット値である反転ビットを中間ビットに有する第1符号列へ、前記データ列を変換し、前記所定ビット連続すると判定された場合、隣接ビットと同じビット値である連続ビットを前記中間ビットに有するとともに、前記反転ビットを上位ビット列または下位ビット列に有する第2符号列へ、前記データ列を変換し、前記変換した前記第1符号列または前記第2符号列を含む符号列を伝送し、前記伝送された符号列の中間ビットが、隣接ビットと同じビット値の連続ビットであるか否か判定し、前記連続ビットではないと判定された場合、前記伝送された符号列の中間ビットを除くビットを有する第1復号列へ、前記伝送された符号列を変換し、前記連続ビットであると判定された場合、同じビット値が所定ビット連続した上位ビット列または下位ビット列を有する第2復号列へ、前記伝送された符号列を変換するものである。
【0015】
本発明に係る符号化装置は、入力されるデータ列の上位ビット列または下位ビット列において同じビット値が所定ビット連続するか否か判定するビット判定部と、前記所定ビット連続しないと判定された場合、隣接ビットと異なるビット値である反転ビットを中間ビットに有する第1符号列へ、前記データ列を変換する第1変換部と、前記所定ビット連続すると判定された場合、隣接ビットと同じビット値である連続ビットを前記中間ビットに有するとともに、前記反転ビットを上位ビット列または下位ビット列に有する第2符号列へ、前記データ列を変換する第2変換部と、を備えるものである。
【0016】
本発明に係る復号化装置は、データ列を符号化した符号列の中間ビットが、隣接ビットと同じビット値の連続ビットであるか否か判定するビット判定部と、前記連続ビットではないと判定された場合、前記符号列の中間ビットを除くビットを有する第1復号列へ、前記符号列を変換する第1変換部と、前記連続ビットであると判定された場合、同じビット値が所定ビット連続した上位ビット列または下位ビット列を有する第2復号列へ、前記符号列を変換する第2変換部と、を備えるものである。
【0017】
本発明に係る伝送システムは、入力されるデータ列の上位ビット列または下位ビット列において同じビット値が所定ビット連続するか否か判定する第1ビット判定部と、前記所定ビット連続しないと判定された場合、隣接ビットと異なるビット値である反転ビットを中間ビットに有する第1符号列へ、前記データ列を変換する第1変換部と、前記所定ビット連続すると判定された場合、隣接ビットと同じビット値である連続ビットを前記中間ビットに有するとともに、前記反転ビットを上位ビット列または下位ビット列に有する第2符号列へ、前記データ列を変換する第2変換部と、前記変換した前記第1符号列または前記第2符号列を含む符号列を伝送する伝送部と、前記伝送された符号列の中間ビットが、隣接ビットと同じビット値の連続ビットであるか否か判定する第2ビット判定部と、前記連続ビットではないと判定された場合、前記伝送された符号列の中間ビットを除くビットを有する第1復号列へ、前記伝送された符号列を変換する第3変換部と、前記連続ビットであると判定された場合、同じビット値が所定ビット連続した上位ビット列または下位ビット列を有する第2復号列へ、前記伝送された符号列を変換する第4変換部と、を備えるものである。
【0018】
本発明では、反転ビットを中間ビットに有する第1符号列、連続ビットを中間ビットに有するとともに、反転ビットを上位ビット列または下位ビット列に有する第2符号列を用いることにより、クロックエンベデッドシリアルデータ伝送を可能にするとともに、簡易な構成で符号化または復号化することができる。
【発明の効果】
【0019】
本発明によれば、クロックエンベデッドシリアルデータ伝送を可能にするとともに、簡易な構成で符号化または復号化することが可能な符号化方法、復号化方法、伝送方法、符号化装置、復号化装置及び伝送システムを提供することができる。
【図面の簡単な説明】
【0020】
【図1】本発明の前提例に係る表示装置用データ伝送システムの構成を示すブロック図である。
【図2】本発明の前提例に係るエンコーダ及びデコーダの変換テーブルを示す図である。
【図3】本発明の前提例に係るクロックデータリカバリ回路の構成を示すブロック図である。
【図4】本発明の前提例のmBnB符号のオーバーヘッドを説明するための図である。
【図5】本発明の実施の形態1に係る符号設計方法を示すフローチャートである。
【図6】本発明の実施の形態1に係る符号列を説明するための図である。
【図7】本発明の実施の形態1に係る符号列を説明するための図である。
【図8】本発明の実施の形態1に係る符号列を説明するための図である。
【図9】本発明の実施の形態1に係る符号列を説明するための図である。
【図10】本発明の実施の形態1に係る符号列を説明するための図である。
【図11】本発明の実施の形態1に係る符号列を説明するための図である。
【図12】本発明の実施の形態1に係る復号列を説明するための図である。
【図13】本発明の実施の形態1に係る復号列を説明するための図である。
【図14】本発明の実施の形態1に係る復号列を説明するための図である。
【図15】本発明の実施の形態1に係る復号列を説明するための図である。
【図16】本発明の実施の形態1に係る復号列を説明するための図である。
【図17】本発明の実施の形態1に係る表示装置用データ伝送システムの構成を示すブロック図である。
【図18】本発明の実施の形態1に係る表示装置用データ伝送システムの構成を示すブロック図である。
【図19】本発明の実施の形態1に係る符号化方法を示すフローチャートである。
【図20】本発明の実施の形態1に係るエンコーダの回路イメージを示す図である。
【図21】本発明の実施の形態1に係るエンコーダの回路イメージを示す図である。
【図22】本発明の実施の形態1に係るエンコーダの回路イメージを示す図である。
【図23】本発明の実施の形態1に係るエンコーダの回路イメージを示す図である。
【図24】本発明の実施の形態1に係るエンコーダの回路イメージを示す図である。
【図25】本発明の実施の形態1に係る復号化方法を示すフローチャートである。
【図26】本発明の実施の形態1に係るデコーダの回路イメージを示す図である。
【図27】本発明の実施の形態1に係るデコーダの回路イメージを示す図である。
【図28】本発明の実施の形態1に係るデコーダの回路イメージを示す図である。
【図29】本発明の実施の形態1に係るデコーダの回路イメージを示す図である。
【図30】本発明の実施の形態1に係るデコーダの回路イメージを示す図である。
【図31】本発明の実施の形態2に係る符号化方法を示すフローチャートである。
【図32】本発明の実施の形態3に係る符号列を説明するための図である。
【図33】本発明の実施の形態3に係る符号列を説明するための図である。
【図34】本発明の実施の形態3に係る符号列を説明するための図である。
【図35】本発明の実施の形態3に係る符号列を説明するための図である。
【図36】本発明の実施の形態3に係る符号列を説明するための図である。
【図37】本発明の実施の形態3に係る復号列を説明するための図である。
【図38】本発明の実施の形態3に係る復号列を説明するための図である。
【図39】本発明の実施の形態3に係る復号列を説明するための図である。
【図40】本発明の実施の形態3に係る復号列を説明するための図である。
【図41】本発明の実施の形態3に係る復号列を説明するための図である。
【図42】本発明の実施の形態3に係る表示装置用データ伝送システムの構成を示すブロック図である。
【図43】本発明の実施の形態3に係る符号化方法を示すフローチャートである。
【図44】本発明の実施の形態3に係る復号化方法を示すフローチャートである。
【図45】本発明の実施の形態4に係る符号列を説明するための図である。
【図46】本発明の実施の形態4に係る符号列を説明するための図である。
【図47】本発明の実施の形態4に係る符号列を説明するための図である。
【図48】本発明の実施の形態4に係る符号列を説明するための図である。
【図49】本発明の実施の形態4に係る符号列を説明するための図である。
【図50】本発明の実施の形態4に係る復号列を説明するための図である。
【図51】本発明の実施の形態4に係る復号列を説明するための図である。
【図52】本発明の実施の形態4に係る復号列を説明するための図である。
【図53】本発明の実施の形態4に係る復号列を説明するための図である。
【図54】本発明の実施の形態4に係る復号列を説明するための図である。
【図55】本発明の実施の形態4に係る表示装置用データ伝送システムの構成を示すブロック図である。
【図56】本発明の実施の形態4に係る符号化方法を示すフローチャートである。
【図57】本発明の実施の形態4に係る復号化方法を示すフローチャートである。
【発明を実施するための形態】
【0021】
(本発明の前提例)
本発明の実施の形態について説明する前に、まず、本発明が適用される表示装置用データ伝送システムの前提例について説明する。
【0022】
図1は、前提例の表示装置用データ伝送システムの構成を示すブロック図である。図1に示すように、この表示装置用データ伝送システムは、データ送信側のタイミングコントローラ(Timing Controller)110、データ受信側の表示ドライバ(Display Driver)120、データ出力先の表示素子(Display Element)130を備えている。例えば、タイミングコントローラ(Timing Controller)110及びデータ受信側の表示ドライバ(Display Driver)120は、それぞれ図1において点線で囲まれた別々のICチップから構成されている。
【0023】
ここで、タイミングコントローラ110は、クロック生成回路CG、4B5BエンコーダENC1、パラレルシリアルコンバータPSCを備えている。また、表示ドライバ120は、クロックデータリカバリ(Clock Data Recovery)回路CDR、シリアルパラレルコンバータSPC、4B5BデコーダDEC1、ラッチ回路121、デジタルアナログコンバータ(DAC:Digital Analog Converter)122、出力ドライバ123を備えている。
【0024】
クロック生成回路CGは、クロックclkを生成し、4B5BエンコーダENC1及びパラレルシリアルコンバータPSCに生成したクロックclkを供給している。
【0025】
4B5BエンコーダENC1は、クロック生成回路CGから供給されたクロックclkに応じて動作する。また、4B5BエンコーダENC1は、4B5B変換テーブルを有しており、この4B5B変換テーブルを用いて、入力画像データであるパラレル送信データpdt1をパラレル送信データpdt2に符号化する。
【0026】
パラレルシリアルコンバータPSCも、クロック生成回路CGから供給されたクロックclkに応じて動作し、パラレル送信データpdt2をシリアルデータsdに変換する。このシリアルデータsdが、タイミングコントローラ110から出力され、伝送路TLを介して、表示ドライバ120に入力される。
【0027】
クロックデータリカバリ回路CDRは、受信したシリアルデータsdからリカバリクロックclkrを再生し、パラレルシリアルコンバータPSC及び4B5BデコーダDEC1にそのリカバリクロックclkrを供給している。
【0028】
シリアルパラレルコンバータSPCは、クロックデータリカバリ回路CDRから供給されたリカバリクロックclkrに応じて動作し、シリアルデータsdをパラレル受信データpdr1に変換する。
【0029】
4B5BデコーダDEC1も、クロックデータリカバリ回路CDRから供給されたリカバリクロックclkrに応じて動作する。また、4B5BデコーダDEC1は、4B5BエンコーダENC1において符号化したデータを復号化するための4B5B変換テーブルを有している。そして、4B5BデコーダDEC1は、この4B5B変換テーブルを用いて、入力されたパラレル受信データpdr1をパラレル受信データpdr2に復号化する。
【0030】
ラッチ回路121は、復号化されたパラレル受信データpdr2を一時的に保持し、所定のタイミングで、DAC122へ出力する。DAC122は、デジタル信号であるパラレル受信データpdr2をアナログ電圧信号に変換する。
【0031】
出力ドライバ123は、表示素子130においてマトリクス状に配置されたTFT(Thin Film Transistor)の複数のソース線のそれぞれに対応する複数のアンプから構成されている(不図示)。そして、出力ドライバ123の各アンプは、上記アナログ電圧信号を増幅することにより階調電圧を生成し、この階調電圧を表示素子130のソース線に出力する。
【0032】
表示素子130は、例えば液晶表示素子である。図1には図示されていないが、表示素子130は、周知の通り、マトリクス状に配置された多数の画素から構成されている。各画素は、スイッチング素子としてTFT(Thin Film Transistor)を有している。TFTは、図1の上下方向に延設された複数のソース線、図1の左右方向に延設された複数のゲート線、ソース線及びゲート線の各交差部に設けられている。
【0033】
図2(a)は、4B5BエンコーダENC1の4B5Bエンコーダテーブルを示しており、図2(b)は、4B5BデコーダDEC1の4B5Bデコーダテーブルを示している。
【0034】
図2(a)の例では、テーブルの最下段に示された4ビットの最大値4B=1111(Hex=F)には、5ビットのビットパターン5B=10101が割り当てられている。従って、4B5BエンコーダENC1は、画像データ「FFh、FFh、・・・、FFh」を、「1010110101、1010110101、・・・、1010110101」へ符号化する。図2(a)のように、4B5B符号の符号化を行うためには、16パターンの5ビットに対応するため、16×5ビットのサイズのテーブルが必要になる。
【0035】
図2(b)は、図2(a)の変換テーブル(エンコードテーブル)の逆変換テーブル(デコードテーブル)である。つまり、図2(b)の変換テーブルにより、5ビットのビットパターンのそれぞれが元の4ビットのビットパターンに復号化される。例えば、4B5BデコーダDEC1は、符号化された画像データ「1010110101、1010110101、・・・、1010110101」を、「FFh、FFh、・・・、FFh」へ復号化する。図2(b)のように、4B5B符号の復号化を行うためには、16パターンの4ビットに対応するため、16×4ビットのサイズのテーブルが必要になる。
【0036】
図3は、クロックデータリカバリ回路CDRのブロック図である。図3に示すように、クロックデータリカバリ回路CDRは、PLL(Phase Locked Loop)回路であって、周波数検出回路(Frequency Detector)FD、位相検出回路(Phase Detector)PD、周波数制御チャージポンプ(Frequency Control Charge Pump)FCP、位相制御チャージポンプPCP(Phase Control Charge Pump)、ループフィルタ(Loop Filter)LF、電圧制御発振回路(Voltage Controlled Oscillator)VCOを備えている。
【0037】
周波数検出回路FDは、タイミングコントローラから伝送されたシリアルデータsdと、リカバリクロックclkrとの周波数差を検出する。つまり、受信したシリアルデータsdからクロック周波数情報を抽出する。周波数検出回路FDでは、リカバリクロックclkrの周波数の粗調を実施する。
【0038】
リカバリクロックclkrの周波数が受信したシリアルデータsdの周波数よりも低ければ、周波数検出回路FDは、リカバリクロックclkrの周波数を上げるための信号fupを生成し、周波数制御チャージポンプFCPに出力する。リカバリクロックclkrの周波数が受信したシリアルデータsdの周波数よりも高ければ、周波数検出回路FDは、リカバリクロックclkrの周波数を下げるための信号fdnを生成し、周波数制御チャージポンプFCPに出力する。
【0039】
位相検出回路PDは、タイミングコントローラから伝送されたシリアルデータsdと、リカバリクロックclkrとの位相差を検出する。つまり、受信したシリアルデータsdからクロック位相情報を抽出する。位相検出回路PDでは、リカバリクロックclkrの周波数の微調を実施する。
【0040】
リカバリクロックclkrの位相が受信したシリアルデータsdの位相よりも遅れていれば、位相検出回路PDは、リカバリクロックclkrの位相を進めるための信号pupを生成し、位相制御チャージポンプPCPに出力する。リカバリクロックclkrの位相が受信したシリアルデータsdの位相よりも進んでいれば、位相検出回路PDは、リカバリクロックclkrの位相を遅らせるための信号pdnを生成し、位相制御チャージポンプPCPに出力する。
【0041】
周波数制御チャージポンプFCPは、入力された信号fup又は信号fdnからアナログ電流信号を生成し、ループフィルタLFに出力する。同様に、位相制御チャージポンプPCPは、入力された信号pup又は信号pdnからアナログ電流信号を生成し、ループフィルタLFに出力する。ループフィルタLFは、周波数制御チャージポンプFCP及び位相制御チャージポンプPCPから入力されたアナログ電流信号に基づいて制御電圧信号を生成する。
【0042】
そして、電圧制御発振回路VCOは、ループフィルタLFから入力された制御電圧信号に応じた周波数のリカバリクロックclkrを生成する。このリカバリクロックclkrは、図1のシリアルパラレルコンバータSPC及び4B5BデコーダDEC1へ出力されると共に、周波数検出回路FD及び位相検出回路PDへフィードバックされる。
【0043】
ここで、周波数検出回路FDは、受信したシリアルデータsdの変化点を検出し、リカバリクロックclkrと比較することにより、周波数情報を抽出する。同様に、位相検出回路PDは、受信したシリアルデータsdの変化点を検出し、リカバリクロックclkrと比較することにより、位相情報を抽出する。従って、同一レベルの信号が連続するほど、周波数情報及び位相情報の抽出ができなくなる。そのため、同一レベルの信号が連続しないようなmBnB符号化方式を採用する必要があり、前提例では、一般的な4B5B符号化方式を採用している。
【0044】
このように、前提例では、mBnB符号化方式として4B5B符号化方式を採用し、データ伝送を行っている。しかし、mBnB符号化方式は、符号化によりmビットからnビットにビット長が長くなるため、符号化効率が悪化するとともに、符号化することにより転送するデータ量が増加し、オーバーヘッドが生じるため、転送速度が増加することになる。
【0045】
4B5B符号化方式のオーバーヘッドは、n/m=5/4=1.25である。このn/mの値が小さいほど、変換によるオーバーヘッドが小さくなり、転送速度の増加を抑制できる。オーバーヘッドを小さくするには(n/mを小さくするには)、4B5B符号化方式よりも8B9B符号方式のように、符号化するビット単位を長くし、mビットとnビットの比を小さくすると良い。例えば、8B9B符号化方式のオーバーヘッドは、n/m=8/9=1.125となる。
【0046】
図4は、mBnB符号のオーバーヘッドのイメージを示している。すなわち、図4(a)のように、4B5B符号化方式では、1画素のデータであるRGBデータを伝送するためには、8ビットが10ビットに符号化されるため、1画素あたり30ビットの伝送データとなる。
【0047】
これに対し、図4(b)のように、8B9B符号化方式では、RGBデータを伝送するためには、8ビットが9ビットに符号化されるため、1画素あたり27ビットの伝送データとなる。したがって、4B5B符号化方式に対し、8B9B符号化方式では、オーバーヘッドを12.5%削減することができる。
【0048】
一方で、図2で示したように、mBnB符号化方式では一般的に変換テーブルを用いて符号化/復号化を行っている。4B5B符号化方式から8B9B符号化方式のようにビット単位を長くすると、変換テーブルのサイズが大きくなる。
【0049】
4B5B符号化方式では、4ビット単位で符号化するため16パターンのテーブルが必要であり、8B9B符号化方式では8ビット単位で符号化するため256パターンのテーブルが必要となる。つまり、4B5B符号化方式の場合、エンコードテーブルのサイズは16×5ビット、デコードテーブルのサイズは16×4ビットであるのに対し、8B9B符号化方式の場合、エンコードテーブルのサイズは256×9ビット、デコードテーブルのサイズは256×8ビットとなり、8B9B符号化方式ではテーブルサイズが大幅に増大する。
【0050】
このように、オーバーヘッドを削減するため8B9B符号化方式を採用すると、変換テーブルのサイズが大きくなる。このため、回路規模が増大するという問題が発生する。
【0051】
特に、高電圧出力を必要とするPDP、有機EL、液晶などの表示装置に使用される表示ドライバICでは、微細プロセスを使用することが難しく、0.35um〜0.15um程度のプロセスが使用されているため、テーブルサイズがチップサイズに与える影響が大きい。
【0052】
そこで、以下に説明するように、本発明では、同一レベルの信号が連続して現れないデータ変化率が高い符号化方式を実現すると共に、オーバーヘッドが少なく簡易な構成でmBnB変換を可能にするものである。
【0053】
(本発明の実施の形態1)
以下、図面を参照して本発明の実施の形態1について説明する。まず、本発明の実施の形態1で用いる8B9B符号化方式について説明する。なお、mBnB符号化方式において、符号化前のmビットの情報パターンをデータ列と称し、データ列を符号化するためのnビットの情報パターンを符号列と称し、符号列を復号化するためのmビットの情報パターンを復号列と称する。
【0054】
本実施形態に係る符号化方式では、図5に示す方法によりデータ列に対し符号列、復号列を割り当てる。
【0055】
図に示すように、まず、連続ビットが生じない第1のデータ列に対し、中間ビットを反転ビットとする第1の符号列を割り当てる(S101)。
【0056】
1単位のデータをビット列において、中央に位置するビットを中間ビット(または中間ビット列)といい、中央より上位に位置するビットを上位ビット(または上位ビット列)といい、中央より下位に位置するビットを下位ビット(下位ビット列)という。また、隣接ビットを反転した(隣接ビットと異なる)ビット値を有するビットを反転ビットといい、隣接ビットと同じビット値を有するビットを連続ビットという。また、ビットが連続するとは、同じビット値のビットが続けて隣接することである。
【0057】
次いで、第1の符号列を連結させた場合に所定ビット連続し得るデータ列を特定する(S102)。次いで、上位ビットまたは下位ビットが連続ビットとなる第2のデータ列に対し、中間ビットを連続ビットとし上位ビット及び下位ビットを反転ビットとする第2の符号列を割り当てる(S103)。
【0058】
次いで、第2の符号列を用いても所定ビット連続し得る第3のデータ列に対し、中間ビットを連続ビットとし上位(または下位)ビットを連続ビットとする第3の符号列を割り当てる(S104)。次いで、第1〜第3の符号列を復号化するための第1〜第3の復号列を割り当てる(S105)。
【0059】
具体的に、図5を参照しつつ、図6〜図16を用いて、本発明の実施の形態1で用いる8B9B符号化方式の割り当て例について説明する。
【0060】
図6に示すように、まず、ビットが所定ビット連続しないデータ列DW1(第1のデータ列)に対し、中間ビットである符号ビットc4を反転ビットとする符号列CW1(第1の符号列)を割り当てる(S101)。
【0061】
データ列は、データビットd7〜d0の8ビットで構成されている。なお、ビット番号7の方を上位ビットとしビット番号0の方を下位ビットとして説明するが、ビットの順番は逆であってもよい。
【0062】
符号列CW1は、符号ビットc0〜c8の9ビットで構成されており、各符号ビットにデータ列の各データビットが設定される。なお、 ̄(オーバーライン)が付されたビットは、反転ビットを示している。
【0063】
つまり、符号列CW1では、上位ビットの符号ビットc8〜c5をそれぞれデータビットd7〜d4とし、中間ビットの符号ビットc4をデータビットd4の反転ビットとし、下位ビットの符号ビットc3〜c0をそれぞれデータビットd3〜d0とする。
【0064】
符号列CW1では、符号ビットc4が符号ビットc5の反転ビットとなるため、符号ビットc8〜c5の範囲でビットが連続する可能性があり、また、符号ビットc4〜c0の範囲でビットが連続する可能性がある。つまり、最大で連続し得るビット数は、符号ビットc4〜c0が連続した場合の5ビットとなる。この符号化方式では、全てのデータ列で、連続ビットが5ビット以下となるように、符号列を割り当てる。
【0065】
次に、図7に示すように、符号列CW1を連結させた場合に所定ビット連続し得るデータ列を特定する(S102)。ビットの連続が5ビット以下となるようにするため、ビットの連続が6ビット以上となるようなデータ列を見つけ出す。
【0066】
図7(a)のように、符号列(データ列)の下位ビットまたは上位ビットが4ビット連続する場合に、最も長くビットが連続する。すなわち、符号列の下位ビットである符号ビットc3〜c0(データビットd3〜d0)が「0000」または「1111」の場合、符号列の上位ビットである符号ビットc8〜c5(データビットd7〜d4)が「0000」または「1111」の場合、6ビット以上連続する可能性が最も高い。
【0067】
また、図7(b)のように、次に長くビットが連続する可能性が高い場合が、符号列(データ列)の上位ビット(下位ビット)が3ビット連続する場合となる。
【0068】
本実施形態では、符号列CW1を2つ連結すると6ビット以上のビットが連続する「上位または下位4ビットが同じデータ列」(第2のデータ列)、「上位3ビットが同じデータ列」(第3のデータ列)、その他「6ビット以上連続しないデータ列」(第1のデータ列)に分類し、それぞれで、中間符号ビット(c5、c4)、上位符号ビット(c7、c6)に特定のデータ値を有する符号列を割り当てる。
【0069】
次に、図8及び図9に示すように、ビットが連続する可能性の最も高い下位4ビットが連続するデータ列DW2と上位ビットが連続するデータ列DW3(第2のデータ列)に対し、中間符号ビットc5、c4を連続ビットとし、上位符号ビットc6及び下位符号ビットc3を反転ビットとする符号列CW2、CW3(第2の符号列)を割り当てる(S103)。
【0070】
図8のように、下位ビットのデータビットd3〜d0が「0000」または「1111」と連続するデータ列DW2には、符号列CW2を割り当てる。符号列CW2では、符号ビットc8、c7をそれぞれデータビットd7、d6とし、符号ビットc6をデータビットd6の反転ビットとし、符号ビットc5、c4をそれぞれ「1」とし、符号ビットc3をデータビットd5の反転ビットとし、符号ビットc2、c1、c0をそれぞれデータビットd5、d4、d0とする。
【0071】
図9のように、上位ビットのデータビットd7〜d4が「0000」または「1111」と連続するデータ列DW3には、符号列CW3を割り当てる。符号列CW3では、符号ビットc8、c7をそれぞれデータビットd7、d3とし、符号ビットc6をデータビットd3の反転ビットとし、符号ビットc5、c4をそれぞれ「0」とし、符号ビットc3をデータビットd2の反転ビットとし、符号ビットc2、c1、c0をそれぞれデータビットd2、d1、d0とする。
【0072】
本実施形態では、図6のように、6ビット以上連続しないデータ列に符号ビットc5、c4が反転した符号列CW1を割り当てるため、その他のデータ列の場合、符号ビットc5とc4が同じビット値とはならない。そこで、上位ビットまたは下位ビットが4ビット連続するデータ列には、符号ビットc5とc4を同じビット値とする符号列CW2,CW3を割り当てる。
【0073】
また、符号列CW2,CW3では、上位ビットの符号ビットc8〜c6の範囲でビットの連続を2ビット以下とし、下位ビットの符号ビットc2〜c0の範囲でビットの連続を3ビット以下とすることで、単体の符号列でビットの連続が5ビット以下となるようにする。
【0074】
つまり、本実施形態では、符号ビットc5とc4を同じビットとし、かつ、符号ビットc6をc7の反転ビットとし、符号ビットc3を符号ビットc2の反転ビットとする。このように割り当てることで、符号ビットc8〜c6が3ビット連続することがなく、符号ビットc3〜c0で4ビット連続することがない。そのため、複数の符号列を連続させた場合においても、一番長く同じビットが連続するのは、符号列の符号ビットc2〜c0とその次に続く符号列の符号ビットc8〜c7までとなり、ビットの連続が6ビット以上となることはない。
【0075】
次に、図10及び図11に示すように、符号列CW2,CW3を用いても連続ビットが生じるデータ列として、連続ビットとなる可能性が2番目に高い上位3ビットが連続するデータ列DW4、DW5(第3のデータ列)に対し、中間ビットc5、c4を連続ビットとし、上位符号ビットc7,6を連続ビットとする符号列CW4,CW5(第3の符号列)を割り当てる(S104)。すなわち、符号列CW1〜CW3を用いてビットが最も長く連続するデータ列DW4,DW5に対し、符号列CW4,CW5を割り当てる。
【0076】
図10のように、上位ビットのデータビットd7〜d4が「0001」と3ビット連続するデータ列DW4には、符号列CW4を割り当てる。符号列CW4では、符号ビットc8〜c4を「10011」とし、符号ビットc3〜c0をそれぞれデータビットd3〜d0とする。
【0077】
図11のように、上位ビットのデータビットd7〜d4が「1110」と3ビット連続するデータ列DW5には、符号列CW5を割り当てる。符号列CW5では、符号ビットc8〜c4を「01100」とし、符号ビットc3〜c0をそれぞれデータビットd3〜d0とする。
【0078】
本実施形態では、図8、図9のように、上位ビットまたは下位ビットが4ビット連続するデータ列の場合、符号ビットc7、c6が反転した符号列CW2,CW3を割り当てているため、上位ビットが3ビット連続するデータ列では、符号ビットc7とc6が同じビットにはならない。つまり、符号列CW2,CW3では、符号ビットc8〜c4に「10011」と「01100」は使用されていないため、符号列CW4,CW5にこの未使用のビットパターンを割り当てる。さらに、符号ビットc3〜c0にデータビットd3〜d0を割り当てる。
【0079】
下位ビットが4ビット連続するデータ列には符号列CW2を割り当てているため、符号列CW4,5の符号ビットc3〜c0では、ビットの連続が3ビット以下となる。したがって、複数の符号列を連続させても一番長く同じビットが連続するのは、符号列の符号ビットc2〜c0とその次に続く符号列の符号ビットc8〜c7までとなり、ビットの連続が6ビット以上となることはない。
【0080】
次に、符号列CW1〜CW5(第1の符号列〜第3の符号列)に対し、復号列RW1〜RW5(第1の復号列〜第3の復号列)を割り当てる(S105)。
【0081】
図12に示すように、データ列DW1に対し符号列CW1を割り当てたため、符号列CW1に対応する復号列RW1(第1の復号列)を割り当てる。
【0082】
符号列CW1では、符号ビットc4を冗長ビットとし、符号ビットc8〜c5、c3〜c0がデータを示すビットとした。また、符号ビットc8〜c5、c3〜c0は、符号化前のデータビットd7〜d4、d3〜d0に対応している。このため、復号列RW1では、復号ビットr7〜r4をそれぞれ符号ビットc8〜c5とし、復号ビットr3〜r0をそれぞれ符号ビットc3〜c0とする。
【0083】
図13に示すように、データ列DW2に対し符号列CW2を割り当てたため、符号列CW2に対応する復号列RW2(第2の復号列)を割り当てる。
【0084】
符号列CW2では、符号ビットc6〜c3を冗長ビットとし、符号ビットc8〜c7、c2〜c0がデータを示すビットとした。また、符号ビットc8〜c7、c2〜c1は、符号化前のデータビットd7〜d6、d5〜d4に対応し、符号ビットc0が符号化前のデータビットd3〜d0を示している。このため、復号列RW2では、復号ビットr7〜r6をそれぞれ符号ビットc8〜c7とし、復号ビットr5〜r4をそれぞれ符号ビットc2〜c1とし、復号ビットr3〜r0をそれぞれ符号ビットc0とする。
【0085】
図14に示すように、データ列DW3に対し符号列CW3を割り当てたため、符号列CW3に対応する復号列RW3(第2の復号列)を割り当てる。
【0086】
符号列CW3では、符号ビットc6〜c3を冗長ビットとし、符号ビットc8〜c7、c2〜c0がデータを示すビットとした。また、符号ビットc7、c2〜c0は、符号化前のデータビットd3〜d0に対応し、符号ビットc8が符号化前のデータビットd7〜d4を示している。このため、復号列RW3では、復号ビットr7〜r5をそれぞれ符号ビットc8とし、復号ビットr3を符号ビットc7とし、復号ビットr2〜r0をそれぞれ符号ビットc2〜c0とする。
【0087】
図15に示すように、データ列DW4に対し符号列CW4を割り当てたため、符号列CW4に対応する復号列RW4(第3の復号列)を割り当てる。
【0088】
符号列CW4では、符号ビットc8〜c4を冗長ビットとし、符号ビットc3〜c0がデータを示すビットとした。また、符号列CW4で符号化する前のデータビットd7〜d4は「0001」であり、符号ビットc3〜c0は、符号化前のデータビットd3〜d0に対応している。このため、復号列RW4では、復号ビットr7〜r4を「0001」とし、復号ビットr3〜r0をそれぞれ符号ビットc3〜c0とする。
【0089】
図16に示すように、データ列DW5に対し符号列CW5を割り当てたため、符号列CW5に対応する復号列RW5(第3の復号列)を割り当てる。
【0090】
符号列CW5では、符号ビットc8〜c4を冗長ビットとし、符号ビットc3〜c0がデータを示すビットとした。また、符号列CW5で符号化する前のデータビットd7〜d4は「1110」であり、符号ビットc3〜c0は、符号化前のデータビットd3〜d0に対応している。このため、復号列RW5では、復号ビットr7〜r4を「1110」とし、復号ビットr3〜r0をそれぞれ符号ビットc3〜c0とする。
【0091】
以下、上記8B9B符号化方式を採用した本発明の実施の形態1に係る表示装置用データ伝送システムの構成及び動作を説明する。
【0092】
図17及び図18は、本発明の実施の形態1に係る表示装置用データ伝送システムの構成を示している。図17に示されるように、この表示装置用データ伝送システムは、図1の構成と比べて、エンコーダとデコーダが異なっており、その他の構成は同様である。すなわち、図17では、エンコーダとして8B9BエンコーダENC2を備えており、デコーダとして8B9BデコーダDEC2を備えている。
【0093】
8B9BエンコーダENC2は、クロック生成回路CGから供給されたクロックclkに応じて、入力画像データである8ビットのパラレル送信データpdt1(データ列)を9ビットのパラレル送信データpdt2(符号列)に符号化する。
【0094】
図18のように、8B9BエンコーダENC2は、8ビット判定部11と8B9B変換部12を有している。8ビット判定部11は、8ビットのデータ列の各データビットを判定し、どの符号列に変換するか決定する。
【0095】
8B9B変換部12は、8ビット判定部11の判定結果に基づいて、データ列を、当該データ列に対応した符号列に変換する。つまり、8B9BエンコーダENC2では、図1の4B5BエンコーダENC1とは異なり変換テーブルを使用せず、演算回路により符号化回路を実現している。
【0096】
8B9BデコーダDEC2は、クロックデータリカバリ回路CDRから供給されたリカバリクロックclkrに応じて、入力された9ビットのパラレル受信データpdr1(符号列)を8ビットのパラレル受信データpdr2(復号列)に復号化する。
【0097】
図18のように、8B9BデコーダDEC2は、9ビット判定部21と9B8B変換部22を有している。9ビット判定部21は、9ビットの符号列の各符号ビットを判定し、符号列をどの復号列に変換するか決定する。特に符号ビットc7及びc6、符号ビットc5及びc4のビットを判断することでどの符号列か判定し変換する復号列を決定する。
【0098】
9B8B変換部22は、9ビット判定部21の判定結果に基づいて、符号列を、当該符号列に対応した復号列に変換する。つまり、8B9BデコーダDEC2では、図1の4B5BデコーダDEC1とは異なり変換テーブルを使用せず、演算回路により復号化回路を実現している。
【0099】
図19は、本発明の実施の形態1に係る8B9BエンコーダENC2の符号化動作を示している。
【0100】
まず、8ビット判定部11は、データ列のデータビットd7〜d4が全て同じビット値かどうか判定する(S201)。S201で、データビットd7〜d4が全て同じビット値である場合、8B9B変換部12は、データ列DW3を符号列CW3へ符号化する(S202)。すなわち、この場合、図9のように、データ列の上位4ビットが連続しているため、符号列CW3を用いて、符号ビットc5、c4を「00」とし、符号ビットc6、c3を反転ビットとして符号化を行う。
【0101】
S201で、データビットd7〜d4が全て同じビット値ではない場合、8ビット判定部11は、データ列のデータビットd3〜d0が全て同じビット値であるかどうか判定する(S203)。S203で、データビットd3〜d0が全て同じビット値である場合、8B9B変換部12は、データ列を符号列CW2へ符号化する(S204)。すなわち、この場合、図8のように、データ列の下位4ビットが連続しているため、符号列CW2を用いて、符号ビットc5、c4を「11」とし、符号ビットc6、c3を反転ビットとして符号化を行う。
【0102】
S203で、データビットd3〜d0が全て同じビット値ではない場合、8ビット判定部11は、データ列のデータビットd7〜d5が「000」であるかどうか判定する(S205)。S205で、データビットd7〜d5が「000」である場合、8B9B変換部12は、データ列をCW4へ符号化する(S206)。すなわち、この場合、図10のように、上位3ビットが「000」と連続しているため、符号列CW4を用いて、符号ビットc5、c4を「11」とし、符号ビットc7、c6を「11」として符号化を行う。
【0103】
S205で、データビットd7〜d5が「000」ではない場合、8ビット判定部11は、データ列のデータビットd7〜d5が「111」であるかどうか判定する(S207)。S207で、データビットd7〜d5が「111」である場合、8B9B変換部12は、データ列をCW5へ符号化する(S208)。すなわち、この場合、図11のように、上位3ビットが「111」と連続しているため、符号列CW5を用いて、符号ビットc5、c4を「11」とし、符号ビットc7、c6を「00」として符号化を行う。
【0104】
S207で、データビットd7〜d5が「111」ではない場合、8B9B変換部12は、データ列をCW1へ符号化する(S209)。すなわち、この場合、ビットが6ビット以上連続していないため、図6のように、符号列CW1を用いて、符号ビットc4を反転ビットとして符号化を行う。
【0105】
次に、図20〜図25を用いて、図19で示した8B9BエンコーダENC2の各動作を実現するための回路イメージを説明する。なお、図20〜図25は一例であって、図19で示した動作を実現できればその他の回路構成であってもよい。また、ここでは、説明簡略化のため、図19の各動作に対応した各回路を個別に説明するが、実際には、各回路を1つの回路に結合して8B9BエンコーダENC2が構成される。
【0106】
図20は、図19のS201及びS202に対応した8B9BエンコーダENC2の回路イメージである。8ビット判定部11は、AND回路201,202とOR回路203を有している。なお、AND回路201,202とOR回路203は第1のビット判定回路200を構成する。
【0107】
AND回路201には、データビットd7〜d4が入力され、データビットd7〜d4が全て「0」の場合に「1」を出力し、AND回路202には、データビットd7〜d4が入力され、データビットd7〜d4が全て「1」の場合に「1」を出力し、OR回路203は、AND回路201,202の出力に応じて、データビットd7〜d4が全て同じビット値の場合に「1」を出力する。この出力に応じて、8B9B変換部12はビット列を符号列CW3へ変換する。
【0108】
8B9B変換部12は、インバータ回路204、205を有している。8B9B変換部12は、符号ビットc8へデータビットd7を出力し、符号ビットc7へデータビットd3を出力し、符号ビットc6へデータビットd3をインバータ回路204により反転させた反転ビットを出力し、符号ビットc5、c4へ「00」を出力し、符号ビットc3へデータビットd2をインバータ回路204により反転させた反転ビットを出力し、符号ビットc2〜c0へデータビットd2〜d0をそれぞれ出力する。こうして、演算回路によりデータ列DW3を符号列CW3へ変換する。
【0109】
図21は、図19のS201、S203及びS204に対応した8B9BエンコーダENC2の回路イメージである。8ビット判定部11は、第1のビット判定回路200、AND回路211,212、OR回路213、AND回路214を有している。なお、AND回路211,212及びOR回路213は第2のビット判定回路210を構成する。
【0110】
AND回路211には、データビットd3〜d0が入力され、データビットd3〜d0が全て「0」の場合に「1」を出力し、AND回路212には、データビットd3〜d0が入力され、データビットd3〜d0が全て「1」の場合に「1」を出力し、OR回路213は、AND回路211,212の出力に応じて、データビットd3〜d0が全て同じビット値の場合に「1」を出力する。AND回路214は、第1のビット判定回路200によりデータビットd7〜d4が全て同じビットではない場合、かつ、OR回路213によりデータビットd3〜d0が全て同じビットの場合に「1」を出力する。この出力に応じて、8B9B変換部12はビット列を符号列CW2へ変換する。
【0111】
8B9B変換部12は、インバータ回路215、216を有している。8B9B変換部12は、符号ビットc8へデータビットd7を出力し、符号ビットc7へデータビットd6を出力し、符号ビットc6へデータビットd6をインバータ回路215により反転させた反転ビットを出力し、符号ビットc5、c4へ「11」を出力し、符号ビットc3へデータビットd5をインバータ回路216により反転させた反転ビットを出力し、符号ビットc2へデータビットd5を出力し、符号ビットc1へデータビットd4を出力し、符号ビットc0へデータビットd0を出力する。こうして、演算回路によりデータ列DW2を符号列CW2へ変換する。
【0112】
図22は、図19のS201、S203、S205及びS206に対応した8B9BエンコーダENC2の回路イメージである。8ビット判定部11は、第2のビット判定回路210、AND回路221、AND回路222を有している。なお、AND回路221は第3のビット判定回路220を構成する。
【0113】
AND回路221には、データビットd7〜d5が入力され、データビットd7〜d5が「000」の場合に「1」を出力する。AND回路222は、第2のビット判定回路210によりデータビットd3〜d0が全て同じビットではない場合、かつ、AND回路221によりデータビットd7〜d5が「000」の場合に「1」を出力する。この出力に応じて、8B9B変換部12はビット列を符号列CW4へ変換する。
【0114】
8B9B変換部12は、符号ビットc8〜c4へ「10011」を出力し、符号ビットc3〜c0へデータビットd3〜d0を出力する。こうして、演算回路によりデータ列DW4を符号列CW4へ変換する。
【0115】
図23は、図19のS201、S203、S207及びS208に対応した8B9BエンコーダENC2の回路イメージである。8ビット判定部11は、第2のビット判定回路210、AND回路231、AND回路232を有している。なお、AND回路231は第4のビット判定回路230を構成する。
【0116】
AND回路231には、データビットd7〜d4が入力され、データビットd7〜d5が「111」の場合に「1」を出力する。AND回路232は、第2のビット判定回路210によりデータビットd3〜d0が全て同じビットではない場合、かつ、AND回路231によりデータビットd7〜d5が「111」の場合に「1」を出力する。この出力に応じて、8B9B変換部12はビット列を符号列CW5へ変換する。
【0117】
8B9B変換部12は、符号ビットc8〜c4へ「01100」を出力し、符号ビットc3〜c0へデータビットd3〜d0を出力する。こうして、演算回路によりデータ列DW5を符号列CW5へ変換する。
【0118】
図24は、図19のS201、S203、S205。S207及びS209に対応した8B9BエンコーダENC2の回路イメージである。8ビット判定部11は、第1のビット判定回路200、第2のビット判定回路210、第3のビット判定回路220、第4のビット判定回路230、AND回路241を有している。
【0119】
AND回路232は、第1のビット判定回路200によりデータビットd7〜d4が全て同じビットではない場合、かつ、第2のビット判定回路210によりデータビットd3〜d0が全て同じビットではない場合、かつ、第3のビット判定回路220によりデータビットd7〜d4が「0001」ではない場合、かつ、第4のビット判定回路340によりデータビットd7〜d4が「1110」ではない場合に「1」を出力する。この出力に応じて、8B9B変換部12はビット列を符号列CW1へ変換する。
【0120】
8B9B変換部12は、インバータ回路242を有している。8B9B変換部12は、符号ビットc7〜c5へデータビットd7〜d4を出力し、符号ビットc4へデータビットd4をインバータ回路242により反転させた反転ビットを出力し、符号ビットc3〜c0へデータビットd3〜d0を出力する。こうして、演算回路によりデータ列DW1を符号列CW1へ変換する。
【0121】
図25は、本発明の実施の形態1に係る8B9BデコーダDEC2の復号化動作を示している。
【0122】
まず、9ビット判定部21は、符号列の符号ビットc7とc6が同じビット値、かつ、符号ビットc5とc4が同じビット値かどうか判定する(S211)。S211で、符号列の符号ビットc7とc6が同じビット値、かつ、符号ビットc5とc4が同じビット値の場合、9ビット判定部21は、符号列の符号ビットc7が1かどうか判定する(S212)。S212で、符号ビットc7が1である場合、9B8B変換部22は、符号列CW5から復号列RW5へ復号化する(S213)。すなわち、この場合、図16のように、上位3ビットが「111」で連続しているデータ列を符号化しているため、復号列RW5を用いて、復号ビットr7〜r5を「111」として復号化を行う。
【0123】
S212で、符号ビットc7が1ではない場合、9B8B変換部22は、符号列CW4から復号列RW4へ復号化する(S214)。すなわち、この場合、図15のように、上位3ビットが「000」で連続しているデータ列を符号化しているため、復号列RW4を用いて、復号ビットr7〜r5を「000」として復号化を行う。
【0124】
S211で、符号列の符号ビットc7とc6が同じビット値、かつ、符号ビットc5とc4が同じビット値ではない場合、9ビット判定部21は、符号列の符号ビットc5とc4が同じビット値かどうか判定する(S215)。S215で、符号列の符号ビットc5とc4が同じビット値である場合、9ビット判定部21は、符号列の符号ビットc5が1かどうか判定する(S216)。S216で、符号ビットc5が1である場合、9B8B変換部22は、符号列CW2から復号列RW2へ復号化する(S217)。すなわち、この場合、図13のように、下位4ビットが連続しているデータ列を符号化しているため、復号列RW2を用いて、復号ビットr3〜r0を連続ビットとして復号化を行う。
【0125】
S216で、符号ビットc5が1ではない場合、9B8B変換部22は、符号列CW3から復号列RW3へ復号化する(S218)。すなわち、この場合、図14のように、上位4ビットが連続しているデータ列を符号化しているため、復号列RW3を用いて、復号ビットr7〜r4を連続ビットとして復号化を行う。
【0126】
S215で、符号列の符号ビットc5とc4が同じビット値ではない場合、9B8B変換部22は、符号列CW1から復号列RW1へ復号化する(S219)。すなわち、この場合、図12のように、ビットが6ビット以上連続しないデータ列を符号化しているため、復号列RW1を用いて、反転している符号ビットc4を除いて復号化を行う。
【0127】
次に、図26〜図30を用いて、図25で示した8B9BデコーダDEC2の各動作を実現するための回路イメージを説明する。なお、図26〜図30は一例であって、図25で示した動作を実現できればその他の回路構成であってもよい。また、ここでは、説明簡略化のため、図25の各動作に対応した各回路を個別に説明するが、実際には、各回路を1つの回路に結合して8B9BデコーダDEC2が構成される。
【0128】
図26は、図25のS211、S212及びS213に対応した8B9BデコーダDEC2の回路イメージである。9ビット判定部21は、EXNOR回路301,302とAND回路303を有している。なお、EXNOR回路301,302とAND回路303は第5のビット判定回路300を構成する。
【0129】
EXNOR回路301は、符号ビットc7、c6が入力され、符号ビットc7とc6が同じビット値の場合に「1」を出力し、EXNOR回路302は、符号ビットc5、c4が入力され、符号ビットc5とc4が同じビット値の場合に「1」を出力し、AND回路303は、EXNOR回路301により符号ビットc7、c6が同じビット値であり、かつ、EXNOR回路302により符号ビットc5、c4が同じビット値であり、かつ、符号ビットc7が「1」の場合に「1」を出力する。この出力に応じて、9B8B変換部22は符号列CW5からデータ列へ変換する。
【0130】
9B8B変換部22は、データビットd7〜d4へ「1110」を出力し、復号ビットr3〜r0へ符号ビットc3〜c0をそれぞれ出力する。こうして、演算回路により符号列CW5を復号列RW5へ変換する。
【0131】
図27は、図25のS211、S212及びS214に対応した8B9BデコーダDEC2の回路イメージである。9ビット判定部21は、EXNOR回路311,312とAND回路313を有している。なお、EXNOR回路311,312とAND回路313は第6のビット判定回路310を構成する。
【0132】
EXNOR回路311は、符号ビットc7、c6が入力され、符号ビットc7とc6が同じビット値の場合に「1」を出力し、EXNOR回路312は、符号ビットc5、c4が入力され、符号ビットc5とc4が同じビット値の場合に「1」を出力し、AND回路313は、EXNOR回路311により符号ビットc7、c6が同じビット値であり、かつ、EXNOR回路312により符号ビットc5、c4が同じビット値であり、かつ、符号ビットc7が「0」の場合に「1」を出力する。この出力に応じて、9B8B変換部22は符号列CW4からデータ列へ変換する。
【0133】
9B8B変換部22は、データビットd7〜d4へ「0001」を出力し、復号ビットr3〜r0へ符号ビットc3〜c0をそれぞれ出力する。こうして、演算回路により符号列CW4を復号列RW4へ変換する。
【0134】
図28は、図25のS211、S215、S216及びS217に対応した8B9BデコーダDEC2の回路イメージである。9ビット判定部21は、第5のビット判定回路300、第6のビット判定回路310、EXNOR回路321とAND回路322を有している。なお、EXNOR回路321は第7のビット判定回路320を構成する。
【0135】
EXNOR回路321は、符号ビットc5、c4が入力され、符号ビットc5とc4が同じビット値の場合に「1」を出力し、AND回路322は、第5のビット判定回路300、第6のビット判定回路310の条件を満たさない符号ビットc7、c6が違うビット値であり、かつ、EXNOR回路321により符号ビットc5、c4が同じビット値であり、かつ、符号ビットc5が「1」の場合に「1」を出力する。この出力に応じて、9B8B変換部22は符号列CW2からデータ列へ変換する。
【0136】
9B8B変換部22は、復号ビットr7〜r6へ符号ビットc8〜c7をそれぞれ出力し、復号ビットr5〜r4へ符号ビットc2〜c1をそれぞれ出力し、復号ビットr3〜r0へ符号ビットc0をそれぞれ出力する。こうして、演算回路により符号列CW2を復号列RW2へ変換する。
【0137】
図29は、図25のS211、S215、S216及びS218に対応した8B9BデコーダDEC2の回路イメージである。9ビット判定部21は、第5のビット判定回路300、第6のビット判定回路310、EXNOR回路331とAND回路332を有している。なお、EXNOR回路331は第8のビット判定回路330を構成する。
【0138】
EXNOR回路331は、符号ビットc5、c4が入力され、符号ビットc5とc4が同じビット値の場合に「1」を出力し、AND回路332は、第5のビット判定回路300、第6のビット判定回路310の条件を満たさない符号ビットc7、c6が違うビット値であり、かつ、EXNOR回路331により符号ビットc5、c4が同じビット値であり、かつ、符号ビットc5が「0」の場合に「1」を出力する。この出力に応じて、9B8B変換部22は符号列CW3からデータ列へ変換する。
【0139】
9B8B変換部22は、復号ビットr7〜r4へ符号ビットc8をそれぞれ出力し、復号ビットr3へ符号ビットc7を出力し、復号ビットr2〜r0へ符号ビットc2〜c0をそれぞれ出力する。こうして、演算回路により符号列CW3を復号列RW3へ変換する。
【0140】
図30は、図25のS211、S215及びS219に対応した8B9BデコーダDEC2の回路イメージである。9ビット判定部21は、第5のビット判定回路300、第6のビット判定回路310、第7のビット判定回路320、第8のビット判定回路330、AND回路341を有している。
【0141】
AND回路341は、第5のビット判定回路300、第6のビット判定回路310の条件を満たさない符号ビットc7、c6が違うビット値の場合、かつ、第7のビット判定回路320、第8のビット判定回路330の条件を満たさない符号ビットc5、c4が違うビット値の場合に「1」を出力する。この出力に応じて、9B8B変換部22は符号列CW1からデータ列へ変換する。
【0142】
9B8B変換部22は、復号ビットr7〜r4へ符号ビットc8〜c5をそれぞれ出力し、復号ビットr3〜r0へ符号ビットc3〜c0をそれぞれ出力する。こうして、演算回路により符号列CW1を復号列RW1へ変換する。
【0143】
以上のように、本実施形態では、8B9B符号化方式を採用することで、クロックエンベデッドシリアル伝送を可能にするとともに、符号化によるオーバーヘッドを削減している。
【0144】
さらに、本実施形態では、同一符号が6回以上連続で発生しないようかつ、回路規模が小さく出来るように、反転データと連続データ(固定データ)を用いた符号列を割り当てている。
【0145】
具体的には、第1の符号列(CW1)で、データビットd4の反転ビットを符号ビットc4に配置することで、単体の符号列におけるビット連続を最大5ビットとする。
【0146】
符号列が連続する場合に、上位3ビットでビットが連続しない場合で、かつ、下位4ビットでビットが連続しない場合には、6ビット以上のビット連続が発生しなくなるので、この条件のデータ列だけ別の第2の符号列(CW2,CW3)を使用する。
【0147】
第2の符号列においても、簡単な判断でエンコード、デコードできるように符号ビットc5とc4を同じビット値とし、かつ、符号ビットc7とc6を同じビット値とする条件を使用して残りの第3の符号列(CW4、CW5)を割り当てる。このとき、同じビット値が連続しないように反転ビットおよび、連続ビットの固定パターンを使用する。
【0148】
また、デコード側は、固定パターンを判断するだけで、固定パターン用の配置か、それ以外の配置かを選択して、符号列を復号列に再配置しなおす。
【0149】
これにより、オーバーヘッドが少なく、同一レベルの信号が連続して現れないデータ変化率が高い符号化方式を実現すると共に、回路規模が小さい演算回路により簡易な構成でmBnB変換することが可能となる。
【0150】
(本発明の実施の形態2)
以下、図面を参照して本発明の実施の形態2について説明する。本実施形態は、実施の形態1の8B9BエンコーダENC2において、符号化の条件を追加した例であり、8B9B符号化方式やシステム構成は実施の形態1と同様である。
【0151】
図31は、本発明の実施の形態2に係る8B9BエンコーダENC2の符号化動作を示している。実施の形態1の図19と比べて、S220,S221が追加されている。
【0152】
すなわち、本実施形態では、まず、8ビット判定部11は、データ列が255、つまり、データビットd7〜d0が全て「1」であるかどうか判定する(S220)。S220で、データ列が255の場合、8B9B変換部12は、データ列を符号列CW2へ符号化する(S221)。データビットd7〜d0が全て「1」の場合、図8のように、符号列CW2を用いて、符号ビットc5、c4を「11」とし、符号ビットc6、c3を反転ビットとして符号化を行う。その他のS201〜S209は、図19と同様である。
【0153】
このように、全データビットが「1」の場合には、符号列CW2へ変換することにした。仮にデータ列「1111111」を符号列CW3へ符号化すると「110000111」となるため、符号列におけるビットの反転回数は2回となる。これに対し、本実施形態のように、データ列「1111111」を符号列CW2へ符号化すると「110110111」となるため、符号列におけるビットの反転回数が3回となる。したがって、全データビットが「1」の場合に符号列CW2へ変換することで、必ず3回以上ビットが反転することが保証されるため、デコード時に精度よくクロックを再生することができる。
【0154】
(本発明の実施の形態3)
以下、図面を参照して本発明の実施の形態3について説明する。本実施形態は12B13B符号化方式を採用する例である。12B13B符号化方式の場合でも、実施の形態1の図5と同様に符号列、復号列の割り当てが可能である。
【0155】
図5を参照しつつ、図32〜図41を用いて、本発明の実施の形態3で用いる12B13B符号化方式の割り当て例について説明する。
【0156】
図32に示すように、まず、ビットが所定ビット連続しないデータ列DW11(第1のデータ列)に対し、中間ビットである符号ビットc6を反転ビットとする符号列CW11(第1の符号列)を割り当てる(S101)。
【0157】
符号列CW11では、符号ビットc12〜c7をそれぞれデータビットd11〜d6とし、符号ビットc6をデータビットd6の反転ビットとし、符号ビットc5〜c0をそれぞれデータビットd5〜d0とする。
【0158】
符号列CW11では、符号ビットc6が符号ビットc7の反転ビットとなるため、符号ビットc12〜c7の範囲でビットが連続する可能性があり、また、符号ビットc6〜c0の範囲でビットが連続する可能性がある。つまり、最大で連続し得るビット数は、符号ビットc6〜c0が連続した場合の7ビットとなる。この符号化方式では、全てのデータ列で、連続ビットが7ビット以下となるように、符号列を割り当てる。
【0159】
次に、符号列CW11を連結させた場合に所定ビット連続し得るデータ列を特定する(S102)。ここでは、実施の形態1と同様に、符号列(データ列)の下位ビットまたは上位ビットが4ビット連続する場合が、最も長くビットが連続するものとする。すなわち、符号列の下位ビットである符号ビットc3〜c0(データビットd3〜d0)が「0000」または「1111」の場合、符号列の上位ビットである符号ビットc12〜c9(データビットd11〜d8)が「0000」または「1111」の場合、8ビット以上連続する可能性が最も高い。
【0160】
次に、図33及び図34に示すように、ビットが連続する可能性の最も高い下位4ビットが連続するデータ列DW12と上位ビットが連続するデータ列DW13(第2のデータ列)に対し、中間符号ビットc7、c6を連続ビットとし、上位符号ビットc10及び下位符号ビットc2を反転ビットとする符号列CW12、CW13(第2の符号列)を割り当てる(S103)。
【0161】
図33のように、下位ビットのデータビットd3〜d0が「0000」または「1111」と連続するデータ列DW12には、符号列CW12を割り当てる。符号列CW12では、符号ビットc12〜c11をそれぞれデータビットd11〜d10とし、符号ビットc10をデータビットd9の反転ビットとし、符号ビットc9、c8をデータビットd9、d8とし、符号ビットc7、c6をそれぞれ「0」とし、符号ビットc5〜c3をそれぞれデータビットd7〜d5とし、符号ビットc2をデータビットd5の反転ビットとし、符号ビットc1、c0をそれぞれデータビットd4、d0とする。
【0162】
図34のように、上位ビットのデータビットd11〜d8が「0000」または「1111」と連続するデータ列DW13には、符号列CW13を割り当てる。符号列CW13では、符号ビットc12、c11をそれぞれデータビットd11、d7とし、符号ビットc10をデータビットd6の反転ビットとし、符号ビットc9、c8をデータビットd6、d5とし、符号ビットc7、c6をそれぞれ「1」とし、符号ビットc5、c4、c3をそれぞれデータビットd4、d3、d2とし、符号ビットc2をデータビットd2の反転ビットとし、符号ビットc1〜c0をそれぞれデータビットd1〜d0とする。
【0163】
符号列CW12、CW13では、符号ビットc9、c3を反転ビットとているため、符号ビットc9〜c3の範囲で7ビット連続する可能性がある。
【0164】
次に、図35及び図36に示すように、符号列CW12,CW13を用いても連続ビットが生じるビット列として、符号列CW12,CW13の符号ビットc9〜c3が連続する場合に対応したデータ列DW14,DW15(第3のデータ列)に対し、中間ビットc7、c6を連続ビットとし、上位符号ビットc10,9を連続ビットとする符号列CW14,CW15(第3の符号列)を割り当てる(S104)。すなわち、符号列列CW11〜CW13を用いてビットが最も長く連続するデータ列DW14,DW15に対し、符号列CW14,CW15を割り当てる。
【0165】
図35のように、データビットd9〜d5が「00000」と連続するデータ列DW14には、符号列CW14を割り当てる。符号列CW14では、符号ビットc12をデータビットd11とし、符号ビットc11〜c9を「011」とし、符号ビットc8をデータビットd10とし、符号ビットc7、c6をそれぞれ「0」とし、符号ビットc5、c4をそれぞれデータビットd4、d3とし、符号ビットc3をデータビットd2の反転ビットとし、符号ビットc2〜c0をそれぞれデータビットd2〜d0とする。
【0166】
図36のように、データビットd6〜d2が「11111」と連続するデータ列DW15には、符号列CW15を割り当てる。符号列CW15では、符号ビットc12をデータビットd11とし、符号ビットc11〜c9を「100」とし、符号ビットc8をデータビットd10とし、符号ビットc7、c6をそれぞれ「1」とし、符号ビットc5、c4をそれぞれデータビットd9、d8とし、符号ビットc3をデータビットd7の反転ビットとし、符号ビットc2〜c0をそれぞれデータビットd7、d1〜d0とする。
【0167】
符号列CW14,15では、符号ビットc8〜c3の範囲で連続ビットとなる可能性があるものの、最大でも連続するビットは6ビットに抑えられる。
【0168】
次に、符号列CW11〜CW15(第1の符号列〜第3の符号列)に対し、復号列RW11〜RW15(第1の復号列〜第3の復号列)を割り当てる(S105)。
【0169】
図37に示すように、データ列DW11に対し符号列CW11を割り当てたため、符号列CW11に対応する復号列RW11(第1の復号列)を割り当てる。
【0170】
符号列CW11では、符号ビットc6を冗長ビットとし、符号ビットc12〜c7、c5〜c0がデータを示すビットとした。また、符号ビットc12〜c7、c5〜c0は、符号化前のデータビットd11〜d6、d5〜d0に対応している。このため、復号列RW11では、復号ビットr11〜r6をそれぞれ符号ビットc12〜c7とし、復号ビットr5〜r0をそれぞれ符号ビットc5〜c0とする。
【0171】
図38に示すように、データ列DW12に対し符号列CW12を割り当てたため、符号列CW12に対応する復号列RW12(第2の復号列)を割り当てる。
【0172】
符号列CW12では、符号ビットc10、c7、c6、c2を冗長ビットとし、符号ビットc12〜c11、c9、c8、c5、c4、c3、c1〜c0がデータを示すビットとした。また、符号ビットc12〜c11、c9、c8、c5、c4、c3、c1は、符号化前のデータビットd11〜d9、d8、d7、d6、d5、d4に対応し、符号ビットc0が符号化前のデータビットd3〜d0を示している。このため、復号列RW12では、復号ビットr11〜r11をそれぞれ符号ビットc12〜c11とし、復号ビットr9、r8を符号ビットc9、c8とし、復号ビットr7〜r5をそれぞれ符号ビットc5〜c3とし、復号ビットr4を符号ビットc1とし、復号ビットr3〜r0をそれぞれ符号ビットc0とする。
【0173】
図39に示すように、データ列DW13に対し符号列CW13を割り当てたため、符号列CW13に対応する復号列RW13(第2の復号列)を割り当てる。
【0174】
符号列CW13では、符号ビットc10、c7、c6、c2を冗長ビットとし、符号ビットc12〜c11、c9、c8、c5、c4、c3、c1〜c0がデータを示すビットとした。また、符号ビットc11、c9、c8、c5、c4、c3、c1、c0は、符号化前のデータビットd7、d6、d5、d4、d3、d2、d1、d0に対応し、符号ビットc12が符号化前のデータビットd11〜d8を示している。このため、復号列RW13では、復号ビットr11〜r8をそれぞれ符号ビットc12とし、復号ビットr7〜r6をそれぞれ符号ビットc11、c9とし、復号ビットr5を符号ビットc8とし、復号ビットr4〜r2をそれぞれ符号ビットc5〜c3とし、復号ビットr1〜r0をそれぞれ符号ビットc1〜c0とする。
【0175】
図40に示すように、データ列DW14に対し符号列CW14を割り当てたため、符号列CW14に対応する復号列RW14(第3の復号列)を割り当てる。
【0176】
符号列CW14では、符号ビットc11〜c9、c7、c6、c3を冗長ビットとし、符号ビットc12、c8、c5、c4、c2〜c0がデータを示すビットとした。また、符号ビットc12、c10、c5、c4、c2〜c0は、符号化前のデータビットd11、d10、d4、d3、d2〜d0に対応している。また、符号列CW14で符号化する前のデータビットd9〜d5は「00000」である。このため、復号列RW14では、復号ビットr11を符号ビットc11とし、復号ビットr10を符号ビットc8とし、復号ビットr9〜r5を「00000」とし、復号ビットr4〜r3をそれぞれ符号ビットc5〜c4とし、復号ビットr2〜r0をそれぞれ符号ビットc2〜c0とする。
【0177】
図41に示すように、データ列DW15に対し符号列CW15を割り当てたため、符号列CW15に対応する復号列RW15(第3の復号列)を割り当てる。
【0178】
符号列CW15では、符号ビットc11〜c9、c7、c6、c3を冗長ビットとし、符号ビットc12、c8、c5、c4、c2〜c0がデータを示すビットとした。また、符号ビットc12、c10、c5、c4、c2〜c0は、符号化前のデータビットd11、d10、d9、d8、d7、d1、d0に対応している。また、符号列CW15で符号化する前のデータビットd6〜d2は「11111」である。このため、復号列RW15では、復号ビットr11を符号ビットc12とし、復号ビットr10を符号ビットc8とし、復号ビットr9を符号ビットc5とし、復号ビットr8を符号ビットc4とし、復号ビットr7を符号ビットc2とし、復号ビットr6〜r2を「11111」とし、復号ビットr1〜r0をそれぞれ符号ビットc1〜c0とする。
【0179】
以下、上記12B13B符号化方式を採用した本発明の実施の形態3に係る表示装置用データ伝送システムの構成及び動作を説明する。
【0180】
図42は、本発明の実施の形態3に係る表示装置用データ伝送システムの構成を示している。
表示装置用データ伝送システムの全体構成は、実施の形態1の図17と同様であり、図17と比べてエンコーダとデコーダが異なっており、その他の構成は同様である。
【0181】
すなわち、図42では、エンコーダとして12B13BエンコーダENC3を備えており、デコーダとして12B13BデコーダDEC3を備えている。
【0182】
12B13BエンコーダENC3は、クロック生成回路CGから供給されたクロックclkに応じて、入力画像データである12ビットのパラレル送信データpdt1(データ列)を13ビットのパラレル送信データpdt2(符号列)に符号化する。
【0183】
12B13BエンコーダENC2は、12ビット判定部31と12B13B変換部32を有している。12ビット判定部31は、12ビットのデータ列の各データビットを判定し、どの符号列に変換するか決定する。
【0184】
12B13B変換部32は、12ビット判定部31の判定結果に基づいて、データ列を、当該データ列に対応した符号列に変換する。本実施形態では、実施の形態1と同様に、変換テーブルを使用せず、演算回路により符号化回路を実現している。
【0185】
12B13BデコーダDEC3は、クロックデータリカバリ回路CDRから供給されたリカバリクロックclkrに応じて、入力された13ビットのパラレル受信データpdr1(符号列)を12ビットのパラレル受信データpdr2(復号列)に復号化する。
【0186】
12B13BデコーダDEC3は、13ビット判定部41と13B12B変換部42を有している。13ビット判定部41は、13ビットの符号列の各符号ビットを判定し、符号列をどの復号列に変換するか決定する。特に符号ビットc10及びc9、符号ビットc7及びc6のビットを判断することでどの符号列か判定し変換する復号列を決定する。
【0187】
13B12B変換部42は、13ビット判定部41の判定結果に基づいて、符号列を、当該符号列に対応した復号列に変換する。本実施形態では、実施の形態1と同様に、変換テーブルを使用せず、演算回路により復号化回路を実現している。
【0188】
図43は、本発明の実施の形態3に係る12B13BエンコーダENC3の符号化動作を示している。
【0189】
まず、12ビット判定部31は、データ列のデータビットd9〜d5が「00000」であるかどうか判定する(S301)。S301で、データビットd9〜d5が「00000」である場合、12B13B変換部32は、データ列をCW14へ符号化する(S302)。すなわち、この場合、図35のように、データ列の中間ビットから上位ビットまで「00000」が連続しているため、符号列CW14を用いて、符号ビットc7、c6を「00」とし、符号ビットc10、c9を「11」とし、符号ビットc3を反転ビットとして符号化を行う。
【0190】
S301で、データビットd9〜d5が「00000」ではない場合、12ビット判定部31は、データ列のデータビットd6〜d2が「11111」であるかどうか判定する(S303)。S303で、データビットd7〜d2が「11111」である場合、12B13B変換部32は、データ列をCW15へ符号化する(S304)。すなわち、この場合、図36のように、データ列の中間ビットから下位ビットまで「11111」が連続しているため、符号列CW15を用いて、符号ビットc7、c6を「11」とし、符号ビットc10、c9を「00」とし、符号ビットc3を反転ビットとして符号化を行う。
【0191】
S303で、データビットd6〜d2が「11111」ではない場合、12ビット判定部31は、データ列のデータビットd3〜d0が全て同じビット値かどうか判定する(S305)。S305で、データビットd3〜d0が全て同じビット値である場合、12B13B変換部32は、データ列を符号列CW12へ符号化する(S306)。すなわち、この場合、図33のように、データ列の下位4ビットが連続しているため、符号列CW12を用いて、符号ビットc7、c6を「00」とし、符号ビットc10、c2を反転ビットとして符号化を行う。
【0192】
S305で、データビットd3〜d0が全て同じビット値ではない場合、12ビット判定部31は、データ列のデータビットd11〜d8が全て同じビット値であるかどうか判定する(S307)。S307で、データビットd11〜d8が全て同じビット値である場合、12B13B変換部32は、データ列を符号列CW13へ符号化する(S308)。すなわち、この場合、図34のように、データ列の上位4ビットが連続しているため、符号列CW13を用いて、符号ビットc7、c6を「11」とし、符号ビットc10、c2を反転ビットとして符号化を行う。
【0193】
S307で、データ列のデータビットd11〜d8が全て同じビット値ではない場合、12B13B変換部32は、データ列をCW11へ符号化する(S309)。すなわち、この場合、ビットが7ビット以上連続していないため、図32のように、符号列CW11を用いて、符号ビットc6を反転ビットとして符号化を行う。
【0194】
12B13BエンコーダENC3の具体的な回路構成については、実施の形態1と同様に演算回路により実現可能であるため説明を省略する。
【0195】
図44は、本発明の実施の形態3に係る12B13BデコーダDEC3の復号化動作を示している。
【0196】
まず、13ビット判定部41は、符号列の符号ビットc10とc9が同じビット値、かつ、符号ビットc7とc6が同じビット値かどうか判定する(S311)。S311で、符号列の符号ビットc10とc9が同じビット値、かつ、符号ビットc7とc6が同じビット値の場合、13ビット判定部41は、符号列の符号ビットc10が1かどうか判定する(S312)。S312で、符号ビットc10が1である場合、13B12B変換部42は、符号列CW14から復号列RW14へ復号化する(S313)。すなわち、この場合、図40のように、中間ビットから上位ビットまで「00000」で連続しているデータ列を符号化しているため、復号列RW14を用いて、復号ビットr9〜r5を「00000」として復号化を行う。
【0197】
S312で、符号ビットc10が1ではない場合、13B12B変換部42は、符号列CW15から復号列RW15へ復号化する(S314)。すなわち、この場合、図41のように、中間ビットから下位ビットまで「11111」で連続しているデータ列を符号化しているため、復号列RW15を用いて、復号ビットr6〜r1を「11111」として復号化を行う。
【0198】
S311で、符号列の符号ビットc10とc9が同じビット値、かつ、符号ビットc7とc6が同じビット値ではない場合、13ビット判定部41は、符号列の符号ビットc7とc6が同じビット値かどうか判定する(S315)。S315で、符号列の符号ビットc7とc6が同じビット値である場合、13ビット判定部41は、符号列の符号ビットc7が1かどうか判定する(S316)。S316で、符号ビットc7が1である場合、13B12B変換部42は、符号列CW13から復号列RW13へ復号化する(S317)。すなわち、この場合、図39のように、上位4ビットが連続しているデータ列を符号化しているため、復号列RW13を用いて、復号ビットr11〜r8を連続ビットとして復号化を行う。
【0199】
S316で、符号ビットc7が1ではない場合、13B12B変換部42は、符号列CW12から復号列RW12へ復号化する(S318)。すなわち、この場合、図38のように、下位4ビットが連続しているデータ列を符号化しているため、復号列RW12を用いて、復号ビットr3〜r0を連続ビットとして復号化を行う。
【0200】
S315で、符号列の符号ビットc7とc6が同じビット値ではない場合、13B12B変換部42は、符号列CW11から復号列RW11へ復号化する(S319)。すなわち、この場合、図37のように、ビットが7ビット以上連続しないデータ列を符号化しているため、復号列RW11を用いて、反転している符号ビットc6を除いて復号化を行う。
【0201】
12B13BデコーダDEC3の具体的な回路構成については、実施の形態1と同様に演算回路により実現可能であるため説明を省略する。
【0202】
以上のように、本実施形態では、12B13B符号化方式を採用することで、クロックエンベデッドシリアル伝送を可能にするとともに、符号化によるオーバーヘッドを削減している。12B13B符号化方式では、オーバーヘッドが13/12=1.083となるため、さらにオーバーヘッドを削減することができ、低消費電力化を図ることができる。
【0203】
また、本実施形態では、実施の形態1と同様に、所定ビット連続しないように、第1の符号列(CW11)、第2の符号列(CW12,CW13)、第3の符号列(CW14,CW15)を割り当て、符号ビットc7、c6と符号ビットc10、c9に反転ビットまたは連続ビット(固定ビット)を設定するようにした。これにより、変換テーブルを使用せずに、簡易な構成でエンコード、デコードできるようになり、回路規模を小さくすることができる。
【0204】
(本発明の実施の形態4)
以下、図面を参照して本発明の実施の形態4について説明する。本実施形態は16B17B符号化方式を採用する例である。16B17B符号化方式の場合でも、実施の形態1の図5と同様に符号列、復号列の割り当てが可能である。
【0205】
図45〜図54を用いて、本発明の実施の形態4で用いる16B17B符号化方式の割り当て例について説明する。
【0206】
図45に示すように、まず、ビットが所定ビット連続しないデータ列DW21(第1のデータ列)に対し、中間ビットである符号ビットc8を反転ビットとする符号列CW21(第1の符号列)を割り当てる(S101)。
【0207】
符号列CW21では、符号ビットc16〜c9をそれぞれデータビットd15〜d8とし、符号ビットc8をデータビットd8の反転ビットとし、符号ビットc7〜c0をそれぞれデータビットd7〜d0とする。
【0208】
符号列CW21では、符号ビットc8が符号ビットc9の反転ビットとなるため、符号ビットc16〜c9の範囲でビットが連続する可能性があり、また、符号ビットc8〜c0の範囲でビットが連続する可能性がある。つまり、最大で連続し得るビット数は、符号ビットc8〜c0が連続した場合の9ビットとなる。この符号化方式では、全てのデータ列で、連続ビットが9ビット以下となるように、符号列を割り当てる。
【0209】
次に、符号列CW21を連結させた場合に所定ビット連続し得るデータ列を特定する(S102)。ここでは、実施の形態1と同様に、 符号列(データ列)の下位ビットまたは上位ビットが4ビット連続する場合が、最も長くビットが連続するものとする。すなわち、符号列の下位ビットである符号ビットc3〜c0(データビットd3〜d0)が「0000」または「1111」の場合、符号列の上位ビットである符号ビットc16〜c13(データビットd15〜d12)が「0000」または「1111」の場合、8ビット以上連続する可能性が最も高い。
【0210】
次に、図46及び図47に示すように、ビットが連続する可能性の最も高い下位4ビットが連続するデータ列DW22と上位ビットが連続するデータ列DW23(第2のデータ列)に対し、中間符号ビットc9、c8を連続ビットとし、上位符号ビットc13及び下位符号ビットc3を反転ビットとする符号列CW22、CW23(第2の符号列)を割り当てる(S103)。
【0211】
図46のように、下位ビットのデータビットd3〜d0が「0000」または「1111」と連続するデータ列DW22には、符号列CW22を割り当てる。符号列CW22では、符号ビットc16〜c14をそれぞれデータビットd15〜d14とし、符号ビットc13をデータビットd12の反転ビットとし、符号ビットc12〜c10をそれぞれデータビットd12〜10とし、符号ビットc9、c8をそれぞれ「0」とし、符号ビットc7〜c4をそれぞれデータビットd9〜d6とし、符号ビットc3をデータビットd6の反転ビットとし、符号ビットc2、c1、c0をそれぞれデータビットd5、d4、d0とする。
【0212】
図47のように、上位ビットのデータビットd15〜d12が「0000」または「1111」と連続するデータ列DW23には、符号列CW3を割り当てる。符号列CW23では、符号ビットc16〜c14をそれぞれデータビットd15、d11〜d10とし、符号ビットc13をデータビットd9の反転ビットとし、符号ビットc12〜c10をそれぞれデータビットd9〜7とし、符号ビットc9、c8をそれぞれ「1」とし、符号ビットc7〜c4をそれぞれデータビットd6〜d3とし、符号ビットc3をデータビットd3の反転ビットとし、符号ビットc2、c1、c0をそれぞれデータビットd2、d1、d0とする。
【0213】
符号列CW22、CW23では、符号ビットc13、c3を反転ビットとているため、符号ビットc12〜c4の範囲で9ビット連続する可能性がある。
【0214】
次に、図48及び図49に示すように、符号列CW22,CW23を用いても連続ビットが生じるビット列として、符号列CW22,CW23の符号ビットc12〜c4が連続する場合に対応したデータ列DW24,DW25(第3のデータ列)に対し、中間ビットc9、c8を連続ビットとし、上位符号ビットc13,12を連続ビットとする符号列CW24,CW25(第3の符号列)を割り当てる(S104)。すなわち、符号列CW21〜CW23を用いてビットが最も長く連続するデータ列DW24,DW25に対し、符号列CW24,CW25を割り当てる。
【0215】
図48のように、データビットd9〜d3が「0000000」と連続するデータ列DW24には、符号列CW24を割り当てる。符号列CW24では、符号ビットc16〜c15をそれぞれデータビットd15〜d14とし、符号ビットc14〜c12を「011」とし、符号ビットc11をデータビットd13とし、符号ビットc10をデータビットd13の反転ビットとし、符号ビットc9〜8をそれぞれ「0」とし、符号ビットc7をデータビットd12の反転ビットとし、符号ビットc6〜4をそれぞれデータビットd12〜d10とし、符号ビットc3をデータビットd2の反転ビットとし、符号ビットc2〜c0をそれぞれデータビットd2〜d0とする。
【0216】
図49のように、データビットd12〜d6が「1111111」と連続するデータ列DW25には、符号列CW25を割り当てる。符号列CW25では、符号ビットc16〜c15をそれぞれデータビットd15〜d14とし、符号ビットc14〜c12を「100」とし、符号ビットc11をデータビットd13とし、符号ビットc10をデータビットd13の反転ビットとし、符号ビットc9〜8をそれぞれ「1」とし、符号ビットc7をデータビットd5の反転ビットとし、符号ビットc6〜4をそれぞれデータビットd5〜d3とし、符号ビットc3をデータビットd2の反転ビットとし、符号ビットc2〜c0をそれぞれデータビットd2〜d0とする。
【0217】
符号列CW24,CW25では、符号ビットc12〜c4の範囲でビットが連続することを防ぐために、符号ビットc10、c7に反転ビットを設けている。このため、符号列CW24,CW25では、最大でも連続するビットは3ビットに抑えられる。特に、符号列CW24,CW25では、ほぼ等間隔でビットが反転するように配置されているため、デコード時のクロック再生能力の低下を防ぐことができる。
【0218】
次に、符号列CW21〜CW25(第1の符号列〜第3の符号列)に対し、復号列RW21〜RW25(第1の復号列〜第3の復号列)を割り当てる(S105)。
【0219】
図50に示すように、データ列DW21に対し符号列CW21を割り当てたため、符号列CW21に対応する復号列RW21(第1の復号列)を割り当てる。
【0220】
符号列CW21では、符号ビットc8を冗長ビットとし、符号ビットc16〜c9、c7〜c0がデータを示すビットとした。また、符号ビットc16〜c9、c7〜c0は、符号化前のデータビットd15〜d8、d7〜d0に対応している。このため、復号列RW21では、復号ビットr15〜r8をそれぞれ符号ビットc16〜c9とし、復号ビットr7〜r0をそれぞれ符号ビットc7〜c0とする。
【0221】
図51に示すように、データ列DW22に対し符号列CW22を割り当てたため、符号列CW22に対応する復号列RW22(第2の復号列)を割り当てる。
【0222】
符号列CW22では、符号ビットc13、c9、c8、c3を冗長ビットとし、符号ビットc16〜c14、c12〜c10、c7〜c4、c2〜c0がデータを示すビットとした。また、符号ビットc16〜c14、c12〜10、c7〜c4、c2、c1は、符号化前のデータビットd15〜d13、d12〜10、d9〜d6、d5、d4に対応し、符号ビットc0が符号化前のデータビットd3〜d0を示している。このため、復号列RW22では、復号ビットr15〜r13をそれぞれ符号ビットc16〜c14とし、復号ビットr12〜r10をそれぞれ符号ビットc12〜c10とし、復号ビットr9〜r6をそれぞれ符号ビットc7〜c4とし、復号ビットr5〜r4をそれぞれ符号ビットc2〜c1とし、復号ビットr3〜r0をそれぞれ符号ビットc0とする。
【0223】
図52に示すように、データ列DW23に対し符号列CW23を割り当てたため、符号列CW23に対応する復号列RW23(第2の復号列)を割り当てる。
【0224】
符号列CW23では、符号ビットc13、c9、c8、c3を冗長ビットとし、符号ビットc16〜c14、c12〜c10、c7〜c4、c2〜c0がデータを示すビットとした。また、符号ビットc15〜c14、c12〜10、c7〜c4、c2、c1は、符号化前のデータビットd11〜d10、d9〜7、d6〜d3、d2、d1に対応し、符号ビットc16が符号化前のデータビットd15〜d12を示している。このため、復号列RW23では、復号ビットr15〜r12をそれぞれ符号ビットc16とし、復号ビットr11〜r10をそれぞれ符号ビットc15〜c14とし、復号ビットr9〜7をそれぞれ符号ビットc12〜c10とし、復号ビットr5〜r3をそれぞれ符号ビットc6〜c4とし、復号ビットr2〜r0をそれぞれ符号ビットc2〜c0とする。
【0225】
図53に示すように、データ列DW24に対し符号列CW24を割り当てたため、符号列CW24に対応する復号列RW24(第3の復号列)を割り当てる。
【0226】
符号列CW24では、符号ビットc14〜c12、c10〜c7、c3を冗長ビットとし、符号ビットc16〜c15、c11、c6〜c4、c2〜c0がデータを示すビットとした。また、符号ビットc16〜c15、c13、c6〜4、c2〜c0は、符号化前のデータビットd15〜d14、d13、d12〜d10、d2〜d0に対応し、符号列CW24で符号化する前のデータビットd9〜d3は「0000000」である。このため、復号列RW24では、復号ビットr15〜r14をそれぞれ符号ビットc16〜c15とし、復号ビットr13を符号ビットc11とし、復号ビットr12〜r10それぞれ符号ビットc6〜c4とし、復号ビットr9〜r3を「0000000」とし、復号ビットr2〜r0をそれぞれ符号ビットc2〜c0とする。
【0227】
図54に示すように、データ列DW25に対し符号列CW25を割り当てたため、符号列CW25に対応する復号列RW25(第3の復号列)を割り当てる。
【0228】
符号列CW25では、符号ビットc14〜c12、c10〜c7、c3を冗長ビットとし、符号ビットc16〜c15、c11、c6〜c4、c2〜c0がデータを示すビットとした。また、符号ビットc16〜c15、c13、c6〜4、c2〜c0は、符号化前のデータビットd15〜d14、d13、d5〜d3、d2〜d0に対応し、符号列CW25で符号化する前のデータビットd12〜d6は「1111111」である。このため、復号列RW25では、復号ビットr15〜r14をそれぞれ符号ビットc16〜c15とし、復号ビットr13を符号ビットc11とし、復号ビットr12〜r6を「1111111」とし、復号ビットr5〜r3それぞれ符号ビットc6〜c4とし、復号ビットr2〜r0をそれぞれ符号ビットc2〜c0とする。
【0229】
以下、上記16B17B符号化方式を採用した本発明の実施の形態4に係る表示装置用データ伝送システムの構成及び動作を説明する。
【0230】
図55は、本発明の実施の形態4に係る表示装置用データ伝送システムの構成を示している。
表示装置用データ伝送システムの全体構成は、実施の形態1の図17と同様であり、図17と比べてエンコーダとデコーダが異なっており、その他の構成は同様である。
【0231】
すなわち、図55では、エンコーダとして16B17BエンコーダENC4を備えており、デコーダとして16B17BデコーダDEC4を備えている。
【0232】
16B17BエンコーダENC4は、クロック生成回路CGから供給されたクロックclkに応じて、入力画像データである16ビットのパラレル送信データpdt1(データ列)を17ビットのパラレル送信データpdt2(符号列)に符号化する。
【0233】
16B17BエンコーダENC2は、16ビット判定部51と16B17B変換部52を有している。16ビット判定部51は、16ビットのデータ列の各データビットを判定し、どの符号列に変換するか決定する。
【0234】
16B17B変換部52は、16ビット判定部51の判定結果に基づいて、データ列を、当該データ列に対応した符号列に変換する。本実施形態では、実施の形態1と同様に、変換テーブルを使用せず、演算回路により符号化回路を実現している。
【0235】
16B17BデコーダDEC4は、クロックデータリカバリ回路CDRから供給されたリカバリクロックclkrに応じて、入力された17ビットのパラレル受信データpdr1(符号列)を16ビットのパラレル受信データpdr2(復号列)に復号化する。
【0236】
16B17BデコーダDEC4は、17ビット判定部61と17B16B変換部62を有している。17ビット判定部61は、17ビットの符号列の各符号ビットを判定し、符号列をどの復号列に変換するか決定する。特に符号ビットc13及びc12、符号ビットc9及びc8のビットを判断することでどの符号列か判定し変換する復号列を決定する。
【0237】
17B16B変換部62は、17ビット判定部61の判定結果に基づいて、符号列を、当該符号列に対応した復号列に変換する。本実施形態では、実施の形態1と同様に、変換テーブルを使用せず、演算回路により復号化回路を実現している。
【0238】
図56は、本発明の実施の形態4に係る16B17BエンコーダENC4の符号化動作を示している。
【0239】
まず、16ビット判定部51は、データ列のデータビットd9〜d3が「0000000」であるかどうか判定する(S401)。S405で、データビットd9〜d3が「0000000」である場合、16B17B変換部52は、データ列をCW24へ符号化する(S402)。すなわち、この場合、図48のように、データ列の中間ビットから下位ビットまで「0000000」が連続しているため、符号列CW24を用いて、符号ビットc9、c8を「00」とし、符号ビットc13、c12を「11」とし、符号ビットc10、c7、c3を反転ビットとして符号化を行う。
【0240】
S401で、データビットd9〜d3が「0000000」ではない場合、16ビット判定部51は、データ列のデータビットd12〜d6が「1111111」であるかどうか判定する(S403)。S403で、データビットd12〜d6が「1111111」である場合、16B17B変換部52は、データ列をCW25へ符号化する(S404)。すなわち、この場合、図49のように、データ列の中間ビットから上位ビットまで「1111111」が連続しているため、符号列CW25を用いて、符号ビットc9、c8を「11」とし、符号ビットc13、c12を「00」とし、符号ビットc10、c7、c3を反転ビットとして符号化を行う。
【0241】
S403で、データビットd12〜d6が「1111111」ではない場合、16ビット判定部51は、データ列のデータビットd3〜d0が全て同じビット値かどうか判定する(S405)。S405で、データビットd3〜d0が全て同じビット値である場合、16B17B変換部52は、データ列を符号列CW22へ符号化する(S406)。すなわち、この場合、図46のように、データ列の下位4ビットが連続しているため、符号列CW22を用いて、符号ビットc9、c8を「00」とし、符号ビットc13、c3を反転ビットとして符号化を行う。
【0242】
S405で、データビットd3〜d0が全て同じビット値ではない場合、16ビット判定部51は、データ列のデータビットd15〜d12が全て同じビット値であるかどうか判定する(S407)。S407で、データビットd15〜d12が全て同じビット値である場合、16B17B変換部52は、データ列を符号列CW23へ符号化する(S408)。すなわち、この場合、図47のように、データ列の上位4ビットが連続しているため、符号列CW23を用いて、符号ビットc9、c8を「11」とし、符号ビットc13、c3を反転ビットとして符号化を行う。
【0243】
S407で、データビットd15〜d12が全て同じビット値ではない場合、16B17B変換部52は、データ列をCW21へ符号化する(S409)。すなわち、この場合、ビットが9ビット以上連続していないため、図45のように、符号列CW21を用いて、符号ビットc8を反転ビットとして符号化を行う。
【0244】
16B17BエンコーダENC4の具体的な回路構成については、実施の形態1と同様に演算回路により実現可能であるため説明を省略する。
【0245】
図57は、本発明の実施の形態4に係る16B17BデコーダDEC4の復号化動作を示している。
【0246】
まず、17ビット判定部61は、符号列の符号ビットc13とc12が同じビット値、かつ、符号ビットc9とc8が同じビット値かどうか判定する(S411)。S411で、符号列の符号ビットc13とc12が同じビット値、かつ、符号ビットc9とc8が同じビット値の場合、17ビット判定部61は、符号列の符号ビットc13が1かどうか判定する(S412)。S412で、符号ビットc13が1である場合、17B16B変換部62は、符号列CW24から復号列RW24へ復号化する(S413)。すなわち、この場合、図53のように、中間ビットから下位ビットまで「0000000」で連続しているデータ列を符号化しているため、復号列RW24を用いて、復号ビットr9〜r3を「0000000」として復号化を行う。
【0247】
S412で、符号ビットc13が1ではない場合、17B16B変換部62は、符号列CW25から復号列RW25へ復号化する(S414)。すなわち、この場合、図54のように、中間ビットから上位ビットまで「1111111」で連続しているデータ列を符号化しているため、復号列RW25を用いて、復号ビットr12〜r6を「1111111」として復号化を行う。
【0248】
S411で、符号列の符号ビットc13とc12が同じビット値、かつ、符号ビットc9とc8が同じビット値ではない場合、17ビット判定部61は、符号列の符号ビットc9とc8が同じビット値かどうか判定する(S415)。S415で、符号列の符号ビットc9とc8が同じビット値である場合、17ビット判定部61は、符号列の符号ビットc9が1かどうか判定する(S416)。S416で、符号ビットc9が1である場合、17B16B変換部62は、符号列CW23から復号列RW23へ復号化する(S417)。すなわち、この場合、図52のように、上位4ビットが連続しているデータ列を符号化しているため、復号列RW23を用いて、復号ビットr15〜r11を連続ビットとして復号化を行う。
【0249】
S416で、符号ビットc9が1ではない場合、17B16B変換部62は、符号列CW22から復号列RW22へ復号化する(S418)。すなわち、この場合、図51のように、下位4ビットが連続しているデータ列を符号化しているため、復号列RW22を用いて、復号ビットr3〜r0を連続ビットとして復号化を行う。
【0250】
S415で、符号列の符号ビットc9とc8が同じビット値ではない場合、17B16B変換部62は、符号列CW21から復号列RW21へ復号化する(S419)。すなわち、この場合、図50のように、ビットが9ビット以上連続しないデータ列を符号化しているため、復号列RW21を用いて、反転している符号ビットc8を除いて復号化を行う。
【0251】
16B17BデコーダDEC4の具体的な回路構成については、実施の形態1と同様に演算回路により実現可能であるため説明を省略する。
【0252】
以上のように、本実施形態では、16B17B符号化方式を採用することで、クロックエンベデッドシリアル伝送を可能にするとともに、符号化によるオーバーヘッドを削減している。16B17B符号化方式では、オーバーヘッドが13/12=1.0625となるため、さらにオーバーヘッドを削減することができ、低消費電力化を図ることができる。
【0253】
また、本実施形態では、実施の形態1と同様に、所定ビット連続しないように、第1の符号列(CW21)、第2の符号列(CW22,CW23)、第3の符号列(CW24,CW25)を割り当て、符号ビットc8、c9と符号ビットc13、c12に反転ビットまたは連続ビット(固定ビット)を設定するようにした。これにより、変換テーブルを使用せずに、簡易な構成でエンコード、デコードできるようになり、回路規模を小さくすることができる。
【0254】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。例えば、上記の例では、表示装置用データ伝送システムについて説明したが、その他の伝送システムであってもよい。
【符号の説明】
【0255】
110 タイミングコントローラ
120 表示ドライバ
121 ラッチ回路
123 出力ドライバ
130 表示素子
11 8ビット判定部
12 8B9B変換部
21 9ビット判定部
22 9B8B変換部
31 12ビット判定部
32 12B13B変換部
41 13ビット判定部
42 13B12B変換部
51 16ビット判定部
52 16B17B変換部
61 17ビット判定部
62 17B16B変換部
CW1〜CW5 符号列
CW11〜CW15 符号列
CW21〜CW25 符号列
CDR クロックデータリカバリ回路
CG クロック生成回路
DEC1 4B5Bデコーダ
DEC2 8B9Bデコーダ
DEC3 12B13Bデコーダ
DEC4 16B17Bデコーダ
DW1〜DW5 データ列
DW11〜DW15 データ列
DW21〜DW25 データ列
ENC1 4B5Bエンコーダ
ENC2 8B9Bエンコーダ
ENC3 12B13Bエンコーダ
ENC4 16B17Bエンコーダ
FCP 周波数制御チャージポンプ
FD 周波数検出回路
LF ループフィルタ
PCP 位相制御チャージポンプ
PD 位相検出回路
PSC パラレルシリアルコンバータ
RW1〜RW5 復号列
RW11〜RW15 復号列
RW21〜RW25 復号列
SPC シリアルパラレルコンバータ
TL 伝送路
VCO 電圧制御発振回路

【特許請求の範囲】
【請求項1】
入力されるデータ列の上位ビット列または下位ビット列において同じビット値が所定ビット連続するか否か判定し、
前記所定ビット連続しないと判定された場合、隣接ビットと異なるビット値である反転ビットを中間ビットに有する第1符号列へ、前記データ列を変換し、
前記所定ビット連続すると判定された場合、隣接ビットと同じビット値である連続ビットを前記中間ビットに有するとともに、前記反転ビットを上位ビット列または下位ビット列に有する第2符号列へ、前記データ列を変換する、
符号化方法。
【請求項2】
前記第2符号列への変換では、前記データ列の上位ビット列が前記所定ビット連続する場合と、前記データ列の下位ビット列が前記所定ビット連続する場合とで、前記第2符号列の中間ビットに異なるビット値を設定する、
請求項1に記載の符号化方法。
【請求項3】
前記データ列の全ビットが同じビット値の場合、ビットの反転回数が多くなるように前記第2符号列の中間ビットを設定する、
請求項2に記載の符号化方法。
【請求項4】
前記第1の符号列および、前記第2の符号列を複数連結した場合に、同じビット値のビットが最も長く連続する場合、前記連続ビットを前記中間ビットに有するとともに、前記連続ビットを上位ビット列または下位ビット列に有する第3符号列へ、前記データ列を変換する、
請求項1乃至3のいずれか一項に記載の符号化方法。
【請求項5】
前記第3符号列への変換では、前記最も長く連続するビットのビット値に応じて、前記第3符号列の中間ビットに異なるビット値を設定するとともに、前記第3符号列の上位ビット列または下位ビット列に異なるビット値を設定する、
請求項4に記載の符号化方法。
【請求項6】
前記最も長く連続する複数のビットは、前記第1の符号列及び前記第2の符号列における上位ビット列または下位ビット列である、
請求項4または5に記載の符号化方法。
【請求項7】
前記最も長く連続する複数のビットは、前記第1の符号列及び前記第2の符号列における中間ビットを含むビット列である、
請求項4または5に記載の符号化方法。
【請求項8】
前記符号列のビット長は、前記データ列よりも1ビット長い、
請求項1乃至7のいずれか一項に記載の符号化方法。
【請求項9】
データ列を符号化した符号列の中間ビットが、隣接ビットと同じビット値の連続ビットであるか否か判定し、
前記連続ビットではないと判定された場合、前記符号列の中間ビットを除くビットを有する第1復号列へ、前記符号列を変換し、
前記連続ビットであると判定された場合、同じビット値が所定ビット連続した上位ビット列または下位ビット列を有する第2復号列へ、前記符号列を変換する、
復号化方法。
【請求項10】
前記第2復号列への変換では、前記符号列の中間ビットのビット値に応じて、前記第2復号列の上位ビット列または下位ビット列のいずれかを、前記所定ビット連続させる
請求項9に記載の復号方法。
【請求項11】
前記符号列の中間ビットが前記連続ビットであり、かつ、前記符号列の上位ビット列または下位ビット列が前記連続ビットを有する場合、同じビット値が前記所定ビットよりも少ないビット連続した上位ビット列または下位ビット列を有する第3復号列へ、前記符号列を変換する、
請求項9または10に記載の復号化方法。
【請求項12】
前記第3復号列への変換では、前記符号列の中間ビットと前記符号列の上位ビット列または下位ビット列のビット値に応じて、前記第3復号列の連続ビットのビット値を決定する、
請求項11に記載の復号化方法。
【請求項13】
前記符号列の中間ビットが前記連続ビットであり、かつ、前記符号列の上位ビット列または下位ビット列が前記連続ビットを有する場合、中間ビットから上位ビット列または下位ビット列まで同じビット値が連続する第3復号列へ、前記符号列を変換する、
請求項9または10に記載の復号化方法。
【請求項14】
前記第3復号列への変換では、前記符号列の中間ビットと前記符号列の上位ビット列または下位ビット列のビット値に応じて、前記第3復号列の連続ビットのビット値を決定する、
請求項13に記載の復号化方法。
【請求項15】
前記復号列のビット長は、前記符号列よりも1ビット短い、
請求項9乃至14のいずれか一項に記載の復号化方法。
【請求項16】
入力されるデータ列の上位ビット列または下位ビット列において同じビット値が所定ビット連続するか否か判定し、
前記所定ビット連続しないと判定された場合、隣接ビットと異なるビット値である反転ビットを中間ビットに有する第1符号列へ、前記データ列を変換し、
前記所定ビット連続すると判定された場合、隣接ビットと同じビット値である連続ビットを前記中間ビットに有するとともに、前記反転ビットを上位ビット列または下位ビット列に有する第2符号列へ、前記データ列を変換し、
前記変換した前記第1符号列または前記第2符号列を含む符号列を伝送し、
前記伝送された符号列の中間ビットが、隣接ビットと同じビット値の連続ビットであるか否か判定し、
前記連続ビットではないと判定された場合、前記伝送された符号列の中間ビットを除くビットを有する第1復号列へ、前記伝送された符号列を変換し、
前記連続ビットであると判定された場合、同じビット値が所定ビット連続した上位ビット列または下位ビット列を有する第2復号列へ、前記伝送された符号列を変換する、
伝送方法。
【請求項17】
入力されるデータ列の上位ビット列または下位ビット列において同じビット値が所定ビット連続するか否か判定するビット判定部と、
前記所定ビット連続しないと判定された場合、隣接ビットと異なるビット値である反転ビットを中間ビットに有する第1符号列へ、前記データ列を変換する第1変換部と、
前記所定ビット連続すると判定された場合、隣接ビットと同じビット値である連続ビットを前記中間ビットに有するとともに、前記反転ビットを上位ビット列または下位ビット列に有する第2符号列へ、前記データ列を変換する第2変換部と、
を備える符号化装置。
【請求項18】
データ列を符号化した符号列の中間ビットが、隣接ビットと同じビット値の連続ビットであるか否か判定するビット判定部と、
前記連続ビットではないと判定された場合、前記符号列の中間ビットを除くビットを有する第1復号列へ、前記符号列を変換する第1変換部と、
前記連続ビットであると判定された場合、同じビット値が所定ビット連続した上位ビット列または下位ビット列を有する第2復号列へ、前記符号列を変換する第2変換部と、
を備える復号化装置。
【請求項19】
入力されるデータ列の上位ビット列または下位ビット列において同じビット値が所定ビット連続するか否か判定する第1ビット判定部と、
前記所定ビット連続しないと判定された場合、隣接ビットと異なるビット値である反転ビットを中間ビットに有する第1符号列へ、前記データ列を変換する第1変換部と、
前記所定ビット連続すると判定された場合、隣接ビットと同じビット値である連続ビットを前記中間ビットに有するとともに、前記反転ビットを上位ビット列または下位ビット列に有する第2符号列へ、前記データ列を変換する第2変換部と、
前記変換した前記第1符号列または前記第2符号列を含む符号列を伝送する伝送部と、
前記伝送された符号列の中間ビットが、隣接ビットと同じビット値の連続ビットであるか否か判定する第2ビット判定部と、
前記連続ビットではないと判定された場合、前記伝送された符号列の中間ビットを除くビットを有する第1復号列へ、前記伝送された符号列を変換する第3変換部と、
前記連続ビットであると判定された場合、同じビット値が所定ビット連続した上位ビット列または下位ビット列を有する第2復号列へ、前記伝送された符号列を変換する第4変換部と、
を備える伝送システム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate

【図33】
image rotate

【図34】
image rotate

【図35】
image rotate

【図36】
image rotate

【図37】
image rotate

【図38】
image rotate

【図39】
image rotate

【図40】
image rotate

【図41】
image rotate

【図42】
image rotate

【図43】
image rotate

【図44】
image rotate

【図45】
image rotate

【図46】
image rotate

【図47】
image rotate

【図48】
image rotate

【図49】
image rotate

【図50】
image rotate

【図51】
image rotate

【図52】
image rotate

【図53】
image rotate

【図54】
image rotate

【図55】
image rotate

【図56】
image rotate

【図57】
image rotate


【公開番号】特開2013−98655(P2013−98655A)
【公開日】平成25年5月20日(2013.5.20)
【国際特許分類】
【出願番号】特願2011−237949(P2011−237949)
【出願日】平成23年10月28日(2011.10.28)
【出願人】(302062931)ルネサスエレクトロニクス株式会社 (8,021)
【Fターム(参考)】