更新履歴

カメレオンUSBの特徴


カメレオンUSBのコンセプト

そもそも私がカメレオンUSBを作ろうと思った理由は2つあります。

<理由1>
ここ10年近くゲーム機の解析などを趣味にしていますが、最近のゲーム機は高度になり、ほとんどの部品が専用のカスタムチップになっています、そのため一般に手に入るデータシートなどからの解析が不可能です。
解析するためにはロジックアナライザーを使って実際の信号を目で見る必要があります。
ロジアナも最近はかなり安くなっていますが、安いものでも6万円程度はするため個人では手を出しにくいです。安いものですとチャンネル数も少ないです。データバスの解析をするには20チャンネル以上は欲しいものです。
そこで、20チャンネル以上、100MHzのロジアナを1万円以下で作りたいと考えました。

<理由2>
最近のPCは非常に高機能になってしまったために、昔のC−BUS(PC−98)やISAバスのように簡単に自作のハードウエアを接続することが出来なくなってしまっています。
ちょっとした自作ハードをPCに接続するために、例えばPCIのボードを設計しなければならない。これでは簡単に何か自作するのは無理です。
プリンターポートやシリアルポートを使うのも一つの方法ですが、ノートPCではこれらのポートを持たないものも多く存在します。また、最近ではこれらのデバイスはレガシーデバイスと呼ばれ、今後数年のうちに無くなってしまいそうな雰囲気です。私も10年以上前に、PC98のC−BUSで動くROMライターやロジアナを自作して使っていました。ところがPC98を廃棄してしまったため使えなくなり、ほこりをかぶっています。
そこで、趣味の電子工作レベルで簡単に使いこなせて、なおかつ最低でも今後5年間は使い続けることが出来るインターフェイスを採用したい。これが二つ目の理由です。

上記理由によりUSBを使ったインターフェイスボードを使うことを考えました。
一般にUSBもISAバスなどと比べると複雑で簡単にアマチュアが使いこなせるものでもありません。しかしCypress社のEZ−USBというデバイスは非常に使いやすく、ファームウエアをPCからデバイスにダウンロードすることが出来、開発ツールも無償で入手することが出来ます。また、開発ツールに付属しているドライバを使用することにより、厄介なWindows用のドライバを開発する必要もありません。
基本的にはEZ−USBをベースに作ろうと考えました。しかし、EZ−USBはIOの本数が最大でも18本と少ないため、ちょっと複雑なことをやろうとすると足りなくなります。そこで安価なプログラママブルなロジックデバイスであるCPLDと組み合わせて使うことにしました。
ザイリンクスのCPLDは無料で入手可能なロジック設計・生成ツールの「WebPACK」を使用して開発することが出来ます。デバイスのプログラムもEZ−USBのファームウエアにやってもらえば特別なプログラム装置も不要になります。

EZ-USBファミリの中でAN2135SCを選んだ理由は、CPLDを接続する以上高速転送が可能なデータバスを持つチップを使いたかったからです。AN2131QCという選択肢もあるのですが、CPLDを接続するのでIOの数にこだわる必要は無く、基板サイズも小さく出来るのでAN2135SCにしました。
XILINXのチップの中で、XC95144XL-10TQ144を選択した理由は、ロジアナが入るマクロセル、ピン数、3.3V 5Vトレラント、価格を判断して選択しました。
将来的にはEZ-USB_FX2 + SPARTAN2 なんてのも面白いかなと思っています。


謝辞


カメレオンUSBは下記のHPで提供される情報、あるいは無料のソフトウエアを使用させて頂いております。
ありがとうございます。この場を借りてお礼を申し上げます。