オープンソースのFPGAハードウェアと開発ツールを探している[非公開]


38

FPGAボードを調査したが、オープンソースのボードおよびベンダー中立のFPGA開発ツールが見つからない:

  • ORSoCメーカーは、そのWebサイトでオープンソースを誇っていますが、OpenCores.orgをマスターすることを除いて、強力な証拠を実際に見つけることはできません。
  • デュオ:ザイリンクスが宣伝、「中国本土の大学向けオープンソースハードウェアイノベーションコンテスト」で製品をしています。それでも彼らの製品はプロプライエタリであり、* ixのサポートが不十分です。同様に、アルテラは* ixのサポートが不十分です。QuartusでOSサポートを確認するか、ロジックアナライザを合成ステップで使用する方法を確認してください。
  • 小規模なプレーヤーのグループ-最高のポイントを示しましょう。

ハードウェアや開発ツールなどのオープンソースのものに強いメーカーはいますか?


ここでSOの関連質問。
hhh

3
Lattice Semiconductor iCE40 FPGA向けのオープンソースのツールチェーンがあります。github.com
Cotton Seed

回答:


8

残念ながら、プログラム可能なハードウェア用の無料ソフトウェアはあまりありません。Lava(主に手動配置が必要)、Confluence、HDCamlおよびAtom、およびIcarus Verilogなど、いくつかの合成ツールがありますが、フィッター、マッパー、配置配線ツールはありません(間違っていることが絶対にわかります)この)。Opencircuitdesign.comはいくつかのツールを収集しましたが、おそらくいくつかのドキュメントとビットストリームジェネレーターが必要です。一方、シミュレーションはかなりよくカバーされています。

非フリー側では、ザイリンクスの非フリーだが無償のツールは、libusbサポートを追加し、Wind / U(恐ろしい非フリーwinelibアナログ)をドロップしてQtを支持することで、最近改善されました(しかし、廃止されたチップの更新)。他のほとんどのツールは、それは彼らがしても動作して取得するのは難しい程度に、FLEXlmのと呼ばれるパッケージを使用して妨害いるようだベンダーの援助。LinuxでLattice Diamondソフトウェアを実行することもできましたが、それはシミュレーションに欠けていました。Atmel AT40KALの場合、配置配線ツールはWineで実行できますが、ライブラリは非標準コンポーネントを要求します(LPMを使用しますが、2入力ゲートを拒否します)ので、一種のマッパーが必要になります。


5

残念ながら、私が知る限り、合成ツールはすべてクローズドソースです。それらに含まれるコードはビジネス上の優位性の大きな部分を占めているので、オープンソースのように見えることはまずないと思います。

ザイリンクスにはWindowsおよびLinux用の無料のツールチェーンがあり、IDEが気に入らない場合は、独自のエディターでコマンドラインツールを自由に使用できます。以前にこれをやったことがありますが、大きな複雑なソフトウェアパッケージにだまされたくない小さなプロジェクト(CPLDなど)に適しています。

アルテラは、Windows用の無料ツールのみを提供し、Linuxツールは前回チェックしたときにのみ支払われると信じています(これは変更された可能性があります。


私の理解では、合成-技術のビルディングブロックコンポーネントに設計を実装するプロセス-は、独自の代替が実行可能な最後の層です。それは次の層です-配置配線、それに伴うタイミング解析、それに続くビットストリーム生成、これは本当に密接に保持された情報が必要な場所です。
クリスストラットン14

5

蝶の取締役会は、 FPGAのに優れたオープンソース初心者のルートのように見えます。それらは既にAVR8コアを移植しているので、Arduinoスケッチ/ AVRオブジェクトコードをThingで実行できるため、学習曲線が健全になります。

更新:Papilio Boardsに名前が変更されました。

ザイリンクスWebPackが必要であり、WindowsおよびLinuxで利用できると思います。


webpackも無料で提供されます。
Kortuk

申し訳ありませんが、「オープンソース」が何であるかを実際に見ることができません。item.taobao.com/auction/…のように、半分以上安くなったコインを滑らせます。
hhh

3
独自のザイリンクスツールチェーンに依存していますが、Butterfly Oneには、1)オープンソースボードデザイン、2)オープンソース「プログラマー」(ビットストリーム->フラッシュユーティリティ)、3)例として多くのオープンソースIPが含まれています。 。おすすめ!

たぶん、バタフライワンを指すようにリンクを更新する必要がありますか?また、これらがどれだけうまくサポートされているかを知っていますか(何人がそれらを使用しているか、初心者に適しているかなど)。
アールズ

回路図とすべてがButterfly Oneのオープンソースであり、これをArch Linuxコンピューターで完全に実行しました。いくつかのことを手動でコンパイルする必要がありますが、ほとんどのFPGAよりも始めるのが難しいとは言いません。(そしておそらくより簡単にそれはAVRのソフトコアとしてプログラムされていますので、
Earlz

3

FPGA開発ツールはすべてFPGAデバイス自体と緊密に結合されており、特に配置、ルーティング、およびビットストリーム生成レベルで、FPGAアーキテクチャの独自の詳細に完全に依存しています。そのため、ベンダー中立性はほとんど存在しません。より高レベルのツールは、ある程度ベンダーに中立である場合があります(Synplify、ESLツール、検証ツールなど)が、確かにオープンソースではありません。

一方、オープンソースの学術ツールは数多くあります。実際の物理デバイス用に開発したくない限り、VPR 5.0ツールチェーンを使用できます。


「ハードウェアと密結合」の説明は購入しません。組み込みCPUの異なる命令セットでも同じです。
マキシム14

@maxy-いいえ、そうではありません。CPUは、FPGAツールチェーンにさらされており、FPGAツールチェーンによって考慮される必要のある大量のハードウェア詳細を抽象化します。ACコンパイラーは、乗算器の出力が時間通りに次のレジスターに到達するかどうかを実際に知る必要も、気にする必要もありません。ボード設計者でさえ、これを知るために最大許容クロック速度を調べるだけです。FPGAツールの場合、乗算器の所要時間、レジスターのセットアップ時間を把握し、それらをチップ上のどこに配置し、どのように信号をルーティングするかに基づいて、乗算器間の遅延を計算する必要があります。
クリスストラットン14

3

オープンソースでもサポートされていませんが、ザイリンクスはJbitsと呼ばれる無料のクロスプラットフォーム(Java)APIを提供しており、FPGAを直接プログラミング(およびオンザフライで再プログラミング)できます。CPLDとVirtex-IIまでしかサポートされていないと思いますが、これは開発者が独自のカスタム合成ツールを作成できるようにすることに最も近いものです。近い将来、これをかなり試してみる予定です。


Jbitsは本当にクールでした。
ファルケン教授
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.