説明

データ処理装置

【課題】リセット状態を解除されたCPUが周期データの先頭位置を検出することなく、周期データの適切な位置からデータを処理できるデータ処理装置を提供する。
【解決手段】データ受信回路は、CPUがリセット状態の場合(S412:Yes)、データ計測装置から受信したデータをCPUに出力せず、リセット発生フラグをセットする(S414)。CPUはリセット状態ではないが(S412:No)、リセット発生フラグがセットされている場合(S416:Yes)、CPUのリセット状態は解除されているが周期の最後までデータを受信していないことを表しているので、データ受信回路はCPUにデータを出力しない。受信データ数が1周期分のデータ数以上の場合(S420:Yes)、周期の最後のデータを受信したことを表しているので、CPUがリセット状態ではない場合(S422:No)、データ受信回路はS402でリセット発生フラグをクリアする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データ計測装置から周期的に送信されるデータを処理するデータ処理装置に関する。
【背景技術】
【0002】
従来のデータ受信装置として、例えば省電力モードの状態でデータを受信するとデータを処理する処理手段および主記憶手段に対する通電がオフ状態からオン状態になり、主記憶手段が使用可能状態になるまでの間に受信したデータを副記憶手段に記憶しておき、主記憶手段が使用可能になると、副記憶手段に記憶されているデータを主記憶手段に転送するものが知られている(例えば、特許文献1参照。)。
【0003】
このように、データを受信することにより処理手段および主記憶手段に対する通電のオフ状態が解除されるデータ受信装置では、主記憶手段が使用可能になるまでの間に受信したデータを副記憶手段に記憶する必要はあるが、主記憶手段が使用可能になるまでの間に副記憶手段に記憶したデータの先頭データから処理手段は処理をすればよいので、処理手段がデータ処理を開始するデータの先頭位置が明確である。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2001−257735号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1のようなデータ受信装置に対し、例えばレーダ等により物体をスキャンするデータ計測装置から周期的に送信されるデータを受信して処理手段であるCPUで処理するデータ処理装置において、CPUがリセットされることがある。
【0006】
CPUがリセット状態の間もデータ計測装置からは周期的にデータが送信されるので、リセット状態が解除されたときに受信しているデータからCPUが処理を開始すると、周期の途中のデータから処理を開始することがある。このように、周期的に送信されるデータに対し周期の途中のデータから処理を開始し、周期のずれたデータを処理し続けると、データを正常に処理できない。
【0007】
また、周期データの先頭から処理を開始するために、リセット状態が解除されたCPUが周期データに対して先頭位置の検出処理を行うと、CPUの負荷が増加するという問題がある。
【0008】
本発明は、上記問題を解決するためになされたものであり、リセット状態を解除されたCPUが周期データの先頭位置を検出することなく、周期データの適切な位置からデータを処理できるデータ処理装置を提供することを目的とする。
【課題を解決するための手段】
【0009】
請求項1から4に記載の発明によると、データ受信手段は、データ計測装置から周期的に送信されるデータを受信し、データ出力制御手段は、CPUがリセット状態であるとリセット状態判定手段が判定している間はデータ計測装置からデータ受信手段が受信した受信データをCPUに出力せず、CPUのリセット状態が解除されると、先頭検出手段が検出する先頭位置に基づいて受信データをCPUに出力する。
【0010】
このように、CPUのリセット状態が解除されたときに、データ受信手段が周期の途中のデータを受信している場合にも、先頭検出手段が周期の先頭位置を検出することにより、データ出力制御手段は、リセット状態が解除されたCPUに対し、周期の先頭位置に基づいて受信データを出力することができる。
【0011】
その結果、リセット状態が解除されたCPUは受信データの先頭位置を検出する必要ないので、処理負荷が増加しない。そして、CPUは、周期の適切な位置から受信データを処理できる。
【0012】
請求項2に記載の発明によると、先頭検出手段は、受信データの1周期のデータ数に基づいて受信データの1周期の先頭位置を検出する。
これにより、受信データの先頭位置に先頭位置を識別するための識別データが設定されていない場合にも、1周期のデータ数に基づいて受信データの先頭位置を検出できる。
【0013】
請求項3に記載の発明によると、受信データの各周期の先頭位置には先頭位置を識別するための識別データが設定されており、先頭検出手段は、識別データにより1周期の先頭位置を検出する。
【0014】
このように、識別データを識別することにより、先頭検出手段は受信データの各周期の先頭位置を容易に検出できる。
請求項4に記載の発明によると、リセット状態判定手段は、リセット状態ではないCPUが設定するリセット状態信号に基づいて、CPUがリセット状態であるか否かを判定する。
【0015】
このように、リセット状態ではないCPU自体が設定するリセット状態信号に基づいて、CPUがリセット状態であるか否かを判定するので、CPUがリセット状態から解除されデータ処理を実行できる状態であることを確実に判定できる。
【図面の簡単な説明】
【0016】
【図1】(A)は第1実施形態のデータ処理システムを示すブロック図、(B)は第1実施形態のデータ処理装置を示すブロック図。
【図2】データ受信回路およびCPUの受信データ列を示すタイムチャート。
【図3】データ受信回路のデータ出力処理を示す状態遷移図。
【図4】第2実施形態のデータ受信回路のデータ出力処理を示す状態遷移図。
【図5】第2実施形態のデータ処理装置を示すブロック図。
【発明を実施するための形態】
【0017】
以下、本発明の実施の形態を図に基づいて説明する。
[第1実施形態]
図1の(A)に本実施形態のデータ処理システム10を示す。
【0018】
(データ処理システム10)
データ処理システム10は、データ計測装置20とデータ処理装置30とから構成されている。データ計測装置20は、データ計測回路22とデータ送信回路24とから構成され、データ処理装置30はデータ受信回路32とCPU34とから構成されている。データ計測装置20とデータ処理装置30とは、シリアルまたはパラレルのいずれでデータ通信を行ってもよい。
【0019】
(データ計測装置20)
データ計測装置20のデータ計測回路22は、例えばレーダでスキャン範囲の各方向毎に照射スキャンを行い、反射物体から反射される反射波形に基づいて、反射物体との距離および反射強度を計測する。そして、1回のスキャンによりデータ計測回路22が計測するデータをデータ送信回路24が送信する。したがって、データ計測装置20は、1回のスキャンを1周期として受信データを送信する。
【0020】
データ計測装置20は、例えば、16ビット単位を1個のデータとして送信する。1周期毎にデータ計測装置20が送信するデータの個数は決まっている。
データ計測装置20は、データ処理装置30の受信状態に関わらず、周期的にスキャンデータを送信する。第1実施形態では、データ計測装置20が送信するデータはスキャンデータだけであり、各周期の先頭に先頭位置を識別するための識別データは設定されていない。
【0021】
(データ処理装置30)
データ処理装置30のデータ受信回路32は、例えばFPGA(Field Programmable Gate Array)、ASIC(Application Specific Integrated Circuit)等のハードウェアで構成されている。データ受信回路32は、16ビット単位を1個のデータとし、1個のデータをデータ計測装置20から受信するとCPU34にデータを出力する。
【0022】
CPU34は、データ処理プログラムを実行することにより、データ受信回路32が出力するデータに基づき、反射物体の形状を算出したり、データの周期変動から反射物体の移動追跡を行う。
【0023】
CPU34は、リセット信号が入力されるとリセット状態になる。リセット信号は、例えば、データ処理プログラムの開発時にエミュレータから入力されたり、CPU34が定期的に出力するパルス信号が出力されなくなったことを異常検出回路が検出すると、異常検出回路から入力される。
【0024】
図1の(B)に示すCPU34の双方向ポートは、データ処理プログラムの起動時に出力ポートに設定され、出力電位を「ハイ」に設定される。
CPU34の双方向ポートは、CPU34がリセット状態のときには入力ポートに設定される。この場合、双方向ポートの電位は不定である。そこで、双方向ポートにプルダウン抵抗36を接続することにより、CPU34がリセット状態であり入力ポートに設定されている場合には、双方向ポートの電位は「ロー」になる。
【0025】
CPU34がリセット状態のときにCPU34の出力ポートの電位が不定にならず「ハイ」または「ロー」のいずれかのレベルが確定しているのであれば、双方向ポートに代えて出力ポートを使用してもよい。
【0026】
尚、CPU34の双方向ポートをプルダウンする代わりにプルアップしてもよい。この場合、CPU34がリセット状態であり入力ポートに設定される場合には、双方向ポートの電位は「ハイ」になる。そして、CPU34は、データ処理プログラムの起動時に双方向ポートを出力ポートに設定し、出力電位を「ロー」に設定する。
【0027】
データ受信回路32には、CPU34をリセットするリセット信号は入力されないので、CPU34がリセット状態になってもデータ受信処理を継続する。そして、データ受信回路32は、CPU34の双方向ポートのレベルをリセット状態信号とし、リセット状態信号のレベルを検出することにより、CPU34がリセット状態か否かを判定する。データ受信回路32は、電源オン時の1回だけリセットされる。
【0028】
(データ列)
次に、データ受信回路32とCPU34とが受信するデータ列について説明する。
データ受信回路32は、CPU34がリセット状態であるか否かに関わらず、16ビット単位を1個のデータとして、周期毎に所定個数のデータをデータ計測装置20から受信する。そして、CPU34がリセット状態ではない場合、データ計測装置20から受信するデータを1個ずつCPU34に出力する。
【0029】
データ受信回路32は、前述したリセット状態信号に基づいてCPU34がリセット状態であると判定すると、図2に示すように、CPU34がリセット状態の間、データ計測装置20から受信したデータをCPU34に出力しない。
【0030】
データ受信回路32は、リセット状態信号に基づいてCPU34のリセット状態が解除されたと判定しても、データ計測装置20から受信している受信データが周期の途中であれば、CPU34に受信データを出力せず、次の周期の先頭から受信データを出力する。
【0031】
例えば、図2において、周期2のデータを受信している途中でCPU34がリセット状態になると、データ受信回路32は、周期2の途中から受信データをCPU34に出力せず、周期3の途中でCPU34がリセット状態から解除されると、次の周期4の受信データの先頭からCPU34に出力する。これにより、CPU34は、リセット状態が解除されたときに最初にデータ受信回路32が出力するデータを周期4の先頭データとして処理できる。
【0032】
これにより、周期3の途中でリセット状態から解除されたCPU34が周期3の途中の受信データを周期の先頭データとして受信することを防止し、周期のずれた誤った受信データに対してデータ処理を実行することを防止できる。
【0033】
尚、データ受信回路32がデータ計測装置20から計測データを受信してCPU34に出力するデータ出力制御を実行するときに同期するクロックと、データ受信回路32が出力するデータを読み出すときにCPU34が使用するクロックを同じにする方が、簡単な回路構成になる。
【0034】
(データ出力制御)
次に、図3の状態遷移図に基づいて、データ受信回路32が実行するデータ出力制御処理の一例について説明する。図3において「S」はステップを表している。
【0035】
データ処理システム10の電源がオンになり、データ受信回路32がリセットされると(S400:Yes)、データ受信回路32はリセット発生フラグをクリアする(S402)。つまり、リセット発生フラグは初期状態ではクリアされている。
【0036】
データ受信回路32は、受信データ数カウンタをクリアし(S404)、シリアル通信で1個のデータを受信すると(S406:Yes)、1個の受信データをレジスタ等に書き込んでラッチし(S408)、受信データ数カウンタをカウントアップする(S410)。
【0037】
次に、データ受信回路32は、リセット状態信号に基づいてCPU34がリセット状態であるか否かを判定する(S412)。CPU34がリセット状態の場合(S412:Yes)、データ受信回路32は、リセット発生フラグをセットし(S414)、S420に処理を移行する。
【0038】
S414でセットされたリセット発生フラグは、後述するように、データ受信回路32が周期の最後のデータを受信し、そのときにリセット状態信号に基づいてCPU34がリセット状態ではないと判定されるとS402でクリアされる。
【0039】
また、前述したように、リセット発生フラグは初期状態でクリアされる。したがって、リセット発生フラグがクリアされている場合、データ受信回路32が受信したデータをCPU34が正常に処理できる状態であることを表している。
【0040】
リセット状態信号に基づいてCPU34がリセット状態ではないと判定すると(S412:No)、データ受信回路32はリセット発生フラグがセットされているか否かを判定する(S416)。
【0041】
S416においてリセット発生フラグがセットされずクリアされている場合(S416:No)、CPU34がデータを正常に処理できる状態であることを表しているので、データ受信回路32は、データ計測装置20から受信しS408でラッチしておいた1個分のデータをCPU34に出力し(S418)、S420に処理を移行する。
【0042】
リセット状態信号に基づいてCPU34がリセット状態ではないと判定したが(S412:No)、リセット発生フラグがセットされている場合(S416:Yes)、CPU34のリセット状態は解除されているが、データ受信回路32が周期の最後までデータを受信していないことを表している。
【0043】
つまり、データ受信回路32がデータ計測装置20から受信した1個のデータは、CPU34が処理すべきものではないことを表している。したがって、S416においてリセット発生フラグがセットされている場合(S416:Yes)、データ受信回路32は、受信したデータをCPU34に出力せず、S420に処理を移行する。
【0044】
これにより、リセット状態が解除されたCPU34に対し、周期の先頭データ以外のデータを出力することを防止できる。
S420においてデータ受信回路32は、データ計測装置20から受信したデータ数が、1周期分のデータ数以上であるか否かを判定する。受信データ数が1周期分のデータ数より少ない場合(S420:No)、周期の途中のデータを受信したことを表しているので、データ受信回路32は、S406に処理を移行し、次のデータを受信する。
【0045】
受信データ数が1周期分のデータ数以上の場合(S420:Yes)、周期の最後のデータを受信したことを表している。そこで、S422において、データ受信回路32は、リセット状態信号に基づいてCPU34がリセット状態か否かを判定する。
【0046】
CPU34がリセット状態の場合(S422:Yes)、データ受信回路32はS404に処理を移行し、次の周期のデータを受信する。
CPU34がリセット状態ではない場合(S422:No)、データ受信回路32はS402に処理を移行する。これにより、S402でリセット発生フラグがクリアされた状態で、次の周期のデータを受信するので、リセット状態が解除されたCPU34に対し、データ受信回路32は周期の先頭からCPU34にデータを出力できる。
【0047】
以上説明した第1実施形態では、データ受信回路32が、リセット状態信号に基づいてCPU34がリセット状態であるか否かを判定するとともに、周期データの先頭位置を検出するので、CPU34のリセット状態が解除されても、周期の先頭データを受信するまでCPU34にデータを出力しない。これにより、リセット状態を解除されたCPU34が周期途中のデータを入力し、周期のずれた誤ったデータに基づいてデータ処理を実行することを防止できる。
【0048】
また、データ受信回路32が周期データの先頭位置を検出するので、リセット状態を解除されたCPU34が周期データの先頭位置を検出する必要がない。これにより、CPU34の処理負荷を低減できる。
【0049】
また、データの個数を判定して周期の先頭位置を検出するので、周期の先頭位置を識別するために先頭位置に識別データ(ヘッダとも言う。)を設定する必要がない。これにより、データ受信回路32は、データ計測装置20から受信したデータをそのままCPU34に出力できる。
【0050】
これに対し、データ計測装置20が周期の先頭位置にヘッダを設定して送信する場合、ヘッダと実際の測定データとを識別するために、例えば16ビットで1個のデータを構成する場合、ヘッダを0xFFFFとし、測定データを2で割って最上位ビットを常に0にすることが考えられる。そして、データ受信回路32で受信した測定データを2倍してCPU34に出力する。
【0051】
この場合、一度2で割った測定データを2倍すると最下位のビットが常に0になるので、正確な測定データを処理できない。
そこで、第1実施形態のように、周期の先頭位置を識別するためのヘッダを設定せず、データの個数を判定して周期の先頭位置を検出することにより、正確な測定データを処理できる。
【0052】
第1実施形態では、データ計測装置20が本発明のデータ計測装置に相当し、データ処理装置30が本発明のデータ処理装置に相当し、データ受信回路32が本発明のデータ受信手段、先頭検出手段およびデータ出力制御手段に相当し、CPU34が本発明のCPUに相当する。
【0053】
また、図3のS406およびS408の処理は、本発明のデータ受信手段が実行する機能に相当し、S420の処理は本発明の先頭検出手段が実行する機能に相当し、S412およびS422の処理は本発明のリセット状態判定手段が実行する機能に相当し、S412〜S422の処理は本発明のデータ出力制御手段が実行する機能に相当する。
【0054】
[第2実施形態]
第2実施形態では、周期データの先頭位置を識別するために、データ計測装置が周期の先頭位置にヘッダを設定してデータを送信する。
【0055】
例えば、ヘッダを0xFFFFとし、測定データを2で割って最上位ビットを常に0にした測定データを、データ計測装置は送信するものとする。
(データ出力制御)
図4の状態遷移図に基づいて、データ受信回路42が実行するデータ出力制御処理の一例について説明する。図4において「S」はステップを表している。
【0056】
図4において、S430〜S454のうちS450の処理が図3に示すS420の処理と異なり、S452が追加されている以外は、図3と図4とに示す処理は実質的に同じである。
【0057】
図4のS450においてデータ受信回路42(図5参照)は、受信したデータがヘッダであるか否かを判定する。受信データがヘッダではない場合(S450:No)、周期データのうちヘッダ以外のデータを受信したことを表しているので、データ受信回路42は、S436に処理を移行し、次のデータを受信する。
【0058】
受信データ数がヘッダの場合(S450:Yes)、データ受信回路42は、周期データの先頭を通知する先頭通知信号をCPU44に出力する(S452)。これにより、CPU44はリセット状態でなければ、次にデータ受信回路42から出力されるデータから処理を開始する。
【0059】
次に、S454においてデータ受信回路42は、リセット状態信号に基づいてCPU44がリセット状態か否かを判定する。
CPU44がリセット状態の場合(S454:Yes)、データ受信回路42はS434に処理を移行し、周期の次のデータを受信する。
【0060】
CPU44がリセット状態ではない場合(S454:No)、データ受信回路42はS432に処理を移行する。これにより、リセット発生フラグがクリアされた状態で、周期のヘッダに続くデータを受信するので、リセット状態が解除されたCPU44に対し、データ受信回路32は周期のヘッダに続くデータをCPU34に出力できる。
【0061】
尚、図4のS434で受信データ数カウンタをクリアし、S440で受信データ数をカウントアップしているのは、他の処理で1周期分のデータ数を正常に受信しているかを判定するためである。
【0062】
以上説明した第2実施形態では、データ受信回路42が、リセット状態信号に基づいてCPU44がリセット状態であるか否かを判定するとともに、周期データの先頭位置を検出するので、CPU44のリセット状態が解除されても、周期の先頭データを受信するまでCPU34にデータを出力しない。これにより、リセット状態を解除されたCPU44が周期途中のデータを入力し、周期のずれた誤ったデータに基づいてデータ処理を実行することを防止できる。
【0063】
また、データ受信回路42がヘッダにより周期データの先頭位置を検出するので、リセット状態を解除されたCPU44が周期データの先頭位置を検出する必要がない。これにより、CPU44の処理負荷を低減できる。
【0064】
第2実施形態では、データ処理装置40が本発明のデータ処理装置に相当し、データ受信回路42が本発明のデータ受信手段、先頭検出手段およびデータ出力制御手段に相当し、CPU44が本発明のCPUに相当する。
【0065】
また、図5のS436およびS438の処理は、本発明のデータ受信手段が実行する機能に相当し、S450の処理は本発明の先頭検出手段が実行する機能に相当し、S442およびS454の処理は本発明のリセット状態判定手段が実行する機能に相当し、S442〜S454の処理は本発明のデータ出力制御手段が実行する機能に相当する。
【0066】
[他の実施形態]
上記実施形態では、レーダによるスキャンデータを処理するデータ処理装置について説明したが、周期的にデータ計測装置から送信されるデータを処理するのであれば、どのような測定データを処理するデータ処理装置でもよい。
【0067】
上記実施形態で説明した周期データのヘッダに代えて、所定値として、例えば全てのビットを1にしたデータを複数個連続させてヘッダとしてもよい。
このように、本発明は、上記実施形態に限定されるものではなく、その要旨を逸脱しない範囲で種々の実施形態に適用可能である。
【符号の説明】
【0068】
30、40:データ処理装置、32、42:データ受信回路(データ受信手段、先頭検出手段、データ出力制御手段)、34、44:CPU

