マイコンとプロセッサでのソフト開発の違い:マイクロプロセッサQ&Aハンドブック(7)(1/5 ページ)
マイクロプロセッサ(MPU)を使用したボードを開発するユーザーが抱えるさまざまな悩みに対し、マイクロプロセッサメーカーのエンジニアが回答していく連載。今回は、「マイコンとプロセッサでのソフト開発の違い」について紹介します。
マイクロプロセッサ(MPU)を使用したボードを開発するユーザーが抱えるさまざまな悩みに対し、マイクロプロセッサメーカーのエンジニアが回答していく連載「マイクロプロセッサQ&Aハンドブック」。
第7回は、第1回記事『マイクロプロセッサ(MPU)の知っておくべき8つのポイント』で紹介した8つのポイントの内、「マイコンとプロセッサでのソフト開発の違い」について紹介します。
マイコンとプロセッサで、ソフト開発にどのような違いがありますか?
プロセッサのソフト開発は、マイコンに比べて開発規模が非常に大きくなります。そのため、マイコンでのソフト開発と大きく異なります。
Wi-Fi、カメラ、動画、AI、3D、Bluetoothなどの複雑な機能をより短期間で提供してほしいという市場ニーズに応えるために、必要なソフトウェアを全て自社で開発するのは、ソフトウェアの規模を考えたときに難しさがあります。マイコンのソフトウェアはバイナリイメージベースで数百キロバイトから数メガバイト程度なのに対し、プロセッサのソフトウェアは数十メガから数百メガバイト程度になります。
少々荒い仮定ですが、バイナリサイズに比例して、ソースコード量が比例し、ソースコード量に比例して、エンジニアの人数が必要だと仮定した場合、このバイナリサイズの増加量に対して、同じ比率で自社のエンジニアの数を増やすことは可能でしょうか。
マイコンとプロセッサでのソフト開発の違いは、単にデバイスの機能差による違いだけではなく、より効率的な大規模ソフトウェア構築の必要性があげられます。
- 考え方の違い:すり合わせ型から組み合わせ型開発への移行
- 開発体制の違い:個人/単発的な開発から、チーム/継続的な開発への移行
- ソフト実装方法の違い:MMUによるカーネル/ユーザー空間の分離
- デバッグ方法の違い:ログ/デバッガー/トレーサーを駆使したデバッグ
Copyright © ITmedia, Inc. All Rights Reserved.
