ボクにもわかる地上デジタル - 地デジ方式編 - S/PDIF
(デジタルオーディオ端子)


共立電子 SK10 S/PDIF Digital Audio IF Adapter

S/PDIFとは(SPDIFとは)

 このページでは、デジタルオーディオインタフェースであるS/PDIF方式について説明しています。
 S/PDIFとは「Sony Philips Digital Interface」の略でSONYとPhilipsが定めた規格です。CDやDAT、MD、アンプといったオーディオ機器に搭載されており、無劣化でのダビングが行えます。
 端子の形状によって以下の3タイプがあり、最も普及しているのが東芝が規格化した角型の光コネクタTOSLINKです。また、SHARPが規格化した直径3.5mmのステレオミニプラグと同一形状の光ミニプラグも存在します。光ミニプラグは、角型と区別するために丸型コネクタとも呼ばれています

S/PDIF端子の種類
タイプ 規格 備考
角型(TOSLINK) 東芝 据置型のオーディオ機器などで使用
されている
光ミニプラグ SHARP ポータブル機器やAppleのMacintosh
(Mac)で使用されている
同軸(RCAピンジャック) RCA 海外製品や旧式機器、高級機などで
使用されている


角型(TOSLINK)
光ミニプラグ
光デジタルオーディオプラグの一例
上:角型=東芝TOSLINK規格
下:丸型=シャープ光ミニプラグ

 これらのデジタルオーディオインタフェースの機器側コネクタは東芝やSHARPから販売されています。電気信号を光に変換したり光を電気信号に変換する部分がコネクタに内蔵されているので、電源とデジタルオーディオ信号を接続するだけで使用できます。しかも、光伝送なので機器間のデジタルノイズの回り込みが発生しにくい利点があります。
 一方で、光コネクタ部が一つの部品になってしまっているので、光変換の特性を微調整することが出来ない課題があります。このため、高級オーディオでは、特性を調整しやすい同軸コネクタを使用することが多いです。
 なお、本ページの最初に掲載している写真は共立電子で売られているSK10 S/PDIF Digital Audio IF Adapterです。光と同軸をそれぞれ入出力1系統ずつが搭載されており、デジタルオーディオインタフェースの実験に便利です。しかし、SK10は同軸コネクタのGNDが基板のGNDに接続されており、接続方法によってはGNDがループしてしまう場合がありました。最新の「光同軸インターフェースキット DHI-DX」や「光同軸インターフェース DHI-B-t」ではトランスを挿入して、この問題を解決しています。

共立電子 光同軸インターフェースキット DHI-DX
共立電子 光同軸インターフェースキット DHI-DX

出展:DHI-DX広告(共立電子産業)

S/PDIFデジタルオーディオの復調(SPDIF復調)

 デジタルオーディオの復調用のICが売られていますので、例えばPioneer製PD0052のような市販の復調ICを使用して復調します。復調ICにデジタルオーディオ信号を入力すると、クロック、データ、LRCKを出力しますので、デジタルフィルタをかけてDACに入力してアナログのオーディオ信号に変換します。

Pioneer デジタルオーディオ復調IC PD0052
Pioneer デジタルオーディオ復調IC PD0052

参考文献:PD0052 データシート(パイオニア)

 また、デジタルオーディオの復調回路を内蔵したマイコンもあります。例えば、インターフェース2010年6月号に付属しているSH-2Aマイコン(SH72620)を使ってデジタルオーディオ信号を簡単に取り扱うことが可能です。
 下図にSH-2Aマイコン(SH72620)にTOSLINKを接続した一例を示します。写真の左上がSH-2Aマイコンで、下側がTOSLINK接続用の変換回路、右側が東芝製のTOSLINK TOTX173とTORX173(もしくはTOTX172とTORX172)を搭載した共立電子 SK10です。TOTXが送信用TOSLINKコネクタでTORXが受信用です。現在、入手可能な最新のTOSLINKコネクタはTOTX177とTORX177で、従来の4端子から3端子へ端子数が減っていますが機能は変わりません。(177以外のTOTXはLEDの電流制限用の抵抗8.2kΩを外付けする必要がありました。)
 SH-2Aマイコン(SH72620)基板は「インターフェース2010年6月号()」に付属しています。マイコン基板のコネクタCN3に40ピンのピンヘッダを、X4に24.576MHzの水晶振動子を取り付け、基板背面のR14を取り外します。R14を取り外すのが難しい場合は、X4には何も実装せずに水晶発信器を購入もしくは製作してAUDIO_CLK入力に入力します。なお、雑誌にはピンヘッダや水晶振動子X4が付属していませんので、別途、購入する必要があります。(X4は写真のSH-2Aの右下に実装している水晶振動子です。)

SH-2Aマイコン(SH72620)にTOSLINKを接続
SH-2Aマイコン(SH72620)にTOSLINKを接続した例

SH-2Aマイコン(SH72620)+レベルメータ

SH-2Aマイコン(SH72620)+SPDIF+レベルメータ+SD

 SH-2AマイコンにTOSLINKコネクタを接続するにはSPIインタフェースと共用するための変換回路が必要です。インターフェース2010年6月号の回路だと3個のロジックICで構成していましたが、ここでは節約のためにロジック回路1個とトランジスタ1個の回路に変更しています。接続するための変換部の回路図は以下のとおりです。

