帯域制限された非線形歪みなどはありますか?


12

したがって、サンプルの境界で信号を2つの値間で切り替えるだけで方形波を生成すると、無限の一連の高調波が生成されます。解決策は、帯域制限合成、どちらかあなたがそれをサンプリングする前に理想的な数学的な方形波をバンドは、制限されたかのように同じ波形を生成するために加算合成や帯域制限された手順を使用しました:

http://flic.kr/p/83JMjT

ここに画像の説明を入力してください

しかし、デジタル正弦波に大きな増幅を適用し、それをデジタルでクリップすると、ギブス現象の波紋がなく、同じ方形波の形状を生成することに気付きました。だから、それはまた、エイリアス歪み製品を生成していますよね?だから、任意の外部のナイキスト限界の高調波を生成し、デジタル領域での非線形歪みはエイリアス歪み製品を生産するのだろうか?(編集:いくつかのテストを行って、この部分が正しいことを確認しました。)

帯域制限およびサンプリングの前に(アナログ領域で)歪みの影響をシミュレートするために、帯域制限された歪みなどがありますか?もしそうなら、どのようにそれをしますか?「帯域制限された歪み」を検索すると、チェビシェフ多項式への参照がいくつか見つかりますが、それらの使用方法や、正弦波のみで機能するかどうかはわかりません。

この機器は、帯域制限された歪みを生成しようとしません。帯域制限された歪みに興味がある人は、チェビシェフ多項式を使用して効果を生成することを検討する必要があります。双曲線正接歪み

 

「チェビシェフ多項式」-本質的に帯域制限されているという重要な特性を持つシェーピング関数。つまり、オーバーラップなどによるスプリアススペクトルハーモニクスを導入しません。Wave Shaper


あなたが何を求めているのか分かりません。操作しているナイキスト領域外で周波数コンテンツを生成する操作を実行すると、コンテンツの生成方法に関係なく、エイリアスが表示されます。どのようなアナログの歪みをシミュレートしようとしていますか?1つの方法は、まず信号を十分に高いサンプルレートにアップサンプリングし、次により広いナイキスト領域を使用して信号処理を実行することです。完了したら、ダウンサンプリングして元のレートに戻すことができます。
ジェイソンR

@JasonR:はい、方形波を生成するには、加算合成のような本当に帯域制限された方法を行うか、最初にアップサンプリングで近似し、単純な方法で方形波を生成してからダウンサンプリングすることができます(しかし、まだあります)いくつかのエイリアシング、ちょうど低いレベルで)。同様に、最初にアップサンプリングすることで言ったように歪みを近似できますが、方形波生成の加算合成法に類似した、エイリアシングゼロで直接歪みを生成する方法はありますか?
エンドリス

@JasonR:非線形歪みについては一般的に尋ねていますが、アナログギターアンプの歪み回路をエミュレートするようなものが良い例でしょう。私が正しく理解していれば、デジタル領域で単純にそれを行うと、周波数で明確に聞こえるが、基本的な、などよりも低くなる可能性があるそのうちのいくつかは、アナログ領域で歪んだ時には存在しない歪み積を生成する
endolith

2
@endolith チェビシェフ多項式は、あなたが望むものかもしれません。
データガイスト

@datageist:チェビシェフ多項式の使用方法に関する答えを書くことができますか?短いものでも。
エンドリス

回答:


5

非線形関数を適用すると常に高調波が発生し、非線形関数と連続信号のサンプルバージョンを混合すると、上記のしわが追加されます(高周波高調波は低周波にエイリアスされます)。

いくつかの方法を考えることができます。

  1. 余分な高調波(ノイズフロアなどの任意の精度まで)をキャプチャするのに十分高いオーバーサンプリング係数を使用できます。
  2. ハードクリッパーよりも早く消滅する高調波を持つ「ソフトな」クリッピング関数(たとえば、こちらを参照)を使用できます。これはモデル化が簡単ですが、低周波数で独自の歪みが生じます。
  3. 上記で提案したアプローチに基づいて、サンプリングされた信号を補間し(ラグランジュまたはチェビシェフ補間を使用するなど)、連続時間モデルを構築します。次に、シミュレートされた連続時間領域でハードクリッパーとローパスを適用します。結果をサンプリングします。

(1)と(2)を組み合わせることができます。3番目のアプローチは複雑ですが、どの程度の歪みを許容するかを最適に制御でき、おそらく非常に高い忠実度の要件に合わせて拡張できます。

級数展開を許容する非線形関数(例:テイラー/マクローリン)の場合、高調波の減衰の速さについて適切な直感を得ることができます。関数のマクラウリン展開は次のとおりです。f(x)

f(x)=n=0[f(n)(0)n!xn]

あなたの場合、はクリッピング関数です。(少なくとも単純ではありませんが、これをハードクリッパーで行うことはできません!)置換 x = g t を考慮する場合、 g t は入力信号であり、 x n g t nになります。入力信号と n回の畳み込みであると考えることができます。したがって、ローパス信号の場合、無限加算の n番目の項の帯域幅は nf(x)x=g(t)g(t)xng(t)nnnnあなたの信号の倍。図を完成させるには、各項に関連する振幅を把握し、合計に含まれる項の数を決定する必要があります。