【特許請求の範囲】
【請求項1】
データ計測装置から周期的に送信されるデータを受信するデータ受信手段と、
前記データ受信手段が前記データ計測装置から受信した受信データを処理するCPUと、
前記受信データの1周期における先頭位置を検出する先頭検出手段と、
前記CPUがリセット状態であるか否かを判定するリセット状態判定手段と、
前記CPUがリセット状態であると前記リセット状態判定手段が判定している間は前記受信データを前記CPUに出力せず、前記CPUのリセット状態が解除されると、前記先頭検出手段が検出する前記先頭位置に基づいて前記受信データを前記CPUに出力するデータ出力制御手段と、
を備えることを特徴とするデータ処理装置。
【請求項2】
前記先頭検出手段は、前記受信データの1周期のデータ数に基づいて前記先頭位置を検出することを特徴とする請求項1に記載のデータ処理装置。
【請求項3】
前記受信データの各周期の前記先頭位置には前記先頭位置を識別するための識別データが設定されており、
前記先頭検出手段は、前記識別データにより前記先頭位置を検出する、
ことを特徴とする請求項1に記載のデータ処理装置。
【請求項4】
前記リセット状態判定手段は、リセット状態ではない前記CPUが設定するリセット状態信号に基づいて、前記CPUがリセット状態であるか否かを判定することを特徴とする請求項1から3のいずれか一項に記載のデータ処理装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2012−32226(P2012−32226A)
【公開日】平成24年2月16日(2012.2.16)
【国際特許分類】
【出願番号】特願2010−170769(P2010−170769)
【出願日】平成22年7月29日(2010.7.29)
【出願人】(000004260)株式会社デンソー (27,639)
【Fターム(参考)】