THine Value FPGAにはもう頼らない、 ISP用ファームウエアの自動生成ツールを開発

2018.08.31
  • 記事
  • コラム
画像や映像を撮影する半導体デバイス「イメージ・センサー」。デジタル・カメラやスマートフォン、自動車などさまざまな電子機器に搭載されている。しかし、イメージ・センサーだけでは十分な機能を果たせない。画像処理を担当する「イメージ・シグナル・プロセッサ(ISP)」との併用が必要不可欠だ。ここで問題になるのは、ISPのファームウエア開発の難易度が極めて高いことだ。この問題を解決すべくザインエレクトロニクスは、「カメラ開発キット(CDK)」の提供を始めている。今回は、CDK開発の背景や、採用した際の効能などについて解説する。

イメージ・センサーにはISPが不可欠

イメージ・センサーが応用範囲を広げている。デジタル・カメラやスマートフォンはもちろんのこと、自動車や監視カメラ、産業用マシンビジョン、書画カメラ(ビジュアライザ)、WEB会議システム、医療用電子機器、AR(拡張現実)やVR(仮想現実)、MR(複合現実)といったXR対応機器などでも搭載が急ピッチで進んでいる。

こうした電子機器にイメージ・センサーを組み込む際に必要不可欠なのが「イメージ・シグナル・プロセッサ(ISP)」である。なぜならば、イメージ・センサーで撮影した画像データは、そのままでは「不完全な画(えと読む)」だからだ。ISPを使って、ノイズを取り除いたり、明るさを調整したり、被写体の焦点(フォーカス)を合わせたりするなどの処理が必要になる。具体的には、デモザイク(デベイヤー)や、ノイズ・リダクション、オートエクスポージャー(AE)、オート・フォーカスなどの処理である。こうした処理を施すことで「完全な画」を作るわけだ(図1)。

従って、電子機器にイメージ・センサーを搭載するには、それに最適なISPを選択し、採用するという作業が必要になる。ただし、搭載する電子機器によってISPの姿形は異なる。スマートフォンであれば、多くの場合、モバイル端末向けチップセットの中に集積されているISP機能を利用する。単体のICを採用するケースは少ない。そのほかの電子機器では、単体のISPチップ、もしくはIPコア化されたISPを実装したFPGAを採用するのが一般的である。

使いこなしは難しい

いずれの姿形のISPを採用するにせよ、それを使いこなすのは決して簡単ではない。「完全な画」を作るには、さまざまなパラメータを最適値に設定するためのファームウエアを開発する必要があるからだ。それには、ソフトウエアやカメラ(光学系)、画像処理などに関する深い知識が必要である。一筋縄には行かない。

大手スマートフォン・メーカーであれば、ISPを集積したモバイル端末向けチップセットを大量に購入するため、チップセット・ベンダーから手厚いサポートを受けられる。このためファームウエアの開発は、決して高いハードルにはならない

ところが中堅以下のスマートフォン・メーカーや、産業機器向けマシンビジョン機器メーカー、監視カメラ・メーカーなどにとっては、ファームウエアの開発は非常に高いハードルになる。チップセットやISPチップの購入数量が少ないため、手厚いサポートが期待できないからだ。

もちろん、チップセットやISPチップを提供する半導体メーカーに、ファームウエアの開発を依頼することも可能だ。しかし、当然ながら開発費を負担しなければならない。その費用は決して少なくない。「購入数量が100万個/年を超えるアプリケーションであれば、開発費を吸収できるが、10万個/年程度であれば、その開発費は重い負担になる」(ザインエレクトロニクス)という。

FPGAを採用しても事態は好転しない。ファームウエアは自ら開発せざるをえない点は同じだからだ。しかもISPコア・ベンダーのサポートはほとんど期待できない。FPGAの場合は、必要な処理内容に合わせて回路をカスタマイズし、ハードウエアとして組み込むという対応策もある。しかし、この場合はハードウエアに関する高い技術力が必要になる。一般に電子機器メーカーではソフトウエア技術者に比べてハードウエア技術者の方が少ないため、必ずしも解決策になるとは限らない。

ファームウエアを自動作成

こうした問題を解決するため、ISPチップ・メーカーであるザインエレクトロニクスは、同社のISPチップ「THP7312」に向けたCDK(カメラ開発キット)の提供を始めた。

CDKは、ハードウエアとファームウエア開発向けGUIツール「Thine Tuning Tool」、ファームウエアのテンプレートの3つからなる。ハードウエアの内訳は、THP7312を搭載したISPボードと、フレーム・グラバー、イメージ・センサーを内蔵したカメラ・モジュールを載せたヘッダー・ボードである(図2)。

GUIツールは、パソコン上で動作するアプリケーションである。パソコン画面上でメニューに従って数値を記入したり、プルダウン・メニューの中からパラメータを選択したりするだけで、テンプレートを自動的に書き換えて必要とするファームウエアを新たに開発するという仕組みだ(図3)。ファームウエア開発の専門的な知識はほとんど必要ない。このため、低いコストで開発できると同時に、開発期間を大幅に短縮できる。

現在、ISPチップを提供する半導体メーカーは複数存在するが、ファームウエアの開発に向けたGUIツールを提供しているメーカーはほとんどない。「簡易ツールを提供する半導体メーカーはあるものの、当社のGUIツールに比べると実行できることには大きな違いがある」(ザインエレクトロニクス)。FPGAでも状況はほぼ同じだ。「ISPコアを提供しているベンダーで、ファームウエア開発用GUIツールを提供しているところは当社の知る限り存在しない」(同社)という。

従って、現時点においてISPチップ「THP7312」とCDKの組み合わせは、中堅以下のスマートフォン・メーカーや、産業機器向けマシンビジョン機器メーカー、監視カメラ・メーカー、XR対応機器メーカーなどにとっては、最良の選択肢になると言えるだろう。つまり、FPGAにもう頼る必要がなくなる。その結果、消費電力の削減と、プリント基板上の実装面積の小型化というメリットも得られるようになる。ISPコアを搭載するには、比較的ハイエンドのFPGAが必要だったからだ。強い小型化が求められるXR対応機器などにとっては、朗報になるに違いない。

CDKに含まれるGUIツールの技術的な詳細や、その利用方法などについては次回以降で詳しく説明する。

(つづく)

※図の補足説明
(図1 ISPで処理した後の画像)
左がISPで処理する前の画像。右が処理した後の画像である。各画素に1色ずつのRAW
データから各画素にRGB3色ずつに処理され、さらにノイズが取り除かれている。明るさや焦点もISPがコントロールしている。