Sunset New York


Date/Time: 2006:08:05 19:48:10
Camera: FUJIFILM
Model: FinePix F401
Exporsure Time: 1/550
FNumber: 2.8
Aperture Value: 3.0
Focal Length: 10.5

Close

y2blog » 自作ディジタルオーディオ(コントローラボード試作)

8

30

2015

自作ディジタルオーディオ(コントローラボード試作)

簡単なコントローラボードを試作してみた



動作テスト中のコントローラ

ロジックボードを作成してDSDや非同期サンプリングレートコンバータ(ASRC) の動作チェックを行ってみる


先の記事ではデジットのデジタルオーディオキットのモジュールを使用して自作ディジタルオーディオに挑んでいる事を簡単に紹介したが、少し時間ができたのでシステム全体をコントロールする制御系のボード試作に取り掛かることにした.今回はプリント基板作成前の基本動作確認用なので、ユニバーサル基板に昔ながらのDIPタイプの汎用ロジックICで組んでみた.


デジットのデジタルオーディオキットのモジュールは、ハードウェア制御モード(ハードワイヤード、ショートピンコントロール)で簡単にテストできるように作成されており、初心者でも比較的簡単にディジタルオーディオ装置を組み立てる事ができるが、DSDなどの処理を行うにはDACなどをソフトウェアモードで動かす事が必須となり、PICやARMのCortexなどの組み込み系のマイコンやRaspberry pi などを用いてDACチップ等を制御する必要がある.


今回のコントローラボードはショートピンの抜き差しで設定を変更するのは現実的ではないので、外部のロータリースイッチ等で簡単に設定変更できるようにするためのものだ.勿論組み込み系のマイコンだけで制御する事も可能なのだが、開発途上なので敢えて汎用ロジックICを使ってハードウェア制御とソフトウェア制御の中間的な位置付けにしてある.


コントローラボードの機能は単純なもので、4系統のオーディオシリアル信号入力の切り替えと非同期サンプリングレートコンバータ(ASRC)の動作モード・サンプリングレート切替、それにXMOSやCombo384のPCM/DSDの出力ピンモード切り替えスイッチ機能を組み込んでいる.勿論、DSDモードに切り替えるにはDACの内部のレジスタにアクセスしてDAC自体をDSDモードに切り替える必要があるので、この部分は組み込み系のマイコンでソフトウェア制御するしか方法はない.


DACチップ側はデジットのPCM1792基板用のピンヘッダと、DIYINHKの AK4490 DAC、ES9018MK2 DAC用の10×2ピンヘッダの二種類を用意してあるので、これらのDAC基板を簡単に挿し替えることができるように作成してある.組み込みマイコン側でI2Cのチップアドレスなどの情報を元にDACの種別を自動で判定できるようにしておけば便利だろう.


 
主要モジュール

コントローラボード上で各種モジュールを簡単に挿し替えられるように作成してある
デジタルオーディオ信号ライン(茶:MCLK、緑:LRCK、白:BCLK、黄:DATA)を表側に配線しておいた

Testing PCM1792 DAC Module

PCM1792 DACモジュールで動作テストを行っている様子


Amanero Combo384を入手したので先ずは挙動を探ってみた


ハイレゾ対応の自作ディジタルオーディオ装置を組む場合の定番である、Amanero社のCombo384を入手したので、先ずは手始めにAudirvana PlusでUSBインタフェースのパラメータ情報を探ってみた.


Combo384は先に紹介した、DIYINHKのXMOSタイプの2倍以上の値段(日本円で約12,800円)なのだが、ボード自体の作りはしっかりしており、PCM384K, DSD128といった今流行のハイレゾに対応している.定番製品なので利用しているユーザも多く、最初のUSB DAIとしてCombo384を選んでおけば間違いはないだろう.


【 Amanero Combo384 の入手先 】

株式会社 テクソル (Amanero Combo384の日本の代理店)


Combo384データシート: COMBO384 USB TO I2S DSD CONVERTER



参考までにCombo384とDIYINHKのXMOSをAudirvana Plusのデバッグ情報機能を用いてダンプした情報を載せておく.



