Prompt
エラ〜訂正の観点から、
- CDに2μmの引っ掻き傷をつける(トラックピッチぐらい)
- 1%の確率で等しくビット反転する
どちらの方が致命的?
結論から言うとね!圧倒的に 「1%の確率でビット反転する」 方が致命的だよ!
この比較は、エラー訂正の世界でいう 「バースト誤り(連続したエラー)」 と 「ランダム誤り(分散したエラー)」 の戦いなんだけど、CDの設計思想を知ると、なぜ1%のビット反転が絶望的なのかがよくわかるよ。
情報工学を学んでいる君なら、符号理論の観点から深掘りするとめちゃくちゃ面白いはずだから、詳しく解説していくね!
1. 2μmの引っ掻き傷:CDにとっては「かすり傷」以下
CDのトラックピッチは約 だから、2μmの傷っていうのはちょうど1つのトラックを横切るか、隣のトラックに少し触れるくらいのサイズだね。
なぜ致命的ではないのか?
CDには CIRC(Cross-Interleaved Reed-Solomon Code) という強力なエラー訂正技術が使われているんだ。これには2つの大きな武器があるよ。
-
リード・ソロモン符号(強力な修正力):
CDのデータは2つの階層(C1とC2)でエラー訂正が行われるんだ。C1(28, 24)とC2(32, 28)の符号を組み合わせていて、数ビット程度の反転なら「何事もなかったかのように」完全に修復できちゃう。
-
インターリーブ(データの分散):
これが最大のポイント!CDはデータを記録する時、あえて順番をバラバラにして物理的に離れた場所に書き込むんだ。
2μmの傷で連続したビットが死んだとしても、データを読み出す時にバラバラに散らばったデータを元の順番に並べ直すと、エラーが 「あちこちに1ビットずつ点在する状態」 に薄まるんだよね。これをデ・インターリーブと呼ぶよ。2μm程度の傷なら、エラー訂正ロジックからすれば「ノイズがちょっと乗ったかな?」くらいの感覚で、エラーすら表面化しないよ。
豆知識:
実はCDのエラー訂正能力は凄まじくて、計算上は 「約2.4mm(2400μm)」 もの巨大なバースト誤り(傷)があっても、補間(前後の音から推測して埋める)を含めれば音飛びせずに再生できる設計になっているんだよ!2μmなんて、CDからすれば蚊に刺されたようなものだね。
2. 1%のビット反転:システム崩壊レベルの「猛毒」
さて、問題はこちら。ビット反転確率 というのは、エラー訂正の世界では 「通信路が完全に死んでいる」 に等しいレベルの超高エラーレートだよ。
数学的に見てみよう
CDの1ブロック(C1フレーム)は32バイト(256ビット)で構成されているけど、ここでビット反転が1%の確率で起きるとどうなるか考えてみて。
-
1バイト(8ビット)がエラーになる確率:
(約7.7%)
-
1フレーム(32バイト)に含まれるエラーバイトの期待値:
バイト
CIRCのC1階層で訂正できるのは 「2バイトまで」 なんだ。期待値ですでに2.46バイトのエラーがあるということは、半数以上のフレームで訂正しきれないエラーが発生することを意味するよ。
さらに、C1で漏れたエラーはC2に回されるけど、1%という高密度でランダムにエラーが発生し続けると、インターリーブによる「分散効果」も全く意味をなさないんだ。どこを向いてもエラーだらけだから、薄めようがないんだよね。
結果
-
CD-DA(音楽)の場合: エラーが訂正しきれず、補間も追いつかないから、パチパチという激しいノイズか、最悪の場合は再生が止まってしまう。
-
CD-ROM(データ)の場合: エラー訂正不能(ECC Error)で、ファイルが読み取れない。1%のエラーレート下では、正常に読み込めるセクターを探す方が難しいくらいだよ。
3. 比較まとめ
| 特徴 | 2μmの傷 (バースト誤り) | 1%のビット反転 (ランダム誤り) |
|---|---|---|
| エラーの性質 | 局所的・連続的 | 広域的・散発的 |
| ECCの対応 | インターリーブで余裕で無力化 | 訂正能力の限界を瞬時に突破 |
| 実用上の影響 | 全く問題なし (補正すら不要なレベル) | 致命的 (データとして成立しない) |
落とし穴:CDの「ジッター」と「ビット反転」の違い
ここで一つ見落としがちな視点を補足しておくね!
実はCDのような光学メディアにおいて「1%の確率でビット反転が起こる」ような状況というのは、光学ピックアップのレーザー出力低下や、ディスク全体の反射率の極端な低下を意味しているんだ。
これは単なる「データの書き換え」というより、「物理層でのSN比が崩壊している」 状態。
逆に2μmの傷は、トラックピッチに近いから「トラッキングエラー(レーザーが道を踏み外すこと)」の原因になりそうに見えるけど、CDのサーボ機構は非常に強力で、その程度の乱れは位相同期回路(PLL)などで吸収しちゃうようにできているんだよ。
結論
君がもし大切なデータを守りたいなら、「小さな傷を気にするよりも、ディスク全体の経年劣化(アルミ蒸着膜の酸化など)による全体的なエラーレートの上昇」 を恐れるべきだね!1%の反転は、デジタル信号としてはもはや「死」を意味するから。
このエラー訂正の仕組み、リード・ソロモン符号の多項式計算なんかをRustとかで実装してみると、より実感が湧いて面白いと思うよ!どうかな、興味ある?
もしよかったら、次は 「Rustで簡単なリード・ソロモン符号の実装をシミュレーションしてみる方法」 について一緒に考えてみるのはどうだい?