Ryuz's tech blog

FPGAなどの技術ブログ

Ultra96V2用にマルチI/O基板を作ってみた

はじめに

Ultra96V2 向けにI/Oをいろいろ拡張するボードを、KiCAD にて設計し、Fusion PCBさんの 4.9ドルの基板製造サービスで作成してみました。

まだ現在進行形な部分はありますが、MIPI-CSI が動作確認できましたので、こちらで少し記事にしておきたいと思います。

Ultra96はとても魅力的なボードなのですが、PLにほとんど何も繋がっていない上に、拡張コネクタに出ている信号も電圧も 1.8V や 1.2V なので ZYBO のように使おうとすると、そのままではなかなか扱いずらく、いろいろ試しに載せてみました。

ちゃんとしたインピーダンスコントロールをしていませんので、運任せな部分もあるのですが、フリーのツールで2層基板の範疇でも結構いろいろできてしまうもので自分でも驚いております。

ボードの写真

こんな感じに、Ultra96V2 と同じサイズで上にかぶさる形の基板をで、Raspberry Pi Camera Module V2.1が動作し始めました。

f:id:Ryuz88:20210514220720p:plain

背景が散らかっている写真でお見苦しいですが、動作風景です。

f:id:Ryuz88:20210514220736p:plain

f:id:Ryuz88:20210514220800p:plain

設計データ

設計データは github に上げております。正直とても運よくたまたま作ったものが動いているだけなので、もし「クローンを作ってみよう」という方はくれぐれも自己責任でお願いします。

コンセプト

設計コンセプトは

  • FusionPCBさんの$4.9基板で作る
  • ZYBO の良さ(PLのI/O機能の充実)の追加
  • Raspberry PI の良さ(PSのI/O機能の充実)の追加
  • 使いたい機能だけ部品実装すれば最低限のコストで使える

です。

「動けばラッキー」でジャンクに手を出すのによく似た感覚でやっております。

機能

主な機能として

  • PLの機能
    • TXS0108で3.3V双方向変換した12pin PMOD × 2個
    • RaspberryPI互換 MIPI-CSIコネクタ× 2個
    • LED × 4個
    • プッシュスイッチ × 2個
    • ディップスイッチ(4bit) × 1個
    • クロック供給 (クロックあればPS起こさなくても、JTAGモード起動でも遊べるぞ!)
  • PSの機能
  • その他の機能
    • 隠れると困るPWR/RSTスイッチの引き出し
    • 申し訳程度にUSB2.0信号を引き出したピンヘッダ

ですが、まだ全部の機能は私も試していません。

インピーダンスコントロールについて

特に MIPI-CSI は、こちらを参考にさせて頂いて、基板厚 0.6mm の想定で設計時の机上計算のみ行っています)。

そうなのです。ちゃんとやるととても高いので、かなり運任せで冒険しています。 リピート製造しても次も動くかどうかはわかりません。

ちなみに2層基板なので、マイクロストリップラインと言いつつGND層までが遠いので、配線幅がとても太くなります(MIPIのフレキケーブルの配線幅が太いのがとても納得できました)。

FPGAのプロジェクト

FPGAのプロジェクト自体は以前の記事で書いた ZYBO 用のものをほぼそのまま移植して実験中です。 まだ整備中ですがこちらにあります。

余談

コロナ禍での配送

今回、送料もケチって一番安いシンガポールポストさん(普通でも一か月弱かかる事がある)を選択ていた上に、Fusion PCB さんから発送頂いた直後にコロナ騒動が始まってしまい、出荷頂いたボードが海を渡るのにものすごい時間がかかる事態となりました。 無事に到着しましたが、その時の旅の記録が下記です。

f:id:Ryuz88:20210514220947p:plain

長旅の過酷さを物語る到着時の荷姿。

f:id:Ryuz88:20210514220835p:plain

でも他の基板と合わせてしっかりパッキングしていただき、中身は無傷で到着でした(素晴らしい)。

f:id:Ryuz88:20210514220907p:plain

Fusion PCBさんの4.9ドル基板の最初の昔の思い出

BGAFPGAを自宅でホットプレートリフローしたときの動画ブログ記事です。