banner
Moerjie

Moerjie

hello world

符号同期

符号同期#

通信プロセスでは、受信機内で信号は AD 変換され、処理された後、最終的にサンプラーによってサンプリングされ、元の信号が復元されます。サンプラーの動作クロックはシンボルクロックと呼ばれ、受信機がシンボルクロックを抽出する方法はシンボル同期またはタイミング回復と呼ばれます。
一般的なシンボル同期方法には、3 つの方法があります:伝統的なアナログ方法、モデュロアン混合方法、および完全デジタル方法。
アナログ方法とモデュロアン混合方法にはいくつかの欠点があります:

  1. 同期の性能はループフィルタの影響を非常に受けますが、理論的な分析は非常に困難です。
  2. 高次変調を使用する場合、フェーズロックループの設計は非常に困難です。
  3. フェーズロックループにはロックアウト領域が存在します。
    しかし、完全デジタル方法ではこれらの問題は発生しません。オープンループ方式を採用し、高速なトラッキングと収束の利点があります。

シンボル同期の実装フローチャート#

Untitled.png
デモジュレーションプロセス全体では、チャネルは衛星通信チャネルであり、信号の伝送距離が長く、キャリア周波数オフセットが大きいため、まずキャリア同期を行いデジタルデモジュレーションを行い、その後シンボル同期を行い、マッチドフィルタはシンボル同期の後に配置されます。

インターポレーションフィルタ#

インターポレーションフィルタはシンボル同期の中心部分であり、シンボル同期はすべてインターポレーションフィルタの原理に基づいて設計されています。

インターポレーションフィルタの原理#

image.png
入力信号は D/A 変換とアナログフィルタを経て、出力信号は次のようになります:

y(t)=mx(mTs)h(tmTs)\begin{aligned}y(t)=\sum_{m}x(mT_{s})h(t-mT_{s})\end{aligned}

$t=kT_i$ でリサンプリングされた後の内挿出力信号は次のようになります:

y(kTi)=mx(mTs)h(tmTs)\begin{aligned}y(kT_i)=\sum_{m}x(mT_{s})h(t-mT_{s})\end{aligned}

さらに一連の計算を行うと次のようになります:

Y(kTi)=y[(mk+μk)Ts]=i=N1N2x[(mki)Ts]h[(i+μk)Ts]Y (kT_i)=y[(m_k+\mu_k) T_s]=\sum_{i=N_1}^{N_2}x[(m_k-i) T_s]h[(i+\mu_k) T_s]

上記の式はデジタルインターポレータの基本方程式です。

エンジニアリングアプリケーション#

一般的なインターポレーションフィルタには、単純な線形インターポレータ、分割パラボラインターポレータ、およびラグランジュインターポレータがあります。線形インターポレータは 2 つのサンプル値が参加し、分割およびラグランジュは複数のサンプル値が参加します。インパルス応答関数は次のようになります:
線形インターポレータ:

h(t)={1+t/Ts,Tst01t/Ts,0stTs0,othersh\:(t)=\begin{cases}1+t\:/\:T_s\:,&\quad-T_s\leq t\leq0\\1-t\:/\:T_s\:,&\quad0_s\leq t\leq T_s\\0,&\quad others\end{cases}

分割パラボラインターポレータ:

h(t)={ρ(t/Ts)2+3β(t/Ts)+2β,2TstTsβ(t/Ts)2(β1)(t/Ts)+1,Tst0β(t/Ts)2+(β1)(t/Ts)+1,0tTsβ(t/Ts)23β(t/Ts)+2β,Tst2Ts0,othersh(t)=\begin{cases}\rho(t/T_s)^2+3\beta(t/T_s)+2\beta\:,&\quad-2T_s\leq t\leq-T_s\\-\beta(t/T_s)^2-(\beta-1)(t/T_s)+1,&\quad-T_s\leq t\leq0\\-\beta(t/T_s)^2+(\beta-1)(t/T_s)+1,&\quad0\leq t\leq T_s\\\beta(t/T_s)^2-3\beta(t/T_s)+2\beta,&\quad T_s\leq t\leq2T_s\\0,&\quad others\\\end{cases}

ラグランジュインターポレータ:

h(t)={16(t/Tz)2+(t/Tz)2+116(t/Tz)+1,2TztTz12(t/Tz)3(t/Tz)2+12(t/Ts)+1,Tzt012(t/Tz)3(t/Tz)212(t/Ts)+1,0tTz16(t/Tz)3+(t/Tz)2116(t/Ts)+1,Tzt2Ts0,othersh(t)=\begin{cases}\frac16(t/T_z)^2+(t/T_z)^2+\frac{11}{6}(t/T_z)+1,&\quad-2T_z\leq t\leq-T_z\\-\frac12(t/T_z)^3-(t/T_z)^2+\frac12(t/T_s)+1,&\quad-T_z\leq t\leq0\\\frac12(t/T_z)^3-(t/T_z)^2-\frac12(t/T_s)+1,&\quad0\leq t\leq T_z\\-\frac16(t/T_z)^3+(t/T_z)^2-\frac{11}6(t/T_s)+1,&\quad T_z\leq t\leq2T_s\\0,&\quad others\\\end{cases}

これらの 3 つのフィルタのインパルス応答はすべてゼロ点対称であり、インターポレーションフィルタの要件を満たします。また、サンプル時刻では 0 以外の値を持ち、他の整数時刻では 0 であるため、ナイキストの無失真サンプリング定理を満たします。

多項式ベースのインターポレーションフィルタ#

上記の 3 つのフィルタの欠点は、パラメータが一定であり、異なるシステム要件に応じて変更することができないことです。このフィルタは Farrow 構造を使用して実装されます。
多項式ベース関数は次のようになります:

fn(t)={(2t/Ts1)n,0tTs0,others f_n (t)=\begin{cases}(2 t/T_s-1)^n,&\quad 0\leq t\leq T_s\\0,&\quad others\end{cases}

n は多項式の次数であり、t は内挿点の整数間隔です。
インパルス応答は次のようになります:

h(t)& =\sum_{i=0}^{\frac N2-1}\sum_{n=0}^{L}c_n(i)f_n(t-iT_s) \\ &=\sum_{i=0}^{\frac N2-1}\sum_{n=0}^{L}c_n(i)g_n(t-iT_s) \end{aligned}$$ ここで $$\begin{aligned}g_n(t-iT_s)&=\int_n(t-iT_s)+(-1)^nf_n(t+(i+1)T_s)\\&=\begin{cases}(\frac{2(t-iT_s)}{T_s}-1)^n&iT_s\leq t\leq(i+1)T_s\\\\(-1)n(\frac{2(t+(i+1)T_s)}{T_s}-1)^n&-(i+1)T_s\leq t\leq-iT_s\\\\0&\text{others}&\end{cases}\\\end{aligned}$$ ### タイミングエラーの推定 Gardnerアルゴリズムは、BPSK/QPSKに適用されるシンボルごとの2点サンプリングのアルゴリズムであり、必要なサンプルポイントが少なく、高速に実装でき、キャリア位相回復の影響を受けない検出性能などの利点があります。 BPSK信号の場合、Gardnerアルゴリズムは次のように表されます: $$ \begin{aligned} U (n)& =x (\tau+(n-1/2) T)[x (\tau+nT)-x (\tau+(n-1) T)] \\ &=x (n-1/2)[x (n)-x (n-1)] \end{aligned}

QPSK 信号の場合、Gardner アルゴリズムは次のように表されます:
u(n)=xI(n1/2)[xI(n)xI(n1)]+xQ(n1/2)[xQ(n)xQ(n1)]u(n)=x_I(n-1/2)[x_I(n)-x_I(n-1)]+x_Q(n-1/2)[x_Q(n)-x_Q(n-1)]

ループフィルタ#

エンジニアリングでは、ループフィルタは一次積分フィルタまたはカルマンフィルタが一般的に使用されます。
一次積分フィルタのインパルス応答は次のようになります:
y(n)=y(n1)+c1[x(n)x(n1)]+c2x(n)y(n)=y(n-1)+c_1[x(n)-x(n-1)]+c_2x(n)
ここで、$c_1=\frac {2\omega_n}{K}$、$c_2=\frac {\omega_n^2}{Kf}$

インターポレーションコントローラ#

インターポレーションコントローラの役割は、インターポレーション演算を制御し、タイミングエラーシグナルを受け取り、演算後に内挿フィルタに内挿演算に必要な制御量パラメータ $m_k$ と $\mu_k$ を提供することです。
コントローラは NCO と分数間隔計算器で構成されており、NCO の役割はオーバーフロークロックを生成し、つまり内挿の基準点 $m_k$ を決定します。分数間隔計算器は主に $\mu_k$ を計算し、内挿器に内挿を行うための制御量を提供します。
モジュロ 1 の位相デクリメントは次の差分方程式で表されます:

η(m+1)=[η(m)W(m)]mod1\eta(m+1)=[\eta(m)-W(m)]\mathrm{mod}1

ここで、$\eta (m)$ は第 m 個のワーキングクロックの NCO レジスタの内容であり、$W (m)$ は NCO 制御ワードであり、つまり減衰位相のステップであり、ループフィルタによって調整され、内挿器が最適なサンプリングポイントを出力するようにします。近似的には、$W (m)=\frac {T_s}{T_i}$ です。
分数間隔は次のようになります:

μk=ξ0η(mk),ここでξ0=1W(m)\mu_k=\xi_0\eta(m_k),ここで\xi_0=\frac{1}{W(m)}
読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。