SlideShare a Scribd company logo
1 of 94
研究者のための
Python による FPGA 入門
有限会社シンビー
2017/4/10
アジェンダ
• FPGA と HPC(High-Performance Computing)
• FPGA と Deep Learning
• FPGA と HDL(Hardware Description Language)
• Python (スクリプト言語) 入門
• FPGA と jupyter
• Polyphony (高位合成) 入門
はじめに
研究
テーマ
道具人脈
自己紹介
• @ryos36
• ハッシュタグ
#polyphony
FPGA と HPC
自分の研究に必要な道具は何か?CPU か?GPUか?FPGAか?
FPGA=Field-Programmable Gate Array
http://www.ni.com より
FPGA
Wikipedia より
FPGA の特徴
得意なこと
• 並列計算
• レイテンシを守ること
• ビット計算
• 柔軟性
不得意なこと
• 高速処理?
Clock の比較
Tesla P100
GTX950-2GPYNQ-Z1
1328M1024M~200M
Core i7-7700K
4200M
いろんなところから画像引用。価格は調べた限りでの参考
価格だけでいうと
6,556,568 円!!
Xilinx より
比較
FPGA
PYNQ
GPU
GTX 950
HPC 用
Tesla P100
CPU
i7 7700K
HITACHI
SR16000
Clock ~200M 1024M 1328M 4200M 4000M
FLOPS(単精度) - 1317M 9600G 232G? 8200G x N
FLOPS(倍精度) - 41M 4800G 116G 4100G x N
セル数 85,000 - - - -
SM - 6 24 - -
CUDA コア - 768 3584 - -
CPU Core - - - 4(8) 8 x 24 x N
命令セット拡張 - - - SSE4.1/4.2, AVX 2.0 Altivec VSX
微細? 28nm 28nm 16nm 14nm 45nm
得意なこと 柔軟性のあ
る並列計算
積和演算に特化 逐次処理 逐次処理
2011 当時の最新?スパコン
ノード数不明
比較
FPGA
PYNQ
GPU
GTX 950
HPC 用
Tesla P100
CPU
i7 7700K
HITACHI
SR16000
Clock ~200M 1024M 1328M 4200M 4000M
FLOPS(単精度) - 1317M 9600G 232G? 8200G x N
FLOPS(倍精度) - 41M 4800G 116G 4100G x N
セル数 85,000 - - - -
SM - 6 24 - -
CUDA コア - 768 3584 - -
CPU Core - - - 4(8) 8 x 24 x N
命令セット拡張 - - - SSE4.1/4.2, AVX 2.0 Altivec VSX
微細? 28nm 28nm 16nm 14nm 45nm
得意なこと 柔軟性のあ
る並列計算
積和演算に特化 逐次処理 逐次処理
自由度が高く
入手性もよいので
研究に最適!!
FPGA の特徴(再掲)
得意なこと
• 並列計算
• レイテンシを守ること
• ビット計算
• 柔軟性
不得意なこと
• 高速処理?
FPGA の並列処理
処理
処理
処理
処理
処理
処理
処理
処理
FPGA でパイプライン処理
処理 処理 処理 処理 処理
処理を細分化することで高速化が可能
FPGA で並列処理
処理
処理 処理
処理
処理
並列に処理することで高速化が可能
FPGA の柔軟性(可変長ビット)
64bit
32bit
70bit
49bit
18bit
一般的なレジスタのサイズ
一般的なレジスタのサイズ
レジスタのサイズを変えることができる(混在も可能)
独自表現方法をとることが出来る
8 23
11 52
float
double
よくある浮動小数点
14 55独自表現
浮動小数点:参考
Wikipedia より
研究に必要な
精度の確保
参考:Maxwell (GPU) の中身
超越関数用
64bit 浮動小
数点演算器は
1個!!
32bit 浮動小
数点の演算器
32
入手が容易なGPUは64bit 浮動小数点の性能は1/32になる!!
Load/Store がうまく働き32bit 浮動小数点の積和演算をフル活用
できたときのみカタログスペックの性能が出る
http://pc.watch.impress.co.jp/docs/column/kaigai/752331.html
参考:スパコン
http://www.hitachi.co.jp/Prod/comp/hpc/SR_series/sr16000/feature.html に詳しい
http://www.hitachi.co.jp/Prod/comp/hpc/SR_series/sr16000/feature.html
コンパイラが
頑張っている
らしい
積和演算が早いわけではない。CPU の数分並列動作が期待できる。
SR16000 は 1ノードに 24 のCPU。CPU 1つに 8 つ Power7 コア。
比較(再掲)+
FPGA
PYNQ
GPU
GTX 950
HPC 用
Tesla P100
CPU
i7 7700K
HITACHI
SR16000
Clock ~200M 1024M 1328M 4200M 4000M
FLOPS(単精度) - 1317M 9600G 232G? 8200G x N
FLOPS(倍精度) - 41M 4800G 116G 4100G x N
セル数 85,000 - - - -
SM - 6 24 - -
CUDA コア - 768 3584 - -
CPU Core - - - 4(8) 8 x 24 x N
命令セット拡張 - - - SSE4.1/4.2, AVX 2.0 Altivec VSX
微細? 28nm 28nm 16nm 14nm 45nm
得意なこと 柔軟性のあ
る並列計算
積和演算に特化 逐次処理 逐次処理
CPU の分だけ逐次処
理を並列化。
将棋の分散処理など
に適する
積和演算をやたらと
早く可能。
3D のレンダリング、
Convolution などに適
する
まとめ
• CPU(スパコン) が万能なわけではない
• GPU もまた万能なわけではない(適合分野有)
• FPGA は柔軟性に富むので研究に使える
FPGA とディープラーニング
ディープラーニング
…
…
…
0の確率
3の確率
8の確率
9の確率
……
パーセプトロン
1
𝑥1
𝑥2
𝑎 𝑦
h( )
𝑏
𝑤1
𝑤2
𝑎 = 𝑏 + 𝑤1𝑥1 + 𝑤2𝑥2
𝑦 = ℎ(𝑎)
典型的なh は
シグモイド関数
ℎ 𝑥 =
1
1 + exp −𝑥
シグモイド関数
ℎ 𝑥 =
1
1 + exp −𝑥
実際の計算
1
𝑥1
𝑥2
𝑎 𝑦
h( )
𝑏
𝑤1
𝑤2
1.0
0.1
0.5
0.1
0.2
0.45 0.610639234
浮動小数点
どこまで精度
が必要かは
不明
畳み込み演算
1 2 3 0
0 1 2 3
3 0 1 2
2 3 0 1
2 0 1
0 1 2
1 0 2
15 16
6 15
行列演算
GPUが得意
スパコンは苦手(なはず)。
領域分解して並列性をあ
げるなどして対応している
(はず)。
研究者の皆さんどうしているのか?
TensorFlow 等
で
ネットワーク設
計
データを用意
して、レンタル
サーバで計算
検証
できたネットワーク+パラメタ
Cのソース生成
コンパイルして自分の
PCやサーバで実行
FPGA を使う
TensorFlow 等
で
ネットワーク設
計
データを用意
して、レンタル
サーバで計算
検証
できたネットワーク+パラメタ
Cのソース生成
コンパイルして自分の
PCやサーバで実行FPGA 上で
TensorFlow
• Python でネットワーク設計
http://qiita.com/icoxfog417/items/fb5c24e35a849f8e2c5d
が参考になる
𝑦 = 𝑥2
+ 𝑏
import tensorflow as tf
def x2_plus_b(x, b):
_x = tf.constant(x)
_b = tf.constant(b)
result = tf.square(_x)
result = tf.add(result, _b)
return result
𝑥
𝑏
square add
FPGA の問題
1
𝑥1
𝑥𝑛
𝑎 𝑦
h( )
𝑏
𝑤1
𝑤𝑛
…
𝑎 =
𝑖=1
𝑛
𝑤𝑖𝑥𝑖
行列演算=積和演算
しかも浮動小数点
𝑦
h( )
二値化NN
𝑎
1
𝑏
𝑤1
𝑥1
𝑤𝑛
𝑥𝑛
…
𝒙𝟏 𝒘𝟏 𝒂𝟏
-1 -1 1
-1 +1 -1
+1 -1 -1
+1 +1 1
𝒙𝟏 𝒘𝟏 𝒂𝟏
0 0 1
0 1 0
1 0 0
1 1 1
Binarized Neural Networks
• Binarized Neural Networks: Training Neural
Networks withWeights and Activations
Constrained to +1 or -1
• XNOR-Net: ImageNet Classification Using
Binary Convolutional Neural Networks
Qiita に日本語で解説を書いた人がいる
http://qiita.com/supersaiakujin/items/6adaf9731c9475891911
まとめ
• Binary Neural Networks で FPGA でも高速にし
かも GPU に劣らない早い計算ができる。精度
もそれほど落ちない(らしい)。
• Python がいろんなところで使われている
FPGA とHDL
HDL で何か実装してみよう!?
• 使う言語
– VHDL
– Verilog HDL
LED チカチカ=Lチカ
ハードウェアの
Hello World 的存在
VHDL を使った問題
signal x: std_logic
…
process (clk)
variable y : std_logic;
begin
if clk’event and clk = 1 then
y := x + 1
x <= x + 1
end if;
end process;
Q: x はいま 3 とします。
左辺にある y と x は
いくつになるでしょう?
VHDL を使った問題
signal x: std_logic
…
process (clk)
variable y : std_logic;
begin
if clk’event and clk = 1 then
y := x + 1
x <= x + 1
end if;
end process;
A:
y は 4、
x は 3のまま。
次のクロックで 4。
何を意味してい
るのか?
FPGA でパイプライン処理(再掲)
処理 処理 処理 処理 処理
処理を細分化することで高速化が可能
x + 1
x
x + 1
x
頭の中でオーバラップする時間を
考えながら設計する!!
何を意味してい
るのか?
そもそも15年くらい前は、、、
今でも検証には波形を見る
HDL 開発者のために本を書きました
• ARM Cortex-A9×2! ZynqでワンチップLinux
on FPGA
2014/11/25 に発売された本
Amazonで一瞬だけ1位になった
FPGA を使う(再掲)
TensorFlow 等で
ネットワーク設計
データを用意して、
レンタルサーバで
計算
検証
できたネットワーク+パラメタ
Cのソース生成
コンパイルして自分の
PCやサーバで実行FPGA 上でHLS という
技術でC/C++ を
HDL 化可能
東工大の中原先生の研究(だとおもう)
https://www.slideshare.net/HirokiNakahara1/cnn-on-fpgagpu から勝手に想像
HLS(High Level Synthesis)
• Vivado HLS/SDSoC
– C/C++
• Intel FPGA SDK for OpenCL
– OpenCL(C ライク)
• Polypony
– Python
雑誌で記事を書きました。
まとめ
• FPGA の開発には HLS を使おう!!
– 今回のこれからの話は Polyphony (Python Based)
PYTHON 入門
Jupyter をつかって簡単に Python
Python を使う上での注意点
• なぜか Python 2 と 3 がある
– バージョンで微妙に違いあり
– ここでは Version 3.X をお勧め
>>> print 1, 2, 3
1 2 3
>>> print (1, 2, 3)
1 2 3
Version 2.X Version 3.X
スクリプト言語っぽい 普通の言語っぽい
入門者にお勧めの本
定価:本体3,800円+税
= 4,104 円
ただし、Version 2 系
使った限りでは Version 3 でも
大丈夫だった
入門の次のステップ
この手の Python の本多し
Python って数学に強いの?
BLAS
Basic Linear Algebra Subprograms
ベクトルと行列に関する基本線型代数操作
LAPACK
Linear Algebra PACKage
線型計算のための数値解析ソフトウェアライブラリバックエンドで
これらを使用可能
• OpenBLAS
• ATLAS
実際に使ってみる:jupyter を使う
ジュピター
Try it!!
http://jupyter.org/
新規作成(Python3)
Hello World
実行
Hello Word 関数
ここの空白が
本当は重要
Python のプログラム例
g_v0 = 20150529
g_v1 = 20170406
def func(n):
if n % 2:
return g_v0
else:
return g_v1
ここの空白が
本当は重要
TAB=4文字
を推奨
Python のプログラム例
def func(x):
ans = 0
iterLeft = x
while ( iterLeft != 0 ):
ans = ans + x
iterLeft = iterLeft - 1
if True :
print("x = ", x, ", ans = ", ans, ",
iterLeft = ", iterLeft)
return ans
宣言しなくても
よい
代入は
ローカル変数
Python のローカルとグローバル変数
のルールは何ですか?
Python では、関数内で参照されるだけの変数は暗黙的にグローバル
にです。関数の本体のどこかで値が変数に代入されたなら、それは明
示的にグローバルであると宣言されない限り、ローカルであるとみなさ
れます。Python では、関数内で参照されるだけの変数は暗黙的にグ
ローバルにです。関数の本体のどこかで値が変数に代入されたなら、
それは明示的にグローバルであると宣言されない限り、ローカルであ
るとみなされます。
最初はちょっと驚くでしょうが、少し考えると納得できます。一方では、
代入された変数に global を要求することで、意図しない副作用を防げ
ます。他方では、グローバルな参照の度に global が要求されてしまう
と、 global を使ってばかりになってしまいます。ビルトイン関数やイン
ポートされたモジュールの内容を参照するたびにグローバル宣言をし
なければならないのです。その乱雑さは副作用を特定するための
global 宣言の便利さよりも重大です。
http://docs.python.jp/3/faq/programming.html#what-are-the-rules-for-local-and-global-variables-in-python
Global と Local
• 関数内で参照されるだけの変数は暗黙的にグローバル。
• 関数の本体のどこかで値が変数に代入されたなら、ローカルであ
るとみなされます。
def func(x):
ans = g_v + x
return ans
ans: 代入されているのでローカル
g_v: 参照だけなのでグローバル
x: 引数なのでローカル
ルール
Fibonacci Number
#from polyphony import testbench
def fib(n):
if n <= 0: return 0
if n == 1: return 1
r0 = 0
r1 = 1
for i in range(n-1):
prev_r1 = r1
r1 = r0 + r1
r0 = prev_r1
return r1
#@testbench
def test():
expect = [0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610]
for i in range(len(expect)):
result = fib(i)
assert expect[i] == result
print(i, "=>", result)
test()
まとめ
• Python を使おう!!
– 空白に注意
– グローバルとローカルに注意
– jupyter を使うと便利
FPGA と JUPYTER
ここでは単純に FPGA と Python の組み合わせ例を見せます
PYNQ:Python Productivity For Zynq
Zynq という ARM+FPGAの
ボードを Python で
使い倒そうという
コロンビア大学発の
アカデミックな試み(たぶん)
ターゲットは誰?
ソフトウェアの開発者
Key technologies
実際のデモ
• LED を光らせる
• OLED に何か表示する
• センサーをつかう
Binary NN のデモ
• Cifar10
– 画像を10種類に分類するデモ
おまけ:スプラトゥーンの解析ができるらしい
IkaLog
https://www.nintendo.co.jp
@hasegaw
から勝手に引用
K近傍
使っている
らしい
まとめ
• PYNQ を使うと FPGA を知らなくてもハードが
使える
• Binary Neural Network も使える
POLYPHONY (高位合成) 入門
Python でFPGA のプログラミング
まずは Lチカ、、、
• こんな感じでできます
といいたいところですが、デモしません。たぶん方向性が違うので
from polyphony import testbench, module, is_worker_running
from polyphony.io import Bit
@module
class Blink:
def __init__(self):
self.led = Bit(0)
self.append_worker(self.main, led)
def main(self):
led = 1
while is_worker_running():
self.led.wr(led)
led = ~led
self._wait(10000000)
def _wait(self, interval):
for i in range(interval):
pass
blink = Blink()
Polyphony で可能な IoT 的なこと
• SPI のアクセス
• I2C のアクセス
SPI を通してA/Dコンバータから
情報を取得。
LPF (ロウ・パス・フィルター)をかけて
CPUに送る
Arduino や Raspberry Pi でもできます。
A/D に関しては Raspberry
Pi より Arduino
根性があるなら FPGA
準備(1/4)
• Python3 のインストール
> python3 --version
Python 3.4.5
sudo apt-get python3-dev
準備(2/4)
• pip3 のインストール
> pip3 --version
pip 8.1.1 from /lib/python3.4/site-
packages (python 3.4)
sudo apt-get python3-pip
準備(3/4)
• polyphony のインストール
> pip3 install polyphony
> polyphony –V
Polyphony 0.3.0
準備(4/4)
• iverilog のインストール sudo apt-get install iverilog
> iverilog -V
Icarus Verilog version 11.0 (devel) (s20150603-148-g24d1f49)
Copyright 1998-2015 Stephen Williams
Hello World
from polyphony import testbench
def hello():
print("Hello World.")
@testbench
def test():
hello()
test()
hello.py
Hello World を Python3 で実行
> python3 hello.py
Hello World.
Hello World をコンパイル・実行
> polyphony hello.py
> ls *.v
hello.v polyphony_out.v test.v
> iverilog -o hello polyphony_out.v test.v
> ./hello
0:
Hello World.
Hello World.
Hello World.
Hello World.
150:finish
Hello World.
コンパイル
.v ファイルを
確認
iverilog でコンパイル
simu.py をダウンロード
• 前の手順をいっぺんにおこなう Python のスク
リプト
https://github.com/ktok07b6/polyphony/blob/master/simu.py
クリックで
ダウンロード
simu.py を使う
> ../bin/simu.py hello.py
0:
Hello World.
Hello World.
Hello World.
Hello World.
150:finish
Hello World.
Hello World(再掲)
from polyphony import testbench
def hello():
print("Hello World.")
@testbench
def test():
hello()
test()
hello.py
FPGA 側で
実行されるであ
ろうコード
print は実機
では使えない
ポイント
• FPGA 側で実行されるコードは関数
• print は実機では実行されない
– シミュレーションでは実行可能
• 用語
– testbench :テストベンチ
• 要はテスト用プログラム
もう少し実用的なコード
from polyphony import testbench
def mul_plus(a, b, c, d):
return a * b + c * d
@testbench
def test():
assert 17 == mul_plus(1, 2, 3, 4)
assert 62 == mul_plus(4, 5, 6, 7)
test()
Assert
整合性の
チェック
Python3 で実行
> python3 mul_plus.v
Traceback (most recent call last):
File "mul_plus.v", line 11, in <module>
test()
File “…./__init__.py", line 30, in _testbench_decorator
func()
File "mul_plus.v", line 8, in test
assert 17 == mul_plus(1, 2, 3, 4)
AssertionError
エラー!!!
バグを修正
from polyphony import testbench
def mul_plus(a, b, c, d):
return a * b + c * d
@testbench
def test():
assert 14 == mul_plus(1, 2, 3, 4)
assert 62 == mul_plus(4, 5, 6, 7)
test()
バグを修正
Python3 で実行
> python3 mul_plus.v
何も出力されない
けど正しい結果
simu.py で実行
> ../bin/simu.py mul_plus.v
0:mul_plus_0_in_a= x, mul_plus_0_in_b= x, mul_plus_0_in_c= x, mul_plus_0_in_d= x,
mul_plus_0_out_0= x
10:mul_plus_0_in_a= 0, mul_plus_0_in_b= 0, mul_plus_0_in_c= 0, mul_plus_0_in_d= 0,
mul_plus_0_out_0= 0
110:mul_plus_0_in_a= 1, mul_plus_0_in_b= 2, mul_plus_0_in_c= 3, mul_plus_0_in_d= 4,
mul_plus_0_out_0= 0
130:mul_plus_0_in_a= 1, mul_plus_0_in_b= 2, mul_plus_0_in_c= 3, mul_plus_0_in_d= 4,
mul_plus_0_out_0= 14
160:mul_plus_0_in_a= 4, mul_plus_0_in_b= 5, mul_plus_0_in_c= 6, mul_plus_0_in_d= 7,
mul_plus_0_out_0= 14
180:mul_plus_0_in_a= 4, mul_plus_0_in_b= 5, mul_plus_0_in_c= 6, mul_plus_0_in_d= 7,
mul_plus_0_out_0= 62
220:finish
実行時間
Fibonacci Number
from polyphony import testbench
def fib(n):
if n <= 0: return 0
if n == 1: return 1
r0 = 0
r1 = 1
for i in range(n-1):
prev_r1 = r1
r1 = r0 + r1
r0 = prev_r1
return r1
@testbench
def test():
expect = [0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610]
for i in range(len(expect)):
result = fib(i)
assert expect[i] == result
print(i, "=>", result)
test()
jupyter で実行
質疑応答
• @ryos36
• ハッシュタグ
#polyphony
Polyphony の今後
• CPU をつくります
• Deep Learning
• Bayes
• 数値計算
– 精度保証付き?

More Related Content

What's hot

組み込み関数(intrinsic)によるSIMD入門
組み込み関数(intrinsic)によるSIMD入門組み込み関数(intrinsic)によるSIMD入門
組み込み関数(intrinsic)によるSIMD入門Norishige Fukushima
 
Singularityで分散深層学習
Singularityで分散深層学習Singularityで分散深層学習
Singularityで分散深層学習Hitoshi Sato
 
1076: CUDAデバッグ・プロファイリング入門
1076: CUDAデバッグ・プロファイリング入門1076: CUDAデバッグ・プロファイリング入門
1076: CUDAデバッグ・プロファイリング入門NVIDIA Japan
 
ACRiウェビナー:小野様ご講演資料
ACRiウェビナー:小野様ご講演資料ACRiウェビナー:小野様ご講演資料
ACRiウェビナー:小野様ご講演資料直久 住川
 
いまさら聞けない!CUDA高速化入門
いまさら聞けない!CUDA高速化入門いまさら聞けない!CUDA高速化入門
いまさら聞けない!CUDA高速化入門Fixstars Corporation
 
ARM CPUにおけるSIMDを用いた高速計算入門
ARM CPUにおけるSIMDを用いた高速計算入門ARM CPUにおけるSIMDを用いた高速計算入門
ARM CPUにおけるSIMDを用いた高速計算入門Fixstars Corporation
 
ソフトウェア技術者から見たFPGAの魅力と可能性
ソフトウェア技術者から見たFPGAの魅力と可能性ソフトウェア技術者から見たFPGAの魅力と可能性
ソフトウェア技術者から見たFPGAの魅力と可能性Kenichiro MITSUDA
 
FPGA+SoC+Linux実践勉強会資料
FPGA+SoC+Linux実践勉強会資料FPGA+SoC+Linux実践勉強会資料
FPGA+SoC+Linux実践勉強会資料一路 川染
 
さるでも分かりたい9dofで作るクォータニオン姿勢
さるでも分かりたい9dofで作るクォータニオン姿勢さるでも分かりたい9dofで作るクォータニオン姿勢
さるでも分かりたい9dofで作るクォータニオン姿勢ytanno
 
画像処理ライブラリ OpenCV で 出来ること・出来ないこと
画像処理ライブラリ OpenCV で 出来ること・出来ないこと画像処理ライブラリ OpenCV で 出来ること・出来ないこと
画像処理ライブラリ OpenCV で 出来ること・出来ないことNorishige Fukushima
 
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)Kuniyasu Suzaki
 
