JP2010113544A - Timer value generation device and timer value generation method - Google Patents

Timer value generation device and timer value generation method Download PDF

Info

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
Application number
JP2008285867A
Other languages
Japanese (ja)
Inventor
Masanori Akaza
雅憲 赤座
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Ten Ltd
Original Assignee
Denso Ten Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Denso Ten Ltd filed Critical Denso Ten Ltd
Priority to JP2008285867A priority Critical patent/JP2010113544A/en
Publication of JP2010113544A publication Critical patent/JP2010113544A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a timer value generation device and a timer value generation method, allowing detection of abnormality of a timer value generated by use of two or more timers. <P>SOLUTION: The timer value generation device has: a first timer having a first timer value wherein a signal of a prescribed period is counted by one of subtraction and addition; a second timer having a second timer value wherein a frequency at which a counted number exceeds a representation range of the first timer value is counted; and a generation part generating a third timer value wherein a range wider than the representation range of the first timer value is counted based on the first timer value and the second timer value. The timer value generation device also has a detection part detecting the abnormality of the third timer value when deciding that a difference between the precedingly read first timer value and the first timer value newly read after reading the second timer value is not a difference occurring by the subtraction or the addition. Thereby, the abnormality occurring by generating the third timer value can be detected based on the first timer value before the first timer value exceeds the representation range, and the second timer value after the excess. <P>COPYRIGHT: (C)2010,JPO&INPIT

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).

特開2006−155493号公報JP 2006-155493 A

ところで、特許文献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 ECUs 100 to 700 are described as performing communication using the CAN protocol, but the present invention is not limited to this. For example, the ECUs 100 to 700 can employ a configuration in which communication is performed using a LIN (Local Interconnect Network) protocol.

ECU100から700は、車両の挙動を制御する制御装置である。ECU100から700は、燃料噴射制御装置(EFI−ECU:Electronic Fuel Injection - Electronic Control Unit)、エアバッグECU、メータECU、ボディECU、エコランECU、セキュリティECU、及びその他ECUである。EFI−ECU100は、車両が備えるエンジンの点火装置(ignition)の点火タイミングを制御することで、車両の挙動を制御する。また、エアバッグECU200は、エアバッグを展開させるガスを発生するガス発生剤を着火燃焼する着火装置(つまり、スクイブ)を制御する。   ECUs 100 to 700 are control devices that control the behavior of the vehicle. ECUs 100 to 700 are a fuel injection control device (EFI-ECU), an airbag ECU, a meter ECU, a body ECU, an eco-run ECU, a security ECU, and other ECUs. The EFI-ECU 100 controls the behavior of the vehicle by controlling the ignition timing of the ignition device (ignition) of the engine provided in the vehicle. The airbag ECU 200 controls an ignition device (that is, a squib) that ignites and burns a gas generating agent that generates a gas for deploying the airbag.

メータECU300は、車両が備えるメータの表示を制御する。ボディECU400は、例えば、ドア等のボディ系の機器を制御する。エコランECU500は、燃費の良い(つまり、エコノミーな)又は地球環境に優しい(つまり、エコロジーな)走行をするよう車両を制御する。セキュリティECU600は、車両及び車両の乗員の安全を確保するために車両に搭載された機器を制御する。具体例としては、セキュリティECU600は、車両に対する侵入を検出した場合に警報を発するようスピーカ等の音声出力装置を制御する。   Meter ECU 300 controls display of a meter provided in the vehicle. The body ECU 400 controls, for example, a body system device such as a door. The eco-run ECU 500 controls the vehicle to travel with good fuel efficiency (that is, economy) or environmentally friendly (that is, ecology). The security ECU 600 controls equipment mounted on the vehicle in order to ensure the safety of the vehicle and vehicle occupants. As a specific example, the security ECU 600 controls an audio output device such as a speaker so as to issue an alarm when an intrusion to the vehicle is detected.

その他ECU700は、ECU100から600が制御対象とする装置以外の装置を制御する。本実施例において、その他ECU700は、車両が搭載する蓄電池10の放電及び充電を制御(つまり、パワーマネジメント)するとして説明するが、これに限定される訳ではない。
また、本実施例において、本発明のタイマ値生成装置は、その他ECU700に搭載されるとして説明を行う。しかし、これに限定される訳ではなく、ECU100から600に搭載される構成を採用できる。よって、ECU100から700の構成及は、ほぼ同様であるため、以下、その他ECU700の構成について説明する。
In addition, the ECU 700 controls devices other than the devices that the ECUs 100 to 600 control. In the present embodiment, the other ECU 700 is described as controlling (that is, power management) the discharging and charging of the storage battery 10 mounted on the vehicle, but is not limited thereto.
In the present embodiment, the timer value generation device of the present invention will be described as being mounted on the ECU 700. However, the present invention is not limited to this, and a configuration mounted on ECUs 100 to 600 can be adopted. Therefore, the configuration of ECUs 100 to 700 is substantially the same, and therefore the configuration of other ECU 700 will be described below.