【 Amanero Combo384 のデバッグ情報】

Audirvana Plus rev. 1.5.12 debug information:
running on Mac OS X 10.11.0 with 16384MB RAM

User preferences:
Remote control: IR: on, Media Keys: on (with volume control: on)

Playlists
	Use UTF-8 for all: on
	Start playback at launch with audio file: on
	Remember playlist: on

Volume knob control in rotation axis

Sample rate converter
	iZotope 64bit SRC with no forced upsampling
	Polarity inversion: global=off, per track=off

Volume control
	DAC only
	Max volume limit = 100.0%

AudioUnits not in use

SysOptimizer is disabled

iTunes settings:
	iTunes integrated Mode: on
	Completely deactivate iTunes playback: on
	iTunes volume control: deactivated
	iTunes play position control: active
	iTunes safe factor: 1

Audio settings:
	Hog Mode: on
	Direct Mode: on
	Integer Mode: on	Mode 2
	Use Max I/O buffersize: off
	Max Mem for audio buffers: 6400MB
	Max Sample rate limit: None
	Sample rate switching latency: None

Direct Mode audio path

Currently playing in Integer Mode:
	Device: 2ch Non-mixable linear PCM Interleaved 32bits little endian Signed Integer aligned High in 32 bit, 8 bytes per frame @44.1kHz

Active Sample Rate: 44.1kHz
Hog Mode is on
Devices found : 5

List of devices:
Device #0: ID 0x26 AirPlay	Manufacturer:Apple Inc.	Model UID:AirPlay	UID:AirPlay
Device #1: ID 0x2b Built-in Output	Manufacturer:Apple Inc.	Model UID:AppleHDA:108	UID:AppleHDAEngineOutput:1B,0,1,2:0
Device #2: ID 0x32 DisplayPort	Manufacturer:Apple Inc.	Model UID:AppleHDA:108	UID:AppleHDAEngineOutputDP:3,0,1,1:0:{AC10-40BE-3832324C}
Device #3: ID 0x57 Combo384 AmanEro	Manufacturer:Amanero Technologies	Model UID:Combo384 AmanEro:16D0:071A	UID:AppleUSBAudioEngine:Amanero Technologies:Combo384 AmanEro:413-001:2
Device #4: ID 0x36 USB High Speed Audio	Manufacturer:D & M Holdings Inc.	Model UID:USB High Speed Audio:154E:1003	UID:AppleUSBAudioEngine:D & M Holdings Inc.:DA-300USB:14600000:1

Preferred device: Combo384 AmanEro	Model UID:Combo384 AmanEro:16D0:071A	UID:AppleUSBAudioEngine:Amanero Technologies:Combo384 AmanEro:413-001:2

Selected device:
ID 0x57 Combo384 AmanEro	Manufacturer:Amanero Technologies
Model UID:Combo384 AmanEro:16D0:071A	UID:AppleUSBAudioEngine:Amanero Technologies:Combo384 AmanEro:413-001:2

9 available sample rates up to 384000.0Hz
32000.0
44100.0
48000.0
88200.0
96000.0
176400.0
192000.0
352800.0
384000.0

Audio buffer frame size : 512 to 98304 frames
Current I/O buffer frame size : 512
Physical (analog) volume control: Yes
Virtual (digital) volume control: Yes
DSD capability: DSD via PCM 1.0
Preferred stereo channels L:1 R:2
Channel bitmap: Ox3, layout:
	Channel 0 mapped to 0
	Channel 1 mapped to 1
Number of channels: 2
Use as stereo device only: No
Simple stereo device: yes

1 output streams:
Number of active channels: 2, in 1 stream(s)
	Channel #0 :Stream 0 channel 0
	Channel #1 :Stream 0 channel 1

