2011年4月8日金曜日

Colorfly CK4 予約

結局Colorfly CK4 買うことにしまして、ドキドキ堂で予約受付中なので申し込みました。


Colorfly CK4

デジタル出力を抜き出して使うつもりですが、、一番の悩みどころはColorfly CK4に埋め込む適当なコネクタがなさそうであることで、いい案がないのでそのままジャンパーを引き出してしまうしかないかなあと今のところは....
裏側(ディスプレイ面の反対側)に細長い穴が開いている?ここから引き出せるかも?

Colorfly CK4内のDACチップに接続されているI2S信号を引き出し、FPGAに取り込むのと、Colorfly CK4内のCXOを外してFPGA経由でクロックを代わりに接続させるつもりです。構成は下図のような形でFPGA内のSDカードプレイヤーと切り替えて使えるようにしようと検討中。


Colorfly CK4接続を追加したポータブルシステム構成

2011年4月5日火曜日

DE0-nano発注

 DE0-nanoがDigi-Keyに登録されたので1個発注しました。
といってもリードタイム5/12なので届くのはまだ一ヶ月以上先になります。

Terasicの直販ではすでに購入可能になっていましたが、送料がかかり、手続きも手間がかかる可能性があるので、Digi-Keyで購入できるのを待っていましたが、取り扱うのかどうかも不明であったので割りと早く購入できて一安心です。

同時にポータブルプレイヤーで使用しそうなクロックドライバやらフリップフロップやらアイソレータやらと、DUAL BIDIRECTIONAL I2C BUS AND SMBusVOLTAGE-LEVEL TRANSLATORというのを買って1万円弱分まで購入。

DUAL BIDIRECTIONAL I2C BUS AND SMBusVOLTAGE-LEVEL TRANSLATORというのはI2Cバスのトランスレータで、アイソレータのようにグランドは分離できませんが、電源は分離できますので、現在のところリレーでI2Cアクセス中以外はぶち切る予定ですが、場合によってはこちらにするかも?

2011年4月3日日曜日

ポータブルシステム検討2

ポータブルシステムを検討初めて一ヶ月以上経過しました。現行の想定構成を整理しておきたいと思います。電源は外部給電とし、下記のブロック構成でひとつのケースに収めることを想定しています。ケースはタカチのKC3-8-14あたりを想定。




SDCardPlayerのブロック構成


主な仕様などは下記を予定
  • DAP機能 DE0-nano
  • SDカード SD/SDHC FAT/FAT32 SD Bus Mode(1bit 20MHz)
  • Wave 44.1k、48k、88.2k、96k、176.4k,192k,352.8k,394kHz 16bit/24bit/32bit
  • NiosII/eは20MHz動作(SDカードと同じ周波数、低消費電力のため)
  • DSDIFF5.6448MHz@1bit、2.8224MHz@1bit
  • CXO NZ2520SD - 24.576000M/22.579200M - NSA3449C(日本電波工業) FPGAより切替
  • DE0-nanoとCXOおよびDACはIsolatorで分離、I2S信号はIsolator後リタイミング
  • DAC BuffaloII(ES9018)
  • ES9018をI2CでFPGAより設定(設定時のみリレーをONとし通常時は分離)
  • ES9018 動作クロックはPure Rhythm 96MHz
  • ボリュームはES90118のデジタルボリューム 
  • IVはLT1994を使用しバランスの予定 
電源については、今後の検討課題です。

2011年4月2日土曜日

iBasso PB1 Toucan

SDカードプレイヤーの方は難航していますが、少しずつは前進しています。

ポータプル環境はフルバランス化しようとたくらんでおり、アンプはHA10miniをデュアルモノで構成する予定でいましたが、完成が何時になるか分からないので、製品をひとつ買っておこうということでiBasso PB1 Toucan + iBasso CB08 をiBassoのオンラインショップに発注してみました。

iBasso PB1 Toucan

CB08(ケーブル)