TOSLINKコネクタ接続用の変換回路
(画像をクリックするとPDFがダウンロードできます)

TOSLINKコネクタ接続用の変換回路図

Part     Value          Device          Package      Library    Sheet

C1       0.1uF          C-US025-025X050 C025-025X050 rcl        1
C2       0.1uF          C-US025-025X050 C025-025X050 rcl        1
C3       10uF           C-US025-050X050 C025-050X050 rcl        1
CN3      toSH(CN3)      FE20-2          FE20-2       con-lsta   1
IC1      74VHC08        74HC08          DIL14        74xx-eu    1
L1       47uH           L-USLAL02       LAL02        rcl        1
R1       8.2k           R-US_0204/7     0204/7       rcl        1
R2       100k           R-US_0204/7     0204/7       rcl        1
R3       100k           R-US_0204/7     0204/7       rcl        1
R4       1k             R-US_0204/7     0204/7       rcl        1
T1       2SC1815        2SC1815         TO92-ECB     transistor 1
TOS1     TOTX173        TOTX173         TOTX173                 1
TOS2     TORX173        TORX173         TORX173                 1

       TOSLINKコネクタ接続用の変換回路部品リスト
ファイル名 説明
SH7262_SPDIF.zip ソースリストおよびROM化用BINファイル
TOSLINKによるレベルメータのソフトウェア

参考文献:インターフェース2010年6月号()
インターフェース2010年7月号()
各誌掲載のサンプルソースコード等
TOTX173,TORX173データシート(東芝)

 この変換回路ではロジックICに74HC08を使用しています。TOSLINKはTX側RX側ともに173と177の両方を記載していますが、TX側RX側ともに173もしくは177のどちからのTOSLINKを実装します。当方はTOTX173とTORX173で動作を確認しています。(TOTX177とTORX177は未確認です。)
 動作電圧は74HC08を3.3Vで動作させ、TOSLINKは5Vで動作させました。TOTX側はTTL 5V入力であれば3.3Vの入力があれば十分にHレベルと判断できます。TORX側はTTL 5V出力だと3〜4V程度なのでCMOS 3.3Vに直結できると考えました。TORXの出力電圧が高い場合は、入力トレラント機能(電源電圧以上の入力電圧に対応する機能)のある74VHC08を使用するか、ダイオードで電源に吸い上げた方が良いと思います。もしくは、3.3V動作のTOTX147とTORX147があるようですので、そちらを使用しても良いでしょう。
 なお、変換回路の基板の写真では、SHARP製の5V動作のTOSLINK(513T)を試しに載せてみました。こちらも、正しく送信していました。以下に角型のTOSLINKコネクタについて、まとめます。

角型TOSLINKコネクタの型番と電圧
メーカー 送信側コネクタ 受信側コネクタ 電圧 端子数
東芝 TOTX177 TORX177 5V 3
東芝 TOTX147 TORX147 3.3V 3
東芝 TOTX172,173,176 TORX172,173,176 5V 4
SHARP 513T 513R 5V 3
SHARP 313T 313R 3.3V 3


[参考@]レベルメータ接続例

 ここではバー表示LEDにPARA LIGHT製B-10005G3Y2Eの10バーLEDを使用し、GPIOのPG0〜PG7とPC5へ抵抗を経由して接続しました。

レベルメータの接続(PG0〜PG7,PC5)
LED SH-2A CPU SH-2A基板 CN3
No. LED色 pin GPIO pin 抵抗
1 VCC +3.3V VCC 560Ω
2 114 GPIO-PG7 8 560Ω
3 115 GPIO-PG6 7 560Ω
4 116 GPIO-PG5 6 560Ω
5 117 GPIO-PG4 5 560Ω
6 119 GPIO-PG3 4 470Ω
7 121 GPIO-PG2 3 470Ω
8 123 GPIO-PG1 2 470Ω
9 124 GPIO-PG0 1 560Ω
10 4 GPIO-PC5 26 560Ω


[参考A]SDカード対応 2010年11月06日 追記

 SDカードスロットを追加する方法について説明します。インターフェース2010年9月号()のP131にSPIポート0をSDカードへ接続する回路例が掲載されています。ところが、既にSPDIFでSPIポート0を使用しているので、SDカードとの接続をSPIポート1に変更する必要があります。若松通商製SPDIF基板においても、SDカードをSPIポート1に接続しているようなので、ここではSPIポート1を使用することにします。(但し、同誌の「SH-2Aマイコン基板用SD/MMCカード対応ローダの製作」で紹介されているアプリケーションローダを使用する場合はポート変更のためのソフトウェア変更が必要になります。)
 SDカードのピン番号は、カードの角に切り込みがある側が9番ピンで、ピンの並びは9番ピン、1番ピン、2番ピン、3番ピン、…7番ピン、8番ピン、そして、CDピンまたはWPピンと続きます。また、CPUに接続する6本の信号のすべてに100kΩのプルアップ抵抗を3.3Vに対して入れます。なお、micro SDの場合はSDの3番ピンのGNDとWPピンが省略されます。
 SDカードスロットへの接続表を下記に示します。

