SlideShare a Scribd company logo
マルチパラダイム型
高水準ハードウェア設計環境の検討
高前田 伸也
奈良先端科学技術大学院大学 情報科学研究科
E-mail: shinya_at_is_naist_jp
2016年2月29日 15:25-15:50
IEICE VLD@沖縄県青年会館
目次
n 背景:FPGAと高位合成の流行
l 逐次記述からRTLに変換する動作合成だけでOK?
l 内容に応じて異なるパラダイムを使い分けるのが重要
n 提案:マルチパラダイム型高位ハードウェア設計
l 異なるモデル(RTL・データフロー・逐次)を密結合
l 要素技術:Veriloggen.Dataflow
• オペレータオーバーロードによる
データフローを主体とした演算パイプライン設計
n 評価
l Veriloggen.Dataflowの設計効率の評価
l PyCoRAM逐次合成器を用いたマルチパラダイム方式の初期評価
n まとめ
VLD2016-02 Shinya T-Y, NAIST 2
FPGAと高位合成、流行ってますね
n アクセラレータとしての
FPGA
l 機械学習(深層学習)
l データセンター
l スパコン,など
n 高位合成ツールの普及
l Vivado HLSが無料で利用可能
l (Altera, Xilinx共に)
OpenCLによる設計が可能
l オープンソースの高位合成ツールも登場
• LegUp (C)
• Synthesijer (Java)
• Polyphony (Python)
VLD2016-02 Shinya T-Y, NAIST 3
Microsoft Catapult [Putnam+, ISCA'14]
高位合成だけでOK?
n No.
n 動作合成では記述できない・したくない回路も多数存在
l 例)プロセッサ,タイミング・レイテンシ制約が厳しいI/F,等
n 最終的な性能チューニングにはRTLが結局必要だったり
l 例)Traxコンテストで毎回優勝する静岡大学はRTL設計
n 関連研究: プログラミング言語の記述力を活用した
RTL設計方式・ドメイン固有言語
l Chisel[Bachrach+,DAC'12]
l PyMTL[Lockhart+,MICRO’14]
l Synthesijer.Scala[三好,IEICE RECONF'15]
VLD2016-02 Shinya T-Y, NAIST 4
関連研究: Pythonによるハードウェアモデリング
PyMTL[Lockhart+,MICRO’14]
VLD2016-02 Shinya T-Y, NAIST 5
Derek Lockhart+: PyMTL: A Unified Framework for Vertically Integrated Computer Architecture Research, ACM/IEEE MICRO-47 (2014)
Pythonで
ハードウェア設計
3つの粒度に対応
FL: Functional Lv.
CL: Cycle Lv.
RL: RTL
HDLに変換可能なのは
RLのみL
粒度間の変換は手動L
(高位合成ではない)
ハードウェア設計言語に求められるもの
n 好みや用途に応じた選択肢がある
l ソフトウェア開発は用途と好みに応じて言語を選べる
• C, C++, Java, Python, Ruby, Perl, JavaScrit, Scala, Go, Haskell, ...
l ハードウェア開発は?→選択肢が少ない
• RTL: Verilog HDL, VHDL
• HDL DSL: Chisel (Scala DSL), PyMTL (Python DSL), ...
n 内容に応じて異なるパラダイムを使い分けるのが重要
l プロセッサ:RTL以下
l 低レイテンシI/O処理:手続き型,所々RTL?
l アプリケーションの初期実装:手続き型・機能レベル
l アプリケーションチューニング:RTL(を意識した何か)
VLD2016-02 Shinya T-Y, NAIST 6
疑問: パラダイム間は疎結合で良いのか?
n 現状、RTLと高位モデルをするには併用は
高位モデルをRTLに変換後に両者を結合して実現
l 例)AXI4等のインターコネクト上で複数のIPコアを接続
l 疎結合のみ可能:モジュールの独立性が高いこと自体は良いJ
n 同一コンポーネント中でも
RTL/高位モデルの併用できると嬉しいのでは?
l 例)I/F動作はRTLで書きたいが制御は逐次モデルで書けると楽
• レイテンシが重要なHWが書きたいけどFSMは書きたくないL
VLD2016-02 Shinya T-Y, NAIST 7
RTL
モジュール
高位設計
モジュール
AXI4インターコネクト
RTL/高位設計モジュールの
疎結合
RTL
モデル
高位
逐次
モデル
Reg
Input
Output
モジュール
単一モジュール中での
RTL/高位モデルの併用
提案: マルチパラダイム型高位設計
VLD2016-02 Shinya T-Y, NAIST 8
RTL
Thread (逐次処理
)
モジュール
Dataflow
(パイプライン)Wire
Input Output
Reg
Verilogモジュール
変換
3つの記述方式を併用
RTL:
レジスタ転送レベルで
振る舞いを実装
Thread:
FSMをベースに
逐次処理を実装
Dataflow:
データフロー記述で
演算パイプラインを実装
複数のパラダイムが同一モジュールの定義に
利用可能な高位設計環境
本発表の目標
(1) Pythonを用いたRTLおよびDataflow設計技術の提案と評価
(2) 既存のPythonによる動作合成器を用いた初期検討
要素技術(RTL): Veriloggen[高前田,IEICE RECONF'15]:
PythonによるRTLメタプログラミング
VLD2016-02 Shinya T-Y, NAIST 9
Design Generator by Python
from veriloggen import *
m = Module('blinkled')
clk = m.Input('CLK')
led = m.Output('LED', 8)
count = m.Reg('count', 32)
m.Assign( led(count[31:24]) )
m.Always(Posedge(clk)(
count( count + 1 ) )
hdl = m.to_verilog()
print(hdl)
blinkled
CLK RST
LED count
assign
always
Veriloggen Object
module blinkled (
input CLK,
output [7:0] LED
);
reg [31:0] count;
assign LED = count[31:24];
always @(posedge CLK) begin
count <= count + 1;
end
endmodule
Verilog Source Code
module
input
CLK
input
RST
blinkled
Verilog AST
to_verilog()
Verilog
AST
Generator
Verilog
Code
Generator
Run on Python Interpreter
Verilog HDLコードの
組み立てルールをPythonの
言語機能を活用して記述
Verilog HDLによる回路記
述・
テストベンチが生成される
実行
Verilogコードをオブジェクトとして表現
VLD2016-02 Shinya T-Y, NAIST 10
Moduleオブジェクト
Pythonの言語機能を用いて
オブジェクトを組み立てる
(mの)Regオブジェクト
"count <= 0"オブジェクト
"count==1023"オブジェクト
Ifオブジェクト
(mの)Alwaysオブジェクト
完成したModule
オブジェクトをリターン
コード生成 (to_verilog)
n Moduleオブジェクトのto_verilog()メソッドを呼び出す
と文字列形式でソースコードが取得できる
n Verilog HDLのソースコード解析・生成ツールキット
Pyverilogを利用
VLD2016-02 Shinya T-Y, NAIST 11
Veriloggenの利用例:メソッド切り出しによる
コーディングパターン再利用
VLD2016-02 Shinya T-Y, NAIST 12
RAM I/Fのコーディングパターン
2つのI/Fを追加
要素技術(Dataflow):Veriloggen.Dataflow:
オペレータオーバーロードによるデータフロー設計
VLD2016-02 Shinya T-Y, NAIST 13
SWとして実行可能な
普通のPythonのメソッド定義
SWとして実行可能な
普通のPythonのメソッド定義
Veriloggen.Dataflow:オペレータオーバーロード
によるデータフロー設計
VLD2016-02 Shinya T-Y, NAIST 14
SWとして実行可能な
普通のPythonのメソッド定義
データフロー変数の生成前述のメソッド定義に通常の変数
ではなくデータフロー変数を渡す
出力ポート
設定と
Verilog
モジュール
生成
Veriloggen.Dataflow:オペレータオーバーロード
によるデータフロー設計
VLD2016-02 Shinya T-Y, NAIST 15
delay
dout3
delay
R
delay
R
delay
R
Cond
R
<
0
Cond
0
<
R
delay
R
Cond
0
Cond
01 2
delay
R
<
R
delay
R
Cond
L
delay
R
2 1
<
0
Cond
0
<
R
delay
R
Cond
0
Cond
0 1 2
L
delay
R
delay
R
Cond
L
delay
R
2 1
<
0
Cond
0
delay
R
delay
R
L
delay
R
din0
L
delay
R
21
din1
R
delay
R
12
delay
R
delay
R
1 2
delay
R
din2
R
delay
R
delay
R
1 2
delay
R
delay
R
delay
R
din3
R
delay
dout2
R
Cond
0
Cond
02 1
dout0 dout1
2 1
delay
R
L
delay
R
2 1
1 2
データフローグラフ生成
遅延レジスタが自動挿入されたパイプライン回路
パイプライン入力
パイプライン出力
オペレータオーバーロードによる
データフロー変数の組み立て
VLD2016-02 Shinya T-Y, NAIST 16
add
add(+)演算子の
オペレータ
オーバーロード
Dataflow.Plus
オブジェクトを
リターン
Veriloggenとその他の処理系との違い
n 高位合成や高位DSLはソースコードそのものが回路定義
l リフレクションを利用:ソースコード情報を取得
l ソースコードを「コンパイラで」解析しデータフロー等に変換
l 回路を追加するにはソースコードを追加する必要がある
• 頻出パターンもコード化しないといけないL
l 生成元言語のサブセットのみ対応L
n Veriloggen.Dataflowは明示的にHDLを組み立てる
l リフレクション未使用:ソースコードそのもの定義は無関係
l ソースコードの「実行」によりデータフロー等を構築
l 回路の追加は明示的なオブジェクト操作で実現される
• 頻出パターンはメソッド切り出しができるJ
l 生成元言語のすべての機能を利用できるJ
l ソフトウェア文法をそのままHW化はできないL
VLD2016-02 Shinya T-Y, NAIST 17
要素技術(Thread): PyCoRAM[Takamaeda+,CARL2013]
メモリ抽象化と動作合成によるIPコア設計FW
n 入力:2種類のソースコード
l データフロー(演算パイプライン):Verilog HDL
l データ転送制御:Python
n 出力:演算パイプと制御機構を持つIPコア
l DMAを主体としたデータ転送重点型ハードウェアが合成される
VLD2016-02 Shinya T-Y, NAIST 18
データフロー
(Verilog HDL)
制御フロー
(Python)
HW
構造
解析
RTL
変換
制解
対象
解析
高位
合成
処理系
による
RTL化
インター
フェース
合成
・
IPコア
パッケー
ジ化
PyCoRAMコンパイルフロー
入力: 高抽象度
デザイン
出力: 演算パイプライン+データ供給エンジンを
持つアクセラレータIPコア・システム
データパス 制御
Memory/Stream DMAコントローラ
Channel/
Register
オンチップ・インターコネクト
メインメモリ (DRAM)
IPコア
IOChannel/
IORegister
PyCoRAM:アーキテクチャ
VLD2016-02 Shinya T-Y, NAIST 19
データパス 制御
Memory/Stream DMAコントローラ
Channel/Regi
ster
IO
Channel/IO
Register
PyCoRAM:アーキテクチャ
VLD2016-02 Shinya T-Y, NAIST 20
データパス 制御
Memory/Stream DMAコントローラ
Channel/Regi
ster
IO
Channel/IO
Register
Computing Logic
Modeled in Verilog HDL
Control Thread
Modeled in Python
PyCoRAM:アーキテクチャ
VLD2016-02 Shinya T-Y, NAIST 21
データパス 制御
Memory/Stream DMAコントローラ
Channel/Regi
ster
IO
Channel/IO
Register
Memory: ロジック用ローカルメモリ
Stream: ロジック用FIFO
Channel: ロジック-スレッド間FIFO
Register: ロジック-スレッド間共有レジスタ
IO Channel: 外部制御用FIFO
IO Register: 外部制御用共有レジスタ
PyCoRAM:アーキテクチャ
VLD2016-02 Shinya T-Y, NAIST 22
データパス 制御
Memory/Stream DMAコントローラ
Channel/Regi
ster
オンチップ・インターコネクト
メインメモリ (DRAM)
IO
Channel/IO
Register
PyCoRAM:アーキテクチャ
VLD2016-02 Shinya T-Y, NAIST 23
データパス 制御
Memory/Stream DMAコントローラ
Channel/Regi
ster
オンチップ・インターコネクト
メインメモリ (DRAM)
IO
Channel/IO
Register
Master Interface
メモリへ能動的にアクセス
Slave Interface
CPUからアクセスされる
PyCoRAMにおけるIPコアの作り方・でき方
n 2種類のファイルを用意する
l Verilog HDL:
計算ロジック
l Python:
データ転送制御
n PyCoRAMが自動的にIPコアのパッケージを作成
l Python-Verilog高位合成とRTL変換を自動で行う
CoramMemory1P
#(
.CORAM_THREAD_NAME("thread_name
"),
.CORAM_ID(0),
.CORAM_ADDR_LEN(ADDR_LEN),
.CORAM_DATA_WIDTH(DATA_WIDTH)
)
inst_memory
(.CLK(CLK),
.ADDR(mem_addr),
.D(mem_d),
.WE(mem_we),
.Q(mem_q)
);
VLD2016-02 Shinya T-Y, NAIST 24
評価
n 本発表では2つの観点で評価
l Dataflow.Dataflowの生産性
l マルチパラダイム型高位設計環境の初期検討
n Dataflow.Dataflowの生産性について
l アプリケーション: ソーティングネットワーク
• 完全なパイプライン回路:N-sort / cycle
• N = 4, 8, 16, 32 で評価
l 参考までにLED点灯回路(Lチカ)も評価
VLD2016-02 Shinya T-Y, NAIST 25
評価
n マルチパラダイム型高位設計環境の初期検討
l RTL+Dataflow+Threadを併せ持つ高位設計環境の
プロトタイプを開発
l Pythonをベースとする独立した開発済みツールを簡易的に結合
• RTL: Veriloggen
• Dataflow: Veriloggen.Dataflow
• Thread: PyCoRAM (Thread Generator部)
n 評価方法
l SLOC: Source Lines of Code
• 同一のPyCoRAM IPコアを作成するのに必要なPythonでの
コード行数と従来手法(Verilog HDL+Python)の行数を比較
l 回路規模・最大動作周波数(見積もり)
• 合成ツール: Xilinx ISE 14.7
• デバイス: Airtix-7 XC7A100T-1csg324
VLD2016-02 Shinya T-Y, NAIST 26
評価アプリケーション
n 密行列積 PyCoRAM IPコア
l 従来はRTL・Dataflow部はVerilog HDLにて実装
l 本評価ではPythonにて実装しVerilog HDLを生成
VLD2016-02 Shinya T-Y, NAIST 27
Computing Logic
Control
Thread
(Python)
sum
CoRAM
Memory 0
B
× +
CoRAM
Memory 1
CoRAM
Memory 2
Control Logic
CoRAM
Channel 0
8-stage
Multiply
PipelineA
C
Dataflow
Thread
RTL
評価結果: Dataflowの生産性
n 単一のPythonコードから異なる構成のハードウェアを
n 単一のPythonコードから異なる構成のハードウェアを
生成可能
l 45行のPythonコードから4種類のソート回路を生成
l 遅延レジスタ・ストール用回路等は自動で挿入される
l →高い生産性を持つと言って良いのでは?
VLD2016-02 Shinya T-Y, NAIST 28
Python Verilog
評価結果: マルチパラダイム方式の初期検討
n 単一のPythonコードから異なる構成のハードウェアを
n RTL+Dataflow: 4倍程度の長さのVerilogコードを生成
l 手書きのものと比べての遜色ないコード長
n 回路規模については若干削減
l Dataflowにより合成されたパイプラインの構成が若干異なる?
VLD2016-02 Shinya T-Y, NAIST 29
Python Verilog
手書きVerilog
評価結果: マルチパラダイム方式の初期検討
n 単一のPythonコードから異なる構成のハードウェアを
n Thread: 一般的な高位合成と同じく高効率
n まとめ:
l 複数のパラダイムを併用することでコード量は削減可能J
l 考えるコストについては・・・?L
VLD2016-02 Shinya T-Y, NAIST 30
Python Verilog
まとめ: マルチパラダイム型高位設計
VLD2016-02 Shinya T-Y, NAIST 31
RTL
Thread (逐次処理
)
モジュール
Dataflow
(パイプライン)Wire
Input Output
Reg
Verilogモジュール
変換
3つの記述方式を併用
RTL:
レジスタ転送レベルで
振る舞いを実装
Thread:
FSMをベースに
逐次処理を実装
Dataflow:
データフロー記述で
演算パイプラインを実装
本発表の目標
(1) Pythonを用いたRTLおよびDataflow設計技術の提案と評価
(2) 既存のPythonによる動作合成器を用いた初期検討
本発表のまとめ
(1) Dataflowモデルによる高い生産性の達成
(2) Verilogのみを用いた設計と同等の品質を少ないコード量で実現可能

More Related Content

PDF
ACRi HLSチャレンジ 高速化テクニック紹介
PDF
シリコンバレーでエンジニア就職する前に知りたかったこと
PDF
『データ解析におけるプライバシー保護』勉強会 #2
PDF
Rの高速化
PPTX
差分プライバシーとは何か? (定義 & 解釈編)
PDF
ROS の活用による屋外の歩行者空間に適応した自律移動ロボットの開発
PPTX
【DL輪読会】DreamBooth: Fine Tuning Text-to-Image Diffusion Models for Subject-Dri...
ACRi HLSチャレンジ 高速化テクニック紹介
シリコンバレーでエンジニア就職する前に知りたかったこと
『データ解析におけるプライバシー保護』勉強会 #2
Rの高速化
差分プライバシーとは何か? (定義 & 解釈編)
ROS の活用による屋外の歩行者空間に適応した自律移動ロボットの開発
【DL輪読会】DreamBooth: Fine Tuning Text-to-Image Diffusion Models for Subject-Dri...

What's hot (20)

PPTX
Counterfaual Machine Learning(CFML)のサーベイ
PDF
人それぞれの競プロとの向き合い方
PDF
NDTスキャンマッチング 第1回3D勉強会@PFN 2018年5月27日
PDF
Word Tour: One-dimensional Word Embeddings via the Traveling Salesman Problem...
PDF
高速な倍精度指数関数expの実装
PDF
chatGPTの驚くべき対話能力.pdf
PPTX
初心者向けMongoDBのキホン!
PDF
ログ解析を支えるNoSQLの技術
PDF
強化学習の基礎的な考え方と問題の分類
PDF
GoによるWebアプリ開発のキホン
PDF
RESTful Web アプリの設計レビューの話
PDF
Python入門 : 4日間コース社内トレーニング
PPTX
Visual Studio CodeでRを使う
PPTX
数理最適化とPython
PDF
プライバシー保護のためのサンプリング、k-匿名化、そして差分プライバシー
PDF
暗号文のままで計算しよう - 準同型暗号入門 -
PDF
Rubyによるデータ解析
PDF
Pythonによる黒魔術入門
PPTX
Nginx Unitを試してみた話
Counterfaual Machine Learning(CFML)のサーベイ
人それぞれの競プロとの向き合い方
NDTスキャンマッチング 第1回3D勉強会@PFN 2018年5月27日
Word Tour: One-dimensional Word Embeddings via the Traveling Salesman Problem...
高速な倍精度指数関数expの実装
chatGPTの驚くべき対話能力.pdf
初心者向けMongoDBのキホン!
ログ解析を支えるNoSQLの技術
強化学習の基礎的な考え方と問題の分類
GoによるWebアプリ開発のキホン
RESTful Web アプリの設計レビューの話
Python入門 : 4日間コース社内トレーニング
Visual Studio CodeでRを使う
数理最適化とPython
プライバシー保護のためのサンプリング、k-匿名化、そして差分プライバシー
暗号文のままで計算しよう - 準同型暗号入門 -
Rubyによるデータ解析
Pythonによる黒魔術入門
Nginx Unitを試してみた話
Ad

Viewers also liked (17)

PDF
PyCoRAMを用いたグラフ処理FPGAアクセラレータ
PDF
Mapping Applications with Collectives over Sub-communicators on Torus Network...
PDF
助教が吼える! 各界の若手研究者大集合「ハードウェアはやわらかい」
PDF
Pythonによる高位設計フレームワークPyCoRAMでFPGAシステムを開発してみよう
PDF
PythonとPyCoRAMでお手軽にFPGAシステムを開発してみよう
PDF
PyCoRAMによるPythonを用いたポータブルなFPGAアクセラレータ開発 (チュートリアル@ESS2014)
PDF
An FPGA-based Scalable Simulation Accelerator for Tile Architectures @HEART2011
PDF
A CGRA-based Approach for Accelerating Convolutional Neural Networks
PDF
PyCoRAM (高位合成友の会@ドワンゴ, 2015年1月16日)
PDF
Veriloggen: Pythonによるハードウェアメタプログラミング(第3回 高位合成友の会 @ドワンゴ)
PDF
Zynq+PyCoRAM(+Debian)入門
PDF
コンピュータアーキテクチャ研究の最新動向〜ISCA2015参加報告〜 @FPGAエクストリーム・コンピューティング 第7回 (#fpgax #7)
PDF
Pythonを用いた高水準ハードウェア設計環境の検討
PDF
PythonとVeriloggenを用いたRTL設計メタプログラミング
PPTX
Zynq + Vivado HLS入門
PDF
FPGA・リコンフィギャラブルシステム研究の最新動向
PDF
Debian Linux on Zynq (Xilinx ARM-SoC FPGA) Setup Flow (Vivado 2015.4)
PyCoRAMを用いたグラフ処理FPGAアクセラレータ
Mapping Applications with Collectives over Sub-communicators on Torus Network...
助教が吼える! 各界の若手研究者大集合「ハードウェアはやわらかい」
Pythonによる高位設計フレームワークPyCoRAMでFPGAシステムを開発してみよう
PythonとPyCoRAMでお手軽にFPGAシステムを開発してみよう
PyCoRAMによるPythonを用いたポータブルなFPGAアクセラレータ開発 (チュートリアル@ESS2014)
An FPGA-based Scalable Simulation Accelerator for Tile Architectures @HEART2011
A CGRA-based Approach for Accelerating Convolutional Neural Networks
PyCoRAM (高位合成友の会@ドワンゴ, 2015年1月16日)
Veriloggen: Pythonによるハードウェアメタプログラミング(第3回 高位合成友の会 @ドワンゴ)
Zynq+PyCoRAM(+Debian)入門
コンピュータアーキテクチャ研究の最新動向〜ISCA2015参加報告〜 @FPGAエクストリーム・コンピューティング 第7回 (#fpgax #7)
Pythonを用いた高水準ハードウェア設計環境の検討
PythonとVeriloggenを用いたRTL設計メタプログラミング
Zynq + Vivado HLS入門
FPGA・リコンフィギャラブルシステム研究の最新動向
Debian Linux on Zynq (Xilinx ARM-SoC FPGA) Setup Flow (Vivado 2015.4)
Ad

Similar to マルチパラダイム型高水準ハードウェア設計環境の検討 (20)

PDF
FPGAをロボット(ROS)で「やわらかく」使うには
PDF
SDN Japan: ovs-hw
PDF
Lagopus Project (Open Source Conference)
PPTX
Lagopus workshop@Internet weekのそば
PPTX
FD.io VPP事始め
PDF
Faster SRv6 D-plane with XDP
PDF
Bird in show_net
PDF
第3回ローレイヤー勉強会 : FPGAでコンピュータを作ってみた
PDF
Lagopusで試すL3ルーティング + α (Lagopusの設定方法いろいろ)
PDF
Trema day 1
PDF
Open contrail days 2014 fall
PPTX
VPP事始め
PDF
DPDKによる高速コンテナネットワーキング
PDF
"SRv6の現状と展望" ENOG53@上越
PDF
第11回ACRiウェビナー_東工大/坂本先生ご講演資料
PDF
Lagopus Router
PDF
SQL Server 2016 R Services + Microsoft R Server 技術資料
PDF
高位合成友の会@ドワンゴ,2015年12月8日
PDF
20150715 xflow kikuta_final
PPTX
ネットワークプログラマビリティ勉強会
FPGAをロボット(ROS)で「やわらかく」使うには
SDN Japan: ovs-hw
Lagopus Project (Open Source Conference)
Lagopus workshop@Internet weekのそば
FD.io VPP事始め
Faster SRv6 D-plane with XDP
Bird in show_net
第3回ローレイヤー勉強会 : FPGAでコンピュータを作ってみた
Lagopusで試すL3ルーティング + α (Lagopusの設定方法いろいろ)
Trema day 1
Open contrail days 2014 fall
VPP事始め
DPDKによる高速コンテナネットワーキング
"SRv6の現状と展望" ENOG53@上越
第11回ACRiウェビナー_東工大/坂本先生ご講演資料
Lagopus Router
SQL Server 2016 R Services + Microsoft R Server 技術資料
高位合成友の会@ドワンゴ,2015年12月8日
20150715 xflow kikuta_final
ネットワークプログラマビリティ勉強会

More from Shinya Takamaeda-Y (15)

PDF
オープンソースコンパイラNNgenでつくるエッジ・ディープラーニングシステム
PDF
DNNのモデル特化ハードウェアを生成するオープンソースコンパイラNNgenのデモ
PDF
ディープニューラルネットワーク向け拡張可能な高位合成コンパイラの開発
PDF
Veriloggen.Stream: データフローからハードウェアを作る(2018年3月3日 高位合成友の会 第5回 @東京工業大学)
PDF
Veriloggen.Thread & Stream: 最高性能FPGAコンピューティングを 目指したミックスドパラダイム型高位合成 (FPGAX 201...
PDF
Pythonによるカスタム可能な高位設計技術 (Design Solution Forum 2016@新横浜)
PDF
ゆるふわコンピュータ (IPSJ-ONE2017)
PDF
A Framework for Efficient Rapid Prototyping by Virtually Enlarging FPGA Resou...
PDF
A High Performance Heterogeneous FPGA-based Accelerator with PyCoRAM (Runner ...
PDF
PyCoRAM: Python-Verilog高位合成とメモリ抽象化によるFPGAアクセラレータ向けIPコア開発フレームワーク (FPGAX #05)
PDF
メモリ抽象化フレームワークPyCoRAMを用いたソフトプロセッサ混載FPGAアクセラレータの開発
PDF
PyCoRAM: Yet Another Implementation of CoRAM Memory Architecture for Modern F...
PDF
むかし名言集bot作りました!
PDF
APGAS言語X10を用いたオンチップネットワークシミュレーションの並列化
PDF
Network Performance of Multifunction On-chip Router Architectures (IEICE-CPSY...
オープンソースコンパイラNNgenでつくるエッジ・ディープラーニングシステム
DNNのモデル特化ハードウェアを生成するオープンソースコンパイラNNgenのデモ
ディープニューラルネットワーク向け拡張可能な高位合成コンパイラの開発
Veriloggen.Stream: データフローからハードウェアを作る(2018年3月3日 高位合成友の会 第5回 @東京工業大学)
Veriloggen.Thread & Stream: 最高性能FPGAコンピューティングを 目指したミックスドパラダイム型高位合成 (FPGAX 201...
Pythonによるカスタム可能な高位設計技術 (Design Solution Forum 2016@新横浜)
ゆるふわコンピュータ (IPSJ-ONE2017)
A Framework for Efficient Rapid Prototyping by Virtually Enlarging FPGA Resou...
A High Performance Heterogeneous FPGA-based Accelerator with PyCoRAM (Runner ...
PyCoRAM: Python-Verilog高位合成とメモリ抽象化によるFPGAアクセラレータ向けIPコア開発フレームワーク (FPGAX #05)
メモリ抽象化フレームワークPyCoRAMを用いたソフトプロセッサ混載FPGAアクセラレータの開発
PyCoRAM: Yet Another Implementation of CoRAM Memory Architecture for Modern F...
むかし名言集bot作りました!
APGAS言語X10を用いたオンチップネットワークシミュレーションの並列化
Network Performance of Multifunction On-chip Router Architectures (IEICE-CPSY...

マルチパラダイム型高水準ハードウェア設計環境の検討