ニュース
» 2012年03月26日 18時50分 UPDATE

“快速シャッター”を実現する「EXILIM エンジン HS」とは何か

デジタルカメラにおいて、利用者の大きな影響を与えるのが「動作の快適さ」。カシオ計算機“EXILIM”「EX-ZR20」を例に、プロセッサがカメラの快適さに対してどれだけ大きな貢献をするのかひもといてみよう。

[渡邊宏,ITmedia]

 デジタルカメラを使用する上で、スペックシート上では表現しにくいものの、大きく影響するのが「動作の快適さ」だ。動作の機敏さとも言い表せるそれを構成する要素は、起動/終了の速さ、AF時間の短さ、撮影間隔の短さなど多岐に渡り、それらを総合的に高めて初めて利用者は「快適」と感じる。

 カシオ計算機“EXILIM”「EX-ZR20」「EX-ZR200」「EZ-ZR100」「EX-ZR15」の4機種は、「約0.98秒の高速起動」「約0.13秒の高速AF」「0.024秒のレリーズタイムラグ」「0.27秒の撮影間隔」などを「快速シャッター」と総称した、動作の快適さをうたうモデルであり、その快適さは「EXILIM エンジン HS」と名付けられたプロセッサによるところが大きい。プロセッサがカメラの快適さに対してどれだけ大きな貢献をするのか、「EX-ZR20」を例にひもといてみよう。

photophoto 「EX-ZR20」(写真=左)、「EX-ZR200」(写真=右)

 EXILIM エンジン HSの構造的な大きな特徴は2つ挙げられる、ひとつは内部のロジック回路を動的に再定義/再構築できる「リコンフィギュラブル」と呼ばれる構造を採用したこと。もうひとつが、CPUコアを2つ持つ「デュアルプロセッサ」であることだ。

photo 「EXILIMエンジンHS」の概念図

 リコンフィギュアラブルプロセッサであることから、電源を投入したまま、ある一部分だけの回路構成を変更することが可能であり、専用チップに比肩する処理速度を実現できる。製造後に構成を変更可能という意味ではFPGAも同様だが、リコンフィギュアラブルプロセッサはFPGAと異なり、電源投入しながらの回路再構築が可能なほか、その時間が非常に短いため、処理の高速化に寄与する。

 EX-ZR20におけるリコンフィギュアラブルプロセッサはHDRやメイクアップ、超解像、背景ぼかしといった主に画像処理へ用いられており、そうした処理の高速化に寄与している(機能実装に対する柔軟性や開発効率の向上にも高く貢献している)。ただ、EX-ZR20における、カメラとしての動作の快適さ向上という観点からすれば、リコンフィギュアラブルプロセッサの搭載と同様の貢献をしているのが、デュアルプロセッサであることだ。

 撮影動作の快適さへデュアルプロセッサがどのように寄与するかを解説する前に、まず、デジタルカメラがどのようなプロセスを経て撮影を行っているか、EX-ZR20を例に説明してみよう。

 まず電源が投入されるとブートプログラムが起動し、撮影の前条件にまつわるデータ(前回の電源OFF時にどのような動作がメモリされたかなど)が読み込まれ、レンズ位置の初期化が割り込み処理で入りながら、表示の初期化などが行われ、撮影準備が整う。そして実際の撮影では、撮像素子からの画像受け取り、画像モニタリング、AFなどのレンズ処理、キャプチャ、現像、画像処理を経てファイルが生成され、画像として保存される。

 従来機ではCPUが1基であったため、すべての処理はところてんのように順番に、時系列で処理していくしかなく、高速化にはクロックスピードを上げ、割り込み処理を最適化していく手法を取るしかなかった。しかし、EXILIMエンジンHSではCPUをデュアル構成とすることで作業を並列化し、結果的に全体としての処理時間短縮を実現している。

