Contents
研究
現在はカルソニック・カンセイと共同で、わき見検知アルゴリズムのFPGA実装を試みています。
また、FPGAへの実装をVerilog-HDLではなく、ImpulseC /CoDeveloperという言語 / ツールを用いています。
先輩方の研究
- レーベンシュタイン距離を用いた道路標識認識アルゴリズムのFPGA実装
- FPGAを用いたナンバープレート認識システムの開発
ImpulseC
ImpulseCはC言語を拡張して、FPGAへの実装を可能にしたものです。 従来のVerilog-HDLやVHDLなど、RTLレベルのハードウェア記述言語に取ってかわるのではないか?と期待されてる言語です。
Verilog-HDLなどよりも抽象度が高く文法もC言語の拡張で、開発期間の短縮や可読性の向上、複雑なアルゴリズムのハードウェア実装が可能とされています。
画像処理アルゴリズムは複雑なものが多く、そのメモリアクセスも複雑です。また、一般的にC言語などHDLとは違った言語で書かれています。
それをHDLに書き直し、書き直したものが正しく動作しているのか、ハードウェアにしたときに最適なアルゴリズムなのかを検証するのは、非常に時間と労力の掛かる作業となります。 また企業の観点からすると、製作に時間がかかりすぎてしまうというのは、製品が完成し市場に商品を出したときには競合他社が多く出すぎていて、うまく利益に結びつかないといった問題もあります。そのような問題も、ImpulseCを利用することで製品開発の時間短縮が実現できれば、それだけで利点となるのです。
出典:SACSIS08 東北大学 佐野健太郎氏「FPGAによる高速計算」より
FPGA
FPGAとは「Field Programmable Gate-Array」の略で、自分の好きな論理回路を作ることが何度もできるデバイスです。 ここでは、詳しい説明をするスペースがありませんが、FPGAの詳しい説明は いまさら聞けない FPGA入門 @IT MONOistをおすすめします。
また、VisionTeamではXilinx社のFPGAボードを仕様しております。
出典:SACSIS08 東北大学 佐野健太郎氏「FPGAによる高速計算」より