変調・符号化#119

連続位相変調(CPM)の一般理論 — GMSKは特殊解の一つに過ぎない

GMSKは、位相応答関数と変調指数という2つの自由度を持つ、連続位相変調(CPM)という広いファミリーの一具体例だった。位相の連続性を保証する一般定式化から、変調指数がもたらす位相トレリスの周期性、パルス整形によるスペクトルの違い、そしてビタビ復号への接続と実務での設計判断基準までを数式で追う。

前提知識: GMSK — 位相を滑らかにして帯域外輻射を抑える変調

CPM連続位相変調位相トレリス最尤系列推定変調指数

この回で学ぶこと

前回、MSKとGMSKを「位相をカクカクさせない変調」として学びました。MSKは位相を区分線形に、GMSKはさらにガウスフィルタで角を丸めてなめらかに動かすことで、帯域外輻射を抑えつつ定包絡線性(振幅が常に一定)という電力増幅器にとって好都合な性質を同時に手に入れる方式でした。そして前回の終わりでは、MSKが変調指数 h=1/2h=1/2 のCPFSK(連続位相FSK)という一般的な枠組みの特殊な場合であること、GMSKはそのMSKの前段にガウスフィルタを挿入したものであることに触れました。

つまりMSKもGMSKも、実は連続位相変調 (Continuous Phase Modulation, CPM) という、もっと広いファミリーの中の特定の1点にすぎません。このファミリーは、大きく2つの自由度——変調指数 hh位相応答関数(周波数パルス) q(t)q(t) の形——によって特徴づけられ、この2つの選び方を変えるだけで、CPFSK、MSK、GMSK、さらには後で見る多重 hh CPMまで、驚くほど多様な変調方式が同じ1本の数式から生成されます。

この回では、このCPMの一般定式化を数式で追い、位相が「なぜ、どんな hhq(t)q(t) を選んでも常に連続であり続けるのか」という構造的な保証を確認します。そのうえで、CPMが記憶を持つ変調であること——現在の送信波形が過去のシンボル履歴すべてに依存すること——に注目し、これが畳み込み符号のビタビ復号で学んだのと同じ発想の位相トレリス上の最尤系列推定によって復調されることを見ます。最後に、なぜ実際のシステムがGMSKのような特定のCPMを選ぶのか、その設計判断の背景を実例とともに確認します。

直感的な導入: 「位相の速度の波形」を自由に選べる

前回の式を思い出しましょう。MSKの瞬時位相は

θ(t)=θ0+π2Tta(τ)dτ\theta(t) = \theta_0 + \frac{\pi}{2T}\int_{-\infty}^{t} a(\tau)\, d\tau

で、a(t)a(t) はシンボル列 {ak}\{a_k\} を矩形パルス化した波形でした。この式をよく見ると、位相 θ(t)\theta(t) は「a(t)a(t) という瞬時周波数偏移の波形を積分したもの」になっています。位相が滑らかになるかどうかは、結局この a(t)a(t)(あるいはそれを整形した波形)がどれだけ滑らかかに懸かっているわけです。

CPMの一般理論が言っているのは、要するに「この“瞬時周波数偏移の波形”をどんな形にするか、そしてその大きさをどれだけにするかは、設計者が自由に選べるパラメータだ」ということです。矩形のまま使えばCPFSK、ガウス形に丸めればGMSK、コサイン形に丸めればまた別の方式になる——同じ1つの数式の中の「パルス整形関数」という1つの空欄を埋め替えるだけで、CPMファミリー全体を生成できるのです。そしてその空欄の埋め方によらず、位相が常に連続であるという性質だけは、数式の構造そのものから自動的に保証されます。

CPMの一般定式化

瞬時位相と位相応答関数

送信シンボル列を {ak}\{a_k\} とします(2値なら ak{1,+1}a_k \in \{-1,+1\}MM値なら ak{±1,±3,,±(M1)}a_k \in \{\pm 1, \pm 3, \ldots, \pm(M-1)\})。CPM信号は

