公開日:2023/07/22
title.png

26th Season


#26-6 まともなFPGAボードを買ってみた

 「#15-1 FPGAボードを買ってみた」より、使い続けてきたFPGAボード(Sipeed Lichee Tang Primer)ですが、FPGAチップAnlogic EG4S20の開発ツールであるTD IDEのライセンスが定期的に切れます。本来、Anlogic社ないしは、FPGAボード販売元のSipeed社が、ライセンスの切れる前に新しい更新ライセンスを発行すべきです。
 ところが、そんな簡単なサポートですら、まともにできないのが中華企業なのです。こちらで再三報告している様に、ライセンスが切れる度に、こちらからサポートに連絡しないと、ライセンスが更新されません。
 こんな低水準な中華サポートを続けるAnlogic社にも、Sipeed社にも、長い未来があるとは思えないし、先行きも不安です。いつ、会社が無くなってサポートが打ち切られるのやら……。

 いい加減ウンザリしたので、まともな(非中華製)かつ、最新のXilinx Artix-7 FPGAボードに乗り換えるんだ〜、というテーマです。

 以降、今まで使って来たSipeed Lichee Tang Primerを「Primerボード」と呼んで、新しいFPGAボードと区別します。

購入前調査

 新しいFPGAボードの購入で、今度は失敗しない様に、色々と購入事前調査を実施しました。FPGAボードの購入が初めてだった前回と異なり、今回は、ある程度FPGAの知識と経験がありますので、じっくり吟味しました。購入に当たっての条件を以下の通り設定しました。

 通販サイト等で色々探してみました。

 見かけたのは、Xilinx(今はAMD社に買収されている)とAltera(今はIntel社に買収されている)製のFPGAボードでした。中華FPGAチップ搭載の安いFPGAボードも見つかりましたが、眼中にありませんので、無視、無視。
 種類が豊富だったのは、Xilinx製のFPGAチップを搭載したボードでしたので、その中から選んで購入しました。

今回のお買い物

 今回のお買い物は、以下の通りです。

 秋月電子通商と言うお店で購入しました。
 部品の品ぞろえが豊富で、昔から注目していたのですが、1個数10円〜数100円の部品を購入するのに、送料(500〜600円)が発生するのは非効率なので敬遠していました。小さな部品ですから、「メール便(〜200円)」等の配達方法が選択できると、もう少し敷居が下がるのですが……。

 ともあれ、FPGAボードです。本HPで購入してきたマイコンボードや部品の中で、ダントツ高価なボードとなりました。今までに購入したボードの最高額は、M5StickC Plusの3,564円でしたので、M5StickC Plusを3個買っても、お釣りがくるほどです。
 これでも、非中華FPGAボードの中では、大分お手頃だった部類です。中華FPGAボードの中華サポートにウンザリして、米国製🗽FPGAボードに乗り換えるので、致し方なし。

 まともなFPGAボードは、これくらいの価格になるさ……。

 高いお金を払って購入した甲斐があるかどうかは、これから使い込んで見てのお楽しみです。

Cmod A7-35Tの概要

 今回購入したCmod A7-35Tは、Xilinx 7シリーズ Artix-7ファミリ XC7A35Tと言うFPGAチップを搭載したDigilent社製のFPGAボードです。Xilinxは現AMD社(米国)かつ、Digilent社も米国と言う事で、「非中華製」との条件は満たしています。しかも、「Made in Taiwan」!Good。

 届いた商品は、以下図の様な、チューイングガムみたいなパッケージに収まっていました。

a266_cmodpkg.jpg

 付属品、説明書の類は一切なく、Digilent社HPのURLが記載された紙きれ1枚だけ同梱されていました。


 開梱してみると、Cmod A7ボード上には以下の様な部品が載っていました。

 以下、Cmod A7ボードの外観図を示します。

a266_cmoda7.jpg

 上図で、マーキングは確認できませんでしたが、「QC OK」のシールが張られているのがFTDIチップだと思われます。「35T」のシールがFPGAチップでしょう。シールは、ずいぶんとしっかり、ピッタリ張り付いているので、無理に剥がすのは断念しました。このまま使います。