SDカードスロットへの接続(SPIポート1)
SDカード SH-2A CPU SH-2A基板 CN3
pin SD MMC pin 信号名 pin 備考
9 DAT2 - - open - 接続しない(SPIモード)
1 DAT3 #CS 100 SSL 22 チップセレクト
2 CMD DI 99 MOSI1 21 Master(CPU)→Slave(SD)
3 VSS VSS GND GND GND GNDへ接続
4 VCC VCC VCC +3.3V VCC 3.3V電源へ接続
5 CLK SCLK 101 RSPCK1 23 クロック
6 VSS VSS GND GND GND GNDへ接続
7 DAT0 DO 98 MISO1 33 Slave(SD)→Master(CPU)
8 DAT1 - - open - 接続しない(SPIモード)
CD CD CD 61 IRQ0 31 カード検出
WP WP WP 58 IRQ1 32 書込み保護

参考文献:インターフェース2010年9月号()
若松通商SH-2A用SPDIF拡張基板-回路図

 なお、このSDカート接続方法はインターフェース2010年11月号()「本格的MP3プレーヤの製作」のサンプルプログラムを「wakamatsu-spdif」の設定でビルドしても動作しました。

S/PDIFの構成(SPDIF構成)

 ここではS/PDIF信号のフォーマットについて説明します。インターフェース2010年6月号()のP131の図Aに簡単なフォーマット図が掲載されており、ブロック、フレーム、サブフレームに分割されている様子が示されています。ただし、サブフレームの区間の表示が誤っているので注意が必要です。
 S/PDIFのサブフレームは1サンプル分のオーディオデータを含む32ビットで構成され、ステレオの左右どちらかの片チャンネルが記録できます。左チャンネルのサブフレームと右チャンネルのサブフレームを合わせて合計64ビットで1フレームになります。さらに、192フレーム(384サブフレーム)12,288ビットで1ブロックという単位にまとめています。
 下表に48kHzサンプルステレオ時の構成を示します。「サブF数」は、その区間に含まれるサブフレームの数を示しています。

S/PDIFのブロック構成 (48kHzサンプリング時)
区間名称 容量
[bits]
サブ
F数
時間
[us]
備考
ブロック 12,288 384 4000 192フレームで構成
フレーム 64 2 20.833 1サンプル両チャンネル
サブフレーム 32 1 10.417 1サンプル片チャンネル

 SPIDFデータはBMC(Biphase Mark Code)が用いられ、1ビットにつき2シンボルに変調されます。前のシンボル(Logic)と反転するように変化し、次ビットがData0の場合はLogic11もしくは00に、Data1の場合はLogic10もしくは01になります。

BMC(Biphase Mark Code)
  次ビット
Data0 Data1





─┓
 ┃
─┻━━
Logic0
─┐  ┏━━━━━
 |  ┃ 1  1
─┴──┛
     Logic11
─┐  ┏━━┓
 |  ┃ 1 ┃ 0
─┴──┛  ┗━━
     Logic10
─┳━━
 ┃
─┛
Logic1
─┬──┓
 |  ┃ 0  0
─┘  ┗━━━━━
     Logic00
─┬──┓  ┏━━
 |  ┃ 0 ┃ 1
─┘  ┗━━┛
     Logic01

参考文献:http://blog.ratocsystems.com/pcaudio/2008/06/23-digital-audi.html

 以上のようにオーディオデータ1サンプルにつき、2サブフレーム、64ビット、128シンボルが含まれているので、1シンボルの動作周波数はサンプリング周波数の128倍になります。
 したがって、等倍〜4倍までのオーバーサンプリングでS/PDIFを動作するためのクロックは以下のようになります。

S/PDIFの動作クロック
サンプル速度 32kHz 44.1kHz 48kHz
ブロック長 6.000[ms] 4.354[ms] 4.000[ms]
サブフレーム長 15.625[us] 11.338[us] 10.417[us]
ビット長 488.281[ns] 354.308[ns] 325.521[ns]
クロック ×1 (128fs) 4.0960[MHz] 5.6448[MHz] 6.1440[MHz]
×2 (256fs) 8.1920[MHz] 11.2896[MHz] 12.2880[MHz]
×4 (512fs) 16.3840[MHz] 22.5792[MHz] 24.5760[MHz]

S/PDIFのフォーマット(SPDIFフォーマット)

 前節に引き続き、ここではS/PDIFのフォーマットのうちサブフレームの構成について説明します。
 1サブフレームの中には同期をとるためのSyncコード(4bits)、オーディオデータ(24bits)、VUCP制御情報(4bit)の順に構成されています。これらのコードについて順に説明してゆきます。

S/PDIFのサブフレームのフォーマット
SYNC
(4)
オーディオデータ 制御(4)
24bit Audio(24) Y
1
U
1
C
1
P
1
AUX(4) '0'(4) 16bit Audio(16)

