HOME > オーディオ工房 >ディジタルオーディオ エラーカウンタ,ステータスモニタ

CD(ディジタルオーディオ -S/PDIF) エラーカウンタ/ステータスモニタの製作 2001/1/29

サブウィンドウ(メニュー)を開く


2001/2/21更新:CDのエラー観察

What’s?

概要

訂正不可能エラー (CDなどの再生時、読み取りエラーが起こり、それを訂正できずに、プレイヤによって何らかの補間処理が行われた事態) をカウントする装置です。

ネタ的には一昔前ですが、Webでの検証記事は少ないようなので...

CD再生時における、訂正不可能エラーのレートは、十分低く、エラーそのものが直接、音質を変える要因にはなっていないのは周知の事実です。 雑誌や個人の Webページでも検証されていますし、エラー云々よりもっと踏み込んだ形で、個人的に実験されている方も大勢いらっしゃるでしょう。 (→ A-1DRIVE 関連記事) 従って、「何を今更」的な装置なのですが...個人的興味から、また、プレイヤのディジタル出力(DAI(Digital Audio Interface, S/PDIF)信号)から下記の チャネルステータスデータ等も抽出・表示できることから、 「有れば有るで面白いでしょう」ということで、製作することにしました。製作には MJ誌 1995/3,4 徳久氏「デジタルオーディオエラーカウンタの製作」が参考になります。

