世界を動かす技術を、日本語で。

Show HN: Icepi Zero – FPGA版Raspberry Pi Zero相当

概要

Icepi Zero は、 Raspberry Pi Zero のフォームファクタを持つ、経済的かつ強力な FPGA開発ボードLattice ECP5 25F FPGAを搭載し、 HDMI出力 や3つのUSB-Cポートなど多彩なI/Oを装備。 学生からゲーマー、プログラマーまで幅広く活用可能。 完全オープンソース で、回路図や製造データも公開。 高性能・小型・低価格を実現した次世代FPGA開発環境。

Icepi Zeroとは

  • Raspberry Pi Zero 互換フォームファクタ採用
  • Lattice ECP5 25F (24k LUT, 112KiB RAM)搭載による高性能FPGA開発基板
  • HDMI互換(MiniGPDI) ポート搭載によるデジタルビデオ出力
  • 3つのUSB-Cポート による多様な外部I/O機器接続
  • 256Mbit 166MHz SDRAMMicroSDカードスロット 搭載
  • オンボードUSB-JTAG/UART変換器 内蔵で外部プログラマ不要
  • 40MHz外部オシレータ128Mbitフラッシュ4つのユーザーLED1つのユーザーボタン
  • 完全オープンソース 設計、PCBデータ公開
  • 1.2mm厚JLC04121H-7628スタックアップ 基板仕様

Icepi Zeroの特徴とメリット

  • 高性能FPGA と小型設計の両立
  • 低価格・持ち運びやすさ を実現した開発環境
  • HDMI出力 やUSB-C搭載による拡張性
  • 外部プログラマ不要 の手軽な開発体験
  • オープンソース による自由なカスタマイズ・製造

想定ユーザーと活用例

  • 学生 :現代プロセッサの仕組み学習用途
  • ゲーマー :レトロハードウェアのエミュレーション
  • プログラマー :複数アーキテクチャでのコード検証
  • エンジニア :リアルタイム映像処理、ハードウェアAIアクセラレーション、ASIC試作

使い方・製造方法

  • ファームウェア例ビルド手順 はfirmwareフォルダに収録
  • 基板製造 には「hardware」ディレクトリ内のGerberファイルを利用
    • 1.2mm厚JLC04121H-7628 スタックアップ推奨
  • 完全自作・改造 も可能

コンタクト・サポート

  • 質問・相談 はHackclub Slackの@Cyao、Discordのcyao.、またはメール(cyao at duck.com)で受付
  • Hackclub によるスポンサーシップ
  • Github でのソース公開、回路図や基板データも自由利用可能