※「QC OK」 → 「出荷検査合格」でしょうか?中華製のボードに、こんなシールが張ってあっても一切信用しませんが、米国製ですから、それなりの検査が実施されて、合格した物が出荷されているのだろうと、思うことができます。こういう精神的な安心感も、非中華製に拘ったおかげです。
※姉妹品にCmod A7-15Tと言うのがあって、こちらは集積可能な論理規模(最大LUT数)が半分ほどのバリエーションです。出荷時に混入しない様に、一目で判るシールが必要なのでしょう。


 48ピンDIPサイズの小さな筐体なので、ブレッドボードなどに装着して、外部回路とのインターフェイスを取ることが可能です。PCとUSB接続するだけで、書き込み(コンフィグレーション)ができて、同時に電源も供給できます。シリアルモニタでデバッグも、できちゃいます。
 FPGAボードを探していて見つかった中では、コンパクトだし、お手頃な価格が魅力的でした。

XilinxのFPGA

 現在(執筆時点)の最新シリーズは、「7シリーズ」です。数字7の付く、以下のファミリ展開があります。

 ファミリ内の下位機種〜上位機種で、集積可能な論理規模等の品揃えが有り、ファミリ間で若干の重なりや逆転が生じます。が、概ね、上から下の順番で、論理規模や速度などのグレードが上がっていく展開になっています。実現したい回路の規模やスピード、実装面積など、ユーザが最適なチップを選んで購入することができるファミリ展開です。

 Xilinxには、上の展開以外にもZinqというファミリがあります。こっちはARM Cortex等のハードコアが集積されていて、FPGA搭載SoC(System on Chip)を設計できるファミリ展開となっています。

6入力タイプLUT6

 LUT(Look Up Table)と言う論理素子を使って、様々な論理回路を構築するのがFPGAチップの特徴です。FPGAの論理規模については、こちらの記事を参照してください。

 基本的には、LUTの総数が、そのFPGAチップに集積可能な論理規模を表します。今まで使って来たPrimerボードと、新しく購入したCmod A7ボードとを、以下のように並べて比較してみましょう。

 ほぼ同規模に見えますね。しかし、

 実は、これ、かなりな差があります。

 LUT4とLUT5は、単に、入力信号が1本増えただけで、出力は共に1本です(下図)。

a266_lut45.png

 入力信号数が多い分、LUT4に比べるとLUT5の方が、搭載できる論理規模は大きくなるのは確かなのですが、大きな差は無い、と思って良いでしょう。

 ところが、XilinxのLUT6は、以下図の様な構成なのです。LUT6の内部には5入力のLUT5が2個あって、出力も2本です。

a266_lut6.png
※Xilinxデータシート(spartan6_hdl.pdf)より引用。

 つまり、これだけ見るとLUT6=2×LUT5ということです。ただし、本来の2×LUT5は、各々独立した入力端子が2組×5本あるのに対して、上図のLUT6は、5本の入力端子が独立しておらず、共通です。その分、完全にLUT6=2×LUT5とはならず、Xilinxのデータシートによると、LUT6≒1.6×LUT5程度らしいです。

FPGAボード FPGAチップ LUT数 価格
Primerボード Anlogic EG4S20 19,600LUT4 3,300円
Cmod A7 Xilinx XC7A35T 20,800LUT6 13,700円

 価格対論理規模でまとめた上表の通りですので、LUT6≒1.6×LUT5を加味しても、中華製Primerボードの方が費用対効果は上です。

※1円当たりのLUT数などで比べてみると、自明。

 「費用対効果重視」な方は、どうぞ、中華FPGAボードをお買い求めください。今でも探せば、9,000LUT4程の中華FPGAボードが3,000円そこそこで見つかります。筆者もPrimerボードの安さに惹かれて購入してしまった一人ですので、引き留めはしません。
 ただ、Primerボードで懲りたことで、今回、お値段は高かったけど米国製のFPGAボードを敢えて選択しました(ここ、大事)。

開発ツール

 Primerボードの開発では、搭載されたFPGAチップのメーカAnlogic社が提供するTD IDEという統合開発環境を使っていました。
 TD IDEに相当する開発ツールがXilinx社製FPGAにも存在します。

 Cmod A7ボードは、最新の7シリーズ(Artix-7)なので、どちらでも使用可能なのですが、古いISEは、いずれサポートされなくなるだろうし、今から使い始めるのであれば、最新のVivado一択です。

予告編(予習)

 実は今回の記事を含んで暫くの間、Cmod A7ボード立ち上げの記事が続きます。
 最後の結論にたどり着くまでに少し時間がかかるので、この時点で予告編として、最後にご覧いただく予定の動画をフライング公開しておきます。今後の予習にも、なるかと思います。




 次回、Cmod A7ボード(Xilinx Artix-7)の開発環境Vivadoをインストールして行きます。


btn_arduino.png

btn_prev.png btn_next.png

home