s(t)=Acos(2πfct+ϕ(t;a))s(t) = A\cos\big(2\pi f_c t + \phi(t;\mathbf{a})\big)

という角度変調の形を取り、情報はすべて瞬時位相 ϕ(t;a)\phi(t;\mathbf{a})

ϕ(t;a)=2πhk=akq(tkT)\phi(t;\mathbf{a}) = 2\pi h \sum_{k=-\infty}^{\infty} a_k\, q(t-kT)

という形でエンコードされます。ここで hh変調指数(modulation index)q(t)q(t)位相応答関数です。q(t)q(t) は、単発の矩形パルスではなく、周波数パルス g(t)g(t)(1シンボルの間だけ瞬時周波数をどれだけ動かすかを表す波形)の積分として定義されます。

q(t)=tg(τ)dτ,g(τ)dτ=12q(t) = \int_{-\infty}^{t} g(\tau)\, d\tau, \qquad \int_{-\infty}^{\infty} g(\tau)\, d\tau = \frac{1}{2}

正規化条件 q(t)=0 (t0)q(t)=0\ (t\le 0)q(t)=12 (tLT)q(t)=\tfrac{1}{2}\ (t\ge LT) を課すのが慣例です(LL は後述するパルス長)。この正規化のもとでは、1シンボル分のパルスが完全に通過し終えたとき、位相はちょうど 2πhak12=πhak2\pi h a_k \cdot \tfrac{1}{2} = \pi h\, a_k だけ進むことになります。

位相が常に連続であることの構造的保証

この定式化の核心は、q(t)q(t) がそもそも g(t)g(t) という(有限で滑らかな)関数の積分として定義されているという一点にあります。積分によって定義された関数は、被積分関数がどんな値を取ろうと、それ自体は連続関数になります(積分の上限を連続的に動かせば、値も連続的にしか変化しようがないからです)。したがって

ϕ(t;a)=2πhkakq(tkT)\phi(t;\mathbf{a}) = 2\pi h \sum_k a_k\, q(t-kT)

は、連続関数 q(tkT)q(t-kT) を(有限個、あるいは局所的には有限個の)シンボルぶんだけ重ね合わせたものにすぎず、シンボル aka_k がどんな値へジャンプしようと ϕ(t;a)\phi(t;\mathbf{a}) 自体は時間に対して常に連続です。これは前回QPSK・OQPSKで見た「位相が d(t){1,+1}d(t)\in\{-1,+1\} という不連続な波形に直接マッピングされる」方式とは根本的に違う構造で、CPMでは位相はシンボル列の積分(なめらかにする操作)を経てから初めて現れる、という点が「連続」を数式レベルで保証しているのです。逆に言えば、q(t)q(t) にどんな形の関数を選んでも——矩形でもガウス形でもコサイン形でも——この連続性の保証は崩れません。ここがCPMという名前の由来そのものです。

瞬時周波数偏移は位相の微分として

12πdϕdt=hkakg(tkT)\frac{1}{2\pi}\frac{d\phi}{dt} = h \sum_k a_k\, g(t-kT)

と書け、g(t)g(t) の形が瞬時周波数の「波形」を、hh がその「振幅の倍率」を決めていることが分かります。

変調指数 hh によるバリエーション: 位相トレリスの周期性

hh の値を変えると、CPM信号の性質は大きく変わります。まず h=1/2h=1/2g(t)g(t) を幅 TT の矩形パルスに選んだ場合、前回導出した通りちょうどMSKになります。一般に g(t)g(t) を矩形パルスに選んだ場合(周波数パルスが1シンボル区間しか広がらない)を**CPFSK(連続位相FSK)**と呼び、MSKはCPFSKの中で h=1/2h=1/2 を選んだ特別な場合という位置づけになります。

hh が変わるとどう変化するのか。シンボル境界での位相の変化量(の, パルスの尾を無視した主要部分)は πhak\pi h\, a_k でした。これを時刻 kk まで累積すると、パルスの立ち上がり分を除いた「累積位相状態」