ここで、図2を参照して、その他ECU700の構成について説明する。図2は、その他ECU700の一構成例を表すハードウェア構成図である。
図2に示すその他ECU700は、車両が搭載する各種センサ、イグニッションスイッチ、各種アクチュエータ、蓄電池10、及びCANバスBCに接続する。
Here, with reference to FIG. 2, the configuration of the other ECU 700 will be described. FIG. 2 is a hardware configuration diagram illustrating another configuration example of the ECU 700.
The other ECU 700 shown in FIG. 2 is connected to various sensors, ignition switches, various actuators, the storage battery 10 and the CAN bus BC mounted on the vehicle.

ここで、その他ECU700について説明する前に、その他ECU700に接続する蓄電池10等について説明する。
蓄電池10は、例えば、鉛蓄電池等の一般型のバッテリで構成される。蓄電池10は、その他ECU700を含む車両に搭載された各種の装置に対して電力を供給する。尚、本実施例において、蓄電池10は、鉛蓄電池等の一般型のバッテリで構成されるとして説明したが、これに限定される訳ではない。例えば、蓄電池10は、レドックス・フロー電池等の液循環型のバッテリ、アルミニウム・空気電池等のメカニカルチャージ型のバッテリ、及びナトリウム・硫黄電池等の高温動作型のバッテリである構成を採用できる。
Here, before describing the other ECU 700, the storage battery 10 and the like connected to the other ECU 700 will be described.
The storage battery 10 is composed of a general battery such as a lead storage battery, for example. The storage battery 10 supplies power to various devices mounted on the vehicle including the ECU 700. In the present embodiment, the storage battery 10 has been described as being constituted by a general type battery such as a lead storage battery, but is not limited thereto. For example, the storage battery 10 can be configured to be a liquid circulation type battery such as a redox flow battery, a mechanical charge type battery such as an aluminum / air battery, and a high temperature operation type battery such as a sodium / sulfur battery.

イグニッションスイッチは、一般に、エンジンキーの回転により、エンジンの点火装置(つまり、イグニッション)を起動させる信号が通過する電路を開く開閉器である。各種センサは、例えば、蓄電池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 storage battery 10 such as the temperature near the storage battery 10, the current flowing out from the storage battery 10, and the engine speed to the ECU 700. The various actuators operate devices related to discharging and charging of the storage battery 10 according to other signals output from the ECU 700, for example.

次に、その他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 other ECU 700 will be described. In addition, the ECU 700 includes a power supply IC 710 (Integrated Circuit), a signal shaping level conversion unit 720, a transmission circuit 730, an output circuit 740, and a microcomputer 750.
The power supply IC 710 is connected to the storage battery 10, the microcomputer 750, and the ignition switch. The power supply IC 710 has a power generation function and a monitoring function. The power supply generation function is a function of generating a power supply that supplies power used by the microcomputer 750 using power supplied from the storage battery 10 based on a signal acquired from the ignition switch. The monitoring function is a function for outputting a reset signal for instructing the microcomputer 750 to restart based on a watch dog clock WDC (Watch Dog Clock) output from the microcomputer 750.

信号成型レベル変換部720は、各種センサ及びマイコン750に接続している。信号成型レベル変換部720は、各種センサが出力する信号を成型すると共に、成型した信号をマイコン750の処理に適したレベルに変換する。その後、信号成型レベル変換部720は、変換した信号をマイコン750へ出力する。具体的には、信号成型レベル変換部720は、各種センサが出力する信号をA/D(Analog/Digital)変換等したデジタル信号の入力、パルス入力、又はポート入力を行う。   The signal shaping level conversion unit 720 is connected to various sensors and the microcomputer 750. The signal shaping level conversion unit 720 forms signals output from various sensors and converts the formed signals to a level suitable for the processing of the microcomputer 750. Thereafter, the signal shaping level conversion unit 720 outputs the converted signal to the microcomputer 750. Specifically, the signal shaping level conversion unit 720 performs input of a digital signal obtained by performing A / D (Analog / Digital) conversion on a signal output from various sensors, pulse input, or port input.