2011年3月31日木曜日

SDメモリカードプレイヤー機能の実装6

 結局、とりあえずはSD Bus Modeでいくことにして、負荷の高いデータ転送をハード化するのに合わせてソフトを修正をすすめています。
とりあえず、サンプルコードの場合、SDカード内のtest.txtというファイルを見つけて、その内容をConsole Windowに表示するプログラムであったので、test.txtの表示ができるようにしてみました。
主な変更点はオリジナルではSDカードIOとしてSOPCのGPIOポートを使っているところを、今回作ったレジスタを介したアクセスに変更しただけです。
しかしこれがなかなかうまくいかず、ようやく動きました。




NiosII用Eclipse IDEのConsole Windowにtest.txtを表示したところ 

 次のステップとしてWaveファイルのSDカードから読み出しするようプログラムの調整と確認に入ります。

2011年3月26日土曜日

exaU2I USB to I2S Interfac

  bunpeiさんより新たなUSB=>I2S変換インタフェースであるexaU2I USB to I2S Interfac紹介していただきました。XMOSより容易にかつ高品質な構成が実現できそうです。




exaU2I USB to I2S Interfac

未だ販売は開始していないようです。
主な仕様・特徴として、
  • Sampling frequencies (kHz) 44.1, 48, 88.2, 96, 176.4, 192, 352.8
  • Resolution (bits) 16 to 32
  • 12345678902 or 4 channels for 352.8 kHz
  • 2, 4 or 8 channels for sampling rates up to 192 
  • 専用のASIOドライバ
  • PCおよびUSBインターフェイスに起因するジッタを除去するAsynchronous USB Mode
  • I2S出力は、アイソレータで電源が分離されており外部から電源供給、FPGA、USBインタフェースはUSBから供給で電源分離
  • 44.1kH系と48k系の2つの水晶を搭載
といったことろで、要所がほぼ押さえられています。
もしこれを採用するとなると、次の改造を加えると更に良いのではないかと思います。
  •  水晶の電源として専用電源を用意するとともにDAC近傍に設置
  •  I2S出力をFFでリタイミング

xaU2Iを用いる場合の構成案


これを用いれば、384kHzや32bit対応も可能になります。DSD対応以外はほぼ考えている仕様をカバーできます。ただしPCとは光で接続する方が良いという考えは変えてはいませんので、サブルートとしての位置づけと捉えています。

購入については、まだ販売開始していないですし、手が回っていないので急がずゆっくりと考えます。


2011年3月25日金曜日

SDメモリカードプレイヤー機能の実装5

DE0などのTerasicのDevelopment and Education BoardのSDメモリカードのサンプルコードを流用ベースとして用いようと考えているため、ソースを追っていますが、SPIモードでは、クロックとマスタ=>ターゲットのデータラインと、ターゲット=>マスタのデータラインの3本とも双方向バスではないはずなのに、コマンドに対するレスポンスをコマンドを出力後、入力に切り替えて受信する処理になっていまして、何故なのか分からず悩んでいました。

結局、この資料を見つけ、SPIモードだとばかり思っていたら、SD Bus Modのコードであることに気がつきました。

SD Bus Modeといってもデータ転送を4パラで行うわけではなく、SPIと同様にデータ転送は1本のラインで行い、あとはクロックとコマンド/レスポンス用のラインの3本インタフェースのためSPIモードより転送能力がそれほど向上するとは思えません。ストリームアクセスコマンドというモードで転送すれば、帯域をかなり有効に使用できるためある程度期待できますが、結局シングルブロックアクセスモードを使っているようなので、そのままのコードではSPIモードとあまり変わらないのではないかと思われます。

このままMMCモードのソフトでいくか、SPIモードのソフトを別に探してくるか自力でつくるか悩ましいところですが、とりあえずはこのままMMCモードで進め、ハードをMMCモード用に調整する方向をデフォルトで進めようかと考えています。

3/31 MMCモードをSD Bus Modeに修正