JP2010113544A - Timer value generation device and timer value generation method - Google Patents
Timer value generation device and timer value generation method Download PDFInfo
- Publication number
- JP2010113544A JP2010113544A JP2008285867A JP2008285867A JP2010113544A JP 2010113544 A JP2010113544 A JP 2010113544A JP 2008285867 A JP2008285867 A JP 2008285867A JP 2008285867 A JP2008285867 A JP 2008285867A JP 2010113544 A JP2010113544 A JP 2010113544A
- Authority
- JP
- Japan
- Prior art keywords
- timer value
- timer
- unit
- value
- generation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
Description
本発明は、2以上のタイマを用いたタイマ値生成装置及びタイマ値生成方法に関する。 The present invention relates to a timer value generating apparatus and a timer value generating method using two or more timers.
近年、車両には、車両に搭載されたエンジンの点火タイミングを制御するエンジン制御装置、ドアの開閉を制御するボデー制御装置、及びオーディオを制御するオーディオ制御装置等といった複数の制御装置(ECU:Electronic Control Unit)が搭載されている。また、これら複数の制御装置は、接続されたネットワークを介して相互に通信を行うことで、それぞれ同期して制御処理を実行してる。ここで、これら複数の制御装置が制御処理又は通信処理の実行により、制御タイミング又は通信タイミング等を精度良く取得するためには、タイマ時刻を表す精度の良いタイマ値を取得する必要がある。 2. Description of the Related Art In recent years, vehicles include a plurality of control devices (ECU: Electronic Control) such as an engine control device that controls ignition timing of an engine mounted on the vehicle, a body control device that controls opening and closing of a door, and an audio control device that controls audio. Control Unit) is installed. The plurality of control devices perform control processing in synchronization with each other by communicating with each other via a connected network. Here, in order for these control devices to acquire control timing or communication timing with high accuracy by executing control processing or communication processing, it is necessary to acquire an accurate timer value representing the timer time.
しかし、タイマ値を提供するタイマの分周比を小さくすると、確かに精度の良いタイマ値を制御装置は得られるが、狭い範囲のタイマ値をしか直接的に取得できなくなる。また、タイマが提供可能なタイマ値の範囲を無制限に拡張することは、コストダウンの要求が厳しい現状にからすると現実的でない。このため、タイマ時刻を表すタイマ値の下位ビットを提供する第1タイマと、上位ビットを提供する第2タイマとを用いて、個々のタイマよりも広い範囲のタイマ値を提供できるタイマが知られるに至った(例えば、特許文献1参照)。 However, if the frequency division ratio of the timer providing the timer value is reduced, the control device can surely obtain a highly accurate timer value, but only a narrow range of timer values can be obtained directly. Further, it is not practical to extend the range of timer values that can be provided by the timer indefinitely from the current situation where the demand for cost reduction is severe. For this reason, there is known a timer that can provide a timer value in a wider range than individual timers by using a first timer that provides a lower bit of a timer value representing a timer time and a second timer that provides an upper bit. (For example, refer to Patent Document 1).
ところで、特許文献1に記載のタイマは、ソフトウェア処理の実行によって、下位ビットを提供する第1タイマの値と、上位ビットを提供する第2タイマの値とを合成してタイマ時刻表すタイマ値を生成している。また、第1タイマは桁溢れを起こした場合に所定の信号を第2タイマに出力し、第2タイマは所定の信号を受けて値を更新している。 By the way, the timer described in Patent Document 1 combines the value of the first timer that provides the lower bit and the value of the second timer that provides the upper bit by executing software processing to obtain a timer value that represents the timer time. Is generated. The first timer outputs a predetermined signal to the second timer when an overflow occurs, and the second timer receives the predetermined signal and updates the value.
このため、上記のタイマは、図6に示すように、第1タイマを読み出した後から第2タイマを読み出すまでに、第1タイマの桁溢れ及び第2タイマの更新があった場合には、桁溢れ前の第1タイマの値と桁溢れ後の第2タイマの値とを合成してしまう。よって、上記のタイマは、特定のタイミングにおいて異常な時刻を表すタイマ値を生成してしまうという問題があった。 For this reason, as shown in FIG. 6, when there is an overflow of the first timer and an update of the second timer from the time when the first timer is read to the time when the second timer is read, The value of the first timer before overflowing and the value of the second timer after overflowing are combined. Therefore, the above timer has a problem that it generates a timer value indicating an abnormal time at a specific timing.
そこで、本発明の目的とするところは、2以上のタイマを用いて生成するタイマ値の異常を検出できるタイマ値生成装置及びタイマ値生成方法を提供することにある。 Accordingly, an object of the present invention is to provide a timer value generation device and a timer value generation method capable of detecting an abnormality in a timer value generated using two or more timers.
本発明に係るタイマ値生成装置は、所定周期で入力される信号を、減算処理又は加算処理のいずれか1つを行うことにより計数する第1タイマ値を有する第1タイマと、計数した数が第1タイマ値の表現範囲を超過した回数を計数する第2タイマ値を有する第2タイマと、第1タイマから読み出した第1タイマ値と第2タイマから読出した第2タイマ値とに基づいて、第1タイマ値の表現範囲よりも広い範囲を計数する第3タイマ値を生成する生成部とを備えるタイマ値生成装置において、第1タイマは、計数した数が第1タイマ値の表現範囲を超える場合に、第1タイマ値を所定値に変更する初期化処理を行い、生成部は、第1タイマから第1タイマ値を読み出した後に、第2タイマから第2タイマ値を読み出すものであり、第1タイマ値及び第2タイマ値を読出した後に再度読出した第1タイマ値と、先に読出した第1タイマ値との差異が、第1タイマの行う減算処理又は加算処理により生じた差異でないと判断した場合に、生成部が生成する第3タイマ値の異常を検出する検出部を更に備えることを特徴としている。 The timer value generation device according to the present invention includes a first timer having a first timer value for counting a signal input at a predetermined cycle by performing either one of a subtraction process or an addition process, and the counted number is Based on a second timer having a second timer value for counting the number of times the first timer value expression range has been exceeded, a first timer value read from the first timer, and a second timer value read from the second timer And a generation unit that generates a third timer value that counts a range wider than the expression range of the first timer value, the first timer counts the expression range of the first timer value by the counted number. If it exceeds, an initialization process is performed to change the first timer value to a predetermined value, and the generation unit reads the second timer value from the second timer after reading the first timer value from the first timer. , 1st timer value When the difference between the first timer value read again after reading the second timer value and the first timer value read earlier is not the difference caused by the subtraction process or addition process performed by the first timer And a detecting unit for detecting an abnormality of the third timer value generated by the generating unit.
上記構成において、生成部は、検出部が異常を検出した場合に、再度読出した第1タイマ値及び再度読出した第2タイマ値に基づいて、第3タイマ値を生成することを特徴とする構成を採用できる。 In the above configuration, the generation unit generates the third timer value based on the first timer value read again and the second timer value read again when the detection unit detects an abnormality. Can be adopted.
上記構成において、第1タイマ及び第2タイマは、ハードウェア回路で構成され、生成部は、ソフトウェア処理で実現される構成を採用できる。 In the above configuration, the first timer and the second timer may be configured by hardware circuits, and the generation unit may be configured to be realized by software processing.
上記構成において、検出部は、差異が所定値を超える場合に、生成部が生成する第3タイマ値の異常を検出する構成を採用できる。 In the above configuration, the detection unit may employ a configuration for detecting an abnormality of the third timer value generated by the generation unit when the difference exceeds a predetermined value.
本発明に係るタイマ値生成方法は、所定周期で入力される信号を、減算処理又は加算処理のいずれか1つを行うことにより計数する第1タイマ値を生成する第1生成ステップと、計数した数が第1タイマ値の表現範囲を超過した回数を計数する第2タイマ値を生成する第2生成ステップと、第1タイマから読み出した第1タイマ値と第2タイマから読出した第2タイマ値とに基づいて、第1タイマ値の表現範囲よりも広い範囲を計数する第3タイマ値を生成する第3生成ステップとを備えるタイマ値生成方法において、第1生成ステップは、計数した数が第1タイマ値の表現範囲を超える場合に、第1タイマ値を所定値に変更する初期化処理を行い、第2生成ステップは、第1タイマから第1タイマ値を読み出した後に、第2タイマから第2タイマ値を読み出すものであり、第1タイマ値及び第2タイマ値を読出した後に再度読出した第1タイマ値と、先に読出した第1タイマ値との差異が、第1タイマの行う減算処理又は加算処理により生じた差異でないと判断した場合に、第3生成ステップで生成する第3タイマ値の異常を検出する検出ステップを更に備えることを特徴としている。 The timer value generation method according to the present invention includes a first generation step of generating a first timer value for counting a signal input at a predetermined cycle by performing either one of a subtraction process or an addition process, A second generation step of generating a second timer value for counting the number of times that the number exceeds the expression range of the first timer value, a first timer value read from the first timer, and a second timer value read from the second timer And a third generation step of generating a third timer value for counting a wider range than the expression range of the first timer value based on the first generation step, wherein the first generation step includes If the expression range of one timer value is exceeded, an initialization process is performed to change the first timer value to a predetermined value, and the second generation step reads the first timer value from the first timer, Second A difference between the first timer value read again after reading the first timer value and the second timer value and the first timer value read earlier is a subtraction process performed by the first timer. Alternatively, it is characterized by further comprising a detection step of detecting an abnormality of the third timer value generated in the third generation step when it is determined that the difference is not caused by the addition process.
請求項1の構成によれば、先に読出した第1タイマ値と再度読出した第1タイマ値との差異が、第1タイマ値の表現範囲での計数によるものでない場合に、第1タイマ値が表現範囲を超過する前の第1タイマ値と、超過後の第2タイマ値とに基づいて第3タイマ値を生成することで生じる異常を検出できる。 According to the configuration of claim 1, when the difference between the previously read first timer value and the read first timer value is not due to counting in the expression range of the first timer value, the first timer value It is possible to detect an abnormality caused by generating the third timer value based on the first timer value before exceeding the expression range and the second timer value after exceeding.
請求項2の構成によれば、第1タイマ値が表現範囲を超過した後に読出した第1タイマ値及び第2タイマ値に基づいて第3タイマ値を生成するため、精度良く第3タイマ値を生成できる。 According to the configuration of the second aspect, since the third timer value is generated based on the first timer value and the second timer value read after the first timer value exceeds the expression range, the third timer value is accurately determined. Can be generated.
請求項3の構成によれば、発振回数が第1タイマ値の表現範囲を超過するタイミング及び第2タイマ値が表現範囲の超過を計数するタイミングと、生成部が第1タイマ値及び第2タイマ値を読出すタイミングとの同期を取らずとも、第1タイマ値及び第2タイマ値に基づいて第3タイマ値を精度良く生成できる。 According to the configuration of the third aspect, the timing at which the number of oscillations exceeds the expression range of the first timer value, the timing at which the second timer value counts the expression range exceeding, and the generation unit include the first timer value and the second timer. The third timer value can be accurately generated based on the first timer value and the second timer value without synchronizing with the timing of reading the value.
請求項4の構成によれば、先に読出した第1タイマ値と再度読出した第1タイマ値との差異が所定値を超えるか否かに基づいて、発振回数の計数による差異であるか否かを判断するため、第3タイマ値の異常を精度良く検出できる。 According to the configuration of the fourth aspect, whether or not the difference is due to counting of the number of oscillations based on whether or not the difference between the first timer value read previously and the first timer value read again exceeds a predetermined value. Therefore, the abnormality of the third timer value can be detected with high accuracy.
請求項5の構成によれば、先に読出した第1タイマ値と再度読出した第1タイマ値との差異が、第1タイマ値の表現範囲での計数によるものでない場合に、第1タイマ値が表現範囲を超過する前の第1タイマ値と、超過後の第2タイマ値とに基づいて第3タイマ値を生成することで生じる異常を検出できる。 According to the configuration of the fifth aspect, when the difference between the first timer value read earlier and the first timer value read again is not due to counting in the expression range of the first timer value, the first timer value It is possible to detect an abnormality caused by generating the third timer value based on the first timer value before exceeding the expression range and the second timer value after exceeding.
以下、本発明の最良の実施形態について、添付図面を参照しつつ説明する。 DESCRIPTION OF EXEMPLARY EMBODIMENTS Hereinafter, exemplary embodiments of the invention will be described with reference to the accompanying drawings.
図1は、本発明のタイマ値生成装置を搭載した制御装置で構成される制御システムの一実施形態を示す構成図である。 FIG. 1 is a configuration diagram showing an embodiment of a control system including a control device equipped with a timer value generation device of the present invention.
図1に示す制御システム1は、車両に搭載される。車両は、例えば、乗用車、バス、及びトラック等の自動車で構成される。尚、本実施例では、車両が自動車で構成されるとして説明を行うが、これに限定される訳ではなく、原動機付自転車、軽車両、及びトロリーバス、戦車及び装甲車等の軍用車両、並びに鉄道車両で構成される実施例を採用できる。
本実施例において、制御システム1が車両に搭載される場合について説明するが、これに限定される訳ではない。例えば、制御システム1は、船舶、航空機、並びに人工衛星、宇宙探査機、及び宇宙ステーション等の宇宙機に搭載される構成を採用できる。また更に、制御システム1は、車両又は船舶等に搭載されずに使用される構成を採用できる。
A control system 1 shown in FIG. 1 is mounted on a vehicle. A vehicle is comprised by motor vehicles, such as a passenger car, a bus, and a truck, for example. In this embodiment, the description will be made assuming that the vehicle is composed of an automobile. However, the present invention is not limited to this, and is not limited to this. Motor vehicles such as motorbikes, light vehicles, trolley buses, tanks and armored vehicles, and railways An embodiment composed of a vehicle can be adopted.
In the present embodiment, the case where the control system 1 is mounted on a vehicle will be described, but the present invention is not limited to this. For example, the control system 1 can adopt a configuration mounted on a spacecraft such as a ship, an aircraft, and an artificial satellite, a space probe, and a space station. Furthermore, the control system 1 can employ a configuration that is used without being mounted on a vehicle or a ship.
制御システム1は、制御装置であるECU(Electronic Control Unit)100から700で構成される。ECU100から700は、例えば、CAN(Controller Area Network)バス等のバスBCを介して相互に通信可能に接続する。尚、本実施例においては、ECU100から700は、CANプロトコルを用いて通信を行うとして説明するが、これに限定される訳ではない。例えば、ECU100から700は、LIN(Local Interconnect Network)プロトコルを用いて通信する構成を採用できる。
The control system 1 includes ECUs (Electronic Control Units) 100 to 700 that are control devices. The ECUs 100 to 700 are communicably connected to each other via a bus BC such as a CAN (Controller Area Network) bus. In the present embodiment, the
ECU100から700は、車両の挙動を制御する制御装置である。ECU100から700は、燃料噴射制御装置(EFI−ECU:Electronic Fuel Injection - Electronic Control Unit)、エアバッグECU、メータECU、ボディECU、エコランECU、セキュリティECU、及びその他ECUである。EFI−ECU100は、車両が備えるエンジンの点火装置(ignition)の点火タイミングを制御することで、車両の挙動を制御する。また、エアバッグECU200は、エアバッグを展開させるガスを発生するガス発生剤を着火燃焼する着火装置(つまり、スクイブ)を制御する。
メータECU300は、車両が備えるメータの表示を制御する。ボディECU400は、例えば、ドア等のボディ系の機器を制御する。エコランECU500は、燃費の良い(つまり、エコノミーな)又は地球環境に優しい(つまり、エコロジーな)走行をするよう車両を制御する。セキュリティECU600は、車両及び車両の乗員の安全を確保するために車両に搭載された機器を制御する。具体例としては、セキュリティECU600は、車両に対する侵入を検出した場合に警報を発するようスピーカ等の音声出力装置を制御する。
Meter ECU 300 controls display of a meter provided in the vehicle. The
その他ECU700は、ECU100から600が制御対象とする装置以外の装置を制御する。本実施例において、その他ECU700は、車両が搭載する蓄電池10の放電及び充電を制御(つまり、パワーマネジメント)するとして説明するが、これに限定される訳ではない。
また、本実施例において、本発明のタイマ値生成装置は、その他ECU700に搭載されるとして説明を行う。しかし、これに限定される訳ではなく、ECU100から600に搭載される構成を採用できる。よって、ECU100から700の構成及は、ほぼ同様であるため、以下、その他ECU700の構成について説明する。
In addition, the ECU 700 controls devices other than the devices that the
In the present embodiment, the timer value generation device of the present invention will be described as being mounted on the
ここで、図2を参照して、その他ECU700の構成について説明する。図2は、その他ECU700の一構成例を表すハードウェア構成図である。
図2に示すその他ECU700は、車両が搭載する各種センサ、イグニッションスイッチ、各種アクチュエータ、蓄電池10、及びCANバスBCに接続する。
Here, with reference to FIG. 2, the configuration of the
The other ECU 700 shown in FIG. 2 is connected to various sensors, ignition switches, various actuators, the
ここで、その他ECU700について説明する前に、その他ECU700に接続する蓄電池10等について説明する。
蓄電池10は、例えば、鉛蓄電池等の一般型のバッテリで構成される。蓄電池10は、その他ECU700を含む車両に搭載された各種の装置に対して電力を供給する。尚、本実施例において、蓄電池10は、鉛蓄電池等の一般型のバッテリで構成されるとして説明したが、これに限定される訳ではない。例えば、蓄電池10は、レドックス・フロー電池等の液循環型のバッテリ、アルミニウム・空気電池等のメカニカルチャージ型のバッテリ、及びナトリウム・硫黄電池等の高温動作型のバッテリである構成を採用できる。
Here, before describing the
The
イグニッションスイッチは、一般に、エンジンキーの回転により、エンジンの点火装置(つまり、イグニッション)を起動させる信号が通過する電路を開く開閉器である。各種センサは、例えば、蓄電池10付近の気温、蓄電池10から流出する電流、及びエンジン回転数等の蓄電池10が行う放電又は充電を制御するために用いる情報を表す信号をその他ECU700へ出力する。各種アクチュエータは、その他ECU700が出力する信号に従って、例えば、蓄電池10の放電及び充電に関する装置を作動させる。
The ignition switch is generally a switch that opens an electric circuit through which a signal for starting an ignition device (that is, an ignition) of an engine passes by rotation of an engine key. The various sensors, for example, output signals representing information used for controlling discharge or charging performed by the
次に、その他ECU700の構成について説明を行う。その他ECU700は、電源IC710(Integrated Circuit)、信号成型レベル変換部720、発信回路730、出力回路740、及びマイコン750で構成される。
電源IC710は、蓄電池10、マイコン750、及びイグニッションスイッチに接続する。電源IC710は、電源生成機能及び監視機能を有する。電源生成機能は、イグニッションスイッチから取得する信号に基づいて、蓄電池10が供給する電力を用いてマイコン750が使用する電力を供給する電源を生成する機能である。また、監視機能は、マイコン750が出力するウォッチドッグクロックWDC(Watch Dog Clock)に基づいて、マイコン750に対して再起動を命じるリセット信号を出力する機能である。
Next, the configuration of the
The
信号成型レベル変換部720は、各種センサ及びマイコン750に接続している。信号成型レベル変換部720は、各種センサが出力する信号を成型すると共に、成型した信号をマイコン750の処理に適したレベルに変換する。その後、信号成型レベル変換部720は、変換した信号をマイコン750へ出力する。具体的には、信号成型レベル変換部720は、各種センサが出力する信号をA/D(Analog/Digital)変換等したデジタル信号の入力、パルス入力、又はポート入力を行う。
The signal shaping
発振回路730は、例えば、帰還型発振回路又は弛張型発振回路等で構成される。尚、帰還型発振回路は、例えば、固体振動子発振回路、CR発振回路、又はLC反結合発振回路等である構成を採用できる。更に、固体振動子発振回路は、例えば、水晶振動子又はセラミック発振子等を用いた回路である構成を採用できる。発振回路730は、本件発明のタイマが計測できる最も短い時間を定める所定の周波数を有した電気信号をマイコン750へ出力する。
The
出力回路740は、ハードウェア回路で構成される。出力回路740は、マイコン750、CANバスBC、及び各種アクチュエータに接続する。出力回路740は、マイコン750が蓄電池10の放電又は充電を制御する制御処理を実行することでポート出力、シリアル出力、PWM(Pulse Width Modulation)出力する信号を各種アクチュエータへ出力する、又は出力するデータをCANバスBCを介して他のECU100から600へ送信する。
マイコン750は、電源IC710、信号成型レベル変換部720、発振回路730、及び出力回路に接続する。マイコン750は、本発明のタイマ値生成装置である。
The
The
ここで、図3を参照して、マイコン750の構成について説明する。図3は、マイコン750の一構成例を表すハードウェア構成図である。
図3に示すマイコン750は、16ビットマイコンである。マイコン750は、分周器751、第1タイマ752a、第2タイマ752b、及びソフトウェア処理部753で構成される。
分周器751は、発振回路730及び第1タイマ752aに接続する。分周器751は、発振回路730から取得した所定の周波数を有した電気信号を、より低い周波数の信号に変換する。その後、分周器751は、変換した周波数の信号を第1タイマ752aへ出力する。
Here, the configuration of the
A
The
第1タイマ752aは、16ビットのフリーランタイマレジスタと、タイマレジスタの値を変更する周辺回路とで構成される。第1タイマ752aは、分周器751、第2タイマ752b、及びソフトウェア処理部753に接続する。第1タイマ752aは、後述するソフトウェア処理部753が報知する時刻を表す32ビットのデータの下位ビットに用いられるデータをソフトウェア処理部753へ提供する。尚、ソフトウェア処理部753が報知する時刻を、以下単に、タイマ時刻という。また、タイマ時刻を表す32ビットのデータを、以下単に、32ビット時刻データという。更に、32ビット時刻データの下位ビットに用いられるデータを、以下単に、下位16ビット時刻データという。
The
具体的には、第1タイマ752aは、分周器751が電気信号を出力する周期「LSB:125ns」で、タイマレジスタの値を値「0xFFFF」から「0x0000」まで値「0x0001」刻みで減少させる。ここで、第1タイマ752aは、アンダーフローが発生した場合に(つまり、「LSB:192ms」周期で)、桁上りの発生を報告する信号を第2タイマ752bへ出力する。
本実施例において、第1タイマ752aは、分周器751が出力する信号の発振回数を減算処理により計数し、計数した値をタイマレジスタに保存するとして説明するが、これに限定される訳ではなく、発振回数を加算処理により計数する構成を採用できる。
Specifically, the
In the present embodiment, the
第2タイマ752bは、第1タイマ752aと同様の構成を有する。第2タイマ752bは、第1タイマ752a及びソフトウェア処理部753に接続する。第2タイマ752bは、上位ビットに用いられるデータ(以下単に、上位16ビット時刻データという)をソフトウェア処理部753へ提供する。具体的には、第2タイマ752bは、第1タイマ752aから桁上りというイベントの発生を報告する信号を受け取った場合に、タイマレジスタの値を値「0xFFFF」から「0x0000」まで値「0x0001」刻みで減少させる。
The
本実施例において、第2タイマ752bは、分周器751が出力する信号の発振回数が第1タイマ第1タイマ752aの有するタイマレジスタの表現範囲を超過した回数(つまり、アンダーフローした回数)を減算処理により計数し、計数した値をタイマレジスタに保存するとして説明するが、これに限定される訳ではなく、超過回数を加算処理により計数する構成を採用できる。
尚、下位16ビット時刻データの値を第1タイマ値といい、上位16ビット時刻データの値を第2タイマ値といい、32ビット時刻データの値を第3タイマ値という。
また、本実施例において、第1タイマ値及び第2タイマ値は16ビットデータ値であり、第3タイマ値は32ビットデータ値であるとして説明するが、これに限定される訳ではなく、第3タイマ値は、第1タイマ値及び第2タイマ値に基づいて第1タイマ値の表現範囲よりも広い範囲で発振回数を計数できるビット数からなるデータ値であれば良い。
In this embodiment, the
The lower 16-bit time data value is referred to as a first timer value, the upper 16-bit time data value is referred to as a second timer value, and the 32-bit time data value is referred to as a third timer value.
In this embodiment, the first timer value and the second timer value are 16-bit data values, and the third timer value is a 32-bit data value. However, the present invention is not limited to this. The three timer value may be a data value composed of the number of bits that can count the number of oscillations in a wider range than the first timer value expression range based on the first timer value and the second timer value.
ソフトウェア処理部753は、第1タイマ752a、第2タイマ752b、電源IC710、信号成型レベル変換部720、及び出力回路740に接続する。ソフトウェア処理部753は、第1タイマ752a等から取得したデータを用いて後述するソフトウェア処理を実行する。
ここで、ソフトウェア処理部753がソフトウェア処理を実行するために用いるハードウェア構成の一例について説明する。ソフトウェア処理部753は、実行部753a、RAM752b(Random Access Memory)、ROM753c(Read-Only Memory )、入力用マイコン周辺リソース753d、及び出力用マイコン周辺リソース753eで構成される。ソフトウェア処理部753を構成する実行部753aから出力用マイコン周辺リソース753eは、それぞれバスを介してデータの授受が可能なように接続している。
The software processing unit 753 is connected to the
Here, an example of a hardware configuration used for the software processing unit 753 to execute software processing will be described. The software processing unit 753 includes an execution unit 753a, a
ソフトウェア処理部753は、実行部753aによって実行される。実行部753aは、例えば、CPU(Central Processing Unit)等で構成される。実行部753aは、先ず、RAM752b又はROM753cが記憶するプログラムを読み込む。次に、実行部753aは、読み込んだプログラムが表すソフトウェア処理の実行手順に従って後述する入力用マイコン周辺リソース753dが入力する各種センサ値に対して演算を行う。その後、実行部753aは、演算の結果をRAM752bに書き込み、必要に応じて出力用マイコン周辺リソース753eへ出力する。また、実行部753aは、入力用マイコン周辺リソース753dが入力するリセット信号を受けて再起動する。
The software processing unit 753 is executed by the execution unit 753a. The execution unit 753a is configured by, for example, a CPU (Central Processing Unit). The execution unit 753a first reads a program stored in the
尚、RAM752b(Random Access Memory)は、DRAM(Dynamic Random Access Memory)又はSRAM(Static RAM)等の揮発性メモリ及びNVRAM(Non Volatile RAM)等の不揮発性メモリで構成される。ROM753c(Read-Only Memory )は、EPROM(Erasable Programmable Read-Only Memory)又はEEPROM(Electrically Erasable Programmable Read-Only Memory)等の読出し専用メモリで構成される。入力用マイコン周辺リソース753d及び出力用マイコン周辺リソース753eは、レジスタ及びレジスタの値を管理する周辺回路で構成される。入力用マイコン周辺リソース753dは、信号成型レベル変換部720が入力する各種センサ値、及び電源IC710が出力するリセット信号を実行部753aへ入力する。また、出力用マイコン周辺リソース753eは、実行部753aが出力する信号を出力回路740又は電源IC710へ出力する。
The
次に、図4を参照して、ソフトウェア処理部753の構成について、機能に基づいて説明を行う。図4は、ソフトウェア処理部753の一構成例を表す機能ブロック図である。
図4に示すソフトウェア処理部753は、報時部753f、ウォッチドッグ操作部753g、制御部753h、出力部753i、及び入力部753jで構成される。報時部753fは、第1タイマ752a、第2タイマ752b、ウォッチドッグ操作部753g、及び制御部753hに接続する。報時部753fは、報時処理を実行することで、32ビット時刻データである第3タイマ値が表すタイマ時刻を報知する。
Next, the configuration of the software processing unit 753 will be described based on functions with reference to FIG. FIG. 4 is a functional block diagram illustrating a configuration example of the software processing unit 753.
The software processing unit 753 shown in FIG. 4 includes an
ここで、本発明のタイマ値生成装置を構成する報時部753fが実行する報時処理について説明する前に、図5を参照して、周知の報時部953fが実行する報時処理について説明する。図5(a)は、周知の報時部953fが実行する報時処理の一例を表すフローチャートである。尚、周知の報時部953fは、周知のタイマ値生成装置である32ビットマイコンに搭載される32ビットタイマ952が提供するデータに基づいて時刻を報知する。
Here, before explaining the reporting process executed by the
先ず、報時部953fは、32ビットタイマ952が値を管理する32ビットのフリーランタイマレジスタのタイマ値を読出す(ステップS01)。次に、報時部953fは、読出したタイマ値をビット反転させてタイマ時刻を取得する(ステップS02)。つまり、レジスタの値は「0xFFFF FFFF」から開始するためである。その後、報時部953fは、タイマ時刻を、図4に示す制御部753h及びウォッチドッグ操作部753gに相当する部に対して報知(公開)する(ステップS03)。その後、報時部953fは、報時処理の実行を終了する。
First, the reporting unit 953f reads the timer value of the 32-bit free-run timer register managed by the 32-bit timer 952 (step S01). Next, the reporting unit 953f bit-inverts the read timer value to acquire the timer time (step S02). That is, the register value starts from “0xFFFF FFFF”. Thereafter, the reporting unit 953f notifies (discloses) the timer time to the units corresponding to the
次に、従来の報時部853fが実行する報時処理を、周知の報時部953fが実行する報時処理と比較して説明する。図5(b)は、従来の報時部853fが実行する報時処理の一例を表すフローチャートである。尚、従来の報時部853fを備えるマイコンは、本発明のマイコン750と同様に16ビットマイコンである。よって、従来の報時部853fが実行する報時処理は、以下のステップS11からS13の処理において、周知の報時部953fが実行する報時処理と異なる。
Next, a description will be given of a reporting process executed by the conventional reporting unit 853f in comparison with a reporting process executed by the known reporting unit 953f. FIG. 5B is a flowchart showing an example of the time information processing executed by the conventional time information unit 853f. Note that the microcomputer provided with the conventional report time unit 853f is a 16-bit microcomputer, similar to the
先ず、報時部853fは、16ビットタイマである第1タイマ852aが値を管理する16ビットのフリーランタイマレジスタの第1タイマ値(つまり、下位16ビット時刻データ)を読出す(ステップS11)。次に、報時部853fは、16ビットタイマである第2タイマ852bが管理する16ビットのフリーランタイマレジスタの第2タイマ値(つまり、上位16ビット時刻データ)を読出す(ステップS12)。尚、第1タイマ852a及び第2タイマ852bの構成は、第1タイマ952a及び第2タイマ952bの構成と同様であるので説明を省略する。
First, the reporting unit 853f reads the first timer value (that is, the lower 16-bit time data) of the 16-bit free-run timer register managed by the
その後、報時部953fは、32ビット時刻データの上位16ビットを上位16ビット時刻データとし、下位16ビットを下位16ビット時刻データとして32ビット時刻データを合成する(ステップS13)。つまり、報時部953fは、第1タイマ値と第2タイマ値とに基づいて第3タイマ値を生成する。その後、報時部853fは、合成した32ビットデータに対してステップS14及びステップS15の処理を実行する(ステップS14及びステップS15)。その後、報時部853fは、報時処理の実行を終了する。尚、ステップS14及びステップS15の処理は、ステップS02及びステップS03の処理と同様であるので説明を省略する。 Thereafter, the reporting unit 953f combines the 32-bit time data with the upper 16 bits of the 32-bit time data as the upper 16-bit time data and the lower 16 bits as the lower 16-bit time data (step S13). That is, the reporting unit 953f generates the third timer value based on the first timer value and the second timer value. Thereafter, the reporting unit 853f executes the processing of step S14 and step S15 on the combined 32-bit data (step S14 and step S15). Thereafter, the report time unit 853f ends the execution of the report time process. Note that the processing in step S14 and step S15 is the same as the processing in step S02 and step S03, and therefore description thereof is omitted.
次に、図6を参照して、周知の報時処理との相違により生じる従来の報時処理の問題点について概説する。図6は、従来の報時部853fが実行する報時処理の問題点の一例を表す図である。
図6(a)は、第1タイマ852aが管理するフリーランタイマレジスタの第1タイマ値の遷移を表す図である。図6(a)は、横軸で時刻を、縦軸でフリーランタイマレジスタが表す下位16ビットデータの値を表す。図6(a)に示すように、時刻t01前において、下位16ビットデータの値は、16ビットで表現できる最大の値「0xFFFFFF」をとる。次に、時刻t01において、分周器751が信号を出力すると、下位16ビットデータの値は、信号を受信した第1タイマ852aによって「0x0001」だけ低い値に変更される。その後、下位16ビットデータの値は、「0x0001」となるまで分周器751が信号を出力する毎に減算される。次に、時刻t10において、分周器751が信号を出力すると、値「0x0001」の下位16ビットデータは、値の表現範囲を超えるため、第1タイマ852aによって初期化処理が行われ、最大の値「0xFFFFFF」と初期化される。尚、時刻t10において、分周器751から信号を受信した第1タイマ852aは、アンダーフローを発生させると共に、桁上りの発生(つまり、表現範囲の超過)を報告する信号を第2タイマ852bへ出力する。
Next, with reference to FIG. 6, the problem of the conventional time information processing caused by the difference from the known time information processing will be outlined. FIG. 6 is a diagram illustrating an example of a problem of the time information processing performed by the conventional time information unit 853f.
FIG. 6A is a diagram illustrating a transition of the first timer value of the free-run timer register managed by the
図6(b)は、第2タイマ852bが管理するフリーランタイマレジスタの第2タイマ値の遷移を表す図である。図6(b)は、横軸で時刻を、縦軸でフリーランタイマレジスタが表す上位16ビットデータの値を表す。図6(b)に示すように、時刻t10前において、上位16ビットデータの値は、16ビットで表現できる最大の値「0xFFFFFF」をとる。次に、時刻t10において、第1タイマ852aが桁上りの発生を報告する信号を出力すると、上位16ビットデータの値は、信号を受信した第2タイマ852bによって「0x0001」だけ低い値に変更される。その後、上位16ビットデータの値は、「0x0001」となるまで同様に減算される。
FIG. 6B is a diagram illustrating the transition of the second timer value of the free-run timer register managed by the
図6(c)は、ソフトウェア処理部853を構成する報時部753fが報知するタイマ時刻(つまり、反転後の第3タイマ値)の遷移を表す図である。図6(c)は、横軸で時刻を、縦軸でタイマ時刻を表す。図6(c)に示すように、タイマ時刻を表す32ビット時刻データは、各時刻における下位16ビットデータと上位16ビットデータとを合成したデータである。よって、分周器751が第1タイマ852aへ信号を出力すると、原則、出力後の32ビット時刻データの値は、信号出前の値よりも値「0x0000 0001」だけ増加しなければならない。
FIG. 6C is a diagram illustrating a transition of the timer time (that is, the third timer value after inversion) notified by the
しかし、報時部853fは、図5で参照したステップS11とステップS12とを逐次処理するため、ステップS11で第1タイマ852aを読出した後から第2タイマ852bを読出すまでに、第1タイマ852aの桁溢れ及び第2タイマ852bの更新が生じる場合がある。この特定のタイミングにおいては、桁溢れ前の第1タイマ852aの値と桁溢れ後の第2タイマ852bの値とを合成してしまう。よって、報時部853fは、この特定のタイミングにおいて異常なタイマ時刻を生成してしまうため、精度良く時刻を提供できないという問題があった。
However, since the reporting unit 853f sequentially processes step S11 and step S12 referred to in FIG. 5, the
具体的には、時刻t10の直前に、報時部853fが第1タイマ852aを読出し、時刻t10の直後に第2タイマ852bを読出した場合には、桁溢れ前の第1タイマ852aの第1タイマ値「0x0001」と桁溢れ後の第2タイマ852bの第2タイマ値「0xFFFE」とを合成してしまう。よって、報時部853fは、正常な第3タイマ値「0x0000 FFFE」ではなく、異常な値「0x0001 FFFE」を生成してしまうという問題があった。
Specifically, when the reporting unit 853f reads the
次に、図7を参照して、従来技術の問題を解決するために、本件発明のタイマ値生成装置であるマイコン750を構成する報時部753fが実行する報時処理について概説する。図7は、報時部753fが実行する報時処理の一例について概説するための図である。尚、図7(a)から(c)は、図6(a)から(c)とほぼ同様であるので、詳細な説明を省略する。
先ず、報時部753fは、第1タイマ952aから第1タイマ値を読出す。次に、報時部753fは、第2タイマ952bから第2タイマ値を読出す。その後、報時部753fは、再度、第1タイマ値を読出す。
Next, with reference to FIG. 7, in order to solve the problem of the prior art, the time information processing executed by the
First, the
ここで、第1タイマ952aは、第1タイマ値を減算して発振回数を計数するため、桁上りが発生しない限り、1回目に読出した第1タイマ値は、2回目に読出した第1タイマ値よりも大きい。よって、1回目に読出した第1タイマ値が2回目に読出した第1タイマ値よりも小さいか否かを判断することで、報時部753fは、第1タイマ952aを読出した後に第2タイマ952bを読出すまでに桁上りが発生したか否かを判断できる。
Here, since the first timer 952a subtracts the first timer value and counts the number of oscillations, the first timer value read for the first time is the first timer value read for the second time unless a carry occurs. Greater than the value. Therefore, by determining whether or not the first timer value read for the first time is smaller than the first timer value read for the second time, the
この構成によれば、先に読出した第1タイマ値と再度読出した第1タイマ値との差異が、第1タイマ値の表現範囲での計数によるものでない場合に、第1タイマ値が表現範囲を超過する前の第1タイマ値と、超過後の第2タイマ値とに基づいて第3タイマ値を生成することで生じる異常を検出できる。 According to this configuration, when the difference between the first timer value read out earlier and the first timer value read out again is not due to counting in the expression range of the first timer value, the first timer value is expressed in the expression range. An abnormality caused by generating the third timer value based on the first timer value before exceeding and the second timer value after exceeding can be detected.
また、第1タイマ952aは、所定の周器で生じる信号の発振に基づいて第1タイマ値を減算するため、桁上りが発生しない限り、1回目に読出した第1タイマ値と2回目に読出した第1タイマ値との差異は所定値よりも低い値となる。よって、算出した差異が所定値を超えるか否かを判断することでも、報時部753fは、第1タイマ952aを読出した後に第2タイマ952bを読出すまでに桁上りが発生したか否かを判断できる。
In addition, since the first timer 952a subtracts the first timer value based on the oscillation of the signal generated by a predetermined peripheral, the first timer value read first time and the second time read unless a carry occurs. The difference from the first timer value is a value lower than the predetermined value. Therefore, even if it is determined whether or not the calculated difference exceeds a predetermined value, the
この構成によれば、先に読出した第1タイマ値と再度読出した第1タイマ値との差異が所定値を超えるか否かに基づいて、発振回数の計数による差異であるか否かを判断するため、第3タイマ値の異常を精度良く検出できる。 According to this configuration, it is determined whether or not the difference is due to counting of the number of oscillations based on whether or not the difference between the previously read first timer value and the again read first timer value exceeds a predetermined value. Therefore, the abnormality of the third timer value can be detected with high accuracy.
次に、報時部753fが実行する報時処理について説明する前に、図8を参照して、報時部753fの構成について説明する。図8は、報時部753fの一構成例を表す機能ブロック図である。
報時部753fは、読出部753k、検出部753l、生成部753m、反転部753n、及び公開部753oで構成される。読出部753kは、第1タイマ752a、第2タイマ752b、及び検出部753lに接続する。読出部753kは、実行部753aが読出処理を実行することで実現される。読出部753kは、第1タイマ752a及び第2タイマ752bから第1タイマ値及び第2タイマ値を読出し、読出した値を検出部753lへ出力する。
Next, the configuration of the
The
検出部753lは、読出部753k及び生成部753mに接続する。検出部753lは、実行部753aが検出処理を実行することで実現される。検出部753lは、先ず、読出部753kが読出した第1タイマ値及び第2タイマ値を読出した後に再度読出した第1タイマ値と、先に読出した第1タイマ値との差異を算出する。次に、検出部753lは、算出した差異が、第1タイマ752aの行う減算処理又は加算処理により生じた差異であるか否かを判断すると共に、減算処理又は加算処理により生じた差異でないと判断した場合に、後述する生成部753mが生成する第3タイマ値の異常を検出する。検出部753lは、異常を検出しなかった場合には、読出部753kから取得した第1タイマ値及び第2タイマ値を生成部753mへ出力する。また、検出部753lは、異常を検出した場合には、再度、第1タイマ値及び第2タイマ値を読出すよう読出部753kを制御した後に、読出部753kから取得した値を生成部753mへ出力する。尚、図7を参照したように、検出部753lは、1回目に読出した第1タイマ値が2回目に読出した第1タイマ値よりも小さいか否か、又は1回目に読出した第1タイマ値と2回目に読出した第1タイマ値との差異が所定値よりも低いか否かに基づいて異常を検出する。
The
生成部753mは、検出部753l及び反転部753nに接続する。生成部753mは、実行部753aが生成処理を実行することで実現される。検出部753lは、検出部753lから取得した第1タイマ値及び第2タイマ値に基づいて第3タイマ値を生成し、生成した値を反転部753nへ出力する。
反転部753nは、生成部753m及び公開部753oに接続する。反転部753nは、実行部753aが反転処理を実行することで実現される。反転部753nは、生成部753mから取得した第3タイマ値を反転し、タイマ時刻を生成する。反転部753nは、生成したタイマ時刻を公開部753oへ出力する。
公開部753oは、反転部753n、ウォッチドッグ操作部753g、及び制御部753hに接続する。公開部753oは、実行部753aが公開処理を実行することで実現される。公開部753oは、反転部753nから取得したタイマ時刻をウォッチドッグ操作部753g及び制御部753hに公開(報知)する。
The generation unit 753m is connected to the detection unit 753l and the inversion unit 753n. The generation unit 753m is realized by the execution unit 753a executing the generation process. The
The inversion unit 753n is connected to the generation unit 753m and the disclosure unit 753o. The inversion unit 753n is realized by the execution unit 753a executing the inversion process. The inversion unit 753n inverts the third timer value acquired from the generation unit 753m to generate a timer time. The inversion unit 753n outputs the generated timer time to the disclosure unit 753o.
The disclosure unit 753o is connected to the inversion unit 753n, the watchdog operation unit 753g, and the
次に、図9を参照して、報時部753fが実行する報時処理について説明する。図9は、報時部753fが実行する報時処理の一例を表すフローチャートである。尚、報時部753fは、ウォッチドッグ操作部753g及び制御部753hが時刻の報知を要求する場合に報時処理を実行する。
Next, with reference to FIG. 9, the reporting process executed by the
先ず、報時部753fは、他のソフトウェア処理の割込み実行を禁止する割込禁止処理を実行する(ステップS21)。後述するステップS22からS28の処理を遅延無く連続して処理するためである。次に、報時部753fは、変数11に対して第1タイマ752aから読出した第1タイマ値を代入する(ステップS22)。その後、報時部753fは、変数2に対して第2タイマ752bから読出した第2タイマ値を代入する(ステップS23)。次に、報時部753fは、変数12に対して第1タイマ752aから再度読出した第1タイマ値を代入する(ステップS24)。
First, the
その後、報時部753fは、変数11の値が変数12の値よりも小さいか否かを判断する(ステップS25)。また、報時部753fは、変数11の値と変数12の値の差異が所定値を超えるか否かを判断しても良い。つまり、報時部753fは、第1タイマ752aでアンダーフローが発生したか否かを判断する。報時部753fは、アンダーフローが発生したと判断する場合にはステップS26の処理を、そうでない場合にはステップS29の処理を実行する。
Thereafter, the
ステップS25において、報時部753fは、アンダーフローが発生したと判断した場合には、既に取得した第1タイマ値と第2タイマ値とで生成される第3タイマ値が異常となることを検出する(ステップS26)。次に、報時部753fは、変数2に対して第2タイマ752bから再度読出したアンダーフロー後の第2タイマ値を代入する(ステップS27)。次に、報時部753fは、変数12に対して、アンダーフロー後の第1タイマ値を再度代入する(ステップS28)。
In step S25, when it is determined that the underflow has occurred, the
この構成によれば、第1タイマ値が表現範囲を超過した後に読出した第1タイマ値及び第2タイマ値に基づいて第3タイマ値を生成するため、精度良く第3タイマ値を生成できる。 According to this configuration, since the third timer value is generated based on the first timer value and the second timer value read after the first timer value exceeds the expression range, the third timer value can be generated with high accuracy.
ステップS25において、報時部753fは、アンダーフローが発生しなかったと判断した場合、又はステップS28を実行した後には、割込み実行の禁止を解除する禁止解除処理を実行する(ステップS29)。その後、報時部753fは、変数12が記憶する第1タイマ値を表す16ビット下位データと、変数2が記憶する第2タイマ値を表す16ビット上位データとを合成して、第3タイマ値を表す32ビット時刻データを生成する(ステップS30)。次に、報時部753fは、ステップS31及びステップS32の処理を実行する(ステップS31及びステップS32)。その後、報時部753fは、報時処理の実行を終了する。尚、ステップS31及びステップS32の処理は、図5のステップS14及びステップS15の処理と同様なので説明を省略する。
In step S25, when the
この構成によれば、発振回数が第1タイマ値の表現範囲を超過するタイミング及び第2タイマ値が表現範囲の超過を計数するタイミングと、生成部753mが第1タイマ値及び第2タイマ値を読出すタイミングとの同期を取らずとも、第1タイマ値及び第2タイマ値に基づいて第3タイマ値を精度良く生成できる。 According to this configuration, the timing at which the number of oscillations exceeds the expression range of the first timer value, the timing at which the second timer value counts the expression range exceeding, and the generation unit 753m determine the first timer value and the second timer value. The third timer value can be accurately generated based on the first timer value and the second timer value without synchronizing with the read timing.
尚、ステップS22、S23、S24、S27、及びS28の処理が読出部753kを実現する読出処理に相当し、ステップS25及びS26の処理が検出部753lを実現する検出処理に相当し、ステップS30の処理が生成部753mを実現する生成処理に相当し、ステップS31の処理が反転部753nを実現する反転処理に相当し、ステップS32の処理が公開部753oを実現する公開処理に相当する。
Note that the processes in steps S22, S23, S24, S27, and S28 correspond to a read process that realizes the read
ここで、図4に戻り、ソフトウェア処理部753の構成について引き続き説明を行う。
ウォッチドッグ操作部753gは、報時部753f及び出力部753iに接続する。ウォッチドッグ操作部753gは、操作処理を実行することで、報時部753fが報知する時刻に基づいて、出力部753iを介して電源IC710へウォッチドッグ操作(つまり、ウォッチドッグクロックWDCの出力)を行う。
制御部753hは、報時部753f、出力部753i、及び入力部753jに接続する。制御部753hは、制御処理を実行することで、報時部753fが報知する時刻、及び入力部753jが入力する各種センサの値に基づいて、蓄電池10の蓄電又は放電を制御するデータ又は信号を出力部753iへ出力する。
Here, returning to FIG. 4, the configuration of the software processing unit 753 will be described.
The watchdog operation unit 753g is connected to the
The
出力部753iは、例えば、出力用マイコン周辺リソース753eで構成される。出力部753iは、電源IC710及び出力回路740に接続する。出力部753iは、ウォッチドッグ操作部753gが出力するパルス信号WDCを電源IC710へ出力する。また、出力部753iは、制御部753hが出力する信号又はデータを出力回路740へポート出力、シリアル出力、又はPWM出力する。
入力部753jは、例えば、入力用マイコン周辺リソース753dで構成される。入力部753jは、制御部753h及び信号成型レベル変換部720に接続する。入力部753jは、信号成型レベル変換部720がパルス入力等する各種センサの値を制御部753hへ入力する。
The output unit 753i includes, for example, an output microcomputer
The
尚、本実施例においては、マイコン750がタイマ値生成装置に相当する。また本件発明に係るタイマ値生成方法は、マイコン750を用いて実施できる。
更に、本実施例において、第1タイマ752aが第1タイマ値を減算又は加算する処理を実行するステップが第1生成ステップに相当し、第2タイマ752b第2タイマ値を減算又は加算する処理を実行するステップが第2生成ステップに相当し、実行部753aが生成処理を実行するステップが第3生成ステップに相当する。
In this embodiment, the
Furthermore, in the present embodiment, the step in which the
マイコン750が備えるソフトウェア処理部753が実行する処理を表すプログラムは、磁気ディスクや光ディスク、半導体メモリ、その他の記録媒体に格納して配布したり、ネットワークを介して配信したりすることにより提供できる。
A program representing processing executed by the software processing unit 753 included in the
また、マイコン750がソフトウェア処理を実行することで実現する機能の一部又は全部は、ハードウェア回路を用いて実現することができる。逆に、マイコン750がハードウェア回路を用いて実現する機能の一部又は全部は、ソフトウェア処理を実行することで実現することができる。
Moreover, a part or all of the functions realized by the
以上本発明の好ましい実施例について詳述したが、本発明は係る特定の実施例に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形、変更が可能である。 Although the preferred embodiments of the present invention have been described in detail above, the present invention is not limited to the specific embodiments, and various modifications, within the scope of the gist of the present invention described in the claims, It can be changed.
1…制御システム 10…蓄電池
100〜700…ECU 710…電源IC
720…信号成型レベル変換部 730…発振回路
740…出力回路 750…マイコン(タイマ値生成装置)
751…分周器 752a…第1タイマ…
752b…第2タイマ 753…ソフトウェア処理部
753a…実行部 753b…RAM
753c…ROM 753d…入力用周辺リソース
753e…出力用周辺リソース 753f…報時部
753g…ウォッチドッグ操作部 753h…制御部
753i…出力部 753j…入力部
753k…読出部 753l…検出部
753m…生成部 753n…反転部
753o…報知部 852a…16bitタイマ
852b…16bitタイマ 853…ソフトウェア処理部
853e…報時部 952…32bitタイマ
953…ソフトウェア処理部 BC…CANバス
DESCRIPTION OF SYMBOLS 1 ...
100-700 ...
720 ... Signal shaping
740 ...
751 ...
752b ... second timer 753 ... software processing section
753a ...
753c ...
753e ... Peripheral resource for
753g ...
753i ...
753k ... Reading unit 753l ... Detecting unit
753m ... generating unit 753n ... reversing unit
753o ...
853e ... Reporting time part 952 ... 32-bit timer
953 ... Software processing section BC ... CAN bus
Claims (5)
前記第1タイマは、前記計数した数が前記第1タイマ値の表現範囲を超える場合に、前記第1タイマ値を所定値に変更する初期化処理を行い、
前記生成部は、前記第1タイマから第1タイマ値を読み出した後に、前記第2タイマから第2タイマ値を読み出すものであり、
前記第1タイマ値及び前記第2タイマ値を読出した後に再度読出した第1タイマ値と、先に読出した前記第1タイマ値との差異が、前記第1タイマの行う前記減算処理又は前記加算処理により生じた差異でないと判断した場合に、前記生成部が生成する第3タイマ値の異常を検出する検出部を更に備えることを特徴とするタイマ値生成装置。 A first timer having a first timer value that counts a signal input at a predetermined period by performing one of subtraction processing or addition processing, and the counted number represents an expression range of the first timer value. Based on the second timer having a second timer value for counting the number of times exceeded, the first timer value read from the first timer, and the second timer value read from the second timer, the first timer value A timer value generation device comprising: a generation unit that generates a third timer value that counts a range wider than the expression range of
The first timer performs an initialization process to change the first timer value to a predetermined value when the counted number exceeds an expression range of the first timer value,
The generation unit reads the second timer value from the second timer after reading the first timer value from the first timer,
The difference between the first timer value read again after reading the first timer value and the second timer value and the first timer value read earlier is the subtraction process or the addition performed by the first timer. A timer value generation device further comprising a detection unit that detects an abnormality of a third timer value generated by the generation unit when it is determined that the difference is not caused by processing.
前記生成部は、ソフトウェア処理で実現されることを特徴とする請求項1又は2のいずれかに記載のタイマ値生成装置。 The first timer and the second timer are composed of hardware circuits,
The timer value generation device according to claim 1, wherein the generation unit is realized by software processing.
前記第1生成ステップは、前記計数した数が前記第1タイマ値の表現範囲を超える場合に、前記第1タイマ値を所定値に変更する初期化処理を行い、
前記第2生成ステップは、前記第1タイマから第1タイマ値を読み出した後に、前記第2タイマから第2タイマ値を読み出すものであり、
前記第1タイマ値及び前記第2タイマ値を読出した後に再度読出した第1タイマ値と、先に読出した前記第1タイマ値との差異が、前記第1タイマの行う前記減算処理又は前記加算処理により生じた差異でないと判断した場合に、前記第3生成ステップで生成する第3タイマ値の異常を検出する検出ステップを更に備えることを特徴とするタイマ値生成方法。
A first generation step of generating a first timer value for counting a signal input in a predetermined cycle by performing either one of a subtraction process or an addition process; and the counted number is an expression of the first timer value Based on a second generation step of generating a second timer value for counting the number of times the range has been exceeded, a first timer value read from the first timer, and a second timer value read from the second timer, A timer value generation method comprising: a third generation step of generating a third timer value for counting a range wider than the expression range of the first timer value;
The first generation step performs an initialization process to change the first timer value to a predetermined value when the counted number exceeds the expression range of the first timer value,
The second generation step reads the second timer value from the second timer after reading the first timer value from the first timer,
The difference between the first timer value read again after reading the first timer value and the second timer value and the first timer value read earlier is the subtraction process or the addition performed by the first timer. A timer value generation method, further comprising a detection step of detecting an abnormality of the third timer value generated in the third generation step when it is determined that the difference is not caused by the processing.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008285867A JP2010113544A (en) | 2008-11-06 | 2008-11-06 | Timer value generation device and timer value generation method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008285867A JP2010113544A (en) | 2008-11-06 | 2008-11-06 | Timer value generation device and timer value generation method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010113544A true JP2010113544A (en) | 2010-05-20 |
Family
ID=42302057
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008285867A Pending JP2010113544A (en) | 2008-11-06 | 2008-11-06 | Timer value generation device and timer value generation method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2010113544A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017214912A (en) * | 2016-06-02 | 2017-12-07 | 日立オートモティブシステムズ株式会社 | Vehicular electronic control device and timer diagnostic method |
CN111966517A (en) * | 2020-07-20 | 2020-11-20 | 北京控制工程研究所 | On-orbit autonomous anomaly detection method for hierarchical spacecraft control system |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS57105014A (en) * | 1980-12-22 | 1982-06-30 | Hitachi Ltd | Timer readout system of electronic computer |
JPS6488817A (en) * | 1987-09-30 | 1989-04-03 | Toshiba Corp | Clock device |
JPH07295806A (en) * | 1994-04-27 | 1995-11-10 | Kofu Nippon Denki Kk | Timer reading controller |
JP2001127621A (en) * | 1999-10-29 | 2001-05-11 | Nec Ic Microcomput Syst Ltd | Read controller for counter and its control method |
-
2008
- 2008-11-06 JP JP2008285867A patent/JP2010113544A/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS57105014A (en) * | 1980-12-22 | 1982-06-30 | Hitachi Ltd | Timer readout system of electronic computer |
JPS6488817A (en) * | 1987-09-30 | 1989-04-03 | Toshiba Corp | Clock device |
JPH07295806A (en) * | 1994-04-27 | 1995-11-10 | Kofu Nippon Denki Kk | Timer reading controller |
JP2001127621A (en) * | 1999-10-29 | 2001-05-11 | Nec Ic Microcomput Syst Ltd | Read controller for counter and its control method |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017214912A (en) * | 2016-06-02 | 2017-12-07 | 日立オートモティブシステムズ株式会社 | Vehicular electronic control device and timer diagnostic method |
CN111966517A (en) * | 2020-07-20 | 2020-11-20 | 北京控制工程研究所 | On-orbit autonomous anomaly detection method for hierarchical spacecraft control system |
CN111966517B (en) * | 2020-07-20 | 2021-07-09 | 北京控制工程研究所 | On-orbit autonomous anomaly detection method for hierarchical spacecraft control system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11247702B2 (en) | Vehicle control device and electronic control system | |
FR3034882A1 (en) | METHOD FOR IMPLEMENTING A FUNCTION OF A MOTOR VEHICLE CONFORMING TO ASIL STANDARD LEVELS, CORRESPONDING SYSTEM AND MOTOR VEHICLE COMPRISING SUCH A SYSTEM | |
US8829708B2 (en) | In-vehicle apparatus control system, in-vehicle apparatus control method, and in-vehicle apparatus control program | |
US20130106174A1 (en) | Control unit for vehicle | |
JPWO2018110124A1 (en) | Vehicle control device | |
JP4665846B2 (en) | Microcomputer and electronic control device | |
US7926347B2 (en) | Method and system for monitoring a sensor arrangement | |
RU2652665C1 (en) | System and method of vehicle control | |
JP2008114806A (en) | On-vehicle device relay system, on-vehicle device relay method and relay device | |
JP2010113544A (en) | Timer value generation device and timer value generation method | |
EP1712424B1 (en) | Vehicle control apparatus | |
WO2019225369A1 (en) | Vehicle-mounted communication system, determination device, communication device, determination method, and computer program | |
CN113495606A (en) | Power manager circuit and electronic device for detecting internal errors | |
JP2005276113A (en) | Pseudo random number generating method, security check method and controller | |
KR101039926B1 (en) | Control system for fault diagnosis in vehicle | |
JP2015223956A (en) | Collison detection system | |
JP2010133806A (en) | Physical quantity sensor and control device of physical quantity sensor | |
US11858441B2 (en) | Control unit and method for activating a personal protection means of a vehicle | |
JP2009061987A (en) | Vehicular electronic control device | |
JP2005264824A (en) | Electronic control unit | |
JPH04325348A (en) | Activating device for vehicle crew protective device | |
CN115066869A (en) | In-vehicle ECU, program, and information processing method | |
JP2017001613A (en) | Inclination angle calculation device | |
CN111338314A (en) | Semiconductor device, electronic control unit, verification method for electronic control unit, and manufacturing method for electronic control unit | |
JP5654325B2 (en) | Vehicle speed pulse signal processor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20111020 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120531 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121211 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20130430 |