Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

M5StackにFPGAをつないでみた

1,009 views

Published on

M5StackにGOWINのFPGAをつないでみた話

Published in: Technology
  • Be the first to comment

  • Be the first to like this

M5StackにFPGAをつないでみた

  1. 1. M5StackにFPGAをつないでみた M5Stack User Meeting vol.7 2020/02/04 Kenta IDA (@ciniml)
  2. 2. 自己紹介 •井田 健太 (@ciniml) •仕事:FPGAの論理設計とか •M5StackのTPUカバーとか作ってます 2020/2/4M5StackにFPGAをつないでみた 2
  3. 3. FPGAとは •ロジックICがいっぱい集まったようなもの •内部のロジックの接続をプログラム可能 •私の考えたさいきょうのデジタル回路が作れる(かも?) • 実際はそんなにうまくいかないけど 2020/2/4M5StackにFPGAをつないでみた 3
  4. 4. みんな大好き!Sipeed •MAiXDuino等K210を使ったボードをいろいろ出してる • K210: M5StickV, UnitVに使われてるチップ。強いやつ。 •実はFPGAボードも出している。 • Tang PRiMER • Tang Nano 2020/2/4M5StackにFPGAをつないでみた 4
  5. 5. Tang Nano •とてもお安いFPGAボード • Seeedで$4.9、Shigezoneで800円 •中国GOWIN社のFPGA GW1N-LV1を使用 • LUT4: 1152, FF: 864, SRAM: 72kbit • LUT4: 4入力4出力の組み合わせ論理回路が作れる素子 • FF: クロックに合わせて1bit記憶できる素子 • 同価格帯のFPGAとしては破格 •書き込み回路付き 2020/2/4M5StackにFPGAをつないでみた 5
  6. 6. Tang NanoをM5Stackにつなぐ (1) •FPGA側にI2C Slave回路を作って入れる •M5StackからI2C経由でレジスタが見えるようにする • よくあるI2C接続のセンサーと同様 2020/2/4M5StackにFPGAをつないでみた S DEV ADDRESS RW REG ADDRESS (0) LED OUT Value P M5Stack ESP32 I2C Maste r Tang Nano FPGA (GW1N-1) I2C Slave LED Contr ol I2C REG LED OUT 6
  7. 7. 無駄に複雑なLチカ (1) •M5Stackのボタンを押すと Tang NanoのLEDの 色が変わる 2020/2/4M5StackにFPGAをつないでみた M5Stackのボタ ン Tang Nano カラーLED 7
  8. 8. Tang NanoをM5Stackにつなぐ (2) •FPGA側にWS2812B制御回路を入れる •M5StackからI2C経由で発光パターンを制御 2020/2/4M5StackにFPGAをつないでみた M5Stack ESP32 I2C Maste r Tang Nano FPGA (GW1N-1) I2C Slave WS281 2 Control I2C REG LED Signal 8
  9. 9. 無駄に複雑なLチカ (2) •M5Stackのボタンを押すと Tang Nanoにつないだ カラーLEDのパターンが 変わる 2020/2/4M5StackにFPGAをつないでみた M5Stackのボタ ン Tang Nano カラーLED 9
  10. 10. •ブレッドボードが辛くなったのでモジュールを作る M5Stack用FPGAモジュール 2020/2/4M5StackにFPGAをつないでみた FPGA 書き込み 回路 I/O エクスパンダ FPGA 入出力ヘッダ 10
  11. 11. •CoreとほかのBOTTOMの間に接続 FPGAモジュール使用時の構成 2020/2/4M5StackにFPGAをつないでみた MBUS MBUS M5Stack ESP32 I2C Maste r FPGA Module I2C FPGA (GW1N- 4) My Aweso me Circuit SPI Maste r I2C I/O Expand er CFG SPI Other Signals on MBUS Bottom ModuleMBU S CFG Logi c 11
  12. 12. •MBUS経由でM5StackとFPGAを接続 MBUSの接続 (コア) 2020/2/4M5StackにFPGAをつないでみた MBUS MBUS M5Stack ESP32 I2C Maste r FPGA Module I2C FPGA (GW1N- 4) My Aweso me Circuit SPI Maste r I2C I/O Expand er CFG SPI Other Signals on MBUS Bottom ModuleMBU S CFG Logi c 12
  13. 13. •Bottomモジュール側のMBUSはFPGAと接続 MBUSの接続 (ボトム) 2020/2/4M5StackにFPGAをつないでみた MBUS MBUS M5Stack ESP32 I2C Maste r FPGA Module I2C FPGA (GW1N- 4) My Aweso me Circuit SPI Maste r I2C I/O Expand er CFG SPI Other Signals on MBUS Bottom ModuleMBU S CFG Logi c 13
  14. 14. •MBUSのピン配置などFPGA内で変更可能 コアとボトムの信号接続 2020/2/4M5StackにFPGAをつないでみた MBUS MBUS M5Stack ESP32 I2C Maste r FPGA Module I2C FPGA (GW1N- 4) My Aweso me Circuit SPI Maste r I2C I/O Expand er CFG SPI Other Signals on MBUS Bottom ModuleMBU S CFG Logi c 14
  15. 15. FPGA内部回路の書き換え •FPGAモジュール上の書き換え回路 (USB経由) • PCからプログラム • FPGA内部フラッシュに保存され、電源投入時に自動起動 •M5Stackから書き換え • GOWIN FPGAのSlave SPIモードを使う 2020/2/4M5StackにFPGAをつないでみた 15
  16. 16. •MBUS経由でM5StackとFPGAを接続 M5StackからFPGAの書き換え 2020/2/4M5StackにFPGAをつないでみた MBUS MBUS M5Stack ESP32 I2C Maste r FPGA Module I2C FPGA (GW1N- 4) My Aweso me Circuit SPI Maste r I2C I/O Expand er CFG SPI Other Signals on MBUS Bottom ModuleMBU S CFG Logi c 16
  17. 17. M5StackからFPGAの書き換えの利点 •M5Stackのプログラムに応じてFPGAの回路を変更可 能 • 例: • WS2812Bを複数ライン制御したいので、WS2812B制御回路に変 更 • ボトムのUART信号をMBUSの別のピンに割り当てなおす • UARTを使った通信モジュールでよくあるやつ 2020/2/4M5StackにFPGAをつないでみた 17
  18. 18. 実際のFPGAモジュール • 2020/2/4M5StackにFPGAをつないでみた 18
  19. 19. 現在の状態 •M5StackからFPGAの書き換えができることを確認 • MicroPythonで実装 • TFカード読み出し→SPIでFPGA書き込み 2020/2/4M5StackにFPGAをつないでみた 19
  20. 20. 今後の予定 • オープンソースのツールを使ってFPGA内部回路を作成 • 現在はGOWINのツールを使用 (要ライセンス) • オープンソース版ツールを作るプロジェクトあり • https://github.com/pepijndevos/apicula • Lチカできるところまでは確認 • オープンソースツールを使った簡易内部回路作成機能の実装 • M5Stackユーザー的には別にFPGAの内部回路設計したくない • 使いたい機能ブロック組み合わせた回路を自動生成 2020/2/4M5StackにFPGAをつないでみた 20
  21. 21. 今後の予定 •回路のバグ修正 • 配線まちがったりしてた (よくある) •モジュールを作って売りたい • 現状、FPGAチップ自体の入手経路が無いのでどうにか… 2020/2/4M5StackにFPGAをつないでみた 21
  22. 22. 宣伝 •技術書典8 (Day1 う19) 出展 • https://techbookfest.org/event/tbf08/circle/57038 04133572608 • M5Stack + Rustネタの続きの予定だったが M5Stack + FPGAネタに変更 •おとなり (Day1 う18)はM5Staffブースらしい • ついにM5Stack島に… 2020/2/4M5StackにFPGAをつないでみた 22
  23. 23. おしまい 2020/2/4M5StackにFPGAをつないでみた 23

×