(少し考えれば、このフォームを直接使用して、フィルター処理された非線形性を近似することもできます。これには、クリッパーの適切な系列表現が必要になります。)


明確にするために、#3は補間によるオーバーサンプリングだけでなく、サンプリングされたポイントに適合する連続チェビシェフ多項式のパラメーターを見つけて、それらのパラメーターと多項式のモデルを操作しているのですか?
エンドリス

1
短いサンプル範囲でそれぞれアクティブな多項式補間器のシーケンスを想像しています。したがって、新しいサンプルのバッチが入ってくると、定義された間隔でのみアクティブになる補間器を作成します。サンプリングされた信号の連続時間近似は、これらの多項式で構成されます。(私はラグランジュを考えていますが、チェビシェフ、おそらく同じことであるチェビシェフ補間が正確にサンプル点が一致した場合、私は覚えていません。そうでない場合は、補間を切り替えるときに不連続を取得したい。。。)
グレーム・

4

エイリアスフリーの非線形歪みへのいくつかのアプローチ(難易度の高い順):

  1. サブバンド歪み:ローパスフィルターを使用して、信号の下端を抽出します。f sのカットオフ周波数を選択した場合エイリアシングを回避するために、fN+1で始まる微分を持つ任意の非線形伝達関数fを消失させることができます。低帯域の歪み出力のみを元の信号に追加します。このために、非線形伝達関数を変更して、着信信号ではなく歪みのみを生成します。多くの場合、高周波数の歪みの影響は聞き取れないため、このアプローチは多くの場合、オーディオには完全に十分です。fs2NffN+1

  2. オーバーサンプリング:これはアプローチ1に似ていますが、これが必要だと思われる場合、元の信号帯域内のすべての情報が歪んだ信号に寄与することを確認するために、アップサンプリングとダウンサンプリングの追加手順が必要です。また、バックサンプリングされたスペクトルの一部がダウンサンプリングフィルターによって削除されるため、高次に歪めることもできます。つまり、係数でオーバーサンプリングした場合、次数 2 Nで始まる非線形伝達関数の導関数は消滅する必要があります。手順は、アップサンプリング、非線形伝達関数、ダウンサンプリングを適用するのと同じくらい簡単です。N2N

  3. ローカル解析ソリューションの使用滑らかな非線形伝達関数は、べき級数で記述された信号に適用できます。伝達関数をべき級数に作用させると、べき級数が元に戻ります。特定の次数の切り捨てられたべき級数と伝達関数を一定の平滑度に制限する場合、伝達関数を切り捨てられた級数の係数のマップとして記述できます。代わりに、あなたが考える fはR NR Mは、長さの入力級数展開取っ Nの長さの出力級数展開に Mf:RRf:RNRMN。この理解により、べき級数に関して入力信号の局所的な有限近似を使用し、それを出力のべき級数近似にマッピングできます。次に、出力シリーズを分析的に統合して、ボックスカーアンチエイリアスフィルターを作成し、出力サンプル値を取得できます。これらの計算はすべてシンボリックに実行できます。入力信号のローカルフィーチャを含める必要があるため、入力信号の過去の値を使用して現在の出力を生成する非線形フィルターが最終的に得られます。M>N

  4. 制約ベースの代数設計:前の項目で、アンチエイリアスの非線形歪みが非線形フィルターにつながることを確認しました。もちろん、すべての非線形フィルターにエイリアスがないわけではありませんが、一部はそうでない場合があります。したがって、明らかな問題は、そのようなフィルタを厳密にエイリアスフリーにするための基準と、その設計方法です。判明したように、エイリアシングがないことに相当するステートメントは、非線形フィルターがサブサンプルの変換と交換するということです。したがって、最初に翻訳してからフィルタリングする場合、または最初にフィルタリングしてから翻訳する場合、違いが生じないようにする必要があります。この条件は、非常に厳しい設計制約につながります非線形フィルター用ですが、信号変換の実現方法によって異なります。たとえば、理想的な変換では、非線形フィルターに無限に多くの係数が必要になります。そのため、有限非線形フィルターを得るには、信号の変換を有限次数に近似する必要があります。エイリアスフリーネスは、使用する近似値でスケーリングされますが、非常に適切に制御できます。このアプローチの数学を学んだ後、非線形フィルターの形でほぼ理想的なデジタルモデルとして(滑らかなだけでなく)任意の非線形伝達関数を設計できます。ここでは詳細をスケッチすることはできませんが、この説明からインスピレーションを得ることができます。


非ヒステリシスな単項伝達関数のエイリアスのないバージョンがどうなるか知っていますか?言い換えると、y [ t ] = x [ t ] kのエイリアスのないバージョンy[t]=x[t]kある正の整数kに対する。または、このトピックに関する出版物を知っていますか?
マイクバッタリア