Stream ID 0x0 2 channels starting at 1
18 virtual formats:
	2 ch Mixable linear PCM Interleaved 32bits little endian  Float @32.0kHz
	2 ch Non-mixable linear PCM Interleaved 32bits little endian Signed Integer aligned High in 32bit @32.0kHz
	2 ch Mixable linear PCM Interleaved 32bits little endian  Float @44.1kHz
	2 ch Non-mixable linear PCM Interleaved 32bits little endian Signed Integer aligned High in 32bit @44.1kHz
	2 ch Mixable linear PCM Interleaved 32bits little endian  Float @48.0kHz
	2 ch Non-mixable linear PCM Interleaved 32bits little endian Signed Integer aligned High in 32bit @48.0kHz
	2 ch Mixable linear PCM Interleaved 32bits little endian  Float @88.2kHz
	2 ch Non-mixable linear PCM Interleaved 32bits little endian Signed Integer aligned High in 32bit @88.2kHz
	2 ch Mixable linear PCM Interleaved 32bits little endian  Float @96.0kHz
	2 ch Non-mixable linear PCM Interleaved 32bits little endian Signed Integer aligned High in 32bit @96.0kHz
	2 ch Mixable linear PCM Interleaved 32bits little endian  Float @176.4kHz
	2 ch Non-mixable linear PCM Interleaved 32bits little endian Signed Integer aligned High in 32bit @176.4kHz
	2 ch Mixable linear PCM Interleaved 32bits little endian  Float @192.0kHz
	2 ch Non-mixable linear PCM Interleaved 32bits little endian Signed Integer aligned High in 32bit @192.0kHz
	2 ch Mixable linear PCM Interleaved 32bits little endian  Float @352.8kHz
	2 ch Non-mixable linear PCM Interleaved 32bits little endian Signed Integer aligned High in 32bit @352.8kHz
	2 ch Mixable linear PCM Interleaved 32bits little endian  Float @384.0kHz
	2 ch Non-mixable linear PCM Interleaved 32bits little endian Signed Integer aligned High in 32bit @384.0kHz

18 physical formats
	2 ch Mixable linear PCM Interleaved 32bits little endian Signed Integer aligned High in 32bit @32.0kHz
	2 ch Non-mixable linear PCM Interleaved 32bits little endian Signed Integer aligned High in 32bit @32.0kHz
	2 ch Mixable linear PCM Interleaved 32bits little endian Signed Integer aligned High in 32bit @44.1kHz
	2 ch Non-mixable linear PCM Interleaved 32bits little endian Signed Integer aligned High in 32bit @44.1kHz
	2 ch Mixable linear PCM Interleaved 32bits little endian Signed Integer aligned High in 32bit @48.0kHz
	2 ch Non-mixable linear PCM Interleaved 32bits little endian Signed Integer aligned High in 32bit @48.0kHz
	2 ch Mixable linear PCM Interleaved 32bits little endian Signed Integer aligned High in 32bit @88.2kHz
	2 ch Non-mixable linear PCM Interleaved 32bits little endian Signed Integer aligned High in 32bit @88.2kHz
	2 ch Mixable linear PCM Interleaved 32bits little endian Signed Integer aligned High in 32bit @96.0kHz
	2 ch Non-mixable linear PCM Interleaved 32bits little endian Signed Integer aligned High in 32bit @96.0kHz
	2 ch Mixable linear PCM Interleaved 32bits little endian Signed Integer aligned High in 32bit @176.4kHz
	2 ch Non-mixable linear PCM Interleaved 32bits little endian Signed Integer aligned High in 32bit @176.4kHz
	2 ch Mixable linear PCM Interleaved 32bits little endian Signed Integer aligned High in 32bit @192.0kHz
	2 ch Non-mixable linear PCM Interleaved 32bits little endian Signed Integer aligned High in 32bit @192.0kHz
	2 ch Mixable linear PCM Interleaved 32bits little endian Signed Integer aligned High in 32bit @352.8kHz
	2 ch Non-mixable linear PCM Interleaved 32bits little endian Signed Integer aligned High in 32bit @352.8kHz
	2 ch Mixable linear PCM Interleaved 32bits little endian Signed Integer aligned High in 32bit @384.0kHz
	2 ch Non-mixable linear PCM Interleaved 32bits little endian Signed Integer aligned High in 32bit @384.0kHz
	


