PyJer : A Framework for Prototyping of IoT Devices with High Level Synthesis Tools and SoC

DOI:10.14923/transinfj.2016PDP0033 一方,目的とする処理をハードウェア回路として並 列に実行する FPGAを用いたアクセラレータが,処理 能力や電力効率の面で注目されている.しかしながら, 一般に FPGAによるアクセラレータの設計は Verilog HDLや VHDL といったハードウェア記述言語を用い てレジスタ転送レベルで行うため,ソフトウェアベー スのシステムと比べて開発のコストが大きくなり,ま た高級言語によって記述された既存のソフトウェアを RTL記述に変換する場合も多大なコストを要する. 近年では,C 言語をベースとした Vivado HLS が無償で利用でき,更に JavaRock [1] や JavaRockThrash [2], [3], Synthesijer [4] といった Java 言語を ベースとした高位合成ツールが開発されている.これ らのツールの登場によって,FPGA 回路設計のコス トの低減と,これまでのソフトウェア資産の再利用が 期待される.しかしながら,センサインタフェースや DRAM といった外部モジュールとの通信ではタイミ ングが重視され,クロックを意識しない高位合成では タイミング調整が困難であるという問題があった. 本研究では,複数の高速なデータ入力とインター ネットへのデータ出力が必要となる組み込みシステム のプロトタイピングのためのフレームワーク PyJerを