開発経緯・補足

  • FPGA は「何をするか」ではなく「何になるか」を記述するデバイス
  • ECP5 FPGA 搭載・Raspberry Pi Zero互換サイズのPCBを自作
  • USB-Cポート増設複数LED など独自改良を実装
  • HDMI出力uSD対応SDRAM搭載 など多機能
  • 数週間の開発成果 として公開
  • オープンソースライセンス でGithubに全データ掲載
  • Reddit (https://www.reddit.com/r/FPGA/comments/1kwxvk8/ive_made_my_f...)で写真も公開

まとめ

  • Icepi Zero は、小型・高性能・低価格・高拡張性を兼ね備えた 次世代FPGA開発ボード
  • 教育用途 から 高度なハードウェア開発 まで幅広く対応
  • オープンソース精神 で誰でも自由に製造・改良可能

Hackerたちの意見

"Pi Zero"フォーマットのFPGAみたいな別のプロジェクトは、fleaFPGA_Ohmだよね(http://fleasystems.com/fleaFPGA_Ohm.html)。

そうなんだよね、残念ながらIndiegogoキャンペーン以外では購入できなかったみたい。

これ、組み立てた状態で売ってくれない?今はTang nanoを使って学んでるんだけど、ツールやドキュメントの状況があんまり良くないんだよね。

アイスブレイカーはすごく良くて、すぐに使えるし、pmodヘッダーも付いてるから、アドオンを追加するのも簡単だよ。

このFPGAは何ができるの?MISterのコアのどれかをこれに移植できるのかな?

たぶんできると思うよ。uls3xにはすでにいくつか移植されたコアがあるし、ちょっとした修正でこのFPGAでも動くはず。

今のところこれを見つけたよ: https://github.com/emard/ulx3s_c64 DE10-Nanoの代替ができるのはワクワクするね。特に、僕が買った時から価格が倍になったのを見てるから。素晴らしいプロジェクトだし、アーケードキャビネットを作りたい夢が蘇るよ。Icepi Zeroはその仕事にぴったりだね!いつかEUにも届くといいな。

最近、IceSugarProでMinimig Amigaコアのビルドを動かしてみたよ(同じFPGAと同じサイズのSDRAMを使ってる)。ECSチップセットだけど(AGAはなし)、1280x720x16bitのRTGグラフィックスは動いた!キーボードとマウスはUSBじゃなくてPS/2を使ってるけど、それ以外はこの新しいボードに移植するのは簡単そうだね。

俺の理解が正しければ、ECP5 FPGAはオープンソースのツールで設計できるみたいで、さらに素晴らしいね。OP、もしこれを商業化するつもりなら、互換性を確認してみて!それがあれば絶対に魅力的になるよ! [0] https://hackernoon.com/getting-started-using-open-source-fpg... [1] https://github.com/YosysHQ/prjtrellis

リポジトリの例は、オープンソースのyosysとnextpnrツールを使ってるよ。

もちろん、完全にオープンソースのツールを使ってるよ!ファームウェアディレクトリのmakefileをチェックしてみて :)

材料費は大体どれくらい?

彼のRedditの投稿を見てみたよ [0]。OP(cyao12)は13歳の時にVerilogでCPUを作って、今は16歳なんだって。すごいよね。cyao12: 13歳の時に作った古いCPUをこれに載せてみようと思ってる!SDRAMは大丈夫だし、トレースも短いから距離の違いは気にしなくていいよ :D Collez_boi: 13歳でVerilogでCPU作ったの?それはヤバい。cyao12: うん、でも正直デザインはあんまり良くなかった(笑)。今16歳だから、自分の進歩には満足してるよ! [0] https://www.reddit.com/r/FPGA/comments/1kwxvk8/ive_made_my_f...

FPGAは、僕の組み込み技術の最終フロンティアみたいなもんだね。まだ飛び込んでないけど、マイコンや固定アーキテクチャのCPUで十分速いから。いつか挑戦してみたいな。

すごい!よく考えられてるね。FPGAプログラミングには興味があったから、これが入門になるかも。素晴らしい仕事だね!

これは素晴らしいプロジェクトだね、遊ぶのが楽しそう。だけど、こう言ってるのはちょっと違うと思うな: >「低コストのポータブルFPGAでビデオ出力があって、自分のCPUを作りたいと思ってたけど、市場にはない。」これは絶対に真実じゃないよ。SipeedのTang Nanoボードは、Amazonで$25以上で買えるし(20k LUTs未満が必要ならもっと安くなるよ)。

ああ、それいいね!なんで今まで見なかったんだろう!

使用されているFPGAは、ホビイストコミュニティでかなり人気があるみたいだね。フォームファクターにこだわらなければ、一般的なFPGA開発ボードに再利用された比較的安価なECP5ベースのボードも存在するよ。[1] https://www.amazon.com/Price-Colorlight-5A-75B-Screen-Receiv...

その唯一の欠点は、SDRAMチップのDQMピンがローレベルに接続されてることなんだよね。だから、SDRAMにバイト単位で書き込むことができなくて、フルワード単位で書き込む必要があるんだ。それがあるから、既存のコアをColorLightボードに移植するのがかなり難しくなるんだよね。