【 DIYINHK XMOS のデバッグ情報】

Audirvana Plus rev. 1.5.12 debug information:
running on Mac OS X 10.11.0 with 16384MB RAM

User preferences:
Remote control: IR: on, Media Keys: on (with volume control: on)

Playlists
	Use UTF-8 for all: on
	Start playback at launch with audio file: on
	Remember playlist: on

Volume knob control in rotation axis

Sample rate converter
	iZotope 64bit SRC with no forced upsampling
	Polarity inversion: global=off, per track=off

Volume control
	DAC only
	Max volume limit = 100.0%

AudioUnits not in use

SysOptimizer is disabled

iTunes settings:
	iTunes integrated Mode: on
	Completely deactivate iTunes playback: on
	iTunes volume control: deactivated
	iTunes play position control: active
	iTunes safe factor: 1

Audio settings:
	Hog Mode: on
	Direct Mode: on
	Integer Mode: on	Mode 2
	Use Max I/O buffersize: off
	Max Mem for audio buffers: 6400MB
	Max Sample rate limit: None
	Sample rate switching latency: None

Direct Mode audio path

Active Sample Rate: 96.0kHz
Hog Mode is off
Devices found : 5

List of devices:
Device #0: ID 0x26 AirPlay	Manufacturer:Apple Inc.	Model UID:AirPlay	UID:AirPlay
Device #1: ID 0x2b Built-in Output	Manufacturer:Apple Inc.	Model UID:AppleHDA:108	UID:AppleHDAEngineOutput:1B,0,1,2:0
Device #2: ID 0x32 DisplayPort	Manufacturer:Apple Inc.	Model UID:AppleHDA:108	UID:AppleHDAEngineOutputDP:3,0,1,1:0:{AC10-40BE-3832324C}
Device #3: ID 0x36 USB High Speed Audio	Manufacturer:D & M Holdings Inc.	Model UID:USB High Speed Audio:154E:1003	UID:AppleUSBAudioEngine:D & M Holdings Inc.:DA-300USB:14600000:1
Device #4: ID 0x60 DIYINHK USB Audio 2.0 Output	Manufacturer:DIYINHK 	Model UID:DIYINHK USB Audio 2.0:20B1:2009	UID:AppleUSBAudioEngine:DIYINHK :DIYINHK USB Audio 2.0:14110000:1

Preferred device: DIYINHK USB Audio 2.0 Output	Model UID:DIYINHK USB Audio 2.0:20B1:2009	UID:AppleUSBAudioEngine:DIYINHK :DIYINHK USB Audio 2.0:14110000:1

Selected device:
ID 0x60 DIYINHK USB Audio 2.0 Output	Manufacturer:DIYINHK 
Model UID:DIYINHK USB Audio 2.0:20B1:2009	UID:AppleUSBAudioEngine:DIYINHK :DIYINHK USB Audio 2.0:14110000:1

8 available sample rates up to 384000.0Hz
44100.0
48000.0
88200.0
96000.0
176400.0
192000.0
352800.0
384000.0

Audio buffer frame size : 29 to 4096 frames
Current I/O buffer frame size : 512
Physical (analog) volume control: Yes
Virtual (digital) volume control: Yes
DSD capability: DSD via PCM 1.0
Preferred stereo channels L:1 R:2
Channel bitmap: Ox3, layout:
	Channel 0 mapped to 0
	Channel 1 mapped to 1
Number of channels: 2
Use as stereo device only: No
Simple stereo device: yes

1 output streams:
Number of active channels: 2, in 1 stream(s)
	Channel #0 :Stream 0 channel 0
	Channel #1 :Stream 0 channel 1