AVX-512(フォーマット)詳解
AVX-512(フォーマット)詳解AVX-512(フォーマット)詳解
AVX-512(フォーマット)詳解MITSUNARI Shigeo
 
TensorFlow XLAは、 中で何をやっているのか?
TensorFlow XLAは、 中で何をやっているのか?TensorFlow XLAは、 中で何をやっているのか?
TensorFlow XLAは、 中で何をやっているのか?Mr. Vengineer
 
Intro to SVE 富岳のA64FXを触ってみた
Intro to SVE 富岳のA64FXを触ってみたIntro to SVE 富岳のA64FXを触ってみた
Intro to SVE 富岳のA64FXを触ってみたMITSUNARI Shigeo
 
CEDEC2015「加算合成コストが0になる!?すぐに使えるP-MAPブレンドテクニック」発表スライド
CEDEC2015「加算合成コストが0になる!?すぐに使えるP-MAPブレンドテクニック」発表スライドCEDEC2015「加算合成コストが0になる!?すぐに使えるP-MAPブレンドテクニック」発表スライド
CEDEC2015「加算合成コストが0になる!?すぐに使えるP-MAPブレンドテクニック」発表スライドToshiyasu Miyabe
 
ZynqMPのブートとパワーマネージメント : (ZynqMP Boot and Power Management)
ZynqMPのブートとパワーマネージメント : (ZynqMP Boot and Power Management)ZynqMPのブートとパワーマネージメント : (ZynqMP Boot and Power Management)
ZynqMPのブートとパワーマネージメント : (ZynqMP Boot and Power Management)Mr. Vengineer
 
