FPGAターボON! 高速Linuxコンピュータ

第2部
第
ご購入はこちら
ARM FPGAならCプログラム用回路の自動生成もサクッ!
並列化すれば性能 UPUP!
5章
FPGA ターボ ON!
高速 Linuxコンピュータ
高前田 伸也,福岡 久和,山野 龍佑
イーサネット・ハブ
DE1-SoC
ZYBO
イーサネット
Cortex-A9
DDR3
メモリ
Cortex-A9
DDR3 コントローラ L2 キャッシュ
AXI ACP
AXI GP
ZedBoard
ZYBO
(a)全体構成…ARM FPGA搭載ボードを複数枚並べることが可能
アクセラレータ
図 1 ARM FPGA(Zynq)搭載ボードを複数つないだクラスタが
構築できるようにイーサネットで接続する
電源
イーサネット
(b)定番 ZYBO ボード部分
写真 1 ARM プロセッサと FPGA が 1 チップになった Zynq 搭載
ボー ドを 1 枚から必 要に応じて ! … 今 回 作 っ た高 速 Linux コン
ピュータ
最近,FPGA がプロダクトとして利用されていま
す.ニ ュ ー ス で 話 題 に な っ て い る 検 索 エ ン ジ ン の
Bing に使われているマイクロソフトのカタパルト,
他にも Baidu でもデータ・センタで FPGA が利用され
ています.低消費電力を実現できる FPGA は電力が問
題視されているデータ・センタにマッチしています.
しかし,Verilog HDL や VHLD によるハードウェ
2016 年 12 月号
ア合成は開発コストが高いです.けれども,より抽象
度を上げて C/C ++などで設計を可能にするツール
(高位合成ツールという)がザイリンクスやインテル
(旧アルテラ)によって開発されています.開発期間
削減につながるだけでなく,性能を出せるハードウェ
アが得やすくなります.FPGA は以前より使いやすい
ツールになっているのではないでしょうか.
今回は ARM プロセッサと FPGA が混在した Zynq
(ザイリンクス)を搭載するボードを使ってクラスタ
を構築し,複雑な計算の高速化を体験します(写真 1).
ハードウェア・アクセラレータの設計には,C 言語記
述から専用回路を作成できる無償ツール Vivado HLS
を使います.アクセラレータを活用するための並列プ
ログラミングについても紹介します.
ARM FPGA コンピュータの構築
● 1 枚から必要に応じて…クラスタ構成にする
今回構築するクラスタの構成を図 1 に示します.定
番 ARM FPGA ボード ZYBO の数は任意で,1 枚から
でも試すことができます.
クラスタに使用する計算ノードとして Digilent 社の
ZYBO という評価ボードを利用します(写真 2).
63