変調・符号化#12

パルス整形とナイキスト基準 — 帯域を有限に収める設計

矩形パルスのsinc²スペクトルはなぜ帯域が無限に広がってしまうのか。ナイキストの符号間干渉ゼロ基準を周波数領域で導出し、レイズドコサイン・ルートレイズドコサインフィルタが有限帯域とISI耐性を両立させる仕組みを数式で理解する。

前提知識: pcm-psk-pm

パルス整形ナイキスト基準符号間干渉レイズドコサイン帯域幅

この回で学ぶこと

第1回でPCM/PSK/PM方式を学んだとき、ビット列を電気信号に変換する最も基本的な方法として、幅 TbT_b矩形パルス p(t)p(t) を使うNRZ-L符号を扱いました。そしてそのパワースペクトル密度が

Sd(f)=Ebsinc2(fTb)S_d(f) = E_b\, \text{sinc}^2(fT_b)

という、よく知られたsinc二乗の形になることも見ました。この式を思い出しながら、少し意地悪な質問をしてみましょう。sinc2(fTb)\text{sinc}^2(fT_b)ff \to \infty でゼロに漸近はしますが、どの有限の周波数でも厳密にはゼロになりません。つまり矩形パルスを使う限り、理論上そのスペクトルは無限に広い帯域を占有し続けてしまいます。

現実のRFチャネルには当然、有限の帯域幅しか割り当てられていません。深宇宙リンクでは特に、限られた周波数帯(Xバンド、Kaバンドなど)を多数のミッションで分け合っており、CCSDSやITU-Rの周波数割り当て規則によって、1つのミッションが占有してよい帯域幅には厳格な上限があります。矩形パルスをそのまま送信すれば、帯域外に漏れ出た成分が隣接チャネルへの干渉(スプリアス放射)を引き起こし、規制に抵触してしまいます。

かといって、単純に高い周波数成分を鋭くカットするフィルタ(理想的な矩形フィルタ)を通せばよいかというと、そう単純ではありません。今度は時間領域でパルスの裾野が広がってしまい、隣接するビットのパルスが自分のビット判定時刻まで漏れ込んでくる符号間干渉 (Inter-Symbol Interference, ISI) という別の問題が生まれます。

この回では、「帯域を有限に抑えたい」という周波数領域の要求と、「隣のビットの影響を受けずに正しく判定したい」という時間領域の要求を、同時に満たす条件を数式で導出します。これがナイキストの符号間干渉ゼロ基準であり、その具体的な実装が実務で広く使われるレイズドコサインフィルタルートレイズドコサイン (RRC) フィルタです。深宇宙探査機からの信号のほぼすべてが、実際にはこのRRCフィルタで整形されたパルスとして送信されています。

直感的な導入: なぜ矩形パルスは「まずい」のか

矩形パルスの問題を直感的に捉え直してみましょう。時間領域で急峻な変化(パルスの立ち上がり・立ち下がりのエッジ)を持つ信号は、フーリエ変換すると必ず高い周波数成分を含みます。矩形関数は最も急峻な部類の波形なので、そのスペクトルであるsinc関数は 1/f1/f 程度でしか減衰せず、非常にゆっくりとしか収まりません。

逆に、周波数領域で急に信号をゼロにカットする(理想的な低域通過フィルタ)と、そのインパルス応答は時間領域でsinc関数の形になり、1/t1/t 程度でしか減衰しません。sinc関数は原点から離れても振動しながらゆっくり減衰し続けるため、あるビットのパルス応答が何十ビットも先まで裾を引きずり、後続のビットの判定タイミングに雑音のように重なってきます。これがISIです。

つまり「時間領域でコンパクト」と「周波数領域でコンパクト」は同時には成立しません(これは信号処理における不確定性原理の一種です)。パルス整形の目標は、両者を完全に両立させることではなく、**「時間領域では完全にコンパクトでなくてもよいが、少なくともビット判定のタイミングでは他のビットの影響がゼロになる」**という、ちょうどよい妥協点を見つけることです。この妥協点を数学的に定式化したのがナイキストの基準です。

ナイキストの符号間干渉ゼロ基準

問題設定

送信パルス波形を p(t)p(t) とし、ビット周期 TbT_b ごとにこれを並べて送るとします(第1回のNRZ-Lと同じ形です)。