photo 従来機とHS搭載機(EX-ZR15)の処理フロー(概念図)

 もちろん、単純にクロックスピードを上げるというアプローチでも高速化を実現できるが、クロックスピードの上昇は消費電力の増大に直結する。CPUコアを増やすことでも消費電力は増大するが、低速のコアを2つ搭載した方が結果的に、バッテリ容量の限られるデジタルカメラにおいてはメリットが大きいと同社は判断している。

 それでは個々のプロセスにおいて、EX-ZR20のデュアルプロセッサがどのように役割を分担しているか見てみよう。

 まず起動時。以前は物理的な動作を伴うレンズ起動が高速化のボトルネックになっていたが、撮影設定が多岐にわたる昨今では撮影の前条件データが増大しており、ここの読み込み時間がネックとなっていたことから、起動に関する手順をCPU0、データ読み込みをCPU1と分散、レンズ起動はCPU0の割り込み処理として起動プロセスを進めるようにしている。

 撮影時の処理分散については、センサーからの画像受け取りやモニタリング、シャッターボタン押下に対する反応などリアルタイム系をCPU0、AFや現像処理、ファイルアクセスといった、ユーザーのアクションに対応するバックエンド系をCPU1に分散している。

photo EXILIMエンジンHSではCPU0とCPU1で動作を割り振ることで高速起動を実現している
photo 撮影時にはリアルタイム系処理をCPU0、バックエンド系処理をCPU1に振り分けている

 マルチコアCPU構成とする場合、どのように動作を割り振るか以前の問題として、「どのような設計方針とするか」が高速動作の大きな鍵となる。EXILIMエンジンHSの場合は、タスク実行のCPUを動的に変更するSMP(Symmetric Multi Processing)型ではなく、タスク実行のCPUを固定するAMP(Asymmetric Multi Processing)型を採用している。

 つまり、動的に変更可能とすることで得られる柔軟性ではなく固定することで得られる速度を優先し、その上でタスク配置を適切に行い、性能向上を実現する仕組みを採用している。前述のような役割分担を定め、適切な分散を施したことが、「快適なカメラ」の実現に大きく寄与しているのだ。

 EXILIMエンジンHSは2008年ごろから開発を開始し、2010年10月の「EX-ZR10」より搭載されているが、その基本設計方針としてはモニタリングと現像を同時に行える「平行性」、重い処理はCPU間で分散させる「分散処理」、CPU間の通信頻度をできるだけ下げる「疎結合」を方針に掲げており、AMP型の採用は「疎結合」のポリシーに沿ったものとなる。

 そしてEXILIMエンジンHSの基本的なハードウェア構成は最新の「EX-ZR20」まで変更されていない。ただ、処理データを展開する内蔵メモリ(ワーキングメモリ)はZR10からZR20では倍増しており、その分、HDRや背景ぼかしなど連写合成を用いる撮影手段などにおいての高速化が進められている。

photo 動画撮影時のCUPリソース割り振り。従来機では5%の余力しかなかったが、EXILIMエンジンHSではリソースに余裕ができている

 なおEX-ZR20のAFは、被写体が人物でなくとも、常に主被写体がどこかを推測してフォーカシングを行う「インテリジェントAF」を採用しており、リコンフィギュラブルを活用している。また、センサーのフレームレートを従来機の60fpsから160fpsに高速化しているほか、レンズ制御/測距アルゴリズムの最適化が行われている。その処理も前述のようにセンサーからの画像受け取りはCPU0、測距アルゴリズムの処理はCPU1と分散されている。

 デジタルカメラのAFについて、コントラスト検出方式を採用する一部ミラーレスカメラでは撮像素子の駆動速度やプロセッサ処理速度の向上、くわえてレンズ制御の見直しなどによって位相差AFを採用するデジタル一眼レフに迫る、あるいはそれを上回る速度をうたうモデルが登場している。

 EX-ZR20を世に送り出したカシオ計算機はレンズメーカーでもセンサーメーカーでもない、いわばデジタルの技術だけで目的を成し遂げなければならないという制限を課せられたメーカーだが、AFの高速化について被写体推測の技術が進歩すれば、暗所撮影時や長い焦点距離時に速度が落ちるという現在のコントラストAFの弱点を克服し、今以上の高速化が実現できるかもしれないと展望している。同社がデジタルの技術で実現する“カメラとしての快適さ”には、まだまだ向上の余地がありそうである。

(取材協力=カシオ計算機)

Copyright© 2016 ITmedia, Inc. All Rights Reserved.