Your SlideShare is downloading. ×
0
増え続ける情報に対応するためのFPGA基礎知識
増え続ける情報に対応するためのFPGA基礎知識
増え続ける情報に対応するためのFPGA基礎知識
増え続ける情報に対応するためのFPGA基礎知識
増え続ける情報に対応するためのFPGA基礎知識
増え続ける情報に対応するためのFPGA基礎知識
増え続ける情報に対応するためのFPGA基礎知識
増え続ける情報に対応するためのFPGA基礎知識
増え続ける情報に対応するためのFPGA基礎知識
増え続ける情報に対応するためのFPGA基礎知識
増え続ける情報に対応するためのFPGA基礎知識
増え続ける情報に対応するためのFPGA基礎知識
増え続ける情報に対応するためのFPGA基礎知識
増え続ける情報に対応するためのFPGA基礎知識
増え続ける情報に対応するためのFPGA基礎知識
増え続ける情報に対応するためのFPGA基礎知識
増え続ける情報に対応するためのFPGA基礎知識
増え続ける情報に対応するためのFPGA基礎知識
増え続ける情報に対応するためのFPGA基礎知識
増え続ける情報に対応するためのFPGA基礎知識
増え続ける情報に対応するためのFPGA基礎知識
増え続ける情報に対応するためのFPGA基礎知識
増え続ける情報に対応するためのFPGA基礎知識
増え続ける情報に対応するためのFPGA基礎知識
増え続ける情報に対応するためのFPGA基礎知識
増え続ける情報に対応するためのFPGA基礎知識
増え続ける情報に対応するためのFPGA基礎知識
増え続ける情報に対応するためのFPGA基礎知識
増え続ける情報に対応するためのFPGA基礎知識
増え続ける情報に対応するためのFPGA基礎知識
増え続ける情報に対応するためのFPGA基礎知識
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

増え続ける情報に対応するためのFPGA基礎知識

500

Published on

LINE Fukuoka社内勉強会用の資料です

LINE Fukuoka社内勉強会用の資料です

