ビット誤り率(BER)シミュレーター 戻る
電気・通信

ビット誤り率(BER)シミュレーター

デジタル通信の品質を決める「ビット誤り率(BER)」を計算するツールです。信号対雑音比 Eb/N0・変調方式・誤り訂正符号化利得を変えると、ウォーターフォール曲線・コンスタレーション図・1秒あたりの誤りビット数がリアルタイムで分かり、回線設計の勘所を体感できます。

パラメータ設定
信号対雑音比 Eb/N0
dB
1ビットあたりのエネルギーと雑音密度の比
変調方式
1シンボルに載せるビット数を決める
ビットレート
Mbps
1秒あたりの誤りビット数の計算に使用
誤り訂正符号化利得
dB
FECにより実効Eb/N0を底上げする量
計算結果
ビット誤り率 BER
1秒あたりの誤りビット数 (bits/s)
スペクトル効率 (bits/symbol)
BER=10⁻⁶ 必要Eb/N0 (dB)
実効Eb/N0 (dB)
通信品質判定
コンスタレーション図 — 雑音を受けた受信シンボル

理想信号点(白)と判定境界(破線)の周りに、雑音でばらついた受信シンボル(色付き)が散布します。Eb/N0 が低いほど散らばりが大きく、点が判定境界を越えると誤りになります。

BERウォーターフォール曲線(BER 対 Eb/N0)
変調方式ごとの必要Eb/N0(BER=10⁻⁶)
理論・主要公式

$$\text{BER}_{BPSK}=Q\!\left(\sqrt{2\,E_b/N_0}\right),\qquad Q(x)=\tfrac12\,\mathrm{erfc}\!\left(\tfrac{x}{\sqrt2}\right)$$

AWGN通信路における BPSK のビット誤り率。Q(x) は標準正規分布の上側裾確率、erfc は相補誤差関数。Eb/N0 は真数(リニア)値。

$$\text{BER}_{16\text{-}QAM}\approx\tfrac38\,Q\!\left(\sqrt{\tfrac45 E_b/N_0}\right),\quad \text{BER}_{64\text{-}QAM}\approx\tfrac{7}{24}\,Q\!\left(\sqrt{\tfrac27 E_b/N_0}\right)$$

高次QAMの近似BER。高次QAMほど多くのビット/シンボルを得られる一方、同じBERを得るのに必要なEb/N0は高くなる(スペクトル効率と所要Eb/N0のトレードオフ)。

$$E_b/N_0\,[\text{lin}]=10^{(E_b/N_0[\text{dB}]+G_c)/10},\qquad N_{err}=\text{BER}\cdot R_b$$

実効Eb/N0(リニア)と1秒あたりの誤りビット数。Gc:符号化利得 [dB]、Rb:ビットレート [bps]。

ビット誤り率(BER)とは

