(57)【要約】【課題】チューニング専用のＲＡＭとその書き換え機能を内蔵したマイコンを用いることなく、安価な構成によりチューニング作業を行えるようにしてコスト低減を図れるようにする。【解決手段】ＣＰＵにより、Ｉ／Ｏの保持データに基づき外部機器が接続されているかどうか判定し（ステップＳ１）、外部機器が接続されいない場合（ステップＳ１のＮＯ）には、ＲＯＭ側にベースポインタを指定し（ステップＳ２）、外部機器が接続されている場合（ステップＳ１のＹＥＳ）には、ＲＯＭからＲＡＭへの定数データの転送が完了しているかどうか判定し(ステップＳ３)、ＮＯであればＲＯＭの定数領域に格納されたデータをＲＡＭに転送し（ステップＳ４）、ＲＯＭ側にベースポインタを指定する。一方、ステップＳ３がＹＥＳの場合にはＲＡＭ側にベースポインタを変更する（ステップＳ６）。そして、ベースポインタからの相対アドレッシングによるＲＯＭおよびＲＡＭのアクセスを行う（ステップＳ７）。【選択図】図３
2014040155.tif 000002
【特許請求の範囲】
【請求項１】
データ処理を行うためのプログラムを実行するプログラム実行手段と、
前記プログラムおよびデータを格納する不揮発性メモリと、
外部機器と接続されているか否かを判断する判断手段と、
前記判断手段により前記外部機器と接続されていると判断されることを条件に、前記外部機器により前記不揮発性メモリに格納されたデータが書き込まれるＲＡＭとを備え、
前記プログラム実行手段は、前記不揮発性メモリに格納されたデータおよび前記ＲＡＭに格納されたデータを選択的に取得することを特徴とする車両用データ処理装置。
【請求項２】
前記プログラム実行手段は、
前記判断手段により前記外部機器と接続されていると判断されたときに、前記ＲＡＭに格納されたデータを取得し、
前記判断手段により前記外部機器と接続されていないと判断されたときに、前記不揮発性メモリに格納されたデータを取得することを特徴とする請求項１に記載の車両用データ処理装置。
【請求項３】
前記プログラム実行手段は、
前記不揮発性メモリおよび前記ＲＡＭのデータ格納領域のアドレスをそれぞれ記憶する複数のレジスタを備え、いずれかの前記レジスタを基底レジスタとして該基底レジスタを示す文字列を含む相対アドレス命令コードの実行により、前記基底レジスタのアドレスをベースポインタとする相対アドレッシングにより前記不揮発性メモリおよび前記ＲＡＭからデータを取得するものであり、
前記不揮発性メモリは、
前記各レジスタのうち１番目の第０レジスタを示す文字列を含む相対アドレス命令コードが抽出され、抽出された前記相対アドレス命令コード中の前記第０レジスタを示す文字列が前記基底レジスタとしての第ｎレジスタを示す文字列に置換されて置換相対アドレス命令コードが形成され、該置換相対アドレス命令コードを含む命令コードの集合として作成されたコンパイラ生成ファイルを前記プログラムとして格納しており、
前記プログラム実行手段は、前記置換相対アドレス命令コードを実行することにより、前記基底レジスタのアドレスを前記ベースポインタとする相対アドレッシングを行うことを特徴とする請求項１または２に記載の車両用データ処理装置。
【請求項４】
データ処理を行うためのプログラムを実行するプログラム実行手段と、外部のメモリに格納されたプログラムおよびデータを格納する不揮発性メモリと、ＲＡＭとを用いてデータ処理を行うデータ処理方法であって、
外部機器が接続されることを条件に、前記不揮発性メモリに格納されたデータを前記ＲＡＭに書き込み、
外部機器が接続されているときには、前記プログラム実行手段により、前記不揮発性メモリに格納されたデータに代えて、前記ＲＡＭに格納されたデータを取得することを特徴とする車両用データ処理方法。
【請求項５】
前記プログラム実行手段は、前記不揮発性メモリおよび前記ＲＡＭのデータ格納領域のアドレスをそれぞれ記憶する複数のレジスタを備え、
前記不揮発性メモリは、前記各レジスタのうち１番目の第０レジスタを示す文字列を含む相対アドレス命令コードが抽出され、抽出された前記相対アドレス命令コード中の前記第０レジスタを示す文字列が基底レジスタとしての第ｎレジスタを示す文字列に置換されて置換相対アドレス命令コードが形成され、該置換相対アドレス命令コードを含む命令コードの集合として作成されたコンパイラ生成ファイルを前記プログラムとして格納しており、
前記プログラム実行手段は、前記置換相対アドレス命令コードを実行することにより、前記基底レジスタのアドレスをベースポインタとする相対アドレッシングにより前記ＲＡＭからデータを取得することを特徴とする請求項４に記載の車両用データ処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、コンピュータにおけるデータ処理技術であって、特にエンジン等の車両開発時の車両制御のために使用されるデータを処理する車両用データ処理装置および車両用データ処理方法に関する。
【背景技術】
【０００２】
例えば、車両（自動車）のエンジン開発時にエンジン制御のために使用されるデータ処理装置では、所望のチューニング特性を得ようとするため、いろいろな制御パラメータを変更しながら結果を確認するチューニング作業が不可欠となる。
【０００３】
制御パラメータのチューニングを行うためには、動作電源の切断およびコンピュータシステムの切断を行い、ＲＯＭを別のデータセットを持つものに取り換えたり、プログラム可能メモリへの新たなプログラムを行う必要がある。このようなチューニングの手間は、エンジン開発期間を長期化させる原因のひとつとなっており、開発期間を短縮して迅速なチューニングを行うためにエンジンを動作させたままの状態で、制御パラメータの変更を行うことが可能な技術が従来から要望されていた。
【０００４】
このような要望に応える技術として、チューニング専用のＲＡＭを内蔵したマイコンを搭載することが考えられており、例えば図５に示すような構成のデータ処理装置が提案されている（特許文献１参照）。
【０００５】
図５に示す装置は、制御プログラムを実行するＣＰＵコア１０１と、制御プログラムや制御パラメータを予め記憶させたＰＲＯＭ（不揮発性メモリ）１０２と、リードライト可能なＲＡＭ１０３と、外部端子１００からデータをＲＡＭ１０３に転送するデータ転送手段１０４と、その転送アドレスを記憶するレジスタ１０５と、動作／非動作の切替えが可能で前記レジスタ１０５の値とＣＰＵコア１０１から出力されるアドレス値を比較する比較器１０６とを備え、データバス１０７とアドレスバス１０８で相互に接続される。データ転送手段１０４は、シリアル転送器１１２とダイレクトメモリアクセス器１１３（以後ＤＭＡと記す）とデコーダ１１４とを備えている。
【０００６】
そして、チューニングは以下のようにして行われる。外部端子１００へＲＡＭへの書き込みを意味するデータ、ＲＡＭアドレス、新パラメータデータが入力されると、これらのデータがシリアル転送器１１２によって読み込まれ、デコーダ１１４により読み込んだデータが制御パラメータ読み込みであると判断され、比較器１０６が非動作状態となり、ＲＡＭアドレスと新パラメータデータがＤＭＡ１１３に渡される。そして、ＤＭＡ１１３により、バス使用権がＣＰＵコア１０１に要求され、許可されると比較器１０６とは無関係にＲＡＭ選択信号１１０が有効になり、ＰＲＯＭ選択信号１１１が無効になり、ＲＡＭ１０３の目的のアドレスに制御パラメータが書き込まれる。
【０００７】
続いて、ＤＭＡ１１３により、ＲＡＭ選択信号１１０とＰＲＯＭ選択信号１１１が元に戻され、バス使用権放棄がＣＰＵコア１０１に伝えられ、シリアル転送器１１２に次のデータを読み込むよう指示され、これを繰り返すことによって、制御パラメータがＲＡＭ１０３に書き込まれる。このとき、ＰＲＯＭ１０２の規定の制御パラメータ領域に相当する所定アドレス範囲のアドレスに対応する新パラメータデータは下位バイト値をそろえたＲＡＭアドレスに書き込まれ、所望の書き込みが終了した時点で、書き込み終了を意味するデータと制御パラメータが置換されるアドレスの上位バイトが外部端子１００に入力され、これがシリアル転送器１１２により読み込まれ、シリアル転送器１１２の読み込みデータがデコーダ１１４により書き込み終了データを示すと判断され、シリアル転送器１１２の読み込みアドレスデータがレジスタ１０５に記憶され、比較器１０６が動作状態となる。
【０００８】
この状態で制御パラメータが格納されるＰＲＯＭ１０２の規定の制御パラメータ領域に相当する所定アドレスをアクセスする場合、ＣＰＵコア１０１により当該アドレスが出力され、このとき比較器１０６は動作状態であるため、アドレスの上位バイトとレジスタ１０５の記憶値が比較され、比較結果が同じ値であるので比較器１０６によりＲＡＭ選択信号１１０がアクティブに、ＰＲＯＭ選択信号１１１がインアクティブとなり、ＲＡＭ１０３が動作状態となり、ＰＲＯＭ１０２の当該所定アドレスの回バイトに相当するＲＡＭ１０３のアドレスに格納されたデータがＲＡＭ１０３からデータバス１０７に出力され、ＣＰＵコア１０１によりＲＡＭ１０４の出力値が読み込まれて使用され、チューニングが行われる。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開平１０−２０９０６号公報（段落００１１〜００１４および図１〜図３参照））
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかし、上記した特許文献１に記載のデータ処理装置では、チューニング時におけるＲＡＭ１０３の書き換え専用機能として、ＲＡＭ１０３のほかデータ転送手段１０４、レジスタ１０５および比較器１０６をマイコンに内蔵している必要があり、このようなチューニング専用のＲＡＭとその書き換え機能を内蔵したマイコンが市場では希少かつ高価であることから、装置のコスト低減を図る上で非常に不利になるという問題点があった。
【００１１】
さらに、自動車のエンジン開発特有の問題として、実車用つまり量産用は、上記したエンジン開発用のデータ処理装置のようなチューニング機能は不要であるが、コスト的に開発用と量産用とで異なるシリーズではなく同じシリーズのマイコンを使用することがあくまでも前提となることから、上記したようなチューニング専用のＲＡＭとその書き換え機能を内蔵したマイコンを用いないことが望ましい。
【００１２】
本発明は、チューニング専用のＲＡＭとその書き換え機能を内蔵したマイコンを用いることなく、安価な構成によりチューニング作業を行えるようにしてコスト低減を図ることを目的とする。
【課題を解決するための手段】
【００１３】
上記した目的を達成するために、本発明の車両用データ処理装置は、データ処理を行うためのプログラムを実行するプログラム実行手段と、前記プログラムおよびデータを格納する不揮発性メモリと、外部機器と接続されているか否かを判断する判断手段と、前記判断手段により前記外部機器と接続されていると判断されることを条件に、前記外部機器により前記不揮発性メモリに格納されたデータが書き込まれるＲＡＭとを備え、前記プログラム実行手段は、前記不揮発性メモリに格納されたデータおよび前記ＲＡＭに格納されたデータを選択的に取得することを特徴としている（請求項１）。
【００１４】
また、本発明の車両用データ処理装置は、前記プログラム実行手段は、前記判断手段により前記外部機器と接続されていると判断されたときに、前記ＲＡＭに格納されたデータを取得し、前記判断手段により前記外部機器と接続されていないと判断されたときに、前記不揮発性メモリに格納されたデータを取得するようにしてもよい（請求項２）。
【００１５】
また、本発明の車両用データ処理装置は、前記プログラム実行手段は、前記不揮発性メモリおよび前記ＲＡＭのデータ格納領域のアドレスをそれぞれ記憶する複数のレジスタを備え、いずれかの前記レジスタを基底レジスタとして該基底レジスタを示す文字列を含む相対アドレス命令コードの実行により、前記基底レジスタのアドレスをベースポインタとする相対アドレッシングにより前記不揮発性メモリおよび前記ＲＡＭからデータを取得するものであり、前記不揮発性メモリは、前記各レジスタのうち１番目の第０レジスタを示す文字列を含む相対アドレス命令コードが抽出され、抽出された前記相対アドレス命令コード中の前記第０レジスタを示す文字列が前記基底レジスタとしての第ｎレジスタを示す文字列に置換されて置換相対アドレス命令コードが形成され、該置換相対アドレス命令コードを含む命令コードの集合として作成されたコンパイラ生成ファイルを前記プログラムとして格納しており、前記プログラム実行手段は、前記置換相対アドレス命令コードを実行することにより、前記基底レジスタのアドレスを前記ベースポインタとする相対アドレッシングを行うようにしてもよい（請求項３）。
【００１６】
また、本発明の車両用データ処理方法として、データ処理を行うためのプログラムを実行するプログラム実行手段と、外部のメモリに格納されたプログラムおよびデータを格納する不揮発性メモリと、ＲＡＭとを用いてデータ処理を行うデータ処理方法であって、外部機器が接続されることを条件に、前記不揮発性メモリに格納されたデータを前記ＲＡＭに書き込み、外部機器が接続されているときには、前記プログラム実行手段により、前記不揮発性メモリに格納されたデータに代えて、前記ＲＡＭに格納されたデータを取得するとよい（請求項４）。
【００１７】
また、本発明の車両用データ処理方法として、前記プログラム実行手段は、前記不揮発性メモリおよび前記ＲＡＭのデータ格納領域のアドレスをそれぞれ記憶する複数のレジスタを備え、前記不揮発性メモリは、前記各レジスタのうち１番目の第０レジスタを示す文字列を含む相対アドレス命令コードが抽出され、抽出された前記相対アドレス命令コード中の前記第０レジスタを示す文字列が基底レジスタとしての第ｎレジスタを示す文字列に置換されて置換相対アドレス命令コードが形成され、該置換相対アドレス命令コードを含む命令コードの集合として作成されたコンパイラ生成ファイルを前記プログラムとして格納しており、前記プログラム実行手段は、前記置換相対アドレス命令コードを実行することにより、前記基底レジスタのアドレスをベースポインタとする相対アドレッシングにより前記ＲＡＭからデータを取得するのが望ましい（請求項５）。
【発明の効果】
【００１８】
請求項１に係る発明によれば、エンジンを動作させたままの状態であっても、外部機器の接続を条件に、外部機器により不揮発性メモリに格納されたデータがＲＡＭに書き込まれ、プログラム実行手段により、不揮発性メモリに格納されたデータおよびＲＡＭに格納されたデータが選択的に取得され、ＲＡＭからのデータを用いてチューニングが行われる。
【００１９】
したがって、従来のようなチューニング専用のＲＡＭとその書き換え機能を内蔵した希少かつ高価なマイコンを用いることなく、外部機器により容易に書き込み可能な通常のＲＡＭを使用するため、安価な構成により、車両のエンジン開発時におけるチューニング作業を行うことが可能になり、しかもエンジン開発用と量産用とで同じマイコンを使用することが可能になり、コスト低減を図ることができる。
【００２０】
また、請求項２に係る発明によれば、判断手段により外部機器と接続されていると判断されたときにはＲＡＭに格納されたデータが取得され、判断手段により外部機器と接続されていないと判断されたときには不揮発性メモリに格納されたデータが取得されるため、ＲＡＭと不揮発性メモリのいずれのデータを取得するか切り換えることができ、外部機器に接した状態でチューニングしてＲＡＭの格納データを検証することができる。しかも、ソフトウェアの構築によりＲＡＭの格納データの検証を実現できる。
【００２１】
また、請求項３に係る発明によれば、不揮発性メモリに格納すべきプログラムとしての命令コードの集合であるコンパイラ生成ファイルを作成する段階において、プログラム実行手段の各レジスタのうち１番目の第０レジスタを示す文字列を含む相対アドレス命令コードが抽出され、抽出された相対アドレス命令コード中の第０レジスタを示す文字列が基底レジスタとしての第ｎレジスタを示す文字列に置換されて置換相対アドレス命令コードが形成され、該置換相対アドレス命令コードを含む命令コードの集合として作成されたコンパイラ生成ファイルが不揮発性メモリに格納される。そのため、プログラム実行手段は、置換相対アドレス命令コードを実行することにより、基底レジスタのアドレスをベースポインタとする相対アドレッシングにより不揮発性メモリおよびＲＡＭからデータを取得することができる。
【００２２】
したがって、相対アドレッシングにより不揮発性メモリおよびＲＡＭからデータを取得するため、開発用のデータ処理と量産用のデータ処理とで同じアクセス方法をとることができ、絶対アドレッシングの場合に、開発用のデータ処理と量産用のデータ処理においてアクセスすべきアドレスが異なることに伴う別々のアクセス命令を準備しておく必要もなく、プログラムの命令を統一することができる。しかも、コンパイラとの組み合わせによって、基底レジスタを第０レジスタにしか固定できないマイクロコンピュータであっても、上記したような相対アドレス命令の文字列の置換によって基底レジスタを変更することが可能になる。
【００２３】
また、請求項４に係る発明によれば、外部機器が接続されることを条件に、不揮発性メモリに格納されたデータがＲＡＭに書き込まれ、外部機器が接続されているときには、プログラム実行手段により、不揮発性メモリに格納されたデータに代えて、ＲＡＭに格納されたデータを取得されるため、請求項１に係る発明と同様、従来のような外部から書き込みできないチューニング専用のＲＡＭを内蔵した希少かつ高価なマイコンを用いずに、外部から書き込み可能な通常のＲＡＭを使用することができ、安価な構成により、車両のエンジン開発時におけるチューニング作業を行うことが可能になり、データ処理装置のコスト低減を図ることができる。
【００２４】
また、請求項５に係る発明によれば、請求項３に係る発明と同等の効果を得ることができる。
【図面の簡単な説明】
【００２５】
【図１】本発明に係るデータ処理装置の第１実施形態のブロック図である。
【図２】図１の一部の動作説明図である。
【図３】図１の動作説明用フローチャートである。
【図４】本発明に係るデータ処理装置の第２実施形態の動作説明図である。
【図５】従来例のブロック図である。
【発明を実施するための形態】
【００２６】
（第１実施形態）
つぎに、本発明をより詳細に説明するため、本発明の第１実施形態について、図１ないし図３を参照して詳述する。
【００２７】
図１に示すように、本実施形態の車両用データ処理装置Ｄｍは、本発明におけるプログラム実行手段としてのＣＰＵ１と、所定のプログラム領域にプログラムコードを格納し所定の定数領域に定数（データ）を格納しアドレス・データバス２を介してＣＰＵ１によりアクセスされるＲＯＭ４と、アドレス・データバス２を介してＣＰＵ１によりアクセスされ、後述する書込手段により外部機器から入力されるデータに書き換えが可能なＲＡＭ５と、外部接続端子７を介して外部機器が接続される外部インターフェイス（以下、外部Ｉ／Ｆという）８と、外部Ｉ／Ｆ８への外部機器の接続の有無に応じた情報をＣＰＵ１からの要求に対して通知可能に保持するレジスタ構成の入出力部（以下、Ｉ／Ｏという）１０と、外部接続端子７に外部機器が接続されているときに、外部機器からの書き換えデータをＲＡＭ５の所定アドレスの領域に書き込むオンチップデバッグ構成の書込手段１２と、ＣＰＵ１からＲＡＭ５へのアクセスと書込手段１２からＲＡＭ５へのアクセスとが競合したときにバス使用権の調停を行うバス調停手段１３とを備えている。
【００２８】
このとき、外部Ｉ／Ｆ８を除く各部は、所定のマイコンにより構成することができる。また、この種のマイコンには、エンジン開発用と量産用とに使用可能なように、容量の異なるＲＡＭ５を搭載したシリーズが準備されており、例えば量産用には２８ＫＢ、開発用には６４ＫＢの容量のＲＡＭ５が搭載された同じシリーズのマイコンを使用するとよい。
【００２９】
このような構成において、ＣＰＵ１は、Ｉ／Ｏ１０の保持データに基づき、外部接続端子７に外部機器が接続されているかどうかを判断する。このＣＰＵ１による判断が本発明における判断手段に相当する。そして、外部機器が接続されていると判断されると、ＣＰＵ１によりＲＯＭ４の定数領域に格納されたデータが、一括あるいは一定量ずつＲＡＭ５に転送されてＲＡＭ５の所定の定数領域に格納される。さらに、外部機器が接続されていない場合には、ＣＰＵ１はＲＯＭ４の定数領域に格納されたデータにアクセスする一方、外部機器が接続されている場合には、ＣＰＵ１は、ＲＡＭ５の定数領域に格納されたデータにアクセスして、以下のようなチューニングを行う。
【００３０】
チューニングがすでに完了した量産用では、図２（ａ）に示すように、ＲＡＭ５をチューニングに使用することがないため、ＲＡＭ５はＣＰＵ１の演算処理動作において必要なデータを一時的に保持するために使用される。そのため、開発用に比べてＲＡＭ５の容量は小さいものでよい。
【００３１】
一方、車両（自動車）のエンジン開発段階では、所望のエンジン特性を得るために制御パラメータの数値を様々に変更して最適な数値の組み合わせを検証するというチューニングを行う必要がある。そのために、図２（ｂ），（ｃ）に示すように、上記したとおり量産用の場合よりも容量の大きいＲＡＭ５を使用する（量産用２８ＫＢに対して開発用６４ＫＢ）。そして、外部接続端子７に外部機器が接続されていないときにはチューニングの必要なしと判断できるため、ＲＡＭ５の数値データが格納されている定数領域は図２（ｂ）に示すように未使用のままとなり、外部接続端子７に外部機器が接続されていないときには、上記したように、ＣＰＵ１によりＲＯＭ４の定数領域の格納データがＲＡＭ５の定数領域に転送されて格納される。
【００３２】
このとき、ＣＰＵ１は、ＲＯＭ４およびＲＡＭ５の定数領域に対するアクセスは、所定のベースポインタからの相対アドレッシングにより行われる。そのため、図２（ｂ）に示す場合には、ＣＰＵ１が制御パラメータの定数のアクセス対象はＲＯＭ４のみであることから、ＲＯＭ４の定数領域側にベースポインタ（ＢＰ）を指定し、そのベースポインタからの相対アドレッシング、つまりベースポインタから所定バイト移動した先のアドレスの定数データを読み込むという相対アドレス命令を実行する。なお、量産用の場合も、図２（ａ）に示すように、上記した同図（ｂ）の場合と同様、ＣＰＵ１が制御パラメータの定数のアクセス対象はＲＯＭ４のみであることから、ＣＰＵ１は、ＲＯＭ４の定数領域側にベースポインタ（ＢＰ）が指定されて相対アドレッシングによるＲＯＭ４のアクセスを行う。
【００３３】
続いて、図２（ｃ）に示す場合には、チューニングのために、ＣＰＵ１はＲＯＭ４に代えてＲＡＭ５を制御パラメータの定数（データ）のアクセス対象としてアクセスするため、ＣＰＵ１は、ＲＡＭ５の定数領域側にベースポインタ（ＢＰ）を変更し、その変更したＲＡＭ５側のベースポインタからの相対アドレッシング、つまり変更したＲＡＭ５側のベースポインタから所定バイト移動した先のアドレスの定数データを読み込むという相対アドレス命令を実行する。このとき、外部接続端子７に接続されている外部機器から入力される書き換えデータが、書込手段１２によりＲＡＭ５の所定アドレスに書き込まれて書き換えが行われ、チューニングのためにＲＡＭ５の格納データが適宜変更される。
【００３４】
このようなＣＰＵ１の動作について、図３のフローチャートを参照して説明すると、エンジン動作中において、ＣＰＵ１により、Ｉ／Ｏ１０の保持データに基づき外部接続端子７に外部機器が接続されているかどうかの判定がなされ（ステップＳ１）、外部機器が接続されておらずにステップＳ１の判定結果がＮＯの場合には、ＲＯＭ４側にベースポインタ（ＢＰ）が指定された後（ステップＳ２）、後述するステップＳ７に移行する。
【００３５】
一方、外部機器が接続されていてステップＳ１の判定結果がＹＥＳであれば、ＲＯＭ４からＲＡＭ５への定数データの転送が完了しているかどうかの判定がなされ(ステップＳ３)、この判定結果がＮＯであれば、ＲＯＭ４の定数領域に格納されたデータが、一括あるいは一定量ずつＲＡＭ５に転送されてＲＡＭ５の所定の定数領域に格納され（ステップＳ４）、その後ステップＳ５に移行し、この段階ではＲＡＭ５への転送が完了していないのでＲＯＭ４側のベースポインタ（ＢＰ）が指定される（ステップＳ５）。
【００３６】
一方、ＲＡＭ５への転送が既に完了していてステップＳ３の判定結果がＹＥＳであれば、ＲＡＭ５側にベースポインタ（ＢＰ）が指定され（ステップＳ６）、ベースポインタの変更が行われる（ステップＳ６）。
【００３７】
そして、上記したステップＳ２、ステップＳ５およびステップＳ６を経た後、ステップＳ７に移行し、ステップＳ２，Ｓ５で指定されたベースポインタ、或いは、ステップＳ６で変更されたベースポインタからの相対アドレッシングによるアクセスが行われ（ステップＳ７）、このとき量産用の場合および開発用であってチューニングの必要がない場合にはＲＯＭ４に対する相対アドレッシングによるアクセスが行われ、開発用であって必要なチューニングを行う場合には、ＲＡＭ５に対する相対アドレッシングによるアクセスが行われ（ステップＳ８）、その後動作は終了する。
【００３８】
したがって、上記した第１実施形態によれば、従来のようなチューニング専用のＲＡＭとその書き換え機能を内蔵した希少かつ高価なマイコンを用いることなく、外部機器により容易に書き込み可能なＲＡＭ５を使用するため、安価な構成により、車両のエンジン開発時におけるチューニング作業を行うことが可能になり、しかもエンジン開発用と量産用とで同じマイコンを使用することが可能になり、コスト低減を図ることができる。
【００３９】
また、ＣＰＵ１により外部機器と接続されていると判断されたときにはＲＡＭ５に格納されたデータが取得され、外部機器と接続されていないと判断されたときにはＲＯＭ４に格納されたデータが取得されるため、ＲＡＭ５とＲＯＭ４のいずれのデータを取得するか切り換えることができ、チューニング時には外部機器に接した状態でＲＡＭ５の格納データを検証することができる。このとき、ソフトウェアの構築によりＲＡＭ５の格納データの検証を実現できる。
【００４０】
（第２実施形態）
次に、本発明の第２実施形態について図４を参照して説明する。なお、第２実施形態におけるデータ処理装置Ｄｍの基本的構成は上記した第１実施形態と同じであるため、以下の説明では図１も参照する。
【００４１】
通常、ＣＰＵ１は、ＲＯＭ４およびＲＡＭ５のデータ格納領域である定数領域のアドレスをそれぞれ記憶するレジスタを複数備えており（例えば、ｒ０レジスタ〜ｒ１５レジスタの合計１６個）、ＣＰＵ１は、いずれかのレジスタを基底レジスタとして該基底レジスタを示す文字列を含んだ相対アドレス命令コードを実行することにより、基底レジスタのアドレスをベースポインタ（ＢＰ）とする相対アドレッシングによるＲＯＭ４およびＲＡＭ５からのデータ（定数）取得を行う。
【００４２】
より具体的には、例えば図４（ａ），（ｂ）に示すように、１番目のｒ０レジスタ（本発明の第０レジスタ）を基底アドレスとすると、ｒ０レジスタを示す文字列と、そのｒ０レジスタから所定バイト（＋αバイト）移動したアドレスのデータを読み込むための移動バイト数を含む相対アドレス命令コードを実行することで、ｒ０レジスタのアドレスをベースポインタとして＋αバイト分先のアドレスの格納データがＣＰＵ１によりＲＯＭ４およびＲＡＭ５から読み込まれることになる。
【００４３】
ところが、車両用データ処理装置Ｄｍに使用可能なマイコンとして、コンパイラとの組み合わせによっては、基底レジスタをｒ０レジスタにしか固定できないいわゆる０固定のマイコンがあり、このようなマイコンを車両用データ処理装置Ｄｍに使用する場合には基底レジスタ、つまりベースポインタを自由に変更することができない。
【００４４】
すなわち、ＣＰＵ１のプログラムとして、例えば“get.rxx.123”という相対アドレス命令コードがＲＯＭ４に格納されているとすると、これは、ＣＰＵ１のｒｘｘレジスタを基底レジスタ（ベースポインタ）としてその基底レジスタ内のアドレスから１２３バイト離れたアドレスのデータを取得せよというものである。そして、これを機械語に翻訳したときに、“abcxx.123”になるとすると、“xx”が基底レジスタを示す文字列であるが、上記した０固定では、この“xx”がｒ０レジスタを示す“00”に固定されてこれ以外に変更することが不可能ということになる。
【００４５】
そこで、本実施形態では、ベースポインタの変更を可能にするために、ＣＰＵ１のｒ０〜ｒ１５レジスタのうち１番目のｒ０レジスタ（第０レジスタ）を示す文字列“00”を含んだ相対アドレス命令コードを抽出し、抽出した相対アドレス命令コード中のｒ０レジスタを示す文字列“00”を、基底レジスタとしての第ｎレジスタを示す文字列“xx”に置換して置換相対アドレス命令コードを形成し、該置換相対アドレス命令コードを含む命令コードの集合として作成したコンパイラ生成ファイルをＣＰＵ１の制御プログラムとしてＲＯＭ４に予め格納しておく。このとき、文字列“xx”が示す第ｎレジスタには、ｒ０〜ｒ１５レジスタのうち通常使用されないレジスタを用いるのが望ましい。
【００４６】
そして、ベースポインタ（ＢＰ）を変更する場合には、ＣＰＵ１により、変更すべき基底レジスタの文字列（例えば、“xx”）を含んだ置換相対アドレス命令コードを実行することにより、文字列“xx”が示す第ｎレジスタを基底レジスタ内のアドレスをベースポインタとする相対アドレッシングにより、ＲＯＭ４およびＲＡＭ５がアクセスされることになる。
【００４７】
したがって、上記した第２実施形態によれば、車両用データ処理装置Ｄｍにいわゆる０固定のマイクロコンピュータを使用する場合であってもベースポインタを変更することができ、ＣＰＵ１は、置換により生成された置換相対アドレス命令コードを実行することにより、変更後の基底レジスタ内のアドレスをベースポインタとする相対アドレッシングによりＲＯＭ４およびＲＡＭ５からデータを取得することが可能になる。
【００４８】
なお、本発明は上記した実施形態に限定されるものではなく、その趣旨を逸脱しない限りにおいて上述したもの以外に種々の変更を行なうことが可能である。
【００４９】
例えば、上記した各実施形態では、不揮発性メモリとしてＲＯＭ４を使用する場合について説明したがＲＯＭ以外にＰＲＯM，ＥＰＲＯＭ，ＥＥＰＲＯＭを使用してもよいのは勿論である。さらに、外部機器からの書き込みデータをＲＡＭ５に書き込む書込手段５は、上記したオンチップデバッグ構成に限定されるものではない。
【００５０】
また、車両用データ処理装置Ｄｍの構成は上記した各実施形態で示したものに限定されるものではない。例えば、Ｉ／Ｏ１０やバス調停手段１３は必ずしも必要ではなく、その他の構成によりこれらＩ／Ｏ１０やバス調停手段１３の代用が可能であればＩ／Ｏ１０やバス調停手段１３を省略した構成であってもよい。
【符号の説明】
【００５１】
１    ＣＰＵ（プログラム実行手段、判断手段）
４    ＲＯＭ（不揮発性メモリ）
５    ＲＡＭ
８    外部Ｉ／Ｆ
【図１】
2014040155.tif 000003
【図２】
2014040155.tif 000004
【図３】
2014040155.tif 000005
【図４】
2014040155.tif 000006
【図５】
2014040155.tif 000007