CUDAプログラミング入門
CUDAプログラミング入門CUDAプログラミング入門
CUDAプログラミング入門NVIDIA Japan
 
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021Preferred Networks
 
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptxネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptxShota Shinogi
 

What's hot (20)

組み込み関数(intrinsic)によるSIMD入門
組み込み関数(intrinsic)によるSIMD入門組み込み関数(intrinsic)によるSIMD入門
組み込み関数(intrinsic)によるSIMD入門
 
Singularityで分散深層学習
Singularityで分散深層学習Singularityで分散深層学習
Singularityで分散深層学習
 
1076: CUDAデバッグ・プロファイリング入門
1076: CUDAデバッグ・プロファイリング入門1076: CUDAデバッグ・プロファイリング入門
1076: CUDAデバッグ・プロファイリング入門
 
ACRiウェビナー:小野様ご講演資料
ACRiウェビナー:小野様ご講演資料ACRiウェビナー:小野様ご講演資料
ACRiウェビナー:小野様ご講演資料
 
いまさら聞けない!CUDA高速化入門
いまさら聞けない!CUDA高速化入門いまさら聞けない!CUDA高速化入門
いまさら聞けない!CUDA高速化入門
 
ARM CPUにおけるSIMDを用いた高速計算入門
ARM CPUにおけるSIMDを用いた高速計算入門ARM CPUにおけるSIMDを用いた高速計算入門
ARM CPUにおけるSIMDを用いた高速計算入門
 