Stream ID 0x0 2 channels starting at 1
32 virtual formats:
	2 ch Mixable linear PCM Interleaved 32bits little endian  Float @44.1kHz
	2 ch Non-mixable linear PCM Interleaved 24bits little endian Signed Integer aligned High in 32bit @44.1kHz
	2 ch Mixable linear PCM Interleaved 32bits little endian  Float @48.0kHz
	2 ch Non-mixable linear PCM Interleaved 24bits little endian Signed Integer aligned High in 32bit @48.0kHz
	2 ch Mixable linear PCM Interleaved 32bits little endian  Float @88.2kHz
	2 ch Non-mixable linear PCM Interleaved 24bits little endian Signed Integer aligned High in 32bit @88.2kHz
	2 ch Mixable linear PCM Interleaved 32bits little endian  Float @96.0kHz
	2 ch Non-mixable linear PCM Interleaved 24bits little endian Signed Integer aligned High in 32bit @96.0kHz
	2 ch Mixable linear PCM Interleaved 32bits little endian  Float @176.4kHz
	2 ch Non-mixable linear PCM Interleaved 24bits little endian Signed Integer aligned High in 32bit @176.4kHz
	2 ch Mixable linear PCM Interleaved 32bits little endian  Float @192.0kHz
	2 ch Non-mixable linear PCM Interleaved 24bits little endian Signed Integer aligned High in 32bit @192.0kHz
	2 ch Mixable linear PCM Interleaved 32bits little endian  Float @352.8kHz
	2 ch Non-mixable linear PCM Interleaved 24bits little endian Signed Integer aligned High in 32bit @352.8kHz
	2 ch Mixable linear PCM Interleaved 32bits little endian  Float @384.0kHz
	2 ch Non-mixable linear PCM Interleaved 24bits little endian Signed Integer aligned High in 32bit @384.0kHz
	2 ch Mixable linear PCM Interleaved 32bits little endian  Float @44.1kHz
	2 ch Non-mixable linear PCM Interleaved 16bits little endian Signed Integer aligned High in 16bit @44.1kHz
	2 ch Mixable linear PCM Interleaved 32bits little endian  Float @48.0kHz
	2 ch Non-mixable linear PCM Interleaved 16bits little endian Signed Integer aligned High in 16bit @48.0kHz
	2 ch Mixable linear PCM Interleaved 32bits little endian  Float @88.2kHz
	2 ch Non-mixable linear PCM Interleaved 16bits little endian Signed Integer aligned High in 16bit @88.2kHz
	2 ch Mixable linear PCM Interleaved 32bits little endian  Float @96.0kHz
	2 ch Non-mixable linear PCM Interleaved 16bits little endian Signed Integer aligned High in 16bit @96.0kHz
	2 ch Mixable linear PCM Interleaved 32bits little endian  Float @176.4kHz
	2 ch Non-mixable linear PCM Interleaved 16bits little endian Signed Integer aligned High in 16bit @176.4kHz
	2 ch Mixable linear PCM Interleaved 32bits little endian  Float @192.0kHz
	2 ch Non-mixable linear PCM Interleaved 16bits little endian Signed Integer aligned High in 16bit @192.0kHz
	2 ch Mixable linear PCM Interleaved 32bits little endian  Float @352.8kHz
	2 ch Non-mixable linear PCM Interleaved 16bits little endian Signed Integer aligned High in 16bit @352.8kHz
	2 ch Mixable linear PCM Interleaved 32bits little endian  Float @384.0kHz
	2 ch Non-mixable linear PCM Interleaved 16bits little endian Signed Integer aligned High in 16bit @384.0kHz

