エピ22 次はクロスインタリーブについて。
***
次はクロスインタリーブについて。
***
フレームに入っている音楽データはD1とD2の計 24 バイトです。訂正符号はC1とC2の計8バイトです。合せて 32 バイトになります。
ここでポイントとなるのが、符号化回路の中に遅延素子(要はバッファ)があって、入力したデータは直ぐには出力されず、出力されるのは過去の入力データであることです。最大で 108 フレーム過去のデータです。
その様子を図にしました(クリックして大きな図を見てね)
縦軸は1フレーム分の音楽データと訂正符号です。0〜11 はD1で、12〜15 はC2、16〜27 はD2、28〜31 はC1なのですが。
見ての通り、音楽データD1とD2は [0, 1, 8, 9, 20, 21, 2, 3, 10, 11, 22, 23] と [4, 5, 16, 17, 24, 25, 6, 7, 18, 19, 26, 27] という順番に入れ替えています。訂正符号C2とC1の順番はそのままです。
横軸は遅延を表していて、0の列は現時点の値で、1〜108 の列は過去に入力された値です。
橙色のセルに音楽データが入力されて、C1とC2が計算されて、何フレームか遅延して(データは左から右のセルに移動する)黄色のセルに到着したら出力されます。これがEFM変換されて円盤上のピットとランドとなります。
それから「1」が訂正符号C1の入力で、「2」がC2の入力です。計算後の訂正符号は0の列の「*」と「+」に入ります。
C1の入力「1」の半分は直ぐに出力されて、残りの半分は次のフレームで出力されます。C1自体も半分は直ぐに出力されて、残りも次のフレームで出力されます。なので連続する2フレームから 32 バイトを集めるとC1エラーの検出ができます。
C2の入力「2」は次のフレームで1バイトが出力されますが、他のバイトはバラバラと遅延して最後のバイトは 108 フレーム後の出力です。...、C1とC2は出力時に0/1を反転しますが、まぁ細かいことだからいいか。
このようにC2エラー検出の対象となる 28 バイトは1バイト毎に別々のフレームに入り、しかもそのフレームは2〜4フレーム離れた位置になります。
C2エラーの判定は 108 フレーム分を待たないとできないのですが、円盤上で1フレーム分がごっそり消失しても訂正できるのです。
円盤上で 1.5 ミリのキズができて、連続する8フレームにエラーが発生しても訂正可能だとか。これは2バイト誤りで処理した場合だから4バイト消失で処理するなら 14 フレームでもOKなはず。
*
C1は「タテ・ヨコチェックサム」の横方向にあたり、C2が縦方向という感じですかね。縦横の解釈は逆かもと思案中。円盤上のレイアウトで考えると、...。
***
CIRCの誤り訂正は種々の復号法があります。C1とC2の組み合せ方がポイント。
信頼性の高い復号法として良く知られている方法は、ソニー社の初のCDプレーヤー「CDP101」で採用された「スーパーストラテジー法」だそうです。CIRC用のLSI「CX-7935」は富士通が開発したんですって。
他には、テクニクスの「テクニクス・スーパーデコーディング・アルゴリズム方式」とか「テクニクス・ニュースーパー・デコーディング・アルゴリズム」とかあるって。
詳細不明だけど、カタログによると補間確率1/9000万時間らしい。9000万時間とは1万年だよ。どうやって評価したのかな。それから補間確率って何? CUエラーが発生する確率かな?
*
1986年6月号のアスキーの「CD−ROMのすべて 第3回デジタル信号処理」という記事で、CIRCの誤り訂正法をフローチャートにしているのを見つけました(月刊ASCII, VOL.10, #6, No.108, pp.153-164)。
なお、第1回は4月号で9月号が最終回(全6回の連載)です。
解説はちょっと難解気味で、この記事だけでは理解困難だけど、図表が豊富でカラーで綺麗だから見ているだけでも楽しいです! 図書館で見つけたら見てみて!
***
間違いの指摘とか疑問とか、ご意見・ご感想とかありましたら、どうぞ感想欄に!
***
2025.4.6 微推敲。
2025.4.10 微推敲。
2025.4.27 推敲。