Published in: Software
0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
500
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
2
Comments
0
Likes
4
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. 増え続ける情報に対応するための FPGA基礎知識 2015年6月24日 きしだなおき
  • 2. FPGAとは ● Field Programmable Gate Array – Field 現場で – Programmable プログラム可能な – Gate 論理素子が – Array いっぱい並んだやつ ● 現場でプログラムできる論理回路
  • 3. 回路をプログラムできる ● 1chip MSX – MSXという1983年のパソコン規格をFPGAで実現 – Z80 CPU – V9938ディスプレイプロセッサ – AY-3-8910サウンドジェネレータ(PSG)
  • 4. FPGAの仕組み
  • 5. 回路の合成 ● 例:3入力でORとANDの組み合わせ
  • 6. 回路にはいろいろある ● XORやNOTなどいろいろ組み合わせると大変 ● 全部用意しようとすると使わない素子が多くなる ● 回路に無駄
  • 7. 回路の入出力の組み合わせ 入力 出力 000 0 100 0 010 0 110 1 001 1 101 1 011 1 111 1
  • 8. LUT(LookUp Table) ● 入出力をあらかじめメモリにもっておけばいい ● 製品としては4入力LUTや6入力LUT 入力 出力 000 0 100 0 010 0 110 1 001 1 101 1 011 1 111 1
  • 9. 論理ブロック ● Logical Element(LE) Altera ● Logical Cell(LC) Xilinx
  • 10. 配線 ● 論理ブロックが格子状に配置 ● 周囲に配線 ● アイランドスタイル
  • 11. 乗算回路とメモリ ● 乗算やメモリを論理ブロックの組み合わせで実現 すると効率がわるい ● 乗算回路やメモリ(SRAM)がのってる
  • 12. FPGAは基本的にはメモリ回路 ● LUTの基本はメモリ ● 配線スイッチもメモリ ● 配線データを書き込むだけ
  • 13. FPGAとCPU ● CPUとは – メモリから命令をよびだして、命令にしたがった回路で 処理を行う – ノイマン型アーキテクチャ
  • 14. FPGAなら ● 命令を読み込む必要なく、回路をやりたい処理の とおり並べることができる ● 非ノイマン型アーキテクチャ
  • 15. FPGAの利点 ● 命令を読み込む必要がない – 処理を行うまでのタイムラグが少ない ● 低レイテンシ – 命令解析のための回路が不要 ● 余分な回路がないので低消費電力 ● 細かな並列化
  • 16. ムーアの法則の限界 ● ムーアの法則 – 1年半で集積度が倍になる ● そろそろ限界が見えてきている ● チップ微細化の停滞によって、消費電力が決まれ ばトランジスタ数が決まるようになる – 限られたトランジスタ数で効率よい処理が必要になる
  • 17. 最近のできごと ● 2012 金融処理でのFPGA ● 2014 MicrosoftがサーバーにFPGA採用を発表 ● 2014 DwangoがFPGA技術者を募集 ● 2015 IntelがAlteraを買収
  • 18. 金融計算 ● HFT(High Frequency Trade) ● 時間=お金 ● 回路切り替えにも工夫 – 回路切り替えで処理が止まるならFPGAで時間短縮す る意味がない ● FPGAが計算に利用できる
  • 19. MicrosoftがサーバーにFPGA採用 ● 1632台のFPGAサーバーでクラスタを構成 ● ページランク処理でスループットを2倍 ● スループット同一の場合は遅延を3割減 ● サーバーに載せるFPGAの効率が実証される
  • 20. DwangoがFPGA技術者を募集 ● Dwangoの主力事業は動画配信 ● 動画処理などをFPGAで高速化 ● 日本のサービス会社がFPGAに注目している
  • 21. IntelのAltera買収 ● 2015年6月1日に買収発表 ● AlteraはXilinxと1、2位を争うFPGAメーカー ● XeonとFPGAの組み合わせ ● 「Intelの予想では、2020年までにクラウドサービ スプロバイダのサーバノードの最大1/3でFPGA が活用される」
  • 22. FPGAでの開発 ● 回路記述 – VHDLやVerilogHDLなど ● 論理合成 – HDLを論理回路に変換 ● 配置配線 – 論理回路を実際の回路に配置 ● コンフィギュレーション – FPGAに回路情報を設定
  • 23. HDLの問題点 ● 書くのが面倒 ● 書くのが面倒 ● 論理合成に時間がかかる – 数時間かかったりする ● デバッグが面倒 ● デバッグが面倒 ● テストも面倒 ● テストも面倒 ● いろいろ面倒
  • 24. IPを使う ● Intellectual Property ● ようするにライブラリ ● だれかが作って検証してる
  • 25. SoC ● System on Chip ● CPU回路のせちゃえ – ソフトコアCPU ● 物理CPUのせちゃえ – FPGAの微細化 – チップに余裕 – 再構成可能回路が大量にあってもしかたない – そうだARMを乗せよう
  • 26. 高位合成 ● CとかJavaとかで書いてHDLに変換 ● アルゴリズムの検証がソフトウェアとして行える – デバッガなどが使える – コンパイルが速い ● OpenCL – GPUやCPUでの並列にも対応
  • 27. FPGAのつかいどころ ● ネットワーク処理 ● 人工知能 ● IoT
  • 28. ネットワーク処理 ● 40Gbイーサとか100Gbイーサとかが普及すると 処理についていけない ● 暗号化や認証、圧縮処理をFPGAで行うとよさげ ● CPUはアプリケーション処理に専念
  • 29. 人工知能 ● 深層ニューラルネットワーク ● たくさんの掛け算・足し算を要素ごとに行う
  • 30. IoT ● たくさんのセンサーから常時データが送られる ● ほとんどのデータは無駄 ● 人工知能(深層ニューラルネットワーク)に学習さ せて、必要なデータだけを送信 ● 低消費電力
  • 31. FPGAやりましょう

×