32 physical formats
	2 ch Mixable linear PCM Interleaved 24bits little endian Signed Integer aligned High in 32bit @44.1kHz
	2 ch Non-mixable linear PCM Interleaved 24bits little endian Signed Integer aligned High in 32bit @44.1kHz
	2 ch Mixable linear PCM Interleaved 24bits little endian Signed Integer aligned High in 32bit @48.0kHz
	2 ch Non-mixable linear PCM Interleaved 24bits little endian Signed Integer aligned High in 32bit @48.0kHz
	2 ch Mixable linear PCM Interleaved 24bits little endian Signed Integer aligned High in 32bit @88.2kHz
	2 ch Non-mixable linear PCM Interleaved 24bits little endian Signed Integer aligned High in 32bit @88.2kHz
	2 ch Mixable linear PCM Interleaved 24bits little endian Signed Integer aligned High in 32bit @96.0kHz
	2 ch Non-mixable linear PCM Interleaved 24bits little endian Signed Integer aligned High in 32bit @96.0kHz
	2 ch Mixable linear PCM Interleaved 24bits little endian Signed Integer aligned High in 32bit @176.4kHz
	2 ch Non-mixable linear PCM Interleaved 24bits little endian Signed Integer aligned High in 32bit @176.4kHz
	2 ch Mixable linear PCM Interleaved 24bits little endian Signed Integer aligned High in 32bit @192.0kHz
	2 ch Non-mixable linear PCM Interleaved 24bits little endian Signed Integer aligned High in 32bit @192.0kHz
	2 ch Mixable linear PCM Interleaved 24bits little endian Signed Integer aligned High in 32bit @352.8kHz
	2 ch Non-mixable linear PCM Interleaved 24bits little endian Signed Integer aligned High in 32bit @352.8kHz
	2 ch Mixable linear PCM Interleaved 24bits little endian Signed Integer aligned High in 32bit @384.0kHz
	2 ch Non-mixable linear PCM Interleaved 24bits little endian Signed Integer aligned High in 32bit @384.0kHz
	2 ch Mixable linear PCM Interleaved 16bits little endian Signed Integer aligned High in 16bit @44.1kHz
	2 ch Non-mixable linear PCM Interleaved 16bits little endian Signed Integer aligned High in 16bit @44.1kHz
	2 ch Mixable linear PCM Interleaved 16bits little endian Signed Integer aligned High in 16bit @48.0kHz
	2 ch Non-mixable linear PCM Interleaved 16bits little endian Signed Integer aligned High in 16bit @48.0kHz
	2 ch Mixable linear PCM Interleaved 16bits little endian Signed Integer aligned High in 16bit @88.2kHz
	2 ch Non-mixable linear PCM Interleaved 16bits little endian Signed Integer aligned High in 16bit @88.2kHz
	2 ch Mixable linear PCM Interleaved 16bits little endian Signed Integer aligned High in 16bit @96.0kHz
	2 ch Non-mixable linear PCM Interleaved 16bits little endian Signed Integer aligned High in 16bit @96.0kHz
	2 ch Mixable linear PCM Interleaved 16bits little endian Signed Integer aligned High in 16bit @176.4kHz
	2 ch Non-mixable linear PCM Interleaved 16bits little endian Signed Integer aligned High in 16bit @176.4kHz
	2 ch Mixable linear PCM Interleaved 16bits little endian Signed Integer aligned High in 16bit @192.0kHz
	2 ch Non-mixable linear PCM Interleaved 16bits little endian Signed Integer aligned High in 16bit @192.0kHz
	2 ch Mixable linear PCM Interleaved 16bits little endian Signed Integer aligned High in 16bit @352.8kHz
	2 ch Non-mixable linear PCM Interleaved 16bits little endian Signed Integer aligned High in 16bit @352.8kHz
	2 ch Mixable linear PCM Interleaved 16bits little endian Signed Integer aligned High in 16bit @384.0kHz
	2 ch Non-mixable linear PCM Interleaved 16bits little endian Signed Integer aligned High in 16bit @384.0kHz
	


Combo384とDIYINHK XMOSの兼用デジタルアイソレート基板の作成


Combo384とDIYINHK XMOSをそのままDACに繋ぐと、USBポート経由でPCのノイズが持ち込まれてしまうので、デジタルアイソレータを挟んで信号を取り出すことにする.今回使ったデジタルアイソレートチップはSilicon Labs の SI8660ED-B-IS という型番で、16pinのSOICのパッケージの中に6回路分が組み込まれている.


Combo384とDIYINHK XMOSの機能は殆ど同じで、Combo384が XMOSにはない PCM 32.0KHz モードを備えていることと、モードインジケータのピン数が一つ多い事ぐらいだろうか.一方、XMOSにはCombo384にないものとして、リセット信号ピン(RST) と I2C関係のピン(SDA、SCL)があるが、DIYINHKでは専用のDAC(AK4490/ES9018MK2)と一緒にセット購入した場合のみXMOS側のI2C機能が働くようなので、単独でXMOSモジュールを購入した場合は、I2C機能は完全にOFFになっている.DACとのセット購入の場合はDACチップをXMOS側からI2Cで制御してPCM/DSD切り替えとデジタルボリュームコントロールなどができるようになっているようだ.