発振回路730は、例えば、帰還型発振回路又は弛張型発振回路等で構成される。尚、帰還型発振回路は、例えば、固体振動子発振回路、CR発振回路、又はLC反結合発振回路等である構成を採用できる。更に、固体振動子発振回路は、例えば、水晶振動子又はセラミック発振子等を用いた回路である構成を採用できる。発振回路730は、本件発明のタイマが計測できる最も短い時間を定める所定の周波数を有した電気信号をマイコン750へ出力する。   The oscillation circuit 730 is configured by, for example, a feedback oscillation circuit or a relaxation oscillation circuit. The feedback oscillation circuit can employ a configuration such as a solid oscillator oscillation circuit, a CR oscillation circuit, or an LC anti-coupling oscillation circuit. Furthermore, the solid oscillator oscillation circuit may employ a configuration that is a circuit using, for example, a crystal oscillator or a ceramic oscillator. The oscillation circuit 730 outputs an electrical signal having a predetermined frequency that determines the shortest time that can be measured by the timer of the present invention to the microcomputer 750.

出力回路740は、ハードウェア回路で構成される。出力回路740は、マイコン750、CANバスBC、及び各種アクチュエータに接続する。出力回路740は、マイコン750が蓄電池10の放電又は充電を制御する制御処理を実行することでポート出力、シリアル出力、PWM(Pulse Width Modulation)出力する信号を各種アクチュエータへ出力する、又は出力するデータをCANバスBCを介して他のECU100から600へ送信する。
マイコン750は、電源IC710、信号成型レベル変換部720、発振回路730、及び出力回路に接続する。マイコン750は、本発明のタイマ値生成装置である。
The output circuit 740 is configured by a hardware circuit. The output circuit 740 is connected to the microcomputer 750, the CAN bus BC, and various actuators. The output circuit 740 outputs data to be output to various actuators by outputting a port output, serial output, PWM (Pulse Width Modulation) output signal to the various actuators when the microcomputer 750 executes control processing for controlling the discharging or charging of the storage battery 10. Is transmitted from the other ECUs 100 to 600 via the CAN bus BC.
The microcomputer 750 is connected to the power supply IC 710, the signal shaping level conversion unit 720, the oscillation circuit 730, and the output circuit. The microcomputer 750 is a timer value generation device of the present invention.

ここで、図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 microcomputer 750 will be described with reference to FIG. FIG. 3 is a hardware configuration diagram illustrating a configuration example of the microcomputer 750.
A microcomputer 750 shown in FIG. 3 is a 16-bit microcomputer. The microcomputer 750 includes a frequency divider 751, a first timer 752a, a second timer 752b, and a software processing unit 753.
The frequency divider 751 is connected to the oscillation circuit 730 and the first timer 752a. The frequency divider 751 converts the electrical signal having a predetermined frequency acquired from the oscillation circuit 730 into a signal having a lower frequency. Thereafter, the frequency divider 751 outputs the converted frequency signal to the first timer 752a.

第1タイマ752aは、16ビットのフリーランタイマレジスタと、タイマレジスタの値を変更する周辺回路とで構成される。第1タイマ752aは、分周器751、第2タイマ752b、及びソフトウェア処理部753に接続する。第1タイマ752aは、後述するソフトウェア処理部753が報知する時刻を表す32ビットのデータの下位ビットに用いられるデータをソフトウェア処理部753へ提供する。尚、ソフトウェア処理部753が報知する時刻を、以下単に、タイマ時刻という。また、タイマ時刻を表す32ビットのデータを、以下単に、32ビット時刻データという。更に、32ビット時刻データの下位ビットに用いられるデータを、以下単に、下位16ビット時刻データという。   The first timer 752a includes a 16-bit free-run timer register and a peripheral circuit that changes the value of the timer register. The first timer 752a is connected to the frequency divider 751, the second timer 752b, and the software processing unit 753. The first timer 752a provides the software processing unit 753 with data used for the lower bits of 32-bit data representing the time notified by the software processing unit 753 described later. The time notified by the software processing unit 753 is hereinafter simply referred to as timer time. The 32-bit data representing the timer time is hereinafter simply referred to as 32-bit time data. Further, the data used for the lower bits of the 32-bit time data is hereinafter simply referred to as lower 16-bit time data.