d(t)=k=akp(tkTb),ak{1,+1}d(t) = \sum_{k=-\infty}^{\infty} a_k\, p(t - kT_b), \qquad a_k \in \{-1, +1\}

受信機は、ある基準となる整形パルスの形を知っていて、各ビット境界の時刻 t=mTbt = mT_b でこの信号をサンプリングし、ama_m を判定します(実際には送信フィルタと受信フィルタの合成波形をサンプリングしますが、ここではまず合成後の実効パルス波形を p(t)p(t) と呼ぶことにします)。

d(mTb)=k=akp((mk)Tb)=amp(0)+kmakp((mk)Tb)d(mT_b) = \sum_{k=-\infty}^{\infty} a_k\, p\big((m-k)T_b\big) = a_m\, p(0) + \sum_{k \ne m} a_k\, p\big((m-k)T_b\big)

右辺の第1項が「欲しい」信号(mm番目のビットそのもの)で、第2項がまさにISI、つまり他のビット kmk \ne m からの漏れ込みです。この漏れ込みを完全にゼロにしたければ、p(t)p(t) が満たすべき条件は明快です。

p(nTb)={1n=00n0, nZp(nT_b) = \begin{cases} 1 & n = 0 \\ 0 & n \ne 0,\ n \in \mathbb{Z} \end{cases}

(振幅を p(0)=1p(0)=1 に正規化しています。)つまり p(t)p(t) 自身のビット境界でのサンプル値は、原点でだけ1、それ以外の整数倍の TbT_b ではすべてゼロでなければならない、という条件です。この条件を満たすパルスなら、たとえパルスの裾が時間的にどれだけ長く伸びていても、ちょうどビット判定のタイミングでは他のビットの寄与がきれいに打ち消し合い、ISIフリーな伝送が可能になります。これがナイキストの符号間干渉ゼロ基準 (Nyquist ISI criterion) の時間領域での表現です。

周波数領域への変換: nP(f+n/Tb)=Tb\sum_n P(f + n/T_b) = T_b の導出

この時間領域の条件を、フィルタ設計に使いやすい周波数領域の条件に書き換えます。まず、上記のサンプリング条件を「間隔 TbT_b でサンプルした p(t)p(t) の離散時間列」として捉え、これをデルタ関数列の掛け算として表現します。

p(t)n=δ(tnTb)=δ(t)p(t) \cdot \sum_{n=-\infty}^{\infty} \delta(t - nT_b) = \delta(t)

(左辺は p(t)p(t) を時刻 nTbnT_b でサンプリングした列そのものであり、ナイキスト条件はこの列が単一のインパルス δ(t)\delta(t) に等しいと述べています。)

この両辺をフーリエ変換します。左辺は時間領域の積なので、フーリエ変換すると周波数領域の畳み込みになります。ここで、周期 TbT_b のデルタ関数列(インパルス列)のフーリエ変換が、周波数領域でも間隔 1/Tb1/T_b のデルタ関数列になるという標準的な結果を使います。

n=δ(tnTb)F1Tbn=δ ⁣(fnTb)\sum_{n=-\infty}^{\infty} \delta(t - nT_b) \quad \xrightarrow{\mathcal{F}} \quad \frac{1}{T_b}\sum_{n=-\infty}^{\infty} \delta\!\left(f - \frac{n}{T_b}\right)

したがって左辺のフーリエ変換は、P(f)P(f)(=p(t)p(t)のフーリエ変換)とこのデルタ列との畳み込みです。

P(f)[1Tbnδ ⁣(fnTb)]=1Tbn=P ⁣(fnTb)P(f) * \left[\frac{1}{T_b}\sum_{n} \delta\!\left(f - \frac{n}{T_b}\right)\right] = \frac{1}{T_b}\sum_{n=-\infty}^{\infty} P\!\left(f - \frac{n}{T_b}\right)

(デルタ関数との畳み込みは、単にその点での関数値を並べてずらす操作になることを使いました。)

一方、右辺 δ(t)\delta(t) のフーリエ変換は定数 11 です。よって両辺のフーリエ変換を等置すると、

1Tbn=P ⁣(fnTb)=1 n=P ⁣(f+nTb)=Tb \frac{1}{T_b}\sum_{n=-\infty}^{\infty} P\!\left(f - \frac{n}{T_b}\right) = 1 \quad\Longleftrightarrow\quad \boxed{\ \sum_{n=-\infty}^{\infty} P\!\left(f + \frac{n}{T_b}\right) = T_b \ }

(総和のインデックスの符号は対称なので nnn \to -n と置き換えても同じ式になります。)これがナイキストのISIゼロ基準の周波数領域表現です。言葉で言うと、P(f)P(f)1/Tb1/T_b ごとにずらしながら重ね合わせて足すと、どの周波数でも定数 TbT_b になるという条件です。この操作を「エイリアシング和」あるいは「フォールディング」と呼びます。

直感: なぜこの形になるのか

理想的な矩形(ブリックウォール)フィルタ、すなわち帯域 f1/(2Tb)|f| \le 1/(2T_b) でのみ P(f)=TbP(f) = T_b、それ以外でゼロ、という場合を考えると、隣接するコピー P(f±n/Tb)P(f \pm n/T_b) は互いに重ならず、和は自明にどの周波数でも TbT_b(帯域内)または 0+0=00+0=0(帯域外、ただし帯域外では元々全部ゼロなので条件は自動的に成立)になります。実際、この矩形フィルタの逆フーリエ変換はまさに p(t)=sinc(t/Tb)p(t) = \text{sinc}(t/T_b) であり、これは t=nTb (n0)t = nT_b\ (n\ne0) でちょうどゼロを通る関数です。つまり理想矩形フィルタはナイキスト基準を満たす最も帯域の狭い(理論的下限の)フィルタですが、前述の通り時間応答が 1/t1/t でしか減衰しないため、タイミング誤差に極めて敏感で実用上は使いにくいという欠点があります。

ここで重要な洞察が得られます。ナイキスト基準は「P(f)P(f) が矩形でなければならない」とは言っていません。帯域端付近で P(f)P(f) がなだらかに減少していく形状でも、隣接コピーとの和がちょうど TbT_b で一定になるように減少の仕方に対称性を持たせれば、条件は満たせます。この自由度を活用して、時間応答の裾の減衰を大幅に改善したのが、次に見るレイズドコサインフィルタです。

レイズドコサインフィルタ

周波数特性

レイズドコサインフィルタは、理想矩形フィルタの急峻な肩の部分を、コサイン関数でなだらかに丸めたものです。ロールオフ率(roll-off factor) α\alpha (0α10 \le \alpha \le 1)をパラメータとして、次のように定義されます。

P(f)={Tb,f1α2TbTb2[1+cos ⁣(πTbα(f1α2Tb))],1α2Tb<f1+α2Tb0,f>1+α2TbP(f) = \begin{cases} T_b, & |f| \le \dfrac{1-\alpha}{2T_b} \\[8pt] \dfrac{T_b}{2}\left[1 + \cos\!\left(\dfrac{\pi T_b}{\alpha}\left(|f| - \dfrac{1-\alpha}{2T_b}\right)\right)\right], & \dfrac{1-\alpha}{2T_b} < |f| \le \dfrac{1+\alpha}{2T_b} \\[8pt] 0, & |f| > \dfrac{1+\alpha}{2T_b} \end{cases}

この形の意味を分解すると、次のようになります。

  • f(1α)/(2Tb)|f| \le (1-\alpha)/(2T_b): 通過域。フィルタは平坦に TbT_b を通す。
  • (1α)/(2Tb)<f(1+α)/(2Tb)(1-\alpha)/(2T_b) < |f| \le (1+\alpha)/(2T_b): 遷移域(ロールオフ域)。ここでコサインの半周期を使って TbT_b から 00 になだらかに落とす。
  • f>(1+α)/(2Tb)|f| > (1+\alpha)/(2T_b): 阻止域。完全にゼロ。

このコサイン形状が満たすべき鍵となる性質は、遷移域の中心周波数 fN=1/(2Tb)f_N = 1/(2T_b)(ナイキスト周波数)を軸に奇対称であることです。すなわち

P(fNx)+P(fN+x)=Tb(0xα2Tb)P(f_N - x) + P(f_N + x) = T_b \qquad \left(0 \le x \le \frac{\alpha}{2T_b}\right)

が成り立つように設計されています。この奇対称性こそが、隣接コピー P(f)P(f)P(f1/Tb)P(f - 1/T_b) を足し合わせたときにちょうど過不足なく TbT_b になる、というナイキスト条件をそのまま実現する仕掛けです。実際に P(f)+P(f1/Tb)P(f) + P(f - 1/T_b) を遷移域で計算すると、コサインの 1+cosθ1+\cos\theta の項と、1/Tb1/T_b だけシフトした側の 1cosθ1-\cos\theta に相当する項がちょうど打ち消し合って定数 TbT_b になることが確認できます(コサインが π\pi だけ位相のずれた対称配置になっているためです)。α=0\alpha = 0 のときはこの遷移域の幅がゼロになり、レイズドコサインは理想矩形フィルタ(帯域 1/(2Tb)1/(2T_b))に一致します。

時間応答

P(f)P(f) を逆フーリエ変換すると、レイズドコサインパルスの時間波形が得られます。

p(t)=sinc ⁣(tTb)cos(παt/Tb)14α2t2/Tb2p(t) = \text{sinc}\!\left(\frac{t}{T_b}\right) \cdot \frac{\cos(\pi\alpha t/T_b)}{1 - 4\alpha^2 t^2/T_b^2}

この式の構造に注目してください。前半の sinc(t/Tb)\text{sinc}(t/T_b) は理想矩形フィルタの応答そのもので、t=nTbt = nT_b (n0n \ne 0)でゼロを通ります(ナイキスト条件そのもの)。後半の因子 cos(παt/Tb)14α2t2/Tb2\dfrac{\cos(\pi\alpha t/T_b)}{1-4\alpha^2t^2/T_b^2} は、tt \to \inftycos\cos の振動を保ちつつ分母が t2t^2 で増大するため、全体として 1/t31/t^3 のオーダーで減衰するように働きます。

これは矩形フィルタの sinc(t/Tb)\text{sinc}(t/T_b) 単体(裾が 1/t1/t)と比べて、劇的な改善です。裾が速く減衰するということは、サンプリングタイミングが多少ずれても(タイミングジッタがあっても)隣接シンボルからの漏れ込みが急速に小さくなることを意味し、実際の受信機のクロック再生誤差に対する耐性が大幅に向上します。α\alpha が大きいほど遷移域が緩やかになり、時間応答の裾もより速く減衰します。すなわち α\alpha は「帯域幅をどれだけ余分に使うか」と「タイミング誤差への耐性」を交換するダイヤルとして機能します。

ルートレイズドコサイン (RRC) フィルタ

整合フィルタとナイキスト基準の両立

ここまでの議論では、P(f)P(f) を「送信フィルタと受信フィルタを合成した後の実効パルス応答」として扱ってきました。しかし実際の受信機設計では、単に受信機が信号を受け取るだけでなく、AWGN雑音下での判定誤り率を最小化する整合フィルタ (matched filter) を受信側に置きたいという、もう一つの強い要求があります。

整合フィルタ理論によれば、送信パルス整形フィルタの周波数特性を Htx(f)H_{tx}(f) としたとき、AWGN下でSNRを最大化する受信フィルタは、その複素共役

Hrx(f)=Htx(f)H_{rx}(f) = H_{tx}^{*}(f)

でなければなりません(実数対称なパルス整形フィルタであれば Hrx(f)=Htx(f)H_{rx}(f) = H_{tx}(f))。つまり、SNR最適受信のためには送信フィルタと受信フィルタが同じ形である必要があります。

一方でナイキスト基準は、送受信を合わせた全体の周波数応答 P(f)=Htx(f)Hrx(f)P(f) = H_{tx}(f) H_{rx}(f) がレイズドコサイン形状を満たすことを要求します。この2つの要求を同時に満たす自然な解が、

Htx(f)=Hrx(f)=PRC(f)H_{tx}(f) = H_{rx}(f) = \sqrt{P_{\text{RC}}(f)}

すなわち、レイズドコサインフィルタの周波数特性の平方根を、送信側と受信側でそれぞれ半分ずつ持つという設計です。これがルートレイズドコサイン (Root Raised Cosine, RRC) フィルタです。

HRRC(f)=PRC(f),HRRC(f)HRRC(f)=PRC(f)H_{\text{RRC}}(f) = \sqrt{P_{\text{RC}}(f)}, \qquad H_{\text{RRC}}(f) \cdot H_{\text{RRC}}(f) = P_{\text{RC}}(f)

具体的には、探査機側の送信機がデータビット列にRRC整形フィルタを一度かけて送信し、地上局の受信機が受信信号にもう一度同じRRC整形フィルタ(整合フィルタとして)をかけます。この2段のRRCを縦続接続した結果、全体としてちょうどレイズドコサイン特性 PRC(f)P_{\text{RC}}(f) が得られ、ナイキストのISIゼロ基準を満たしつつ、同時に受信機は雑音下で最適なSNRを得られる、という一石二鳥の設計になっています。

なお、RRCフィルタ単体(送信側だけ、あるいは受信側だけ)の時間応答は、実はナイキスト条件を満たしません。HRRC(f)H_{\text{RRC}}(f) をそのまま逆フーリエ変換したパルスは、整数倍の TbT_b でゼロにはなりません。ISIゼロが成立するのはあくまで送信RRCと受信RRCを両方通した後の合成波形に対してであり、これが「ルート(平方根)」を送受信で分け合うという設計思想の核心です。

占有帯域幅とロールオフ率の関係

レイズドコサインフィルタの周波数特性から、シンボル(ビット)レート Rb=1/TbR_b = 1/T_b の信号が実際に占有する片側帯域幅は、阻止域の境界

fmax=1+α2Tbf_{\max} = \frac{1+\alpha}{2T_b}

で与えられます。これは片側スペクトルの最大周波数なので、両側(ゼロ周波数を中心とした)の全占有帯域幅 BB は、この2倍です。

B=2fmax=1+αTb=(1+α)RbB = 2f_{\max} = \frac{1+\alpha}{T_b} = (1+\alpha)R_b

(一般にシンボルレート RsR_s を使う場合も同じ形で B=(1+α)RsB = (1+\alpha)R_s です。多値変調(QPSK, 8PSKなど)ではビットレートとシンボルレートが異なるため、この式のシンボルレート RsR_s は「1シンボルあたり何ビット運ぶか」で RbR_b から換算する必要があります。)

この式の意味は明快です。

  • α=0\alpha = 0: B=RbB = R_b。理想矩形フィルタと同じ最小帯域幅(ナイキスト帯域幅、しばしば Rb/2R_b/2 を片側ナイキスト帯域と呼びます)しか使わない。しかし実現には無限に急峻なフィルタが必要で、タイミング誤差への耐性もゼロに近い。
  • α=1\alpha = 1: B=2RbB = 2R_b。理想の2倍の帯域を使う代わりに、時間応答の裾の減衰が最も速く、フィルタの実現も容易でタイミング誤差にも最も強い。

深宇宙リンクでは、前述の通り周波数割り当てが厳格に制限されているため、帯域幅は貴重な資源です。B=(1+α)RbB=(1+\alpha)R_b の関係式は、「同じ帯域幅の中にどれだけ高いビットレートを詰め込めるか」を直接左右します。たとえば割当帯域幅が固定されているとき、α\alpha を小さくすればするほど、同じ帯域内でより高いビットレート(=より多くの科学データ)を送れることになります。しかし α\alpha を小さくすると、フィルタの実現がより困難になり(急峻な遷移域を持つフィルタほど、有限タップ数のディジタルフィルタで正確に実装するのが難しくなります)、送受信機の局部発振器の周波数安定度やシンボルタイミング再生の精度に対する要求も厳しくなります。つまり α\alpha の選択は、帯域幅効率実装容易性・タイミング誤差耐性の間のトレードオフそのものであり、リンク設計者はミッションの帯域制約とハードウェアの実現性を天秤にかけて α\alpha を決定します。

実務での使われ方

CCSDSの勧告書 CCSDS 401.0-B (Radio Frequency and Modulation Systems) および関連の変調・符号化に関する勧告書群では、地球局・探査機間のリンクで使用が推奨されるパルス整形フィルタとしてRRCフィルタが規定されており、典型的なロールオフ率として α=0.35\alpha = 0.35α=0.25\alpha = 0.25、帯域制約がより厳しいリンクでは α=0.20\alpha = 0.20 程度の値が採用されます。これは地上の商用衛星通信(DVB-S2など、α=0.20\alpha=0.200.350.35 が一般的)とも近い水準で、深宇宙・衛星通信を問わず「帯域効率とISI耐性のバランスが取れた実用範囲」として業界で収斂している値と言えます。

NASAのDSN(Deep Space Network)やJPLの深宇宙探査機の多くも、サプレスドキャリア方式(次回以降で扱う畳み込み符号・LDPC符号を伴う方式)への移行に伴い、送信パルス整形にRRCフィルタを採用しています。α\alpha の値を小さくすることで、限られた割当帯域幅の中でできるだけ高いシンボルレートを実現し、より多くの科学データを地球に送り届けようとする一方、α\alpha を極端に小さくしすぎるとフィルタのタップ数(FIRフィルタとして実装する場合の演算量)が増大し、探査機搭載コンピュータの限られた処理能力・電力予算の制約に抵触するため、実際の値は 0.20.20.50.5 程度の範囲に落ち着くことがほとんどです。

また、地上局側の受信機では、RRC整合フィルタを通した後の信号を、正確なシンボルタイミングでサンプリングする**シンボル同期(タイミングリカバリ)**回路が不可欠です。ここでのタイミング誤差がナイキスト条件からのずれとなって現れ、ISIとして残留してしまうため、α\alpha の選定はタイミング同期回路の設計精度とも密接に関わっています。

演習問題

  1. ビットレート Rb=2R_b = 2 Mbps のBPSKリンクで、ロールオフ率 α=0.35\alpha = 0.35 のRRCフィルタ(送受信合成でレイズドコサイン特性)を使うとき、占有帯域幅 BB を計算してください。また α=0.20\alpha = 0.20 に変更した場合の BB と比較し、帯域幅がどれだけ節約できるか(節約率、%)を求めてください。

  2. レイズドコサインフィルタの周波数特性の式において、α=0\alpha = 0 のときの P(f)P(f) の形を確認し、それが理想矩形(ブリックウォール)フィルタに一致することを示してください。またこのとき対応する時間応答 p(t)p(t) が単純な sinc(t/Tb)\text{sinc}(t/T_b) になることを、本文中のレイズドコサイン時間応答の式に α0\alpha \to 0 を代入して確認してください。

  3. ナイキストのISIゼロ基準 nP(f+n/Tb)=Tb\sum_n P(f+n/T_b) = T_b について、理想矩形フィルタ(f1/(2Tb)|f|\le 1/(2T_b)TbT_b、それ以外で 00)がこの条件を満たすことを、隣接コピーが周波数軸上で重ならないことに着目して説明してください。

  4. なぜ送信フィルタと受信フィルタに「レイズドコサインの平方根(RRC)」をそれぞれ使う設計が選ばれるのか、(a) 整合フィルタによるSNR最大化の要求と、(b) ナイキストのISIゼロ基準という2つの要求の両面から、自分の言葉で説明してください。またRRCフィルタを送信側だけに(受信側は単純な矩形フィルタなどに)使った場合、何が問題になるかも考えてみてください。

まとめと次回予告

矩形パルスのsinc²スペクトルが無限に広い帯域を占有してしまうという問題は、ナイキストのISIゼロ基準 nP(f+n/Tb)=Tb\sum_n P(f+n/T_b)=T_b という周波数領域の条件によって解決できることを見ました。この条件を満たしつつ時間応答の裾を速く減衰させる実用的な設計がレイズドコサインフィルタであり、SNR最適な整合フィルタとしての性質を保ちながら送受信で半分ずつ担うのがルートレイズドコサイン(RRC)フィルタです。占有帯域幅はロールオフ率 α\alpha を使って B=(1+α)RbB=(1+\alpha)R_b と表され、α\alpha の選択が帯域幅効率とタイミング誤差耐性・実装容易性のトレードオフを決定することも確認しました。

しかし現実のリンクでは、送受信フィルタの特性が理論通りに正確に一致することはなく、シンボルタイミングの推定にもわずかな誤差が残ります。こうした非理想性がどれだけの符号間干渉を残留させているかを、実際の受信波形から目視・定量的に評価する道具がアイダイアグラム (eye diagram) です。次回は、このアイダイアグラムの読み方と、そこから読み取れるタイミングマージン・ノイズマージンといった実務上の指標を扱います。

参考文献

  • CCSDS 401.0-B, Radio Frequency and Modulation Systems, Part 1: Earth Stations and Spacecraft
  • J. G. Proakis, M. Salehi, Digital Communications, 5th ed., McGraw-Hill
  • F. M. Gardner, Phaselock Techniques, 3rd ed., Wiley
  • DSN Telecommunications Link Design Handbook, DSN No. 810-005
  • J. H. Yuen (ed.), Deep Space Telecommunications Systems Engineering, JPL Publication 82-76