Syncコードとは
 Syncコードは同期をとるためのプリアンブルを含む先頭のコードです。Syncコードには4ビットが割り当てられていますがBMCをかけませんので、8シンボルのデータで構成されています。
 以下に3種類のSyncコードについてまとめます。シンボルが2種類あるのは前のデータがLogic0か1かで先頭のシンボルが変わるからです。ただし、実際にはエラーが発生しない限りLogic0とLogic1の出現回数がそれぞれ偶数個であるので、Logic1からしか始まりません。(両対応の検出用ロジック回路を試作しましたが、片側が全く検出しないことから、ようやく気づきました。)

S/PDIFのSync Code
Code シンボル 役割
1110 1000 (0xE8)
0001 0111 (0x17)
ブロックの先頭&左chを示す
1110 0010 (0xE2)
0001 1101 (0x15)
フレームの先頭&左chを示す
1110 0100 (0xE4)
0001 1011 (0x13)
サブフレームの先頭&右chを示す

 B Codeはブロックの先頭のサブフレームに使用され、以降の383個のサブフレームにはMまたはWが用いられます。

S/PDIFのサブフレーム形式
フレーム0 フレーム1 フレーム191
先頭
   L0

   R0

   L1

   R1

  L191

  R191

オーディオデータ
 Syncコードに引き続きオーディオデータが入力されます。24ビットのオーディオデータの場合はLSBファーストで24ビットを入力します。しかし、16ビットの場合は先頭の8ビットを0として9ビット目(Syncを含めると13ビット目)からデータを入力します。
 オーディオデータはBMC変調がかけられますので、前途のBMC変調の変換表にしたがって24ビットにつき48シンボル分のデータを生成します。
S/PDIFのオーディオ部
24bit Audio(24)
AUX(4) '0'(4) 16bit Audio(16)

VUCP制御情報
 VUCP制御情報はサンプルの有効性を示すVビット、時間情報を表すUビット、チャンネル状態を表すCビット、伝送誤りを検出するためのPビットの4情報を表します。1つのサブフレームに各情報が1ビットずつ(計4ビット)割り当てられています。
 VビットとPビットは各サブフレーム単位に情報が付与されます。また、UビットとCビットは1ブロック単位に情報が付与されます。1ブロックには384サブフレームがあり、2つのサブフレームで同じ値を入れるので、UCの各情報毎にそれぞれ192ビット情報を含めることが出来ます。(つまり、1フレームにつき各情報1ビットが入ることになります。)

VUCP制御情報
Code 情報名 役割
Validity status サンプル有効性(エラー時'1')
User Data ユーザ情報(時間情報など)
Channel Status 既定の制御情報
Parity Bit 偶数パリティ

 Vビットはサブフレーム内の情報が有効かどうかを示します。通常は'0'が入りますが、入力ソース側に異常があった場合に'1'が入ります。
 Uビットはユーザ定義となっていますが、通常は再生時間などが入っているようです。
 Cピットには、著作権保護情報、プリエンファシス、チャネル数、カテゴリコード、サンプリング周波数などの制御情報が入っています。詳しくは、下記の参考文献を参照ください。
 Pビットは偶数パリティビットです。Pビットを含むSync以外の全てのビットを足して最下位ビットが'0'すなわち偶数であれば正常ですが、'1'になっているとエラーが発生していたことを検出できます。

参考文献:http://www.k3.dion.ne.jp/~kitt/craft/audio/er_count/c_stat.html

DAコンバータ(DAC)

 ここでは、デジタルオーディオの音声データをアナログ出力するDAコンバータ(デジタル・アナログ・コンバータ)について説明します。

自作DAコンバータの完成例
自作DAコンバータの完成例

 上図は自作DAコンバータの一例で、このDAコンバータの構成を下図に示します。

  ┏━━━━┓ ┏━━━━┓ ┏━━━━┓ ┏━━━━┓L ┏━━━━┓L
  ┃SPDIF  ┃ ┃Digital ┃ ┃Digital ┃ ┃DA   ┠→┃Audio  ┠─→