具体的には、第1タイマ752aは、分周器751が電気信号を出力する周期「LSB:125ns」で、タイマレジスタの値を値「0xFFFF」から「0x0000」まで値「0x0001」刻みで減少させる。ここで、第1タイマ752aは、アンダーフローが発生した場合に(つまり、「LSB:192ms」周期で)、桁上りの発生を報告する信号を第2タイマ752bへ出力する。
本実施例において、第1タイマ752aは、分周器751が出力する信号の発振回数を減算処理により計数し、計数した値をタイマレジスタに保存するとして説明するが、これに限定される訳ではなく、発振回数を加算処理により計数する構成を採用できる。
Specifically, the first timer 752a decreases the value of the timer register from the value “0xFFFF” to “0x0000” in increments of the value “0x0001” in the cycle “LSB: 125 ns” when the frequency divider 751 outputs the electric signal. Let Here, when an underflow occurs (that is, in the “LSB: 192 ms” cycle), the first timer 752a outputs a signal reporting the occurrence of a carry to the second timer 752b.
In the present embodiment, the first timer 752a is described as counting the number of oscillations of the signal output from the frequency divider 751 by subtraction processing and storing the counted value in the timer register. However, the present invention is not limited to this. Instead, it is possible to employ a configuration in which the number of oscillations is counted by addition processing.

第2タイマ752bは、第1タイマ752aと同様の構成を有する。第2タイマ752bは、第1タイマ752a及びソフトウェア処理部753に接続する。第2タイマ752bは、上位ビットに用いられるデータ(以下単に、上位16ビット時刻データという)をソフトウェア処理部753へ提供する。具体的には、第2タイマ752bは、第1タイマ752aから桁上りというイベントの発生を報告する信号を受け取った場合に、タイマレジスタの値を値「0xFFFF」から「0x0000」まで値「0x0001」刻みで減少させる。   The second timer 752b has a configuration similar to that of the first timer 752a. The second timer 752b is connected to the first timer 752a and the software processing unit 753. The second timer 752b provides data used for the upper bits (hereinafter simply referred to as upper 16-bit time data) to the software processing unit 753. Specifically, when the second timer 752b receives a signal reporting the occurrence of a carry event from the first timer 752a, the second timer 752b changes the value of the timer register from the value “0xFFFF” to “0x0000”. Decrease in increments.

本実施例において、第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 second timer 752b indicates the number of times that the number of oscillations of the signal output from the frequency divider 751 exceeds the expression range of the timer register of the first timer first timer 752a (that is, the number of underflows). Although description will be made assuming that counting is performed by the subtraction process and the counted value is stored in the timer register, the present invention is not limited to this, and a configuration in which the excess number is counted by the addition process can be employed.
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 first timer 752a, the second timer 752b, the power supply IC 710, the signal shaping level conversion unit 720, and the output circuit 740. The software processing unit 753 performs software processing described later using data acquired from the first timer 752a and the like.
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 RAM 752b (Random Access Memory), a ROM 753c (Read-Only Memory), an input microcomputer peripheral resource 753d, and an output microcomputer peripheral resource 753e. The microcomputer peripheral resource for output 753e from the execution unit 753a constituting the software processing unit 753 is connected so as to be able to exchange data via a bus.

ソフトウェア処理部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 RAM 752b or the ROM 753c. Next, the execution unit 753a performs operations on various sensor values input by an input microcomputer peripheral resource 753d described later in accordance with a software process execution procedure represented by the read program. Thereafter, the execution unit 753a writes the calculation result in the RAM 752b and outputs it to the output microcomputer peripheral resource 753e as necessary. The execution unit 753a restarts upon receiving a reset signal input by the input microcomputer peripheral resource 753d.

尚、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 RAM 752b (Random Access Memory) includes a volatile memory such as a DRAM (Dynamic Random Access Memory) or SRAM (Static RAM) and a non-volatile memory such as an NVRAM (Non Volatile RAM). The ROM 753c (Read-Only Memory) includes a read-only memory such as an EPROM (Erasable Programmable Read-Only Memory) or an EEPROM (Electrically Erasable Programmable Read-Only Memory). The input microcomputer peripheral resource 753d and the output microcomputer peripheral resource 753e are composed of registers and peripheral circuits that manage register values. The input microcomputer peripheral resource 753d inputs various sensor values input by the signal shaping level conversion unit 720 and a reset signal output by the power supply IC 710 to the execution unit 753a. Further, the output microcomputer peripheral resource 753e outputs a signal output from the execution unit 753a to the output circuit 740 or the power supply IC 710.

次に、図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 alarm time unit 753f, a watchdog operation unit 753g, a control unit 753h, an output unit 753i, and an input unit 753j. The reporting time unit 753f is connected to the first timer 752a, the second timer 752b, the watch dog operation unit 753g, and the control unit 753h. The reporting time unit 753f notifies the timer time represented by the third timer value, which is 32-bit time data, by executing the reporting process.