AudioPCIなどのサウンドカードを改造し、生ディジタルI/Oを付ける、というのが少し前に流行りましたが、 そのとき自分もやってみようと DAIレシーバ(CS8412)を購入したものの、結局実行には移せず、石が遊んでいてもったいない、という事情もあります(^^; (まぁ、当初からサウンドカード改造か、このエラーカウンタのどちらかを作ろうともくろんでいた。) いまだに「ディジタルなんだから、エラーが起こらない限り音は変わらない」という意見をたまに聞くが、そういった、古い言葉で言う「ディジタル神話」は世の中から早く払拭したいものだ...

CS8412は ¥3000弱の石です。今は 96kHzサンプリングに対応した CS8414も ¥4000ぐらいで手に入るようです。(若松通商で通販入手可)

エラーカウント

CDのエラーレートの検証記事は、CDプレイヤ内部から、直接、Tracking Errorや、Focusing Error、ないしC1/C2デコードエラーを観察しているものが多いです。 プレイヤの箱を開け、「TE」「FE」「VERF」などのピンが基板上に立っていれば、そこから何らかのエラー情報を取り出せる訳ですし...特に装置を自作しなくても良いので、ある意味簡単です。 ここで製作する装置は、プレイヤの外から、最終的な訂正不可能エラー(だけ、というかこれしかできない)をカウントするものです。

原理は、CDプレイヤなどの再生機器に訂正不可能エラーが発生し、補間・前値ホールド・ミュートなどが行なわれると、プレイヤは、Didital Out(S/PDIF)の信号の中の「Vフラグ」というのを HIにします。 本機は、入力された S/PDIF信号ストリームの中から、この Vフラグを抽出、カウントします。再生音を聴きながら、今まさに再生された音が、正当な音なのか確認できるというからくりです。 エラーはサブフレーム単位(1サンプリング点毎)でカウントします。S/PDIF信号からフラグを取り出しているので、再生機器が、DigitalOUTを持ってさえいれば、種類を問わず(CD,DAT,MD,PC,DVD...)使えます。

エラーの程度

これは未だに誤解のある部分なのですが、CD-DAとはいえ、エラー訂正機構はあります。 というか、CD-ROMなどの規格は CD-DAをベースに作られたものであり、CD-DAの訂正機構+α(+リトライ)という万全の体制でデータ化けを防いでいる訳です。

「CD-DAでエラーが起こったら、即 “補間”され、この補間法が音質を決めている」と、よく勘違いされるようですが、実際は、小さな規模エラーのものであれば 「方程式を解く」事によって、もとのデータと全く同じ物が復元できます。更に「CD-DAのエラー訂正能力は貧弱だ」と、また勘違いされるのですが、 それは、CD-ROMなどと比べた場合であって、例えば CD上の傷では円周方向に 2mm近くまでなら、完全訂正可能です。

今回製作するエラーカウンタは、「訂正できなかったエラー」をカウントするものです。これが、再生中にバシバシカウントされるようなら、 「エラーで音が変わるんだ」と一喝できますが...(←そうではないのです)



チャネルステータス/その他の情報表示

CS8412から取り出せる情報はすべて利用するという意気込みで、エラーカウント以外にも、S/PDIF信号の チャネルステータスデータ(著作権情報などを含む 32bitのコード)、 DAI信号の正当性、伝送エラー、サンプリング周波数及びその精度など、さまざまな情報を表示させます。ディジタルオーディオ・チェッカとしても面白いかと思います。

エラーレートを計るといっても、C1/C2エラーやジッタ成分を観察するものではないので、エラーやジッタ、サーボ電流云々などといった事と、音質との 相関をさぐるような程度の高いことをやるものではなく、あくまで参考程度のお遊び機器であります。(スペアナをボーッと見るのと似た雰囲気(爆))

ディジタルオーディオインタフェイス についての簡単な理解

IEC 60958 / EIAJ CP1201で規格化されているディジタルオーディオインタフェイスで、最も一般的で馴染みが深いのが、 S/PDIF(Sony/Philips Digital Interface Format)です。 1本の信号線でデータとクロック、チャネル識別のためのワードシンクをまとめて送る、DI-SYNCという方式に分類されます。

その中を流れる信号は、「ブロック」という大きな区切りがあり、1ブロックは、192個の「フレーム」から成ります。 フレームは2個の「サブフレーム」で構成されます。サブフレームは1サンプル分のデータを含む以下のような 32ビットで構成されます。

プリアンブル以外は、バイフェーズマークという変調が施されています。なかなか巧妙なもので、これによりプリアンブルの区別ができたり、 コネクタの極性が逆になっても正しくデータ転送ができるようになっています。

サブフレーム

いわゆる「SCMS」は、C bitの BitNo.2と No.8〜15のカテゴリコード及びLビット世代情報フラグを見る仕組みです。

民生用 Cbit(チャネルステータスビット)の内容

Digital Audio Interface 概要(CIRRUS LOGIC社,pdf)

回 路

回路は以下の通りです。MJ の回路と大部分は同じ構成ですが、入力部・リセット回路などを若干アレンジ、クロック精度表示関係の機能を追加してあります。 大別して、メイン基板、カウンタ基板、デコード基板に分割して作ります。

■メイン
メイン
リセットに関して
リセット

当初、エラーレポートをリセットするのに、図のような接続にしましたが、「No Lock」が点灯しっぱなしで、うまく動きません。

M0〜M3を HIにすると、CS8412自体がリセットされるので、エラーレポートもクリアされるだろうと思い、図のようにしたのですが... 良く考えると、リセットがかかってから、信号のブロックの先頭が来るまでは、物理的に PLLがロックしていても、信号レベルでは「No Lock」の状態ですから、 エラーレポートにもそれが表示され、全然リセットする意味が無い、ということなんですね。データシートを良く見ると、エラーレポートのクリアには、 「bringing SEL high for more htan 8 MCK cycles」とあったので、M0〜M3に入力していたリセット出力を、SELピンに入れ、M0〜M3は GNDに固定すれば良いことになります。

幸いにも出来上がった基板の2ヶ所をパターンカット・修正だけで済んだので一安心。上の回路図及び、後のパターンは修正を加えたものです。



■デコーダ
デコーダ

CS8412からの エラーレポート、Fs精度情報をデコードし LEDを点灯します。内容は以下の通りです。


■カウンタ
カウンタ
■電源
電源

電源は ACアダプタからとります。3端子レギュレータは 1Aタイプのものが良いでしょう。

データシート
CS8412DAI Receiver
74HC02Quad 2-input NOR gate
74HC14Hex schmitt inverter
74HC934bit Binary Counter
74HC123Dual monostable multivibrator
74HC1383-to-8 line decoder
74HC5958-bit shift register/latch (3-state)
74HC4511 BCD-to-Seven Segment Latch/Decoder/Driver
74HC4518Dual BCD Up Counters
TORX17xTOS Link



NEXT (製作・実装)...


HOME > オーディオ工房 >S/PDIF エラーカウンタ,ステータスモニタ