GAIO CLUB

2022年06月30日

組込みシステム開発に役立つ良著のご紹介

技術情報
組込みシステムの制御では、タイミングが非常に重要です。処理時間、反応時間、出力信号の間隔などが設計通りになっていなければ、システムにとって重大な問題を引き起こす危険性があるからです。このため、組込みシステム開発において、制御タイミングの測定が重視されています。

今回のGaio Clubでは、ガイオのパートナーである、GLIWA Embedded Sytems社(以下GLIWA社と記します)のCEO Peter Gliwa氏による、車載システム分野での開発経験と知識を集めたタイミング測定にフォーカスした本が出版されましたので、紹介したいと思います。(Gliwa氏のプロフィールは文末を参照してください)
  • Embedded Software Timing
    -Methodology, Analysis and Practical Tips with a Focus on Automotive-


    著者:Peter Gliwa
    出版年:2021年
    出版社:Springer

GLIWA社について

世界において、組込みシステムのタイミング測定技術をリードする、ドイツ(バイエルン州 ヴァイルハイム)の企業です。代表的な製品である”T1”は、GLIWA社の技術を結集したタイミング測定ツールです。十数年前から様々な業界、特に自動車分野において信頼され、採用されています。

GLIWA:https://www.gliwa.com/

本書について

本書は、主に産業界のソフトウェア開発者やプロジェクトリーダーを対象に書かれています。特に自動車業界における多くの実践的な事例により構成されていますが、大部分は、あらゆる組込みソフトウェアプロジェクトに適用できる内容として記述されています。

それでは、本書の構成(全12章)から、各章ごとに内容を紹介していきます。
各章のオリジナルのタイトルは以下の通りとなっています。

1. General basics

1章では、組込みソフトウエア開発の基本知識を説明しています。
リアルタイム性についてや、Vモデルでの開発を通して組込みソフトウエアができあがるビルドプロセスまでを、わかりやすく解説しています。

2. Microprocessor technology basics

2章では、CPUの種類、構成と動作を説明しています。
命令の種類、メモリーのアドレス指定方法、キャッシュの使い方や、そのメリットと落とし穴、割り込みの特徴などが記されています。見やすい図と簡単なソースコードの例を用いて、難しい概念をわかりやすく説明しています。章末では組込みソフトウエアとデスクトップPCなどで動作するソフトウエアとの違いを説明しています。

3. Operating systems

3章では、オペレーティングシステムの概念を説明しています。
オペレーティングシステムは、各処理タスクの実行時間と実行順番を決めるため、タイミングに大きく影響します。これらを決めるスケジューリング方法をいくつか紹介し、それぞれの特徴を述べています。

4. Timing theory

3章までは組込みソフトウエアの特徴を説明していますが、本章からは理論的な内容に入っていきます。
タイミング測定の基本となるタイミング・パラメーターを説明し、それぞれの現実的な意味と統計的な意味を解説します。最もよく知られるタイミング・パラメーターであるCPUロード(負荷)についても記載しています。

5. Timing analysis techniques

5章ではタイミング・パラメーターをどの様に測定できるかを説明しています。
システム間またはモジュール間の通信レベル、オペレーティングシステムが決めるスケジューリングレベル、CPU単体で実行されるコードレベル、という3つの見方から、静的解析やシミュレーションにおける測定まで幅広い分野を捉えた説明がなされています。数人の専門家とのインタビューを含む本章が、本書で一番長い章になっている所以でもあります。

6. Practical examples of timing problems

6章では、タイミングにより現実のシステムで、どの様な問題が起きるのかを説明しています。
GLIWA社が実際に経験し解決した問題を紹介しています。その中で、タイミングの静的解析のみで、CPU負荷が想定を超過しており、予定されていた新世代のCPUを使うシステムの開発自体が不要であることがわかった事例が印象的でした。特にタイミングの解析だけで十数億円の開発費が節約できたという事実は参考になります。

7. Multi-core, many-core, and multi-ECU timing

7章では、組込みシステムで適用が増えている、1CPUに複数のコアを持つマルチコア/メニーコアを説明しています。
安全性が求められるアプリケーションに必要とされる”ロックステップ コア”も取り上げられています。
タイミング測定後に、問題が判った箇所の修正を行いますが、それ以外にタイミングを改善できる方法についても説明しています。

8. Timing optimization

8章では、タイミングの最適化について説明しています。
スケジューリングの改善、コーディングの改善、メモリーの使い方の改善等、様々な手法を紹介しています。

9. Methodology during the development process

9章では、開発の各段階でどの様にタイミングを考えるべきかや、どの様に開発ステップを進めていくべきかを説明しています。
タイミングに関する要求定義、設計、デバッグ、最適化、検証、テストの必要性や、次世代の製品構成を考える上で、なにを考慮するべきかが網羅されています。システムの中でタイミングを観察方法についても言及しています。

10. AUTOSAR

10章では、自動車業界でソフトウェアのアーキテクチャの標準化を推進するAUTOSARを説明しています。
AUTOSAR仕様においてタイミング要件は、GLIWA社が深く関与しており、GLIWA氏もその策定に携わっています。

11. Safety and ISO 26262

11章では、自動車業界の安全規格であるISO 26262を説明しています。
安全規格の構成と、タイミングに関する留意点が、いくつか挙げられています。

12. Outlook

最終章である12章では、今後の自動車業界でのタイミングの捉え方に対する見通しを述べています。
Gliwa氏の20年以上におよぶ、自動車業界を中心としたタイミング測定の経験を生かした300ページ以上に及ぶ記述を完結するに相応しい内容で締めくくられています。

組込みソフトウエア開発でタイミングが重要な製品に携わる方々には、是非ご一読されることをお薦めします。

本書の概要や目次、書籍内でのサンプルコードなどの情報は、GLIWA社のHP(英語)から入手できます。
https://www.gliwa.com/index.php?page=books&lang=eng

Peter Gliwa氏 プロフィール

  • 2003年の設立から現在まで、Peter Gliwa氏は、GLIWA embedded systems社の代表取締役を担っています。
    20年以上にわたり自動車のオペレーティングシステムとタイミングに携わっており、これらのテーマについて国際的な自動車メーカーやサプライヤーにアドバイスを提供しています。GLIWA社の代表製品であるタイミングスイートT1は彼自身が開発しました。
GLIWA社での活動の前には、ドイツ・シュトゥットガルトにあるバーデン・ヴュルテンベルク州立大学で電子工学を修めた後、ETAS社においてRTOS ERCOSEKの開発に従事し、プロダクトマネージャーとして活躍しました。
2001年から2006年まで、出身校であるバーデン・ヴュルテンベルク州立大学にて、「マイクロコンピュータ技術」の講師を務めました。
※写真はGLIWA社HPより

筆者紹介

キーズ アンソニー

ガイオ・テクノロジー株式会社

統合営業推進部

人気のコラム

最新のコラム