ここで、本発明のタイマ値生成装置を構成する報時部753fが実行する報時処理について説明する前に、図5を参照して、周知の報時部953fが実行する報時処理について説明する。図5(a)は、周知の報時部953fが実行する報時処理の一例を表すフローチャートである。尚、周知の報時部953fは、周知のタイマ値生成装置である32ビットマイコンに搭載される32ビットタイマ952が提供するデータに基づいて時刻を報知する。   Here, before explaining the reporting process executed by the reporting unit 753f constituting the timer value generating apparatus of the present invention, the reporting process executed by the known reporting unit 953f will be described with reference to FIG. To do. FIG. 5A is a flowchart showing an example of a time information process executed by a known time information unit 953f. The well-known time information unit 953f notifies the time based on data provided by a 32-bit timer 952 mounted on a 32-bit microcomputer that is a well-known timer value generation device.

先ず、報時部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 control unit 753h and the watchdog operation unit 753g shown in FIG. 4 (step S03). Thereafter, the reporting unit 953f ends the execution of the reporting process.

次に、従来の報時部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 microcomputer 750 of the present invention. Therefore, the time information processing performed by the conventional time information unit 853f is different from the time information processing performed by the known time information unit 953f in the following steps S11 to S13.

先ず、報時部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 first timer 852a, which is a 16-bit timer (step S11). . Next, the reporting unit 853f reads the second timer value (that is, the upper 16-bit time data) of the 16-bit free-run timer register managed by the second timer 852b, which is a 16-bit timer (step S12). Note that the configurations of the first timer 852a and the second timer 852b are the same as the configurations of the first timer 952a and the second timer 952b, and thus the description thereof is omitted.

その後、報時部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 first timer 852a. In FIG. 6A, the horizontal axis represents time, and the vertical axis represents lower 16-bit data values represented by the free-run timer register. As shown in FIG. 6A, before time t01, the value of the lower 16-bit data takes the maximum value “0xFFFFFF” that can be expressed by 16 bits. Next, when the frequency divider 751 outputs a signal at time t01, the value of the lower 16-bit data is changed to a value lower by “0x0001” by the first timer 852a that has received the signal. Thereafter, the lower 16-bit data value is subtracted every time the frequency divider 751 outputs a signal until it becomes “0x0001”. Next, when the frequency divider 751 outputs a signal at time t10, since the lower 16-bit data of the value “0x0001” exceeds the value expression range, the first timer 852a performs initialization processing, and the maximum The value is initialized to “0xFFFFFF”. At time t10, the first timer 852a that has received the signal from the frequency divider 751 generates an underflow and also sends a signal reporting the occurrence of a carry (that is, exceeding the expression range) to the second timer 852b. Output.

図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 second timer 852b. In FIG. 6B, the horizontal axis represents time, and the vertical axis represents the value of upper 16-bit data represented by the free-run timer register. As shown in FIG. 6B, the value of the upper 16-bit data takes the maximum value “0xFFFFFF” that can be expressed by 16 bits before time t10. Next, when the first timer 852a outputs a signal reporting the occurrence of a carry at time t10, the value of the upper 16-bit data is changed to a value lower by “0x0001” by the second timer 852b that has received the signal. The Thereafter, the value of the upper 16-bit data is similarly subtracted until it becomes “0x0001”.

図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 timekeeping unit 753f configuring the software processing unit 853. In FIG. 6C, the horizontal axis represents time, and the vertical axis represents timer time. As shown in FIG. 6C, the 32-bit time data indicating the timer time is data obtained by combining the lower 16-bit data and the upper 16-bit data at each time. Therefore, when the frequency divider 751 outputs a signal to the first timer 852a, in principle, the value of the 32-bit time data after output must be increased by the value “0x0000 0001” from the value before the signal is output.

しかし、報時部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 first timer 852b is read after reading the first timer 852a in step S11. An overflow of 852a and an update of the second timer 852b may occur. At this specific timing, the value of the first timer 852a before overflow and the value of the second timer 852b after overflow are combined. Therefore, since the reporting time unit 853f generates an abnormal timer time at this specific timing, there is a problem that the time cannot be provided with high accuracy.

具体的には、時刻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 first timer 852a immediately before the time t10 and reads the second timer 852b immediately after the time t10, the first timer 852a before the overflow has occurred. The timer value “0x0001” and the second timer value “0xFFFE” of the second timer 852b after overflowing are combined. Therefore, there is a problem that the reporting unit 853f generates an abnormal value “0x0001 FFFE” instead of the normal third timer value “0x0000 FFFE”.