Θkπhi=k1ai(mod2π)\Theta_k \equiv \pi h \sum_{i=-\infty}^{k-1} a_i \pmod{2\pi}

が定義できます。ここで hh が既約分数 h=p/qh=p/q(p,qp,q は互いに素な整数)という有理数であれば、aia_i が整数値を取ることから Θk\Theta_k2π2\pi を法として有限個の離散値だけを巡回することが分かります。具体的には、Θk\Theta_k が取り得る値の個数(位相状態数)は

#{Θk}={q(p が偶数のとき)2q(p が奇数のとき)\#\{\Theta_k\} = \begin{cases} q & (p\ \text{が偶数のとき}) \\ 2q & (p\ \text{が奇数のとき}) \end{cases}

という古典的な結果が知られています(2値シンボルの場合)。h=1/2h=1/2(p=1, q=2p=1,\ q=2pp は奇数)を代入すると 2q=42q=4 となり、前回MSKの位相が {0,π/2,π,3π/2}\{0,\pi/2,\pi,3\pi/2\} の4状態を巡回すると直接確認したことと一致します。

これに対して hh無理数だと、Θk\Theta_k は決して同じ値に戻らず、位相状態は無限に増え続けます。これは受信機が有限個の状態でトレリスを組んで最尤復号する(後述)ことを不可能にしてしまうため、実用上のCPMシステムは例外なく有理数の hh を採用します。

位相応答関数 q(t)q(t) によるバリエーション: パルス整形とスペクトル

hh が「位相がどれだけ速く回るか」を決めるのに対し、q(t)q(t)(あるいはその微分 g(t)g(t))は「1シンボルの間に位相がどんな軌跡を描いて回るか」、そしてその軌跡が何シンボル分の時間にまたがるかを決めます。g(t)g(t) の非ゼロ区間の長さが何シンボル周期分か、を表す整数 LL を用いて、L=1L=1 の場合をフルレスポンスCPML>1L>1 の場合をパーシャルレスポンスCPMと呼びます。代表的な g(t)g(t) の選び方を並べてみます。

矩形パルス(LREC, L=1L=1)。 前回・今回すでに見た通り、

