(57)【要約】  モデル識別システム［図８Ａ、８００］は、アナログデジタルコンバータ（ＡＤＣ）［図８Ａ、２１０］を含む。ＡＤＣは、第１のアナログ信号［図８Ａ、２０８］を受信し、第１のレートで第１のアナログ信号をサンプリングすることにより第１のレートを有するサンプルを含む第１のデジタル信号［図８Ａ、２１４］を生成するように構成された変換回路［図８Ａ、２１２］を含む。ＡＤＣは、第１のデジタル信号および第１のサンプリング行列［図８Ｂ，８５４Ａ；図９，Ｄｂｌｋｏｎｅｓ］に基づいて、第１のレートよりも低い第２のレートを有するサンプルを含む第２のデジタル信号［図８Ａ，８０４］を生成するように構成された第１のデジタル信号処理（ＤＳＰ）回路［図８Ａ，８０２］をさらに含む。第１のサンプリング行列は、複数の対角ブロックを含むブロック対角行列であり、各対角ブロックは、複数の要素を含む行ベクトルである。【選択図】図８Ａ
2020512733.tif 000002
【特許請求の範囲】
【請求項１】
アナログデジタルコンバータ（ＡＤＣ）を含み、前記アナログデジタルコンバータ（ＡＤＣ）は、
第１のアナログ信号を受信し、第１のレートで前記第１のアナログ信号をサンプリングすることにより、前記第１のレートを有するサンプルを含む第１のデジタル信号を生成するように構成された変換回路と、
前記第１のデジタル信号および第１のサンプリング行列に基づいて、前記第１のレートよりも低い第２のレートを有するサンプルを含む第２のデジタル信号を生成するように構成された第１のデジタル信号処理（ＤＳＰ）回路と、
を含み、
前記第１のサンプリング行列は、複数の対角ブロックを含むブロック対角行列であり、各対角ブロックは、複数の要素を含む行ベクトルである、モデル識別システム。
【請求項２】
第２のアナログ信号に基づいて前記第１のアナログ信号を生成し、前記ＡＤＣに前記第１のアナログ信号を供給するように構成された第１のシステムであって、前記第２のアナログ信号は、第３のデジタル信号に基づいて生成される、第１のシステムと、
前記ＡＤＣに結合された第２のＤＳＰ回路と、をさらに含み、前記第２のＤＳＰ回路は、
前記第２のデジタル信号および前記第３のデジタル信号を受信し、前記第２のデジタル信号、前記第３のデジタル信号、および前記第１のサンプリング行列に一致する第２のサンプリング行列に基づいて、前記第１のシステムのモデルの係数を決定するように構成されたモデル識別ユニット
を含む、請求項１に記載のモデル識別システム。
【請求項３】
前記第１のＤＳＰ回路および前記第２のＤＳＰ回路は同期している、請求項２に記載のモデル識別システム。
【請求項４】
前記モデル識別ユニットは、最小二乗法（ＬＳ）を使用して前記第１のシステムの前記モデルの前記係数を決定するように構成される、請求項２に記載のモデル識別システム。
【請求項５】
前記第２のＤＳＰ回路は、
第４のデジタル信号を受信し、前記第１のシステムの前記モデルの前記係数に基づいて前記第４のデジタル信号をプリディストーションすることにより、前記第３のデジタル信号を生成するように構成されたプリディストーションユニット
を含む、請求項２に記載のモデル識別システム。
【請求項６】
前記第１のサンプリング行列は、対角ブロックランダム符号行列であり、
前記第１のＤＳＰ回路は、
前記第１のサンプリング行列にランダムな符号の第１のシーケンスを提供するように構成された第１の乱数発生器
を含む、請求項２に記載のモデル識別システム。
【請求項７】
前記モデル識別ユニットは、
前記第２のサンプリング行列にランダム符号の第２のシーケンスを提供するように構成された第２の乱数発生器を含み、前記ランダム符号の第２のシーケンスは、前記ランダム符号の第１のシーケンスと一致する、請求項６に記載のモデル識別システム。
【請求項８】
前記第１のＤＳＰ回路は、前記第１のデジタル信号の複数の連続サンプルに基づいて前記第２のデジタル信号の第１のサンプルを生成するように構成され、
前記複数の連続サンプルの第１のサイズは、前記行ベクトルの前記要素の第２のサイズに等しい、請求項１に記載のモデル識別システム。
【請求項９】
アナログデジタルコンバータ（ＡＤＣ）により、第１のアナログ信号を受信することと、
前記ＡＤＣの変換回路により、第１のレートで前記第１のアナログ信号をサンプリングすることにより、前記第１のレートを有するサンプルを含む第１のデジタル信号を生成することと、
前記ＡＤＣの第１のデジタル信号処理（ＤＳＰ）回路により、前記第１のデジタル信号および第１のサンプリング行列に基づいて、前記第１のレートよりも低い第２のレートを有するサンプルを含む第２のデジタル信号を生成することと、
を含み、
前記第１のサンプリング行列は、複数の対角ブロックを含むブロック対角行列であり、各対角ブロックは、複数の要素を含む行ベクトルである、方法。
【請求項１０】
第１のシステムにより、第３のデジタル信号に基づいて生成された第２のアナログ信号に基づいて前記第１のアナログ信号を生成し、前記第１のアナログ信号を前記ＡＤＣに供給することと、
第２のＤＳＰ回路のモデル識別ユニットにより、前記ＡＤＣからの前記第２のデジタル信号および前記第３のデジタル信号を受信することと、
モデル識別ユニットにより、前記第２のデジタル信号、前記第３のデジタル信号、および前記第１のサンプリング行列に一致する第２のサンプリング行列に基づいて、前記第１のシステムのモデルの係数を決定することと、
をさらに含む、請求項９に記載の方法。
【請求項１１】
前記第１のＤＳＰ回路と前記第２のＤＳＰ回路とを同期させることと、
最小二乗法（ＬＳ）を使用して、前記第１のシステムの前記モデルの前記係数を決定することと、
をさらに含む、請求項１０に記載の方法。
【請求項１２】
第４のデジタル信号を受信することと、
前記第１のシステムの前記モデルの前記係数に基づいて前記第４のデジタル信号をプリディストーションすることにより、前記第３のデジタル信号を生成することと、
をさらに含む、請求項１０に記載の方法。
【請求項１３】
前記第１のサンプリング行列は、対角ブロックランダム符号行列であり、
第１の乱数発生器により、前記第１のサンプリング行列にランダム符号の第１のシーケンスを提供すること
をさらに含む、請求項１０に記載の方法。
【請求項１４】
第２の乱数発生器により、前記ランダム符号の第１のシーケンスに一致するランダム符号の第２のシーケンスを生成することと、
前記ランダム符号の第１のシーケンスを使用して前記第２のサンプリング行列を生成することと、
をさらに含む、請求項１３に記載の方法。
【請求項１５】
前記第１のデジタル信号の複数の連続サンプルに基づいて前記第２のデジタル信号の第１のサンプルを生成することをさらに含み、前記複数の連続サンプルの第１のサイズは、前記第１のサンプリング行列の前記行ベクトルの前記要素の第２のサイズに等しい、請求項９に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示の例は、一般に集積回路（「ＩＣ」）に関し、特に、未知のシステムのモデルを識別し、未知のシステムのデジタルプリディストーションを実行することに関する実施形態に関する。
【背景技術】
【０００２】
集積回路は、通信システムでデータを送信するために使用することができる。通信システムの重要な構成要素の１つは、電力増幅器である。電力増幅器の非直線性は、特定のチャネルの信号帯域幅を超えるスペクトル成長（拡大）を引き起こし、スペクトル成長（拡大）は隣接チャネルと干渉する。また、特定のチャネルの信号帯域幅内で歪みが発生し、ビットエラーレート（ＢＥＲ）のパフォーマンスが低下する。デジタルプリディストーション（ＤＰＤ）技術を使用して非線形電力増幅器を線形化することもできるが、無線通信における新しい応用によって課せられる性能要件の増大に対応することは困難である。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
したがって、改善されたＤＰＤシステムが望ましい。
【課題を解決するための手段】
【０００４】
本開示によるいくつかの実施形態では、モデル識別システムは、アナログデジタルコンバータ（ＡＤＣ）を含み、アナログデジタルコンバータ（ＡＤＣ）は、第１のアナログ信号を受信し、第１のレートで第１のアナログ信号をサンプリングすることにより、第１のレートを有するサンプルを含む第１のデジタル信号を生成するように構成された変換回路を含む。ＡＤＣは、第１のデジタル信号および第１のサンプリング行列に基づいて、第１のレートよりも低い第２のレートを有するサンプルを含む第２のデジタル信号を生成するように構成された第１のデジタル信号処理（ＤＳＰ）回路をさらに含む。第１のサンプリング行列は、複数の対角ブロックを含むブロック対角行列であり、各対角ブロックは、複数の要素を含む行ベクトルである。
【０００５】
いくつかの実施形態では、モデル識別システムは、第２のアナログ信号に基づいて第１のアナログ信号を生成し、ＡＤＣに第１のアナログ信号を供給するように構成された第１のシステムであって、第２のアナログ信号は、第３のデジタル信号に基づいて生成される、第１のシステムと、ＡＤＣに結合された第２のＤＳＰ回路と、を含む。第２のＤＳＰ回路は、第２のデジタル信号および第３のデジタル信号を受信し、第２のデジタル信号および第３のデジタル信号、ならびに第１のサンプリング行列に一致する第２のサンプリング行列に基づいて、第１のシステムのモデルの係数を決定するように構成されたモデル識別ユニットを含む。
【０００６】
いくつかの実施形態では、第１のＤＳＰ回路と第２のＤＳＰ回路とは同期している。
【０００７】
いくつかの実施形態では、モデル識別ユニットは、最小二乗法（ＬＳ）または特異値分解法（ＳＶＤ）を使用して第１のシステムのモデルの係数を決定するように構成される。
【０００８】
いくつかの実施形態では、第２のＤＳＰ回路は、第４のデジタル信号を受信し、第１のシステムのモデルの係数に基づいて第４のデジタル信号をプリディストーションすることにより、第３のデジタル信号を生成するように構成されたプリディストーションユニットを含む。
【０００９】
いくつかの実施形態では、第１のシステムは非線形電力増幅器である。
【００１０】
いくつかの実施形態では、第１のサンプリング行列は、対角ブロックランダム符号行列である。第１のＤＳＰ回路は、第１のサンプリング行列にランダムな符号の第１のシーケンスを提供するように構成された第１の乱数発生器を含む。
【００１１】
いくつかの実施形態では、第１の乱数発生器は、ランダム符号の第１のシーケンスを生成するように構成された第１の線形フィードバックシフトレジスタを含む。
【００１２】
いくつかの実施形態では、モデル識別ユニットは、第２のサンプリング行列にランダム符号の第２のシーケンスを提供するように構成された第２の乱数発生器を含み、ランダム符号の第２のシーケンスは、ランダム符号の第１のシーケンスと一致する。
【００１３】
いくつかの実施形態では、第１のＤＳＰ回路は、第１のデジタル信号の複数の連続サンプルに基づいて第２のデジタル信号の第１のサンプルを生成し、複数の連続サンプルの第１のサイズは、行ベクトルの要素の第２のサイズに等しい。
【００１４】
いくつかの実施形態では、方法は、アナログデジタルコンバータ（ＡＤＣ）により、第１のアナログ信号を受信することと、ＡＤＣの変換回路により、第１のレートで第１のアナログ信号をサンプリングすることにより、第１のレートを有するサンプルを含む第１のデジタル信号を生成することと、ＡＤＣの第１のデジタル信号処理（ＤＳＰ）回路により、第１のデジタル信号および第１のサンプリング行列に基づいて、第１のレートよりも低い第２のレートを有するサンプルを含む第２のデジタル信号を生成することと、を含み、第１のサンプリング行列は、複数の対角ブロックを含むブロック対角行列であり、各対角ブロックは、複数の要素を含む行ベクトルである。
【００１５】
いくつかの実施形態では、本方法は、第１のシステムにより、第３のデジタル信号に基づいて生成された第２のアナログ信号に基づいて第１のアナログ信号を生成し、第１のアナログ信号をＡＤＣに供給することと、第２のＤＳＰ回路のモデル識別ユニットにより、ＡＤＣからの第２のデジタル信号および第３のデジタル信号を受信することと、モデル識別ユニットにより、第２のデジタル信号、第３のデジタル信号、および第１のサンプリング行列に一致する第２のサンプリング行列に基づいて、第１のシステムのモデルの係数を決定することと、を含む。
【００１６】
いくつかの実施形態では、本方法は、第１のＤＳＰ回路と第２のＤＳＰ回路とを同期させることを含む。
【００１７】
いくつかの実施形態では、本方法は、第４のデジタル信号を受信することと、第１のシステムのモデルの係数に基づいて第４のデジタル信号をプリディストーションすることにより、第３のデジタル信号を生成することと、を含む。
【００１８】
いくつかの実施形態では、第１のサンプリング行列は対角ブロックランダム符号行列であり、本方法は、第１の乱数発生器により、第１のサンプリング行列のランダム符号の第１のシーケンスを生成することを含む。
【００１９】
いくつかの実施形態では、本方法は、第１の線形フィードバックシフトレジスタにより、ランダム符号の第１のシーケンスを提供することを含む。
【００２０】
いくつかの実施形態では、本方法は、第２の乱数発生器により、ランダム符号の第１のシーケンスに一致するランダム符号の第２のシーケンスを生成することと、ランダム符号の第１のシーケンスを使用して第２のサンプリング行列を生成することと、を含む。
【００２１】
いくつかの実施形態では、本方法は、第１のデジタル信号の複数の連続サンプルに基づいて第２のデジタル信号の第１のサンプルを生成することを含み、複数の連続サンプルの第１のサイズは、第１のサンプリング行列の行ベクトルの要素の第２のサイズに等しい。
【００２２】
他の態様および特徴は、以下の詳細な説明および添付図面を読むことにより明らかになるであろう。
【図面の簡単な説明】
【００２３】
【図１】本開示のいくつかの実施形態によるＩＣの例示的なアーキテクチャを示すブロック図である。
【図２】本開示のいくつかの実施形態によるＤＰＤシステムを示すブロック図である。
【図３】本開示のいくつかの実施形態によるモデル識別問題を示すブロック図である。
【図４】本開示のいくつかの実施形態によるモデル識別問題を示すブロック図である。
【図５】本開示のいくつかの実施形態によるモデル識別問題を示すブロック図である。
【図６】本開示のいくつかの実施形態によるＤＰＤシステムを示すブロック図である。
【図７】本開示のいくつかの実施形態によるモデル識別方法を示すフローチャートである。
【図８Ａ】本開示のいくつかの実施形態によるＤＰＤシステムを示すブロック図である。
【図８Ｂ】本開示のいくつかの実施形態によるＤＰＤシステムを示すブロック図である。
【図９】本開示のいくつかの実施形態によるモデル識別問題を示すブロック図である。
【図１０】本開示のいくつかの実施形態によるＤＰＤシステムの様々なデジタル信号を示す図である。
【図１１Ａ】本開示による様々な実施形態の性能比較を示す図である。
【図１１Ｂ】本開示による様々な実施形態の性能比較を示す図である。
【図１１Ｃ】本開示による様々な実施形態の性能比較を示す図である。
【図１１Ｄ】本開示による様々な実施形態の性能比較を示す図である。
【図１１Ｅ】本開示による様々な実施形態の性能比較を示す図である。
【図１１Ｆ】本開示による様々な実施形態の性能比較を示す図である。
【図１２Ａ】本開示による様々な実施形態の性能比較を示す図である。
【図１２Ｂ】本開示による様々な実施形態の性能比較を示す図である。
【図１３】本開示による様々な実施形態の性能比較を示す図である。
【図１４Ａ】本開示による様々な実施形態の性能比較を示す図である。
【図１４Ｂ】本開示による様々な実施形態の性能比較を示す図である。
【図１４Ｃ】本開示による様々な実施形態の性能比較を示す図である。
【図１４Ｄ】本開示による様々な実施形態の性能比較を示す図である。
【図１５Ａ】本開示による様々な実施形態の性能比較を示す図である。
【図１５Ｂ】本開示による様々な実施形態の性能比較を示す図である。
【図１６Ａ】本開示による様々な実施形態の性能比較を示す図である。
【図１６Ｂ】本開示による様々な実施形態の性能比較を示す図である。
【図１６Ｃ】本開示による様々な実施形態の性能比較を示す図である。
【図１６Ｄ】本開示による様々な実施形態の性能比較を示す図である。
【発明を実施するための形態】
【００２４】
様々な実施形態が、例示的な実施形態が示されている図面を参照して以下に説明される。しかし、特許請求される発明は、異なる形態で具体化されてもよく、本明細書に記載される実施形態に限定されると解釈されるべきではない。全体を通して同様の符号は同様の要素を指す。したがって、同様の要素は、各図面の説明に関して詳細には説明されない。また、図面は、実施形態の説明を容易にすることのみを目的としていることにも留意されたい。それらは、特許請求される発明の網羅的な説明として、または特許請求される発明の範囲に対する限定として意図されていない。さらに、例示された実施形態は、示されたすべての態様または利点を有する必要はない。特定の実施形態に関連して説明される態様または利点は、必ずしもその実施形態に限定されず、そのように例示されない場合であっても、または明示的に説明されない場合であっても、他の任意の実施形態で実施することができる。特徴、機能、および利点は、様々な実施形態で独立して達成されてもよく、またはさらに他の実施形態で組み合わされてもよい。
【００２５】
いくつかの図面に例示的に示す例示的な実施形態を説明する前に、さらなる理解のために一般的な導入が提供される。電力増幅器は通信システムの重要な構成要素の１つであり、本質的に非線形である。電力増幅器の非線形性により、特定のチャネルの信号帯域幅を超えてスペクトル成長を引き起こし、隣接チャネルと干渉する。また、信号帯域幅内で歪みが発生し、受信器でビットエラーレートが増加する。様々な実施形態では、ＤＰＤシステムを使用して電力増幅器の様々な歪みを補償し、それにより通信システムの隣接チャネル電力比（ＡＣＰＲ）を低減することができる。例えば、大規模多入力多出力（ＭＩＭＯ）通信システムの基地局では、複数の送信アンテナの各々をＤＰＤシステムに関連付けることができる。各ＤＰＤシステムは、高レート、高分解能ＡＤＣ（例えば、サンプリングレートが４９１．５２ＭＨｚの１６ビットＡＤＣ）を使用したフィードバックパスを有してもよく、その結果、そのＡＤＣから基地局のＤＳＰユニットへの高いデータレート（例えば、８Ｇｂｉｔ／ｓ）転送が得られる。そのため、その大規模ＭＩＭＯシステムの基地局は、ＤＰＤシステムのＡＤＣと基地局のＤＳＰとの間で０．５Ｔｂｉｔ／ｓを超える総データレートを必要とする場合があり、それが接続を困難にしている。ＤＰＤシステムは、ＡＤＣのサンプリングレートよりも低いレートでサンプルを出力するように構成されたＡＤＣを使用する場合があり、その結果、ＡＤＣと基地局のＤＳＰとの間のデータレートが低下し、複雑な乗算の数を減らすことにより、計算の複雑さが軽減される。
【００２６】
上記の一般的な理解を念頭に置いて、モデルの識別とプリディストーションの様々な実施形態を以下に説明する。上記の実施形態の１つまたは複数が特定のタイプのＩＣを使用して例示されているため、そのようなＩＣの詳細な説明を以下に提供する。しかしながら、他のタイプのＩＣは、本明細書で説明される実施形態の１つまたは複数から利益を得ることができることを理解されたい。
【００２７】
プログラマブル論理デバイス（「ＰＬＤ」）は、指定された論理機能を実行するようにプログラムすることができる、周知のタイプの集積回路である。ＰＬＤの１つのタイプであるフィールドプログラマブルゲートアレイ（ＦＰＧＡ）は、通常、プログラマブルタイルのアレイを含む。これらのプログラマブルタイルは、例えば、入力／出力ブロック（「ＩＯＢ」）、構成可能論理ブロック（「ＣＬＢ」）、専用ランダムアクセスメモリブロック（「ＢＲＡＭ」）、乗算器、デジタル信号処理ブロック（「ＤＳＰ」）、プロセッサ、クロックマネージャ、遅延ロックループ（「ＤＬＬ」）などを含むことができる。本明細書で使用される場合、「含む」は限定することなく含むことを意味する。
【００２８】
通常、各プログラマブルタイルは、プログラマブル相互接続とプログラマブル論理の両方を含む。プログラマブル相互接続は、通常、プログラマブル相互接続点（「ＰＩＰ」）によって相互接続された様々な長さの多数の相互接続ラインを含む。プログラマブル論理は、例えば関数発生器、レジスタ、算術論理などを含むことができるプログラマブル素子を使用して、ユーザデザインの論理を実装する。
【００２９】
プログラマブル相互接続およびプログラマブル論理は、通常、プログラマブル素子を構成する方法を定義する内部構成メモリセルに構成データのストリームをロードすることによりプログラムされる。構成データは、メモリから（例えば、外部ＰＲＯＭから）読み出すか、外部デバイスによってＦＰＧＡに書き込むことができる。個々のメモリセルの集合的な状態が、ＦＰＧＡの機能を決定する。
【００３０】
ＰＬＤの別のタイプは、複合プログラマブル論理デバイス（ＣＰＬＤ）である。ＣＰＬＤは、相互接続スイッチ行列によって互いに接続され、入力／出力（「Ｉ／Ｏ」）リソースに接続された２つ以上の「機能ブロック」を含む。ＣＰＬＤの各機能ブロックは、プログラマブル論理アレイ（「ＰＬＡ」）およびプログラマブルアレイ論理（「ＰＡＬ」）デバイスで使用されるものと同様の２レベルＡＮＤ／ＯＲ構造を含む。ＣＰＬＤでは、通常、構成データは不揮発性メモリにオンチップで格納される。一部のＣＰＬＤでは、構成データは不揮発性メモリにオンチップで格納され、初期構成（プログラミング）シーケンスの一部として揮発性メモリにダウンロードされる。
【００３１】
一般に、これらのプログラマブル論理デバイス（「ＰＬＤ」）の各々では、デバイスの機能は、その目的のためにデバイスに提供される構成データによって制御される。構成データは、揮発性メモリ（ＦＰＧＡおよび一部のＣＰＬＤで一般的なスタティックメモリセルなど）、不揮発性メモリ（一部のＣＰＬＤのようにフラッシュメモリなど）、または他の任意のタイプのメモリセルに格納することができる。
【００３２】
他のＰＬＤは、デバイス上の様々な素子をプログラム可能に相互接続する金属層などの処理層を適用することによってプログラムされる。これらのＰＬＤは、マスクプログラマブルデバイスとして知られている。ＰＬＤは、他の方法、例えば、ヒューズまたはアンチヒューズ技術を使用して実装することもできる。「ＰＬＤ」および「プログラマブル論理デバイス」という用語には、これらの例示的なデバイス、ならびに部分的にのみプログラム可能なデバイスが含まれるが、これらに限定されない。例えば、ＰＬＤの１つのタイプには、ハードコーディングされたトランジスタ論理と、ハードコーディングされたトランジスタ論理をプログラム可能に相互接続するプログラム可能なスイッチファブリックと、の組み合わせが含まれる。
【００３３】
上記のように、高度なＦＰＧＡには、アレイに複数の異なるタイプのプログラマブル論理ブロックを含めることができる。例えば、図１は、例示的なＦＰＧＡアーキテクチャ１００を示している。ＦＰＧＡアーキテクチャ１００は、多数の異なるプログラマブルタイルを含み、それには、マルチギガビットトランシーバ（「ＭＧＴ」）１０１、構成可能論理ブロック（「ＣＬＢ」）１０２、ランダムアクセスメモリブロック（「ＢＲＡＭ」）１０３、入力／出力ブロック（「ＩＯＢ」）１０４、構成およびクロック論理（「ＣＯＮＦＩＧ／ＣＬＯＣＫＳ」）１０５、デジタル信号処理ブロック（「ＤＳＰ」）１０６、特殊な入力／出力ブロック（「Ｉ／Ｏ」）１０７（例えば、構成ポートおよびクロックポート）、ならびに、デジタルクロックマネージャ、アナログデジタルコンバータ、システム監視論理などの他のプログラマブル論理１０８が含まれる。一部のＦＰＧＡには、専用プロセッサブロック（「ＰＲＯＣ」）１１０も含まれている。
【００３４】
いくつかのＦＰＧＡでは、各プログラマブルタイルは、図１の上部に含まれる例によって示されるように、同じタイル内のプログラマブル論理素子の入力および出力端子１２０への接続を有する少なくとも１つのプログラマブル相互接続素子（「ＩＮＴ」）１１１を含むことができる。各プログラマブル相互接続素子１１１は、同じタイルまたは他のタイル内の隣接するプログラマブル相互接続素子の相互接続セグメント１２２への接続も含むことができる。各プログラマブル相互接続素子１１１は、論理ブロック（図示せず）間の一般的なルーティングリソースの相互接続セグメント１２４への接続も含むことができる。一般的なルーティングリソースは、相互接続セグメント（例えば、相互接続セグメント１２４）のトラックを含む論理ブロック（図示せず）と相互接続セグメントを接続するためのスイッチブロック（図示せず）との間のルーティングチャネルを含むことができる。一般的なルーティングリソースの相互接続セグメント（例えば、相互接続セグメント１２４）は、１つまたは複数の論理ブロックにまたがることができる。プログラマブル相互接続素子１１１は、一般的なルーティングリソースと共に、図示したＦＰＧＡ用のプログラム可能な相互接続構造（「プログラム可能な相互接続」）を実装する。
【００３５】
例示的な実施態様では、ＣＬＢ１０２は、ユーザ論理に加えて単一のプログラマブル相互接続素子（「ＩＮＴ」）１１１を実装するようにプログラム可能な構成可能論理素子（「ＣＬＥ」）１１２を含むことができる。ＢＲＡＭ１０３は、１つまたは複数のプログラム可能な相互接続素子に加えて、ＢＲＡＭ論理素子（「ＢＲＬ」）１１３を含むことができる。通常、タイルに含まれる相互接続素子の数は、タイルの高さに依存する。図示した例では、ＢＲＡＭタイルの高さは５つのＣＬＢと同じであるが、他の数字（４など）を使用することもできる。ＤＳＰタイル１０６は、適切な数のプログラム可能な相互接続素子に加えて、ＤＳＰ論理素子（「ＤＳＰＬ」）１１４を含むことができる。ＩＯＢ１０４は、例えば、プログラマブル相互接続素子１１１の１つのインスタンスに加えて、入力／出力論理素子（「ＩＯＬ」）１１５の２つのインスタンスを含むことができる。当業者には明らかであるように、例えばＩ／Ｏ論理素子１１５に接続された実際のＩ／Ｏパッドは、通常は入力／出力論理素子１１５の領域に限定されない。
【００３６】
図１の例では、ダイ（例えば、図１に示す領域１０５、１０７、１０８で形成）の中心付近の領域（水平方向に表示）を構成、クロック、およびその他の制御論理に使用できる。この水平領域から延在する列１０９（垂直に描かれている）または他の列を使用して、ＦＰＧＡの幅全体にクロックと構成信号を分配することができる。
【００３７】
図１に示すアーキテクチャを利用するいくつかのＦＰＧＡは、ＦＰＧＡの大部分を構成する通常のカラム構造を破壊する追加の論理ブロックを含む。追加の論理ブロックは、プログラム可能なブロックおよび／または専用論理であり得る。例えば、ＰＲＯＣ１１０はＣＬＢとＢＲＡＭの複数の列にまたがっている。ＰＲＯＣ１１０は、単一のマイクロプロセッサから、マイクロプロセッサ、メモリコントローラ、周辺機器などの完全なプログラム可能な処理システムに及ぶ様々な構成要素を含むことができる。
【００３８】
一態様では、ＰＲＯＣ１１０は、ＩＣのプログラム可能回路を実装するダイの一部として製造される専用回路、例えばハードワイヤードプロセッサとして実装される。ＰＲＯＣ１１０は、個々のプロセッサ、例えば、プログラムコードを実行可能な単一コアから、１つまたは複数のコア、モジュール、コプロセッサ、インターフェースなどを有するプロセッサシステム全体まで、複雑さの範囲にわたる様々な異なるプロセッサタイプおよび／またはシステムのいずれかを表すことができる。
【００３９】
別の態様では、ＰＲＯＣ１１０はアーキテクチャ１００から省略され、記載されたプログラム可能ブロックの他の種類のうちの１つまたは複数と置き換えることができる。さらに、そのようなブロックは、ＰＲＯＣ１１０の場合のように、プログラム可能回路の様々なブロックを使用してプログラムコードを実行できるプロセッサを形成することができるという点で、「ソフトプロセッサ」を形成するために利用することができる。
【００４０】
「プログラム可能回路」という語句は、ＩＣ内のプログラム可能な回路素子、例えば、本明細書で説明する様々なプログラム可能または構成可能な回路ブロックまたはタイル、ならびに様々な回路ブロック、タイル、および／または素子を、ＩＣにロードされた構成データに従って選択的に結合する相互接続回路を指すことができる。例えば、ＣＬＢ１０２およびＢＲＡＭ１０３などのＰＲＯＣ１１０の外部にある図１に示す部分は、ＩＣのプログラム可能回路と見なすことができる。
【００４１】
いくつかの実施形態では、プログラム可能回路の機能および接続性は、構成データがＩＣにロードされるまで確立されない。構成データのセットを使用して、ＦＰＧＡなどのＩＣのプログラム可能回路をプログラムできる。構成データは、場合によっては「構成ビットストリーム」と呼ばれる。一般に、プログラム可能回路は、最初に構成ビットストリームをＩＣにロードしないと動作も機能もしない。構成ビットストリームは、プログラム可能回路内の特定の回路設計を効果的に実装またはインスタンス化する。回路設計は、例えば、プログラム可能回路ブロックの機能的側面と、様々なプログラム可能回路ブロック間の物理的接続性を指定する。
【００４２】
いくつかの実施形態では、「ハードワイヤード」または「ハード化」された、すなわちプログラム可能でない回路がＩＣの一部として製造される。プログラム可能回路とは異なり、ハードワイヤード回路または回路ブロックは、ＩＣの製造後に構成ビットストリームのロードにより実装されない。ハードワイヤード回路は一般に、専用の回路ブロックと相互接続を備えていると一般に考えられており、例えば、最初に構成ビットストリームをＩＣ、例えばＰＲＯＣ１１０にロードすることなく機能する。
【００４３】
場合によっては、ハードワイヤード回路は、ＩＣ内の１つまたは複数のメモリ素子に保存されているレジスタ設定または値に従って設定または選択できる１つまたは複数の動作モードを有することができる。動作モードは、例えば、構成ビットストリームをＩＣにロードすることで設定することができる。この機能にもかかわらず、ハードワイヤード回路は、ＩＣの一部として製造されたときに動作可能であって、特定の機能を有するので、ハードワイヤード回路はプログラム可能回路とは見なされない。
【００４４】
図１は、プログラム可能回路、例えばプログラマブルファブリックを含むＩＣを実装するために使用できる例示的なアーキテクチャを示すことを意図している。例えば、行の論理ブロックの数、行の相対的な幅、行の数と順序、行に含まれる論理ブロックのタイプ、論理ブロックの相対的なサイズ、および図１の上部に含まれる相互接続／論理実装は、純粋に例示的なものである。例えば、実際のＩＣでは、ユーザ論理の効率的な実装を容易にするために、通常ＣＬＢが表示される場所に複数のＣＬＢの隣接する行が含まれるが、隣接するＣＬＢの行の数はＩＣの全体的なサイズによって異なる。さらに、図１のＦＰＧＡは、本明細書で説明される相互接続回路の例を採用することができるプログラム可能なＩＣの一例を示している。本明細書で説明される相互接続回路は、ＣＰＬＤまたは論理素子を選択的に結合するためのプログラム可能な相互接続構造を有する任意のタイプのプログラム可能なＩＣなどの他のタイプのプログラム可能なＩＣで使用することができる。
【００４５】
電力増幅器の歪みを補償するためにＤＰＤシステムを実装することができるＩＣは、図１に示した例示的なＩＣに限定されず、他の構成または他のタイプのＩＣを備えたＩＣもモデル識別およびプリディストーション機能を実装することができることに留意されたい。
【００４６】
図２を参照すると、ＤＰＤシステム２００（モデル識別システム２００とも呼ばれる）が示されている。デジタル信号ｘ（ｎ）２０２は、デジタルアナログコンバータ（ＤＡＣ）２０４に入力される。ＤＡＣ２０４は、所定のサンプリングレートｆＳ１でデジタル信号ｘ（ｎ）２０２をサンプリングすることができる。所定のサンプリングレートｆＳ１は、所定の周期（ＴＳ１）ごとにサンプリングが行われることを示している。一部の実施形態では、所定のサンプリングレートｆＳ１は、システム２００のナイキストレート（ｆＳ）に対応する。次に、ＤＡＣ２０４は、サンプルをアナログ信号ｘ（ｔ）２０５に変換し、アナログ信号ｘ（ｔ）２０５を、非線形の周波数依存電力増幅器および／または１つもしくは複数の他の構成要素などの未知のシステム２０６に出力することができる。未知のシステム２０６のシステムモデルは、未知のシステム２０６の特性を表すことができ、システムモデルの係数は未知である。
【００４７】
未知のシステム２０６は、アナログ信号ｘ（ｔ）２０５を受信し、アナログ信号ｙ（ｔ）２０８をＡＤＣ２１０に出力する。ＡＤＣ２１０は、所定のサンプリングレートｆＳ２でアナログ信号ｙ（ｔ）２０８をサンプリングし、サンプルをデジタル信号ｙ（ｎ）２１４のデジタル信号値に変換する変換ユニット２１２を含む。所定のサンプリングレートｆＳ２は、所定の周期（ＴＳ２）ごとにサンプリングが行われることを示している。いくつかの実施形態では、所定のサンプリングレートｆＳ２は、システム２００のナイキストレート（ｆＳ）に対応する。
【００４８】
いくつかの実施形態では、ＡＤＣ２１０はデジタル信号ｙ（ｎ）２１４をＤＳＰユニット２２０に供給する。そのような実施形態では、ＡＤＣ２１０とＤＳＰユニット２２０との間の接続は、変換ユニット２１２によって生成されたデジタル信号ｙ（ｎ）２１４のデータレートと同じデータレートを有してもよい。ＤＳＰユニット２２０は、モデル識別プロセスを実行し得るモデル識別ユニット２２２と、デジタルプリディストーションプロセスを実行し得るプリディストーションユニット２２８と、を含む。いくつかの実施形態では、ＤＳＰユニット２２０およびその構成要素は、クロック信号２３２を使用してＡＤＣ２１０と同期することができる。
【００４９】
一部の実施形態では、モデル識別ユニット２２２は、プリディストーションユニットからデジタル信号値ｘ（ｎ）を含むデジタル信号２２４を受信し、ＡＤＣ２１０からデジタル信号ｙ（ｎ）２１４を受信し、未知のシステム２０６のシステムモデルの係数を決定するためのモデル識別プロセスを実行する。モデル識別ユニット２２２は、様々な方法（例えば、最小二乗（ＬＳ）法、特異値分解（ＳＶＤ）法）を使用して、信号２２４から受信したデジタル信号ｘ（ｎ）およびデジタル信号ｙ（ｎ）２１４のサンプルに基づいて係数を決定することができ、モデル識別問題は次のように提供される。
2020512733.tif 000003
ここで、ｙはデジタル信号ｙ（ｎ）からのＮ個の利用可能なサンプルを含むＮ×１ベクトルであり、Ｘはデジタル信号ｘ（ｎ）からの対応するサンプルを含むＮ×Ｌ行列であり、ｃは未知のシステム２０６のシステムモデルのＬ個の未知の係数を含むＬ×１ベクトルであり、ｅはエラーベクトルである。例では、ｅはｉ．ｉ．ｄ．ガウスノイズである。図３を参照すると、モデル識別問題、ならびに簡略化された式（１）によるｙ、Ｘ、およびｃの間の関係を示すブロック図が示されている。
【００５０】
そのため、モデル識別ユニット２２２は、以下のように未知のシステム２０６のシステムモデルの係数
2020512733.tif 000004
を計算することができる。
2020512733.tif 000005
ここで、
2020512733.tif 000006
モデル係数である。
【００５１】
様々な実施形態では、Ｎは非常に大きな数（例えば、４，９１５，２００）であってもよいことに留意されたい。様々な実施形態では、ｘ（ｎ）およびｙ（ｎ）の利用可能な全サンプルのより小さい測定数Ｍ（例えば、Ｍ＝４０９６）が、モデル識別問題を解決するために使用される。このような場合、Ｍ行を有するサンプリング行列Ｄを導入して、式（１）の線形行列変換を実行することにより、モデル識別問題は次のように記述することができる。
2020512733.tif 000007
式（２）は次のように書き直すことができる。
2020512733.tif 000008
ここで、ｚ＝Ｄｙ、およびＡ＝ＤＸである。ｚとＤの行数は同じであり、ｚとＤの行数は測定値Ｍとも呼ばれることに留意されたい。
【００５２】
図４を参照すると、モデル識別問題と、式（２）および（３）によるｚ、Ｄ、Ｘ、Ａ、およびｃの間の関係を示すブロック図が示されている。
【００５３】
モデル識別問題がｙ（ｎ）を直接使用して解決される例では、サンプリング行列Ｄは次のように表される対角行列Ｄｄｉａｇになり得る。
2020512733.tif 000009
ここで、ｙ（ｎ）の選択されたサンプルの数とｚおよびＤｄｉａｇの行数との両方が測定数Ｍと等しくなる。図５を参照すると、モデル識別問題と、式（２）および（３）によるｚ、Ｄｄｉａｇ、Ｘ、Ａ、およびｃの間の関係を示すブロック図が示されている。
【００５４】
したがって、モデル識別ユニット２２２は、モデル識別問題の係数
2020512733.tif 000010
を次のように計算することができる。
2020512733.tif 000011
【００５５】
いくつかの実施形態では、ＭはＬよりも大きくなるように選択された整数である。いくつかの実施形態では、ノイズ、モデルの不一致、および不完全性のために、ＭはＬよりもはるかに大きい整数であり得る。Ｌが約２０〜１００の例では、Ｍは４０９６以上であり得る。Ｍが増加すると、係数
2020512733.tif 000012
の精度は向上するが、係数
2020512733.tif 000013
を決定するのに必要な時間も増加する。
【００５６】
いくつかの実施形態では、平均二乗誤差（ＭＳＥ）を使用して、係数
2020512733.tif 000014
の誤差を決定することができる。最尤推定量の場合、共分散行列はグラム行列ＡＨＡの逆行列である。モデル係数
2020512733.tif 000015
の平均二乗誤差（ＭＳＥ）は、次のように計算できる。
2020512733.tif 000016
ここで、
2020512733.tif 000017
は測定ノイズの分散を表す。実験計画では、これはＡ最適計画に対応し、そのようなＭＳＥを使用して係数
2020512733.tif 000018
の特性を評価することができる。以下の説明では、Ｔｒ（（ＡＨＡ）−１）がＭＳＥに比例するため、Ｔｒ（（ＡＨＡ）−１）の値を使用してＭＳＥの動作を説明することができる。
【００５７】
いくつかの実施形態では、ＤＰＤシステム２００の関心のあるパラメータには、例えば、正規化された平均二乗誤差（ＮＭＳＥ）およびＡＣＰＲが含まれる。ＮＭＳＥとＡＣＰＲはどちらもＭＳＥに依存し、ＭＳＥは、Ａのスペクトル特性によって定義することができ、Ｔｒ（（ＡＨＡ）−１）および条件数κを含む。Ｔｒ（（ＡＨＡ）−１）は（例えば、ＭＳＥを使用して）平均エラー動作を記述することができるが、条件数κは最悪の場合を記述する。条件数κは、次のように計算できる。
2020512733.tif 000019
ここで、σｍａｘ（Ａ）、およびσｍｉｎ（Ａ）は、それぞれＡの最大および最小特異値である。
【００５８】
いくつかの実施形態では、様々なシステムモデルを使用して、未知のシステム２０６の特性をモデル化することができる。いくつかの例では、システムモデルはパラメータの線形モデルである。いくつかの例では、システムモデルはメモリ効果のない非線形メモリレスモデルである。そのような非線形メモリレスモデルは、例えば、多項式モデルを含んでもよい。
【００５９】
いくつかの例では、システムモデルは非線形メモリモデルであり、未知のシステム２０６のメモリ効果を考慮している。そのようなメモリモデルは、例えば、一般化されたメモリ多項式モデル（ＧＰＭ）およびＶｏｌｔｅｒｒａモデルを含んでもよい。複雑さとパフォーマンスの適切なトレードオフを提供するメモリ多項式モデルの例は、以下のように提供される。
2020512733.tif 000020
ここで、cp,qは未知のシステム２０６のモデルの係数であり、Ｐは多項式の次数であり、Ｑはメモリの深さである。この例では、未知の係数cp,qの総数ＬはＰ＊（Ｑ＋１）に等しくなる。
【００６０】
様々な実施形態では、サンプリング行列Ｄｄｉａｇを使用してもＡの条件は改善されない可能性があることに留意されたい。例えば、Ｔａｙｌｏｒ級数を使用する非線形メモリレスモデルは次のように表現できる。
2020512733.tif 000021
ここで、Ｌは正の整数であり、係数clの総数である。
【００６１】
したがって、行列Ｘは次のように因数分解できる。
2020512733.tif 000022
ここで、Ｖは実数値Ｖａｎｄｅｒｍｏｎｄｅ行列であり、条件が悪い可能性がある。ＶにＤｄｉａｇを掛けた後もＡはＶａｎｄｅｒｍｏｎｄｅのままなので、サンプリング行列Ｄｄｉａｇを使用してもＡの状態が改善されない場合がある。
【００６２】
未知のシステム２０６のシステムモデルの係数
2020512733.tif 000023
を決定した後に、モデル識別ユニット２２２は、係数
2020512733.tif 000024
をＤＳＰユニット２２０のプリディストーションユニット２２８に送る。プリディストーションユニット２２８は、デジタル信号２３０を受信し、未知のシステム２０６のシステムモデル（係数
2020512733.tif 000025
を含む）に従ってデジタル信号２３０にプリディストーションを実行して、デジタル信号ｘ（ｎ）２０２を生成することができ、デジタル信号ｘ（ｎ）２０２は、プリディストーションされたデジタル信号ｘ（ｎ）２０２とも呼ばれる。プリディストーションは、未知のシステム２０６の様々な歪（例えば、非線形性）を補償し、それによりＤＰＤシステム２００の性能を改善することができる。
【００６３】
プリディストーションユニット２２８は、例えば、直接学習自己調整レギュレータ（ＳＴＲ）法、直接学習モデル参照適応システム（ＭＲＡＳ）を含む様々な方法を使用して実行することができる。特定の例では、プリディストーションユニット２２８は、ｐ次の事前逆開ループ直接学習モデルを使用する。その特定の例では、プリディストーションユニット２２８は、モデル識別ユニット２２２によって提供される係数
2020512733.tif 000026
によって提供されるシステムモデルを反転し、反転したシステムモデルに従ってプリディストーションを実行することができる。
【００６４】
図６を参照すると、ＤＰＤシステム６００（モデル識別システム６００とも呼ばれる）のブロック図が示されており、これは、以下で説明する違いを除いて、上述の図２のＤＰＤシステム２００と実質的に同様である。ＤＰＤシステム６００は、無線トランシーバ（例えば、大規模ＭＩＭＯ通信システムの基地局）の送信部分（例えば、送信機）であってもよい。図６の例に示すように、ＤＰＤシステム６００はＤＳＰユニット２２０を含む。ＤＳＰユニット２２０のプリディストーションユニット２２８は、送信アンテナ６０８などの１つまたは複数の送信アンテナによって無線送信されるデジタル信号２３０を受信する。プリディストーションユニット２２８は、デジタル信号２３０にデジタルプリディストーションを実行して、プリディストーションデジタル信号ｘ（ｎ）を生成する。
【００６５】
図６に示すように、ＤＡＣ２０４は、プリディストーションされたデジタル信号ｘ（ｎ）２０２をアナログ信号ｘ（ｔ）に変換し、アナログ信号ｘ（ｔ）を電力増幅器６０４に出力する。電力増幅器６０４は、未知の係数を含むシステムモデルを使用してモデル化され得る特性を有し、ＤＰＤシステム２００の未知のシステム２０６に対応する。電力増幅器６０４は、アナログ信号ｘ（ｔ）を増幅し、増幅されたアナログ信号を送信アンテナ６０８に印加して、無線通信を実行する。ほんの一例として、無線通信は、ＩＥＥＥ  ８０２．１１通信規格または別の無線通信規格に準拠してもよい。図６の例では、アナログ信号ｘ（ｔ）は、電力増幅器６０４に入力される前に、アップコンバータ６０２を使用してアップコンバートされる。
【００６６】
図６に示すように、増幅されたアナログ信号ｙ（ｔ）２０８は、ＡＤＣ２１０を含むフィードバック経路に送られ、変換ユニット２１２は、アナログ信号ｙ（ｔ）２０８をデジタル信号ｙ（ｎ）２１４に変換することができる。図６の例では、アナログ信号ｙ（ｔ）２０８は、ＡＤＣ２１０に入力される前に、ダウンコンバータ６１０を使用してダウンコンバートされる。
【００６７】
モデル識別ユニット２２２は、ＡＤＣ２１０からデジタル信号ｙ（ｎ）２１４を受け取り、デジタル信号ｘ（ｎ）およびデジタル信号ｙ（ｎ）に基づいて電力増幅器６０４のシステムモデルの係数を決定する。プリディストーションユニット２２８は、信号２２６を通じてモデル識別ユニットから電力増幅器６０４のシステムモデルの係数を含む信号２２６を受信し、電力増幅器６０４のシステムモデルに従ってデジタル信号２３０にプリディストーションを実行する。
【００６８】
様々な実施形態では、大規模ＭＩＭＯ通信システムでＤＰＤシステム６００を使用することは、様々な課題を課す場合がある。一例では、大規模ＭＩＭＯ通信システムの基地局は、１００個の対応するＤＰＤシステムを備えた１００個の送信アンテナを含む。基地局は、これらのすべてのＤＰＤシステムに対してデジタル信号プロセスを実行するＤＳＰユニットを含むことができる。これらのＤＰＤシステムのＡＤＣとＤＳＰユニットとの間の接続は、総データレートが大きいため、ボトルネックになる可能性がある。各ＤＰＤシステムが４９１．５１ＭＨｚのサンプリングレートで１６ビットＡＤＣを使用する例では、８Ｇｂｉｔ／ｓのデータレートが単一のＡＤＣからＤＳＰユニットに転送される場合がある。そのため、１００個の送信アンテナを持つ大規模ＭＩＭＯ通信システムでは、ＤＳＰユニットとＡＤＣとの間の接続の総データレートが０．５Ｔｂｉｔ／ｓを超える場合があり、ＡＤＣとＤＳＰユニットとの間の接続が困難になる。図７から図１６Ｄを参照すると、ＡＤＣとＤＳＰユニットとの間のデータレートを低減するためのモデル識別方法が説明されている。以下で詳細に説明するように、ＡＤＣのＤＳＰブロックを使用してサンプルを圧縮することにより、ＡＤＣはＡＤＣのサンプリングレートよりも低いデータレートを有するデジタル信号を出力することができ、ＡＤＣとＤＳＰユニットとの間のデータレートの低減を達成することができる。
【００６９】
図７を参照すると、電力増幅器モデルの係数を決定し、ＤＰＤシステムでデジタルプリディストーションを実行する方法７００が示されている。図８Ａおよび図８Ｂを参照すると、方法７００を実行することができるＤＰＤシステムの例が示されている。具体的には、図８ＡのＤＰＤシステム８００および図８ＢのＤＰＤシステム８５０は、以下で説明する違いを除いて、図２のＤＰＤシステム２００および図６のＤＰＤシステム６００と実質的に同様である。
【００７０】
方法７００はブロック７０２で始まり、ＤＡＣが第１のデジタル信号を受信し、第１のデジタル信号をアナログ信号に変換する。図８Ａおよび図８Ｂを参照すると、ブロック７０２で、ＤＡＣ２０４はデジタル信号ｘ（ｎ）２０２を受信し、アナログ信号ｘ（ｔ）を出力する。一例では、ＤＡＣ２０４は、所定のサンプリングレートでデジタル信号ｘ（ｎ）２０２をサンプリングし、サンプルをアナログ信号ｘ（ｔ）２０５に変換し、アナログ信号ｘ（ｔ）２０５を出力する。
【００７１】
次に、方法７００はブロック７０４に進み、未知のシステムが第１のアナログ信号を受信し、第１のアナログ信号に基づいて第２のアナログ信号を生成する。図８Ａを参照すると、未知のシステム２０６が、アナログ信号ｘ（ｔ）２０５を受信し、アナログシステムｘ（ｔ）に基づいてアナログ信号ｙ（ｔ）２０８を生成する。図８Ｂを参照すると、電力増幅器６０４を含む未知のシステムが、アナログ信号ｘ（ｔ）を受信し、アナログ信号ｘ（ｔ）を増幅することによりアナログ信号ｙ（ｔ）を生成する。
【００７２】
次に、方法７００はブロック７０６に進み、第２のアナログ信号をサンプリングすることにより、第１のデータレートを有する第２のデジタル信号が生成される。図８Ａおよび図８Ｂを参照すると、ＡＤＣ２１０の変換ユニット２１２が、アナログ信号ｙ（ｔ）２０８を受信し、アナログ信号ｙ（ｔ）２０８を所定のサンプリングレートでサンプリングし、サンプルをデジタル信号ｙ（ｎ）２１４に変換する。一例では、所定のサンプリングレートはナイキストレート（ｆＳ）であり、デジタル信号ｙ（ｎ）２１４はナイキストレート（ｆＳ）に対応するデータレートを有し得る。例えば、１６ビットの分解能を持ち、４９１．５２ＭＨｚのナイキストレート（ｆＳ）をサンプリングレートとして使用するＡＤＣの場合、デジタル信号ｙ（ｎ）２１４のデータレートは１６＊ｆＳに等しくなり、それは約８ギガビット／秒である。
【００７３】
次に、方法７００はブロック７０８に進み、第１のデータレートよりも低い第２のデータレートを有する第３のデジタル信号が生成される。図８Ａを参照すると、ＡＤＣ２１０はＤＳＰユニット８０２を含み、ＤＳＰユニット８０２が変換ユニット２１２からデジタル信号ｙ（ｎ）２１４を受信し、デジタル信号ｙ（ｎ）２１４のデータレートより低いデータレートを有するデジタル信号ｚ（ｎ）８０４を生成する。一例では、ＡＤＣ２１０およびそのＤＳＰユニット８０２は同じダイに含まれる。
【００７４】
図８Ｂを参照すると、ＤＳＰユニット８０２は、アキュムレータ８５２Ａおよびサンプリング行列ユニット８５４Ａを含む。様々な実施形態では、サンプリング行列ユニット８５４Ａは、サンプリング行列Ｄの要素を提供してもよい。アキュムレータ８５２Ａは、サンプリング行列Ｄまたはその要素を受け取り、サンプリング行列Ｄの対応する要素に基づいてデジタル信号ｙ（ｎ）のサンプルを組み合わせることにより圧縮プロセスを実行し、得られたサンプルを含むデジタル信号ｚ（ｎ）を生成することができる。一例では、アキュムレータ８５２Ａは、ｙ（ｎ）のサンプルを加算または減算するための加算器／減算器を含むことができる。したがって、ＤＳＰユニット８０２は、以下の説明では圧縮ユニット８０２と呼ばれる。適切なサンプリング行列Ｄを選択することにより、デジタル信号ｚ（ｎ）は、所望のデータレート（例えば、デジタル信号ｙ（ｎ）のデータレートより低い）を有することができる。
【００７５】
様々な実施形態では、サンプリング行列Ｄは、以下のように表されるブロック対角行列Ｄｂｌｋｄｉａｇであり得る。
2020512733.tif 000027
ここで、ＤｂｌｋｄｉａｇはＭ行とＮ列を有し、ｄｉは１ｘＲベクトルであり、Ｍ、Ｎ、およびＲは正の整数であり、Ｒは１より大きく、正規子（normalizer）（例えば、
2020512733.tif 000028
）はデジタル信号ｚ（ｎ）の圧縮されたサンプルを正規化するために用いられる。ベクトルｄｉは、ブロック対角行列Ｄｂｌｋｄｉａｇのｉ番目の対角ブロックとも呼ばれる。整数Ｒは、対角ブロックｄｉの対角ブロック幅とも呼ばれる。Ｄｂｌｋｄｉａｇにより、ｙ（ｎ）の選択されたサンプルの数は測定数Ｍと等しくないことに留意されたい。代わりに、ｙ（ｎ）の選択されたサンプルの数がＭ＊Ｒに等しくなる。いくつかの実施形態では、サンプリング行列Ｄｂｌｋｄｉａｇを使用すると、式（３）によって提供されるモデル識別問題を解決するために利用される追加の自由度が導入される。
【００７６】
一例では、対角ブロック行列Ｄｂｌｋｄｉａｇは、その１番目からＭ番目の対角ブロックの各要素が１に等しい対角ブロック行列Ｄｂｌｋｏｎｅｓであってもよい。Ｄｂｌｋｄｉａｇの各ｄｉを１１×Ｒに設定することにより、次のように対角ブロック行列Ｄｂｌｋｏｎｅｓが得られる。
2020512733.tif 000029
【００７７】
図９を参照すると、モデル識別問題、およびサンプリング行列Ｄｂｌｋｏｎｅｓを使用する式（２）および（３）によるｚ、Ｄｂｌｋｏｎｅｓ、Ｘ、Ａ、およびｃの間の関係を示す図が示されている。図９に示すように、ｉが１とＬの間の整数である行列Ｘのｉ番目の列について、Ａを生成するためのＤｂｌｋｏｎｅｓとＸのｉ番目の列との行列乗算にはＭ個の累積プロセスが含まれてもよく、各累積プロセスは、対応するＸのｉ番目の列の連続したＲサンプルを加算して、Ａの対応する要素を生成する。
【００７８】
同様に、ｚを生成するためのＤｂｌｋｏｎｅｓとｙの行列乗算はＭ個の累積プロセスを含むことができ、各累積プロセスはｙ（ｎ）の対応する連続したＲサンプルを加算してｚの対応する要素を生成する。
【００７９】
したがって、圧縮ユニット８０２は、サンプリング行列Ｄｂｌｋｏｎｅｓに従ってｙ（ｎ）の対応する連続するＲサンプルを結合することにより、式（３）のｚに対応するデジタル信号ｚ（ｎ）を生成するためにデジタル信号ｙ（ｎ）を使用することができる。デジタル信号ｚ（ｎ）のｍ番目のサンプルは、次のように表現できる。
2020512733.tif 000030
【００８０】
図１０を参照すると、デジタル信号ｚ（ｎ）８０４のサンプルおよびデジタル信号ｙ（ｎ）２１４の対応するサンプルが示されている。図示する例では、圧縮ユニット８０２は、デジタル信号ｙ（ｎ）２１４およびサンプリング行列Ｄｂｌｋｏｎｅｓに基づいてデジタル信号ｚ（ｎ）８０４を生成し、サンプリング行列Ｄｂｌｋｏｎｅｓの対角ブロック幅Ｒは３の値を有する。図１０に示すように、サンプル１００２−１〜１００２−１２は、ｙ（ｎ）の連続するサンプルに対応し、各サンプルはＴｓの期間をとることができる。サンプル１００４−１〜１００４−４は、ｙ（ｎ）のサンプルに基づいて生成されたｚ（ｎ）の連続サンプルに対応する。具体的には、ｚ（ｎ）のサンプル１００４−１は、ｙ（ｎ）のサンプル１００２−１、１００２−２、および１００２−３を追加することで生成される。ｚ（ｎ）のサンプル１００４−２、サンプル１００２−４、１００２−５、および１００２−６。ｚ（ｎ）のサンプル１００４−３は、ｙ（ｎ）のサンプル１００２−７、１００２−８、および１００２−９を追加することで生成することができる。サンプル１００２−４は、サンプル１００２−１０、１００２−１１、および１００２−１２を追加することにより生成することができる。図１０に示すように、ｚ（ｎ）のサンプル１００４−１〜１００４−４の各々は、Ｒ＊Ｔｓの期間をとることができる。一例では、ＡＤＣの出力８０４でのｚ（ｎ）のデータレートＤＲｂｌｋｄｉａｇは、次のように計算することができる。
2020512733.tif 000031
ここで、ｗはＡＤＣ２１０の解像度（例えば、１６ビット）である。一方、図２および図６のＤＰＤシステム２００、６００におけるＡＤＣ２１０の出力データレートであるデジタル信号ｙ（ｎ）のデータレートは、以下のように計算することができる。
2020512733.tif 000032
【００８１】
このように、圧縮ユニット８０２を使用してサンプリング行列Ｄｂｌｋｏｎｅｓに従って圧縮プロセスを実行することにより、ＡＤＣ２１０の出力データレートは、図２および図６のＤＰＤシステム２００、６００のＡＤＣ２１０と比較してＲの因子だけ低減され得る。
【００８２】
サンプリング行列Ｄｂｌｋｄｉａｇを使用することにより、同じ測定数Ｍが使用される場合、ＤＰＤシステム８５０の識別時間は、図２および図６のＤＰＤシステム２００、６００と比較してＲの因子だけ増加することに留意されたい。例えば、図１０に示すように、ＤＰＤシステム８５０では、ｚ（ｎ）の各サンプルはＲ＊Ｔｓを使用して生成される。したがって、Ｍ個のサンプルを生成するためのＤＰＤシステム８５０の識別時間は、Ｍ＊（Ｒ＊Ｔｓ）に等しい。一方、ＤＰＤシステム２００では、ｙ（ｎ）の各サンプルはＴｓを使用して生成されるため、その識別時間はＭ＊Ｔｓである。
【００８３】
サンプリング行列Ｄｂｌｋｄｉａｇを使用することにより、ＡＤＣ２１０は、データレートが低下したデジタル信号を出力し、それによりＡＤＣ２１０とＤＳＰユニット２２０との間の接続性を改善することができる。例えば、サンプリング行列Ｄｂｌｋｏｎｅｓを使用するＤＰＤシステム８５０は、未知のシステムのシステムモデルが非線形メモリレスモデルである図６のＤＰＤシステム６００よりも優れた性能を達成することができる。しかし、いくつかの例では、未知のシステムのシステムモデルは非線形メモリモデルであり、サンプリング行列Ｄｂｌｋｏｎｅｓを使用するそのようなＤＰＤシステム８５０は、望ましい性能を達成できない場合がある。これらの例では、非線形メモリモデルは周波数に依存する。しかし、サンプリング行列Ｄｂｌｋｏｎｅｓを使用することにより、ＤＰＤシステム８５０は直流情報のみを取得し、メモリ非線形モデルに必要な周波数情報を提供しない。
【００８４】
未知のシステムのシステムモデルが非線形メモリモデルである様々な実施形態では、ブロック対角行列ＤｒａｎｄｂｌｋおよびＤｒａｄｅｂｌｋをサンプリング行列として使用してもよい。ブロック対角行列ＤｒａｎｄｂｌｋおよびＤｒａｄｅｂｌｋは、次のように表現できる。
2020512733.tif 000033
ここで、ｆｉは１×Ｒ複素ガウスランダムベクトルであり、
2020512733.tif 000034
ここで、ｇｉはランダムな符号のみを含む１×Ｒベクトルである。いくつかの例では、Ｄｒａｄｅｂｌｋはブロック対角ランダム符号行列またはＲａｄｅｍａｃｈｅｒ行列と呼ばれる。ｆｉおよびｇｉの要素をランダムに選択することにより、すべての周波数の混合が考慮される。そのため、ブロック対角行列ＤｒａｎｄｂｌｋおよびＤｒａｄｅｂｌｋを、非線形メモリレスモデルと非線形メモリモデルの両方に使用することができる。
【００８５】
図８Ｂの例では、サンプリング行列ユニット８５４Ａは、サンプリング行列Ｄｒａｄｅｂｌｋの擬似ランダム符号を生成するための乱数発生器（ＲＮＧ）８５６Ａを含むことができる。ＲＮＧ８５６Ａは、クロック信号２３２によってクロックされる線形フィードバックシフトレジスタ（ＬＦＳＲ）を含むことができ、ＬＦＳＲは擬似乱数の反復シーケンスを生成する。一例では、ＬＦＳＲはハードウェアに実装されているため、非常に高速な擬似乱数生成が可能である。さらなる例として、ＲＮＧ８５６Ａは、例えば線形合同発生器を含む様々な擬似乱数発生器アルゴリズムを使用してもよい。いくつかの例では、ＲＮＧ８５６Ａによって生成される一連の数値は、擬似乱数発生器アルゴリズムおよびシードによって決定される。様々な実施形態では、アキュムレータ８５２Ａは、ＲＮＧ８５６Ａおよび／またはサンプリング行列Ｄｒａｄｅｂｌｋによって生成されたランダムな符号に従ってデジタル信号ｙ（ｎ）のサンプルを組み合わせることにより（例えば、加算または減算することにより）、ｚ（ｎ）のサンプルを生成することができる。
【００８６】
いくつかの実施形態では、図８Ｂに示すように、サンプリング行列ユニット８５４Ａは、サンプリング行列Ｄｒａｄｅｂｌｋの対角ブロック幅Ｒを調整するために使用され得る対角ブロック幅ユニット８５８Ａを含むことができる。ＤＰＤシステム８５０の性能（例えば、モデル識別時間、ＭＳＥ、モデル誤差のＮＭＳＥ、ＤＰＤ  ＮＭＳＥ、ＤＰＤ  ＡＣＰＲ）は、対角ブロック幅Ｒを変更することにより調整することができる。
【００８７】
次に、方法７００は、ブロック７１０に進み、モデル識別プロセスを実行して、未知のシステムのモデルの係数を決定する。図８Ｂを参照すると、ＤＳＰユニット２２０のモデル識別ユニット２２２は、係数決定ユニット８６０、サンプリング行列ユニット８５４Ｂ、列信号発生器８５１、およびアキュムレータ８５２Ｂを含む。いくつかの実施形態では、ＤＳＰユニット２２０およびそのＤＳＰユニット８０２を含むＡＤＣ２１０は、同じダイ上に配置される。いくつかの例では、ＡＤＣ２１０のＤＳＰユニット８０２はＡＤＣ２１０の変換ユニット２１２に隣接して配置されるが、ＤＳＰユニット２２０はＡＤＣ２１０に隣接していない。あるいは、いくつかの例では、ＡＤＣ２１０はＤＳＰユニット２２０に隣接している。いくつかの実施形態では、そのＤＳＰユニット８０２を含むＡＤＣ２１０は第１のダイに配置され、ＤＳＰユニット２２０は第１のダイとは異なる第２のダイに配置される。いくつかの実施形態では、ＤＳＰユニット８０２は、ＡＤＣ２１０内の特定用途向け集積回路（ＡＳＩＣ）を使用して実装される。いくつかの実施形態では、ＤＳＰユニット２２０は、ＰＬＤ（例えば、ＦＰＧＡ）で実装される。いくつかの例では、ＡＤＣ２１０は、サンプリング行列Ｄｒａｄｅｂｌｋをモデル識別ユニット２２２に送ることができる。しかしながら、そのような例では、ＡＤＣ２１０からＤＳＰユニット２２０に転送されるデータレートは、サンプリング行列Ｄｒａｄｅｂｌｋのそのような転送により増加され得る。あるいは、図８Ｂに示すいくつかの例では、ＡＤＣ２１０からサンプリング行列Ｄｒａｄｅｂｌｋを受け取る代わりに、モデル識別ユニット２２２がサンプリング行列ユニット８５４Ｂを使用して、ＡＤＣ２１０のサンプリング行列Ｄｒａｄｅｂｌｋと一致するサンプリング行列Ｄｒａｄｅｂｌｋ’を生成する。図８Ｂに示すように、サンプリング行列ユニット８５４Ｂは、それぞれＲＮＧ８５６Ａおよび対角ブロック幅ユニット８５８Ａに一致するＲＮＧ８５６Ｂおよび対角ブロック幅ユニット８５８Ｂを含むことができる。一例では、ＲＮＧ８５６Ｂは擬似乱数の同じシーケンスを生成する。例えば、ＲＮＧ８５６Ｂは、ＲＮＧ８５６ＡのＬＦＳＲに一致するハードウェアに実装されたＬＦＳＲを含み、ＲＮＧ８５６ＡおよびＲＮＧ８５６ＢのＬＦＳＲは（例えば、クロック信号２３２を使用して）同期される。別の例では、ＲＮＧ８５６ＡとＲＮＧ８５６Ｂの両方が同じ擬似乱数発生器アルゴリズムおよび同じシードを使用するため、擬似乱数の同じシーケンスを生成する。いくつかの例では、対角ブロック幅ユニット８５８Ａ、８５８Ｂは、ＡＤＣ２１０のサンプリング行列Ｄｒａｄｅｂｌｋおよびサンプリング行列Ｄｒａｄｅｂｌｋ’の対角ブロック幅Ｒに同じ値を提供する。
【００８８】
いくつかの実施形態では、列信号発生器８５１は、プリディストーションユニット２２８からの信号２２４によりデジタル信号ｘ（ｎ）のサンプルを受信することができ、ｘ（ｎ）をデジタル信号８６４−１から８６４−Ｌに変換し、各々は行列Ｘの列（カーネル）に対応する。デジタル信号８６４−１から８６４−Ｌは、未知のシステム２０６のモデルに基づいて生成することができる。一例では、式（４）の非線形メモリレスモデルが未知のシステム２０６のモデルとして使用される。そのため、デジタル信号８６４−１から８６４−Ｌはそれぞれ
2020512733.tif 000035
および
2020512733.tif 000036
に対応し、ｌは１〜Ｌの整数である。別の例では、式（３）のメモリ多項式が未知のシステム２０６のモデルとして使用される。その例では、デジタル信号８６４−１から８６４−Ｌはそれぞれ
2020512733.tif 000037
に対応し、ここでＬはＰ＊（Ｑ＋１）に等しい。
【００８９】
アキュムレータ８５２Ｂは、列信号発生器８５１からデジタル信号８６４−１〜８６４−Ｌを受信することができる。行列ＸのＬ個の列の各列（カーネル）について、アキュムレータ８５２Ｂは、サンプリング行列Ｄｒａｄｅｂｌｋ’の対応する要素に従って、対応するデジタル信号８６４−ｉのサンプルを結合（例えば、加算または減算）することにより、行列Ａの要素を生成し、ここで、ｉは特定の列の列インデックスである。次に、アキュムレータ８５２Ｂは、行列Ａの得られた値を係数決定ユニット８６０に送信することができる。
【００９０】
いくつかの実施形態では、係数決定ユニット８６０は、アキュムレータ８５２Ｂから行列Ａを含む信号８６２を受信し、ＡＤＣ２１０の圧縮ユニット８０２からｚ（ｎ）のサンプルを含む信号８０４を受信する。次いで、係数決定ユニット８６０は、以下のように係数
2020512733.tif 000038
を計算することができる。
2020512733.tif 000039
【００９１】
いくつかの実施形態では、係数決定ユニット８６０は、計算された係数
2020512733.tif 000040
を含む信号２２６をプリディストーションユニット２２８に送信する。
【００９２】
次いで、方法７００は、ブロック７１２に進み、未知のシステムによって引き起こされた歪みを補償するために第４のデジタル信号に対してプリディストーションプロセスが実行されて、第１のデジタル信号が生成される。図８Ａおよび図８Ｂを参照すると、プリディストーションユニット２２８は、未知のシステム２０６／電力増幅器６０４のモデルの係数
2020512733.tif 000041
を含む信号２２６を受信し、未知のシステムの係数
2020512733.tif 000042
および識別モデルに基づいて信号２２６をプリディストーションする。
【００９３】
図１１Ａから図１１Ｅを参照すると、サンプリング行列Ｄｂｌｋｏｎｅｓを使用するＤＰＤシステム８５０とＤＰＤシステム６００の性能比較が示されている。図１１Ａから図１１Ｅに示すように、未知のシステムの非線形メモリレスモデルにより、ＤＰＤシステムの性能が改善される。図示する例では、式（４）に示すような９次のテイラー級数を含む非線形メモリレスモデルが使用され、ここで、未知の係数の数Ｌは９である。ＤＰＤシステム８５０は、６４の値を有する対角ブロック幅Ｒを有するサンプリング行列Ｄｂｌｋｏｎｅｓを使用する。曲線１１０２Ａ、１１０２Ｂ、１１０２Ｃ、１１０２Ｄ、１１０２Ｅ、１１０２Ｆは、ＤＰＤシステム６００の性能曲線に対応する。曲線１１０４Ａ、１１０４Ｂ、１１０４Ｃ、１１０４Ｄ、１１０４Ｅ、１１０４Ｆは、ＤＰＤシステム８５０の性能曲線に対応する。具体的には、図１１Ａの曲線１１０２Ａ、１１０４Ａは、測定数Ｍに関する条件数κを示す。図１１Ｂの曲線１１０２Ｂ、１１０４Ｂは、測定数Ｍに関するＴｒ（（ＡＨＡ）−１）を示す。図１１Ｃの曲線１１０２Ｃ、１１０４Ｃは、測定数Ｍに関するＭＳＥを示す。
【００９４】
図１１Ｄを参照すると、曲線１１０２Ｄ、１１０４Ｄは、測定数Ｍに関するモデル誤差のＮＭＳＥを示している。図１１Ｄに示すように、測定数Ｍｄｉａｇを使用するＤＰＤシステム６００と同じ誤差（例えば、モデル誤差のＮＭＳＥ）を達成しながら、ＤＰＤシステム８５０で著しく小さい測定数Ｍｂｌｋｏｎｅｓを使用することができる。測定数低減係数ＲＥＤＭは、次のように定義することができる。
2020512733.tif 000043
【００９５】
図１１Ｅを参照すると、曲線１１０２Ｅ、１１０４Ｅは、測定数Ｍに関するＤＰＤシステムのＮＭＳＥを示している。図１１Ｆを参照すると、曲線１１０２Ｆ、１１０４Ｆは、測定数Ｍに関するＤＰＤシステムのＡＣＰＲを示している。図１１Ａ〜図１１Ｆに示すように、サンプリング行列Ｄｂｌｋｏｎｅｓを使用することにより、ＤＰＤシステムの性能が改善される。測定数Ｍｂｌｋｏｎｅｓはサンプリング行列Ｄｂｌｋｏｎｅｓの行数に対応し、ＤＰＤシステム８５０の各測定はｙ（ｎ）のＲ個のサンプルに対応することに留意されたい。
【００９６】
図１２Ａおよび図１２Ｂを参照すると、サンプリング行列Ｄｂｌｋｄｉａｇを使用するＤＰＤシステム８５０は、サンプリング行列Ｄｂｌｋｄｉａｇの対角ブロック幅Ｒを調整することにより所望の性能を達成するように調整することができる。特定の例では、サンプリング行列Ｄｒａｄｅｂｌｋが使用され、式（３）のメモリ多項式が使用される。このメモリ多項式は１１の非線形次数Ｌと３のメモリ深度Ｑを有し、未知のシステムをモデル化するために非線形メモリレスモデルが使用される。図１２Ａおよび図１２Ｂを参照すると、いくつかの実施形態では、Ａのスペクトル特性を改善するために対角ブロック幅Ｒを調整することができる。図１２Ａに示すように、より大きな対角ブロック幅Ｒを使用することにより、条件数κが改善される。図１２Ａは、それぞれ１、２、５、１０、２０、６０、および１００の値を有する対角ブロック幅Ｒに対応する曲線１２０２Ａ、１２０４Ａ、１２０６Ａ、１２０８Ａ、１２１０Ａ、１２１２Ａ、および１２１４Ａを含む。特定の測定数Ｍについて、対角ブロック幅Ｒが増加すると条件数κは減少する。圧縮サンプル数Ｒの増加によって達成される条件数κの改善（減少）は、すぐに飽和することに留意されたい。例えば、曲線１２０４Ａ、１２０６Ａに示すように、対角ブロック幅Ｒを２から５に増やすことで達成される条件数κの改善は、曲線１２０６Ａ、１２０８Ａで示すように対角ブロック幅Ｒを５から１０に増やすことで達成される改善よりもはるかに大きい。
【００９７】
同様に、図１２Ｂに示すように、より大きな対角ブロック幅Ｒを使用することにより、Ｔｒ（（ＡＨＡ）−１）が改善される。図１２Ｂは、それぞれ１、２、５、１０、２０、６０、および１００の値を有する対角ブロック幅Ｒに対応する１２０２Ｂ、１２０４Ｂ、１２０６Ｂ、１２０８Ｂ、１２１０Ｂ、１２１２Ｂ、および１２１４Ｂを含む。曲線１２０２Ｂ〜１２１４Ｂで示すように、特定の測定数Ｍの場合、対角ブロック幅Ｒが増加するとＴｒ（（ＡＨＡ）−１）が減少する。いくつかの実施形態では、対角ブロック幅Ｒを増加させることにより達成されるＴｒ（（ＡＨＡ）−１）の改善（減少）は、すぐに飽和する。例えば、曲線１２０４Ｂ、１２０６Ｂに示すように対角ブロック幅Ｒを２から５に増やすことによって達成されるＴｒ（（ＡＨＡ）−１）の改善は、曲線１２０６Ｂ、１２０８Ｂで示すように対角ブロック幅Ｒを５から１０に増やすことによって達成される改善よりもはるかに大きい。
【００９８】
様々な実施形態では、Ｄｂｌｋｄｉａｇを使用するＤＰＤシステム（例えば、ＤＰＤシステム８００、８５０）は、未知のシステム／電力増幅器のための様々なタイプの基底関数を含むモデルと共に使用することができる。例えば、モデルは任意の基底関数を使用することができる。さらなる例として、モデルは、分解ベクトル回転（ＤＶＲ）モデルであってもよく、区分的線形（ＰＷＬ）基底関数を使用してもよい。さらなる例として、モデルは計算的に複雑な直交多項式基底関数を含んでもよい。様々な実施形態では、モデルがより高い非線形性次数を有する場合、Ｄｂｌｋｄｉａｇを使用するＤＰＤシステムの性能上の利点は、サンプリング行列Ｄｄｉａｇを使用するＤＰＤシステム（例えば、ＤＰＤシステム２００、６００）と比較して大きくなり得る。図１３を参照すると、Ｄｄｉａｇを使用する第１のＤＰＤシステムおよびＤｂｌｋｄｉａｇを使用する第２のＤＰＤシステムのモデル誤差のＮＭＳＥを示す曲線１３０２−１、１３０２−２、１３０４−１、１３０４−２、１３０６−１、および１３０６−２が示されている。第１および第２のＤＰＤシステムは、異なる項が切り捨てられた同じモデル（例えば、テイラー級数を使用した非線形メモリレスモデル）を使用する。曲線１３０２−１、１３０２−２は、３に等しい非線形次数を有する項が切り捨てられたモデルに対応する。曲線１３０４−１、１３０４−２は、５に等しい非線形次数を有する項が切り捨てられたモデルに対応する。曲線１３０６−１、１３０６−２は、９に等しい非線形次数を有する項が切り捨てられたモデルに対応する。さらに、曲線１３０２−１、１３０４−１、１３０６−１は、第１のＤＰＤシステムに対応し、曲線１３０２−２、１３０４−２、１３０６−２は、第２のＤＰＤシステムに対応する。図１３に示すように、第２のＤＰＤシステムは、第１のＤＰＤシステムよりも優れた性能を有し、モデルの非線形性次数がより高い場合には、第２のＤＰＤシステムの利点はより大きくなる。例えば、曲線１３０２−１と曲線１３０２−２との間の差は、曲線１３０６−１と曲線１３０６−２との間の差よりも小さい。
【００９９】
図１４Ａ、図１４Ｂ、図１４Ｃ、および図１４Ｄを参照すると、それぞれＤｄｉａｇ、Ｄｂｌｋｏｎｅｓ、Ｄｒａｄｅｂｌｋ、およびＤｒａｎｄｂｌｋを使用したＤＰＤシステムの性能比較が示されており、未知のシステムのモデルはメモリ効果を含む。式（３）のメモリ多項式が使用されており、これは、１１の非線形次数Ｌと３のメモリ深度Ｑを有する。図１４Ａの曲線１４０２Ａ、図１４Ｂの曲線１４０２Ｂ、図１４Ｃの曲線１４０２Ｃ、および図１４Ｄの曲線１４０２Ｄは、サンプリング行列Ｄｄｉａｇを使用する第１のＤＰＤシステム（例えば、ＤＰＤシステム６００）に対応する。図１４Ａの曲線１４０４Ａ、図１４Ｂの曲線１４０４Ｂ、図１４Ｃの曲線１４０４Ｃ、および図１４Ｄの曲線１４０４Ｄは、サンプリング行列Ｄｂｌｋｏｎｅｓを使用する第２のＤＰＤシステム（例えば、ＤＰＤシステム８５０）に対応する。図１４Ａの曲線１４０６Ａ、図１４Ｂの曲線１４０６Ｂ、図１４Ｃの曲線１４０６Ｃ、および図１４Ｄの曲線１４０６Ｄは、サンプリング行列Ｄｒａｄｅｂｌｋを使用する第３のＤＰＤシステム（例えば、ＤＰＤシステム８５０）に対応する。図１４Ａの曲線１４０８Ａ、図１４Ｂの曲線１４０８Ｂ、図１４Ｃの曲線１４０８Ｃ、および図１４Ｄの曲線１４０８Ｄは、サンプリング行列Ｄｒａｎｄｂｌｋを使用する第４のＤＰＤシステム（例えば、ＤＰＤシステム８５０）に対応する。
【０１００】
図１４Ａ〜図１４Ｄに示すように、ＤＰＤシステムの性能は、サンプリング行列にランダムな要素を含めることによりすべての周波数の混合を考慮する、Ｄｒａｄｅｂｌｋ（例えば、第３のＤＰＤシステム）およびＤｒａｎｄｂｌｋ（例えば、第４のＤＰＤシステム）を使用することにより著しく改善される。さらに、Ｄｒａｄｅｂｌｋを使用する第３のＤＰＤシステムとＤｒａｎｄｂｌｋを使用する第４のＤＰＤシステムの性能に大きな違いはない。したがって、いくつかの実施形態では、Ｄｒａｄｅｂｌｋを使用する実装はＤｒａｎｄｂｌｋを使用するよりもはるかに単純であるため、ＤＰＤシステムの性能を改善するためにＤｒａｎｄｂｌｋにわたってＤｒａｄｅｂｌｋを選択することができる。
【０１０１】
図１５Ａおよび図１５Ｂを参照すると、測定数低減係数ＲＥＤＭに関するＤＰＤシステムの計算複雑度曲線１５０２および識別時間曲線１５５０がそれぞれ示されている。測定数低減係数ＲＥＤＭは、サンプリング行列Ｄｄｉａｇを使用する第１のＤＰＤシステムおよびサンプリング行列Ｄｂｌｋｄｉａｇを使用する第２のＤＰＤシステムの測定数によって定義される。測定数低減係数ＲＥＤＭは、次のように定義できる。
2020512733.tif 000044
ここで、Ｍｄｉａｇは第１のＤＰＤシステムの測定数であり、Ｍｂｌｋｄｉａｇは第２のＤＰＤシステムの測定数である。
【０１０２】
様々な実施形態では、第２のＤＰＤシステムは、同じＮＭＳＥおよび／またはＡＣＰＲを依然としてもたらしながら、Ｍｄｉａｇよりも少ない測定数Ｍｂｌｋｄｉａｇを使用することができるので、モデル識別問題は、以下のようにより小さい最小二乗システムを解くことができる。
2020512733.tif 000045
ここで、Ｌは未知のシステムのシステムモデルの係数の総数である。
【０１０３】
サンプリング行列Ｄｂｌｋｄｉａｇの使用によって生じるオーバーヘッドの大部分には加算と減算のみが含まれるため、より小さな最小二乗システムをモデル識別システム用に解くことにより、ＤＰＤシステムの計算の複雑さが軽減される。
【０１０４】
図１５Ａおよび図１５Ｂの例では、第２のＤＰＤシステムはサンプリング行列Ｄｒａｄｅｂｌｋを使用する。図１５Ａに示すように、点１５０４は、第１のＤＰＤシステムと第２のＤＰＤシステムが同じＡＣＰＲを有する第１の構成に対応する。点１５０６は、第１のＤＰＤシステムのＡＣＰＲ性能と比較して第２のＤＰＤシステムのＡＣＰＲ性能に約１ｄＢの低下がある第２の構成に対応する。点１５０４で示すように、第１の構成では、測定数係数ＲＥＤＭの値は４であり、計算複雑度係数の値は約０．２５９６である。これは、第２のＤＰＤシステムでサンプリング行列Ｄｒａｄｅｂｌｋを使用することで、第１のＤＰＤシステムと比較して計算の複雑さが約７５％低減されることを示している。点１５０６に示すように、第２の構成では、測定数係数ＲＥＤＭの値は１０であり、計算複雑度係数の値は約０．１１１６であり、これは、第１のＤＰＤシステムでサンプリング行列Ｄｒａｄｅｂｌｋを使用することにより、第２のＤＰＤシステムと比較して、計算の複雑さが約９０％低減されることを示している。
【０１０５】
図１５Ｂに示すように、点１５５２は、第１のＤＰＤシステムと第２のＤＰＤシステムが同じＡＣＰＲを有する第１の構成に対応する。点１５５４は、第１のＤＰＤシステムのＡＣＰＲ性能と比較して第２のＤＰＤシステムのＡＣＰＲ性能に約１ｄＢの低下がある第２の構成に対応する。点１５５２に示すように、第１の構成では、測定数係数ＲＥＤＭの値は４であり、識別時間係数の値は３０であり、これは、第２のＤＰＤシステムの識別時間が第１のＤＰＤシステムの識別時間の３倍であることを示している。点１５５４に示すように、第２の構成では、測定数係数ＲＥＤＭの値は１０であり、識別時間係数の値は約１２であり、これは、第２のＤＰＤシステムの識別時間が第１のＤＰＤシステムの識別時間の１２倍であることを示す。
【０１０６】
様々な実施形態では、より小さい対角ブロック幅Ｒ（例えば、１２０から６０まで）を使用することにより、Ｄｂｌｋｄｉａｇを使用するＤＰＤシステムの識別時間も短縮できることに留意されたい。いくつかの例では、サンプリング行列Ｄｄｉａｇを使用したＤＰＤシステムの識別時間Ｔｉｄ、ｄｉａｇは、次のように計算できる。
2020512733.tif 000046
【０１０７】
サンプリング行列Ｄｂｌｋｄｉａｇを使用したＤＰＤシステムの識別時間Ｔｉｄ、ｂｌｋｄｉａｇは、次のように計算できる。
2020512733.tif 000047
【０１０８】
一方、ＡＤＣ２１０とＤＳＰユニット２２０との間のデータレートは、対角ブロック幅Ｒが増加すると増加する。したがって、対角ブロック幅Ｒと測定数Ｍｂｌｋｄｉａｇを調整することにより、識別時間、ＡＤＣ２１０とＤＳＰユニット２２０との間のデータレート、計算の複雑さ、および精度（例えば、ＤＰＤ  ＮＭＳＥおよびＤＰＤ  ＡＣＰＲにより測定）のバランスをとることによって、サンプリング行列Ｄｂｌｋｄｉａｇを使用するＤＰＤシステムで所望の性能を実現することができる。
【０１０９】
図１６Ａ、図１６Ｂ、図１６Ｃ、および図１６Ｄを参照すると、様々な対角ブロック幅Ｒを有するサンプリング行列ＤｒａｄｅｂｌｋおよびＤｒａｎｄｂｌｋを使用するＤＰＤシステム８５０と、Ｄｄｉａｇを使用するＤＰＤシステム６００と、の性能比較が示されている。これらのＤＰＤシステムは、同じ未知のシステムおよび式（３）の同じメモリ多項式モデルを使用する。具体的には、９に等しい多項式次数Ｐと３に等しいメモリ深度Ｑを有するメモリ多項式モデルを使用して、その未知のシステムをモデル化する。図１６Ａから図１６Ｄに示すように、ＤＰＤシステムの性能は、対角ブロック幅Ｒが増加すると改善される。図１６Ａを参照すると、曲線１６０２Ａ、１６０４Ａ、１６０６Ａ、１６０８Ａ、１６１０Ａ、および１６１２Ａは、測定数Ｍに関する様々なＤＰＤシステムの条件数κを示している。図１６Ｂを参照すると、曲線１６０２Ｂ、１６０４Ｂ、Ｂ１６０６Ｂ、１６０８Ｂ、１６１０Ｂ、および１６１２Ｂは、測定数Ｍに関する様々なＤＰＤシステムのモデル誤差のＮＭＳＥを示している。図１６Ｃを参照すると、曲線１６０２Ｃ、１６０４Ｃ、１６０６Ｃ、１６０８Ｃ、１６１０Ｃ、および１６１２Ｃは、測定数Ｍに関するＤＰＤシステムのＮＭＳＥを示している。図１６Ｄを参照すると、曲線１６０２Ｄ、１６０４Ｄ、１６０６Ｄ、１６０８Ｄ、１６１０Ｄ、および１６１２Ｄは、ＤＰＤシステムのＡＣＰＲを示している。
【０１１０】
具体的には、曲線１６０２Ａ、１６０２Ｂ、１６０２Ｃ、および１６０２Ｄは、Ｄｄｉａｇを使用するＤＰＤシステム６００の性能に対応する。曲線１６０４Ａ、１６０４Ｂ、１６０４Ｃ、および１６０４Ｄは、４の値を有する対角ブロック幅ＲのＤｒａｄｅｂｌｋを使用するＤＰＤシステム８５０の性能に対応する。曲線１６０６Ａ、１６０６Ｂ、１６０６Ｃ、および１６０６Ｄは、３２の値を有する対角ブロック幅ＲのＤｒａｄｅｂｌｋを使用するＤＰＤシステム８５０の性能に対応する。曲線１６０８Ａ、１６０８Ｂ、１６０８Ｃ、および１６０８Ｄは、６４の値を有する対角ブロック幅ＲのＤｒａｄｅｂｌｋを使用するＤＰＤシステム８５０の性能に対応する。曲線１６１０Ａ、１６１０Ｂ、１６１０Ｃ、および１６１０Ｄは、１２８の値を有する対角ブロック幅ＲのＤｒａｄｅｂｌｋを使用するＤＰＤシステム８５０の性能に対応する。曲線１６１２Ａ、１６１２Ｂ、１６１２Ｃ、および１６１２Ｄは、１２８の値を有する対角ブロック幅ＲのＤｒａｎｄｂｌｋを使用するＤＰＤシステム８５０の性能に対応する。
【０１１１】
図１６Ａから図１６Ｄの図示した例に示すように、対角ブロックサンプリング行列ＤｒａｄｅｂｌｋまたはＤｒａｎｄｂｌｋを使用することにより、ＤＰＤシステムの性能が改善される。さらに、対角ブロックサンプリング行列Ｄｒａｄｅｂｌｋの対角ブロック幅Ｒを大きくすることにより、ＤＰＤシステムの性能が向上する。加えて、曲線１６１０Ａから１６１０Ｃおよび曲線１６１２Ａから１６１２Ｃで示すように、同じ対角ブロック幅Ｒを有するサンプリング行列ＤｒａｄｅｂｌｋおよびＤｒａｎｄｂｌｋを使用するＤＰＤシステム８５０の性能の間に有意差はない。したがって、サンプリング行列Ｄｒａｄｅｂｌｋを使用すると実装が大幅に簡素化されるので、ＤＰＤシステムのサンプリング行列Ｄｒａｄｅｂｌｋにわたってサンプリング行列Ｄｒａｄｅｂｌｋを選択することができる。
【０１１２】
図２〜図１６Ｄに示す様々な構成（例えば、Ｒ、Ｍ、Ｌ、Ｐ、Ｑ、ＡＤＣサンプリングレートｆｓ、サンプリング行列Ｄ、未知のシステム、未知のシステムのモデル）は例示にすぎず、添付の特許請求の範囲に具体的に列挙されているものを超えて限定することを意図していないことに留意されたい。当業者であれば、他の構成を使用できることを理解するであろう。様々な例では、ＤＰＤシステムの構成（例えば、ＲおよびＭ）を使用して、ＤＰＤシステムの所望の性能を達成することができる。
【０１１３】
本開示の様々な用途には様々な利点が存在し得る。すべての実施形態に特定の利点は必要なく、異なる実施形態は異なる利点を提供してもよい。いくつかの実施形態の利点の１つは、ＡＤＣのサンプリングレートでサンプルを得た後にデータを事前圧縮することにより、ＡＤＣの出力データレートが低減することである。例えば、ＡＤＣはＲサンプルを累積して累積サンプルを生成し、ＡＤＣのサンプリングレートよりＲ倍低いレートで累積サンプルを出力する。いくつかの実施形態の別の利点は、未知のシステムのモデルに基づいて選択されたサンプリング行列を使用することにより、ＤＰＤシステムが性能（例えば、ＮＭＳＥ、ＡＣＰＲ）の劣化なしにモデル識別のためにより少数の測定を使用できることである。そのため、適切なサンプリング行列を使用することにより、モデルの識別とプリディストーションプロセスの計算効率が向上する。いくつかの実施形態のさらに別の利点は、サンプリング行列を使用することにより、（例えば、Ｒと測定数Ｍで対角ブロックを調整することにより）ＤＰＤシステムが識別時間とより良いデータレート、精度、および計算性能と、ならびにそれらの逆をトレードオフする柔軟性を提供することである。
【０１１４】
特定の実施形態が示され、説明されたが、請求された発明を好ましい実施形態に限定することを意図するものではないことが理解されよう。また、特許請求の範囲に記載された発明の趣旨および範囲から逸脱することなく、様々な変更および修正を行うことができることが当業者には明らかであろう。したがって、明細書と図面は、限定的な意味ではなく、例示的な意味で考慮されるべきである。特許請求された発明は、代替例、修正例、および均等例を網羅することを意図している。
【図１】
2020512733.tif 000048
【図２】
2020512733.tif 000049
【図３】
2020512733.tif 000050
【図４】
2020512733.tif 000051
【図５】
2020512733.tif 000052
【図６】
2020512733.tif 000053
【図７】
2020512733.tif 000054
【図８Ａ】
2020512733.tif 000055
【図８Ｂ】
2020512733.tif 000056
【図９】
2020512733.tif 000057
【図１０】
2020512733.tif 000058
【図１１Ａ】
2020512733.tif 000059
【図１１Ｂ】
2020512733.tif 000060
【図１１Ｃ】
2020512733.tif 000061
【図１１Ｄ】
2020512733.tif 000062
【図１１Ｅ】
2020512733.tif 000063
【図１１Ｆ】
2020512733.tif 000064
【図１２Ａ】
2020512733.tif 000065
【図１２Ｂ】
2020512733.tif 000066
【図１３】
2020512733.tif 000067
【図１４Ａ】
2020512733.tif 000068
【図１４Ｂ】
2020512733.tif 000069
【図１４Ｃ】
2020512733.tif 000070
【図１４Ｄ】
2020512733.tif 000071
【図１５Ａ】
2020512733.tif 000072
【図１５Ｂ】
2020512733.tif 000073
【図１６Ａ】
2020512733.tif 000074
【図１６Ｂ】
2020512733.tif 000075
【図１６Ｃ】
2020512733.tif 000076
【図１６Ｄ】
2020512733.tif 000077
【手続補正書】
【提出日】平成31年4月9日(2019.4.9)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
アナログデジタルコンバータ（ＡＤＣ）を含み、前記アナログデジタルコンバータ（ＡＤＣ）は、
第１のアナログ信号を受信し、第１のレートで前記第１のアナログ信号をサンプリングすることにより、前記第１のレートを有するサンプルを含む第１のデジタル信号を生成するように構成された変換回路と、
複数の対角ブロックを含むブロック対角行列であり、各対角ブロックが複数の要素を含む行ベクトルである第１のサンプリング行列を受信し、
前記第１のデジタル信号のいくつかのサンプルを組み合わせることにより、前記第１のレートよりも低い第２のレートを有するサンプルを含む第２のデジタル信号を生成する
ように構成された第１のデジタル信号処理（ＤＳＰ）回路と、
を含み、
前記いくつかのサンプルは、前記ブロック対角行列の前記対応するベクトル行に基づいて決定される、モデル識別システム。
【請求項２】
第２のアナログ信号を受信し、前記ＡＤＣに前記第１のアナログ信号を供給するように構成された第１のシステムであって、前記第２のアナログ信号は、デジタルアナログコンバータ（ＤＡＣ）により第３のデジタル信号に基づいて生成される、第１のシステムと、
前記ＡＤＣに結合された第２のＤＳＰ回路と、をさらに含み、前記第２のＤＳＰ回路は、
前記第２のデジタル信号および前記第３のデジタル信号を受信し、前記第２のデジタル信号、前記第３のデジタル信号、および第２のサンプリング行列に基づいて、前記第１のシステムのモデルの係数を決定するように構成されたモデル識別ユニットを含む、請求項１に記載のモデル識別システム。
【請求項３】
前記第１のＤＳＰ回路および前記第２のＤＳＰ回路は同期している、請求項２に記載のモデル識別システム。
【請求項４】
前記モデル識別ユニットは、最小二乗法（ＬＳ）を使用して前記第１のシステムの前記モデルの前記係数を決定するように構成される、請求項２に記載のモデル識別システム。
【請求項５】
前記第２のＤＳＰ回路は、
第４のデジタル信号を受信し、前記第１のシステムの前記モデルの前記係数に基づいて前記第４のデジタル信号をプリディストーションすることにより、前記第３のデジタル信号を生成するように構成されたプリディストーションユニット
を含む、請求項２に記載のモデル識別システム。
【請求項６】
前記第１のサンプリング行列は、対角ブロックランダム符号行列であり、
前記第１のＤＳＰ回路は、
前記第１のサンプリング行列にランダムな符号の第１のシーケンスを提供するように構成された第１の乱数発生器
を含む、請求項２に記載のモデル識別システム。
【請求項７】
前記モデル識別ユニットは、
前記第２のサンプリング行列にランダム符号の第２のシーケンスを提供するように構成された第２の乱数発生器を含み、前記ランダム符号の第２のシーケンスは、前記ランダム符号の第１のシーケンスと一致する、請求項６に記載のモデル識別システム。
【請求項８】
前記第１のＤＳＰ回路は、前記第１のデジタル信号の複数の連続サンプルを組み合わせることにより前記第２のデジタル信号の第１のサンプルを生成するように構成され、
前記複数の連続サンプルの第１のサイズは、前記行ベクトルの前記要素の第２のサイズに等しい、請求項１に記載のモデル識別システム。
【請求項９】
複数の対角ブロックを含むブロック対角行列であり、各対角ブロックが複数の要素を含む行ベクトルである第１のサンプリング行列を受信することと、
アナログデジタルコンバータ（ＡＤＣ）により、第１のアナログ信号を受信することと、
前記ＡＤＣの変換回路により、第１のレートで前記第１のアナログ信号をサンプリングすることにより、前記第１のレートを有するサンプルを含む第１のデジタル信号を生成することと、
前記ＡＤＣの第１のデジタル信号処理（ＤＳＰ）回路により、前記第１のデジタル信号のいくつかのサンプルを組み合わせることにより、前記第１のレートよりも低い第２のレートを有するサンプルを含む第２のデジタル信号を生成することと、
を含み、
いくつかのサンプルは、前記ブロック対角行列の前記対応するベクトル行に基づいて決定される、方法。
【請求項１０】
第１のシステムにより、第２のアナログ信号を受信することと、
前記第１のシステムにより、前記第１のアナログ信号を前記ＡＤＣに供給することであって、前記第２のアナログ信号は、デジタルアナログコンバータ（ＤＡＣ）により第３のデジタル信号に基づいて生成される、供給することと、
第２のＤＳＰ回路のモデル識別ユニットにより、前記ＡＤＣからの前記第２のデジタル信号および前記第３のデジタル信号を受信することと、
モデル識別ユニットにより、前記第２のデジタル信号、前記第３のデジタル信号、および第２のサンプリング行列に基づいて、前記第１のシステムのモデルの係数を決定することと、
をさらに含む、請求項９に記載の方法。
【請求項１１】
前記第１のＤＳＰ回路と前記第２のＤＳＰ回路とを同期させることと、
最小二乗法（ＬＳ）を使用して、前記第１のシステムの前記モデルの前記係数を決定することと、
をさらに含む、請求項１０に記載の方法。
【請求項１２】
第４のデジタル信号を受信することと、
前記第１のシステムの前記モデルの前記係数に基づいて前記第４のデジタル信号をプリディストーションすることにより、前記第３のデジタル信号を生成することと、
をさらに含む、請求項１０に記載の方法。
【請求項１３】
前記第１のサンプリング行列は、対角ブロックランダム符号行列であり、
第１の乱数発生器により、前記第１のサンプリング行列にランダム符号の第１のシーケンスを提供すること
をさらに含む、請求項１０に記載の方法。
【請求項１４】
第２の乱数発生器により、前記ランダム符号の第１のシーケンスに一致するランダム符号の第２のシーケンスを生成することと、
前記ランダム符号の第１のシーケンスを使用して前記第２のサンプリング行列を生成することと、
をさらに含む、請求項１３に記載の方法。
【請求項１５】
前記第１のデジタル信号の複数の連続サンプルを組み合わせることにより前記第２のデジタル信号の第１のサンプルを生成することをさらに含み、前記複数の連続サンプルの第１のサイズは、前記第１のサンプリング行列の前記行ベクトルの前記要素の第２のサイズに等しい、請求項９に記載の方法。
【国際調査報告】
2020512733.tif 000078
2020512733.tif 000079