─→┃コネクタ┠→┃Audio IF┠→┃Filter ┠→┃Convert.┃R ┃OP-Amp. ┃R
入力┃TORX177 ┃/1┃PD0052 ┃/4┃PD00601 ┃/4┃uPD6376 ┠→┃OPA2134 ┠─→
  ┗━━━━┛ ┗━━━━┛ ┗━━━━┛ ┗━━━━┛ ┗━━━━┛出力
                                (LPF)
     Output→IN3  VCOOUT→XIN   BOUT→CLK   LOUT→inA K=2,Q=1
             LRCK→LRCK  WOUT→WDCK  ROUT→inB Fc=30kHz
              BCK→BCLK  LDOUT→LSI
             DATA→DATA  RDOUT→RSI

            DAコンバータの構成の一例
 DAコンバータ回路は大きく5ブロックに分かれています。まず、SPDIFコネクタ(角型)を使って光デジタルオーディオ信号を電気信号に変換します。次にDigital Audio IF(DAI:デジタルオーディオインタフェース)を使ってクロックの再生と復調を行い、音声データを取り出します。そして、クロックと音声データをデジタルフィルタを通してDAコンバータICに入力し、さらにローパスフィルタ(LPF)とバッファを行うためにオペアンプを経由して出力します。
 デジタルフィルタやオペアンプによるローパスフィルタはDAコンバータICがサンプリング周波数から折り返しで発生してしまうノイズを除去するために必ず必要です。例えば、48kHzのサンプリング周波数だと24kHz以上のノイズをローパスフィルタで除去する必要があります。24kHz以上の周波数は耳には聞こえない信号ではありますが、それがアンプを通過すると、耳に聞こえる雑音として出力されてしまいます。
 ところが、ローパスフィルタの特性は周波数に対して滑らかに変化するので、24kHzのノイズを落とそうとすると、高域のオーディオ信号を劣化させてしまいます。そこで、サンプリング周波数を何倍かに上げることで、その分だけローパスフィルタで除去する周波数を高めつつ、デジタルフィルタの使用が可能になり、オーディオ信号の劣化を防止することが出来るようになります。このような目的でサンプリング周波数を高めることをオーバーサンプリングと呼んでいます。
 24kHz以上のオーディオ周波数に近い信号はデジタルフィルタで除去します。使用したPioneer製のPD00601は24.1kHzで53dB以上の減衰量を持っているので、十分に除去することができます。またサンプリング周波数からの折り返しノイズについては24kHzの8倍の192kHzをオペアンプで構成するローパスフィルタによって除去します。オーディオの周波数から大きく離れているのでオーディオ信号を、ほとんど劣化させることなる除去することができます。実際に自作したDAコンバータ回路においても、20kHzまでの振幅特性がほぼフラットで、1dBを超えるような劣化は見られませんでした。

DAコンバータの製作(DACの製作)

 前述のDACの製作方法について、簡単に説明します。まず、基板は1.27mmピッチ(ハーフピッチ)のユニバーサル基板を使用します。使用したDAIはシュリンクDIP(1.78mmピッチ)なので通常のユニバーサル基板(2.54mmピッチ)では実装できません。また、デジタルフィルタやDAコンバータICも1.27mmピッチのSOPタイプのパッケージなので、基板に、直接、実装することができます。

自作DAC:電源とGNDの分離

 DAコンバータ回路の製作ではデジタルノイズがアナログに混入しないように注意する必要があります。
 電源とGNDは少なくともデジタル電源、5Vアナログ電源、OPA用アナログ電源の3つに分離します。他にもDAIのVCO用の電源やSPDIF用の電源を分離してもよいでしょう。ただし、分離する数が増えるほどGNDの接続方法で苦労します。初めての方は、分離することによる悪影響が出る可能性もあるので、前述の3つの分離に止めておいた方が良いでしょう。
 IC間のGND相互接続は、信号ラインの戻り信号GNDラインとして接続してゆきます。ICが十分に近ければ、IC間で共通の大きなGND島を配置してGNDを共有します。
 また、デジタル系とアナログ系のような異なる電源GNDの相互接続方法は2種類があります。一つは、混在ICの部分でGNDを相互接続する方法です。ただし電源の供給元のGNDでループを形成してしまうので、GND配線を共通の大きなGND島で共有するか、電源供給元からのGNDにインダクタを挿入してGNDループを防止する必要があります。もう一つのGNDの相互接続方法は電源の供給元から1点アースの方法でスター型のGNDラインで供給する方法です。微弱な低周波(オーディオなど)のアナログ回路や大電流を流すアナログ回路をデジタル回路などの他の回路から分離する部分に有効です。しかし、1点アースで分離されたIC間の信号の接続にノイズが混入しやすくなりますのでアナログ回路同士の接続には不向きです。今回、製作した基板の電源とGNDの接続図を以下に示します。

電源とGNDの接続図
電源とGNDの接続図(クリックでPDFを開く)

 下図はサンハヤトから発売されているノイズ対策用の銅箔テープ30mm幅タイプの写真です。500円ほどする高価なものですが、1.5mも入っているので、一度、買えばずっと使えると思います。(錆びが出ないように保管に留意する必要があります。)

自作DACで使用した銅箔テープ T-30C
銅箔テープ T-30C

 下図は初めにICの下部にGND島を作ったので、その時の写真です。ICの大きさのテープを張り、GNDのみ接続しています。DAIのVCO用の電源のGNDはDAIで相互接続しています。DAコンバータは後に変更できるようにデジタルGNDとアナログGNDを分離しており、ジャンパーピンで接続できるようにしています。

分離したGND島
分離したGND島(表)    分離したGND島(裏)

 分離した電源とGNDはこれらの組み合わせを考慮しながら相互に接続したり、分離したままで使用したりします。下図に、試作した基板を示します。

自作DAコンバータ
自作DAコンバータの例


スパゲティ状態の自作DAC基板(裏面)
スパゲティ状態の自作DAC基板(裏面)

 製作途中のGNDパターンの写真を少しづつ撮っていれば良かったのですが、背面の配線が埋もれて解析困難な状態です。密集度が高かったのと電源を1点でスター型に分岐させているので配線数が多かったのが原因です。そのうち作り直して掲載するかもしれませんが、廃止品のICだけに再製作の可能性は低いと思います。

