最近、CPUとは違うデバイスを用いた大規模計算が行われています。その中でFPGAはロジックをソフトウェアで書き換え可能であり、かつ1回の計算にかかる時間が短い(Latencyが低い)ので、高速な応答を必要とする用途で注目されています。そこで、巷に売られている書籍と実験キットを使ってFPGAの勉強を始めることにしました。
1. Intel MAX10実験キットと電子工作キット(はんだこて等)の準備
まずは学習のための書籍と実際に触ってみるための実験キットを調達します。幸い、必要な電子部品がすべてセットになった「完全版 FPGA電子工作オールインワン・キット (トライアルシリーズ)」が販売されているので、今回はこちらを利用します。電子部品の組み立てにははんだこて、はんだ、その他はんだ工作に必要な物品を用意します。数千円程度で通販で購入できました。
こちらが書籍の写真。電子部品とセットになった箱の中に、説明書としてこの本が入っています。
2. MAX10-FB基板とMAX10-JB基板の組み立て
書籍は600ページくらいあり、どこに組み立て手順が書いてあるかわかりにくいです。理論、回路の詳細説明も大切ですが、触ってみないとわからないので理論の説明はスキップ!65ページからMAX10 FPGA搭載のMAX10-FB基板の組み立て手順が書かれています。指示に従って7個ほどの部品をはんだ付けすると次の写真のようになります。
久々のはんだ付けなので手が慣れておらず、ここまでに1時間くらいかかってしまいました。
次に、FPGAへUSBから電源供給したり、FPGAの設定・デバッグを行うMAX10-JB基板を組み立てます。手順は80ページから記載されています。基板には当初1つも電子部品がついていない状態からたくさんの部品をつけるので、組み立てには1.5時間くらいかかりました。すべてつけ終わると次の写真のようになります。
3. MAX10-JB上のPICマイコンへの初期設定の投入
MAX10-FB基板の上にMAX10-JB基板を接続します。次にMAX10-JB基板上のMini-USBコネクタにUSBケーブルを接続して電源を供給します。82ページに書かれている動作確認に問題がなければ、MAX10-JB基板上のJ1~J4ジャンパを閉じて再びUSBから電源を投入します。ここでPICマイコンへのプログラム書き込みがうまくいけばMAX10-FB基板上のLEDが緑色に光ります。
ここで2つハマるポイントがあります。
そもそも家にMini-USBケーブルがない
本にもどこにも書いていませんでしたが、USB-MiniUSBのケーブルが必要になります。私の場合はたまたまデジカメなどで使っていたMiniUSB端子を持つケーブルがあったので、特に問題ありませんでした。
PICマイコンが正常に書き換えられず、LEDが緑色にならない
こちらは本当にハマりました。諦めかけたころにこのブログを書くため検索をしていたら、偶然同じ場所でハマっている記事「MAX10の付録本を買ったが動かなかった」を見つけました。この記事を見るまで、USBはKindle Fireの充電用USBアダプタにさしていたのですが、これをiPhoneの純正アダプタに変更しました。すると一発で正常に動きました。
そして、本をよく読むと、MAX10-JB基板についての説明の一番はじめである69ページにiPhone純正アダプタで動いた旨が書いてありました。
ここまでで電子部品としての組み立てはいったん完了です。次はFPGA開発環境のセットアップをしていく予定です。