(57)【要約】  本発明の符号器及び復号化方法は、一の入力信号を複数のブロックにグループ化し、複数のブロックは、現在のブロックと少なくとも１つの前のブロックとを含み、複数のブロックのそれぞれは、Ｎを正の整数、ｑを２より大きい整数とすると、少なくともＮ個のシンボルを含み、Ｎ個のシンボルのそれぞれは、ｑ種のシンボル値のうちの１つを有する、グループ化モジュールを含む。符号器は更に、少なくとも１つの前のブロックにおけるｑ種のシンボル値の発生を計数して第１のカウント数を生成し、現在のブロックにおけるｑ種のシンボル値の発生を計数して第２のカウント数を生成する計数モジュールを含む。符号器は更に、第１のカウント数及び第２のカウント数に基づいて現在のブロックを選択的に置換する置換モジュールを含む。【選択図】  図１Ａ
2009530982.tif 000002
【特許請求の範囲】
【請求項１】
一の入力信号を複数のブロックにグループ化し、前記複数のブロックは、現在のブロックと少なくとも１つの前のブロックとを含み、前記複数のブロックのそれぞれは、Ｎを正の整数、ｑを２より大きい整数とすると、少なくともＮ個のシンボルを含み、前記Ｎ個のシンボルのそれぞれは、ｑ種のシンボル値のうちの１つを有する、グループ化モジュールと、
前記少なくとも１つの前のブロックにおける前記ｑ種のシンボル値の発生を計数して第１のカウント数を生成し、前記現在のブロックにおける前記ｑ種のシンボル値の発生を計数して第２のカウント数を生成する、計数モジュールと、
前記第１のカウント数及び前記第２のカウント数に基づいて前記現在のブロックを選択的に置換する、置換モジュールと、
を備える符号器。
【請求項２】
前記置換モジュールは、前記現在のブロックにおける前記Ｎ個のシンボルを置換する場合に、前記現在のブロックにおける最多のシンボルxを、前記少なくとも１つの前のブロックにおける最少のシンボルｙにマッピングする、請求項１に記載の符号器。
【請求項３】
前記置換モジュールは、ｘを入力置換、ｙを出力置換、ｚを選択された置換とすると、次の関係ｙ＝ｘ＋ｚ  ｍｏｄ  ｑを適用する、請求項２に記載の符号器。
【請求項４】
前記置換モジュールは、前記現在のブロックにおける前記Ｎ個のシンボルを置換する場合に、前記現在のブロックにおける２つの最多のシンボルｘ１、ｘ２を、前記少なくとも１つの前のブロックにおける２つの最少のシンボルｙ１、ｙ２にマッピングする、請求項２に記載の符号器。
【請求項５】
前記置換モジュールは、ＧＦ（ｑ）において、ａ及びｂについてｙ１＝ａｘ１＋ｂ及びｙ２＝ａｘ２＋ｂを解く、請求項４に記載の符号器。
【請求項６】
前記置換モジュールは、前記現在のブロックにおける前記Ｎ個のシンボルを置換する場合に、前記現在のブロックにおける最多のシンボルを、前記少なくとも１つの前のブロックにおける２番目に最少のシンボルに、且つ、前記現在のブロックにおける最少のシンボルを、前記少なくとも１つの前のブロックにおける最多のシンボルにマッピングする、請求項２に記載の符号器。
【請求項７】
請求項１の符号器と、ターゲット装置とを備えるシステム。
【請求項８】
前記ターゲット装置は、送信器を含む、請求項７に記載のシステム。
【請求項９】
前記ターゲット装置は、メモリ装置を含む、請求項７に記載のシステム。
【請求項１０】
前記メモリ装置は、不揮発性メモリを含む、請求項９に記載のシステム。
【請求項１１】
前記メモリ装置は、ハードディスクドライブを含む、請求項９に記載のシステム。
【請求項１２】
前記置換モジュールは、前記現在のブロックにおけるｒ個の最多のシンボルを、それまでで最少の複数のシンボルにマッピングし、且つ、前記現在のブロックにおけるs個の最少のシンボルを、それまでで最多のシンボルにマッピングし、ここで、ｒ及びｓは０以上とする、請求項１に記載の符号器。
【請求項１３】
ｑ−ａｒｙシンボルシーケンス入力信号（ｑ＞２）を有するシステムであって、
均衡の取れた非バイナリのｑ−ａｒｙ出力シンボルシーケンスを生成する符号器を備え、
ｍｘを、前記出力シーケンスにおけるｑ種の可能なシンボルのそれぞれの発生回数である（ただしｘ＝０，１，・・・，ｑ−１）とすると、前記符号器は、次の条件：０＜ｍｉｎ（ｍｘ）＜＝１／ｑ、１／ｑ＜＝ｍａｘ（ｍｘ）＜１、及び、ｍａｘ（ｍｘ）−ｍｉｎ（ｍｘ）＜α（ただし、αは０＜＝α＜１の範囲内の設計パラメータ）のうちの少なくとも１つを満足する前記出力シンボルシーケンスを生成する、システム。
【請求項１４】
一の入力信号を複数のブロックにグループ化する段階であって、前記複数のブロックは、現在のブロックと少なくとも１つの前のブロックとを含み、前記複数のブロックのそれぞれは、Ｎを正の整数、ｑを２より大きい整数とすると、少なくともＮ個のシンボルを含み、前記Ｎ個のシンボルのそれぞれは、ｑ種のシンボル値のうちの１つを有する、段階と、
前記少なくとも１つの前のブロックにおける前記ｑ種のシンボル値の発生を計数して第１のカウント数を生成し、前記現在のブロックにおける前記ｑ種のシンボル値の発生を計数して第２のカウント数を生成する段階と、
前記第１のカウント数及び前記第２のカウント数に基づいて前記現在のブロックを選択的に置換する段階と、
を含む符号化方法。
【請求項１５】
前記現在のブロックにおける前記Ｎ個のシンボルを置換する場合に、前記現在のブロックにおける最多のシンボルxを、前記少なくとも１つの前のブロックにおける最少のシンボルｙにマッピングする段階を更に含む、請求項１４に記載の方法。
【請求項１６】
前記選択的に置換する段階は、
ｘを入力置換、ｙを出力置換、ｚを選択された置換とすると、次の関係ｙ＝ｘ＋ｚ  ｍｏｄ  ｑを適用する段階を含む、請求項１４に記載の方法。
【請求項１７】
前記置換する段階は、
前記現在のブロックにおける前記Ｎ個のシンボルを置換する場合に、前記現在のブロックにおける２つの最多のシンボルｘ１、ｘ２を、前記少なくとも１つの前のブロックにおける２つの最少のシンボルｙ１、ｙ２にマッピングする段階を含む、請求項１４に記載の方法。
【請求項１８】
前記置換する段階は、
ａ及びｂについてｙ１＝ａｘ１＋ｂ及びｙ２＝ａｘ２＋ｂを解く段階を含む、請求項１４に記載の方法。
【請求項１９】
前記置換する段階は、
前記現在のブロックにおける前記Ｎ個のシンボルを置換する場合に、前記現在のブロックにける最多のシンボルを、前記少なくとも１つの前のブロックにおける２番目に最少のシンボルに、且つ、前記現在のブロックにおける最少のシンボルを、前記少なくとも１つの前のブロックにおける最多のシンボルにマッピングする段階を含む、請求項１４に記載の方法。
【請求項２０】
前記置換する段階は、
前記現在のブロックにおけるｒ個の最多のシンボルを、それまでで最少の複数のシンボルにマッピングし、且つ、前記現在のブロックにおけるｓ個の最少のシンボルを、それまでで最多の複数のシンボルにマッピングする段階を含み、
ここで、ｒ及びｓは０以上とする、請求項１４に記載の方法。
【請求項２１】
ｑ−ａｒｙシンボルシーケンス入力信号（ｑ＞２）を有する符号器を動作させる方法であって、
均衡の取れた非バイナリのｑ−ａｒｙ出力シンボルシーケンスを生成する段階と、
ｍｘを、前記出力シーケンスにおけるｑ種の可能なシンボルのそれぞれの発生回数である（ｘ＝０，１，・・・，ｑ−１）とすると、次の条件：０＜ｍｉｎ（ｍｘ）＜＝１／ｑ、１／ｑ＜＝ｍａｘ（ｍｘ）＜１、及び、ｍａｘ（ｍｘ）−ｍｉｎ（ｍｘ）＜α（ただし、αは０＜＝α＜１の範囲内の設計パラメータ）のうちの少なくとも１つを、前記出力シンボルシーケンスにおいて満足させる段階と、
を含む方法。
【請求項２２】
一の入力信号を複数のブロック及び複数の置換シンボルにグループ化し、ｑ及びＮを２より大きい整数とすると、前記複数のブロックは、Ｎ個のシンボルを含み、前記Ｎ個のシンボルのそれぞれは、ｑ種のシンボル値のうちの１つを有する、グループ化モジュールと、
前記複数の置換シンボルのうちの１つに基づいて前記複数のブロックのうちの第１のブロックを逆置換し、前記置換に基づいた復号化出力信号を生成する、置換モジュールと、
を備える復号器。
【請求項２３】
前記第１のブロックは、前記置換シンボルに隣接して配列される、請求項２２に記載の復号器。
【請求項２４】
前記置換シンボルは、前記第１のブロックの前記Ｎ個のシンボルの前記ｑ種のシンボル値のそれぞれに加算される又はそれぞれから減算される、請求項２２に記載の復号器。
【請求項２５】
前記置換モジュールは、前記第１のブロックの前記Ｎ個のシンボルの前記ｑ種のシンボル値から前記置換シンボルの第２のシンボルを減算し、減算後に、前記置換シンボルの前記第１のシンボルによって除算する、請求項２２に記載の復号器。
【請求項２６】
請求項２２の復号器と、ターゲット装置とを備えるシステム。
【請求項２７】
前記ターゲット装置は、受信器を含む、請求項２６に記載のシステム。
【請求項２８】
前記ターゲット装置は、メモリ装置を含む、請求項２６に記載のシステム。
【請求項２９】
前記メモリ装置は、不揮発性メモリを含む、請求項２８に記載のシステム。
【請求項３０】
前記メモリ装置は、ハードディスクドライブを含む、請求項２８に記載のシステム。
【請求項３１】
一の入力信号を複数のブロック及び複数の置換シンボルにグループ化する段階であって、ｑ及びＮを２より大きい整数とすると、前記複数のブロックは、Ｎ個のシンボルを含み、前記Ｎ個のシンボルのそれぞれは、ｑ種のシンボル値のうちの１つを有する、段階と、
前記複数の置換シンボルのうちの１つに基づいて前記複数のブロックのうちの第１のブロックを逆置換し、前記置換に基づいた復号化出力信号を生成する段階と、
を含む復号化方法。
【請求項３２】
前記第１のブロックを、前記置換シンボルに隣接して配列する段階を更に含む、請求項３１に記載の方法。
【請求項３３】
前記置換シンボルを、前記第１のブロックの前記Ｎ個のシンボルの前記ｑ種のシンボル値のそれぞれに加算する又はそれぞれから減算する段階を更に含む、請求項３１に記載の方法。
【請求項３４】
前記第１のブロックの前記Ｎ個のシンボルの前記ｑ種のシンボル値から前記置換シンボルの第２のシンボルを減算する段階と、
減算後に、前記置換シンボルの前記第１のシンボルによって除算する段階と、
を更に含む、請求項３１に記載の方法。
【請求項３５】
一の入力信号を複数のブロック及び複数の置換シンボルにグループ化する段階であって、ｑ及びＮを２より大きい整数とすると、前記複数のブロックは、Ｎ個のシンボルを含み、前記Ｎ個のシンボルのそれぞれは、ｑ種のシンボル値のうちの１つを有する、段階と、
前記複数の置換シンボルのうちの１つに基づいて前記複数のブロックのうちの第１のブロックを逆置換し、前記置換に基づいた複合化された出力信号を生成する段階と、
を含む復号化方法。
【請求項３６】
前記第１のブロックを、前記置換シンボルに隣接して配列する段階を更に含む、請求項３５に記載の方法。
【請求項３７】
前記置換シンボルを、前記第１のブロックの前記Ｎ個のシンボルの前記ｑ種のシンボル値のそれぞれに加算する又はそれぞれから減算する段階を更に含む、請求項３５に記載の方法。
【請求項３８】
前記第１のブロックの前記Ｎ個のシンボルの前記ｑ種のシンボル値から前記置換シンボルの第２のシンボルを減算する段階と、
減算後に、前記置換シンボルの前記第１のシンボルによって除算する段階と、
を更に含む、請求項３５に記載の方法。
【発明の詳細な説明】
【関連出願への相互参照】
【０００１】
本願は、２００６年３月２０日に出願した米国特許仮出願第６０／７８３，９４１号及び２００７年１月４日に出願した米国特許出願第１１／６４９，８９９号の利益を主張する。これらの出願の開示内容を本願に参照として組み込むものとする。
【技術分野】
【０００２】
本開示は、通信チャネルにおけるデータ符号化、より具体的には、非バイナリのバランス符号を生成する方法及び装置に係る。
【背景技術】
【０００３】
本願に記載する「背景技術」の記載は、本開示の背景の概要を説明することを目的とする。本願の発明者の仕事は、この「背景技術」に記載する範囲において、また、出願時には従来技術としてみなされないこの記載の特徴は、本開示の従来技術として明示的にも暗示的にも認められるものではない。
【０００４】
多くの通信システムは、通信できる信号のタイプについて制限される。多くの場合、低周波のエネルギーは、受信器／送信器において電力損失が大きくなる点、及び、通信チャネルの高通過周波数特性といった理由から望ましくない。バイナリデータストリームでは、低周波成分の大きさは、かかるデータストリーム内の連続する「１」又は「０」の数と、送信された「１」と「０」の総数の不均衡度合いによって決まる。回線符号は、デジタル通信システムにおいて、この低周波のエネルギーを低減するために用いられる。
【０００５】
広く使用されている８ｂ／１０ｂ回線符号は、「１」又は「０」が５以上連続せず、また、直流成分がないバイナリデータストリームを生成する。「直流成分がない」とは、送信された「１」の総数から送信された「０」の総数を減算したものは、ゼロの両側で２つの定数によって範囲が決められることを意味する。この２つの定数は、大抵の場合、互いに反対である。８ｂ／１０ｂ符号は、ユーザデータの各８ビットを符号化データの１０ビットに置き換える。ビット数を８から１０に２つ増加することは、８ｂ／１０ｂ符号には２５％（２／８）の冗長性があることを意味する。シンボルを用いるデジタル通信及び記録システムでは、各シンボルが、送信シーケンスにおいて受信器の適応動作を支援するのに十分な頻度で出現すると、効果的である。
【発明の概要】
【０００６】
本発明の符号器は、一の入力信号を複数のブロックにグループ化し、複数のブロックは、現在のブロックと少なくとも１つの前のブロックとを含み、Ｎを正の整数、ｑを２より大きい整数とすると、複数のブロックのそれぞれは、少なくともＮ個のシンボルを含み、Ｎ個のシンボルのそれぞれは、ｑ種のシンボル値のうちの１つを有する、グループ化モジュールを含む。かかる符号器は更に、少なくとも１つの前のブロックにおけるｑ種のシンボル値の発生を計数して第１のカウント数を生成し、現在のブロックにおけるｑ種のシンボル値の発生を計数して第２のカウント数を生成する計数モジュールを含む。かかる符号器は更に、第１のカウント数及び第２のカウント数に基づいて現在のブロックを選択的に置換する置換モジュールを含む。
【０００７】
更なる特徴において、かかる置換モジュールは、現在のブロックにおけるＮ個のシンボルを置換する場合に、現在のブロックにおける最多のシンボルxを、少なくとも１つの前のブロックにおける最少のシンボルｙにマッピングする。かかる置換モジュールは更に、ｘを入力置換、ｙを出力置換、ｚを選択された置換とすると、次の関係ｙ＝ｘ＋ｚ  ｍｏｄ  ｑを適用しうる。かかる置換モジュールは、現在のブロックにおけるＮ個のシンボルを置換する場合に、現在のブロックにおける２つの最多のシンボルｘ１、ｘ２を、少なくとも１つの前のブロックにおける２つの最少のシンボルｙ１、ｙ２にマッピングしうる。かかる置換モジュールは更に、ａ及びｂについてｙ１＝ａｘ１＋ｂ及びｙ２＝ａｘ２＋ｂを解きうる。
【０００８】
更に別の特徴において、かかる置換モジュールは、現在のブロックにおけるＮ個のシンボルを置換する場合に、現在のブロックにおける最多のシンボルを、少なくとも１つの前のブロックにおける２番目に最少のシンボルに、且つ、現在のブロックにおける最少のシンボルを、少なくとも１つの前のブロックにおける最多のシンボルにマッピングする。
【０００９】
別の特徴では、かかる符号器は、ターゲット装置を含むシステム内に組み込まれうる。ターゲット装置は、送信器又はメモリ装置を含みうる。メモリ装置は、不揮発性メモリ又はハードディスクドライブを含みうる。
【００１０】
別の特徴において、かかる置換モジュールは、現在のブロックにおけるｒ個の最多のシンボルを、それまでで最少の複数のシンボルにマッピングし、且つ、現在のブロックにおけるs個の最少のシンボルを、それまでで最多のシンボルにマッピングし、ここで、ｒ及びｓは０以上である。
【００１１】
本開示の別の特徴では、ｑ−ａｒｙシンボルシーケンス入力信号（ｑ＞２）を有する符号器は、均衡の取れた非バイナリのｑ−ａｒｙ出力シンボルシーケンスを生成する符号器を備え、ｍｘは、出力シーケンスにおけるｑ種の可能なシンボルのそれぞれの発生回数である（ただしｘ＝０，１，・・・，ｑ−１）とすると、出力シンボルシーケンスは、次の条件：０＜ｍｉｎ（ｍｘ）＜＝１／ｑ、１／ｑ＜＝ｍａｘ（ｍｘ）＜１、及び、ｍａｘ（ｍｘ）−ｍｉｎ（ｍｘ）＜α（ただし、αは０＜＝α＜１の範囲内の設計パラメータ）のうちの少なくとも１つを満足する。
【００１２】
符号化方法は、一の入力信号を複数のブロックにグループ化する段階であって、複数のブロックは、現在のブロックと少なくとも１つの前のブロックとを含み、複数のブロックのそれぞれは、Ｎを正の整数、ｑを２より大きい整数とすると、少なくともＮ個のシンボルを含み、Ｎ個のシンボルのそれぞれは、ｑ種のシンボル値のうちの１つを有する、段階を含む。かかる方法は更に、少なくとも１つの前のブロックにおけるｑ種のシンボル値の発生を計数して第１のカウント数を生成し、現在のブロックにおけるｑ種のシンボル値の発生を計数して第２のカウント数を生成する段階と、第１のカウント数及び第２のカウント数に基づいて現在のブロックを選択的に置換する段階とを含む。
【００１３】
別の特徴において、かかる方法は、現在のブロックにおけるＮ個のシンボルを置換する場合に、現在のブロックにおける最多のシンボルxを、少なくとも１つの前のブロックにおける最少のシンボルｙにマッピングする段階を更に含む。かかる方法は更に、選択的に置換する段階は、ｘを入力置換、ｙを出力置換、ｚを選択された置換とすると、次の関係ｙ＝ｘ＋ｚ  ｍｏｄ  ｑを適用する段階を含む。置換する段階は、現在のブロックにおけるＮ個のシンボルを置換する場合に、現在のブロックにおける２つの最多のシンボルｘ１、ｘ２を、少なくとも１つの前のブロックにおける２つの最少のシンボルｙ１、ｙ２にマッピングする段階を含みうる。置換する段階は更に、ａ及びｂについてｙ１＝ａｘ１＋ｂ及びｙ２＝ａｘ２＋ｂを解く段階を含みうる。置換する段階は、現在のブロックにおけるＮ個のシンボルを置換する場合に、現在のブロックにける最多のシンボルを、少なくとも１つの前のブロックにおける２番目に最少のシンボルに、且つ、現在のブロックにおける最少のシンボルを、少なくとも１つの前のブロックにおける最多のシンボルにマッピングする段階を含みうる。
【００１４】
別の特徴において、置換する段階は、現在のブロックにおけるｒ個の最多のシンボルを、それまでで最少の複数のシンボルにマッピングし、且つ、現在のブロックにおけるｓ個の最少のシンボルを、それまでで最多の複数のシンボルにマッピングする段階を含みうる。ただし、ｒ及びｓは０以上である。
【００１５】
本開示の別の特徴において、ｑ−ａｒｙシンボルシーケンス入力信号（ｑ＞２）を有する符号器を動作させる方法は、均衡の取れた非バイナリのｑ−ａｒｙ出力シンボルシーケンスを生成する段階と、ｍｘは、出力シーケンスにおけるｑ種の可能なシンボルのそれぞれの発生回数である（ｘ＝０，１，・・・，ｑ−１）とすると、次の条件：０＜ｍｉｎ（ｍｘ）＜＝１／ｑ、１／ｑ＜＝ｍａｘ（ｍｘ）＜１、及び、ｍａｘ（ｍｘ）−ｍｉｎ（ｍｘ）＜α（ただし、αは０＜＝α＜１の範囲内の設計パラメータ）のうちの少なくとも１つを、出力シンボルシーケンスにおいて満足させる段階とを含む。
【００１６】
別の特徴において、本発明の符号器は、一の入力信号を複数のブロックにグループ化し、複数のブロックは、現在のブロックと少なくとも１つの前のブロックとを含み、複数のブロックのそれぞれは、Ｎを正の整数、ｑを２より大きい整数とすると、少なくともＮ個のシンボルを含み、Ｎ個のシンボルのそれぞれは、ｑ種のシンボル値のうちの１つを有する、グループ化手段を含む。符号器は更に、少なくとも１つの前のブロックにおけるｑ種のシンボル値の発生を計数して第１のカウント数を生成し、現在のブロックにおけるｑ種のシンボル値の発生を計数して第２のカウント数を生成する数手段を含む。符号器は更に、第１のカウント数及び第２のカウント数に基づいて現在のブロックを選択的に置換する置換手段を含む。
【００１７】
別の特徴において、かかる符号器は、現在のブロックにおけるＮ個のシンボルを置換する場合に、現在のブロックにおける最多のシンボルｘを、少なくとも１つの前のブロックにおける最少のシンボルｙにマッピングするマッピング手段を含む。
【００１８】
別の特徴において、かかる置換手段は、ｘを入力置換、ｙを出力置換、ｚを選択された置換とすると、次の関係ｙ＝ｘ＋ｚ  ｍｏｄ  ｑを適用する手段を含む。
【００１９】
別の特徴において、請求項２３の符号器における置換は、現在のブロックにおけるＮ個のシンボルを置換する場合に、現在のブロックにおける２つの最多のシンボルｘ１、ｘ２を、少なくとも１つの前のブロックにおける２つの最少のシンボルｙ１、ｙ２にマッピングすることを含む。
【００２０】
別の特徴において、システムは、ターゲット手段とかかる符号器を含みうる。ターゲット手段は、送信手段を含みうる。ターゲット手段は更に、格納手段を含みうる。格納手段は、不揮発性の格納手段又は格納ハードディスク手段を含みうる。
【００２１】
別の特徴において、かかる置換手段は、ａ及びｂについてｙ１＝ａｘ１＋ｂ及びｙ２＝ａｘ２＋ｂを解く手段を含む。
【００２２】
別の特徴において、かかる置換手段は、現在のブロックにおけるＮ個のシンボルを置換する場合に、現在のブロックにおける最多のシンボルを、少なくとも１つの前のブロックにおける２番目に最少のシンボルに、且つ、現在のブロックにおける最少のシンボルを、少なくとも１つの前のブロックにおける最多のシンボルにマッピングするマッピング手段を含む。
【００２３】
別の特徴において、かかる置換手段は、現在のブロックにおけるｒ個の最多のシンボルを、それまでで最少の複数のシンボルにマッピングし、且つ、現在のブロックにおけるs個の最少のシンボルを、それまでで最多のシンボルにマッピングするマッピング手段を含み、ここで、ｒ及びｓは０以上である。
【００２４】
本開示の別の特徴において、ｑ−ａｒｙシンボルシーケンス入力信号（ｑ＞２）を有する符号器は、均衡の取れた非バイナリのｑ−ａｒｙ出力シンボルシーケンスを生成する生成手段を備え、ｍｘは、出力シーケンスにおけるｑ種の可能なシンボルのそれぞれの発生回数である（ただしｘ＝０，１，・・・，ｑ−１）とすると、出力シンボルシーケンスは、次の条件：０＜ｍｉｎ（ｍｘ）＜＝１／ｑ、１／ｑ＜＝ｍａｘ（ｍｘ）＜１、及び、ｍａｘ（ｍｘ）−ｍｉｎ（ｍｘ）＜α（ただし、αは０＜＝α＜１の範囲内の設計パラメータ）のうちの少なくとも１つを満足する。
【００２５】
符号化のためにプロセッサによって使用されるべく格納されるコンピュータプログラムは、一の入力信号を複数のブロックにグループ化することを含み、複数のブロックは、現在のブロックと少なくとも１つの前のブロックとを含み、複数のブロックのそれぞれは、Ｎを正の整数、ｑを２より大きい整数とすると、少なくともＮ個のシンボルを含み、Ｎ個のシンボルのそれぞれは、ｑ種のシンボル値のうちの１つを有する。コンピュータプログラムは更に、少なくとも１つの前のブロックにおけるｑ種のシンボル値の発生を計数して第１のカウント数を生成し、現在のブロックにおけるｑ種のシンボル値の発生を計数して第２のカウント数を生成することを含む。コンピュータプログラムは、第１のカウント数及び第２のカウント数に基づいて現在のブロックを選択的に置換することを含む。
【００２６】
別の特徴において、コンピュータプログラムは、現在のブロックにおけるＮ個のシンボルを置換する場合に、現在のブロックにおける最多のシンボルxを、少なくとも１つの前のブロックにおける最少のシンボルｙにマッピングすることを含みうる。
【００２７】
別の特徴において、コンピュータプログラムは、選択的に置換することは、ｘを入力置換、ｙを出力置換、ｚを選択された置換とすると、次の関係ｙ＝ｘ＋ｚ  ｍｏｄ  ｑを適用することを含みうる。
【００２８】
別の特徴において、コンピュータプログラムは更に、現在のブロックにおけるＮ個のシンボルを置換する場合に、現在のブロックにおける２つの最多のシンボルｘ１、ｘ２を、少なくとも１つの前のブロックにおける２つの最少のシンボルｙ１、ｙ２にマッピングすることを含みうる。かかる置換は更に、ａ及びｂについてｙ１＝ａｘ１＋ｂ及びｙ２＝ａｘ２＋ｂを解くことを含みうる。かかる置換は更に、現在のブロックにおけるＮ個のシンボルを置換する場合に、現在のブロックにける最多のシンボルを、少なくとも１つの前のブロックにおける２番目に最少のシンボルに、且つ、現在のブロックにおける最少のシンボルを、少なくとも１つの前のブロックにおける最多のシンボルにマッピングすることを含みうる。
【００２９】
別の特徴において、コンピュータプログラムは更に、現在のブロックにおけるｒ個の最多のシンボルを、それまでで最少の複数のシンボルにマッピングし、且つ、現在のブロックにおけるｓ個の最少のシンボルを、それまでで最多の複数のシンボルにマッピングすることを含みうる。ここで、ｒ及びｓは０以上である。本開示の別の特徴において、有形のコンピュータ媒体上に格納されるコンピュータプログラムは、符号化のためにｑ−ａｒｙシンボルシーケンス入力信号（ｑ＞２）を有し、また、均衡の取れた非バイナリのｑ−ａｒｙ出力シンボルシーケンスを生成する段階を含み、ｍｘは、出力シーケンスにおけるｑ種の可能なシンボルのそれぞれの発生回数である（ｘ＝０，１，・・・，ｑ−１）とすると、出力シンボルシーケンスは、次の条件：０＜ｍｉｎ（ｍｘ）＜＝１／ｑ、１／ｑ＜＝ｍａｘ（ｍｘ）＜１、及び、ｍａｘ（ｍｘ）−ｍｉｎ（ｍｘ）＜α（ただし、αは０＜＝α＜１の範囲内の設計パラメータ）のうちの少なくとも１つを、出力シンボルシーケンスにおいて満足させる。
【００３０】
別の特徴において、本発明の復号器は、一の入力信号を複数のブロック及び複数の置換シンボルにグループ化し、複数のブロックは、ｑ及びＮを２より大きい整数とすると、Ｎ個のシンボルを含み、Ｎ個のシンボルのそれぞれは、ｑ種のシンボル値のうちの１つを有する、グループ化モジュールを含む。かかる復号器は更に、複数の置換シンボルのうちの１つに基づいて複数のブロックのうちの第１のブロックを置換し、置換に基づいた復号化出力信号を生成する置換モジュールを含みうる。
【００３１】
別の特徴において、第１のブロックは、置換シンボルに隣接して配列される。
【００３２】
別の特徴において、かかる置換シンボルは、第１のブロックのＮ個のシンボルのｑ種のシンボル値のそれぞれに加算される又はそれぞれから減算される。かかる置換モジュールは、第１のブロックのＮ個のシンボルのｑ種のシンボル値から置換シンボルの第２のシンボルを減算し、減算後に、置換シンボルの第１のシンボルによって除算しうる。
【００３３】
別の特徴において、システムは、ターゲット装置とかかる復号器とを備えうる。ターゲット装置は、受信器を含みうる。ターゲット装置は、不揮発性メモリ又はハードディスクドライブといったメモリ装置を含みうる。
【００３４】
別の特徴において、復号化方法は、一の入力信号を複数のブロック及び複数の置換シンボルにグループ化する段階であって、複数のブロックは、ｑ及びＮを２より大きい整数とすると、Ｎ個のシンボルを含み、Ｎ個のシンボルのそれぞれは、ｑ種のシンボル値のうちの１つを有する、段階と、複数の置換シンボルのうちの１つに基づいて複数のブロックのうちの第１のブロックを置換し、置換に基づいた復号化出力信号を生成する段階とを含みうる。
【００３５】
別の特徴において、かかる方法は、第１のブロックを、置換シンボルに隣接して配列する段階を更に含みうる。
【００３６】
別の特徴において、かかる方法は、置換シンボルを、第１のブロックのＮ個のシンボルのｑ種のシンボル値のそれぞれに加算する又はそれぞれから減算する段階を更に含みうる。
【００３７】
別の特徴において、かかる方法は、第１のブロックのＮ個のシンボルのｑ種のシンボル値から置換シンボルの第２のシンボルを減算する段階と、減算後に、置換シンボルの第１のシンボルによって除算する段階とを更に含みうる。
【００３８】
開示の別の特徴において、本発明の復号器は、グループ化手段と、置換手段とを備え、グループ化手段は、一の入力信号を複数のブロック及び複数の置換シンボルにグループ化し、複数のブロックは、ｑ及びＮは２より大きい整数とすると、Ｎ個のシンボルを含み、Ｎ個のシンボルのそれぞれは、ｑ種のシンボル値のうちの１つを有し、置換手段は、複数の置換シンボルのうちの１つに基づいて複数のブロックのうちの第１のブロックを置換し、置換に基づいた復号化出力信号を生成する。
【００３９】
別の特徴において、かかる復号器は、第１のブロックを、置換シンボルに隣接して配列しうる。
【００４０】
更に別の特徴において、かかる復号器は、第１のブロックのＮ個のシンボルのｑ種のシンボル値のそれぞれに置換シンボルを加算する加算手段又はそれぞれから置換シンボルを減算する減算手段を含みうる。
【００４１】
更に別の特徴において、復号器は、第１のブロックのＮ個のシンボルのｑ種のシンボル値から置換シンボルの第２のシンボルを減算し、減算後に、置換シンボルの第１のシンボルによって除算する置換手段を含みうる。
【００４２】
更に別の特徴において、復号器はターゲット手段とかかる復号器とを備えうる。ターゲット手段は、送信手段を含みうる。ターゲット手段は、不揮発性の格納手段及び格納のためのハードディスク手段といった格納手段を含みうる。
【００４３】
復号化方法は、一の入力信号を複数のブロック及び複数の置換シンボルにグループ化する段階であって、複数のブロックは、ｑ及びＮを２より大きい整数とすると、Ｎ個のシンボルを含み、Ｎ個のシンボルのそれぞれは、ｑ種のシンボル値のうちの１つを有する、段階と、
複数の置換シンボルのうちの１つに基づいて複数のブロックのうちの第１のブロックを置換し、置換に基づいた復号化出力信号を生成する段階を含む。
【００４４】
別の特徴において、第１のブロックは、置換シンボルに隣接して配列されうる。かかる方法は更に、置換シンボルを、第１のブロックのＮ個のシンボルのｑ種のシンボル値のそれぞれに加算する又はそれぞれから減算する段階を含みうる。
【００４５】
別の特徴において、かかる方法は更に、第１のブロックのＮ個のシンボルのｑ種のシンボル値から置換シンボルの第２のシンボルを減算する段階と、減算後に、置換シンボルの第１のシンボルによって除算する段階を含む。
【００４６】
本開示の別の特徴において、復号器は、グループ化手段と、置換手段とを備え、グループ化手段は、一の入力信号を複数のブロック及び複数の置換シンボルにグループ化し、複数のブロックは、ｑ及びＮを２より大きい整数とすると、Ｎ個のシンボルを含み、Ｎ個のシンボルのそれぞれは、ｑ種のシンボル値のうちの１つを有し、置換手段は、複数の置換シンボルのうちの１つに基づいて複数のブロックのうちの第１のブロックを置換し、置換に基づいた復号化出力信号を生成する。第１のブロックは、置換シンボルに隣接して配列されうる。
【００４７】
別の特徴において、かかる復号器は、置換シンボルを、第１のブロックのＮ個のシンボルのｑ種のシンボル値のそれぞれに加算する加算手段又はそれぞれから減算する減算手段を含みうる。
【００４８】
別の特徴において、かかる置換手段は、第１のブロックのＮ個のシンボルのｑ種のシンボル値から置換シンボルの第２のシンボルを減算し、減算後に、置換シンボルの第１のシンボルによって除算する。
【００４９】
復号化のためにプロセッサによって使用されるべく格納されるコンピュータプログラムは、一の入力信号を複数のブロック及び複数の置換シンボルにグループ化することを含み、複数のブロックは、ｑ及びＮを２より大きい整数とすると、Ｎ個のシンボルを含み、Ｎ個のシンボルのそれぞれは、ｑ種のシンボル値のうちの１つを有する。かかるプログラムは更に、複数の置換シンボルのうちの１つに基づいて複数のブロックのうちの第１のブロックを置換し、置換に基づいた復号化出力信号を生成することを含む。
【００５０】
別の特徴において、かかるコンピュータプログラムは、第１にブロックを、置換シンボルに隣接して配列することを含む。かかるコンピュータプログラムは、置換シンボルを、第１のブロックのＮ個のシンボルのｑ種のシンボル値のそれぞれに加算する又はそれぞれから減算することを含みうる。かかるコンピュータプログラムは更に、第１のブロックのＮ個のシンボルのｑ種のシンボル値から置換シンボルの第２のシンボルを減算することと、減算後に、置換シンボルの第１のシンボルによって除算することを含みうる。
【００５１】
上述したシステム及び方法は、１以上のプロセッサにより実行されるコンピュータプログラムによって実施されうる。コンピュータプログラムは、次に限定されないが、メモリ、不揮発性データ記憶装置、及び／又は他の好適な有形の記憶媒体といったコンピュータ可読媒体上に駐在しうる。
【００５２】
本開示の更なる適用分野は、以下に与える詳細な説明から明らかとなろう。詳細な説明及び具体的な例は、本開示の好適な実施形態を示すものであるが、例示的に過ぎず、本開示の範囲を限定することを意図していないことを理解すべきである。
【図面の簡単な説明】
【００５３】
本開示は、詳細な説明及び添付図面からより完全に理解することができよう。
【００５４】
【図１Ａ】本開示の原理による例示的な符号器を示す機能ブロック図である。
【００５５】
【図１Ｂ】例示的な符号器によって行われるステップを説明するフローチャートである。
【００５６】
【図２Ａ】本開示の原理による例示的な復号器を示す機能ブロック図である。
【００５７】
【図２Ｂ】例示的な復号器によって行われるステップを説明するフローチャートである。
【００５８】
【図３】図１Ａ−２Ｂの符号器及び／又は復号器を有する読出しチャネルを含む磁気記憶装置を示す機能ブロック図である。
【００５９】
【図４】図１Ａ−２Ｂの符号器及び／又は復号器を含むデータ記憶装置を示す機能ブロック図である。
【００６０】
【図５Ａ】ＤＶＤドライブを示す機能ブロック図である。
【００６１】
【図５Ｂ】高解像度テレビジョンを示す機能ブロック図である。
【００６２】
【図５Ｃ】車両制御システムを示す機能ブロック図である。
【００６３】
【図５Ｄ】携帯電話機を示す機能ブロック図である。
【００６４】
【図５Ｅ】セットトップボックスを示す機能ブロック図である。
【００６５】
【図５Ｆ】モバイル装置を示す機能ブロック図である。
【詳細な説明】
【００６６】
以下の説明は、本質的に例示的に過ぎず、本開示、その適用、又は使用を限定することを意図していない。明瞭にすることを目的として、複数の図面にわたって同じ参照番号を用いて同様の要素を示すものとする。本願にて用いるように、「モジュール」、「回路」、及び／又は、「装置」という用語は、特殊用途向け集積回路（ＡＳＩＣ）、電子回路、１以上のソフトウェア又はソフトウェアプログラムを実行するプロセッサ（共有、専用、又はグループ）及びメモリ、組み合わせ論理回路、及び／又は、記載する機能を提供する他の好適な構成要素を指す。本願にて用いるように、「Ａ、Ｂ、及びＣのうちの少なくとも１つ」という表現は、非排他的な論理ＯＲを用いる論理的な（Ａ又はＢ又はＣ）を意味するものとして解釈すべきである。また、方法におけるステップは、本開示の原理を変更することなく異なる順序で実行されてもよいことを理解すべきである。
【００６７】
図１Ａを参照するに、例示的な符号器１００を示す。様々なシンボルを含む入力信号が符号器１００に供給される。符号器１００は、入力信号１０８を符号化し、ターゲット装置１０６に供給される出力信号１０４を生成する。ターゲット装置１０６は、フラッシュメモリといった不揮発性メモリといったメモリ装置、ハードディスクドライブ、光送信器、ＲＦ送信器、又は、様々な他のタイプの電子装置を含む幾つかの異なるタイプの装置のうちの１つであり得る。
【００６８】
符号器１００は、入力信号１０８内のシンボルを、所定の長さを有する複数の入力ブロックにグループ化すべく用いられるグループ化モジュール１１０を含む。所定数の潜在的なシンボルが入力信号内に用いられる。計数モジュール１１２が、現在のブロック又は次のブロックにおける潜在的な入力シンボルの各シンボルの値の発生回数を計数し、また、前の複数のブロックにおける潜在的なシンボルの数を計数又は累計する。
【００６９】
置換モジュール１１６は、現在のブロックからの数と、複数の前のブロックからのシンボル値の累積された発生回数とを比較して、置換を選択する。これらの例を以下に記載する。置換モジュール１１６は、ブロック１１８において現在のブロックへの置換を選択し、ブロック１２０において現在のブロックに当該置換を適用する。ブロック１１８は更に、置換関数インデックス（ｚ）を生成する。出力信号１０４は、置換関数インデックスと置換された現在のブロックを含む。ブロック１２２において、シンボル値の発生回数は調整され、ブロック１２４において、シンボル値の発生回数が累計される。
【００７０】
図１Ｂを参照するに、入力信号１０８の符号化方法を示し、この方法は、ステップ１４０において入力ブロック長（Ｋ）を決定することを含む。この入力ブロック長は、システム設計パラメータとして選択されうる。ステップ１４２において、入力信号のシンボルは、長さＫを有する複数のブロックにグループ化される。ステップ１４４において、現在のブロックにおける各シンボルの値の数が計数される。ステップ１４６において、複数の前のブロックにおけるシンボルの数が計数される。ステップ１４８において、インデックスｚを有する置換が、現在のブロックと、複数の前のブロックにおける数に基づいて適用される。ステップ１５０において、符号化された出力シンボルが生成される。
【００７１】
以下の説明において、３つの置換例を記載する。どの例でも、アルファベットは、シンボル０、１、２、及び３に限定される。入力ブロック長Ｋ＝５を使用する。次の入力信号はグループ化され、次のように示す。
２３３２２  １１２２２  ３０１０２
第１のブロックにおける「０」と「１」の数は、ゼロである。第１のブロックにおける「２」の数は３であり、第１のブロックにおける「３」の数は２である。したがって、シンボルの数は、［０  ０  ３  ２］と表される。第２のブロックにおけるシンボルの数は、［０  ２  ３  ０］である。この例では、４つの置換ｆｚ（ｘ）（このとき、ｚ∈｛０，１，２，３｝）は次のように定義される。
ｆｚ（ｘ）＝ｘ＋ｚ  （ｍｏｄ４）
【００７２】
この例では、現在のブロックにおいて最も多く現れるシンボルｘは、複数の前のブロックにおいて最も少なく現れるシンボルｙにマッピングされる。これは上述した比較である。第２の、即ち、現在のブロックにおいて最も多く現れるシンボルは「２」であり、それまでに（第１のブロックにおいて）最も少なく現れるシンボルは「０」である。「２」を「０」にマッピングする関数ｆｚが選択される。したがって、上述した方程式においてｘは２であるので、
ｆｚ（２）＝２＋ｚ
０＝２＋ｚ
となり、ｚは、ｍｏｄ４においてｚ＝２と求められる。
【００７３】
現在のブロックにおけるシンボルのそれぞれに２を加え、置換関数インデックスを挿入することにより、出力は、
２３３２２  ２  ３３０００
となる。次に、次のブロック３０１０２も同様に変更される。このようにして、置換シンボルを含むシンボルの累積出現数は、［３  ０  ４  ４］となる。ブロック３０１０２用の現在のシンボル数は、［２  １  １  １］である。現在のブロックにおいて最も多く出現するシンボルは「０」であり、それまでに最も少なく現れるシンボルは「１」である。したがって、ｆｚ（０）＝０＋ｚ＝１である。したがって、ｚ＝１となる。１を現在のシンボルのそれぞれに１を加えることで出力は、
２３３２２  ２  ３３０００  １  ０１２１３
となる。各加算は、ｍｏｄ４において行われる。
【００７４】
信号を復号化するためには、上記の内容が、図２Ａ及び２Ｂに更に説明するように逆順に行われる。つまり、置換関数インデックスが既知となると、逆の処理を行うことができる。これは、信号を複数のブロック及び複数の置換関数信号にグループ化し、１といった適切な値をすぐ上の例から減算することによって行われる。なお、１つのエラーは、復号器出力において最大でもＫ個のシンボルエラーをもたらしうることに留意されたい。この例では、符号化率は、Ｋ／（Ｋ＋１）である。
【００７５】
第２の置換関数の例を用いて、現在のブロックにおいて最も多く現れる２つのシンボルｘ１、ｘ２を、それまでに最も少なく現れる２つのシンボルｙ１、ｙ２にマッピングする。便宜上、第１の例と同じ入力信号、同じアルファベット、及び同じフィールドサイズを使用する。この例では、１２の置換を次の通りにする。
ｆａ，ｂ（ｘ）、ａ∈｛１，２，３｝、ｂ∈｛０，１，２，３｝のとき、
ｆａ，ｂ（ｘ）＝ａｘ＋ｂ
ここで、乗算及び加算は、ガロア体ＧＦ（４）で行われる。なお、ｘ１、ｘ２、ｙ１、ｙ２は、ｘ１≠ｘ２及びｙ１≠ｙ２で、集合｛０，１，２，３｝の要素であることに留意されたい。ａ及びｂは、ｆａ，ｂ（ｘ１）＝ｙ１及びｆａ，ｂ（ｘ２）＝ｙ２となるよう求められる。
【００７６】
第２の、即ち、現在のブロックでは、最も多く発生する２つのシンボルは、「２」と「１」である。これらは、それぞれ、「０」及び「１」である最も少なく発生する２つのシンボルにマッピングされる。したがって、関数インデックスａ及びｂは、０＝２ａ＋ｂ、及び、１＝ａ＋ｂを満足すべきである。これらの方程式を同時に解決することにより、ａ＝２、及び、ｂ＝３となる。したがって、出力は、
２３３２２  ２３  １１０００
となる。置換関数インデックスは２３であり、これは、第２のブロックの置換の直前に送信される。
【００７７】
上述した手順は、次に、第１の例の第３のブロックに適用されうる。置換関数インデックスを含む、現在のブロックの前に生成された、複数の前のブロックのシンボルの数は、［３  ２  ４  ３］である。第３のブロックの現在の数は、［２  １  １  １］である。したがって、「０」が「１」にマッピングされ、「１」は「０」にマッピングされる。次に、ａ＝１、及び、ｂ＝１となる。したがって、符号化シーケンスは、
２３３２２  ２３  １１０００  １１  ２１０１３
となる。この例では、符号化率は、Ｋ／（Ｋ＋２）である。
【００７８】
第３の例では、上記と同じ例を用いて、置換関数インデックスとして１２を取得する。現在のブロックにおいて最も多く現れるシンボルは、それまでに最も少なく現れるシンボルにマッピングされ、現在のブロックにおいて最も少なく現れるシンボルは、それまでに最も多く現れるシンボルにマッピングされる。したがって、第１の例におけるシンボルについては、「２」は「０」にマッピングされ、「０」は「２」にマッピングされる。符号化シーケンスは、
２３３２２  １２  ３３０００
となる。なお、１２は置換関数インデックスである。上記から、シンボルの数は、［３  １  ４  ４］である。したがって、関数は「０」を「１」に、「１」を「２」にマッピングする。最終的な符号化シーケンスは、
２３３２２  １２  ３３０００  ３１  ３１２１０
となる。
【００７９】
上述した例の概要を以下に説明する。この例では、Ａ＝｛０，１、Ｋ，ｑ−１｝は、サイズｑのアルファベットを示すとする。Ｆは、Ａにおける複数の置換を有する集合とする。入力ブロックの長さＫを選択する。最初に、入力ストリームを、それぞれ長さＫを有する複数のブロック
ｕ１ｕ２ｕ３・・・
に更に分割する。ここで、ｕｉは、
【数１】
2009530982.tif 000003
と書き表すことができる。符号化ストリームｃ＝ｕ１と初期設定する。全てのｘ∈Ａについて、ｃにおけるシンボルの数ｍｘを計算する。ｍｘは、ｘがｃにおいて現れる回数である。
【００８０】
次に、次のブロックｕ２におけるシンボルの数
【数２】
2009530982.tif 000004
が計算される。ｍｘと
【数３】
2009530982.tif 000005
とに基づいて、Ｆから置換ｆが選択される。置換の選択は、長さ
【数４】
2009530982.tif 000006
のシンボルのシーケンスｚによって記述しうる（つまり、ｚは、Ｆにおけるｆのインデックスである）。
【数５】
2009530982.tif 000007
を符号化シーケンスに追加する。シンボルの数ｍｘを再計算する。全入力ブロックが符号化されるまでこの処理を繰り返す。
【００８１】
復号器は、ｕ１を、ｃ１ｃ２ＫｃＫにセットする。後続のブロックのそれぞれについて、適切な置換が、対応するシーケンスｚに基づいて選択される。ユーザデータは、符号化シーケンスにおける対応シンボルに逆置換を用いることで取得される。
【００８２】
置換は、
【数６】
2009530982.tif 000008
におけるｒ個の最も多く現れるシンボルを、ｍｘにおいて最も少なく現れるシンボルに、
【数７】
2009530982.tif 000009
におけるｓ個の最も少なく現れるシンボルを、ｍｘにおいて最も多く現れるシンボルにマッピングする置換を選ぶことによって選択されうる（なお、例１、２、及び３において、（ｒ，ｓ）は、それぞれ、（１，０）、（２，０）、及び（１，１）であることに留意されたい）。
【００８３】
この符号化技術の主な結果を記載する。フロック長Ｋとブロック数は大きいと想定する。ｙは、符号化シーケンスにシンボルが現れるシンボルの割合の最小値であると定義する。
【数８】
2009530982.tif 000010
（ｑ＋ｓ−ｒ）２−４ｑｓ＜１である場合、γ＝１／ｑである。即ち、各シンボルは、ほぼ同数回表れる。（ｑ＋ｓ−ｒ）２−４ｑｓ＞２である場合、
【数９】
2009530982.tif 000011
となり、ここで、ｑは、アルファベット集合におけるシンボルの数であり、ｒは、出現頻度が最も高いシンボルを出現頻度が最も低いシンボルに置換した数であり、ｓは、出現頻度が最も低いシンボルを出現頻度が最も高いシンボルに置換した数であり、γは、シンボルが出現する最少の割合である。
【００８４】
以下の表に、上述した変数の様々な値を記載する。
【表１】
2009530982.tif 000012
【００８５】
要約するに、かかる符号化は、ｑ−ａｒｙシンボルシーケンスを入力として取り、均衡のとれたｑ−ａｒｙシンボルシーケンスを出力する。値ｑ＞２及び値ｍｘは、出力シーケンスにおいて現れるｑ種のシンボルのそれぞれの発生頻度である（ただし、ｘ＝０，１，・・・，ｑ−１）。出力シーケンスは、次の条件のうち少なくとも１つを満足する。即ち、
０＜ｍｉｎ（ｍｘ）＜＝１／ｑ
１／ｑ＜＝ｍａｘ（ｍｘ）＜１
ｍａｘ（ｍｘ）−ｍｉｎ（ｍｘ）＜α
（ただし、αは０＜＝α＜１の範囲内の設計パラメータである）。
非符号化ｑ−ａｒｙシーケンスでは、ｍｉｎ（ｍｘ）＝０、即ち、一部のシンボルは、シーケンスにおいて全く表れない、又は、ｍａｘ（ｍｘ）＝１、即ち、シーケンスは、１つのシンボルだけで構成されることが可能である。これらの条件は、出力においてこれらのシーケンスがないよう外されてもよい。
【００８６】
図２Ａを参照するに、復号器１８０を示す。復号器１８０は、ターゲット装置１０６から入力信号１８２を受信する。入力信号１８２は、かかる入力信号を複数のブロック及び複数の置換関数インデックスにグループ化するグループ化モジュール１８４に通信される。ステップ１８６において、置換モジュール１８６は、複数の置換関数インデックス及び複数のブロックを受信し、置換モジュール１８６における置換関数シンボルに対応する置換関数を逆にすることによって復号化された出力シンボルを生成する。
【００８７】
図２Ｂを参照するに、復号器１８０を動作させる方法を示す。復号器１８０は、符号器の置換の逆を実行する。ステップ２００において、入力信号は、複数のブロックにグループ化される。ステップ２０２において、入力信号から置換関数インデックスが決定される。ステップ２０４において、置換関数が、逆置換関数インデックスに応じてブロックに適用される。ステップ２０６において、出力シンボルが生成される。第１の例では、置換関数インデックスは、置換モジュール１８６において、置換関数に続くブロックから減算される。
【００８８】
第２の例では、置換モジュール１８６は、置換シンボルの後の第１のブロックの各シンボルから、２つのシンボル置換シンボルの第２のシンボルを減算した上で、結果を、置換関数インデックスの第１のシンボルによって除算する。
【００８９】
図３を参照するに、例示的な磁気記憶システム３１０（例えば、ハードディスクドライブ）を示す。バッファ３１４は、ハードディスクドライブの制御に関連付けられるデータを格納する、及び／又は、転送速度を増加するためにブロックサイズを最適化すべくデータをバッファリングする。バッファ３１４は、ＳＤＲＡＭ、又は、他のタイプの低レイテンシメモリを用いうる。プロセッサ３１６は、ハードディスクドライブの動作に関連する処理を実行する。ハードディスクコントローラ（ＨＤＣ）３１８は、バッファ３１４、プロセッサ３１６、スピンドル／ボイスコイルモータ（ＶＣＭ）ドライバ３２０、及び／又は、読出し／書込みチャネル回路３２４と通信する。読出し／書込みチャネル回路３２４は、上述したような符号器１００及び／又は復号器１８０を含む。ホスト３２６は、データ読出し／書込み要求をＨＤＣ３１８に送信する。
【００９０】
書込み動作時、読出し／書込みチャネル回路（又は読出しチャネル回路）３２４は、記憶媒体上に書込まれるデータを符号化する。読出し／書込みチャネル回路３２４は、信頼性について信号を処理し、符号化／復号化を行う。読出し動作時、読出し／書込みチャネル回路３２４は、記憶媒体からのアナログ出力をデジタル信号に変換する。変換された信号は、既知の技術によって検出且つ復号化されて、ハードディスクドライブ上に書込まれたデータを復元される。
【００９１】
１以上のプラッタ３２８は、磁場を蓄える磁気コーティングを含む。プラッタ３２８は、３３０と概略的に示すスピンドルモータによって回転される。一般に、スピンドルモータ３３０は、読出し／書込み動作時には固定速度でプラッタ３２８を回転させる。１以上の読出し／書込みアーム３３４は、プラッタ３２８に対して動き、プラッタ３２８からデータを読出す／プラッタ３２８にデータを書込む。スピンドル／ＶＣＭドライバ３２０は、プラッタ３２８を回転させるスピンドルモータ３３０を制御する。スピンドル／ＶＣＭドライバ３２０は更に、例えば、ボイスコイルアクチュエータ、ステッパモータ、又は任意の他の好適なアクチュエータを用いて読出し／書込みアーム３３４を位置決めする制御信号を生成する。
【００９２】
読出し／書込み装置３３６は、読出し／書込みアーム３３４の遠位端付近に配置される。読出し／書込み装置３３６は、磁場を発生するインダクタといった書込み要素を含む。読出し／書込み装置３３６は更に、プラッタ３２８上の磁場を感知する読出し要素（例えば、磁気抵抗（ＭＲ）センサ）を含む。前置増幅器（ｐｒｅａｍｐ）３４０は、アナログの読出し／書込み信号を増幅する。データを読出す際、前置増幅器３４０は、読出し要素からの低レベル信号を増幅し、増幅された信号を読出し／書込みチャネル回路３２４に出力する。前置増幅器３４０は、ハイパス増幅器を含んでよい。データを書込む際、読出し／書込みチャネル回路３２４の書込み要素を流れる書込み電流は切替えられて、正又は負の極性を有する磁場を生成する。正又は負の極性は、プラッタ３２８によって蓄積されて、データを表すために用いられる。
【００９３】
データ符号化システムは、図４に示すように他の実施形態による他の記憶装置内に組み込まれてもよい。記憶装置は、磁気的、光学的、又は他の好適な記憶装置／媒体であり得る。本開示は更に、任意のデータ通信チャネルに用いてもよい。当業者には更に他の適用例が容易に明らかであろう。
【００９４】
図５Ａ−５Ｅを参照して、本開示の教示内容を組み込んだ様々な例示的な実施形態を示す。
【００９５】
図５Ａを参照するに、本開示の教示内容は、ＤＶＤドライブ４１８又はＣＤドライブ（図示せず）の符号器及び復号器において実施することができる。ＤＶＤドライブ４１８は、ＤＶＤ  ＰＣＢ４１９と、ＤＶＤアセンブリ（ＤＶＤＡ）４２０を含む。ＤＶＤ  ＰＣＢ４１９は、ＤＶＤ制御モジュール４２１、バッファ４２２、不揮発性メモリ４２３、プロセッサ４２４、スピンドル／ＦＭ（フィードモータ）ドライバモジュール４２５、アナログフロントエンドモジュール４２６、書込みストラテジモジュール４２７、及びＤＳＰモジュール４２８を含む。
【００９６】
ＤＶＤ制御モジュール４２１は、ＤＶＤＡ４２０の構成要素を制御し、Ｉ／Ｏインターフェイス４２９を介して外部装置（図示せず）と通信する。外部装置には、コンピュータ、マルチメディア装置、モバイルコンピューティング装置等が含まれうる。Ｉ／Ｏインターフェイス４２９は、有線及び／又は無線の通信リンクを含みうる。
【００９７】
ＤＶＤ制御モジュール４２１は、バッファ４２２、不揮発性メモリ４２３、プロセッサ４２４、スピンドル／ＦＭドライバモジュール４２５、アナログフロントエンドモジュール４２６、書込みストラテジモジュール４２７、ＤＳＰモジュール４２８、及び／又は、Ｉ／Ｏインターフェイス４２９からデータを受信しうる。プロセッサ４２４は、符号化、復号化、フィルタリング、及び／又は、フォーマッティングを含む処理をデータに対して行いうる。ＤＳＰモジュール４２８は、ビデオ及び／又はオーディオの符号化／復号化といった信号処理を行う。処理されたデータは、バッファ４２２、不揮発性メモリ４２３、プロセッサ４２４、スピンドル／ＦＭドライバモジュール４２５、アナログフロントエンドモジュール４２６、書込みストラテジモジュール４２７、ＤＳＰモジュール４２８、及び／又は、Ｉ／Ｏインターフェイス４２９に出力されうる。
【００９８】
ＤＶＤ制御モジュール４２１は、バッファ４２２及び／又は不揮発性メモリ４２３を使用して、ＤＶＤドライブ４１８の制御及び動作に関連するデータを格納しうる。バッファ４２２は、ＤＲＡＭ、ＳＤＲＡＭ等を含みうる。不揮発性メモリ４２３は、フラッシュメモリ（ＮＡＮＤ及びＮＯＲフラッシュメモリを含む）、相変化メモリ、磁気ＲＡＭ、又は、各メモリセルが３つ以上のステートを有するマルチステートメモリを含みうる。ＤＶＤ  ＰＣＢ４１９は、ＤＶＤドライブ４１８の構成要素に電力を供給する電源４３０を含む。
【００９９】
ＤＶＤＡ４２０は、前置増幅器装置４３１、レーザードライバ４３２、及び、光読出し／書込み（ＯＲＷ）装置又は光学読出し専用（ＯＲ）装置であり得る光学装置４３３を含みうる。スピンドルモータ４３４は、光記憶媒体４３５を回転させ、フィードモータ４３６は、光記憶媒体４３５に対して光学装置４３３を作動させる。
【０１００】
光記憶媒体４３５からデータを読出す際、レーザードライバは、光学装置４３３に読出しパワーを供給する。光学装置４３３は、光記憶媒体４３５からのデータを検出し、かかるデータを前置増幅器装置４３１に送信する。アナログフロントエンドモジュール４２６は、前置増幅器装置４３１からデータを受信し、フィルタリング及びＡ／Ｄ変換といった機能を行う。光記憶媒体４３５に書込みを行う場合は、書込みストラテジモジュール４２７が、パワーレベル及びタイミング情報をレーザードライバ４３２に送信する。レーザードライバ４３２は、光学装置４３３を制御して、データを光記憶媒体４３５に書込む。
【０１０１】
図５Ｂを参照するに、本開示の教示内容は、高解像度テレビジョン（ＨＤＴＶ）４３７の大容量データ記憶装置の符号器及び復号器において実施することができる。ＨＤＴＶ４３７は、ＨＤＴＶ制御モジュール４３８、ディスプレイ４３９、電源４４０、メモリ４４１、記憶装置４４２、ＷＬＡＮインターフェイス４４３とその関連付けられたアンテナ４４４、及び、外部インターフェイス４４５を含む。
【０１０２】
ＨＤＴＶ４３７は、ケーブル、ブロードバンドインターネット、及び／又は衛星を介して情報を送受信する、ＷＬＡＮインターフェイス４４３及び／又は外部インターフェイス４４５から入力信号を受信しうる。ＨＤＴＶ制御モジュール４３８は、符号化、復号化、フィルタリング、及び／又は、フォーマッティングを含む処理を入力信号に対して行い、出力信号を生成する。出力信号は、ディスプレイ４３９、メモリ４４１、記憶装置４４２、ＷＬＡＮインターフェイス４４３、及び外部インターフェイス４４５のうちの１つ以上に通信されうる。
【０１０３】
メモリ４４１は、ランダムアクセスメモリ（ＲＡＭ）、及び／又は、フラッシュメモリ、相変化メモリ、又は、各メモリセルが３つ以上のステートを有するマルチステートメモリといった不揮発性メモリを含みうる。記憶装置４４２は、ＤＶＤドライブ、及び／又は、ハードディスクドライブ（ＨＤＤ）といった光記憶装置ドライブを含みうる。ＨＤＴＶ制御モジュール４３８は、ＷＬＡＮインターフェイス４４３及び／又は外部インターフェイス４４５を介して外部と通信する。電源４４０は、ＨＤＴＶ４３７の構成要素に電力を供給する。
【０１０４】
図５Ｃを参照するに、本開示の教示内容は、車両４４６の大容量データ記憶装置の符号器及び復号器において実施することができる。車両４４６は、車両制御システム４４７、電源４４８、メモリ４４９、記憶装置４５０、及び、ＷＬＡＮインターフェイス４５２とその関連付けられたアンテナ４５３を含みうる。車両制御システム４４７は、パワートレイン制御システム、車体管理システム、娯楽制御システム、アンチロックブレーキシステム（ＡＢＳ）、ナビゲーションシステム、テレマティクスシステム、車線逸脱防止システム、車間距離適応走行制御システム等でありうる。
【０１０５】
車両制御システム４４７は、１以上のセンサ４５４と通信して、１以上の出力信号４５６を生成しうる。センサ４５４には、温度センサ、加速度センサ、圧力センサ、回転センサ、気流センサ等が含まれうる。出力信号４５６は、エンジン動作パラメータ、トランスミッション動作パラメータ、サスペンションパラメータ等を制御しうる。
【０１０６】
電源４４８は、車両４４６の構成要素に電力を供給する。車両制御システム４４７は、データを、メモリ４４９及び／又は記憶装置４５０内に格納しうる。メモリ４４９は、ランダムアクセスメモリ（ＲＡＭ）、及び／又は、フラッシュメモリ、相変化メモリ、又は、各メモリセルが３つ以上のステートを有するマルチステートメモリといった不揮発性メモリを含みうる。記憶装置４５０は、ＤＶＤドライブ、及び／又は、ハードディスクドライブ（ＨＤＤ）といった光記憶装置ドライブを含みうる。車両制御システム４４７は、ＷＬＡＮインターフェイス４５２を用いて外部と通信しうる。
【０１０７】
図５Ｄを参照するに、本開示の教示内容は、携帯電話機４５８の大容量データ記憶装置の符号器及び復号器において実施することができる。携帯電話機４５８は、電話機制御モジュール４６０、電源４６２、メモリ４６４、記憶装置４６６、及び、セル式ネットワークインターフェイス４６７を含む。携帯電話機４５８は、ＷＬＡＮインターフェイス４６８とその関連付けられたアンテナ４６９、マイクロホン４７０、スピーカ及び／又は出力ジャックといったオーディオ出力４７２、ディスプレイ４７４、及び、キーパッド及び／又はポインティング装置といったユーザ入力装置４７６を含みうる。
【０１０８】
電話機制御モジュール４６０は、セル式ネットワークインターフェイス４６７、ＷＬＡＮインターフェイス４６８、マイクロホン４７０、及び／又は、ユーザ入力装置４７６から入力信号を受信しうる。電話機制御モジュール４６０は、符号化、復号化、フィルタリング、及び／又は、フォーマッティングを含む処理を入力信号に対して行い、出力信号を生成する。出力信号は、メモリ４６４、記憶装置４６６、セル式ネットワークインターフェイス４６７、ＷＬＡＮインターフェイス４６８、及びオーディオ出力４７２のうちの１つ以上に通信されうる。
【０１０９】
メモリ４６４は、ランダムアクセスメモリ（ＲＡＭ）、及び／又は、フラッシュメモリ、相変化メモリ、又は、各メモリセルが３つ以上のステートを有するマルチステートメモリといった不揮発性メモリを含みうる。記憶装置４６６は、ＤＶＤドライブ、及び／又は、ハードディスクドライブ（ＨＤＤ）といった光記憶装置ドライブを含みうる。電源４６２は、携帯電話機４５８の構成要素に電力を供給する。
【０１１０】
図５Ｅを参照するに、本開示の教示内容は、セットトップボックス４７８の大容量データ記憶装置の符号器及び復号器において実施することができる。セットトップボックス４７８は、セットトップ制御モジュール４８０、ディスプレイ４８１、電源４８２、メモリ４８３、記憶装置４８４、及び、ＷＬＡＮインターフェイス４８５とその関連付けられたアンテナ４８６を含む。
【０１１１】
セットトップ制御モジュール４８０は、ケーブル、ブロードバンドインターネット、及び／又は衛星を介して情報を送受信する、ＷＬＡＮインターフェイス４８５及び外部インターフェイス４８７から入力信号を受信しうる。セットトップ制御モジュール４８０は、符号化、復号化、フィルタリング、及び／又は、フォーマッティングを含む処理を信号に対して行い、出力信号を生成する。出力信号は、標準及び／又は高解像度形式のオーディオ及び／又はビデオ信号を含みうる。出力信号は、ＷＬＡＮインターフェイス４８５、及び／又は、ディスプレイ４８１に通信されうる。ディスプレイ４８１は、テレビジョン、プロジェクタ、及び／又はモニタを含みうる。
【０１１２】
電源４８２は、セットトップボックス４７８の構成要素に電力を供給する。メモリ４８３は、ランダムアクセスメモリ（ＲＡＭ）、及び／又は、フラッシュメモリ、相変化メモリ、又は、各メモリセルが３つ以上のステートを有するマルチステートメモリといった不揮発性メモリを含みうる。記憶装置４８４は、ＤＶＤドライブ、及び／又は、ハードディスクドライブ（ＨＤＤ）といった光記憶装置ドライブを含みうる。
【０１１３】
図５Ｆを参照するに、本開示の教示内容は、モバイル装置４８９の大容量データ記憶装置の符号器及び復号器において実施することができる。モバイル装置４８９は、モバイル装置制御モジュール４９０、電源４９１、メモリ４９２、記憶装置４９３、ＷＬＡＮインターフェイス４９４とその関連付けられたアンテナ４９５、及び外部インターフェイス４９９を含みうる。
【０１１４】
モバイル装置制御モジュール４９０は、ＷＬＡＮインターフェイス４９４及び／又は外部インターフェイス４９９から入力信号を受信しうる。外部インターフェイス４９９は、ＵＳＢ、赤外線、及び／又はイーサーネット（登録商標）を含みうる。入力信号は、圧縮されたオーディオ及び／又はビデオを含んでもよく、また、ＭＰ３フォーマットに準拠しうる。更に、モバイル装置制御モジュール４９０は、キーパッド、タッチパッド、又は個々のボタンといったユーザ入力４９６から入力を受信しうる。モバイル装置制御モジュール４９０は、符号化、復号化、フィルタリング、及び／又は、フォーマッティングを含む処理を入力信号に対して行い、出力信号を生成する。
【０１１５】
モバイル装置制御モジュール４９０は、オーディオ信号をオーディオ出力４９７に、ビデオ信号をディスプレイ４９８に出力しうる。オーディオ出力４９７は、スピーカ及び／又は出力ジャックを含みうる。ディスプレイ４９８は、メニュー、アイコン等を含みうるグラフィカルユーザインターフェイスを表示しうる。電源４９１は、モバイル装置４８９の構成要素に電力を供給する。メモリ４９２は、ランダムアクセスメモリ（ＲＡＭ）、及び／又は、フラッシュメモリ、相変化メモリ、又は、各メモリセルが３つ以上のステートを有するマルチステートメモリといった不揮発性メモリを含みうる。記憶装置４９３は、ＤＶＤドライブ、及び／又は、ハードディスクドライブ（ＨＤＤ）といった光記憶装置ドライブを含みうる。モバイル装置は、携帯情報端末、メディアプレイヤ、ラップトップコンピュータ、ゲームコンソール、又は他のモバイルコンピューティング装置を含みうる。
【０１１６】
当業者は、本開示の広義の教示内容は様々な形式で実施することができることを、上述した説明から理解するであろう。したがって、本開示は特定の例を含むが、開示の真の範囲はそれらに限定されるべきではない。これは、当業者には、図面、明細書、及び特許請求の範囲を理解した後に他の変形が明らかであることによる。
【図１Ａ】
2009530982.tif 000013
【図１Ｂ】
2009530982.tif 000014
【図２Ａ】
2009530982.tif 000015
【図２Ｂ】
2009530982.tif 000016
【図３】
2009530982.tif 000017
【図４】
2009530982.tif 000018
【図５Ａ】
2009530982.tif 000019
【図５Ｂ】
2009530982.tif 000020
【図５Ｃ】
2009530982.tif 000021
【図５Ｄ】
2009530982.tif 000022
【図５Ｅ】
2009530982.tif 000023
【図５Ｆ】
2009530982.tif 000024
【国際調査報告】
2009530982.tif 000025
2009530982.tif 000026