自作DAC:使用部品

 使用したIC部品は秋月電子で購入しましたが、古いICのため在庫がなくなれば入手が困難になるでしょう。回路図は付属のデータシートに記載されています。信号のフォーマットは下記に示すように設定します。なお、他のICを使用する場合は各IC間の信号フォーマットを合わせる必要があります。

使用したIC、PD0052,PD00601,uPD6376の設定
IC pin 名称 設定 説明
DAI 20 MODE L 16bit MSBファースト 2の補数 出力
Digi-
tal
FIL.
3 MODE1 H 384fs/392fs
9 MODE2 L 16bit MSBファースト 2の補数 出力
LR独立
13 MODE3 H
DAC 1 fs SEL H 8fsモード LR独立入力

 各IC間のデジタル信号にはダンピング抵抗100Ωを挿入します。またデジタル信号が最短になるようにICの配置を工夫します。DAIとフィルタICの1番ピンが上に来るように並べると、DAコンバータICの1番ピンが右下になるように配置すると良いでしょう。
自作DACのICの並べ方
自作DACのICの並べ方

 また、レギュレータIC(LDOタイプ)も各供給先のICの近くに配置しました。レギュレータをICの近くに配置すると電源ラインのノイズの回り込みが心配ですが、前述のGND分離の負担が軽減できますので、むしろノイズの影響を受けにくくできると考えました。この基板に実装しているレギュレータICは全部で4個で、DAIのデジタル用、DAIのVCO用、SPDIFコネクタ用、5Vアナログ用です。10Vオペアンプ用の電源は別のACアダプタを使用しています。
 言うまでもなく、アナログ信号も最短かつデジタル回路から遠ざけて配置します。特にDAコンバータICとオペアンプとの間のフィルタ定数を含む回路部分は隅に追いやり、デジタルGNDからも遠ざけています。
 製作後に100VコンセントのACアダプタからの60Hzの回り込みが耳には聞こえないレベルで回り込んでいたので、オペアンプの電源端子に近いところに470uFのコンデンサを追加しました。デジタルノイズよりも手ごわかったです。

自作DAC:高音質オーディオ用の部品

 DAコンバータICからオペアンプおよび、出力端子に至る区間はオーディオ用の部品を使用します。もしくは、後で交換しやすいように、リードを折り曲げずに半田付けします。一般的にセラミックコンデンサはオーディオ用には適していないといわれています。したがって、フィルムコンデンサや積層フィルムコンデンサ、オーディオ用の電界コンデンサなどを使用します。
 下図はニッセイ電機製のポリエステルフィルムコンデンサAMZシリーズ(左)、東信工業製のオーディオ用ハイグレード電界コンデンサUTSJシリーズ(右上)、ニチコン製のオーディオ用両極性コンデンサMUSEシリーズ(右下)です。

オーディオ用コンデンサ
オーディオ用コンデンサの一例

 また、抵抗器は金属皮膜抵抗(誤差1%)を用いるのが一般的です。しかし、カーボン抵抗(誤差5%)の小型(1/6W品)をテスターで確認して誤差の少ないものを選別しても良いでしょう。たいてい10個も測れば、かなり高い精度の抵抗が見つかります。とくに、オペアンプ周りの抵抗に誤差があると周波数特性や左右の音圧のバランスが崩れる場合がありますので精度は重要です。カーボン抵抗の1/6W品と金属皮膜との音質の違いは少ないと思いますが、定格が1/4W以上のカーボン抵抗は特性が良くないようです。
 今回はローパスフィルタ部のコンデンサにフィルムコンデンサを、オペアンプの入力と出力のコンデンサにオーディオ用電界コンデンサを使用しました。また、一部の電源部に積層フィルムコンデンサを使用しています。ローパスフィルタ部(オペアンプの周囲)の抵抗は選別したカーボン抵抗を使用しています。

オーディオ用パーツを使用したオペアンプ周辺回路
オーディオ用パーツを使用したオペアンプ(LPF)周辺回路


自作DAC:オペアンプを用いたアクティブフィルタ(LPF)部

 アクティブフィルタ部は秋月で購入したDAコンバータIC(uPD6376)に記載の回路例を使用しました。このDAコンバータの出力は2.0Vp-pで、回路の利得は-1倍です。5V動作であっても目に見えるほど波形が歪んでしまうことはありません。しかし、聴覚上で聞こえてしまう歪を避けるためと、基準電位(5V)をアナログ用の電源からとれる点で、回路例に従い10Vで動作させました。ただし、この基準電位(5V)は音質に大きく影響しますので、別の電源を用意するか、オペアンプで生成するのが一般的です。もしくは、オペアンプ用に正負の電源を用意します。ただし、負電源のためにDCDCコンバータを使うのはノイズの原因になりますので十分に注意が必要です。例え、実験によってDCDCコンバータのノイズに問題が無かったとしても、同じケースの中に入れた時点でノイズが発生する場合があります。

