Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
FPGA入門 / Introduction of FPGA 2019
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Naoki Kishida
July 10, 2019
Technology
1.2k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
FPGA入門 / Introduction of FPGA 2019
2019年7月10日に「夏のAI EdgeハードウェアMeetup in 福岡」で発表した資料です
Naoki Kishida
July 10, 2019
More Decks by Naoki Kishida
See All by Naoki Kishida
Java 27新機能 / Java 27 new features
kishida
2
120
ローカルLLMでどこまでコードが書けるか -LLM基礎知識 / How much code can be written on a local LLM - fundamental knowledge
kishida
10
9.4k
ソフトウェアエンジニアにとっての生成AI - 特性を知って使い倒す / generative ai for software enginner
kishida
7
2.4k
ローカルLLMでどこまでコードが書けるか -縮小版 / How much code can be written on a local LLM Shortened
kishida
2
400
ローカルLLMでどこまでコードが書けるか -拡張版 / How much code can be written on a local LLM Extended
kishida
12
5.6k
Javaの型とAI時代に型が大事な理由 / java types and type in AI era
kishida
2
220
ローカルLLMでどこまでコードが書けるか / How much code can be written on a local LLM
kishida
2
620
ローカルLLM基礎知識 / local LLM basics 2025
kishida
30
17k
AIエージェントでのJava開発がはかどるMCPをAIを使って開発してみた / java mcp for jjug
kishida
5
1.3k
Other Decks in Technology
See All in Technology
積み重なった技術負債への挑戦 〜初手としての全社ゴト化〜
techtekt
PRO
0
720
コスト最適化の「めんどくさい」を AWS FinOps Agent でチョット楽にする
classmethod_kaz
0
340
AI 時代のスタートアップエコシステ厶から考究する技術的負債との向き合い方
m3m0r7
PRO
2
1.5k
The Agent Builder Loop from Daily Work to OSS
minorun365
PRO
3
180
Sigmaで作る業務アプリ
kazushiro_honma
0
140
アプリログインとWeb認証基盤をつなぐ ASWebAuthenticationSession 作法
shimastripe
1
310
現場で役立つ技術負債の効果的な返済方法
masuda220
PRO
6
1.7k
synctest時代のhttptest Go 1.27で変わるHTTPサーバテストの裏側 / go conference2026 synctest and httptest
budougumi0617
1
2.8k
Genieを崇めよ
kameitomohiro
0
120
顧客に向き合う開発組織へ。リアーキテクチャとフィーチャーチーム化で挑む組織改革
safie
0
1.3k
SREは、MCPとAutopilotをこう使え!
kazumax55
2
730
AIネイティブプロダクトで顧客価値を最大化するプロダクトエンジニアとFDEの協働
righttouch
PRO
0
280
Featured
See All Featured
ラッコキーワード サービス紹介資料
rakko
1
4.9M
Ruling the World: When Life Gets Gamed
codingconduct
0
330
Paper Plane (Part 1)
katiecoart
PRO
1
11k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
700
Building the Perfect Custom Keyboard
takai
2
870
Typedesign – Prime Four
hannesfritz
42
3.2k
Git: the NoSQL Database
bkeepers
PRO
432
67k
Building AI with AI
inesmontani
PRO
1
1.2k
How to Ace a Technical Interview
jacobian
281
24k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.6k
Test your architecture with Archunit
thirion
2
2.4k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Transcript
FPGA入門 夏のAI EdgeハードウェアMeetup in 福岡 2019年7月10日 きしだなおき
FPGAとは • Field Programmable Gate Array – Field 現場で –
Programmable プログラム可能な – Gate 論理素子が – Array いっぱい並んだやつ • 現場でプログラムできる論理回路
FPGAの仕組み
回路の合成 • 例:3入力でORとANDの組み合わせ
回路にはいろいろある • XORやNOTなどいろいろ組み合わせると大変 • 全部用意しようとすると使わない素子が多く なる • 回路に無駄
回路の入出力の組み合わせ 入力 出力 000 0 100 0 010 0 110
1 001 1 101 1 011 1 111 1
LUT(LookUp Table) • 入出力をあらかじめメモリにもっておけばい い • 製品としては4入力LUTや6入力LUT 入力 出力 000
0 100 0 010 0 110 1 001 1 101 1 011 1 111 1
論理ブロック • Logical Element(LE) Intel(Altera) • Logical Cell(LC) Xilinx
配線 • 論理ブロックが格子状に配置 • 周囲に配線 • アイランドスタイル
乗算回路とメモリ • 乗算やメモリを論理ブロックの組み合わせで 実現すると効率がわるい • 乗算回路やメモリ(SRAM)がのってる
FPGAは基本的にはメモリ回路 • LUTの基本はメモリ • 配線スイッチもメモリ • 配線データを書き込むだけ
FPGAとCPU • CPUとは – メモリから命令をよびだして、命令にしたがった 回路で処理を行う – ノイマン型アーキテクチャ
FPGAなら • 命令を読み込む必要なく、回路をやりたい処 理のとおり並べることができる • 非ノイマン型アーキテクチャ
FPGAの利点 • 命令を読み込む必要がない – 処理を行うまでのタイムラグが少ない • 低レイテンシ – 命令解析のための回路が不要 •
余分な回路がないので低消費電力 • 細かな並列化
FPGAでの開発 • 回路記述 – VHDLやVerilogHDLなど • 論理合成 – HDLを論理回路に変換 •
配置配線 – 論理回路を実際の回路に配置 • コンフィギュレーション – FPGAに回路情報を設定
ソフトウェアとの違い • 配線は記述順序は関係ない • 状態はレジスタで保持してクロックなど契機 に変更
HDLの問題点 • 書くのが面倒 • 書くのが面倒 • 論理合成に時間がかかる – 数時間かかったりする •
デバッグが面倒 • デバッグが面倒 • テストも面倒 • テストも面倒 • いろいろ面倒
IPを使う • Intellectual Property • ようするにライブラリ • だれかが作って検証してる
SoC • System on Chip • CPU回路のせちゃえ – ソフトコアCPU •
物理CPUのせちゃえ – FPGAの微細化 – チップに余裕 – 再構成可能回路が大量にあってもしかたない – そうだARMを乗せよう
高位合成 • CとかJavaとかで書いてHDLに変換 • アルゴリズムの検証がソフトウェアとして行 える – デバッガなどが使える – コンパイルが速い
• OpenCL – GPUやCPUでの並列にも対応
FPGAのつかいどころ • 画像・映像処理 – Mac ProにはFPGAが載っていて動画エンコーディ ングなどに使える • ネットワーク処理 •
「人工知能」 • IoT
人工知能 • 深層ニューラルネットワーク • たくさんの掛け算・足し算を要素ごとに行う
IoT • たくさんのセンサーから常時データが送られ る • ほとんどのデータは無駄 • 人工知能(深層ニューラルネットワーク)に学習 させて、必要なデータだけを送信 •
低消費電力
実際に試すには? • FPGA開発ボード – DE0-CVやDE0-nano(Intel) • WindowsかLinux • Macの場合はiverilogで信号の確認だけ・・・ –
VirtualBoxなどを使ってLinuxを動かせばOK
FPGAやりましょう