MAX10 FPGA 10M02の超シンプル機能だけどIOピンいっぱいなボードを作っています

以前MAX V CPLDボードを作りました。

このCPLDで音源ICを作ろうとしたところ、和音を出すには容量が小さくてプログラムできませんでした。そこで、MAX 10 FPGAを使って音源を作っています。

「FPGA電子工作スーパーキット」という書籍に付いてくるMAX10 FPGAが載ったFPGAボードを使っています。

これはこれでいいのですが、LE数が8000もあるので、音源ICにはかなり余裕すぎる容量です。また、色々なICをつなぎたいので、たくさんIOピンがあるといいのですが、「FPGA電子工作スーパーキット」のボードは一部のIOピンしか端子に出ていません。

FPGA、電源、ほとんどのIOがピンに引き出されている、だけのシンプルな構成のFPGAボードが欲しくなりました。案外こういったシンプルだけど、ピンがいっぱい引き出されてる評価ボードってないんですよね。

MAX 10 10M02 FPGA

程よい容量のFPGAを探す

以前作ったCPLD(LE数160)よりも多くて、MAX10のLE数8000よりも少ない、FPGAに、MAX10シリーズの 10M02 というLE数2000のFPGAがあります。「FPGA電子工作スーパーキット」に付いてくるFPGAと同じMAX 10 シリーズの中の、最小容量のモデルになります。

MAX V CPLDシリーズの大容量版も検討したのですが、MAX 10 FPGAシリーズの低容量版よりも、MAX V CPLDシリーズの大容量版の方が高かったので、安価なMAX 10シリーズにしました。

10M02というモデルの中には、BGAパッケージや、QFPパッケージなどパッケージの違いや、必要な電源の数の違いなど、数種類のモデルがあります。

今回は、「FPGA電子工作スーパーキット」に付いてきたFPGAと同じ、QFPパッケージの「10M02SCE144C8G 」にします。単電源で動作し、QFPパッケージは半田付けしやすいですからね。

KiCadのライブラリを作る

10M08のライブラリはネットにあったのですが、10M02は無かったので自作します。まずは、ピンアサインを知りたいのですが、データシートには書いてありません。どうやらピンアウトというのが、ピンアサインであることがわかりました。

このページのMAX 10のところを開いて、10M02SCの中のPDF、テキスト、エクセルの各ファイルをクリックすると、ピンアサインのファイルがダウンロードできます。

10M02SCのE144というのが目的のパッケージのピンアウトです。

この情報をもとに、シンボルエディタでバンクごとにシンボルを作りました。

フットプリントは、SnapEDAというところから10M08SAE144C8Gのフットプリントがあったので、ダウンロードしてこれを使ってみようと思います。

KiCad用をダウンロードします。

回路図を書く

回路図の左側の白い四角がFPGAです。各バンクごとにユニットを分けて作ってあります。真ん中のコンデンサーが各電源ピンにつながるパスコンです。コア用の電源から、各バンクのIOの電源、PLL用の電源などで30個近くあります。

右側の上部が、電源回路です。USBの5Vから3.3Vを生成します。50MHzのクロックも載せました。MAX10 FPGAの内蔵クロックは、FPGA内のPLLに接続できないので、水晶発振器による安定したクロック源が外部に必要です。

右側下段がIOピンがつながるピンヘッダになります。IOピンは全部で100ピン程度ありますが、ほぼ全てピンヘッダに引き出します。

MAX 10 FPGAの特殊な機能を持ったピンの説明や、プルアップ、プルダウンするのかなどは、「FPGA電子工作スーパーキット」の書籍の第2章に詳しく書いてあったので、それを参考にしました。この本は、よくまとまっていて、とてもいい資料ですね。

アートワーク

いつものように、部品を配置して、電源周りの重要な配線は手動で行い、残りの配線はオートルーターにお任せします。オートルーターが引いた配線を、もっと効率いいように手動で修正して、アートワーク完了です。

押しのけ配線が超便利

今回、KiCadで初めて、「押しのけ」配線を使ってみたのですが、とてもとても便利です。何本もあるバスの中に1本線を通すのが、超絶楽チンでした。是非ともオススメの機能です。

設定は、Pcbnewの[配線]->[インタラクティブルーターの設定]

[モード]を[押しのけ]に設定して、[OK]するだけです。

これで、バス配線の中をかき分けて、配線を通すことができます。隣の配線に触れると、その配線がよけてしまうので、普段から「押しのけ」していると配線しにくいですから、普段は「速度優先探索」の設定で使い、「押しのけ」て通したい時だけ、「押しのけ」の設定にするのがいいと思います。

データ完成

今回は、全て表面実装部品を使ってみます。ピンヘッダやJTAGのコネクタはスルーホールのタイプが普通なのですが、基板の裏側にピンが飛び出していて、実験中に基板の裏でショートするとよくないなと思い、ピンが基板の裏に出ない表面実装部品を初めて使ってみます。また、リフローだけですべての半田付けが完了するので、手間も軽減できますね。

基板の背面は、フラットです。

発注

いつものように、Seeed Stduio Fusion PCBに、基板とステンシルを発注します。 ガーバービューアーで、正しいファイルがアップロードされているか確認しておくと、安心です。

発注完了。2週間くらい待てば届くでしょうか。発送方法にOCSを選んだので、発送さえされれば数日で届きます。届くまでにFPGAも買っておかないとな。

2019.7.10 続き 基板が届いたので、組み立てました。

このFPGAボードは↓↓こちら↓↓で販売しています。

 

 

電子工作

関連記事

kohacraftのblog

コメント