自作DAC:電源の短絡事故

 ハーフピッチの基板は慣れていてもショートが絶えません。ランドとランドの間隔が0.2mm程しかないので、製造上の問題でショートしている場合もあるくらいです。視覚上の錯覚で、どう見ても短絡していないのにテスターで測定するとショートになっている場合もあります。
 したがって、短絡保護されたレギュレータを使用したり、ポリスイッチで保護しておかなければ、実験中に回路が壊れてしまう恐れがあります。また、製作しながらテスターで隣り合う信号が短絡していないかを確認しながら作業する必要があります。
 他にも半田球や半田屑が転がってショートする場合もあります。レギュレータ部はホットメルトで保護するなどの対策が必要です。ショートがなくなった段階で、しばらくは、この基板への半田付けを躊躇してしまうほど、頻繁に発生し、また修理にも手間がかかります。

 さらに、回路を頭で考えながら実装すると、かなりのリスクを伴います。部品を外すのにも、半田を取り去るにも、通常の基板以上に労力を必要とするからです。実際、それぞれのデータシートの回路図だけで実装していったのですが、一部に配線ミスがあり、その修正に製作時間の何10倍もの時間をかけてしまいました。必ず回路図を作成し、なるべくなら部品配置も決めてから作業することを薦めます。また、将来的に切り替える可能性のある設定用の信号などはビニール線で接続するなどの工夫も必要です。

自作DAC:その他の回路

 製作した基板には4個のLEDが実装されています。左からエンファシス検出、エラー検出、サンプリング周波数の48kHz入力検出、44.1kHz入力検出です。エンファシスとエラーは正論理で点灯しますが、サンプリング周波数は負論理で点灯するように接続します。出力電流が大きくならないように高輝度LEDに小電流(3mA程度)を流して使用しています。

自作DAC:4個のLEDの役割
LED pin 名称 点灯時(論理) 説明
LED1 25 EMPH H(正) エンファシス検出
LED2 26 ERR H(正) エラー検出
LED3 27 48K L(負) 周波数48kHz検出
LED4 28 44.1K L(負) 周波数44.1kHz検出

 なお、エンファシス検出はLEDで分かりますが、音質を調整する回路は含まれていません。エンファシスで録音されているものは少ないと思いますが、たまたま持っていた場合はトーンコントロールなどで調整してごまかして利用するかデエンファシス回路を製作してください。

 このDAコンバータは、エラーでノイズが発生しないようにリレースイッチを実装しています。駆動はエラー検出LEDの信号をトランジスタに入力してリレーを動作させています。リレーは低電流タイプを使用していますが、それでも消費電流が30mAと大きいので視聴時のノイズの原因になる恐れがあります。そこで、エラー時にリレーを通電するように設計しました。なお、リレー駆動時にポップノイズ(プツ音)が出ます。リレーを切り替えた時に100kΩで終端されるようにしていますが、もう少し低い抵抗にした方が良いのかもしれません。
 入力セレクタ機能で2入力に対応しています。DAIのPD0052は3入力に対応していて、S1とS2の設定で切り替えるようになっています。2入力しか使わない場合はS2をHに設定することで、S1のみでIN2とIN3を切り替えれます。秋月で購入したPD0052(DAI)のデータシートも同様の回路図になっています。
 製作した基板上のSPDIF光コネクタの右側のスペースに光コネクタを、もう1個、実装できるように空けているのですが、出力コネクタにするか入力コネクタにするかを悩んで空地のままになっていました。その後、他のDACとも比較するために出力コネクタにして数珠つなぎにして使用しています。

自作DAC:より良い音へのチューニング

 例えば、コンデンサをオーディオ用の物に変更すると音色に明らかな違いが感じられます。また、容量によっても、違いが出てきます。直流カット用の出力コンデンサに大容量コンデンサを使う場合がありますが、自作の場合は接続先が決まっているので、必要なインピーダンスを維持できる範囲で、少し小容量にしたほうが鮮明な音になる場合があります。これらのコンデンサの変更によって、高域が出るように感じられたり、ドラムなどの低域の音源の明瞭さが出てきたりするでしょう。
 とはいっても、交換前と交換後で時間が経っており、記憶だけで違いを感じることは困難です。したがって、(予め)パーツ交換前に似たような音色のDACやCDプレーヤなどのリファレンス機を見つけておいて、パーツ交換後にリファレンス機との違いを比較するのが良いでしょう。
 また、アンプそのものの特性であるノイズや音の苦みのように感じられる非線形歪といった特性についても確認が必要です。ノイズを確認する場合はパソコンなどのSPDIF出力から無音信号を入力して音量を上げてゆくと分かりやすいでしょう。ただし、突然に音が出ないように注意しておく必要があります。非線形歪は正弦波をDACから出力してFFT機能のついた測定器で測定します。測定器の代わりにパソコンのオーディオ入力信号をFFT解析するソフトも便利です。これらの特性は電源の容量やノイズ、アンプの性能、デジタルノイズのGNDループなどからの回り込みによって影響を受けます。