Combo384とDIYINHK XMOSの出力は共に10×2のピンヘッダから出力されており、デジタルアイソレート基板にどちらを挿しても使えるようにしてある.ちょっと工夫すればCombo384とDIYINHK XMOSのどちらが挿されているのかを組み込みマイコン側で判定して、それに応じたDACコントロールを行う事も可能だろう.


尚、DIYINHK XMOSは外部から+3.3V電源を供給する必要があるが、基板に3.3Vのシリーズレギュレータチップを追加して、USBの+5V電源から電源を供給できるように改造してある.XMOS基板上には3.3Vのシリーズレギュレータ(100〜200mAクラスの小型パッケージ)の配線パターンが用意されているので、当初はUSBの+5V電源から電源を供給する予定だったのかも知れない.今回はちょっと大きめの500mA〜1Aクラスのチップを無理矢理基板に取り付けてある.


デジタルアイソレータ基板

Amanero Combo384とDIYINHKのXMOS両対応のデジタルアイソレーションボード


Combo384とDIYINHK XMOSの “MUTE” 信号のタイミングを調べる


Combo384とDIYINHK XMOSには出力モード切り替えの際に、DACからノイズが出力されないように “MUTE” 信号を出力する機能が備わっている.DACチップやサンプルレートコンバータ、Digital Interfaceチップなどでは大抵ソフトウェアミュート機能が備わっており、チップ内部の制御レジスタや専用のミュートピンを制御することで、切り替え時のノイズを抑えることが可能だ.組み込みマイコンによるソフトウェア制御ミュート機能だけではタイミング的に間に合わないような場合は、オーディオ出力信号をハードウェア制御で強制的にミュートするしかない.


いずれにしても、モード切替時のMUTEコントロールは快適なオーディオ再生には欠くことのできない大切な機能だ.メーカー製の市販品であればきちんと作り込まれているので、切り替えノイズが出るような製品は無いとだろうが、自作の場合は殆どの場合この切り替えノイズに悩まされる事になる.


今回、Combo384とDIYINHK XMOSのMUTE信号だけで切り替えノイズの抑制ができるかどうか実験してみたが、単純なハードウェア制御だけでは切り替えノイズを抑制する事ができなかった.先ずはこの原因を探るため、簡易ロジック(プロトコル)アナライザの “LabTools” を用いてCombo384とDIYINHK XMOSのモード切替時の出力信号をトレースしてみた.


 ・PCM → DSD モードへの切り替え 
XMOS  - PCM to DSD

PCMモードからDSDへの切り替え時の信号の様子 [DIYINHK XMOS]

Amanero-PCM-TO-DSD

PCMモードからDSDへの切り替え時の信号の様子 [Combo384]


XMOS、Combo384共にPCMモードでの再生の終了時に “MUTE” 信号がONになっているが、DSDモードに切り替わる前に何故か一旦”MUTE” 信号がOFFになってしまっている.DSD信号に切り替わった後に”MUTE” 信号がOFFになってくれれば問題ないのだが、残念ながらDSD信号に切り替わる前に”MUTE”信号が解除されてしまうため、DSDに切り替わるまでの間ノイズまみれになってしまう.



 ・DSD → PCM モードへの切り替え 
XMOS - DSD to PCM

DSDモード終了時にPCMモードに戻った時の様子 [XMOS]


XMOS、Combo384共にPCM/DSDモードの切り替え信号(”DSD ON”)と “MUTE” 信号がきちんと同期していないのが原因のようだ.この辺の所は Combo384やXMOS側の原因なのかそれともPC側の制御ソフト(今回は “Audirvana Plus” に問題があるのかハッキリしないが、何れにしても切り替えノイズ対策をきちんと行うには組み込みマイコン側で”MUTE”信号を制御するしか対策は方策はなさそうだ.