または、別の(おそらく関連する)質問-先ほど述べた局所的な有限アプローチを使用すると、切り捨てられたべき級数から切り捨てられたべき級数へのマップが得られます。次に、通常はsinc関数で畳み込まれる切り捨てられたべき級数をローパスしようとすると、結果の簡単な式が得られますか?結果は切り捨てられたべき級数として再び表現できますか?その場合、どのように見えますか?
マイクバッタリア

1
@MikeBattaglia、多分あなたは新しい質問を作成して、そこで完全な答えを出すことができます。2番目の質問に答えるには、SINCカーネルを使用せず、最も単純な場合はボックスカーカーネルを使用します。高次のカーネルは機能しますが、分析結果を得るには、特定のカーネルに制限する必要があります。
ジャズ

ありがとう-フィルター設計の質問のための新しい質問をここに作成しました:dsp.stackexchange.com/q/51533/18276
Mike Battaglia

2

帯域制限された歪みとみなされるアルゴリズムの1つは、波形整形合成に正弦波入力を使用したチェビシェフ多項式を使用することです。[第1種]チェビシェフ多項式はとして定義できます。

Tn(x)=cos(narccos(x)).

ここでは詳しく説明しませんが、De Moivreの定理を使用して、上記の式が多項式のセットを定義する方法を示す比較的単純な導出があります(ハミングによるデジタルフィルターのセクション 7.2を参照)。三角法の定義は、それぞれがどのように見えるのかを簡単にするので便利です。Tn(x)

(1)Tn(cos(kx))=cos(narccos(cos(kx)))=cos(nkx).

多項式自体は、次の再帰関係を使用して簡単に生成できます。

T0(x)=1T1(x)=xTn(x)=2xTn1(x)Tn2(x).

ここに最初のいくつかがあります:

T0バツ=1T1(x)=xT2(x)=2x(x1)=2x21T3(x)=2x(2x21)x=4x33xT4(x)=2x(4x33x)(2x21)=8x48x2+1

(1)T2cos(x)

2cos2(x)1=2(eix+eix2)21=24(ei2x+2eixeix+ei2x)1=(ei2x+ei2x2)+221=cos(2x).

チェビシェフシリーズを計算することにより

f(x)=n=0anTn(x)

nf(x)、単位振幅コサインに適用されると、帯域制限高調波の任意の[整数]セットを生成する)。


ありがとう!単一の正弦波以外の波形の場合、どうなりますか?帯域制限された相互変調かどうか?
エンドリス

1
xn

1

@ robert-bristow-johnson はこれをcomp.dspで非常に明確に説明しています

有限の範囲でオーバーサンプリングする必要があります。(メモリレス、私は仮定します)非線形性を(実装しようとしている曲線に近似する)有限次数多項式として表す場合、多項式の次数はオーバーサンプリングの同じファクターであり、エイリアスは発生しません。次に、元のナイキストよりも高いすべての周波数成分を除去するローパスフィルター(そのオーバーサンプリングレート)、ダウンサンプリングを行うと、エイリアシングが発生しなくなります。

つまり、非線形性が多項式である場合、歪みによって生成される可能性のある最高周波数は、信号の最高周波数に多項式の次数Nを掛けたものになります。(多項式の非線形性は、信号自体にN倍するため、そのスペクトルはそれ自体と畳み込まれ、同じ比率で広がります。)

したがって、最大周波数(ナイキストまたはアプリケーションの下限)と多項式の次数を知っているので、エイリアシングを防ぐのに十分なオーバーサンプリングを行い、歪みを加えてから、ローパスフィルターとダウンサンプリングを行うことができます。

実際、ダウンサンプリングの前に削除されるバンドに含まれている限り、エイリアスを発生させることでオーバーサンプリングレートを減らすことができます。

もう1つの小さなコツは、LPFを実行するエリアに折りたたむエイリアスを気にする必要がないということです。そのため、5次多項式のオーバーサンプリング比は3だけで十分です。これらの上位2つの高調波はエイリアスされる可能性がありますが、ベースバンドには戻りません。ダウンサンプリングするとき、それらのエイリアスされた高調波をフィルタリングします。だから私は難しいと速いルールは

オーバーサンプリング比=(多項式次数+ 1)/ 2


2
その記事では、オーバーサンプリングの要件が少し過大になっているようです。君はできることができ、いくつかの長いエイリアス高調波は、元のベースバンドにダウンバックアップ作成しないようとして高調波の折り返しを。つまり、メモリのない非線形性を表す多項式の次数がN、オーバーサンプリングする必要があるのは、 N+12。たとえば、4倍のオーバーサンプリング(192 kHzまでのアップサンプリングなど)の場合、7次多項式を適用し、フィルターアウト(でfs= 192 kHz)すべてのがらくたは20 kHzを超えて生成され、ダウンサンプリングして48 kHzに戻ります。
ロバートブリストージョンソン

@robertあなたがコメントしているときに、その部分を見て追加しました。これをあなた自身の答えとして書き直した場合、私はそれを削除してあなたのものを受け入れます
エンドリス

1
まあ。素敵な答えをドレスアップするには作業が必要です。
ロバートブリストージョンソン

@ robertbristow-johnsonまあ、あなたがそれらを望むなら、架空のインターネットポイントはあなたのものです
エンドリス
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.