(57)【要約】【課題】組込みシステム用ソフトウェアアーキテクチャにハードウェアモジュールを組み込むための手順を容易にすること。【解決手段】組込みシステム用の標準化されたソフトウェアアーキテクチャに集積回路を組み込むための方法が開示される。本方法は、集積回路の特性で完成されるコンピュータ可読な標準化されたデータ構造の定義を含む。次いで、完成された標準化されたデータ構造は、集積回路を含むハードウェアモジュールの定義のために使用される。このようにして生成されたハードウェアモジュール定義は、さらなる処理のために、組込みシステム用の標準化されたソフトウェアアーキテクチャによってインポートされることができる形でエクスポートされる。【選択図】図１
2009110504.tif 000002
【特許請求の範囲】
【請求項１】
組込みシステム用の標準化されたソフトウェアアーキテクチャに集積回路を組み込むための方法であって、
コンピュータ可読な標準化されたデータ構造を提供するステップと、
前記標準化されたデータ構造を前記集積回路の特性で完成するステップと、
前記集積回路を含むハードウェアモジュールの定義のために前記標準化されたデータ構造を使用するステップと、
前記組込みシステム用の標準化されたソフトウェアアーキテクチャによるさらなる処理のためにインポートされることができる形で前記ハードウェアモジュール定義をエクスポートするステップと、を含み、
前記集積回路の前記特性が、前記集積回路の電気的仕様、プログラミングインターフェース、および知られているエラーを含むことを特徴とする方法。
【請求項２】
拡張可能記述言語が、前記標準化されたデータ構造の定義のための階層構造データの記述のために使用されることを特徴とする、請求項１に記載の方法。
【請求項３】
前記標準化されたデータ構造が、前記集積回路の製造業者または販売業者によって、または前記ハードウェアモジュールの開発者によって、前記集積回路の前記特性で完成されることを特徴とする、請求項２に記載の方法。
【請求項４】
前記ハードウェアモジュールの前記定義が、
前記ハードウェアモジュールに対する要求事項を定義するステップと、
前記完成された標準化されたデータ構造、および、任意選択で、さらに完成された標準化されたデータ構造を追加するステップと、
前記ハードウェアモジュールを構成するステップと
を含むことを特徴とする、請求項３に記載の方法。
【請求項５】
前記ハードウェアモジュールの前記定義が、
前記ハードウェアモジュールによってカバーされる集積回路間の関係を構成するステップと、
前記ハードウェアモジュールの入力／出力インターフェースおよび通信インターフェースを構成するステップと、
前記組込みシステム用の標準化されたソフトウェアアーキテクチャに前記ハードウェアモジュールを組み込むためにソフトウェアモジュールを準備するステップと
を含むことを特徴とする、請求項４に記載の方法。
【請求項６】
コンピュータによって実行された場合、前記コンピュータに、
ハードウェアモジュールに対する要求事項を読み込ませ、
前記ハードウェアモジュールによってカバーされる集積回路の特性を記述する完成された標準化されたデータ構造を読み込ませ、
前記ハードウェアモジュールによってカバーされる前記集積回路間の関係を読み込ませ、
前記ハードウェアモジュールの入力／出力インターフェースおよび通信インターフェースの構成を読み込ませ、
前記組込みシステム用の標準化されたソフトウェアアーキテクチャに前記ハードウェアモジュールを組み込むために必要とされるソフトウェアモジュールの準備をサポートさせ、
前記組込みシステム用の標準化されたソフトウェアアーキテクチャによって読み取り可能なフォーマットで前記読み込まれたデータおよび準備されたソフトウェアモジュールをエクスポートさせる命令セットを表すコンピュータプログラムがそこに記憶されているコンピュータ可読記憶媒体。
【請求項７】
前記ハードウェアモジュールが電子制御ユニット（ＥＣＵ）を含むことを特徴とする、請求項６に記載のコンピュータ可読記憶媒体。
【請求項８】
前記組込みシステム用の標準化されたソフトウェアアーキテクチャが、自動車産業のオープンシステムアーキテクチャ（ＡＵＴＯＳＡＲ、自動車オープンシステムアーキテクチャ）を含むことを特徴とする、請求項６に記載のコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、汎用ソフトウェアアーキテクチャに関し、詳細には、組込みシステム用の標準化されたソフトウェアアーキテクチャに集積回路を組み込むための方法に関する。
【背景技術】
【０００２】
電子部品は数十年間止まることなく小型化されてきたが、同時にそれらの複雑さが増大し、それに伴って、電子部品を含むアセンブリを制御し特定の目的を満たすために開発されてきたソフトウェアシステムの大きさおよび複雑さもそれに対応して増大してきた。この文脈では、電子部品を含むアセンブリは、一般に「ハードウェアモジュール」と呼ばれ、ハードウェアを制御するためのソフトウェアシステムは、一般に「オペレーティングシステム」と呼ばれ、特定の目的を満たすためのソフトウェアシステムは、一般に「アプリケーション」と呼ばれる。
【０００３】
オフィス業界でよく知られているコンピュータシステム、とりわけパーソナルコンピュータでは、ハードウェアモジュールを同一でないハードウェアモジュールで置換すること、および／または追加のハードウェアモジュールを追加することを可能にするオープンハードウェアアーキテクチャが普及している。標準インターフェース（例えばＵＳＢ）を介してパーソナルコンピュータを追加のハードウェアモジュールおよび装置に一時的に接続することも可能である。この目的のために、パーソナルコンピュータ用に開発されたオペレーティングシステムは、変更されたハードウェアの認識を可能にし、かつ、新規に追加されたまたは置換されたハードウェアモジュールの正確な制御のために必要とされるソフトウェアモジュール（ドライバ）の非常に自動的な組込みを可能にするプロセスを含む。
【０００４】
これとは対照的に、組込みシステムは、一般に、問題なしには同一でないハードウェアモジュールによって置換されることができない固定的に定義されたモジュールを有するクローズドシステムである。組込みシステムは、固定的にアウトラインされた目的および利用分野、例えば産業環境における監視および制御目的のために、または自動車における使用のために設計される。しばしば厳しい使用サイト、および強靭性と信頼性に対する他の産業的要求事項のため、ならびにコスト上の考慮事項のため、組込みシステムは、一般に、例えば、パーソナルコンピュータよりはるかに低価格のハードウェアリソース（プロセッサコンピューティング電力、入手可能なＲＡＭ、入手可能なＲＯＭ、インターフェースなど）を有する。必要とされる信頼性および強靭性によって、一般に、パーソナルコンピュータ環境（例えばハードディスク、ファンなど）からの特定のハードウェア技術の使用がより難しくなり、特別のハードウェア適応物（例えば「システムクラッシュ」を検出し、システムを自動的に再始動するハードウェアウォッチドッグ）が必要になる。
【０００５】
したがって、組込みシステム用ソフトウェアアーキテクチャに対しては特別の要求事項がある。そのようなソフトウェアアーキテクチャに対する要求事項は、詳細には、（定義された時間内のインシデントに対するリアクションを保証する）特定のリアルタイム機能、効果的な「スリム」コア（すなわち、組込みシステムのオペレーティングシステムに必要なリソースは、できるだけ少なくなければならない）、ならびに安全重視分野における使用を可能にする高い強靭性、信頼性および安全性を含む。
【０００６】
組込みシステム用のそのようなソフトウェアアーキテクチャの開発および保守は非常に時間とコストがかかる。こういう訳で、組込みシステム用の、市販のオペレーティングシステムおよびオープンソースに基づくオペレーティングシステムが存在する。オペレーティングシステムを所望のハードウェアプラットフォームまたは所望のハードウェアモジュールに適応させるために、かつ、より高級なプログラミング言語（しばしばＣまたはＣ＋＋）でアプリケーションを開発するために、これらのオペレーティングシステムと共にそれらにマッチしたツールチェーンが入手可能であり、その結果、組込みシステム用の完全なソフトウェア開発システムが入手可能である。
【０００７】
特別の要求に合わせて作られ、一般に複数の集積回路（例えば、ＡＳＩＣ、ＦＰＧＡ、ＣＰＬＤなど）および／または「ビルディングブロック」（以下の定義参照）を含むハードウェアモジュールを、組込みシステム用の対応するソフトウェアアーキテクチャに組み込むため、または組込みシステムのためにそこで稼働するオペレーティングシステムを入手するためには、少なくとも次の２つのステップが必要とされる。
【０００８】
１．組込みシステムのために使用されるオペレーティングシステムのソフトウェアアーキテクチャを考慮しながら、集積回路のまたはビルディングブロックの文書に基づいてハードウェアモジュール上で使用される集積回路および／またはビルディングブロックを制御するためのソフトウェアモジュール（ドライバ）を準備し、かつ／または適応させるステップ。
【０００９】
２．考慮しなければならないハードウェアモジュールの回路図によって予め決められた個々の集積回路またはビルディングブロックの接続で、準備されかつ／または適応されたソフトウェアモジュールを組み込むように組込みシステム用オペレーティングシステムを構成するステップ。
【００１０】
使用される集積回路またはビルディングブロックの文書は、ソフトウェアモジュールの準備／適応と、組込みシステム用オペレーティングシステムの構成の両方で使用されなければならない。すなわち、それぞれの開発者および／またはプロジェクトエンジニアは文書を研究し実行しなければならない。
【００１１】
組込みシステム用ソフトウェアアーキテクチャにハードウェアモジュールを組み込む前述の手順は、実際には、コストがかかり、複雑で、エラーを生じやすいことが分かる。
【発明の開示】
【発明が解決しようとする課題】
【００１２】
したがって、本発明の目的は、組込みシステム用ソフトウェアアーキテクチャにハードウェアモジュールを組み込むための手順を容易にすることである。
【課題を解決するための手段】
【００１３】
この目的は、独立請求項の主題によって満たされる。
【００１４】
簡単にするために、本発明による方法は、以下で、集積回路の組込みを想定して説明される。しかし、本発明による方法はまた、標準化された組込みシステム用ソフトウェアアーキテクチャにいわゆるビルディングブロックを組み込むためにも同様に使用されることができる。「ビルディングブロック」は、この文脈では、例えば、標準化されたセンサおよびアクチュエータ、ならびに、固定的に定義された機能を有する前述の個別にセットアップされた回路部分であると理解される。組込みシステム用の標準化されたソフトウェアアーキテクチャに集積回路を組み込むための本発明による方法は、集積回路の特性の記述のために必要とされる全ての情報を記憶することができるコンピュータ可読な標準化されたデータ構造を定義するステップを含む。この標準化されたデータ構造は、特定の集積回路に関して知られている全ての情報（電気的仕様、プログラミングインターフェース、エラー）が含まれるように、集積回路の特性で完成される。完成された標準化されたデータ構造は、特定の集積回路を含むハードウェアモジュールを定義するために使用される。最後に、ハードウェアモジュールの定義は、さらなる処理のために、組込みシステム用の標準化されたソフトウェアアーキテクチャによってインポートされることができる形でエクスポートされる。
【００１５】
集積回路に関して知られている全ての情報を含むコンピュータ可読な標準化されたデータ構造の本発明による方法で提供される使用は、以下の利点を有する。
【００１６】
−  集積回路を組み込むためのソフトウェアモジュールの開発者、およびハードウェアモジュールの定義を実行するプロジェクトエンジニアは、完成された標準化されたデータ構造が存在するとすぐ、集積回路の文書のいかなる時間のかかる研究もなしで、彼らの仕事を開始することができる。
【００１７】
−  適切なソフトウェアツールが、ソフトウェアモジュールの開発者および／またはプロジェクトエンジニアにそれぞれの目的を満たすために必要とされる完成された標準化されたデータ構造からの情報をそれぞれの場合に正確に提供することができ、その結果、仕事をかなり加速し、エラーレートを低減することができる。
【００１８】
−  すでに使用された集積回路に関する新規の発見事項（例えば、後で認識されたエラー）が速やかに記録され考慮されることができる。
【００１９】
−  新世代の集積回路（例えば、シュリンクプロセス、新規のマスク、または新規のファームウェア）、または既存の集積回路を置換することを意図した新規の集積回路が容易に組み込まれることができる。
【００２０】
本方法の好ましい実施形態では、標準化されたデータ構造を定義する階層構造データを記述するために拡張可能記述言語が使用される。記述言語、とりわけマークアップ言語のファミリは、物理的オブジェクトの特性の記述に非常によく適している。それらはまた、様々な抽象化レベルの使用を容易にする。したがって、メモリセルのフィールドが、例えば適切な構造によって定義されることができ、全フィールド、フィールドのセル、またはフィールドのセルからのビットがアドレスされることができる。拡張可能記述言語、とりわけ拡張可能マークアップ言語はまた、「言語の範囲」の拡張性の特徴を有する。したがって、集積回路のどんなに多様な特性でも完全にマップされることができる。
【００２１】
好ましい一実施形態は、標準化されたデータ構造が集積回路の製造業者または販売業者によって完成されると規定する。これは、製造業者または販売業者が集積回路に関する全ての情報を有し、標準化されたデータ構造を完成する努力がはっきりしたままであるようにこれを文書で利用可能にするので、現れる。製造業者または販売業者はまた、完成された標準化されたデータ構造を供給することによって集積回路の市場の受け入れを増やす。あるいは、標準化されたデータ構造は、ソフトウェア開発者および／またはプロジェクトエンジニアによって完成されることもできる。
【００２２】
組込みシステム用ソフトウェアアーキテクチャに集積回路を組み込むための方法の好ましい諸実施形態では、ハードウェアモジュールの定義は、ハードウェアモジュールに対する第１の定義要求事項を含む。上記要求事項は、機械的要求事項（例えばモジュールの大きさ、コネクタの配列、ボアホールなど）、電気的要求事項（動作電圧、動作電流、電力消費など）、環境的要求事項（作動温度範囲、記憶温度範囲、耐湿性、耐振動性など）、機能的要求事項（ハードウェアモジュールが満たさなければならない全ての機能）などを含む。続いて、完成された標準化されたデータ構造（および、任意選択で、さらなる完成された標準化されたデータ構造）が追加され、ハードウェアモジュールが構成される。ハードウェアモジュールの構成は、ハードウェアモジュールによって含まれる集積回路間の関係が構成されるステップと、ハードウェアモジュールの入力／出力インターフェースおよび通信インターフェースが構成されるステップと、組込みシステム用の標準化されたソフトウェアアーキテクチャにハードウェアモジュールを組み込むためのソフトウェアモジュールが準備されるステップと、を含む。
【００２３】
したがって、ハードウェアモジュールの定義の一部分として、完成された標準化されたデータ構造が相互リンクされ（または、ハードウェアモジュールの回路図が定義され）、組込みシステム用ソフトウェアアーキテクチャに組み込むためにソフトウェアモジュールが準備される。
【００２４】
本発明によるコンピュータ可読記憶媒体は、そこに記憶され、命令セットを表すコンピュータプログラムを含む。命令セットは、コンピュータ上で実行される場合、コンピュータにハードウェアモジュール上に要求事項を読み込ませ、ハードウェアモジュールによってカバーされる集積回路の特性を記述する完成された標準化されたデータ構造を読み込ませる。さらに、命令セットは、コンピュータによって実行される場合、コンピュータに、ハードウェアモジュールによってカバーされる集積回路間の関係を読み込ませ、ハードウェアモジュールの入力／出力インターフェースおよび通信インターフェースの構成を読み込ませ、組込みシステム用の標準化されたソフトウェアアーキテクチャにハードウェアモジュールを組み込むために必要とされるソフトウェアモジュールの準備をサポートさせ、組込みシステム用の標準化されたソフトウェアアーキテクチャによって読み取り可能なフォーマットで読み込まれたデータおよび準備されたソフトウェアモジュールをエクスポートさせる。
【００２５】
コンピュータプログラムがそこに保存されている本発明によるコンピュータ可読記憶媒体は、ソフトウェアモジュールの準備およびハードウェアモジュールの定義における重要なステップを容易にするので、組込みシステム用の標準化されたソフトウェアアーキテクチャにハードウェアモジュールを組み込むのをサポートする。ハードウェアモジュール定義内の読み込まれた集積回路の定義が読み込みによってすでに行われるので、ハードウェアモジュール定義への集積回路の組込みは、完成された標準化されたデータ構造を読み込むことができることによって、かなり容易にされ加速される。ソフトウェアモジュールの準備および／または適応のために必要とされる全ての情報が完成された標準化されたデータ構造の読み込みおよびハードウェアモジュールに対する要求事項の読み込みによって提供され、もはや複雑なやり方でルックアップされる必要がないので、ソフトウェアモジュールの準備および／または適応が同様にサポートされ容易にされる。
【００２６】
コンピュータプログラムがそこに保存されている本発明によるコンピュータ可読記憶媒体のとりわけ好ましい実施形態は、自動車産業における使用を対象とする。これらの実施形態では、ハードウェアモジュールは、一般に、電子制御ユニット（ＥＣＵ）を含み、ハードウェアモジュールがそこに組み込まれるべき組込みシステム用の標準化されたソフトウェアアーキテクチャは、自動車産業用オープンシステムアーキテクチャ（ＡＵＴＯＳＡＲ、自動車オープンシステムアーキテクチャ）を含む。
【００２７】
本発明は、有利な実施形態、および含まれた図面を参照しながら、純粋に例として以下で説明される。
【発明を実施するための最良の形態】
【００２８】
図１は、ＡＵＴＯＳＡＲシステムの例のための組込みシステム用の標準化されたソフトウェアアーキテクチャに集積回路を組み込むための本発明による方法を表す。これに関して、１つまたは複数のＸＭＬファイル２０が、一般に、集積回路の電気的仕様、プログラミングインターフェースの記述、および知られているエラーのリストを含む集積回路の文書１０から、ＸＭＬエディタ１５の助けを借りて生成される。これに関して、ＸＭＬファイル２０は、本発明による標準化されたデータ構造を備え、集積回路の文書１０に含まれている全ての情報を含む。当技術分野で知られているいかなる所望のＸＭＬエディタ１５も、ＸＭＬファイル２０の生成のために使用されることができる。ＸＭＬファイル２０の準備は、集積回路の製造業者または販売業者によって、あるいはソフトウェア開発者またはプロジェクトエンジニアによって行われることができる。適切なソフトウェアの助けを借りて、集積回路の文書１０からＸＭＬファイル２０を自動的に生成することもできる。
【００２９】
ハードウェアモジュール定義に適したコンピュータプログラム２５は、ＸＭＬファイル２０および定義されるべきハードウェアモジュールに対する要求事項２２を読み込む。上記要求事項は、機械的要求事項（例えば、モジュールの大きさ、コネクタの配列、ボアホール、回路基板の厚さおよび仕上げなど）、電気的要求事項（動作電圧、動作電流、電力消費など）、環境的要求事項（動作温度範囲、記憶温度範囲、耐湿性、耐振動性など）、機能的要求事項（ハードウェアモジュールが満たさなければならない全ての機能）などを含む。これらの要求事項２２は、ファイルから読み込まれるか、それともインタラクティブに入力されることができる。ＸＭＬファイル２０および要求事項２２に基づいて、コンピュータプログラム２５が、ＸＭＬファイル２０の助けを借りてすでに読み込まれている集積回路間の関係２４および、定義されるべきハードウェアモジュールによってカバーされた他のコンポーネントを読み取り、必要とされる入力／出力インターフェースおよび通信インターフェース２６を構成する。この入力および構成プロセスはインタラクティブに行われる。
【００３０】
コンピュータプログラム２５のユーザは、今や、ハードウェアモジュール定義に含まる全てのコンポーネントの正しい制御を可能にするコンピュータプログラム２５のサポートを受けて、多分必要とされるソフトウェアモジュール２８を準備しあるいは構成することができる。
【００３１】
最後に、準備されたハードウェアモジュール構成は、所望の組込みシステム用の標準化されたソフトウェアアーキテクチャ、この実施形態ではＡＵＴＯＳＡＲ、のツールによって処理されることができるフォーマットでエクスポートされる。ＸＭＬファイル３０は、この例ではＡＵＴＯＳＡＲのために生成される。
【００３２】
上記で説明されたハードウェアモジュールの定義のための諸ステップは、結果が要求事項に合致するまで、異なる順序で実行されてもよく、インタラクティブに実行されてもよい。
【００３３】
準備されたソフトウェアモジュール２８およびＸＭＬファイル３０は、続いて、それぞれの使用された組込みシステム用の標準化されたソフトウェアアーキテクチャのツールによってさらに処理される。ＡＵＴＯＳＡＲでは、これは、通常、コードジェネレータおよびコンパイラ、ならびに、その結果が、定義されたハードウェアモジュールに適応されたＡＵＴＯＳＡＲランタイム環境（図３参照）であるリンク手順である。
【００３４】
図２は、ハードウェアモジュール、この例では現代の自動車で使用されるような典型的な電子制御ユニット（ＥＣＵ）１００の概略セットアップを示す。ＥＣＵ１００は、それが正しく機能するのに必要な１組のシステムＩＣ１２０に接続されたマイクロコントローラ１１０を含む。さらに、マイクロコントローラ１１０はメモリ１３０にアクセスすることができ、メモリ１３０は、一般に、ＲＯＭ（例えば、ＥＥＰＲＯＭ）として設計され、マイクロコントローラ１１０が動作中にアクセスするコマンドおよび／またはデータを含む。一般に、マイクロコントローラ１１０には、スペースおよびコスト上の理由で、ＲＡＭ（ランダムアクセスメモリ）がすでに完全に含まれている。
【００３５】
ＥＣＵ１００は、一般に、ＥＣＵ１００がそのために開発された特定の制御オブジェクトの実行のために、特定の機能のために開発されかつ／または適応された一連の集積コンポーネント（ＡＳＩＣ、ＦＰＧＡ、ＣＰＬＤなど）、例えば、入力ＩＣ１４０、出力ＩＣ１５０、無線通信用通信ＩＣ１６０用および有線通信用通信ＩＣ１７０用の通信ＩＣなどを有する。マイクロコントローラ１１０は、上記でリストアップされた集積コンポーネント１４０、１５０、１６０、および１７０に電気的に接続されて、それらを制御し、データを交換する。これに関して、電気的接続は知られている技法および通信プロトコルを使用して設計される。例えば、この目的のためにＳＰＩバス（シリアル・ペリフェラル・インターフェース・バス）１８０が使用される。
【００３６】
本発明による方法は、組込みシステム用の標準化されたソフトウェアアーキテクチャに、図２に示されている集積回路（ＩＣ）１４０、１５０、１６０および１７０を組み込むために使用されて、この手順を容易にし、加速する。
【００３７】
ＡＵＴＯＳＡＲシステムのソフトウェアアーキテクチャの抽象的概略セットアップ３００が図３に示されている。本発明よる方法によってその定義が容易にされるハードウェアモジュールは、ハードウェア環境３１０およびマイクロコントローラ３２０のブロックから成る。ハードウェア環境３１０は、とりわけ、標準化されたデータ構造の使用によってそれらの組込みが容易にされる図２の集積回路１４０、１５０、１６０および１７０を含む。複数のコンポーネントを含む基本ソフトウェアが、ハードウェア環境３１０およびマイクロコントローラ３２０へのＡＵＴＯＳＡＲランタイム環境（ＲＴＥ）３３０の適応のために提供される。これらのコンポーネントは、３つの層に配列される。ドライバ層は、コンポーネント３４１、３４２、３４３および３４４を備え、抽象化層は、コンポーネント３４５、３４６および３４７を備え、ミドルウェア層は、コンポーネント３４８および３４９を含む。さらに、３つの層全てを含むコンポーネント３５０（システムサービス）および３５１（複合ドライバ）がある。最後に、抽象化層およびミドルウェア層に配置されるコンポーネント３５２（Ｉ／Ｏハードウェア抽象化）が挙げられなければならない。本発明による方法は、Ｉ／Ｏハードウェア抽象化の準備を簡略化することを対象とする。ＡＵＴＯＳＡＲランタイム環境３３０は、上記でリストアップされた基本ソフトウェアのコンポーネントを利用して、アプリケーション層３６０で稼働するアプリケーションに、必要とされる機能を提供する。この目的のために、ＡＵＴＯＳＡＲランタイム環境３３０は、それぞれアドレスされたコンポーネントによって提供されなければならない標準化された機能を呼び出す。集積回路の制御のためのソフトウェアモジュールの準備では、このインターフェースを正しく実装するように注意しなければならない。ＡＵＴＯＳＡＲランタイム環境３３０は、ハードウェアに依存しないプラットフォームを提供する。これは、アプリケーション層３６０のアプリケーションがＡＵＴＯＳＡＲランタイム環境を有する別のハードウェアモジュール上でも稼働することができることを意味する。
【００３８】
本発明によるコンピュータ可読な標準化されたデータ構造は、以下で、好ましい実施形態を参照しながら、より正確に説明される。ＸＭＬ（拡張可能マークアップ言語）が、このデータ構造の定義のために使用される。ＸＭＬは、オブジェクトを記述するために「タグ」またはマークを使用する。これらのタグは相互の中にスタックされることができ、それによって階層構造がマップされることができる。構造タグは、前述の標準化されたデータ構造にプリセットされる。
【００３９】
図４Ａは、本発明による標準化されたデータ構造の最上層を示す。「Ｅｘａｍｐｌｅ」と言う名称の集積回路は、章「ｃｏｍｍｏｎｆｕｎｃｔｉｏｎｓ」（ＩＣの一般的機能、例えばウォッチドッグ）、「ｄｉｏｆｕｎｃｔｉｏｎｓ」（ＩＣの特定の入力／出力機能）、「ａｐｐｌｉｃａｔｉｏｎｎｏｔｅｓ」（機能呼出の定義）、「ｒｅｇｉｓｔｅｒｓｅｔ」（ＩＣのレジスタの記述）および「ｃｏｎｓｔｒａｉｎｔｓ」（ＩＣの制限または限定）で記述される。ラインの前の正符号（「＋」）は、ラインがさらなるラインを「含み」、したがって「含まれた」ラインのタイトルを形成する。
【００４０】
章「ｃｏｍｍｏｎｆｕｎｃｔｉｏｎｓ」は、図４Ｂで開かれている。したがって、図４Ａの集積回路「Ｅａｍｐｌｅ」は、タグ＜ｆｕｎｃｔｉｏｎｇｒｏｕｐ＞から始まるラインを特徴とする章「ｃｏｍｍｏｎｆｕｎｃｔｉｏｎｓ」で合計５個の機能グループを有する。機能グループの数は、記述されるべき集積回路によって決まり、５個より多くても少なくてもよい。機能グループの名称は、ユーザによって固定されることができ、機能の意味を十分に記述すべきである。
【００４１】
図４Ｃで、「ＳＰＩ  Ｗａｔｃｈｄｏｇ」という名称の機能グループが開かれた。この機能グループは、タグ＜ｃｏｎｆｉｇｉｔｅｍ＞を有するエントリにそれぞれ含まれる３つの特性を含む。機能グループと同様に、これらの「ｃｏｎｆｉｇｕｒａｔｉｏｎ  ｉｔｅｍｓ」もＩＤおよび名称によって特徴づけられる。
【００４２】
図４Ｃの第１の「ｃｏｎｆｉｇｕｒａｔｉｏｎ  ｉｔｅｍ」が図４Ｄで開かれて示されている。それは、＜ｃｏｎｔｒｏｌ＞タグの他に、＜ｒｅｇｒｅｆｅｒｅｎｃｅ＞タグおよび＜ＡｐｐＮｏｔｅｓ＞タグを含む。図示されている図４Ｄの例では、＜ｒｅｇｒｅｆｅｒｅｎｃｅ＞エントリは、ビット５（すなわち、３番目に高い値を有するレジスタにおけるビット）が「１」に設定された場合、ＳＰＩウォッチドッグをアクティブ化する名称「ＷＤ−ＴＯ」およびアドレス０ＤＨを有するレジスタを定義する。＜ａｐｐｎｏｔｅｓ＞エントリは、関連する＜ｃｏｎｔｒｏｌ＞タグに関するより正確な表示を可能にする。
【００４３】
図４Ｅは、開かれた図４Ｄの＜ｃｏｎｔｒｏｌ＞タグを示す。この例におけるデータ構造は、値「真」および「偽」を採用することができるブール値から成り、この場合、「偽」はレジスタのコンテンツ「００００００００」によって表され、「真」はレジスタのコンテンツ「００１０００００」によって表される。ブール値の他に、整数、ストリングおよび一覧表もサポートされる。より複雑な構造が、一覧表を使用して基本データタイプからまとめられる。
【００４４】
図４Ａには、図４Ｆで開かれて示されているタイトル「ＡｐｐｌｉｃａｔｉｏｎＮｏｔｅｓ」を有する章が示されている。この章におけるタグ＜ａｐｐｌｉｃａｔｉｏｎｎｏｔｅｓ＞のもとでの各エントリは、ＡＵＴＯＳＡＲランタイム環境に機能インターフェースを提供する。図４Ｆで、「Ｄｅｍｏ」という名称の機能が定義される。
【００４５】
前述の標準化されたデータ構造は、データが構造においてどのように配列されなければならないか固定的に定義されたタグに関して厳密かつ固定的に定義する。他方、前述の標準化されたデータ構造は、名称の割り当てにおいては大きな自由を可能にするので、非常にフレキシブルである。個々のオブジェクトの機能を記述することができることによって、標準化されたデータ構造を使用するソフトウェア開発者および／またはプロジェクトエンジニアの理解もかなり容易になる。
【００４６】
前述のように、ビルディングブロック（例えば、標準化されたセンサ、標準化されたアクチュエータ、または、定義された機能を有する個別にセットアップされた回路部分）の組込みは同様のやり方で行われる。これらの要素の記述またはデータシートが現れるとすぐ、標準化されたデータ構造が対応するデータで完成されることができ、組込みシステム用の標準化されたソフトウェアアーキテクチャへのビルディングブロックの組込みが実行されることができる。
【図面の簡単な説明】
【００４７】
【図１】組込みシステム用の標準化されたソフトウェアアーキテクチャに集積回路を組み込むための本発明による方法の一実施形態の概略図である。
【図２】例示的集積回路を示すハードウェアモジュールの概略セットアップ図である。
【図３】本発明による方法が関与するＡＵＴＯＳＡＲシステム内のポイントを示す、ＡＵＴＯＳＡＲシステムのソフトウェアアーキテクチャの抽象的概略セットアップ図である。
【図４Ａ】本発明による標準化されたデータ構造の一例の図である。
【図４Ｂ】本発明による標準化されたデータ構造の一例の図である。
【図４Ｃ】本発明による標準化されたデータ構造の一例の図である。
【図４Ｄ】本発明による標準化されたデータ構造の一例の図である。
【図４Ｅ】本発明による標準化されたデータ構造の一例の図である。
【図４Ｆ】本発明による標準化されたデータ構造の一例の図である。
【符号の説明】
【００４８】
１０  文書
１５  ＸＭＬエディタ
２０  ＸＭＬファイル
２２  ハードウェアモジュールに対する要求事項
２４  集積回路間の関係
２５  ハードウェアモジュール定義のためのコンピュータプログラム
２６  入力／出力インターフェースおよび通信インターフェース
２８  ソフトウェアモジュール
３０  ＸＭＬファイル
３５  ＡＵＴＯＳＡＲコードジェネレータ
１００  電子制御ユニット（ＥＣＵ）
１１０  マイクロコントローラ
１２０  システムＩＣ
１３０  メモリ／記憶装置
１４０  入力ＩＣ／集積コンポーネント
１５０  出力ＩＣ／集積コンポーネント
１６０  無線通信用ＩＣ／集積コンポーネント
１７０  有線通信用ＩＣ／集積コンポーネント
１８０  ＳＰＩバス
３００  ＡＵＴＯＳＡＲシステムのソフトウェアアーキテクチャの抽象的概略セットアップ
３１０  ハードウェア環境
３２０  マイクロコントローラ
３３０  ＡＵＴＯＳＡＲランタイム環境（ＲＴＥ）
３４１  マイクロコントローラドライバ
３４２  メモリドライバ
３４３  通信ドライバ
３４４  Ｉ／Ｏドライバ
３４５  モジュールコンポーネントハードウェア抽象化
３４６  メモリハードウェア抽象化
３４７  通信ハードウェア抽象化
３４８  メモリサービス
３４９  通信サービス
３５０  システムサービス
３５１  複合ドライバ
３５２  Ｉ／Ｏハードウェア抽象化
３６０  アプリケーション層
【図１】
2009110504.tif 000003
【図２】
2009110504.tif 000004
【図３】
2009110504.tif 000005
【図４Ａ】
2009110504.tif 000006
【図４Ｂ】
2009110504.tif 000007
【図４Ｃ】
2009110504.tif 000008
【図４Ｄ】
2009110504.tif 000009
【図４Ｅ】
2009110504.tif 000010
【図４Ｆ】
2009110504.tif 000011
【外国語明細書】
2009110504000001.pdf