ソフトウェア技術者から見たFPGAの魅力と可能性
ソフトウェア技術者から見たFPGAの魅力と可能性ソフトウェア技術者から見たFPGAの魅力と可能性
ソフトウェア技術者から見たFPGAの魅力と可能性
 
FPGA+SoC+Linux実践勉強会資料
FPGA+SoC+Linux実践勉強会資料FPGA+SoC+Linux実践勉強会資料
FPGA+SoC+Linux実践勉強会資料
 
さるでも分かりたい9dofで作るクォータニオン姿勢
さるでも分かりたい9dofで作るクォータニオン姿勢さるでも分かりたい9dofで作るクォータニオン姿勢
さるでも分かりたい9dofで作るクォータニオン姿勢
 
画像処理ライブラリ OpenCV で 出来ること・出来ないこと
画像処理ライブラリ OpenCV で 出来ること・出来ないこと画像処理ライブラリ OpenCV で 出来ること・出来ないこと
画像処理ライブラリ OpenCV で 出来ること・出来ないこと
 
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
 
AVX-512(フォーマット)詳解
AVX-512(フォーマット)詳解AVX-512(フォーマット)詳解
AVX-512(フォーマット)詳解
 
TensorFlow XLAは、 中で何をやっているのか?
TensorFlow XLAは、 中で何をやっているのか?TensorFlow XLAは、 中で何をやっているのか?
TensorFlow XLAは、 中で何をやっているのか?
 
