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.

Synthesijer で作るFORTH仮想マシン

2,107 views

Published on

Synthesijer を使って FPGA 用にFORTH を作ったというお話。

Published in: Software
  • DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT (Unlimited) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download Full EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... ACCESS WEBSITE for All Ebooks ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download doc Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

Synthesijer で作るFORTH仮想マシン

  1. 1. Synthesijer で作る FORTH仮想マシン 2015/8/2 有限会社シンビー 鈴木量三朗
  2. 2. 発表がとりの前の前で光栄です
  3. 3. Who are you? • わたし:すずきりょうざぶろう • Twitter: @ryos36 • 生涯一プログラマ
  4. 4. 本も書きました FPGA の仕事します
  5. 5. 今回の主役は FORTH
  6. 6. まずは Synthesijer の紹介 • Java でプログラム でコンパイル FPGA 上で 動く!!
  7. 7. 私の CPU 作成履歴 • 過去に パタヘネ の RISC にチャレンジ あっさり挫折
  8. 8. Synthesijer でならCPUを作れる!! • 今回作ったのは FORTH の VM(Virtual Machine) ん?バーチャル?(細かいことは気にしない) ん?FORTH って CPU だっけ? (細かいことは気にしない) 僕にもできた!!
  9. 9. 余談:Eclipse のプラグインを作ってみた • Synthesijer すげー – 世の中に広めるべきだ(by わたし) メニューをたしただけ、、、 要望があるなら 公開します。 (プラグインとしてあまり レベルは高くない)
  10. 10. FORTH 入門 • 逆ポーランド • スタック型 • スレッデッドコード 今回移植したのは正確には RETRO 言語という FORTH 系の言語 LT だからキーワード だけね
  11. 11. 余談:逆ポーランドといえばこれ Wikipedia より HP-41C 逆ポーランド方式の電卓 1981年当時 70,000 円超でした
  12. 12. FORTH 入門 ~ その2~ > 3 > 5 > + > putn 8 3 3 5 8 RETRO では p ではなくて putnを使って表示。
  13. 13. FORTH VM • VM だからオペコードがある(30個)
  14. 14. Java での実装 switch case による実装
  15. 15. Stack は int の配列
  16. 16. Synthesijer のための変更 • VM 的にはほとんどなし!! • 入出力の変更有 – UART (サンプルを参考に実装) – イメージの入出力(イメージは初期値で持つ) 作業を始めて土日で(徹夜せずに)完成!! 実際に SP605 で動く!! すいません。手抜きで AWK をつかってごにょごにょっとしてます。
  17. 17. ここが便利 Synthesijer Printf 的なデバッグが可能!! CUI も可能
  18. 18. ここが便利 Synthesijer ソフトで使われるデバッグ手法が可能 Printf 的なデバッグが可能!!
  19. 19. 動いたぜ!!FORTH 結果がジミすぎてすいません。 必要RAMサイズはミニマムで 12KB(もっと絞れるかも)
  20. 20. FORTH 入門 ~その3~ • 断片的なコード(Threaded Code) : (コロン) ではじまり ; (セミコロン) で終わる • 頭の中でコンパイル している(= ハンドコン パイル的発想)
  21. 21. So What? • で、FPGA の中に FORTH が入って何がうれし いの?
  22. 22. Synthesijer の使い方のコツ • Java であらかじめプログラムのバグをつぶす • HDL 的な考えをしない 簡単すぎて M子もびっくり
  23. 23. 広がる妄想 with • いろんなVM/CPUつくれるのでは? • ソフトからハードに移植できるのでは? • FORTH を極める
  24. 24. 広がる妄想 with • いろんなVM/CPUつくれるのでは? • ソフトからハードに移植できるのでは? • FORTH を極める • JavaScript • ruby/mruby • erlang
  25. 25. 広がる妄想 with • いろんなVM/CPUつくれるのでは? • ソフトからハードに移植できるのでは? • FORTH を極める• ハードの分野と思われていな かったもの? (早い者勝ちだ!!) – httpd – ファイルシステム – DB
  26. 26. 広がる妄想 with • いろんなVM/CPUつくれるのでは? • ソフトからハードに移植できるのでは? • FORTH を極める May The FORTH Be With You
  27. 27. ご清聴ありがとうございました [量]

×