HN 日本語サマリー

← 一覧へ戻る
プログラミング

Fomu: USBポートに収まるFPGAボード

Fomu An FPGA board that fits inside your USB port (crowdsupply.com)

11 pointsby Bluestein1 コメント

要約

Fomuは、USBポートに直接差し込める小型のFPGA(Field-Programmable Gate Array)開発ボードです。RISC-VプロセッサコアをFPGA上で実行でき、Pythonでのプログラミングも可能です。オープンソースのツールチェーンに対応しており、手軽にFPGAやRISC-V開発を始められる点が特徴です。

全文翻訳

Sutajio Kosagi RISC-V KiCad Fomu USBポートに収まるFPGAボード $87,832 raised of $10,000 goal 878% Funded! Order Below 20 updates Feb 02 2019 funded on 1,035 backers In stock. Order now, ships within three business days. $50 View Purchasing Options Recent Updates Mar 18, 2021 Introducing Qomu Jan 10, 2020 PCBs Are Here! Nov 26, 2019 Moving PCB Vendors Oct 24, 2019 Fomu Production Delay View all project updates Subscribe Sign up to receive updates. Fomuは、FPGAまたはRISC-V開発を始めるための最も簡単な方法です。 Fomuは、USBポートに収まるプログラマブルFPGAデバイスです。4つのボタン、RGB LED、そして完全にオープンソースのチェーンと互換性があり、RISC-Vコアを実行できるFPGAを備えています。Fomuは、USB Type-Aポートにぴったり収まるカスタムプラスチックエンクロージャーに入っています。 Python、RISC-V、FPGA、すべてオープンソース FomuはPythonを搭載 128キロバイトのRAMと大量のストレージを備えたFomuは、ネイティブでPythonを実行するのに十分なパワーを持っています。そしてUSBポートに収まるため、インストールは非常に簡単です。FPGAは複雑ですが、最新のPythonツールを使えば、特別なトレーニングなしでFomuを使用できます。 FomuはRISC-Vを実行 Pythonインタープリタの下には、FPGAファブリック上で実行されるRISC-Vソフトコアがあります。RISC-Vは、ディープに組み込まれたチップから高性能コンピューティングまで、あらゆるものを席巻する勢いのあるプロセッサアーキテクチャです。FomuのRISC-Vソフトコアは、未来のプロセッサアーキテクチャへの優れた入門となります。 FomuはFPGA FPGAは再構成可能なシリコン片です。デフォルトのFomuファームウェアはRISC-Vソフトコアを実行するUSBブートローダーを公開しますが、好きなものをロードできます。LM32およびOpenRISC用のソフトコアも利用可能です。CPUに命令を追加したり、LED点滅パターンやより良いキャプチャタッチハードウェアブロックなどの新しいブロックを追加したりする練習ができます。 Fomuは完全にオープンソース Fomuでの開発は非常に簡単です。USB経由でコードをロードするだけで完了します。RISC-Vコード、Pythonコード、またはHDLのいずれを記述しても、すべて同じ方法でFomuにアップロードされます。ICE40UP5K FPGAは、完全にオープンなツールチェーンでサポートされており、アカウントの作成、NDAへの署名、または数ギガバイトのインストーラーのダウンロードなしで開発を開始できます。 機能と仕様 Fomuは標準的なUSB Type-Aスロット全体に収まりますが、4つの銅パッドにアクセスできるように小さな領域が突き出ています。ケース全体を照らすRGB LEDが1つあり、ユーザーが完全に制御できます。メインチップは、約5000 LUTを持つFPGAで、CPUとその余りのスペースには十分です。 FPGA: Lattice ICE40UP5K 速度: 48 MHz外部オシレータ RAM: ソフトCPU用の128 kB RAM¹ ストレージ: 1 MB SPIフラッシュ² 接続性: USB 2.0 FS (12 Mbps) ボタン: 4つ³ LED: 1つ (RGB) ¹: FPGAには1024キロビットのメモリが利用可能です。プロセッサレジスタファイルなどのための別のメモリブロックと、USBバッファなどの一時メモリが使用されます。CPUは構成に応じて64または128キロバイトのメモリを使用できます。 ²: これは最小構成量です。最終バージョンではさらに利用可能になる場合があります。 ³: Fomuの端の近くに4つの銅パッドがあります。容量性タッチソリューションはまだ検証されていません。 比較 Fomu | Tomu | ICEBreaker | TinyFPGA BX ---|---|---|--- Source PCB | Yes | Yes | Yes | Yes Case | Yes | Yes | No | No Bootloader | Yes | Yes | N/A | Yes Physical Inputs | Four pads | Two pads | Four buttons | One reset Outputs | One RGB LED | Two LEDs | Five LEDs | None GPIO | None | None | 27 + 7 | 41 Fits in USB port | Yes | Yes | No | No USB interface | Softcore | Built-in FTDI | Softcore | Specs Main chip | ICE40UP5K | EFM32HG309 | ICE40UP5K | ICE40LP8K RAM | 128 kB | 8 kB | 128 kB | 16 kB Flash | 2 MB | 64 kB | 16 MB | 1 MB LUTs | 5280 | N/A | 5280 | 7680 Clock | 48 MHz crystal | N/A | 12 MHz MEMS | 16 MHz MEMS Fomuは、USBポートに収まるFPGAへの便利なアクセス手段として優れています。ピンが多い開発ボードが必要な場合は、利用可能な他のICE40開発ボードのいずれかをチェックしてください! なぜFPGAなのか? FPGAは、フィールドプログラマブルゲートアレイです。CPUのようなチップを購入すると、ロジックセルはすべて固定されています。CPUは任意の量のコードを実行できますが、何か変わったことをしたい場合はソフトウェアを作成する必要があり、やりたいことによってはそのソフトウェアは非常に遅くなる可能性があります。例えば、多くの組み込みプロジェクトではWS2812 LED(NeoPixelsなど)を使用しますが、これには特殊なタイミング信号が必要です。CPUはソフトウェアでこの信号を生成できますが、ライトと通信している間はバックグラウンドで何もできません。LEDストリングが非常に長い場合、CPUは信号を生成するために多くの時間と電力を浪費します。FPGAを使用すると、CPUが動作し続けることを可能にする「LEDドライバー」を作成することができ、ハードウェアコンポーネントがタイミングを処理します。CPUは他の作業を行うことも、低電力状態に入ることもできます。実際、FPGA内の「CPU」はハードウェア記述言語から作成されるため、変更したり置き換えたりすることができます。必要であれば、まったく新しいCPU命令を作成することもできます。高速な64ビット乗算を行いたいですか?あるいは、乱数を簡単に取得する方法が欲しいですか?FomuとそのFPGAを使用すれば、CPU自体のソースコードを入手できます。 FPGA開発 FPGAは非常に特殊なハードウェアであり、最近まで開発ツールは非常にクローズドでした。通常、機密保持契約(NDA)に署名し、通常は5GBを超える非常に大きなツールチェーンをダウンロードする必要があります。さらに、ツールチェーンはFPGAを販売するのと同じ会社によって開発されたため、合成を効率化するインセンティブがありません。なぜなら、非効率なツールチェーンはより大きなFPGAを購入する必要があることを意味し、それは彼らの収益を増やします。いくつかのプロジェクトのおかげで、Fomuで使用されているFPGAは完全にオープンソースです。FPGAメーカーであるLatticeは、データシートとリファレンスマニュアルを自由に提供しています。そして、Yosys、IceStorm、nextpnrなどのプロジェクトのおかげで、完全にオープンなツールチェーンが利用可能になりました。このツールチェーンは自由にダウンロードおよび共有でき、各コンポーネントはオープンソースです。これにより、ベンダーのサイトでアカウントを作成したり、NDAに署名したり、ライセンスサーバーをセットアップしたりする必要がないため、セットアップが大幅に簡素化されます。 コミュニティバージョン Fomuは、回路基板に高度な4層ブラインド埋め込みビア技術を使用しており、小ロットでの製造が困難です。Fomuをコミュニティに届けるために、製造が容易な2つのPCBバージョンを開発しました。 ハッカーバージョン Fomuのハッカーバージョンは、2層PCB上の4/4デザインルールで設計されており、メインFPGAには珍しいフットプリントを使用しています。さらに、非常に特殊なSPIフラッシュを使用しています。これらのボードは手作業で組み立てられましたが、WLCSPボールの扱いにくさから、このボードは長期的に信頼性が低く、機械的ストレスに対して非常に敏感になる可能性があります。ハッカーバージョンボードは販売しませんが、自分でFomuを構築したい人で、非常に小さなコンポーネントのはんだ付けに慣れている場合は、ハッカーバージョンを試すことができます。 Fomu EVT これは、最新バージョンのFomuの最初のイテレーションです。SPIプログラミング、クリスタル対MEMSコンポーネント選択、レギュレータ選択などのさまざまな仮説をテストするために設計された「ストレッチ」ボードです。ラズベリーパイと連携して、迅速なアプリケーション開発とデバッグを可能にするように設計されています。これらのボードの少数をお客様に提供しますが、フルサイズのFPGAボードを希望するユーザーはTinyFPGAを参照することをお勧めします。Fomu EVTは、標準的な2層PCB上の6/6デザインルールを使用して設計されました。どのPCBショップでも製造可能であるはずです。さらに、Fomu EVTには多くの追加コンデンサが含まれていますが、そのほとんどは不要であり、組み立てを簡素化するために削除できます。 FomuとTomu Fomuは、素晴らしいTomuコミュニティの上に構築されています。誰もがUSBポートにコンピューターを収めることを愛しており、今ではそこにFPGAを収めることもできます。 アナウンスメーリングリスト: アナウンス用の低トラフィックリスト ディスカッションメーリングリスト: 開発や新機能について話し合うためのリスト IRCチャンネル - irc://