🙋
「ビット誤り率(BER)」って、通信でよく聞きますけど、要するに何の割合なんですか?
🎓
ざっくり言うと「送ったビットのうち、何個に1個が化けたか」の割合だよ。0を送ったのに受信側で1と判定されたら、それが1ビットの誤り。BER=10⁻³ なら1000ビットに1個、10⁻⁶ なら100万ビットに1個が間違うということ。電話なら多少の誤りは許されるけど、銀行のデータ通信ではほぼゼロにしたい。だから通信設計では「この回線でBERが何桁になるか」が最重要の指標なんだ。
🙋
何でビットが化けちゃうんですか?電波がちゃんと届いてればいい気がするんですけど。
🎓
犯人は「雑音」だね。受信機の中でも宇宙からでも、ランダムな揺らぎが必ず混ざる。これをモデル化したのが AWGN(加法性白色ガウス雑音)だ。信号の電圧に雑音の電圧が足し算される。雑音が小さければ判定を間違えないけど、信号が弱い・雑音が大きいと、0と1の境界線を雑音が押し越えてしまう。だから効くのは絶対的な信号強度じゃなく「信号と雑音の比」——Eb/N0 なんだよ。左のスライダーで Eb/N0 を下げてみて。BERがぐんと悪化するから。
🙋
本当だ、8dBを5dBにしただけでBERが何桁も悪くなりました。グラフの線が滝みたいに落ちてますね。
🎓
それがまさに「ウォーターフォール曲線」だ。BERは Eb/N0 にものすごく敏感で、ある領域からは滝のように急峻に落ちる。BPSKなら 8dB で約 2×10⁻⁴ だけど、11dB まで上げると 10⁻⁶ を切る。たった3dB——電力で2倍——で誤りが100分の1以下になる。逆に言えば、ぎりぎりの設計だと少しの劣化で一気に通信が破綻する。実務ではこの急峻さを意識して、必要BERに対して数dBのマージンを取るんだ。
🙋
変調方式を 16-QAM や 64-QAM に変えると、同じ Eb/N0 でもBERが悪くなりますね。高次のほうが良さそうなのに、なぜですか?
🎓
高次QAMは「1回の送信(1シンボル)に何ビット載せるか」を増やしているんだ。BPSKは1ビット、64-QAMは6ビット。だから周波数あたりの伝送量=スペクトル効率は6倍。ただし上のコンスタレーション図を見て。64-QAMは64個の信号点をぎゅうぎゅうに詰めるから、点と点の間隔が狭い。雑音で少しずれただけで隣に飛び込んで誤る。だから同じBERを得るには、64-QAMはBPSKより8dBも多くEb/N0が必要になる。「速さ」と「強さ」のトレードオフだね。
🙋
じゃあ Eb/N0 が足りないときは、変調を落とすしかないんですか?「符号化利得」のスライダーは何ですか?
🎓
いい質問。それが誤り訂正符号(FEC)だ。送信側で冗長なビットを付けておくと、受信側で多少の誤りを訂正できる。その効果を「同じBERを得るのに何dB Eb/N0を節約できたか」で測ったのがコーディングゲイン。例えば5dBのゲインがあれば、ウォーターフォール曲線がまるごと左に5dBずれる。実際の衛星通信や4G/5Gでは、ターボ符号やLDPC符号で数dBのゲインを稼ぎ、弱い電波でも実用的なBERを実現しているんだ。スライダーを上げると、必要Eb/N0が下がるのが分かるよ。

よくある質問

AWGN(加法性白色ガウス雑音)通信路では、BPSK のビット誤り率は BER = Q(√(2·Eb/N0)) で求めます。Q(x) は標準正規分布の上側裾確率で、Q(x) = ½·erfc(x/√2) と相補誤差関数 erfc で計算できます。Eb/N0 は1ビットあたりのエネルギーと雑音電力スペクトル密度の比です。本ツールは erfc を Abramowitz-Stegun の有理近似(精度約1e-7)で実装し、QPSK・16-QAM・64-QAM もそれぞれの理論式で計算します。
高次変調は1シンボルに多くのビットを詰め込むため、コンスタレーション(信号点配置)の点と点の間隔が狭くなります。間隔が狭いほど雑音でわずかにずれただけで隣の判定領域に飛び込み、誤りになります。同じ BER=10⁻⁶ を得るのに、BPSK/QPSK は約10.5dB、16-QAM は約14dB、64-QAM は約18.5dB の Eb/N0 が必要です。つまり「スペクトル効率(bits/symbol)」と「必要 Eb/N0」はトレードオフの関係にあります。
誤り訂正符号(FEC)は冗長ビットを付加して受信側で誤りを訂正する技術です。その効果は「同じ BER を達成するのに必要な Eb/N0 を何 dB 下げられるか」というコーディングゲインで表します。本ツールでは実効 Eb/N0 = Eb/N0 + 符号化利得 として扱い、ウォーターフォール曲線全体を左へシフトさせます。例えば 5dB のゲインがあれば、雑音が多い回線でも符号化なしより 5dB 良い BER が得られます。
横軸に Eb/N0(dB)、縦軸に BER を対数目盛で取ったグラフです。Eb/N0 を上げていくと、ある領域からBERが滝のように急峻に下がるため「ウォーターフォール(滝)曲線」と呼ばれます。例えば BPSK では Eb/N0 を 8dB から 11dB に上げるだけで BER が約 2×10⁻⁴ から 10⁻⁶ 以下まで2桁以上下がります。設計では必要な BER を満たす最小の Eb/N0 を曲線から読み取ります。

実世界での応用

移動体通信(4G/5G)の適応変調:スマートフォンの基地局は、電波状況に応じて変調方式を瞬時に切り替えます。基地局の近くで Eb/N0 が高いときは 64-QAM や 256-QAM で高速通信し、セル端で電波が弱くなると QPSK や BPSK に落として、BERを許容範囲に保ちます。これを適応変調符号化(AMC)と呼び、本ツールの「変調方式ごとの必要Eb/N0」グラフは、まさにこの切り替え判断の根拠になる関係です。