Gpu vs fpga
Gpu vs fpgaGpu vs fpga
Gpu vs fpga
 
Intro to SVE 富岳のA64FXを触ってみた
Intro to SVE 富岳のA64FXを触ってみたIntro to SVE 富岳のA64FXを触ってみた
Intro to SVE 富岳のA64FXを触ってみた
 
CEDEC2015「加算合成コストが0になる!?すぐに使えるP-MAPブレンドテクニック」発表スライド
CEDEC2015「加算合成コストが0になる!?すぐに使えるP-MAPブレンドテクニック」発表スライドCEDEC2015「加算合成コストが0になる!?すぐに使えるP-MAPブレンドテクニック」発表スライド
CEDEC2015「加算合成コストが0になる!?すぐに使えるP-MAPブレンドテクニック」発表スライド
 
ZynqMPのブートとパワーマネージメント : (ZynqMP Boot and Power Management)
ZynqMPのブートとパワーマネージメント : (ZynqMP Boot and Power Management)ZynqMPのブートとパワーマネージメント : (ZynqMP Boot and Power Management)
ZynqMPのブートとパワーマネージメント : (ZynqMP Boot and Power Management)
 
CUDAプログラミング入門
CUDAプログラミング入門CUDAプログラミング入門
CUDAプログラミング入門
 
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
 
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptxネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
 

Viewers also liked

Polyphony の並列化
Polyphony の並列化Polyphony の並列化
Polyphony の並列化ryos36
 
2値化CNN on FPGAでGPUとガチンコバトル(公開版)
2値化CNN on FPGAでGPUとガチンコバトル(公開版)2値化CNN on FPGAでGPUとガチンコバトル(公開版)
2値化CNN on FPGAでGPUとガチンコバトル(公開版)Hiroki Nakahara
 
PythonとPyCoRAMでお手軽にFPGAシステムを開発してみよう
PythonとPyCoRAMでお手軽にFPGAシステムを開発してみようPythonとPyCoRAMでお手軽にFPGAシステムを開発してみよう
PythonとPyCoRAMでお手軽にFPGAシステムを開発してみようShinya Takamaeda-Y
 
PyCon JP 2017Yuta Kitagami
PyCon JP 2017Yuta KitagamiPyCon JP 2017Yuta Kitagami
PyCon JP 2017Yuta KitagamiYuta Kitagami
 
Cortex-M0プロセッサから自作して Lチカをやってみた
Cortex-M0プロセッサから自作してLチカをやってみたCortex-M0プロセッサから自作してLチカをやってみた
Cortex-M0プロセッサから自作して LチカをやってみたJunichi Akita
 
IkaLog: Data Collector for Splatoon and Machine Learning
IkaLog: Data Collector for Splatoon and Machine LearningIkaLog: Data Collector for Splatoon and Machine Learning
IkaLog: Data Collector for Splatoon and Machine Learning Takeshi HASEGAWA
 
Golang, make and robotics #gocon
Golang, make and robotics #goconGolang, make and robotics #gocon
Golang, make and robotics #goconHideyuki TAKEI
 
電子回路の民主化とその実践
電子回路の民主化とその実践電子回路の民主化とその実践
電子回路の民主化とその実践Junichi Akita
 
cocos2d-x で PlugAir を 使えるようにしてみた
cocos2d-x で PlugAir を 使えるようにしてみたcocos2d-x で PlugAir を 使えるようにしてみた
cocos2d-x で PlugAir を 使えるようにしてみたHideyuki TAKEI
 
ゆるふわコンピュータ (IPSJ-ONE2017)
ゆるふわコンピュータ (IPSJ-ONE2017)ゆるふわコンピュータ (IPSJ-ONE2017)
ゆるふわコンピュータ (IPSJ-ONE2017)Shinya Takamaeda-Y
 
集積回路が真の道具になるために
集積回路が真の道具になるために集積回路が真の道具になるために
集積回路が真の道具になるためにJunichi Akita
 
2017年のFPGA Community活動について
2017年のFPGA Community活動について2017年のFPGA Community活動について
2017年のFPGA Community活動についてMr. Vengineer
 
FPGAによる津波シミュレーション -- GPUを超える高性能計算の手法
FPGAによる津波シミュレーション -- GPUを超える高性能計算の手法FPGAによる津波シミュレーション -- GPUを超える高性能計算の手法
FPGAによる津波シミュレーション -- GPUを超える高性能計算の手法Kentaro Sano
 
Beatroboでのハードウェアプロトタイピング
BeatroboでのハードウェアプロトタイピングBeatroboでのハードウェアプロトタイピング
BeatroboでのハードウェアプロトタイピングHideyuki TAKEI
 