次に、図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 time information unit 753f constituting the microcomputer 750 which is the timer value generation device of the present invention will be outlined. FIG. 7 is a diagram for illustrating an example of the time information processing executed by the time information unit 753f. 7A to 7C are substantially the same as FIGS. 6A to 6C, and detailed description thereof will be omitted.
First, the reporting unit 753f reads the first timer value from the first timer 952a. Next, the reporting unit 753f reads the second timer value from the second timer 952b. Thereafter, the reporting unit 753f reads the first timer value again.

ここで、第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 timekeeping unit 753f reads the first timer 952a and then reads the second timer value. It can be determined whether or not a carry has occurred before reading 952b.

この構成によれば、先に読出した第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 reporting unit 753f determines whether or not a carry has occurred before reading the second timer 952b after reading the first timer 952a. Can be judged.

この構成によれば、先に読出した第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 reporting unit 753f will be described with reference to FIG. 8 before describing the reporting process executed by the reporting unit 753f. FIG. 8 is a functional block diagram illustrating a configuration example of the reporting unit 753f.
The reporting unit 753f includes a reading unit 753k, a detection unit 7531, a generation unit 753m, a reversing unit 753n, and a disclosure unit 753o. The reading unit 753k is connected to the first timer 752a, the second timer 752b, and the detection unit 7531. The reading unit 753k is realized by the execution unit 753a executing the reading process. The reading unit 753k reads the first timer value and the second timer value from the first timer 752a and the second timer 752b, and outputs the read values to the detection unit 7531.

検出部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 detection unit 7531 is connected to the reading unit 753k and the generation unit 753m. The detection unit 753l is realized by the execution unit 753a executing the detection process. First, the detecting unit 7531 calculates the difference between the first timer value read again after reading the first timer value and the second timer value read by the reading unit 753k, and the first timer value read first. Next, the detection unit 7531 determines whether or not the calculated difference is a difference caused by the subtraction process or addition process performed by the first timer 752a and determines that the difference is not a difference caused by the subtraction process or addition process. In this case, the abnormality of the third timer value generated by the generation unit 753m described later is detected. If no abnormality is detected, the detection unit 7531 outputs the first timer value and the second timer value acquired from the reading unit 753k to the generation unit 753m. In addition, when detecting an abnormality, the detection unit 7531 controls the reading unit 753k to read the first timer value and the second timer value again, and then transmits the value acquired from the reading unit 753k to the generation unit 753m. Output. As shown in FIG. 7, the detection unit 7531l determines whether the first timer value read at the first time is smaller than the first timer value read at the second time, or the first timer read at the first time. An abnormality is detected based on whether or not the difference between the value and the first timer value read for the second time is lower than a predetermined value.

生成部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 detection unit 7531 generates a third timer value based on the first timer value and the second timer value acquired from the detection unit 7531, and outputs the generated value to the inversion unit 753n.
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 control unit 753h. The disclosure unit 753o is realized by the execution unit 753a executing the disclosure process. The disclosure unit 753o discloses (notifies) the timer time acquired from the reversing unit 753n to the watch dog operation unit 753g and the control unit 753h.

次に、図9を参照して、報時部753fが実行する報時処理について説明する。図9は、報時部753fが実行する報時処理の一例を表すフローチャートである。尚、報時部753fは、ウォッチドッグ操作部753g及び制御部753hが時刻の報知を要求する場合に報時処理を実行する。   Next, with reference to FIG. 9, the reporting process executed by the reporting unit 753f will be described. FIG. 9 is a flowchart showing an example of a time information process executed by the time information unit 753f. The reporting unit 753f executes the reporting process when the watchdog operation unit 753g and the control unit 753h request notification of time.

先ず、報時部753fは、他のソフトウェア処理の割込み実行を禁止する割込禁止処理を実行する(ステップS21)。後述するステップS22からS28の処理を遅延無く連続して処理するためである。次に、報時部753fは、変数11に対して第1タイマ752aから読出した第1タイマ値を代入する(ステップS22)。その後、報時部753fは、変数2に対して第2タイマ752bから読出した第2タイマ値を代入する(ステップS23)。次に、報時部753fは、変数12に対して第1タイマ752aから再度読出した第1タイマ値を代入する(ステップS24)。   First, the reporting unit 753f executes an interrupt prohibition process that prohibits interrupt execution of other software processes (step S21). This is because the processing of steps S22 to S28 described later is continuously performed without delay. Next, the reporting unit 753f substitutes the first timer value read from the first timer 752a for the variable 11 (step S22). Thereafter, the reporting unit 753f substitutes the second timer value read from the second timer 752b for the variable 2 (step S23). Next, the reporting unit 753f substitutes the first timer value read again from the first timer 752a for the variable 12 (step S24).