安価に市販されているDAC
安価に市販されているPC用DAC

 ところで製作前から気になる点は、最終的にどれくらいの音質まで高めれるかということだと思います。少なくとも、PC用などで売られている1万円前後のDACと比べれば、今回のような古いDACであっても十分に満足のできる高音質化が図れると思います。
 例えば、192KHz/24bitのDACを使ったものも安価に売られており、デジタルICそのものの性能では最新デバイスの方が格段に高音質です。ところが、電源、OPAやコンデンサといったスペックに現れない部分での劣化が著しくて、自作DACの方が勝ってしまうのです。安価な市販のDACは丁寧で滑らかな音色ですが、音の解像度的な部分が不足していてボヤケて感じられます。一方、自作DACは高級な音色ではありませんが、一つ一つの音源を聞き分けることが出来る明瞭さに長けていて、調整次第では単体コンポのDACに手の届きそうなところまで磨き上げることが出来そうで出来無いレベルといったところでしょう。

自作DAC:ケース入れ

 今回、ケースはSONY製デジタルオーディオセレクタSB-RX100Pを使用しました。自作DACにセレクタ機能は必要です。4入力3出力はDACにとって、ちょうどいいくらいの入出力数だと思います。また、赤外線リモコンも流用することができます。

SONY SB-RX100PにDACを搭載する
SONY SB-RX100Pに電源とDACを搭載する

SONY SB-RX100PにDACを搭載する
SONY SB-RX100PにDAC出力を追加

 ACアダプタは付属のものではなく、トランス式の12Vのものを使用しました。SB-RX100Pの回路は可変電圧レギュレータLM317を用いて6.5Vに落として供給しています。レギュレータの電圧差が大きいので、LM317をケースにビス止めしています。それでもケースの発熱がそれなりにあります。また、絶縁が必要なのでLM317のモールドタイプが便利です。

ACにトランス式12V使用した場合の電源配線図
ACにトランス式12V使用した場合の電源配線図

 下表は各ブロックでの消費電流と12Vでの供給電力です。LM317の部分で約1.2Wの発熱が生じることが分かります。

自作DACの消費電流
ブロック 電圧 消費電流 消費電力 供給電力
(12V)
SB-RX100Pメイン基板 6.5V -> 5V 80mA 400mW 1W
自作DAC基板-SPDIF 6.5V -> 5V 80mA 400mW 1W
自作DAC基板-OPA 12V -> 10V 8mA 80mW 0.1W

 上表から明らかなのは12Vの電源を使用しているために、多くの電力を無駄にしています。付属のACアダプタを使用してDCDCコンバータで12Vに昇圧することで供給電力は大幅に削減できます。ところが、DCDCコンバータで発生するノイズが課題になります。
 ノイズ対策として、DAC部の5Vは付属ACアダプタから直接、供給し、OPA電源のみを6.5Vから低ドロップレギュレータ(LDO)で5Vに変換してDCDCコンバータで12Vまで昇圧、そして10Vの3端子レギュレータで10Vに変換する方法があります。DCDCコンバータにはMINMAX製MAU104を用いると良いでしょう。GND絶縁タイプなのでGNDをDAC基板側で接続することでノイズの混入を低減できます。

DCDCを使用した低消費電力の電源配線図
DCDCを使用した低消費電力の電源配線図

 DCジャックの電力をDACに供給のための改造は容易です。SB-RX100PのDCジャックと半田面の5.0Vレギュレータとの間は、DIP面にジャンパー線が出ているので、電源、GNDの両方のジャンパー線を外し、外してできたリード穴に電源線を接続します。
 SPDIF信号も、出力1と3の信号がDIP面に出てきているので、それを使用するのが簡単です。出力を分岐するのが嫌な場合は、SPDIF信号を光出力に接続する最終段に、ループ防止用の出力1〜3それぞれが独立してオフできるAND回路が入っており、また、74HC08のANDゲート1回路あまっているので、これらを利用して出力バッファを構成しても良いでしょう。
 なお、SB-RX100Pの本体の電源がOFFの時は入力4に入力した信号が選択されているようです。出力のSPDIFの光出力端子は発光しませんが、信号を取り出すことが可能です。

関連ページ

方式編 - 著作権保護     著作権法 私的録画補償金制度
方式編 - HDMI端子とD端子   高度な映像接続方法と著作権保護
方式編 - iLink端子      i.Link(TS)、DV端子、IEEE1394 DTCP
方式編 - LAN端子とDLNA    LAN、DLNA、DRM、DTCP/IP、LANDISK
資料編 - レコーダー製品情報 地上デジタルチューナ内蔵製品

電子工作の関連ページ

設計編 - 自作アンテナ  八木アンテナ概略 アンテナ設計手順
設計編 - 自作アンテナ部品アンテナ部品の設計方法
設計編 - 自作ブースター 自作ラインブースターの製作方法
設計編 - プリアンプの実験CQ出版:地デジTV用プリアンプの実験
設計編 - RFコンバータ 任天堂RFモジュレータHVC-103を改造
設計編 - 7セグメント  表示器モジュールの製作 表示サンプル
方式編 - 赤外線リモコン 赤外線方式リモコン 家製協 NEC SIRC
方式編 - ZigBeeリモコン ZigBee無線方式 RF4CE
方式編 -デジタルオ-ディオSPDIF TOSLINK 角型光コネクタ 丸型
方式編 - 緊急地震速報放送テレビ ラジオでの速報放送と受信機
方式編 - デジタル    デジタル回路 論理回路 ロジックIC

地デジTopへ戻る