IkaLog: Data Collector for Splatoon and Machine Learning (Jan 2017 @ Softbank)
IkaLog: Data Collector for Splatoon and Machine Learning (Jan 2017 @ Softbank)IkaLog: Data Collector for Splatoon and Machine Learning (Jan 2017 @ Softbank)
IkaLog: Data Collector for Splatoon and Machine Learning (Jan 2017 @ Softbank)Takeshi HASEGAWA
 
FPGA・リコンフィギャラブルシステム研究の最新動向
FPGA・リコンフィギャラブルシステム研究の最新動向FPGA・リコンフィギャラブルシステム研究の最新動向
FPGA・リコンフィギャラブルシステム研究の最新動向Shinya Takamaeda-Y
 
Pythonによるカスタム可能な高位設計技術 (Design Solution Forum 2016@新横浜)
Pythonによるカスタム可能な高位設計技術 (Design Solution Forum 2016@新横浜)Pythonによるカスタム可能な高位設計技術 (Design Solution Forum 2016@新横浜)
Pythonによるカスタム可能な高位設計技術 (Design Solution Forum 2016@新横浜)Shinya Takamaeda-Y
 
FPGAのトレンドをまとめてみた
FPGAのトレンドをまとめてみたFPGAのトレンドをまとめてみた
FPGAのトレンドをまとめてみたTakefumi MIYOSHI
 

Viewers also liked (20)

Polyphony の並列化
Polyphony の並列化Polyphony の並列化
Polyphony の並列化
 
2値化CNN on FPGAでGPUとガチンコバトル(公開版)
2値化CNN on FPGAでGPUとガチンコバトル(公開版)2値化CNN on FPGAでGPUとガチンコバトル(公開版)
2値化CNN on FPGAでGPUとガチンコバトル(公開版)
 
PythonとPyCoRAMでお手軽にFPGAシステムを開発してみよう
PythonとPyCoRAMでお手軽にFPGAシステムを開発してみようPythonとPyCoRAMでお手軽にFPGAシステムを開発してみよう
PythonとPyCoRAMでお手軽にFPGAシステムを開発してみよう
 
PyCon JP 2017Yuta Kitagami
PyCon JP 2017Yuta KitagamiPyCon JP 2017Yuta Kitagami
PyCon JP 2017Yuta Kitagami
 
Cortex-M0プロセッサから自作して Lチカをやってみた
Cortex-M0プロセッサから自作してLチカをやってみたCortex-M0プロセッサから自作してLチカをやってみた
Cortex-M0プロセッサから自作して Lチカをやってみた
 
IkaLog: Data Collector for Splatoon and Machine Learning
IkaLog: Data Collector for Splatoon and Machine LearningIkaLog: Data Collector for Splatoon and Machine Learning
IkaLog: Data Collector for Splatoon and Machine Learning
 
Golang, make and robotics #gocon
Golang, make and robotics #goconGolang, make and robotics #gocon
Golang, make and robotics #gocon
 
電子回路の民主化とその実践
電子回路の民主化とその実践電子回路の民主化とその実践
電子回路の民主化とその実践
 
cocos2d-x で PlugAir を 使えるようにしてみた
cocos2d-x で PlugAir を 使えるようにしてみたcocos2d-x で PlugAir を 使えるようにしてみた
cocos2d-x で PlugAir を 使えるようにしてみた
 
Klabの梅雨対策
Klabの梅雨対策Klabの梅雨対策
Klabの梅雨対策
 
ゆるふわコンピュータ (IPSJ-ONE2017)
ゆるふわコンピュータ (IPSJ-ONE2017)ゆるふわコンピュータ (IPSJ-ONE2017)
ゆるふわコンピュータ (IPSJ-ONE2017)
 
集積回路が真の道具になるために
集積回路が真の道具になるために集積回路が真の道具になるために
集積回路が真の道具になるために
 
IkaLog20170316pynq_dist
IkaLog20170316pynq_distIkaLog20170316pynq_dist
IkaLog20170316pynq_dist
 
2017年のFPGA Community活動について
2017年のFPGA Community活動について2017年のFPGA Community活動について
2017年のFPGA Community活動について
 
FPGAによる津波シミュレーション -- GPUを超える高性能計算の手法
FPGAによる津波シミュレーション -- GPUを超える高性能計算の手法FPGAによる津波シミュレーション -- GPUを超える高性能計算の手法
FPGAによる津波シミュレーション -- GPUを超える高性能計算の手法
 
Beatroboでのハードウェアプロトタイピング
BeatroboでのハードウェアプロトタイピングBeatroboでのハードウェアプロトタイピング
Beatroboでのハードウェアプロトタイピング
 
IkaLog: Data Collector for Splatoon and Machine Learning (Jan 2017 @ Softbank)
IkaLog: Data Collector for Splatoon and Machine Learning (Jan 2017 @ Softbank)IkaLog: Data Collector for Splatoon and Machine Learning (Jan 2017 @ Softbank)
IkaLog: Data Collector for Splatoon and Machine Learning (Jan 2017 @ Softbank)
 
FPGA・リコンフィギャラブルシステム研究の最新動向
FPGA・リコンフィギャラブルシステム研究の最新動向FPGA・リコンフィギャラブルシステム研究の最新動向
FPGA・リコンフィギャラブルシステム研究の最新動向
 
Pythonによるカスタム可能な高位設計技術 (Design Solution Forum 2016@新横浜)
Pythonによるカスタム可能な高位設計技術 (Design Solution Forum 2016@新横浜)Pythonによるカスタム可能な高位設計技術 (Design Solution Forum 2016@新横浜)
Pythonによるカスタム可能な高位設計技術 (Design Solution Forum 2016@新横浜)
 
FPGAのトレンドをまとめてみた
FPGAのトレンドをまとめてみたFPGAのトレンドをまとめてみた
FPGAのトレンドをまとめてみた
 

Similar to 研究者のための Python による FPGA 入門

Tensor flow usergroup 2016 (公開版)
Tensor flow usergroup 2016 (公開版)Tensor flow usergroup 2016 (公開版)
Tensor flow usergroup 2016 (公開版)Hiroki Nakahara
 
FPGAX6_hayashi
FPGAX6_hayashiFPGAX6_hayashi
FPGAX6_hayashi愛美 林
 
PyCoRAMを用いたグラフ処理FPGAアクセラレータ
PyCoRAMを用いたグラフ処理FPGAアクセラレータPyCoRAMを用いたグラフ処理FPGAアクセラレータ
PyCoRAMを用いたグラフ処理FPGAアクセラレータShinya Takamaeda-Y
 
ソフトウェア技術者はFPGAをどのように使うか
ソフトウェア技術者はFPGAをどのように使うかソフトウェア技術者はFPGAをどのように使うか
ソフトウェア技術者はFPGAをどのように使うかなおき きしだ
 
