差動入力・差動出力回路
最近使いたくなっている差動入力差動出力増幅器を調べてみました。
計装アンプ
良く知られた計装アンプの前段です。
ゲインは 1+2Rf/Rg と言われます。
入力インピーダンスが高く特殊な回路も必要ありません。
完全な平衡信号以外は同相信号になるという欠点があります。
上記のゲインで
OUT1=(1+Rf/Rg)IN1-(Rf/Rg)IN2
OUT2=(1+Rf/Rg)IN2-(Rf/Rg)IN1
差動信号は『OUT1-OUT2』
同相信号は『OUT1+OUT2』
よってIN1+IN2が同相信号として出力されます。
同相信号が増幅されない、ということでもあります。
完全差動増幅器
差動入力タイプのADCドライバでよく見る回路です。
ゲインは Rf/Rg 。
双反転増幅回路なので入力インピーダンスは高くできません。その代わり、どんな信号を入力しても必ず差動出力するという特徴があります。
全ての同相入力電圧は帰還抵抗の許容差ぶんまで低下します。-40dBは楽に達成できるでしょう。
どんな信号も差を取ってしまい、同相電圧(動作点)が定まらないので3つ目の入力VCOMと同相帰還が必要です。
通常はVCOMに直流を入力し、完全差動増幅器IC内部で2出力の加算電圧と比較させます。
計装アンプ+完全差動増幅器
上記2つを組み合わせた回路です。
計装アンプの入力インピーダンスと完全差動増幅器の同相除去性能が得られます。
欠点は出力端から入力に帰還して全体を負帰還経路に入れられないことです。このため計装アンプの出力ノイズが完全差動増幅器のゲインぶんだけ大きく見えます。
全体を帰還しているアンプの場合は、入力から出力までの間に存在するノイズを帰還量分だけ低下させられます。
---
物量を投入すれば全てが手に入る、ということですね。
出力先が差動ADコンバータや差動入力・シングルエンド出力回路なら同相信号減衰量が性能に直結します。
トランスが相手ならば同相信号の存在はあまり気にならないかもしれません。
どんな回路を採用するかは悩むところです。
参考文献
『計装アンプの効果的な使い方』
『インスツルメンテーションアンプ』
『完全差動アンプ』
BM83をCS8416に積んでみました
はじめに
前記事ではBM83とCS8416を接続してI2S伝送を行いました。
ここで使用したCS8416基板はPCM5102等と組み合わせられるモジュールになっているので、BM83側の機能を絞ってコンパクトに、モジュールのオプションとして組み込めるようにしてみました。
基板紹介
BM83からI2Sとイネーブルインジケータピンだけを引き出しています。
LED、プッシュスイッチはリード付きフットプリントにしています。
筐体に組み込んだ場合に線を引き延ばして使用することを考えています。
今回は役割を果たせる適当な部品を取り付けました。
USBはCS8416と共通で供給される5Vとの衝突を防ぐため、接続していません。
3電源キット、CS8416キットと組み合わせる場合ファーム書き込みの時も3電源キットへの給電が必要です。
BM83のファームウェア設定によって、BM83が起動している場合はBluetooth to I2S、起動していない場合は光デジタル入力と選択できます。
おわりに
ピンが多くて変換基板が大きくなってしまったBM83を
モジュールに組み込めるサイズに落としてみました。
秋月のDACキットに組み込んで使えるかというと…サイズ的には可能ですが、アルミケースで電波が遮断されてしまうため実用性は未知数です。
この基板は細かい修正を行った後、Boothに追加する予定です。
自作Bluetooth DACの制作にご利用いただけると嬉しく思います。
※一部機能が変更になる場合があります。
追記
販売開始しました。
使用したキット
BM83のI2S出力をDACでアナログ信号に変換する
はじめに
当サークルから発売しているBM83変換基板。これと秋月電子のDACキットを使ってBluetooth to I2S 経由のアナログ出力をしてみました。
BM83はデータシートによると内部CODECのS/Nが95dBと、先代BM62/64の98dBにわずかに劣ることになっています。せっかくこのモジュールを使うのであれば、やはりI2Sをメインにしたいところです。
使用部品
- BM83Bluetoothオーディオモジュール変換基板
- 各種部品
- PCM5102キット
- 3電源キット
- CS8416キット
- 3.3V電源アダプタ
- ジャンパケーブル
- ブレッドボード2個
- MicroUSBケーブル
基本構成としては、BM83の出力をPCM5102で受けてアナログに変換する回路です。
秋月のPCM5102キットは+-5Vが必要なので3電源キットを、電源ラインのピンアサイン変換のため贅沢にCS8416キットを使用します。
接続
3~5を秋月のDAC付きアンプキットと同様に接続します。
私はスイッチを付けるために上下逆に詰みましたが、CONT1ピンで制御可能なためDACキットの通りに使っても問題ありません。後から気付きました。
BM83はいつも実験に使っている物なのでMSPK1.2、256fs指定のものを書き込み済みです。初期ファームでも問題ありません。
BM83ボードとDAC基板を下記のように接続します。
- I2Sライン4本とGNDを接続。(右側)
- PWRピンをGNDにプルダウン(左側)
- CS8416基板の入力セレクトを外部I2S側にセット
- BM83の外部回路(今回はLED)を追加
I2Sのピン配置は、
- USBMCLK -- MCLK1
- USBLRCK -- RFS1
- USBBICK -- SCLK1
- USBSDATA -- DT1
となっています。
ジャンパケーブルが窮屈なので端子がスリムな物がおすすめです。
出力は適当に3.5mmジャックを刺しました。ほとんどの場合I2Sは最大レベルで飛んでくるのでイヤホンを直接刺すと音割れしますが、動作確認だけなら十分です。
最後にDACの3.3V電源とBM83のUSB電源を接続します。
ペアリング
各種ボードの電源を入れた後、MFBを長押ししてペアリングします。
AACモードでペアリングでき、イヤホンを通してアナログ出力が確認できます。
オーバーサンプリングモードについて
HantekのUSBオシロで適当に取ってみました。
DSP Tool で256fsを指定しているため、LRCK=44.1kHz、MCLK=256fsになっているようです。
余談
CS8416側のUSBxxxx端子を使用している信号入力はPCM5102側のI2Sピンでも動作可能です。しかし、CS8416側が信号セレクタを持っているため、そちらのピンを使用するとJP2(CONT1)の設定で光デジタル入力とBluetooth入力を選択できます。
PCM5102側に入力しているとCONT1をLOWとした時にBM83の出力とCS8416の出力が衝突してうまくいきません。
おわりに
今回はできる限り少ない手数で BM83 の I2S 出力をアナログ出力に変換しました。
I2S 特有の設定やBM83の不具合など見つけたらまたご紹介したいと思います。
それでは。