衛星通信・深宇宙探査:地球から遠く離れた探査機は、電力も周波数も限られ、Eb/N0 が極端に低い過酷な回線です。ここでは強力な誤り訂正符号(LDPC符号、ターボ符号、かつてはたたみ込み符号+リード・ソロモン符号)で大きなコーディングゲインを稼ぎ、BPSKやQPSKのような頑丈な低次変調と組み合わせて、わずかな受信電力でも画像データを誤りなく届けます。

光ファイバ通信のリンクバジェット:長距離光通信では、ファイバ損失・分散・受信器雑音を積み上げてリンクバジェットを作り、受信端の Eb/N0 を見積もります。要求 BER(一般に 10⁻¹² 以下)を満たすには、増幅器の間隔や前方誤り訂正(FEC)のオーバーヘッドを設計します。本ツールのウォーターフォール曲線の「急峻さ」を理解すると、なぜ数dBのマージン確保が死活問題になるかが分かります。

無線LAN・IoT機器の通信品質評価:Wi-Fi やLPWA(LoRa、Sibox等)の機器開発では、受信感度試験で「規定のBERを満たす最小受信電力」を測定します。本ツールのように Eb/N0 と BER、変調方式の関係を把握しておくと、実測のBERカーブが理論曲線からどれだけ離れているか(実装損失)を評価でき、アンテナや受信回路の改善余地を見積もれます。

よくある誤解と注意点

まず多いのが、「Eb/N0 と SNR(搬送波対雑音比 C/N)を同じものだと思い込む」ことです。Eb/N0 は「1ビットあたりのエネルギー」を基準にした比で、SNR や C/N は「帯域内の信号電力対雑音電力」の比です。両者は SNR = (Eb/N0)·(Rb/B)(Rb:ビットレート、B:帯域幅)の関係でつながっており、変調方式やロールオフ率によって換算係数が変わります。本ツールは Eb/N0 基準で統一しているため、実機の SNR メータの値とそのまま比較すると桁がずれます。比較するときは必ず換算してください。

次に、「本ツールの理論BERがそのまま実機で出る」と期待すること。ここで計算しているのは AWGN(白色ガウス雑音のみ)という理想的な通信路での理論値です。実際の無線回線には、マルチパスによるフェージング、シンボル間干渉、位相雑音、非線形歪み、同期誤差などが加わり、同じ Eb/N0 でも実測 BER は理論値より悪くなります。この差を「実装損失(インプリメンテーションロス)」と呼び、通常は1〜数dBあります。理論曲線は「これ以上は良くならない」下限の目安と考えてください。

最後に、「BERが小さければそれで良い」という単純な評価です。誤り訂正符号を使うと、ウォーターフォール曲線にはしきい値的な振る舞いが現れます。ある Eb/N0 を境にBERが急落する一方、その手前ではほとんど効果がない「ウォーターフォール領域」と、訂正しきれない誤りが残る「エラーフロア」が存在します。さらに、誤りはランダムに散らばるとは限らず、フェージング下では塊(バースト)で発生します。バースト誤りにはインタリーブが必要で、平均BERが同じでも誤りの分布次第で実用品質は大きく変わります。平均BERだけでなく、誤りの時間的な分布も併せて評価してください。

使い方ガイド

  1. Eb/N0スライダーを0〜15dBの範囲で調整し、信号対雑音電力比を設定する
  2. 変調方式(BPSK/QPSK/16-QAM/64-QAM)をプルダウンから選択する。64-QAMはスペクトル効率6bits/symbolで高速通信向き
  3. ビットレート(1Mbps〜100Mbps)と誤り訂正符号化利得(0〜10dB)を設定後、「シミュレーション実行」ボタンをクリックしてウォーターフォール曲線と必要Eb/N0を表示

具体的な計算例

16-QAMでビットレート10Mbps、誤り訂正符号化利得3dB、Eb/N0=12dBの場合:スペクトル効率4bits/symbol、実効Eb/N0は15dB(12dB+3dB)となり、ウォーターフォール曲線上のBER≈10⁻5が得られます。1秒あたりの誤りビット数は約100bits/sになります。同じ通信品質でもBPSKなら20dB以上のEb/N0が必要となり、システム設計時の周波数帯域効率の差が明確になります。

実務での注意点