2値ディープニューラルネットワークと組込み機器への応用: 開発中のツール紹介
2値ディープニューラルネットワークと組込み機器への応用: 開発中のツール紹介2値ディープニューラルネットワークと組込み機器への応用: 開発中のツール紹介
2値ディープニューラルネットワークと組込み機器への応用: 開発中のツール紹介Hiroki Nakahara
 
ACRi_webinar_20220118_miyo
ACRi_webinar_20220118_miyoACRi_webinar_20220118_miyo
ACRi_webinar_20220118_miyoTakefumi MIYOSHI
 
20170421 tensor flowusergroup
20170421 tensor flowusergroup20170421 tensor flowusergroup
20170421 tensor flowusergroupManaMurakami1
 
Tremaで試すFirewall
Tremaで試すFirewallTremaで試すFirewall
Tremaで試すFirewallM Hagiwara
 
GPU-FPGA協調プログラミングを実現するコンパイラの開発
GPU-FPGA協調プログラミングを実現するコンパイラの開発GPU-FPGA協調プログラミングを実現するコンパイラの開発
GPU-FPGA協調プログラミングを実現するコンパイラの開発Ryuuta Tsunashima
 
SDN Japan: ovs-hw
SDN Japan: ovs-hwSDN Japan: ovs-hw
SDN Japan: ovs-hwykuga
 
Lagopus performance
Lagopus performanceLagopus performance
Lagopus performanceMasaru Oki
 
電波望遠鏡用の分光器をAltera SDK for OpenCL使ってサクッと作ってみた
電波望遠鏡用の分光器をAltera SDK for OpenCL使ってサクッと作ってみた電波望遠鏡用の分光器をAltera SDK for OpenCL使ってサクッと作ってみた
電波望遠鏡用の分光器をAltera SDK for OpenCL使ってサクッと作ってみたHiroki Nakahara
 
【関東GPGPU勉強会#4】GTX 1080でComputer Vision アルゴリズムを色々動かしてみる
【関東GPGPU勉強会#4】GTX 1080でComputer Visionアルゴリズムを色々動かしてみる【関東GPGPU勉強会#4】GTX 1080でComputer Visionアルゴリズムを色々動かしてみる
【関東GPGPU勉強会#4】GTX 1080でComputer Vision アルゴリズムを色々動かしてみるYasuhiro Yoshimura
 
High speed-pc-router 201505
High speed-pc-router 201505High speed-pc-router 201505
High speed-pc-router 201505ykuga
 
FPGAを用いたEdge AIの現状
FPGAを用いたEdge AIの現状FPGAを用いたEdge AIの現状
FPGAを用いたEdge AIの現状Yukitaka Takemura
 
もしも… Javaでヘテロジニアスコアが使えたら…
もしも… Javaでヘテロジニアスコアが使えたら…もしも… Javaでヘテロジニアスコアが使えたら…
もしも… Javaでヘテロジニアスコアが使えたら…Yasumasa Suenaga
 
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正版)」
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正版)」「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正版)」
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正版)」ManaMurakami1
 
組込向けDeep Learning最新技術の紹介 量子化テクニックとDorefaNetについて
組込向けDeep Learning最新技術の紹介量子化テクニックとDorefaNetについて組込向けDeep Learning最新技術の紹介量子化テクニックとDorefaNetについて
組込向けDeep Learning最新技術の紹介 量子化テクニックとDorefaNetについてNatsutani Minoru
 

Similar to 研究者のための Python による FPGA 入門 (20)

Tensor flow usergroup 2016 (公開版)
Tensor flow usergroup 2016 (公開版)Tensor flow usergroup 2016 (公開版)
Tensor flow usergroup 2016 (公開版)
 
[DL Hacks]FPGA入門
[DL Hacks]FPGA入門[DL Hacks]FPGA入門
[DL Hacks]FPGA入門
 
Myoshimi extreme
Myoshimi extremeMyoshimi extreme
Myoshimi extreme
 
FPGAX6_hayashi
FPGAX6_hayashiFPGAX6_hayashi
FPGAX6_hayashi
 
PyCoRAMを用いたグラフ処理FPGAアクセラレータ
PyCoRAMを用いたグラフ処理FPGAアクセラレータPyCoRAMを用いたグラフ処理FPGAアクセラレータ
PyCoRAMを用いたグラフ処理FPGAアクセラレータ
 
ソフトウェア技術者はFPGAをどのように使うか
ソフトウェア技術者はFPGAをどのように使うかソフトウェア技術者はFPGAをどのように使うか
ソフトウェア技術者はFPGAをどのように使うか
 
2値ディープニューラルネットワークと組込み機器への応用: 開発中のツール紹介
2値ディープニューラルネットワークと組込み機器への応用: 開発中のツール紹介2値ディープニューラルネットワークと組込み機器への応用: 開発中のツール紹介
2値ディープニューラルネットワークと組込み機器への応用: 開発中のツール紹介
 
ACRi_webinar_20220118_miyo
ACRi_webinar_20220118_miyoACRi_webinar_20220118_miyo
ACRi_webinar_20220118_miyo
 
20170421 tensor flowusergroup
20170421 tensor flowusergroup20170421 tensor flowusergroup
20170421 tensor flowusergroup
 
Tremaで試すFirewall
Tremaで試すFirewallTremaで試すFirewall
Tremaで試すFirewall
 
GPU-FPGA協調プログラミングを実現するコンパイラの開発
GPU-FPGA協調プログラミングを実現するコンパイラの開発GPU-FPGA協調プログラミングを実現するコンパイラの開発
GPU-FPGA協調プログラミングを実現するコンパイラの開発
 
SDN Japan: ovs-hw
SDN Japan: ovs-hwSDN Japan: ovs-hw
SDN Japan: ovs-hw
 
Lagopus performance
Lagopus performanceLagopus performance
Lagopus performance
 
電波望遠鏡用の分光器をAltera SDK for OpenCL使ってサクッと作ってみた
電波望遠鏡用の分光器をAltera SDK for OpenCL使ってサクッと作ってみた電波望遠鏡用の分光器をAltera SDK for OpenCL使ってサクッと作ってみた
電波望遠鏡用の分光器をAltera SDK for OpenCL使ってサクッと作ってみた
 
【関東GPGPU勉強会#4】GTX 1080でComputer Vision アルゴリズムを色々動かしてみる
【関東GPGPU勉強会#4】GTX 1080でComputer Visionアルゴリズムを色々動かしてみる【関東GPGPU勉強会#4】GTX 1080でComputer Visionアルゴリズムを色々動かしてみる
【関東GPGPU勉強会#4】GTX 1080でComputer Vision アルゴリズムを色々動かしてみる
 