g(t)={12T0t<T0それ以外g(t) = \begin{cases} \dfrac{1}{2T} & 0 \le t < T \\ 0 & \text{それ以外} \end{cases}

で、これがCPFSK(MSKを含む)です。フルレスポンス、すなわち1シンボルの影響が隣接シンボルへ一切染み出さないもっとも単純な場合にあたります。位相軌跡は区分線形(角がある)ため、スペクトルのサイドローブ減衰は比較的緩やかです。

ライズドコサインパルス(LRC, L1L\ge 1)。

g(t)={12LT[1cos ⁣(2πtLT)]0t<LT0それ以外g(t) = \begin{cases} \dfrac{1}{2LT}\left[1-\cos\!\left(\dfrac{2\pi t}{LT}\right)\right] & 0 \le t < LT \\ 0 & \text{それ以外} \end{cases}

このパルスは矩形パルスと違って両端でなめらかにゼロへ漸近するため(矩形パルスのような「角」がない)、L=1L=1 の場合(1RC)でもCPFSKよりサイドローブの減衰が速くなります。LL を大きくして複数シンボルにパルスを広げる(2RC, 3RCなど)と、位相軌跡はさらに滑らかになり、スペクトルはいっそう狭帯域化しますが、その代償として1シンボルの情報が隣接する L1L-1 シンボル分の位相軌跡に染み出す**符号間干渉(ISI)**が生じます。この「帯域を狭めるほどISIが増える」というトレードオフ構造は、前回GMSKのBT積で見たものとまったく同じ論理です。

ガウスパルス(GMSK)。 前回導出したガウス形の g(t)g(t) は、数学的には裾が指数関数的に減衰するだけで厳密にはゼロになりません(理論上 L=L=\infty)。実務上は BTBT 積で決まる有効な広がり(数シンボル分)でパルスを打ち切って扱うため、GMSKは事実上パーシャルレスポンスCPMの一種として実装されていることになります。

いずれの g(t)g(t) を選んでも、hh さえ同じ有理数に保てば位相トレリスの状態数(位相状態の巡回パターン)は変わりません。g(t)g(t) の形はもっぱら信号波形そのものの滑らかさ、すなわちスペクトルの主ローブ幅とサイドローブ減衰の速さを左右するのに対し、hh の分母 qqトレリスの位相状態数を左右する、という具合に、この2つのパラメータはおおむね独立に効いてくる設計自由度になっています。

位相トレリスと最尤系列推定への接続

CPMのもう1つの重要な性質は、記憶を持つ変調 (modulation with memory) であるということです。ある時刻 t[kT,(k+1)T)t\in[kT,(k+1)T) における瞬時位相 ϕ(t;a)\phi(t;\mathbf{a}) は、現在のシンボル aka_k だけでなく、パルスの尾がまだ減衰し切っていない過去のシンボル ak1,,akL+1a_{k-1},\ldots,a_{k-L+1}、そして冒頭で定義した累積位相状態 ΘkL+1\Theta_{k-L+1}(それより過去のすべてのシンボルの記憶が畳み込まれた量)にも依存します。つまり送信波形の1シンボル区間分だけを切り出しても、そこから単独でシンボルを判定することはできません。

これは、畳み込み符号の回で見た「現在の出力が過去の入力履歴に依存する有限状態機械」とまったく同じ構造です。実際、CPM信号の生成過程は次の2段に分解して理解できます。

  1. 連続位相エンコーダ: シンボル列 {ak}\{a_k\} から、状態 σk=(Θk; ak1,ak2,,akL+1)\sigma_k = \big(\Theta_k;\ a_{k-1}, a_{k-2}, \ldots, a_{k-L+1}\big) を持つ有限状態機械として、位相状態 Θk\Theta_k と直近 L1L-1 シンボルの組を出力する(状態数は、h=p/qh=p/q の位相状態数と ML1M^{L-1} の積)。
  2. メモリレス変調器: 現在の状態 σk\sigma_k と現在のシンボル aka_k だけから、その区間の送信波形(位相軌跡の1区間分)を一意に決める。

この見立てのもとでは、畳み込み符号のトレリス線図の「状態」を「CPMの位相トレリス状態 σk\sigma_k」に、「ハミング距離によるブランチメトリック」を「受信波形と各ブランチが表す局所的な送信波形候補との相関(ソフト判定の内積、あるいは対数尤度)」に置き換えるだけで、まったく同じAdd-Compare-Select再帰によるビタビアルゴリズムが、CPMの最尤系列推定(MLSE)復調器としてそのまま使えます。

Γk+1(σ)=maxσ:σσ[Γk(σ)+λk(σσ)],λk(σσ)=Re ⁣kT(k+1)Tr(t)sσσ(t)dt\Gamma_{k+1}(\sigma) = \max_{\sigma': \sigma'\to\sigma} \Big[\, \Gamma_k(\sigma') + \lambda_k(\sigma'\to\sigma) \,\Big], \qquad \lambda_k(\sigma'\to\sigma) = \mathrm{Re}\!\int_{kT}^{(k+1)T} r(t)\, s^{*}_{\sigma'\to\sigma}(t)\, dt

(畳み込み符号のハード判定復号では距離の最小化でしたが、CPMのソフト判定復号では相関の最大化になる点に注意してください。符号の設計は違えど、動的計画法としての骨格は同一です。)

ここで実務上の課題も見えてきます。トレリスの状態数は hh の分母 qq、シンボルの多値数 MM、パルス長 LL の組み合わせで指数的に増えるため(ML1M^{L-1} の項に注目)、パーシャルレスポンスで帯域を絞り込むほど、あるいは多値化してスペクトル効率を上げるほど、最尤復調器のビタビ復号器が扱う状態数も増大し、受信機の実装コストが跳ね上がります。GMSKのようにガウスパルスの裾を数シンボル分で打ち切ってトレリスを組んでも状態数はかなり大きくなるため、実用上のGMSK受信機は真の最尤MLSEではなく、P. Laurentが示した線形パルス列(振幅変調パルスの重ね合わせ)への近似分解を使い、通常の線形変調用の受信機構造(整合フィルタ+等化器)に近い、計算量を抑えた準最適受信を行うことが一般的です。CPMは理論的にはビタビ復号で最適復調できますが、実装ではこの理論上の複雑さと現実の受信機コストとのバランスを取る工夫が随所に凝らされているわけです。

実務での使われ方

前回学んだGMSK(GSMの BT=0.3BT=0.3)やBluetoothのGFSK(BT=0.5BT=0.5)は、いずれもCPMファミリーの中でも「フルレスポンスに近い、h=1/2h=1/2 固定、単純な受信機で足りる」設計を選んだ例でした。これに対して、より高いスペクトル効率と誤り率性能を要求される分野では、CPMファミリーのより一般的な形が採用されています。

代表例が航空機フライトテスト用のテレメトリ規格 IRIG 106 Chapter 2 に規定される ARTM CPM(Advanced Range Telemetry CPM、Tier III) です。これは4値(M=4M=4)のシンボルに、ライズドコサインパルスをシンボル3つ分に広げた3RCパルス(L=3L=3)を用い、さらに変調指数を h1=4/16h_1=4/16h2=5/16h_2=5/16 の2値の間でシンボルごとに交互に切り替える多重 hh(multi-hh)CPMという設計を採っています。単一の hh を固定するよりも、複数の hh を交互に用いるほうがトレリス上での誤りパス間の最小距離(自由距離に相当する量)を稼ぎやすく、同じ帯域幅でよりよいビット誤り率性能を達成できることが知られているためです。米空軍のレンジ司令官会議(Range Commanders Council)が主導したARTMプログラムは、限られたL/Sバンドのテレメトリ用周波数割当ての中で、従来のPCM/FM方式より高いスペクトル効率を、定包絡線変調のまま実現することを目的として、このパーシャルレスポンス・多重hhのCPMを標準化しました。

このように、CPMファミリーの中でどの具体的な方式を選ぶかは、おおむね次のような設計判断基準に沿って決まります。

  • 必要な帯域外抑圧の厳しさ: 隣接チャネル間隔が狭い(GSMのように 200200 kHz間隔に多数のユーザーを詰め込む)場合ほど、g(t)g(t) をガウス形などなだらかな形に選び、パーシャルレスポンス化して帯域を絞り込む価値が大きい。
  • 受信機が許容できる複雑さ: トレリス状態数は ML1M^{L-1} のオーダーで増えるため、安価・省電力な受信機(携帯端末、小型探査機の中継トランスポンダなど)では、状態数の少ないフルレスポンス・単一hh・2値のCPFSKやMSKに近い設計が好まれる。逆に、地上局のように計算資源に余裕がある側で高性能な復号器を組める場合は、パーシャルレスポンス・多重hh・多値のCPMでスペクトル効率とBER性能をさらに追い込める。
  • 達成したい誤り率対 Eb/N0E_b/N_0 の要求: 多重hhのように自由距離を稼ぐ工夫は、畳み込み符号の符号化利得と同じ発想で、追加の帯域コストなしにビット誤り率を改善する手段になる。

演習問題

  1. 変調指数 h=1/3h=1/3(p=1,q=3p=1,\,q=3)と h=3/8h=3/8(p=3,q=8p=3,\,q=8)について、本文中の位相状態数の公式 #{Θk}=q(p偶数)\#\{\Theta_k\} = q\,(p\text{偶数}) または 2q(p奇数)2q\,(p\text{奇数}) を使って、それぞれの位相状態の個数を求めてください。またそれぞれの場合に Θk\Theta_k が取り得る具体的な値(ラジアン)を、2π2\pi を法として列挙してください。
  2. 一般の位相応答関数 q(t)q(t)(積分として定義され、それ自体が連続関数であるもの)について、ϕ(t;a)=2πhkakq(tkT)\phi(t;\mathbf{a}) = 2\pi h\sum_k a_k\, q(t-kT) がシンボル境界 t=nTt=nT で連続であること、すなわち limtnTϕ(t;a)=ϕ(nT;a)=limtnT+ϕ(t;a)\displaystyle\lim_{t\to nT^-}\phi(t;\mathbf{a}) = \phi(nT;\mathbf{a}) = \lim_{t\to nT^+}\phi(t;\mathbf{a}) を、q(t)q(t) の連続性だけを根拠にして示してください(個々の aka_k の値がどう変化してもよい、という点がポイントです)。
  3. 2値シンボル(M=2M=2)、変調指数 h=1/2h=1/2、ライズドコサインパルスを3シンボル分に広げた3RC(すなわち L=3L=3)のCPMを考えます。本文の位相状態数の公式とパーシャルレスポンスの状態数公式(位相状態数 ×ML1\times\, M^{L-1})を使って、このCPMのトレリス全体の状態数を求め、前回学んだMSK(フルレスポンス、L=1L=1)のトレリス状態数と比較してください。パーシャルレスポンス化によって状態数がどれだけ増えたか論じてください。
  4. ARTM CPM(Tier III)が、単一の h=1/2h=1/2 の単純なGMSKではなく、多重hhかつパーシャルレスポンス(3RC)というより複雑な設計をあえて採用している理由を、本文で述べた「トレリス状態数と受信機複雑さのトレードオフ」および「自由距離を稼ぐことによるビット誤り率改善」という2つの観点から、自分の言葉で説明してください。

まとめと次回予告

MSK・GMSKは、ϕ(t;a)=2πhkakq(tkT)\phi(t;\mathbf{a})=2\pi h\sum_k a_k\, q(t-kT) という連続位相変調(CPM)の一般式において、変調指数 hh と位相応答関数 q(t)q(t)(元になる周波数パルス g(t)g(t))の選び方を特定したものにすぎませんでした。位相が常に連続であるという性質は、q(t)q(t) が積分によって定義された連続関数であるという構造そのものから保証され、hh の有理性が位相トレリスを有限状態に収める鍵であり、g(t)g(t) の形とパルス長 LL がスペクトルとISI・受信機複雑さのトレードオフを支配していました。そしてCPMは記憶を持つ変調であるがゆえに、畳み込み符号のビタビ復号とまったく同じ動的計画法の骨格を持つ位相トレリス上の最尤系列推定によって復調される、という接続を見ました。

これまで私たちは、変調指数やパルス整形といった「位相・周波数領域」での自由度、あるいは残留搬送波の配分といった「振幅・電力領域」での自由度を扱ってきました。次回はもう1つ別の軸、すなわちコンステレーション上の信号点そのものの配置や生起確率を工夫することでシャノン限界にさらに近づく、確率的シェーピング・幾何学的シェーピングという考え方の入り口に軽く触れます。

参考文献

  • J. B. Anderson, T. Aulin, C.-E. Sundberg, Digital Phase Modulation, Plenum Press, 1986
  • J. G. Proakis, M. Salehi, Digital Communications, 5th ed., McGraw-Hill(Continuous-Phase Modulationの章)
  • P. A. Laurent, “Exact and Approximate Construction of Digital Phase Modulations by Superposition of Amplitude Modulated Pulses (AMP),” IEEE Transactions on Communications, vol. 34, no. 2, 1986
  • IRIG Standard 106, Chapter 2, Telemetry Modulation Systems and Waveforms, Range Commanders Council, Telemetry Group
  • M. Geoghegan, “Description and Performance Results for the Multi-h CPM Tier II Waveform,” Proceedings of the International Telemetering Conference (ITC), 2000