みなさんこんにちは。第一技術部の赤谷です。
WTIブログには久しぶりの投稿です。どうぞよろしくお願いします。
新しい製品を開発するとき、この処理はマイコン?それともFPGA化?...と悩まれた経験を持つ方も多いかと思います。また、併せてよく聞くことは、ソフトで処理する?ハードで処理する?という会話です。
しかし、この会話は厳密に言うと正確ではありません。と言うのも、物理的な処理を実行するのはあくまでハードウェアであり、ソフトウェア処理とは、マイコンのような汎用のハードウェアに、処理する順番をプログラマが記述・命令して目的の機能を実現するものなのです。
システム設計のポイントとしては、まず、そのことを正しく理解することです。
では、マイコンとFPGAどちらもハードウェアであるとして、何が違うのか?がポイントです。どちらかでないとできないことって、実はほとんどなく、如何にその特徴を捉えて、どちらで実行するのが効率的か?を良く考えシステムを設計する必要があります。
システム設計における効率とは次のとおりです。
✓ 処理速度が速いこと
✓ コスト・ミニマムであること
✓ サイズができるだけ小さいこと
などなど。
よって、検討するにはそれなりの経験を要しますが、ここでは「処理速度」に着目して一つ事例を紹介します。
マイコンは各ベンダーが莫大な開発費をかけ、最適化したハードウェアであり、処理速度が速いことが特徴です。そして、処理を実行するには、ソフトウェアによって処理する順番をプログラミングする必要があります。このため、基本的に処理はシーケンシャルに進んでいきます。
一方FPGAは、マイコンほど処理速度は速くはありませんが、各処理(各機能)毎に、専用のハードウェアを設けることができますので、各処理をパラレルに進めることができます。図で示すと次のようなイメージです。
この図のとおり、FPGA一つ一つの処理速度ではマイコンに及びませんが、同時並行に処理を実行できることから、全ての処理が完了するまでの時間で比べるとFPGAの方が速くなります。
じゃあ、なんでもFPGAの方がよいのか?と言ったらそうではありません。各処理に対する入力条件が多岐にわたる場合、FPGAでは回路規模が大きくなりすぎ、今度はコスト面がネックとなるため、このような場合は、マイコンが有利となります。
どうでしょうか?少しイメージできましたでしょうか?
システム設計は製品の価値を決める重要なポイントであり、ハード、ソフト共に理解した上で総合力が問われます。よって、これらのご経験が少なくお困りの場合は、思い切ってアウトソースを活用するのも一つの手です。
WTIにはハード、ソフトの二刀流エンジニアが多数揃っており、お客様の製品開発における技術要件を分析し最適なシステム構成をご提案することが可能です。お困りの際は、是非当社の「電気設計受託サービス」をご利用ください。
【関連リンク】
【関連ブログ】
WTIメールマガジンの配信(無料)
WTIエンジニアが携わる技術内容や日々の業務に関わる情報などを毎週お届けしているブログ記事は、メールマガジンでも購読できます。ブログのサンプル記事はこちら
WTIメールマガジンの登録・メールアドレス変更・配信停止はこちら
WTIの技術、設備、設計/開発会社の使い方、採用関連など、幅広い内容を動画で解説しています。