その後、報時部753fは、変数11の値が変数12の値よりも小さいか否かを判断する(ステップS25)。また、報時部753fは、変数11の値と変数12の値の差異が所定値を超えるか否かを判断しても良い。つまり、報時部753fは、第1タイマ752aでアンダーフローが発生したか否かを判断する。報時部753fは、アンダーフローが発生したと判断する場合にはステップS26の処理を、そうでない場合にはステップS29の処理を実行する。   Thereafter, the reporting unit 753f determines whether or not the value of the variable 11 is smaller than the value of the variable 12 (step S25). The reporting unit 753f may determine whether or not the difference between the value of the variable 11 and the value of the variable 12 exceeds a predetermined value. That is, the reporting unit 753f determines whether or not an underflow has occurred in the first timer 752a. The reporting unit 753f executes the process of step S26 when determining that an underflow has occurred, and executes the process of step S29 otherwise.

ステップ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 reporting unit 753f detects that the third timer value generated from the first timer value and the second timer value that have already been acquired becomes abnormal. (Step S26). Next, the reporting unit 753f substitutes the second timer value after underflow read again from the second timer 752b for the variable 2 (step S27). Next, the reporting unit 753f substitutes again the first timer value after the underflow for the variable 12 (step S28).

この構成によれば、第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 reporting unit 753f determines that no underflow has occurred, or after executing step S28, it executes a prohibition canceling process for canceling prohibition of interrupt execution (step S29). Thereafter, the reporting unit 753f combines the 16-bit lower data representing the first timer value stored in the variable 12 and the 16-bit higher data representing the second timer value stored in the variable 2 to obtain the third timer value. Is generated (step S30). Next, the reporting unit 753f executes the processing of Step S31 and Step S32 (Step S31 and Step S32). Thereafter, the reporting unit 753f ends the execution of the reporting process. Note that the processing in step S31 and step S32 is the same as the processing in step S14 and step S15 in FIG.

この構成によれば、発振回数が第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 unit 753k, the processes in steps S25 and S26 correspond to a detection process that realizes the detection unit 7531, and the process in step S30. The process corresponds to a generation process that realizes the generation unit 753m, the process in step S31 corresponds to an inversion process that realizes the inversion part 753n, and the process in step S32 corresponds to a disclosure process that realizes the disclosure unit 753o.

ここで、図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 reporting unit 753f and the output unit 753i. The watchdog operation unit 753g executes an operation process, and performs a watchdog operation (that is, output of the watchdog clock WDC) to the power supply IC 710 via the output unit 753i based on the time notified by the reporting unit 753f. Do.
The control unit 753h is connected to the reporting unit 753f, the output unit 753i, and the input unit 753j. The control unit 753h executes the control process, thereby obtaining data or signals for controlling the storage or discharge of the storage battery 10 based on the time notified by the reporting unit 753f and the values of various sensors input by the input unit 753j. Output to the output unit 753i.

出力部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 peripheral resource 753e. The output unit 753 i is connected to the power supply IC 710 and the output circuit 740. The output unit 753i outputs the pulse signal WDC output from the watchdog operation unit 753g to the power supply IC 710. Further, the output unit 753i outputs a signal or data output from the control unit 753h to the output circuit 740 through port output, serial output, or PWM output.
The input unit 753j is composed of, for example, an input microcomputer peripheral resource 753d. The input unit 753j is connected to the control unit 753h and the signal shaping level conversion unit 720. The input unit 753j inputs the values of various sensors to which the signal shaping level conversion unit 720 inputs pulses and the like to the control unit 753h.

尚、本実施例においては、マイコン750がタイマ値生成装置に相当する。また本件発明に係るタイマ値生成方法は、マイコン750を用いて実施できる。
更に、本実施例において、第1タイマ752aが第1タイマ値を減算又は加算する処理を実行するステップが第1生成ステップに相当し、第2タイマ752b第2タイマ値を減算又は加算する処理を実行するステップが第2生成ステップに相当し、実行部753aが生成処理を実行するステップが第3生成ステップに相当する。
In this embodiment, the microcomputer 750 corresponds to a timer value generating device. The timer value generation method according to the present invention can be implemented using the microcomputer 750.
Furthermore, in the present embodiment, the step in which the first timer 752a performs the process of subtracting or adding the first timer value corresponds to the first generation step, and the process of subtracting or adding the second timer value in the second timer 752b. The step to be executed corresponds to the second generation step, and the step in which the execution unit 753a executes the generation process corresponds to the third generation step.