High speed-pc-router 201505
High speed-pc-router 201505High speed-pc-router 201505
High speed-pc-router 201505
 
FPGAを用いたEdge AIの現状
FPGAを用いたEdge AIの現状FPGAを用いたEdge AIの現状
FPGAを用いたEdge AIの現状
 
もしも… Javaでヘテロジニアスコアが使えたら…
もしも… Javaでヘテロジニアスコアが使えたら…もしも… Javaでヘテロジニアスコアが使えたら…
もしも… Javaでヘテロジニアスコアが使えたら…
 
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正版)」
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正版)」「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正版)」
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正版)」
 
組込向けDeep Learning最新技術の紹介 量子化テクニックとDorefaNetについて
組込向けDeep Learning最新技術の紹介量子化テクニックとDorefaNetについて組込向けDeep Learning最新技術の紹介量子化テクニックとDorefaNetについて
組込向けDeep Learning最新技術の紹介 量子化テクニックとDorefaNetについて
 

More from ryos36

Pycairo を使ってみる その1
Pycairo を使ってみる その1Pycairo を使ってみる その1
Pycairo を使ってみる その1ryos36
 
ストーリーとは
ストーリーとはストーリーとは
ストーリーとはryos36
 
CNN でテニス選手の動きを解析する
CNN でテニス選手の動きを解析するCNN でテニス選手の動きを解析する
CNN でテニス選手の動きを解析するryos36
 
Polyphony の行く末(2018/3/3)
Polyphony の行く末(2018/3/3)Polyphony の行く末(2018/3/3)
Polyphony の行く末(2018/3/3)ryos36
 
Polyphony 新機能ツアー
Polyphony 新機能ツアーPolyphony 新機能ツアー
Polyphony 新機能ツアーryos36
 
Stellaris を使った組み込みアプリ開発ガイド
Stellaris を使った組み込みアプリ開発ガイドStellaris を使った組み込みアプリ開発ガイド
Stellaris を使った組み込みアプリ開発ガイドryos36
 
数値計算のための Python + FPGA
数値計算のための Python + FPGA数値計算のための Python + FPGA
数値計算のための Python + FPGAryos36
 
Polyphony IO まとめ
Polyphony IO まとめPolyphony IO まとめ
Polyphony IO まとめryos36
 
PYNQ 祭り: Pmod のプログラミング
PYNQ 祭り: Pmod のプログラミングPYNQ 祭り: Pmod のプログラミング
PYNQ 祭り: Pmod のプログラミングryos36
 
SDSoC でストリーム
SDSoC でストリームSDSoC でストリーム
SDSoC でストリームryos36
 
Analog Devices の IP コアを使う
Analog Devices の IP コアを使うAnalog Devices の IP コアを使う
Analog Devices の IP コアを使うryos36
 
SDSoC と Vivado
SDSoC と VivadoSDSoC と Vivado
SDSoC と Vivadoryos36
 
高速化のポイント
高速化のポイント高速化のポイント
高速化のポイントryos36
 
20周遅れ
20周遅れ20周遅れ
20周遅れryos36
 
90分 Scheme to C(勝手に抄訳版)
90分 Scheme to C(勝手に抄訳版)90分 Scheme to C(勝手に抄訳版)
90分 Scheme to C(勝手に抄訳版)ryos36
 
並列計算への道 2015年版
並列計算への道 2015年版並列計算への道 2015年版
並列計算への道 2015年版ryos36
 
NiosII と RTOS について
NiosII と RTOS についてNiosII と RTOS について
NiosII と RTOS についてryos36
 
Synthesijer で作るFORTH仮想マシン
Synthesijer で作るFORTH仮想マシンSynthesijer で作るFORTH仮想マシン
Synthesijer で作るFORTH仮想マシンryos36
 

More from ryos36 (18)

Pycairo を使ってみる その1
Pycairo を使ってみる その1Pycairo を使ってみる その1
Pycairo を使ってみる その1
 
ストーリーとは
ストーリーとはストーリーとは
ストーリーとは
 
CNN でテニス選手の動きを解析する
CNN でテニス選手の動きを解析するCNN でテニス選手の動きを解析する
CNN でテニス選手の動きを解析する
 
Polyphony の行く末(2018/3/3)
Polyphony の行く末(2018/3/3)Polyphony の行く末(2018/3/3)
Polyphony の行く末(2018/3/3)
 
Polyphony 新機能ツアー
Polyphony 新機能ツアーPolyphony 新機能ツアー
Polyphony 新機能ツアー
 
Stellaris を使った組み込みアプリ開発ガイド
Stellaris を使った組み込みアプリ開発ガイドStellaris を使った組み込みアプリ開発ガイド
Stellaris を使った組み込みアプリ開発ガイド
 
数値計算のための Python + FPGA
数値計算のための Python + FPGA数値計算のための Python + FPGA
数値計算のための Python + FPGA
 
Polyphony IO まとめ
Polyphony IO まとめPolyphony IO まとめ
Polyphony IO まとめ
 
PYNQ 祭り: Pmod のプログラミング
PYNQ 祭り: Pmod のプログラミングPYNQ 祭り: Pmod のプログラミング
PYNQ 祭り: Pmod のプログラミング
 
SDSoC でストリーム
SDSoC でストリームSDSoC でストリーム
SDSoC でストリーム
 
Analog Devices の IP コアを使う
Analog Devices の IP コアを使うAnalog Devices の IP コアを使う
Analog Devices の IP コアを使う
 
SDSoC と Vivado
SDSoC と VivadoSDSoC と Vivado
SDSoC と Vivado
 
高速化のポイント
高速化のポイント高速化のポイント
高速化のポイント
 
20周遅れ
20周遅れ20周遅れ
20周遅れ
 
90分 Scheme to C(勝手に抄訳版)
90分 Scheme to C(勝手に抄訳版)90分 Scheme to C(勝手に抄訳版)
90分 Scheme to C(勝手に抄訳版)
 
並列計算への道 2015年版
並列計算への道 2015年版並列計算への道 2015年版
並列計算への道 2015年版
 
NiosII と RTOS について
NiosII と RTOS についてNiosII と RTOS について
NiosII と RTOS について
 
Synthesijer で作るFORTH仮想マシン
Synthesijer で作るFORTH仮想マシンSynthesijer で作るFORTH仮想マシン
Synthesijer で作るFORTH仮想マシン
 

研究者のための Python による FPGA 入門