(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】2021518015
(43)【公表日】20210729
(54)【発明の名称】車両の制御装置で実行可能な少なくとも1つのアプリケーションのアプリケーションデータ提供方法、制御装置の較正方法、制御装置および評価装置
(51)【国際特許分類】
   G06F 12/109 20160101AFI20210702BHJP
   G06F 13/12 20060101ALI20210702BHJP
【FI】
   !G06F12/109 100
   !G06F13/12 330P
【審査請求】有
【予備審査請求】未請求
【全頁数】17
(21)【出願番号】2020554426
(86)(22)【出願日】20190319
(85)【翻訳文提出日】20201005
(86)【国際出願番号】EP2019056775
(87)【国際公開番号】WO2019192835
(87)【国際公開日】20191010
(31)【優先権主張番号】102018205204.2
(32)【優先日】20180406
(33)【優先権主張国】DE
(81)【指定国】 AP(BW,GH,GM,KE,LR,LS,MW,MZ,NA,RW,SD,SL,ST,SZ,TZ,UG,ZM,ZW),EA(AM,AZ,BY,KG,KZ,RU,TJ,TM),EP(AL,AT,BE,BG,CH,CY,CZ,DE,DK,EE,ES,FI,FR,GB,GR,HR,HU,IE,IS,IT,LT,LU,LV,MC,MK,MT,NL,NO,PL,PT,RO,RS,SE,SI,SK,SM,TR),OA(BF,BJ,CF,CG,CI,CM,GA,GN,GQ,GW,KM,ML,MR,NE,SN,TD,TG),AE,AG,AL,AM,AO,AT,AU,AZ,BA,BB,BG,BH,BN,BR,BW,BY,BZ,CA,CH,CL,CN,CO,CR,CU,CZ,DE,DJ,DK,DM,DO,DZ,EC,EE,EG,ES,FI,GB,GD,GE,GH,GM,GT,HN,HR,HU,ID,IL,IN,IR,IS,JO,JP,KE,KG,KH,KN,KP,KR,KW,KZ,LA,LC,LK,LR,LS,LU,LY,MA,MD,ME,MG,MK,MN,MW,MX,MY,MZ,NA,NG,NI,NO,NZ,OM,PA,PE,PG,PH,PL,PT,QA,RO,RS,RU,RW,SA,SC,SD,SE,SG,SK,SL,SM,ST,SV,SY,TH,TJ,TM,TN,TR,TT
(71)【出願人】
【識別番号】591245473
【氏名又は名称】ロベルト・ボッシュ・ゲゼルシャフト・ミト・ベシュレンクテル・ハフツング
【氏名又は名称原語表記】ROBERT BOSCH GMBH
【住所又は居所】ドイツ連邦共和国 70442 シュトゥットガルト ポストファッハ 30 02 20
(74)【代理人】
【識別番号】100118902
【弁理士】
【氏名又は名称】山本 修
(74)【代理人】
【識別番号】100196508
【弁理士】
【氏名又は名称】松尾 淳一
(74)【代理人】
【識別番号】100195408
【弁理士】
【氏名又は名称】武藤 陽子
(72)【発明者】
【氏名】クレーマー,フロリアン
【住所又は居所】ドイツ国 74629 プフェーデルバッハ,オルフシュトラーセ 30
(72)【発明者】
【氏名】デッケルト,ミヒャエル
【住所又は居所】ドイツ国 74251 レーレンシュタインスフェルト,レーレナー・フェルト 21
(72)【発明者】
【氏名】ナゲル,パトリック
【住所又は居所】ドイツ国 71634 ルートビヒスブルク,リンデンシュトラーセ 28
(72)【発明者】
【氏名】シュチェティニン,マクシム
【住所又は居所】ドイツ国 71088 ホルツガーリンゲン,ゲシュビスター−ショル−シュトラーセ 7
【テーマコード(参考)】
5B205
【Fターム(参考)】
5B205MM32
5B205RR36
(57)【要約】
本発明は、車両の制御装置(110)で実行可能な少なくとも1つのアプリケーション(112)のアプリケーションデータ提供方法(500)であって、制御装置(110)が、仮想メモリ管理部を有するオペレーティングシステム(200)を実行するためのコンポーネントを含む方法に関する。方法ではまず、第1の仮想メモリのアプリケーションアドレス空間が読み出され、アプリケーションアドレス空間はアプリケーションのプロセスに対応付けられ、アプリケーションデータによって占有されている制御装置(110)の物理メモリの領域を表す。アプリケーションアドレス空間はさらなるステップにおいて、制御装置外部の評価装置(106)に対する通信インターフェース(108)を介したデータ交換のための通信アプリケーション(118)のプロセスに対応付けられている、仮想アドレス空間に挿入される。したがって、通信インターフェース(108)を介してアプリケーションデータが取得可能である。
【選択図】図1
【特許請求の範囲】
【請求項1】
車両の制御装置(110)で実行可能な少なくとも1つのアプリケーション(112)のアプリケーションデータ提供方法(500)であって、前記制御装置(110)が、仮想メモリ管理部を有するオペレーティングシステム(200)を実行するためのコンポーネント(202;300、302、304、306;400、402)を含み、以下の、
− 第1の仮想メモリ(302)のアプリケーションアドレス空間を読み出すステップ(502)であって、前記アプリケーションアドレス空間が前記アプリケーションのプロセスに対応付けられ、前記アプリケーションのデータによって占有されている前記制御装置(110)の物理メモリ(300)の領域をマッピングするステップと、
− 通信インターフェース(108)を介して前記アプリケーションデータを提供するために、前記アプリケーションアドレス空間を、制御装置外部の評価装置(106)に対する前記通信インターフェース(108)を介したデータ交換のための通信アプリケーション(118)のプロセスに対応付けられている、さらなる仮想メモリ(306)の仮想アドレス空間に挿入するステップ(504)と
を含む方法(500)。
【請求項2】
前記通信インターフェース(108)としてのXCPインターフェースを介して前記アプリケーションデータを提供するステップを備える、請求項1に記載の方法(500)。
【請求項3】
前記通信アプリケーション(118)のプロセスが、メモリ管理部(MMU)のハードウェアユニットを介さずに、前記読み出すステップ(502)と前記挿入するステップ(504)とを実行するように構成されている、請求項1または請求項2に記載の方法(500)。
【請求項4】
前記読み出すステップ(502)において、前記アプリケーションデータの少なくとも1つの物理アドレスおよび/または仮想アドレスを前記アプリケーションアドレス空間として読み出す、請求項1から3のいずれか一項に記載の方法(500)。
【請求項5】
前記挿入するステップ(504)において、前記制御装置(110)のPOSIXに基づくオペレーティングシステム(200)を使用して、アプリケーションアドレス空間(302)を前記仮想アドレス空間に挿入する、請求項1から4のいずれか一項に記載の方法(500)。
【請求項6】
前記読み出すステップ(502)において、前記アプリケーション(112)に対応付けられたプロセスの所定のイベントに応答して、前記アプリケーションアドレス空間を読み出す、請求項1から5のいずれか一項に記載の方法(500)。
【請求項7】
前記読み出すステップ(502)において、前記制御装置(110)上で実行可能な第2のアプリケーション(114)のプロセスに対応付けられており、前記第2のアプリケーション(114)の第2のアプリケーションデータが占有する前記物理メモリ(300)の領域を表す第2の仮想メモリ(304)の第2の仮想アプリケーションアドレス空間が読み出され、前記挿入するステップ(504)において、前記第2のアプリケーションのアドレス空間(304)が前記仮想アドレス空間(306)に挿入されて、前記通信インターフェース(108)を介して前記第2のアプリケーションデータを提供する、請求項1から6のいずれか一項に記載の方法(500)。
【請求項8】
請求項1から7のいずれか一項に記載の前記方法(500)を実行および/または駆動制御するために構成されたユニット(202;300、302、304、306;400、402)を備えた制御装置。
【請求項9】
前記ユニット(300、302、304、306;400、402)が、マイクロプロセッサ(202)、物理メモリ(300)、前記アプリケーション(112)に対応付けられた第1の仮想メモリ(302)、および前記通信アプリケーション(118)に対応付けられたさらなる仮想メモリ(306)を含む、請求項8に記載の制御装置(110)。
【請求項10】
請求項1から7のいずれか一項に記載の方法(500)で提供されるアプリケーションデータを使用した制御装置(110)の較正方法(600)であって、
− 前記通信アプリケーション(118)を使用して前記通信インターフェース(108)を介してアプリケーションデータを読み取るステップ(602)と、
− 前記アプリケーションデータを使用して前記制御装置(110)の少なくとも1つのパラメータを調整するための較正情報を生成するステップ(604)と、
− 前記制御装置(110)を較正するために、前記通信インターフェース(108)に前記較正情報を出力するステップ(606)と
を含む方法(600)。
【請求項11】
請求項10に記載の方法(600)を実行および/または駆動制御するために構成されたユニット(700、706)を有する評価装置(106)。
【請求項12】
請求項1から7のいずれか一項に記載の方法(500)または請求項10に記載の方法(600)を実行および/または駆動制御するために構成されたコンピュータプログラム。
【請求項13】
請求項12に記載のコンピュータプログラムが保存されている機械可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、独立請求項の上位概念に記載された方法または装置に基づいている。本発明の対象はコンピュータプログラムでもある。
【背景技術】
【0002】
自動車の制御装置には、基本的に、例えばフラッシュメモリやRAMメモリなどの周辺部品を内蔵した従来のマイクロコントローラが使用されている。そのような構成部材は通常、Memory Management Unitまたは略してMMUとも呼ばれるメモリ管理ユニットを備えたメモリ仮想化機構を持たない。パラメータの測定と調整とは、例えばXCPプロトコル(Universal Measurement and Calibration Protocol)を介して可能である。この時、任意のメモリセルを読み出して、測定用コンピュータに表示することができる。メモリ管理ユニットがないため、そのような制御装置は通常、Linux(登録商標、以下同じ。)やQNXなどの新型オペレーティングシステムでの使用には適していない。
【0003】
インフォテインメント制御装置には、既に今日でも高速演算ユニット、外部メモリおよびメモリ管理ユニットを有する新型マイクロプロセッサが使用されている。ここで、メモリ仮想化機能を利用したオペレーティングシステムが使用されることがある。この時ほとんどの場合、システムのパラメータ化を制限する単純なロギング機構が使用されている。
【0004】
運転者支援システムにおいて、新型オペレーティングシステムとマイクロプロセッサは重要な役割を果たす。これらは、包括的な測定および較正機能を要する。
【発明の概要】
【課題を解決するための手段】
【0005】
このような背景から、ここに提示されたアプローチは、車両の制御装置で実行可能な少なくとも1つのアプリケーションのアプリケーションデータ提供方法、この方法を使用する制御装置、制御装置の較正方法、この方法を使用する評価装置、および最後に、主請求項にかかる対応したコンピュータプログラムを提示する。従属請求項で実施される手段は、独立請求項に記載された装置の展開形態および改善形態を可能にする。
【0006】
ここで提示するアプローチは、マイクロプロセッサにおいて、例えば運転者支援システムの制御装置に使用されるように、PMD(PMD=Process Measurement Daemon)または仮想メモリ内で実行可能なその他の通信アプリケーションを使用して、制御装置外部の計測用コンピュータと通信できるという見識に基づく。これにより、仮想メモリ管理部の実際のメモリマッピングからは独立して、マイクロプロセッサの異なって割り当てられた記憶領域から測定データや較正データを容易に読み出すことができる。
【0007】
とりわけ、ここで提示するアプローチは、新型オペレーティングシステムおよびメモリ仮想化機能を備えたマイクロプロセッサ上で、XCP(expendable current probe)を備えた測定および較正インターフェースをどのように使用できるかを説明している。この方法は、自律走行などの運転者支援制御装置には不可欠である。特に、ここで提示されたアプローチは、例えば、POSIX互換オペレーティングシステム(Portable Operating System Interface)でのXCP測定インターフェースの実装を可能にする。
【0008】
これは、運転者支援制御装置において、対応するPCツールを含む既に確立された測定プロトコルをさらに使用できるという利点を有する。このように、メモリ仮想化機能を備えた新しいマイクロプロセッサに基づくシステムは、確立された測定ツールを用いて引き続き分析および較正することができる。したがって、制御装置の技術変化が広範囲に及んでいることを鑑みると、計測技術分野での適合の負担を最小限に減らすことができる。
【0009】
車両の制御装置で実行可能な少なくとも1つのアプリケーションのアプリケーションデータ提供方法が提示され、制御装置は、仮想メモリ管理部を有するオペレーティングシステムを実行するためのコンポーネントを含み、この方法は、以下の、
− 第1の仮想メモリのアプリケーションアドレス空間を読み出すステップであって、アプリケーションアドレス空間がアプリケーションのプロセスに対応付けられ、アプリケーションデータによって占有されている制御装置の物理メモリの領域をマッピングするステップと、
− 通信インターフェースを介してアプリケーションデータを提供するために、さらなる仮想メモリのアプリケーションアドレス空間を、外部評価装置の通信インターフェースを介したデータ交換のための通信アプリケーションのプロセスに対応付けられている、仮想アドレス空間に挿入するステップと
を含む。
【0010】
アプリケーションデータは、例えば、測定データや較正データであってもよい。アプリケーションデータは、アプリケーションのプロセスによって使用および/または作成されたものであってもよい。制御装置は、例えばエンジン制御装置、または運転者支援機能を制御する装置と理解できる。アプリケーションは、コンピュータプログラムまたはソフトウェアと理解できる。例えば、アプリケーションは、スレーブとして動作するプログラムのインスタンスと理解できる。特に、アプリケーションは、仮想プロセス領域内で実行可能である。コンポーネントは、例えば、マイクロプロセッサもしくはマイクロコントローラ、または揮発性もしくは不揮発性メモリであってよい。オペレーティングシステムは、特に、POSIX準拠のオペレーティングシステム、特に、例えばLinuxやQNXなどのリアルタイムオペレーティングシステムであってよい。仮想メモリ管理部は、アプリケーションによって生成されたメモリアドレスが、メモリバスに直接アクセスするのではなく、メモリ管理ユニットにアクセスする仮想アドレス空間を形成するメモリ管理部の一種であると理解できる。仮想メモリ管理部は、仮想アドレスを実際に存在する物理メモリのアドレスにマッピングする。この意味で、仮想アドレス空間は、オペレーティングシステムがプロセスに割り当てる物理メモリから独立したアドレス空間であると理解できる。したがって、アプリケーションアドレス空間は、オペレーティングシステムによってアプリケーションのプロセスに割り当てられた仮想アドレス空間であり、他方で、物理メモリの特定のアドレス空間を参照するものと理解できる。アプリケーションのアプリケーションアドレス空間および/または通信アプリケーションの仮想アドレス空間は、物理メモリのメモリ部を参照する指数の形態でのデータを含むことができる。
【0011】
物理メモリは、フラッシュメモリやRAMメモリなどの形態の揮発性メモリや不揮発性メモリであると理解できる。物理メモリは、例えば、制御装置のマイクロプロセッサまたはマイクロコントローラに組み込まれていてもよいし、外部メモリとして実現されていてもよい。通信アプリケーションは、特に、コード分析のためのプログラミングツール、例えば、プロセス測定デーモン、いわゆるPMD、または類似のものであると理解できる。通信インターフェースは、例えば、XCPプロトコルまたはその他の適切なネットワークプロトコルを介して、測定および較正データを交換するための測定および較正インターフェースであると理解できる。通信インターフェースは、ハードウェア側では、無線インターフェースまたは有線インターフェース、例えばイーサネット(登録商標、以下同じ。)インターフェースとして構成することができる。制御装置外部の評価装置は、例えば、ラップトップまたはPCの形態で制御装置に結合可能な測定および較正コンピュータであると理解できる。通信インターフェースは、トランスポート層とは分かれたプロトコル層を有することができるため、例えば、CANバスに基づくトランスポート層を使用できる。
【0012】
一実施形態によれば、提供するステップにおいて、通信インターフェースとしてのXCPインターフェースを介してアプリケーションデータを提供することができる。XCPインターフェースは、Universal Measurement and Calibration Protocolとも呼ばれる、制御装置較正のための標準化された測定および較正プロトコルを介してデータ交換を行うためのインターフェースであると理解できる。これにより、方法の普遍的な適用性が保証される。
【0013】
通信アプリケーションのプロセスは、メモリ管理部のハードウェアユニットを介さずに、読み出すステップと挿入するステップとを実行するように構成できる。したがって、制御装置はいわゆるMMU(Memory Management Unit)を使用せずに実施することができる。
【0014】
その他の実施形態によれば、読み出すステップにおいて、アプリケーションデータの少なくとも1つの物理アドレスおよび/または仮想アドレスをアプリケーションアドレス空間として読み出すことができる。物理アドレスは、物理メモリの占有領域の位置であると理解できる。仮想アドレスは、物理アドレスを参照する仮想メモリの領域であると理解できる。本実施形態では、アプリケーションアドレス空間の効率的かつ確実な決定が保証される。
【0015】
さらに、挿入するステップにおいて、制御装置のPOSIXに基づくオペレーティングシステムを使用して、アプリケーションアドレス空間を仮想アドレス空間に挿入することができる。POSIXに基づくオペレーティングシステムは、大部分がPOSIXに準拠しているか、互換性の強化によってPOSIXに準拠したオペレーティングシステムであると理解できる。この実施形態により、高効率なメモリ管理を実現することができる。
【0016】
さらなる実施形態によれば、アプリケーションに対応付けられたプロセスの所定のイベントに応答して、アプリケーションアドレス空間を読み出すことができる。例えば、読み出すステップは、アプリケーションに対応付けられたプロセスの開始または終了に応答して実行できる。このようにして、例えば常に最新のデータを、通信インターフェースを介して読み出すことができる。
【0017】
読み出すステップにおいて、制御装置上で実行可能な第2のアプリケーションのプロセスに対応付けられており、第2のアプリケーションの第2のアプリケーションデータが占有する物理メモリの領域を表す第2の仮想メモリの第2の仮想アプリケーションアドレス空間を読み出すことができる。したがって、通信インターフェースを介して第2のアプリケーションデータを提供するために、挿入するステップにおいて、第2のアプリケーションアドレス空間を仮想アドレス空間に挿入することができる。第2のアプリケーションデータは、第2のアプリケーションプロセスによって使用および/または作成することができる。通信アプリケーションのプロセスによって複数のアプリケーションの複数の仮想メモリにアクセスできることで、通信インターフェースを介して制御装置の複数の異なるアプリケーションのデータを共通で読み込んで較正することができる。
【0018】
ここで提示するアプローチはまた、ここで提示する方法の変形例のステップを適切な装置で実行、駆動制御、または実現するように構成された制御装置を生成する。また、制御装置の形態による本発明のこの実施形態の変形例は、本発明の根拠となる課題を迅速かつ効率的に解決することができる。
【0019】
このために、制御装置は、信号またはデータを処理するための少なくとも1つの演算装置、信号またはデータを保存するための少なくとも1つの記憶ユニット、センサからのセンサ信号を読み込むか、アクチュエータに制御信号を出力するセンサまたはアクチュエータへの少なくとも1つのインターフェース、および/または通信プロトコルに埋め込まれたデータを読み込むか、出力するための少なくとも1つの通信インターフェースを有することができる。演算ユニットは、例えば、シグナルプロセッサ、マイクロコントローラなどであってもよく、記憶ユニットは、フラッシュメモリ、EPROM(erasable,programmable read−only memory)、または磁気記憶ユニットであってよい。通信インターフェースは、無線および/または有線でデータを読み取るかまたは出力するように構成されていてもよく、有線によるデータを読み取るか、または出力することができる通信インターフェースは、例えば、電気的または光学的に、対応するデータ伝送ラインからこのデータを読み取るか、または対応するデータ伝送ラインに出力することができる。
【0020】
制御装置は、ここでは、センサ信号を処理し、それに応じて制御信号および/またはデータ信号を出力する電気装置であると理解できる。制御装置は、ハードウェアおよび/またはソフトウェアベースによって構成できるインターフェースを有していてもよい。ハードウェアによる構成の場合、インターフェースは、例えば、制御装置の各種機能を含む、いわゆるシステムASIC(Application Specific Integrated Circuit)の一部とすることができる。しかし、インターフェースがそれ自身の集積回路であるか、または少なくとも部分的にディスクリート構成要素からなることも可能である。ソフトウェアによる構成の場合、インターフェースは、例えば、他のソフトウェアモジュールと並んでマイクロコントローラ上に存在するソフトウェアモジュールであり得る。
【0021】
有利な形態では、制御装置は車両制御を行う。このために、制御装置は、加速度センサ信号、圧力センサ信号、操舵角センサ信号、または環境センサ信号のようなセンサ信号にアクセスすることができる。駆動制御は、制動アクチュエータや操舵アクチュエータなどのアクチュエータや、車両のエンジン制御装置を介して行われる。
【0022】
一実施形態によれば、制御装置は、少なくともマイクロプロセッサ、物理メモリ、アプリケーションに対応付けられた第1の仮想メモリ、および通信アプリケーションに対応付けられた第2の仮想メモリをユニットとして有することができる。これにより、比較的安価な製造コストと小さなスペースで、高い演算能力を有する制御装置を実現できる。
【0023】
また、ここで提示されたアプローチは、上記の一実施形態にかかる方法で提供されるアプリケーションデータを使用した制御装置の較正方法を生成し、この方法は、以下の、
− 通信アプリケーションを使用して通信インターフェースを介してアプリケーションデータを読み取るステップと、
− アプリケーションデータを使用して制御装置の少なくとも1つのパラメータを調整するための較正情報を生成するステップと、
− 制御装置を較正するために、通信インターフェースに較正情報を出力するステップと
を含む。
【0024】
較正情報は、例えば、A2Lファイルのような制御装置内の値の記述ファイル、または測定または調整動作を実行するのに適した他の情報であると理解できる。
【0025】
上述した方法は、例えば、ソフトウェアまたはハードウェアで、またはソフトウェアとハードウェアとの混合形態で、例えば制御装置に実装することができる。
【0026】
ここで提示されたアプローチはまた、上記の実施形態にかかる方法を実行および/または駆動制御するために構成されたユニットを有する評価装置を作成する。評価装置は、制御装置または車両外部のコンピュータであると理解できる。
【0027】
有利なのは、コンピュータプログラム製品またはプログラムコードを有するコンピュータプログラムであって、機械可読媒体または半導体メモリ、ハードディスクメモリまたは光メモリなどの記憶媒体に保存でき、特に、プログラム製品またはプログラムがコンピュータまたは装置上で実行される場合に、上記のいずれかの実施形態に記載の方法のステップを実行、実現および/または駆動制御するために使用されるものである。
【0028】
本発明の実施例を図面に示し、以下の説明で詳述する。
【図面の簡単な説明】
【0029】
【図1】マルチXCPスレーブのトポロジの概略図である。
【図2】図1の制御装置の概略図である。
【図3】実施例にかかる制御装置におけるメモリの構造を示す概略図である。
【図4】図2のマイクロプロセッサの概略図である。
【図5】実施例にかかるアプリケーションデータ提供方法のフローチャートである。
【図6】実施例にかかる制御装置の較正方法のフローチャートである。
【図7】実施例にかかる評価装置の概略図である。
【発明を実施するための形態】
【0030】
本発明の好ましい実施例の以下の説明では、異なる図で表され、同様の効果を有する要素には、同一または類似の参照符号が使用されており、これらの要素の繰り返しの説明は省略する。
【0031】
図1は、マルチXCPスレーブの2つのトポロジの概略図である。比較しやすいようにトポロジは上下に表示され、破線で区切られている。
【0032】
例えば、上側のトポロジは、第1のXCPスレーブを表す第1の制御装置100と、第2のXCPスレーブを表す第2の制御装置102と、第3のXCPスレーブを表す第3の制御装置104とを含む。制御装置外部の評価装置106、ここでは例えば測定用PCは、測定および較正目的のために、3つの制御装置100、102、104のそれぞれに通信インターフェース108としてのXCPインターフェースを介して結合されている。完全な制御装置100、102、104は、それぞれXCPスレーブとみなされる。ここで、評価装置106は、複数のスレーブと、例えば車両挙動制御装置およびエンジン制御装置と、例えば測定データおよび/または較正データを交換するために同時に通信することができる。
【0033】
下側のトポロジは、ここで提示されたアプローチの実施例にかかる制御装置110を示す。ここで提示されたアプローチによれば、制御装置110内のアプリケーションの各インスタンスがXCPスレーブとみなされる。例えば制御装置110で実行可能なインスタンスとして、第1のアプリケーション112、第2のアプリケーション114、第3のアプリケーション116、および通信アプリケーション118が示されている。通信アプリケーション118は、外部通信インターフェース108を介して評価装置106と通信するため、すなわち、それぞれの制御装置110にデータを書き込むため、または制御装置110からデータを読み出すために構成されている。
【0034】
下側のトポロジに示された制御装置110、例えば仮想メモリ管理部を有するPOSIX制御装置は、上部トポロジに示された制御装置100、102、104と同様に、通信インターフェース108を介して評価装置106に結合されている。制御装置110において、各種アプリケーション112、114、116、118は、オペレーティングシステムの対応する仮想記憶領域で実行可能である。ここで、第1のアプリケーション112は第1のXCPスレーブを表し、第2のアプリケーション114は第2のXCPスレーブを表し、第3のアプリケーション116は第3のXCPスレーブを表す。さらに、通信アプリケーション118は制御装置110上で、通信インターフェース108を介して例えば測定データや較正データを交換するために実行可能である。本実施例によれば、通信アプリケーション118は、評価装置106を用いた外部コード解析のためのプロセス測定デーモン、略してPMDである。
【0035】
実施例によれば、制御装置110は、アプリケーション112のアプリケーションデータ、例えば測定データや較正データのアプリケーションアドレス空間をオペレーティングシステムによって読み出すように構成されている。ここで、アプリケーションアドレス空間は、アプリケーションデータが占有する制御装置110の物理記憶領域をマッピングする。通信インターフェース108を介してアプリケーションデータにアクセス可能な状態にするために、制御装置110は、アプリケーションアドレス空間を通信アプリケーション118の仮想プロセス領域に挿入する。したがって、通信アプリケーション118の仮想メモリ内のアプリケーションデータは、制御装置110の実際のメモリマッピングから独立して、評価装置106によって通信インターフェース108を介して参照され、取得可能である。
【0036】
その他の実施例によれば、制御装置110は、アプリケーション112のアプリケーションアドレス空間に加えて、2つのアプリケーション114、116のそれぞれのアプリケーションデータのさらなるアプリケーションアドレス空間を読み出して、通信アプリケーション118の仮想アドレス空間に挿入するように構成されているため、2つのアプリケーション114、116のアプリケーションデータは、通信アプリケーション118の仮想アドレス空間を介してアクセスすることも可能である。
【0037】
一実施例によれば、制御装置110は、メモリ管理のためのハードウェアユニットを有していない。その代わりに、通信アプリケーション118は、物理メモリに直接アクセスするように構成されている。また、通信アプリケーション118は、アプリケーション112、114、116の仮想メモリを直接読み取るか、アプリケーション112、114、116の仮想メモリに含まれるアプリケーションアドレス空間を受信するように構成されている。
【0038】
一実施例によれば、制御装置110は車両内に配置され、評価装置106も同様に車両内または車両外に配置されている。例えば、評価装置106は、通信インターフェース108を介して一時的に、例えば車両の作業場滞在中にのみ、制御装置110に結合される。
【0039】
図2は、実施例にかかる図1の制御装置110の概略図である。様々なアプリケーション112、114、118のプロセスを管理するPOSIXリアルタイムオペレーティングシステム200、および演算ユニットとしてのマイクロプロセッサ202に基づくソフトウェアアーキテクチャが示されている。
【0040】
この実施例によれば、制御装置110は、制御装置110の不揮発性メモリにバイナリ形式で格納されているELFファイル(ELF=Executable and Linking Format)の形式の複数の互いから独立したプログラムまたはアプリケーション112、114を含む。例えば、第1のアプリケーション112はELFファイル「A.elf」に、第2のアプリケーション114はELFファイル「B.elf」に、第XのアプリケーションはELFファイル「X.elf」に基づく。
【0041】
アプリケーション112、114、118の起動時に、オペレーティングシステムローダは、必要なリソースが物理的に割り当てられるようにする。ここで、物理メモリページ、例えばa4KBが留保され、図3を参照して以下に説明するように、それぞれのアプリケーション112、114、118のプロセスの、アプリケーションアドレス空間とも呼ばれるそれぞれの仮想アドレス空間の中で、場合によって他のアドレスに挿入される。
【0042】
図3は、図1および図2を用いて上述した制御装置など、実施例にかかる制御装置110におけるメモリ構造の概略図である。図示されているのは、制御装置110の物理メモリ300であり、一例として、第1のアプリケーションの仮想プロセス領域を表す第1の仮想メモリ302、第2のアプリケーションの仮想プロセス領域を表す第2の仮想メモリ304、および通信アプリケーション、ここではプロセス測定デーモンに対応付けられたさらなる仮想メモリ306が示されている。第1の仮想メモリ302は一例としてアプリケーションまたはプロセスA.elfに、第2の仮想メモリ304はアプリケーションまたはプロセスB.elfに対応付けられている。
【0043】
4つのメモリ300、302、304、306は、一義的なアドレス、例えば0x...0000から0xF...FFFFまでの16進数のアドレスを有する同じサイズの特定の記憶領域を表す、複数の行を有するメモリページテーブルとしてそれぞれ模式的に表されている。それぞれのアプリケーションデータが占有する記憶領域には「.data」という末尾が付けられている。その他のアプリケーション関連データは、「.text」という末尾が付けられている。
【0044】
第1の仮想メモリ302には、第1のアプリケーションの.textファイルと.dataファイルが挿入されている。同様に、第2の仮想メモリ304には、第2のアプリケーションの.textファイルおよび.dataファイルが挿入されている。第1のアプリケーションと第2のアプリケーションの両方の.dataファイル、すなわちそれぞれのアプリケーションデータは、さらなる仮想メモリ306に挿入され、通信インターフェースを介してそこから取得可能である。
【0045】
第1の仮想メモリ302に含まれるデータは、第1のアプリケーションのプロセスのアプリケーションアドレス空間とみなすことができる。第2の仮想メモリ304に含まれるデータは、第2のアプリケーションのプロセスのアプリケーションアドレス空間とみなすことができる。さらなる仮想メモリ306に含まれるデータは、さらなる仮想メモリ306の仮想アドレス空間と捉えることができる。
【0046】
アプリケーションデータは、測定されるプロセス、ここでは例えば第1および第2のアプリケーションのプロセスA.elfおよびB.elfが、プロセス間通信を介した起動時に、正確にどの記憶領域がそれぞれのアプリケーションデータを含むかを通信アプリケーションに通知することによって提供される。特に、対応するデータセクションの物理アドレスおよび仮想アドレスに関する情報が伝達される。通信アプリケーションは、測定されるアプリケーションの物理記憶領域を、その仮想プロセス領域、ここではさらなる仮想メモリ306に挿入する。したがって、さらなる仮想メモリ306のアドレス空間は、物理メモリ300に関連する第1および第2のアプリケーションの物理記憶領域をマッピングすることができる。続いて、制御装置の外部に配置された装置で実行可能な外部測定プログラムは、通信アプリケーションと通信し、例えばイーサネットを介してアプリケーションデータを照会することができる。この時外部測定プログラムは、制御装置110で実際に行われているメモリマッピングについての知識を必要としないため、マイクロコントローラ世界で公知な全ての計測技術を変更することなく使用し続けることができる。
【0047】
物理メモリ300と仮想メモリ302、304、306との間のマッピングは、複数の接続線によって示されている。ここで、参照符号308で示された接続線は、MMUによる通常のプログラムマッピングを表し、参照符号310で示された接続線は、測定および較正マッピングを表す。
【0048】
図4は、実施例にかかる図2のマイクロプロセッサ202の概略図を示す。本実施例によれば、マイクロプロセッサ202は、アプリケーションアドレス空間を読み出すための読み出しユニット400と、アプリケーションアドレス空間を通信アプリケーションの対応する仮想メモリに挿入するための挿入ユニット402と、を含む。読み出しユニット400および挿入ユニット402は、ソフトウェアにおいて、制御装置の通信アプリケーションおよび/またはアプリケーションアドレス空間を使用したアプリケーションの一部として実現できる。
【0049】
図5は、実施例にかかるアプリケーションデータ提供方法500のフローチャートである。方法500は、例えば、図1〜図4を参照して上述したように、制御装置によって実行することができる。ここで、第1のステップ502では、アプリケーションデータが占有する制御装置の物理記憶領域を表すアプリケーションアドレス空間が読み出される。さらなるステップ504では、アプリケーションアドレス空間が通信アプリケーションの仮想メモリに挿入される。したがって、通信アプリケーションの仮想メモリを介してアプリケーションデータを外部から取得可能である。
【0050】
図6は、実施例にかかる制御装置の較正方法600のフローチャートである。方法600は、例えば、図1を参照して上述したように、評価装置によって実行することができる。ここで、ステップ602では、通信インターフェースを介して通信アプリケーションに応答することにより、通信アプリケーションの仮想メモリ内で参照されているアプリケーションデータが評価装置に読み込まれる。さらなるステップ604では、制御装置の内部パラメータを調整するためのアプリケーションデータを用いて、較正情報、例えばA2L記述ファイルが生成される。ステップ606では、制御装置内の関連パラメータを適切な方法で調整するために、較正情報またはそこから派生した情報を通信インターフェースに出力する。
【0051】
図7は、実施例にかかる評価装置106の概略図である。評価装置106は、制御装置によって提供されたアプリケーションデータを表す少なくとも1つの第1のデータパケット702を用いて、制御装置を較正するための較正情報を表す少なくとも1つの第2のデータパケット704を生成するように構成された生成ユニット700を含む。出力ユニット706は、第2のデータパケット704またはそれに基づくデータパケットを通信インターフェースに出力するように構成されている。
【0052】
実施例が、第1の特徴と第2の特徴との間の「および/または」の接合を含む場合、その実施例は1つの実施形態にかかる第1の特徴と第2の特徴との両方を有し、かつその他の実施形態にかかる第1の特徴のみまたは第2の特徴のみのいずれかを有するように読み取ることができる。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【国際調査報告】