マイコン750が備えるソフトウェア処理部753が実行する処理を表すプログラムは、磁気ディスクや光ディスク、半導体メモリ、その他の記録媒体に格納して配布したり、ネットワークを介して配信したりすることにより提供できる。   A program representing processing executed by the software processing unit 753 included in the microcomputer 750 can be provided by being stored and distributed in a magnetic disk, optical disk, semiconductor memory, or other recording medium, or distributed via a network.

また、マイコン750がソフトウェア処理を実行することで実現する機能の一部又は全部は、ハードウェア回路を用いて実現することができる。逆に、マイコン750がハードウェア回路を用いて実現する機能の一部又は全部は、ソフトウェア処理を実行することで実現することができる。   Moreover, a part or all of the functions realized by the microcomputer 750 executing software processing can be realized using a hardware circuit. Conversely, part or all of the functions realized by the microcomputer 750 using the hardware circuit can be realized by executing software processing.

以上本発明の好ましい実施例について詳述したが、本発明は係る特定の実施例に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形、変更が可能である。   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.

本発明のタイマ値生成装置を内蔵した制御装置で構成される制御システムの一実施形態を示す構成図である。It is a block diagram which shows one Embodiment of the control system comprised with the control apparatus incorporating the timer value generation apparatus of this invention. その他ECUの一構成例を表すハードウェア構成図である。It is a hardware block diagram showing the other structural example of ECU. マイコンの一構成例を表すハードウェア構成図である。It is a hardware block diagram showing the example of 1 structure of a microcomputer. ソフトウェア処理部の一構成例を表す機能ブロック図である。It is a functional block diagram showing the example of 1 composition of a software processing part. 従来の報時部が実行する報時処理の一例を表すフローチャートである。It is a flowchart showing an example of the time information processing which the conventional time information part performs. 従来の報時部が実行する報時処理の問題点の一例を表す図である。It is a figure showing an example of the problem of the time information processing which the conventional time information part performs. 報時部が実行する報時処理の一例について概説するための図である。It is a figure for giving an outline about an example of the time information processing which an information time part performs. 報時部の一構成例を表す機能ブロック図である。It is a functional block diagram showing an example of 1 composition of an information time part. 報時部が実行する報時処理の一例を表すフローチャートである。It is a flowchart showing an example of the time information process which a time information part performs.

符号の説明Explanation of symbols

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 ... Control system 10 ... Storage battery
100-700 ... ECU 710 ... Power supply IC
720 ... Signal shaping level conversion unit 730 ... Oscillation circuit
740 ... Output circuit 750 ... Microcomputer (timer value generator)
751 ... Frequency divider 752a ... First timer ...
752b ... second timer 753 ... software processing section
753a ... execution unit 753b ... RAM
753c ... ROM 753d ... Peripheral resource for input
753e ... Peripheral resource for output 753f ... Reporting time
753g ... watchdog operation part 753h ... control part
753i ... Output unit 753j ... Input unit
753k ... Reading unit 753l ... Detecting unit
753m ... generating unit 753n ... reversing unit
753o ... notification unit 852a ... 16 bit timer 852b ... 16 bit timer 853 ... software processing unit
853e ... Reporting time part 952 ... 32-bit timer
953 ... Software processing section BC ... CAN bus

Claims (5)

所定周期で入力される信号を、減算処理又は加算処理のいずれか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タイマ値の異常を検出する検出部を更に備えることを特徴とするタイマ値生成装置。
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タイマ値に基づいて、前記第3タイマ値を生成することを特徴とする請求項1に記載のタイマ値生成装置。   The said generation part produces | generates a said 3rd timer value based on the 1st timer value read again and the 2nd timer value read again, when the said detection part detects abnormality. 1. The timer value generation device according to 1. 前記第1タイマ及び前記第2タイマは、ハードウェア回路で構成され、
前記生成部は、ソフトウェア処理で実現されることを特徴とする請求項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.
前記検出部は、前記差異が所定値を超える場合に、前記生成部が生成する第3タイマ値の異常を検出することを特徴とする請求項1から3のいずれかに記載のタイマ値生成装置。   4. The timer value generation device according to claim 1, wherein the detection unit detects an abnormality of a third timer value generated by the generation unit when the difference exceeds a predetermined value. 5. . 所定周期で入力される信号を、減算処理又は加算処理のいずれか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タイマ値の異常を検出する検出ステップを更に備えることを特徴とするタイマ値生成方法。

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.

JP2008285867A 2008-11-06 2008-11-06 Timer value generation device and timer value generation method Pending JP2010113544A (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (4)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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