ASK・FSK・PSK・QAMの違いとPCM変調をやさしく解説|16QAM・標本化・量子化・復号まで
「ASK・FSK・PSK・QAMは何が違うの?」「PCMの標本化・量子化・符号化が覚えられない…」という疑問に、波形図・信号点配置図・処理フロー図を使ってやさしく答えます。
16QAMの計算、標本化定理、PAM、量子化雑音、復号とろ波まで、通信技術の初心者が順番に理解出来る様にまとめました。
1. 変調方式とは?デジタル通信の基本を理解しよう
1-1. 変調方式とは何か?初心者にも分かる仕組み
スマートフォンで動画を再生する時や、無線でデータを送る時、情報はそのまま空中を飛んでいる訳ではありません。
デジタルデータを、電波などの信号に対応させて運ぶ必要があります。
そこで使うのが「変調」という技術です。
変調とは、送りたい情報に応じて信号の性質を変える事をいいます。
例えば、離れた友達と懐中電灯で合図を送る場面を考えましょう。
点灯を「1」、消灯を「0」と決めれば、光の状態を切り替えるだけで情報を伝えられます。
電波による通信では、懐中電灯の光の代わりに、情報を運ぶための「搬送波(キャリア)」を使います。
その搬送波に決められた変化を加える事で、受信側が0と1を区別出来る様にします。
デジタル搬送波変調の代表例は、ASK・FSK・PSK・QAMです。
ASKは波の振幅、FSKは周波数、PSKは位相を切り替えます。
QAMは90度ずれた2つの信号成分を組み合わせ、多数の状態を作ります。
どの方式も「データを信号の状態に割り当てる」という点は同じですが、何を変化させるかが異なります。
送信側で変調された信号から、受信側が元のビット列を読み取る操作を「復調」といいます。
変調と復調はセットです。
雑音や信号の弱まりがあっても、出来るだけ正しいデータを取り出せるように、通信環境に合わせて方式が選ばれます。
まずは「変調=情報を運ぶ波の状態をルールに従って変える事」と覚えておきましょう。
ここで「変調しないと、データは絶対に送れないの?」という疑問も出てきます。
有線のデジタル信号では、ビットを電圧の高低などに対応させるベースバンド伝送もあります。
全ての伝送が搬送波を使う訳ではありません。
この記事で扱うASK・FSK・PSK・QAMは、特に搬送波の状態を変える方法です。
また、通信の性能は変調だけでは決まりません。
誤り訂正、同期、フィルタ、アンテナなどの技術と組み合わせて実現します。
単語を一つずつ覚えるより、通信システムの中でどの仕事を担当する技術なのかを意識する事が大切です。
1-2. 振幅・周波数・位相の違いを理解しよう
ASK・FSK・PSKを理解するために、波が持つ3つの性質を押さえましょう。
「振幅」「周波数」「位相」です。
言葉だけ見ると難しそうですが、波の図を見ながら考えると意外に単純です。
振幅は、波の中心から山や谷までの大きさです。
同じ間隔で波が揺れていても、山が高ければ振幅が大きく、山が低ければ振幅が小さいと言えます。
ASKはこの大きさを切り替えます。
振幅を2段階に分けるだけでも、基本的な0と1を表現出来ます。
周波数は、1秒間に何回振動するかを示す値で、単位はHz(ヘルツ)です。
1秒間に100回振動すれば100Hz、1,000回なら1,000Hzです。
図では、同じ横幅に山と谷が沢山入っていれば周波数が高いと理解出来ます。
FSKは周波数の違いを0と1に対応させます。
位相は、波の1周期のうち、今どこにいるかを角度で表す考え方です。
同じ高さ・同じ周波数の2つの波でも、山が現れるタイミングがずれていれば位相が違います。
PSKは、このずれを情報として利用します。
「振幅=波の高さ」「周波数=1秒間の振動回数」「位相=波のタイミング」と整理すると、変調方式の区別がずっと簡単になります。
波の性質を式で表す場合、単純な正弦波は「振幅×sin(2π×周波数×時間+位相)」という形になります。
公式を暗記する必要はありませんが、式の中で振幅が波の高さ、周波数が振動の速さ、位相が始まる位置を決めていると確認出来ます。
なお位相を変える時は、単純に波全体を時間方向へ移動して考えると理解し易くなります。
ただし実際の受信では、伝搬の遅れや送受信機の基準のずれもあるため、受信側が信号の状態を推定する仕組みが必要です。
2. ASK・FSK・PSKの仕組みと違い
2-1. 振幅変調方式ASKとは?波の大きさで情報を伝える
ASKはAmplitude Shift Keyingの略で、「振幅偏移変調」と呼ばれます。
送りたいデジタルデータに合わせ、搬送波の振幅を切り替える方式です。
例えば「1のときは振幅を大きくする」「0のときは振幅を小さくする」と約束すれば、受信側は波の強さからビットを判断出来ます。
最もイメージし易いのが、1の時だけ搬送波を出し、0の時は出さないOOK(On-Off Keying)です。
これはASKの一種です。
懐中電灯の点灯と消灯で合図を出す例に似ています。
図を見ると、1の区間にだけ波があり、0の区間では波が途切れています。
ASKのメリットは、基本的な構成が分かり易い事です。
特に2値ASKなら、送信側では振幅を2種類に切り替える仕組みを考えれば良く、初学者が変調を学ぶ入口として適しています。
一方、波の振幅は雑音や通信路の影響で変わるため、受信側が振幅の大小を取り違える場合があります。
ただし、「ASKはどんな場合にもFSKやPSKより弱い」と断言するのは正確ではありません。
誤りやすさは信号電力、通信路、検波方法、受信回路の設計などで変わるからです。
試験勉強では、まず「ASK=振幅を切り替える」「OOK=波の有無を切り替えるASKの例」と分けて覚えましょう。
ASKを復調する側では、受信した信号の大きさを調べ、あらかじめ決めた基準と比較してビットを判定出来ます。
例えば振幅が一定の基準より大きければ1、小さければ0とする考え方です。
ただし電波が途中で弱まれば、同じ送信波でも受信振幅が変わります。
このため受信回路では、自動利得制御や適切なしきい値の設定などが重要になります。
OOKを使う通信でも、搬送波を止める時間を正確に区切らなければ、どこが1でどこが0なのか分かりません。
振幅だけでなく、ビットを区切るタイミングも必要なのです。
2-2. 周波数変調方式FSKとは?波の細かさで情報を伝える
FSKはFrequency Shift Keyingの略で、「周波数偏移変調」と言います。
データに合わせて搬送波の周波数を切り替える方式です。
振幅の大小ではなく、波が振動する速さで情報を表現します。
例えば、0には1,000Hz、1には2,000Hzを割り当てるとしましょう。
同じ時間の中で波がゆっくり振動していれば0、細かく振動していれば1というルールになります。
実際の周波数は通信方式によって異なりますが、基本的な考え方は同じです。
2種類の周波数を使う方式を2値FSK(BFSK)と呼びます。
4種類、8種類などに増やした多値FSKもあります。
多値化すると、1つのシンボルでより多くのビットを表現出来ますが、その分周波数を見分ける設計が必要です。
FSKは、振幅の変化その物に情報を割り当てないため、振幅のゆらぎの影響を抑えやすい構成に出来ます。
一方、複数の周波数を区別するため、設定する周波数間隔や信号の整形方法によって必要な帯域幅が変わります。
限られた帯域で大量の情報を運びたい場合は、他の変調方式が選ばれる事もあります。
試験でASKとFSKを迷ったら、波の「高さ」が変わるならASK、「横方向の細かさ」が変わるならFSKと判断すると覚え易くなります。
FSKを受信する方法には、周波数ごとのエネルギーを比較する方法などがあります。
2種類の周波数をあらかじめ知っていれば、どちらの成分が強いかで0と1を判定するイメージです。
FSKの周波数を急に切り替えると、余分な周波数成分が広がる場合があります。
そのため現実の通信では、信号の切り替え方を滑らかにする工夫が行われる事もあります。
なおFSKとFM(周波数変調)は似た言葉ですが、FSKは離散的なデジタル記号に周波数を対応させる方式として理解すると違いを掴み易いでしょう。
2-3. 位相変調方式PSKとは?波のずれで情報を伝える
PSKはPhase Shift Keyingの略で、「位相偏移変調」といいます。
搬送波の位相を、送信するデータに応じて切り替える方式です。
位相は波のタイミングを表すので、同じ振幅と周波数でも、波の山が現れる位置を変える事で情報を表現出来ます。
最も基本的なのがBPSKです。
例えば位相0度を0、180度を1と決めます。
この2つは波の向きが反転した関係になるため、受信側は位相の違いを判断してビットを読み取ります。
BPSKでは1シンボルで1ビットを表現します。
更にQPSKでは、4種類の位相を利用します。
45度・135度・225度・315度の各状態に00・01・11・10を割り当てる様なイメージです。
4種類の状態は2の2乗なので、1シンボルで2ビットを表現出来ます。
実際にどのビット列をどの位相に対応させるかは、通信方式ごとに決まります。
PSKの利点は、複数の位相を使えば1回の信号状態で複数ビットを表現出来る事です。
ただし、受信側では位相の基準を正しく扱う必要があります。
周波数のずれ、位相雑音、伝搬環境の変化などによって誤りが起こる場合があります。
また位相の種類を増やすほど、隣接する状態を見分ける余裕が小さくなります。
まずは「BPSK=2状態で1ビット」「QPSK=4状態で2ビット」と覚え、周波数を変えるFSKとの違いを確認して下さい。
PSKの位相を点で表したものがコンスタレーション図です。
BPSKでは基本的に2点、QPSKでは4点が円周上に配置されます。
点の数が増えるほど多くのビットを送れますが、点同士の角度差は小さくなります。
例えばQPSKの4点は90度ずつ離れているため、BPSKとは受信側の判断方法が異なります。
波の途中で位相を急に変えると、波形が不連続に見える事もありますが、実際の送信では帯域の広がりを抑えるために信号整形を行います。
図は基本原理の説明であり、実機の電波をそのまま描いた物ではありません。
3. QAM・16QAMの仕組みを分かりやすく解説
3-1. 直交振幅変調方式QAMとは?
QAMはQuadrature Amplitude Modulationの略で、「直交振幅変調」と呼ばれます。
初心者向けには「振幅と位相の組み合わせで情報を送る方式」と説明される事が多く、信号がどの様に見えるかを掴むには便利です。
厳密には、互いに90度ずれた2つの搬送波成分の振幅を組み合わせ、様々な信号状態を作ります。
この2つの成分をI成分とQ成分と呼びます。
横軸にI、縦軸にQを取ると、各信号状態は平面上の点として表せます。
この点の並びをコンスタレーション図、または信号点配置図といいます。
地図の横座標と縦座標で位置を決めるように、IとQの値の組み合わせで送信する信号を決めるのです。
例えば4種類の状態があれば2ビット、16種類なら4ビット、64種類なら6ビットを1シンボルで表現出来ます。
同じシンボル速度で比較すると、状態数が増えるほど理論上のビット速度を上げられます。
ここでのシンボルとは、送信に使うひとまとまりの信号状態を指します。
しかし、信号点を増やすだけで必ず通信が速く、安定する訳ではありません。
送信電力や信号の振幅範囲が同程度なら、点同士の間隔が狭くなり、雑音によって別の点だと判断し易くなるためです。
高速通信では、伝送効率と誤りにくさのバランスを考えながら変調方式を選びます。
QAMは、単に「ASKとPSKを足したもの」と丸暗記するより、「直交する2成分で沢山の信号状態を作る」と理解した方が応用し易いでしょう。
通信で言う「直交」は、互いの成分をうまく分離して取り出せる関係という意味があります。
90度ずれた正弦波と余弦波を基準にすると、IとQの成分を一つの搬送波に重ねても受信側で分けて調べられます。
信号点が中心から遠いほど振幅が大きく、中心から見た角度によって位相が変わります。
従ってQAMを「振幅と位相の両方が変化する方式」と説明出来る訳です。
ただしコンスタレーション図の点の配置には複数の方式があり、いつもきれいな四角い格子になるとは限りません。
16QAMの格子配置は代表的な例です。
3-2. 16値QAMとは?4ビット送れる理由と特徴
16値QAM(16QAM)は、16種類の信号状態を使うQAMです。
「16」と言う数字は、1回に16ビットを送るという意味ではありません。
16種類の状態から1つを選べる、という意味です。
この違いは試験でも間違え易いので注意しましょう。
デジタルデータの組み合わせを考えると、1ビットなら0・1の2種類、2ビットなら00・01・10・11の4種類、3ビットなら8種類、4ビットなら16種類です。
従って「2の4乗=16」から、16QAMでは1シンボルにつき4ビットの情報を表現出来ます。
代表的な16QAMでは、I成分に4種類、Q成分にも4種類の値を使います。
例えばそれぞれ−3・−1・+1・+3という値を考えると、4×4=16個の信号点が出来ます。
コンスタレーション図には、この16点が格子状に並びます。
実際の通信では、隣り合う点でビットの違いが小さくなる様、グレイ符号化などが用いられます。
シンボル速度が毎秒1,000シンボルであれば、16QAMの理論上の情報ビット速度は「1,000×4=4,000bps」です。
ただし、これは誤り訂正符号や制御情報などの割合を無視した単純な計算です。
利用者が実際に使える通信速度とは一致しない事があります。
64QAMなら6ビット、256QAMなら8ビットを1シンボルで表現出来ます。
その一方、多値になるほど近接した信号点を正確に見分ける必要があるため、一般に良好な受信品質が求められます。
16QAMの基本は「16状態・4ビット・I/Qの格子状の点」と押さえましょう。
ここで「シンボル速度」と「ビット速度」を区別しましょう。
シンボル速度は1秒に何回信号状態を送るかを表し、単位にはbaud(ボー)を使います。
ビット速度は1秒に何ビット送るかを表し、単位にはbpsを使います。
16QAMなら1シンボルが4ビットなので、同じシンボル速度の2値方式より多くのビットを表現出来ます。
ただし現実の通信では、信号が重ならない様に整形する方法や誤り訂正の割合、通信路の状態が効率に関係します。
多値化すると常に4倍の実効通信速度が得られる、と覚えない様にして下さい。
16QAM:24 = 16 → 1シンボルで4ビット
4. PCM変調方式とは?音声がデジタルになる仕組み
4-1. PCM変調方式の基本とASK・FSK・PSKとの違い
PCMはPulse Code Modulationの略で、日本語では「パルス符号変調」と呼ばれます。
音声などのアナログ信号を、デジタルデータに変えるための代表的な技術です。
ここで重要なのは、PCMとASK・FSK・PSK・QAMの主な役割は違うと言う事です。
ASKやQAMなどは、既にあるデジタルデータを搬送波の状態に対応させて送信する仕組みです。
一方のPCMは、元々連続した形のアナログ信号を、0と1で表現出来るデータに変える仕組みです。
両方とも「変調」という名前が付いていますが、同じ種類の処理としてひとまとめにしない事が大切です。
例えば、マイクで声を録音するところを想像して下さい。
声は空気の振動として広がり、マイクは振動を連続的に変化する電気信号に変えます。
この信号をデジタル機器で扱える様にするには、一定時間ごとに値を取り出し、限られた段階に分け、ビット列に変える処理が必要です。
それがPCMの基本的な流れです。
PCMでは、①標本化(サンプリング)、②量子化、③符号化の順に処理します。
標本化は時間を区切り、量子化は値を段階に分け、符号化はその値を0と1に対応させます。
デジタル化したPCMデータは、保存・加工したり、必要に応じて別の変調方式を使って通信路に送ったり出来ます。
つまり、PCMとQAMが同じシステムで使われる事もあります。
「PCM=音を数字にする」「ASK・FSK・PSK・QAM=数字を通信の信号に乗せる」と考えると、用途の違いが一目で分かります。
例えばビデオ会議を考えると、マイクが取り込んだ声はまず電気信号になり、A/D変換でデジタルの音声データになります。
その後、必要に応じて圧縮やパケット化などを行い、無線区間では適切な変調方式を使って送信します。
相手側では逆の処理が行われ、スピーカーから音として聞こえます。
ここでPCMは音声の表現方法で、QAMなどは通信路に情報を送り出す方法です。
両者を区別出来ると、デジタル音声と無線通信がどうつながっているのかも理解し易くなります。
4-2. PCMの全体の流れとパルス振幅変調方式PAMの役割
PCMの全体像は、処理を順番に並べると理解し易くなります。
送信側では、まずアナログ信号を一定間隔で標本化し、その値を量子化します。
続いて各段階をビット列に符号化し、保存や伝送に利用します。
受信側では、ビット列を復号し、D/A変換と必要なフィルタ処理によって連続した信号を再構成します。
この流れを学ぶ時、良く登場するのがPAM(Pulse Amplitude Modulation:パルス振幅変調)です。
PAMはパルスの振幅を変える事で情報を表す方式です。
一定間隔でアナログ信号の値を取り出し、その大きさに比例する高さのパルスを作ると、標本化した値をパルス振幅で表したイメージになります。
ここで、PAMとPCMを同じ物だと思わない様にしましょう。
PAMでは、パルスの高さが連続的な値を取れる場合があります。
例えば1.23Vや1.27Vなど、細かな違いをそのまま振幅に反映出来ます。
一方、PCMはその値を量子化し、最後には決められたビット列で表します。
ただし、PAMはPCMの途中段階だけに存在する技術ではありません。
独立した伝送方式として利用されるPAMもあります。
「PCMの標本化段階をPAMでイメージ出来る」が、「全てのPAMがPCMに含まれる訳ではない」と理解すると正確です。
また、PCMの受信側にある「復号」は、送ったビット列を量子化値に戻す処理です。
その後にD/A変換を行い、ろ波(フィルタリング)で不要な高い周波数成分を減らします。
送信側と受信側を矢印でつなぎ、処理の順序をひとつずつ確認してみましょう。
標本化された信号は時間方向には離散的ですが、値の大きさはまだ細かく変わります。
これに対して量子化が終わると値も有限の段階に分かれます。
図を見る際には「時間を区切る段階」と「値を区切る段階」を分けて確認しましょう。
PCMの説明に登場するPAMを、最終的な0と1の列と混同しない事がポイントです。
また、受信側で元の音を再現する際、標本化が不十分だった周波数成分や量子化で失われた細かい情報まで完全に取り戻せる訳ではありません。
だからこそ、最初のA/D変換時の条件が大切になります。
5. サンプリング・標本化・標本化定理とは?
5-1. 標本化(サンプリング)の仕組みと具体例
標本化とは、連続的に変化するアナログ信号の値を、一定の時間間隔で取り出す事です。
英語ではサンプリングと言います。
従って、PCMの説明では「標本化」と「サンプリング」を基本的に同じ意味で考えて構いません。
身近な例として、部屋の温度を1秒ごとに記録する場面を想像して下さい。
気温は本来滑らかに変化していますが、0秒で20.0度、1秒で20.2度、2秒で20.5度というように一定間隔で測れば、時刻と数値の組み合わせとして扱えます。
音声でも同じ様に、連続した波形の値を一定間隔で取り出します。
1秒間に何回取り出すかを示すのが「標本化周波数」です。
単位はHzです。
例えば8,000Hzなら1秒間に8,000回、44.1kHzなら1秒間に44,100回の値を取り出します。
音楽CDのPCM音声には44.1kHzという標本化周波数が使われています。
標本化周波数を高くすれば、より高い周波数まで扱える可能性が広がりますが、同時にデータ数も増えます。
音声の品質は、標本化周波数だけでなく、量子化ビット数、マイクや回路の性能、元の信号に含まれる雑音などにも左右されます。
そのため、ただ数値を高くすれば良い訳ではありません。
大切なのは、標本化したい信号にどのくらい高い周波数の成分が含まれているかです。
次の標本化定理を理解すると、なぜ標本化周波数に条件があるのかが分かります。
「1秒間に44,100回」という数字が大き過ぎてイメージしにくい場合は、標本化間隔に直してみましょう。
1秒を44,100で割ると、約0.0000227秒、つまり約22.7マイクロ秒ごとに標本を取っている事になります。
8,000Hzなら間隔は0.000125秒です。
高い標本化周波数ほど観測する点と点の時間間隔が短くなります。
ただし点を沢山取るだけでは、標本化する前に混入した雑音が消える訳ではありません。
目的に合う信号帯域と装置の性能を考える必要があります。
5-2. 標本化定理とは?2倍より高い周波数が必要な理由
標本化定理は、一定の周波数範囲に制限されたアナログ信号を、標本の集まりから再構成するための条件を示す定理です。
基本的には、元の信号に含まれる最高周波数の2倍を超える標本化周波数を使います。
式で書くと「fs > 2 × fmax」です。
例えば元の信号の最高周波数が4kHzなら、標本化周波数は8kHzより高く設定するのが基本です。
教科書によっては「2倍以上」と説明されますが、丁度2倍の境界では最高周波数成分の扱いに注意が必要です。
実際の設計ではフィルタの特性も考え、余裕を持たせます。
なぜ回数が足りないと困るのでしょうか。
速く振動する波を、まばらな時刻でしか観測しないと、波が何回振動したのか区別出来無くなるからです。
例えば車輪が映画の中で逆回転しているように見える現象も、周期的な動きを少ない観測点で見る事が原因です。
音声信号でも同じ様な見かけの周波数の変化が起こります。
この現象を「エイリアシング」または「折り返し」といいます。
本来の信号には無い低い周波数成分が現れた様に見える事があります。
いったん折り返しが生じた後では、標本の値だけから正しい元の成分を区別する事が難しくなります。
そのため標本化の前には、不要な高周波成分を取り除くアンチエイリアシングフィルタを使います。
標本化周波数の半分を「ナイキスト周波数」といいます。
例えば44.1kHzなら22.05kHzです。
初心者は「標本化定理=最高周波数の2倍超」「ナイキスト周波数=標本化周波数の半分」「不足するとエイリアシング」と3点をセットで覚えましょう。
標本化定理が成立するのは、信号が適切に帯域制限されているなどの条件を満たす時です。
現実のマイクやセンサーの信号には、目的の帯域より高い成分が含まれる事があります。
そのまま標本化すると折り返しが起こる可能性があるため、A/D変換より前にアナログの低域通過フィルタを使って余分な成分を抑えます。
再生時のローパスフィルタとは、使う場所と目的が異なります。
入力側は折り返しを防ぎ、出力側は再構成に不要な成分を抑える、と整理しておきましょう。
標本化定理:fs >2 × fmax / ナイキスト周波数:fN = fs / 2
6. 量子化と量子化雑音の仕組み
6-1. 量子化とは?連続した値を段階的な数値に変える
標本化によって一定時間ごとの値を取り出しても、その値の大きさはまだ連続しています。
例えばある標本が1.234V、次が1.237Vというように、細かな違いがある状態です。
これを決められた数の段階に置き換える処理が「量子化」です。
例えば、細かい数字を整数に丸める場面を考えてみましょう。
3.7を4、5.1を5と言う様に、近い代表値に置き換えれば、取り扱う数字の種類を減らせます。
実際の量子化では、信号の範囲と段階の境界をあらかじめ決め、そのどこに入るかで値を選びます。
量子化の細かさに関係するのが「量子化ビット数」です。
nビットで表現出来る状態数は2のn乗です。
2ビットなら4段階、3ビットなら8段階、8ビットなら256段階、16ビットなら65,536段階になります。
値の段階が多いほど、元の信号を細かく表現出来る可能性が高まります。
ただし、量子化ビット数を増やすと、1標本を表すデータ量も増加します。
8ビットなら1標本に8ビット、16ビットなら16ビット必要です。
標本化周波数が「1秒間に何回測るか」を決めるのに対し、量子化ビット数は「1回の測定値をどれくらい細かく表すか」を決める、と考えると区別出来ます。
量子化では、連続した値を限られた代表値に置き換えるため、少しのずれが避けられません。
このずれが、次に説明する量子化誤差と量子化雑音です。
量子化の段階数が同じでも、信号の扱う範囲が違えば1段階の幅は変わります。
例えば0~8Vを8段階で表す場合と、0~80Vを8段階で表す場合では、後者の方が1段階が粗くなります。
量子化ビット数だけを見て精度を決めつけない事が重要です。
また、信号が設定した範囲を超えると、端の値に張り付く「飽和」やクリッピングと呼ばれる現象が起こります。
この場合は通常の量子化誤差よりも大きなひずみが発生する事があります。
量子化では、段階数と入力範囲をセットで考えましょう。
6-2. 量子化雑音とは?発生する原因と小さくする方法
量子化した値は、元のアナログ信号の値と完全には一致しない事があります。
この差を「量子化誤差」といいます。
そして、その誤差が信号に与える影響を一般に「量子化雑音」と呼びます。
例えば3.7Vを4.0Vに置き換えれば、差は0.3Vです。
音声の信号を量子化する時も、同じ様なずれが生まれます。
量子化の段階が粗い場合には、再生音の雑音や歪として気付かれる事があります。
量子化は有限個の値で表す処理なので、十分に細かくしない限り誤差を完全には避けられません。
量子化雑音を小さくする代表的な方法は、量子化ビット数を増やす事です。
同じ信号範囲を8段階で表すより、256段階で表す方が、代表値を元の値に近付け易くなります。
均一量子化で信号が量子化範囲内にある場合、誤差の大きさは原則として量子化間隔の半分以内です。
理想的な条件では、量子化ビット数を1ビット増やすと信号対量子化雑音比が約6dB改善する、という目安があります。
ただし、この説明は入力信号や誤差の統計的な性質などに前提があります。
どんな波形にも無条件で成立すると考えない様にしましょう。
なお、音声用のシステムでは、小さな信号をより細かく扱う非線形量子化などの工夫も行われます。
どの方式でも、音質や精度とデータ量のバランスが大切です。
結論として「量子化雑音=段階値への近似で生じる誤差の影響」と覚えておけば、発生する原因が理解出来ます。
量子化誤差を考える時は、元の値と代表値を横に並べて引き算すると良く分かります。
例えば3.2を3に丸めれば差は−0.2、3.7を4に丸めれば差は+0.3です。
誤差の符号や大きさは信号ごとに変化します。
そのため、量子化雑音を単なる一定の音量のノイズだと考えない方が正確です。
信号によっては誤差が規則的に現れ、歪みの様に感じられる事もあります。
量子化ビット数を増やす他、音声技術ではディザと呼ばれる小さな雑音を加える処理で、誤差の目立ち方を変える事もあります。
7. 符号化・復号・ろ波の仕組み
7-1. 符号化とは?量子化した値を0と1に変換する
PCMの最後の基本処理が「符号化」です。
標本化で時刻ごとの値を取り出し、量子化で決まった段階に分類したら、その段階番号を0と1のビット列に対応させます。
この操作によって、コンピュータで保存したり送信したりし易いデータになります。
例えば3ビット量子化では、8種類の段階を表現出来ます。
段階番号0なら000、1なら001、2なら010、3なら011、4なら100、5なら101、6なら110、7なら111と対応させる事が出来ます。
ある時刻の量子化値が5なら「101」、次が3なら「011」、更に次が7なら「111」となります。
時刻順につなげると「101 011 111」というビット列になります。
受信側が同じ対応表を知っていれば、ビット列から各標本の値を取り出せます。
ここで注意したいのが、「PCMの符号化=データ圧縮」では無い事です。
PCMでは、量子化した値をビット列にするのが基本です。
圧縮して容量を減らす処理は別に考えます。
また通信工学の別の場面では、「符号化」が誤り訂正のための処理を指す事もあります。
用語の意味は前後の説明で確認しましょう。
符号化によって数値が0と1になっても、元のアナログ信号が完全に保存される訳ではありません。
既に量子化した段階で、細かな値の違いは失われている場合があります。
従ってPCMを理解する時には、標本化・量子化・符号化を独立した処理として考える事が大切です。
ビット列にする際、何ビットごとに区切るかを知らなければ元の値を正しく読み取れません。
例えば「101011111」という9ビットを3ビットごとに読むなら「101」「011」「111」ですが、区切り位置がずれれば別の数字になります。
送受信機ではデータの区切りや並び順を決める仕組みも重要です。
また、音声ファイルでは標本化周波数、チャンネル数、量子化ビット数などの情報も必要になります。
PCMのビット列自体と、それを扱うファイル形式や通信プロトコルを混同しない様にしましょう。
7-2. 復号とろ波とは?デジタル信号を元の音に戻す
PCMデータを音として再生するには、0と1のビット列からアナログ信号を作る必要があります。
ここで行うのが「復号」「D/A変換」「ろ波」です。
まず復号では、受信したビット列を量子化値に戻します。
例えば「101」が値5に対応していれば、復号結果は5です。
次にD/A変換(デジタル・アナログ変換)を行い、その値に対応する電圧などを出力します。
一般的な回路では、次の値になるまで前の出力を保持する事があり、波形が階段状に見えます。
しかし、元のアナログ信号は通常、時間に対して連続した変化をしています。
そこで必要になるのが、ろ波(フィルタリング)です。
ろ波とは、必要な周波数成分を通し、不要な周波数成分を減らす処理です。
PCMを再生する場面では、低い周波数を通し高い周波数を減らす「低域通過フィルタ(ローパスフィルタ)」などを利用して、D/A変換の出力に含まれる不要な成分を抑えます。
大切なのは、ろ波をしたら標本化や量子化の誤差まで完全に消える訳では無い事です。
元の信号を高精度に再構成するには、標本化定理を満たしている事、量子化精度が十分である事、通信途中でデータが壊れていない事などが必要です。
流れを短くまとめると「ビット列→復号→D/A変換→ろ波→音声出力」です。
送信側の「標本化→量子化→符号化」と対にして覚えると、PCM全体が一本のつながった仕組みとして理解出来るでしょう。
低域通過フィルタは、特定の周波数を完全に通すか遮断するだけの単純な装置ではありません。
実際のフィルタでは、周波数が高くなるにつれて少しずつ減衰する領域があります。
そのため目的の音声帯域をどこまで残したいのか、どの程度不要な成分を減らしたいのかで設計が変わります。
また、スピーカーは電気信号を空気の振動に変える装置です。
復号した数字をそのままスピーカーに渡している訳ではありません。
「データに戻す復号」「電圧に戻すD/A変換」「信号を整えるろ波」は別々の役割です。
8. 変調方式の比較と良くある疑問
8-1. ASK・FSK・PSK・QAM・PCMの違いを一覧表で比較
ここまでの内容を一度まとめましょう。
ASKは振幅、FSKは周波数、PSKは位相を変えます。
QAMは直交する2成分を組み合わせ、複数の信号点でデータを表します。
これらはデジタルデータを搬送波に乗せて送るための方式です。
一方でPCMは、アナログ信号をデジタルデータに変えるための方式です。
音声をPCMでデジタル化し、そのデータをQAMで変調して送信する、といった組み合わせも考えられます。
役割が異なるため、どちらが優れているかを単純に比較する物ではありません。
基本的なASKは構成が分かり易い反面、振幅変動による影響に注意が必要です。
FSKは周波数の差で判断出来、振幅のゆらぎに強い受信構成を作れる場合がありますが、周波数間隔などによって帯域幅が変わります。
PSKは位相で情報を伝え、QPSKでは1シンボルあたり2ビットを表現出来ます。
QAMは16QAMで4ビット、64QAMで6ビット、256QAMで8ビットを1シンボルで表現出来ます。
しかし、状態数が多い方式ほど、一般的には雑音や歪みに対して高い受信品質が必要です。
PCMの精度は、標本化周波数や量子化ビット数などに大きく左右されます。
混同し易いPAMも忘れずに確認しましょう。
PAMは情報をパルスの振幅で表す技術です。
PCMでは標本化された信号をPAMとして説明する事がありますが、PAM自体が必ずPCMに含まれる訳ではありません。
「どんな情報を、何の状態に置き換えているのか」という視点で整理すれば、名称だけを覚えるより理解し易くなります。
選び方を実例で考えてみましょう。
低い消費電力や単純な回路を重視する場合と、限られた周波数帯域で出来るだけ大量のデータを送りたい場合では、適した方式が変わります。
更に雑音の多い環境では、信号点の間隔が広い方式が有利な事もあります。
実際の通信規格では変調方式を固定せず、通信品質に応じて切り替える技術も利用されます。
教科書にある「高速」「雑音に強い」といった特徴は、比較する条件によって変わり得るため、絶対的な順位ではなく基本傾向として理解しましょう。
| 方式 | 信号の表現方法 | 主な役割 |
|---|---|---|
| ASK | 振幅を切り替える | データの伝送 |
| FSK | 周波数を切り替える | データの伝送 |
| PSK | 位相を切り替える | データの伝送 |
| QAM | I/Qの成分を組み合わせる | データの伝送 |
| PAM | パルスの振幅を使う | パルスによる情報表現 |
| PCM | 標本化・量子化・符号化 | アナログ信号のデジタル化 |
8-2. 初心者が間違えやすいポイントと計算問題
変調方式とPCMは、仕組みを理解したあとで計算例を確認すると覚えや易くなります。
まずQAMのビット数は、信号状態の数をMとすると「log2(M)ビット」で求められます。
16QAMはlog2(16)=4ビット、64QAMはlog2(64)=6ビットです。
ここで「16QAMだから16ビット」と間違えない様にしましょう。
QPSKでは4種類の位相を使うため、log2(4)=2ビットです。
BPSKなら2種類なので1ビットです。
また、量子化ビット数がnビットなら2のn乗段階の値を表せます。
8ビット量子化なら256段階、16ビットなら65,536段階です。
QAMの状態数と量子化の段階数は計算の形が似ていますが、意味は異なります。
標本化定理の問題では、元の信号の最高周波数を確認します。
最高周波数が5kHzなら、標本化周波数は10kHzより高く設定するのが基本です。
一方、標本化周波数が44.1kHzであれば、ナイキスト周波数はその半分の22.05kHzになります。
PCMのデータ量は「標本化周波数×量子化ビット数×録音時間(秒)×チャンネル数」で計算出来ます。
例えば8,000Hz・8ビット・10秒・モノラルなら、8,000×8×10×1=640,000ビットです。
8で割ると80,000バイト、つまり80kBになります。
これはファイルのヘッダーなどを含まない、基本的な音声データ量です。
最後に、標本化と量子化の違いも再確認しましょう。
標本化は「いつ測るか」を一定間隔にする処理、量子化は「どの値として表すか」を限られた段階にする処理です。
試験では、用語の意味を一つずつ説明出来る様にしておく事が、計算問題を解く近道になります。
計算問題で迷わないコツは「何の数を求めているのか」を最初に確認する事です。
信号状態が何種類あるかを聞かれたら2のn乗、1シンボルで送れるビット数ならlog2(M)、PCMのデータ量なら標本化周波数と量子化ビット数などを掛けます。
また「ビット」と「バイト」を混同しない様にしましょう。
1バイトは8ビットです。
例えば640,000ビットを8で割れば80,000バイトになります。
kBを1,000バイトとして扱うのか、KiBを1,024バイトとして扱うのかも、問題の単位に合わせて確認する事が大切です。
PCMデータ量(bit)=標本化周波数(Hz)×量子化ビット数×時間(秒)×チャンネル数
9. まとめ:変調方式とPCMの仕組みを整理しよう
ASK・FSK・PSK・QAMは、デジタルデータを搬送波の状態に対応させて伝送するための方式です。
ASKは振幅、FSKは周波数、PSKは位相を利用し、QAMは直交する2つの成分を組み合わせて多くの信号状態を作ります。
16QAMは16種類の状態を持ち、1シンボルあたり4ビットの情報を表せます。
これに対してPCMは、アナログ信号をデジタルデータとして表すための方式です。
標本化で一定時間ごとの値を取り出し、量子化で決められた段階に置き換え、符号化で0と1のビット列に変えます。
標本化周波数が不足するとエイリアシングが起こるため、最高周波数の2倍を超える周波数で標本化する事が基本です。
量子化によって生じる値のずれが量子化誤差であり、その影響を量子化雑音と呼びます。
再生側ではPCMのビット列を復号し、D/A変換とろ波でアナログ信号を再構成します。
PAMはパルスの振幅で値を表す技術で、PCMの標本化段階を説明するときに登場しますが、PCMと同じ方式ではありません。
最も大切なのは、ASK・FSK・PSK・QAMは主に「データを運ぶための変調」、PCMは「アナログの情報を数字に変えるための技術」と役割を区別する事です。 波形図とPCMのフロー図を見返せば、専門用語の関係を整理し易くなるでしょう。
掲載している図はすべて学習用の模式図です。波形や信号点の値、ビットの割り当ては説明のための例であり、個別の通信規格の実測波形を表すものではありません。
コメント