JP7517188B2 - Engine Control Unit - Google Patents
Engine Control Unit Download PDFInfo
- Publication number
- JP7517188B2 JP7517188B2 JP2021016686A JP2021016686A JP7517188B2 JP 7517188 B2 JP7517188 B2 JP 7517188B2 JP 2021016686 A JP2021016686 A JP 2021016686A JP 2021016686 A JP2021016686 A JP 2021016686A JP 7517188 B2 JP7517188 B2 JP 7517188B2
- Authority
- JP
- Japan
- Prior art keywords
- transfer
- unit
- timing
- processing
- calculation unit
- 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.)
- Active
Links
- 238000012546 transfer Methods 0.000 claims description 504
- 238000000034 method Methods 0.000 claims description 287
- 238000012545 processing Methods 0.000 claims description 171
- 238000010586 diagram Methods 0.000 description 10
- 230000000694 effects Effects 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 9
- 230000000630 rising effect Effects 0.000 description 9
- 239000000446 fuel Substances 0.000 description 7
- 238000002347 injection Methods 0.000 description 7
- 239000007924 injection Substances 0.000 description 7
- 238000005259 measurement Methods 0.000 description 6
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 2
- 238000003708 edge detection Methods 0.000 description 2
- 101150065817 ROM2 gene Proteins 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 238000002485 combustion reaction Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Combined Controls Of Internal Combustion Engines (AREA)
Description
本開示は、エンジン制御装置に関する。 This disclosure relates to an engine control device.
エンジン制御装置の一例として、特許文献1に開示された内燃機関の制御装置がある。この制御装置は、各気筒における所定CA(Crank Angle)の所要時間の平均値に基づいてクランク軸回転速度の変動を予測する。そして、制御装置は、予測したクランク軸の回転速度の変動に基づいて次サイクルの所要時間を予測することで燃料噴射時期を制御する。
One example of an engine control device is a control device for an internal combustion engine disclosed in
ところで、上記のような制御装置では、センサからマイコンに入力されるアナログ信号がADC(Analog Digital Converter)を介してデジタルデータに変換される。そして、制御装置は、このデータがDMAC(Direct Memory Access Controller)によってADCからRAMに転送されてRAMに格納される。また、制御装置は、角度割込みに同期してCPUのコアが演算を開始し、RAMに格納されたデータを読み込む。 In the control device described above, the analog signal input from the sensor to the microcomputer is converted to digital data via an ADC (Analog Digital Converter). Then, in the control device, this data is transferred from the ADC to RAM by a DMAC (Direct Memory Access Controller) and stored in the RAM. In addition, in the control device, the CPU core starts calculations in synchronization with an angle interrupt and reads the data stored in the RAM.
しかしながら、エンジン制御装置では、エンジン制御の高度化に起因して、センサ数の増加や高サンプリングレート化によるデータ処理の複雑化およびデータ量の増大化の傾向がある。よって、エンジン制御装置では、コアがRAMに格納されたデータの読み込みに要するレイテンシが増大する。このため、エンジン制御装置は、角度割込みまでに、前回の角度割込みに同期した処理が終わらない可能性がある。 However, in engine control devices, the more sophisticated engine control is leading to an increase in the number of sensors and a higher sampling rate, which makes data processing more complicated and increases the amount of data. As a result, in engine control devices, the latency required for the core to read data stored in the RAM increases. For this reason, the engine control device may not be able to complete processing synchronized with the previous angle interrupt by the time of the angle interrupt.
開示される一つの目的は、次の処理タイミングまでに処理を終了しやすくできるエンジン制御装置を提供することである。 One disclosed objective is to provide an engine control device that makes it easier to complete processing before the next processing timing.
ここに開示されたエンジン制御装置は、
エンジンのクランク軸の角度に同期して処理を行うエンジン制御装置であって、
角度に応じた角度信号を取得する取得部(31)と、
処理に用いる少なくとも一つのデータを記憶している記憶装置(3)と、
角度信号に同期して処理を実行する少なくとも一つの演算部(11,12)と、演算部が記憶装置にアクセスする場合よりも短時間でアクセス可能な少なくとも一つの記憶部(13,13a,13b)とを有する演算処理装置(1)と、
演算部が実行予定の処理に用いるデータである使用データを、実行予定の処理で必要となるタイミングよりも前に、予め記憶装置から記憶部に転送する転送部(4,5)と、を備え、
転送部は、
角度信号が入力される予測周期を予測する予測部(412)と、
予測周期に基づいて、使用データの転送を開始する転送タイミングを取得するタイミング取得部(42a)と、を備え、
タイミング取得部は、記憶装置から記憶部への使用データの転送時間に相当する予め決められた転送規定時間を、予測周期から減算することで、転送タイミングを取得する。
The engine control device disclosed herein comprises:
An engine control device that performs processing in synchronization with an angle of an engine crankshaft,
An acquisition unit (31) that acquires an angle signal according to an angle;
A storage device (3) for storing at least one piece of data to be used in processing;
A processing device (1) having at least one calculation unit (11, 12) that executes processing in synchronization with an angle signal, and at least one memory unit (13, 13a, 13b) that can be accessed in a shorter time than when the calculation unit accesses a memory device;
a transfer unit (4, 5) for transferring use data, which is data used by the calculation unit for a process to be executed, from the storage device to the storage unit in advance of a timing when the use data is required for the process to be executed ;
The transfer section is
A prediction unit (412) for predicting a predicted period in which an angle signal is input;
a timing acquisition unit (42a) for acquiring a transfer timing for starting transfer of the usage data based on the predicted period;
The timing acquisition unit acquires the transfer timing by subtracting a predetermined transfer specified time, which corresponds to the transfer time of the usage data from the storage device to the storage unit, from the predicted period .
これにより、演算部は、角度に同期して処理を行う際に、記憶部から使用データを読み込む。このため、演算部は、記憶装置から使用データを読み込む場合よりも、短時間で使用データを読み込むことができる。よって、エンジン制御装置は、角度に同期した次の処理タイミングまでに演算部による処理を終了しやすくできる。
さらに、ここに開示されたエンジン制御装置は、
エンジンのクランク軸の角度に同期して処理を行うエンジン制御装置であって、
角度に応じた角度信号を取得する取得部(31)と、
処理に用いる少なくとも一つのデータを記憶している記憶装置(3)と、
角度信号に同期して処理を実行する少なくとも一つの演算部(11,12)と、演算部が記憶装置にアクセスする場合よりも短時間でアクセス可能な少なくとも一つの記憶部(13,13a,13b)とを有する演算処理装置(1)と、
演算部が実行予定の処理に用いるデータである使用データを、実行予定の処理で必要となるタイミングよりも前に、予め記憶装置から記憶部に転送する転送部(4,5)と、を備え、
転送部は、
角度信号が入力される予測周期を予測する予測部(412)と、
予測周期に基づいて、使用データの転送を開始する転送タイミングを取得するタイミング取得部(42a)と、を備え、
タイミング取得部は、予め決められたデータの基本転送時間と、実行予定の処理の数との乗算を行うことで、記憶装置から記憶部へ使用データを転送するのに要する合計転送時間を算出し、合計転送時間を予測周期から減算することで、転送タイミングを取得する。
さらに、ここに開示されたエンジン制御装置は、
エンジンのクランク軸の角度に同期して処理を行うエンジン制御装置であって、
角度に応じた角度信号を取得する取得部(31)と、
処理に用いる少なくとも一つのデータを記憶している記憶装置(3)と、
角度信号に同期して処理を実行する少なくとも一つの演算部(11,12)と、演算部が記憶装置にアクセスする場合よりも短時間でアクセス可能な少なくとも一つの記憶部(13,13a,13b)とを有する演算処理装置(1)と、
演算部が実行予定の処理に用いるデータである使用データを、実行予定の処理で必要となるタイミングよりも前に、予め記憶装置から記憶部に転送する転送部(4,5)と、を備え、
転送部は、
角度信号が入力される予測周期を予測する予測部(412)と、
予測周期に基づいて、使用データの転送を開始する転送タイミングを取得するタイミング取得部(42a)と、を備え、
タイミング取得部は、予め決められたデータの基本転送時間と、実行予定の処理で用いられる使用データに固有の転送時間情報の乗算を行うことで、記憶装置から記憶部へ使用データを転送するのに要する合計転送時間を算出し、合計転送時間を予測周期から減算することで、転送タイミングを取得する。
As a result, the calculation unit reads the usage data from the storage unit when performing processing in synchronization with the angle. Therefore, the calculation unit can read the usage data in a shorter time than when reading the usage data from the storage device. Therefore, the engine control device can easily end the processing by the calculation unit by the next processing timing in synchronization with the angle.
Further, the engine control device disclosed herein comprises:
An engine control device that performs processing in synchronization with an angle of an engine crankshaft,
An acquisition unit (31) that acquires an angle signal according to an angle;
A storage device (3) for storing at least one piece of data to be used in processing;
A processing device (1) having at least one calculation unit (11, 12) that executes processing in synchronization with an angle signal, and at least one memory unit (13, 13a, 13b) that can be accessed in a shorter time than when the calculation unit accesses a memory device;
a transfer unit (4, 5) for transferring use data, which is data used by the calculation unit for a process to be executed, from the storage device to the storage unit in advance of a timing when the use data is required for the process to be executed;
The transfer section is
A prediction unit (412) for predicting a predicted period in which an angle signal is input;
a timing acquisition unit (42a) for acquiring a transfer timing for starting transfer of the usage data based on the predicted period;
The timing acquisition unit multiplies a predetermined basic transfer time of data by the number of processes scheduled to be executed to calculate the total transfer time required to transfer the usage data from the storage device to the storage unit, and acquires the transfer timing by subtracting the total transfer time from the predicted period .
Further, the engine control device disclosed herein comprises:
An engine control device that performs processing in synchronization with an angle of an engine crankshaft,
An acquisition unit (31) that acquires an angle signal according to an angle;
A storage device (3) for storing at least one piece of data to be used in processing;
A processing device (1) having at least one calculation unit (11, 12) that executes processing in synchronization with an angle signal, and at least one memory unit (13, 13a, 13b) that can be accessed in a shorter time than when the calculation unit accesses a memory device;
a transfer unit (4, 5) for transferring use data, which is data used by the calculation unit for a process to be executed, from the storage device to the storage unit in advance of a timing when the use data is required for the process to be executed;
The transfer section is
A prediction unit (412) for predicting a predicted period in which an angle signal is input;
a timing acquisition unit (42a) for acquiring a transfer timing for starting transfer of the usage data based on the predicted period;
The timing acquisition unit multiplies a predetermined basic transfer time for data by transfer time information specific to the usage data used in the processing to be executed, to calculate the total transfer time required to transfer the usage data from the storage device to the storage unit, and acquires the transfer timing by subtracting the total transfer time from the predicted period.
この明細書において開示された複数の態様は、それぞれの目的を達成するために、互いに異なる技術的手段を採用する。請求の範囲およびこの項に記載した括弧内の符号は、後述する実施形態の部分との対応関係を例示的に示すものであって、技術的範囲を限定することを意図するものではない。この明細書に開示される目的、特徴、および効果は、後続の詳細な説明、および添付の図面を参照することによってより明確になる。 The various aspects disclosed in this specification employ different technical means to achieve their respective objectives. The claims and the reference characters in parentheses in this section are illustrative of the corresponding relationships with the embodiments described below, and are not intended to limit the technical scope. The objectives, features, and advantages disclosed in this specification will become clearer with reference to the detailed description that follows and the accompanying drawings.
以下において、図面を参照しながら、本開示を実施するための複数の形態を説明する。各形態において、先行する形態で説明した事項に対応する部分には同一の参照符号を付して重複する説明を省略する場合がある。各形態において、構成の一部のみを説明している場合は、構成の他の部分については先行して説明した他の形態を参照し適用することができる。 Below, several embodiments for implementing the present disclosure will be described with reference to the drawings. In each embodiment, parts corresponding to matters described in the preceding embodiment may be given the same reference numerals, and duplicated descriptions may be omitted. In each embodiment, when only a part of the configuration is described, the other parts of the configuration may be applied by referring to the other embodiment described previously.
(第1実施形態)
図1~図8を用いて、ECU(Electronic Control Unit)100に関して説明する。本実施形態では、エンジン制御装置をECU100に適用した例を採用する。このため、ECU100は、エンジンが設けられた車両に搭載可能に構成されている。
First Embodiment
An ECU (Electronic Control Unit) 100 will be described with reference to Figures 1 to 8. In this embodiment, an example is adopted in which an engine control device is applied to the
<構成>
図1~図4を用いて、ECU100の構成に関して説明する。図1に示すように、ECU100は、バッテリ200が電気的に接続されている。ECU100は、バッテリ200から動作電力が供給される。ECU100は、制御対象として、エンジン内に設けられた例えばイグナイタ210およびインジェクタ220が電気的に接続されている。ECU100は、イグナイタ210に点火信号を出力して、イグナイタ210を駆動する。また、ECU100は、インジェクタ220に燃料噴射信号を出力して、インジェクタ220を駆動する。
<Configuration>
The configuration of the
さらに、ECU100は、センサとして、例えばカムセンサ230、クランクセンサ240が電気的に接続されている。カムセンサ230は、カムロータ232に対向配置されている。カムロータ232は、カムシャフト231に固定されている。カムロータ232は、カムシャフト231の回転に伴って回転する。カムセンサ230は、カムロータ232の回転に対応したパルス状のカム信号を出力する。カム信号は、720CA周期で出力される信号である。カム信号は、クランク信号と組み合わせて、クランク角度の基準角度を検出するために使用される。
Furthermore,
クランクセンサ240は、クランクロータ242に対向配置されている。クランクロータ242は、クランクシャフト241に固定されている。クランクロータ242は、クランクシャフト241の回転に伴って回転する。クランクセンサ240は、クランクロータ242の回転に対応したパルス状のクランク信号を出力する。つまり、クランクセンサ240は、クランクシャフト241の角度に応じたクランク信号を出力するともいえる。
The
なお、クランクシャフト241は、クランク軸に相当する。クランク信号は、角度信号に相当する。なお、クランク信号は、クランク角度信号ともいえる。
The
ECU100は、マイコン10、電源回路20、入力回路31、出力回路32などを備えている。まず、電源回路20は、バッテリ200と電気的に接続されている。電源回路20は、バッテリ200の電圧を電圧変換して、マイコン10、入力回路31、出力回路32に供給する。
The
入力回路31は、カムセンサ230、クランクセンサ240が電気的に接続されている。入力回路31は、カム信号やクランク信号が入力される。また、入力回路31は、その他のセンサやスイッチなどが電気的に接続されていてもよい。この場合、入力回路31は、その他のセンサからのセンサ信号やスイッチからのスイッチ信号が入力される。このように、入力回路31は、クランク信号などが入力されることで、クランク信号などを取得するといえる。入力回路31は、取得部に相当する。入力回路31は、入力された各種信号をマイコン10へ出力する。
The
出力回路32は、イグナイタ210、インジェクタ220が電気的に接続されている。出力回路32は、イグナイタ210に点火信号を出力する。また、出力回路32は、インジェクタ220に燃料噴射信号を出力する。なお、出力回路32は、他ECUと接続されていてもよい。この場合、出力回路32は、他ECUに対して出力信号を出力する。出力回路32は、マイコン10からの指示に応じて信号を出力する。
The
マイコン10は、CPU1、ROM2、RAM3、タイマモジュール4、DMAC5、ADC6、I/O7などを備えている。これらは、内部バスを介して電気的に接続されている。マイコン10は、電源回路20、入力回路31、出力回路32と電気的に接続されている。
The
マイコン10は、推定されたクランク角度に同期して、点火時期制御、ノック制御、燃料噴射制御などのエンジン制御処理を開始する。マイコン10は、エンジン制御処理の結果として、燃料噴射信号や点火信号を出力する。ECU100は、出力回路32を介して点火信号を出力することで、イグナイタ210を駆動する。同様に、ECU100は、出力回路32を介して燃料噴射信号を出力することで、インジェクタ220を駆動する。
The
CPU1は、第1コア11、第2コア12、ローカルRAM13などを備えている。CPU1は、演算処理装置に相当する。
The
コア11,12は、ROM2などに記憶されているプログラムに従って処理を実行する。また、コア11,12は、クランク信号に同期して処理を実行する。言い換えると、コア11,12は、クランクシャフト241の角度に同期したタイミングで処理を行う。また、コア11,12は、クランクシャフト241の角度に同期した角度割込みが発生するたびに処理を実行するともいえる。
The
なお、コア11,12が実行する処理は、エンジン制御処理の一部の処理である。また、コア11,12が実行する処理は、エンジン制御を行うための処理ともいえる。コア11,12は、エンジン制御を行うために複数の処理を実行する。さらに、コア11,12は、イグナイタ210、インジェクタ220を制御するための処理(制御処理)を実行するともいえる。
The processes executed by the
コア11,12は、処理を実行する際に、少なくとも一つのデータを用いる。コア11,12は、処理を実行する際に、ローカルRAM13に記憶されているデータを読み込む。そして、コア11,12は、読み込んだデータを用いて処理を実行する。ローカルRAM13に記憶されているデータは、RAM3から転送されたものである。この点に関しては、後ほど詳しく説明する。
以下においては、一例として、第1コア11が処理を実行する状況を採用する。第1コア11が実行予定の処理で用いるデータは、使用データともいえる。なお、後ほど説明するタイマモジュール4やDMAC5は、第2コア12が処理を実行する場合でも同様に処理動作する。
In the following, as an example, a situation in which the
コア11,12は、演算部に相当する。ローカルRAM13は、記憶部に相当する。ローカルRAM13は、コア11,12とともにCPU1内に設けられている。よって、ローカルRAM13は、コア11,12がRAM3にアクセスする場合よりも短時間でアクセス可能に構成されている。
なお、本実施形態では、一例として、二つのコア11,12と、一つのローカルRAM13を備えた例を採用している。しかしながら、本開示は、これに限定されず、少なくとも一つのコアと、少なくとも一つのローカルRAMを備えていればよい。
In this embodiment, an example is used in which two
ROM2は、CPU1が実行可能なプログラムが記憶されている。RAM3は、コア11,12のいずれか一方が処理を実行する際に用いる少なくとも一つのデータが一時的に記憶されている。RAM3は、記憶装置に相当する。
ROM2 stores programs that can be executed by CPU1. RAM3 temporarily stores at least one piece of data that is used when either one of
なお、RAM3は、ローカルRAM13と区別するために、CPU1の外部に設けられた外部記憶装置ともいえる。一方、ローカルRAM13は、CPU1の内部に設けられた内部記憶装置ともいえる。
To distinguish it from the
タイマモジュール4は、DMAC5に対して、使用データの転送リクエストを示すリクエスト信号を出力する。タイマモジュール4に関しては、後ほど詳しく説明する。DMAC5は、リクエスト信号に応じて、RAM3に記憶されているデータを、ローカルRAM13に転送する。以下において、単に転送と記載している箇所は、RAM3からローカルRAM13へのデータの転送を示しているものとする。
The
タイマモジュール4とDMAC5は、第1コア11が処理を実行する際に使用データが必要となるタイミングよりも前に、予めRAM3からローカルRAM13に転送する。詳述すると、第1コア11は、処理を実行する際に使用データが必要になる。そこで、タイマモジュール4とDMAC5は、使用データが必要となるタイミングまでに、予めRAM3からローカルRAM13に使用データを転送して、使用データをローカルRAM13に格納する。タイマモジュール4とDMAC5は、転送部に相当する。
The
ADC6は、アナログ信号をデジタル信号に変換するAD変換器である。ADC6は、例えば、I/O7に入力された信号をコア11,12が処理に用いるデータに変換する。I/O7は、例えば、入力回路31に入力された信号を内部バスに出力し、内部バスに出力された信号を出力回路32に出力する。ここでの信号は、点火信号、燃料噴射信号、クランク信号、カム信号だけでなく、コア11,12が処理に用いるデータを示す信号なども含んでいる。
ここで、図2、図3、図4を用いて、タイマモジュール4に関して説明する。タイマモジュール4は、第1タイマ41、タイミング計算部42a、第2タイマ43などを備えている。タイマモジュール4は、クランク信号が入力回路31およびI/O7を介して入力される。
The
第1タイマ41は、周期計測部411と周期予測部412とを備えている。周期計測部411は、クランク信号のエッジを検出して、クランク信号のパルス数をカウントする。パルス数は、カウント値PCやエッジ数などといえる。また、周期計測部411は、クランク信号のエッジを検出して、クランク信号周期Tamを計測する。このクランク信号周期Tamは、クランク信号におけるエッジ間の時間である。以下では、クランク信号周期Tamを単に周期Tamとも称する。さらに、第1タイマ41は、クランク信号のカウント値PCと周期Tamをもとに、クランク角度を推定する。
The
周期計測部411は、例えば、クランク信号の立上りエッジを検出するエッジ検出回路と、検出されたエッジをカウントするカウンタなどを有している。エッジ検出回路は、立下りエッジを検出するものであってもよい。
The
周期予測部412は、カウント値PCをもとに、例えば10CAや6CAごとの大まかなクランク角度θを検出する。ここでのCAは、上記に限定されない。周期予測部412は、検出したクランク角度と、周期計測部411で計測された周期Tamをもとに、次回以降のクランク信号周期を予測する。以下では、予測したクランク信号周期を予測周期Tpdとも称する。周期予測部412は、予測部に相当し、クランク信号が入力される予測周期Tpdを予測する。なお、予測周期Tpdの予測方法は、特開2013-108478号公報を参照されたい。
The
また、周期予測部412は、コア11,12の動作クロックとして、逓倍角度クロックを生成してもよい。周期予測部412は、予測周期Tpdをもとに、大まかなクランク角度θよりも詳細(例えば1CA単位)なクランク信号周期の所定倍数の周波数を持つ逓倍角度クロックを生成する。コア11,12は、逓倍角度クロックに同期して処理を行うことで、クランクシャフト241の角度に同期して処理を行ってもよい。ECU100は、逓倍角度クロックをもとに処理を行うことで、分解能の高い高精度なエンジン制御が可能である。
The
図2、図3に示すように、タイミング計算部42aは、第1タイマ41と電気的に接続されている。タイミング計算部42aは、第1タイマ41内のハードウェア処理、もしくはソフトウェア実装によって実現できる。タイミング計算部42aは、例えば、CPUなどの演算処理装置と、ROMなどの記憶装置などを備えている。
As shown in Figures 2 and 3, the
タイミング計算部42aは、演算処理装置の機能ブロックとして、転送処理計算部421aと転送合計時間計算部422aを有している。また、タイミング計算部42aは、演算処理装置における算術論理演算器として、タイミング出力部424aを有している。詳述すると、タイミング出力部424aは、減算器である。さらに、タイミング計算部42aは、記憶装置に処理テーブル423aが記憶されている。
The
タイミング計算部42aは、予測周期Tpdに基づいて、使用データの転送を開始する転送タイミングTstを取得する。タイミング計算部42aは、タイミング取得部に相当する。
The
転送処理計算部421aは、RAM3からローカルRAM13に転送する転送処理数Nを算出する。つまり、転送処理計算部421aは、次回の角度割込みで使用データを転送する際に、使用データの転送が必要な処理の数を算出する。使用データの転送が必要な処理の数は、転送処理数Nと称する。転送処理計算部421aは、取得したカウント値PCと、処理テーブル423aを用いて転送処理数Nを算出する。
The transfer
転送合計時間計算部422aは、使用データをRAM3からローカルRAM13に転送するのに要する合計転送時間Ttrを算出する。ここでの使用データは、転送処理計算部421aで転送処理数Nを算出する際に対象とした処理で用いられる使用データである。転送合計時間計算部422aは、予め決められた基本転送時間Tbaと、転送処理数Nとから合計転送時間Ttrを算出する。転送処理数Nは、実行予定の処理の数に相当する。
The total transfer
基本転送時間Tbaは、データをRAM3からローカルRAM13に転送するのに要する時間のベースとなる時間である。つまり、基本転送時間Tbaは、予め決められた容量(例えばバイト数)のデータを転送するのに要する時間である。基本転送時間Tbaは、静的に決められた値である。基本転送時間Tbaは、設計値やレイテンシなどから得られる。また、基本転送時間Tbaは、タイミング計算部42aの記憶装置に記憶されている。
The basic transfer time Tba is the base time required to transfer data from
処理テーブル423aは、静的に決められた処理の番号を示す処理番号と、処理番号の紐づけられた各処理がどの角度での角度割込みに同期して実行されるかを示す処理別実行角度配列を含んでいる。また、処理テーブル423aは、カウント値ごとの転送処理項目ARを含んでいる。そして、転送処理項目ARは、カウント値と紐づけられている。なお、各処理で用いられる使用データは、予め決められている。 The process table 423a includes a process number indicating the number of a statically determined process, and a process-specific execution angle array indicating at what angle an angle interruption is executed in synchronization with which each process associated with the process number is executed. The process table 423a also includes a transfer process item AR for each count value. The transfer process item AR is then associated with the count value. The usage data used in each process is determined in advance.
転送処理項目ARは、角度割込み(カウント値)ごとに設けられている。転送処理項目ARは、使用データの転送が必要な処理を示すものである。また、転送処理項目ARは、どの処理で用いるデータを転送し、どの処理で用いるデータを転送しないかを示す情報ともいえる。よって、処理テーブル423aは、各角度割込みで、使用データの転送が必要となる処理がどの処理であるかを示す転送処理項目ARを含んでいるといえる。なお、処理項目は、処理の項目であり、単に処理と言い換えることもできる。 A transfer process item AR is provided for each angle interrupt (count value). The transfer process item AR indicates the process that requires the transfer of usage data. The transfer process item AR can also be said to be information indicating which process requires the transfer of data used in which process. Therefore, the process table 423a can be said to include a transfer process item AR that indicates which process requires the transfer of usage data in each angle interrupt. Note that a process item is an item of a process, and can also be simply referred to as a process.
転送処理項目ARは、考え得る処理項目の数が8個の場合、8ビットで表される。この場合、転送処理項目ARは、8個の処理項目で用いられる使用データの転送有無を示す情報が含まれている。 The transfer process item AR is represented by 8 bits when the number of possible process items is 8. In this case, the transfer process item AR contains information indicating whether or not the usage data used by the 8 process items is transferred.
図6の例では、転送処理項目ARとして、00101001bなどを採用している。転送処理項目ARは、処理番号に対応するビットが、処理番号が小さい順に左から並んだ構成をなしている。また、転送処理項目ARは、転送を要求することを1で示し、転送を要求しないことを0で示している。よって、この転送処理項目ARは、3番目、5番目、8番目の処理番号の処理を実行することを示している。言い換えると、転送処理項目ARは、3番目、5番目、8番目の処理番号の処理で用いる使用データの転送を要求することを示している。 In the example of Figure 6, 00101001b, for example, is used as the transfer process item AR. The transfer process item AR is configured with bits corresponding to the process numbers arranged from the left in ascending order of process numbers. Furthermore, the transfer process item AR indicates that a transfer is requested with a 1, and that a transfer is not requested with a 0. Therefore, this transfer process item AR indicates that the processes with the third, fifth, and eighth process numbers will be executed. In other words, the transfer process item AR indicates that the transfer of usage data to be used in the processes with the third, fifth, and eighth process numbers will be requested.
このように、転送処理項目ARは、使用データの転送を要求する処理番号に該当するビットを立てることで形成されている。なお、考え得る処理項目の数が32個の場合、転送処理項目ARは、32ビットで表される。 In this way, the transfer process item AR is formed by setting a bit corresponding to the process number that requests the transfer of usage data. Note that if there are 32 possible process items, the transfer process item AR is represented by 32 bits.
タイミング出力部424aは、予測周期Tpdと合計転送時間Ttrが入力される。タイミング出力部424aは、予測周期Tpdと合計転送時間Ttrから転送タイミングTstを算出する。
The
転送タイミングTstは、使用データの転送を開始するタイミングである。つまり、転送タイミングTstは、RAM3からローカルRAM13への使用データの転送開始を示すタイミングである。また、転送タイミングTstは、次々回の角度割込みで第1コア11が使用データを用いて処理を実行するために、必要な転送タイミングといえる。よって、転送タイミングTstは、転送タイミングや開始タイミングともいえる。
The transfer timing Tst is the timing at which the transfer of the usage data starts. In other words, the transfer timing Tst is the timing indicating the start of the transfer of the usage data from
図2、図4に示すように、第2タイマ43は、転送開始指示部43aを備えている。転送開始指示部43aは、タイミング計算部42aと電気的に接続されている。転送開始指示部43aは、CPUなどの演算処理装置と、カウンタと、レジスタなどの記憶装置などを備えている。
As shown in Figures 2 and 4, the
転送開始指示部43aは、記憶装置として、転送処理項目レジスタ431aと転送タイミングレジスタ432aとを有している。転送処理項目レジスタ431aは、転送処理計算部421aから取得した転送処理項目ARが一時的に記憶されている。転送処理項目レジスタ431aは、転送処理項目ARが入力されるたびに、記憶している転送処理項目ARが更新される。転送タイミングレジスタ432aは、タイミング出力部424aから取得した転送タイミングTstが一時的に記憶されている。転送タイミングレジスタ432aは、転送タイミングTstが入力されるたびに、記憶している転送タイミングTstが更新される。
The transfer start
転送開始指示部43aは、カウンタとして、転送タイミングカウンタ433aを有している。転送タイミングカウンタ433aは、クランク信号とクロックとカウンタ停止信号が入力される。転送タイミングカウンタ433aは、クランク信号のエッジを検出すると、クロックのカウントを開始する。また、転送タイミングカウンタ433aは、カウンタ停止信号が入力されると、クロックのカウントを停止する。
The transfer start
転送開始指示部43aは、演算処理装置における算術論理演算器として、タイミング比較部434aとリクエスト出力部435aとを有している。タイミング比較部434aは、転送タイミングカウンタ433aのカウント値と、転送タイミングTstとが入力される。タイミング比較部434aは、転送タイミングカウンタ433aのカウント値が転送タイミングTstと一致すると、転送開始信号とカウンタ停止信号を出力する。
The transfer start
リクエスト出力部435aは、転送処理項目ARと転送開始信号とが入力される。リクエスト出力部435aは、転送処理項目ARと転送開始信号とに基づいて、リクエスト信号を出力する。
The
<処理動作>
図5~図8を用いて、ECU100の処理動作に関して説明する。
<Processing Operation>
The processing operation of the
まず、図5、図6を用いて、タイミング計算部42aの処理動作に関して説明する。タイミング計算部42aは、クランク信号が入力されるたびに図5のフローチャートを開始する。なお、図6では、カウント値が003hの場合を対象として説明する。また、図6では、カウント値が003hの場合に、関連する箇所にハッチングを施している。
First, the processing operation of the
ステップS10では、カウント値PCを読み込む。転送処理計算部421aは、第1タイマ41でカウントされたカウント値PCを読み込む。
In step S10, the count value PC is read. The transfer
ステップS11では、加算カウント値NPCを算出する。転送処理計算部421aは、ステップS10で読み込んだカウント値PCに2インクリメントした加算カウント値NPCを算出する。つまり、加算カウント値NPC=カウント値PC+2である。
In step S11, the incremental count value NPC is calculated. The transfer
現在のカウント値PCは、今回の角度割込みに対応している。よって、加算カウント値NPCは、次々回の角度割込みに対応している。つまり、転送処理計算部421aは、次々回の角度割込みで実行される処理を認識するために、加算カウント値NPCを算出する。
The current count value PC corresponds to the current angle interrupt. Therefore, the incremental count value NPC corresponds to the angle interrupt after the next one. In other words, the transfer
ステップS12では、処理テーブル423aを読み込む。転送処理計算部421aは、処理テーブル423aを参照する。
In step S12, the processing table 423a is read. The transfer
ステップS13では、処理テーブル423aと加算カウント値NPCをもとに、転送処理項目ARおよび転送処理数Nを取得する。転送処理計算部421aは、処理テーブル423aから加算カウント値NPCに紐づけられた転送処理項目ARを取得する。
In step S13, the transfer process item AR and the transfer process number N are obtained based on the process table 423a and the incremental count value NPC. The transfer
転送処理計算部421aは、取得した転送処理項目ARから、転送処理数Nを算出する。上記例の転送処理項目ARでは、次回の角度割込みで使用データの転送が必要な処理が三つである。このため、転送処理計算部421aは、転送処理数Nとして3を算出する。転送処理計算部421aは、このように転送処理数Nを算出することで、転送処理数Nを取得する。転送処理計算部421aは、取得した転送処理数Nと転送処理項目ARを出力する。
The transfer
ステップS14では、基本転送時間Tbaを読み込む。転送合計時間計算部422aは、基本転送時間Tbaを読み込む。これは、合計転送時間Ttrを算出するためである。
In step S14, the basic transfer time Tba is read. The total transfer
ステップS15では、合計転送時間Ttrを算出する。転送合計時間計算部422aは、ステップS13で算出した転送処理数NとステップS14で読み込んだ基本転送時間Tbaを用いて、合計転送時間Ttrを算出する。転送合計時間計算部422aは、基本転送時間Tbaに転送処理数Nを乗算して合計転送時間Ttrを算出する。合計転送時間Ttr=Tba×Nである。
In step S15, the total transfer time Ttr is calculated. The total transfer
例えば、図6の例では、処理テーブル423aを読み込み、カウント値PC003hにおける転送処理数Nが003hである。基本転送時間Tbaは、010h(=016d)とする。合計転送時間Ttrは、基本転送時間Tba×転送処理数Nで表されるため、030h(=048d)となる。 For example, in the example of FIG. 6, the processing table 423a is read, and the number of transfer processes N at the count value PC003h is 003h. The basic transfer time Tba is 010h (=016d). The total transfer time Ttr is expressed as the basic transfer time Tba x the number of transfer processes N, so it is 030h (=048d).
ステップS16では、予測周期Tpdを読み込む。タイミング出力部424aは、周期予測部412で予測された予測周期Tpdを読み込む。
In step S16, the predicted period Tpd is read. The
ステップS17では、転送タイミングTstを算出する。タイミング出力部424aは、予測周期Tpdから合計転送時間Ttrを減算することで、転送タイミングTstを算出する。転送タイミングTst=Tpd-Ttrである。タイミング出力部424aは、算出した転送タイミングTstを出力する。図6の例では、転送タイミングTstは、予測周期Tpd0105h(=261d)から合計転送時間Ttr030h(=048d)を引いた0D5h(=213d=00111101b)として出力される。
In step S17, the transfer timing Tst is calculated. The
なお、転送処理項目ARの値など具体的な数値で示している箇所は、全て一例である。本開示は、これに限定されない。 Note that all of the specific numerical values, such as the value of the forwarding process item AR, are merely examples. This disclosure is not limited to these.
次に、図7、図8を用いて、転送開始指示部43aの処理動作に関して説明する。転送開始指示部43aは、クランク信号が入力されるたびに図7のフローチャートを開始する。なお、図8では、本実施形態で対象としている箇所にハッチングを施している。
Next, the processing operation of the transfer
ステップS20では、クランク信号の立上りを読み込む。転送開始指示部43aは、入力されたクランク信号の立上りエッジを読み込む。言い換えると、転送開始指示部43aは、入力されたクランク信号の立上りエッジを検出する。なお、転送開始指示部43aは、クランク信号の立下りエッジを読み込むものであってもよい。
In step S20, the rising edge of the crank signal is read. The transfer start
ステップS21では、転送タイミングを読み込み、転送タイミングレジスタを更新する。転送開始指示部43aは、転送タイミングレジスタ432aに格納されている転送タイミングTstを、今回入力された転送タイミングTstに更新する。図8の例では、転送タイミングレジスタ432aには、00111101bが格納される。なお、転送処理項目レジスタ431aには、00101001bが格納される。
In step S21, the transfer timing is read and the transfer timing register is updated. The transfer start
ステップS22では、転送タイミングカウンタを0に初期化してカウントを開始する。転送タイミングカウンタ433aは、自身のカウント値を0に初期化する。そして、転送タイミングカウンタ433aは、クロックのカウントを開始する。これは、転送タイミングカウンタ433aのカウント値と転送タイミングTstとを比較して、転送タイミングTstになったか否かを判断するためである。
In step S22, the transfer timing counter is initialized to 0 and starts counting. The
ステップS23では、タイミングカウント値とレジスタ値が一致するか否かを判定する。タイミング比較部434aは、転送タイミングカウンタ433aのカウント値と、転送タイミングレジスタ432aのレジスタ値が一致するか否かを判定する。レジスタ値とは、ステップS21で転送タイミングレジスタ432aに格納された転送タイミングTstである。
In step S23, it is determined whether the timing count value and the register value match. The
タイミング比較部434aは、カウント値とレジスタ値とが一致すると判定した場合、ステップS24へ進む。また、タイミング比較部434aは、カウント値とレジスタ値とが一致すると判定しなかった場合、ステップS23へ戻る。
If the
ステップS24では、リクエスト信号を送信する。図8に示すように、タイミング比較部434aは、カウント値とレジスタ値とが一致すると判定した場合、転送開始信号を出力する。転送開始信号は、カウンタの値とレジスタ値が一致し、転送タイミングTstに達したことを示す信号である。
In step S24, a request signal is transmitted. As shown in FIG. 8, if the
また、リクエスト出力部435aは、転送開始信号が入力されると、DMAC5に対してリクエスト信号を送信する。リクエスト出力部435aは、リクエスト信号を送信することで、DMAC5に対して使用データの転送を要求する。リクエスト出力部435aは、転送処理項目ARに対応する使用データの転送を、DMAC5へ要求するといえる。つまり、リクエスト出力部435aは、転送処理項目ARでビットが立っている処理番号の処理に用いられるデータを使用データとして転送することを要求する。この場合、リクエスト出力部435aは、転送処理項目ARを含むリクエスト信号を送信してもよい。このように、リクエスト出力部435aは、リクエスト信号を出すか出さないかを選択するセレクターともいえる。
Furthermore, when a transfer start signal is input, the
なお、タイミング比較部434aは、リクエスト信号とともにカウンタ停止信号を出力する。これは、転送タイミングカウンタ433aによるカウントを停止するためである。カウンタ停止信号は、転送開始信号をリネーミングした信号などを採用できる。
The
図8の例では、転送タイミングレジスタ432aには、レジスタ値として00111101bが格納されている。一方、転送処理項目レジスタ431aには、転送処理項目ARとして00101001bが格納されている。このため、タイミング比較部434aは、転送タイミングカウンタ433aのカウント値が00111101bになると、転送開始信号を出力する。そして、リクエスト出力部435aは、転送処理項目ARの00101001bに基づいて、3番目、5番目、8番目のデータの転送を要求する。
In the example of FIG. 8, the
<効果>
上記のように、タイマモジュール4とDMAC5は、コア11,12が実行予定の処理に用いる使用データを、処理で必要となるタイミングよりも前に、予めRAM3からローカルRAM13に転送する。コア11,12は、クランク信号に同期して処理を実行する際に、ローカルRAM13に記憶されているデータを読み込む。このローカルRAM13は、コア11,12がRAM3にアクセスする場合よりも短時間でアクセス可能に構成されている。
<Effects>
As described above, the
このため、コア11,12は、RAM3から使用データを読み込む場合よりも、短時間で使用データを読み込むことができる。よって、ECU100は、コア11,12が角度に同期した次の処理タイミングまでに処理を終了しやすくできる。
As a result, the
さらに、コア11,12は、使用データの読み込みに要する時間を低減できる。このため、コア11,12は、その分処理を行う時間に割くことができる。よって、コア11,12は、複雑な演算を伴う処理や、多くの使用データを用いる処理を実行できる。
In addition,
ECU100は、予測周期Tpdを用いて転送タイミングTstを取得する。このため、ECU100は、予測周期Tpdを用いることなく転送タイミングTstを取得する構成よりも、転送タイミングTstを精度よく取得できる。
The
ECU100は、転送処理数Nを用いて合計転送時間Ttrを算出して、転送タイミングTstを取得する。このため、ECU100は、転送処理数Nを用いることなく転送タイミングTstを取得する構成よりも、転送タイミングTstを精度よく取得できる。
The
(変形例)
タイミング計算部42aは、転送処理数Nを用いることなく転送タイミングを取得してもよい。タイミング計算部42aは、例えば、転送規定時間を、予測周期Tpdから減算することで転送タイミングを取得する。転送規定時間は、RAM3からローカルRAM13への使用データの転送時間に相当する予め決められた時間である。転送規定時間は、例えば、タイミング計算部42aの記憶部に予め記憶させておく。
(Modification)
The
これによって、タイミング計算部42aは、合計転送時間を算出する必要がない。よって、変形例では、タイミング計算部42aの処理負荷を軽減できる。
As a result, the
以上、本開示の好ましい実施形態について説明した。しかしながら、本開示は、上記実施形態に何ら制限されることはなく、本開示の趣旨を逸脱しない範囲において、種々の変形が可能である。以下に、本開示のその他の形態として、第2~第6実施形態に関して説明する。上記実施形態および第2~第6実施形態は、それぞれ単独で実施することも可能であるが、適宜組み合わせて実施することも可能である。本開示は、実施形態において示された組み合わせに限定されることなく、種々の組み合わせによって実施可能である。 Preferred embodiments of the present disclosure have been described above. However, the present disclosure is not limited to the above-described embodiments, and various modifications are possible without departing from the spirit of the present disclosure. Below, the second to sixth embodiments will be described as other aspects of the present disclosure. The above-described embodiments and the second to sixth embodiments can each be implemented alone, but can also be implemented in appropriate combinations. The present disclosure is not limited to the combinations shown in the embodiments, and can be implemented in various combinations.
(第2実施形態)
図9、図10、図11を用いて第2実施形態のECUに関して説明する。本実施形態では、上記実施形態と異なる点に関して説明する。第2実施形態のECUは、タイミング計算部42bの構成および処理動作が上記実施形態と異なる。
Second Embodiment
An ECU according to the second embodiment will be described with reference to Figures 9, 10 and 11. In this embodiment, differences from the above-mentioned embodiment will be described. The ECU according to the second embodiment differs from the above-mentioned embodiment in the configuration and processing operation of a
<構成>
図9に示すように、タイマモジュール4は、タイミング計算部42aのかわりに、タイミング計算部42bを備えている。タイミング計算部42bは、転送処理計算部421b、転送合計時間計算部422b、処理テーブル423b、タイミング出力部424bを備えている。タイミング計算部42bは、タイミング取得部に相当する。
<Configuration>
9, the
タイミング計算部42bは、基本転送時間Tbaと、各処理で用いる使用データに固有の転送時間係数α[x]との乗算を行いRAM3からローカルRAM13への使用データの合計転送時間Ttrを算出する。タイミング計算部42bは、この合計転送時間Ttrを予測周期Tpdから減算することで、転送タイミングTstを取得する。
The
コア11,12は、処理ごとに使用データの数が異なる。また、各使用データは、データ容量が異なる。このため、使用データの転送に要する時間は、各処理によって異なる。転送時間係数αは、各処理に用いられる使用データの転送に要する時間に相関する係数である。転送時間係数αは、処理番号ごとに紐づけられている。
例えば、基本転送時間Tbaを規定するためのデータ容量を10、基本転送時間Tbaを10とした場合を一例に説明する。処理Aでは、データ容量が20の使用データを用いるとする。この場合、処理Aに紐づけられた転送時間係数αは2となる。同様に、処理Bでは、データ容量が5の使用データを用いるとする。この場合、処理Bに紐づけられた転送時間係数αは0.5となる。 For example, let us take the case where the data capacity for defining the basic transfer time Tba is 10, and the basic transfer time Tba is 10. In process A, it is assumed that used data with a data capacity of 20 is used. In this case, the transfer time coefficient α associated with process A is 2. Similarly, it is assumed that used data with a data capacity of 5 is used. In this case, the transfer time coefficient α associated with process B is 0.5.
転送処理計算部421bは、転送処理計算部421aと同様、処理テーブル423bから転送処理項目ARを取得する。そして、転送処理計算部421bは、取得した転送処理項目ARを転送合計時間計算部422bに出力する。
The transfer
転送合計時間計算部422bは、転送合計時間計算部422aと同様、合計転送時間Ttrを算出する。しかしながら、転送合計時間計算部422bは、合計転送時間Ttrの算出方法が転送合計時間計算部422aと異なる。
The total transfer
転送合計時間計算部422bは、基本転送時間Tbaと転送時間係数αとを用いて合計転送時間Ttrを算出する。転送合計時間計算部422bは、入力された転送処理項目ARと処理テーブル423bから転送時間係数αを取得する。つまり、転送合計時間計算部422bは、転送処理項目ARから次回の角度割込みで使用データの転送が必要な処理の処理番号を取得する。そして、転送合計時間計算部422bは、処理テーブル423bから、取得した処理番号に紐づけられた転送時間係数αを取得する。
The total transfer
転送合計時間計算部422bは、基本転送時間Tbaに、転送時間係数αの総和をかけることで合計転送時間Ttrを算出する。合計転送時間Ttrは、転送処理数Nが同じであっても、転送時間係数αの値によって異なることがある。転送時間係数αの総和は、合計転送時間係数Σαと称する。
The total transfer
なお、転送処理計算部421bは、転送処理項目ARとともに、次回の角度割込みで使用データの転送が必要な処理の処理番号を処理テーブル423bから取得してもよい。この場合、転送処理計算部421bは、取得した処理番号を転送合計時間計算部422bに出力してもよい。
The transfer
処理テーブル423bは、処理番号と処理別実行角度配列に加えて、各処理番号に紐づけられた転送時間係数α含んでいる。転送時間係数αは、転送時間情報に相当する。なお、処理テーブル423bは、処理テーブル423aと同様、転送処理項目ARを含んでいる。タイミング出力部424bは、タイミング出力部424aと同様である。
The processing table 423b includes a transfer time coefficient α linked to each processing number in addition to the processing number and the execution angle array for each processing. The transfer time coefficient α corresponds to the transfer time information. Note that the processing table 423b includes a transfer processing item AR, similar to the processing table 423a. The
<処理動作>
図10、図11を用いて、タイミング計算部42bの処理動作に関して説明する。タイミング計算部42bは、クランク信号が入力されるたびに図10のフローチャートを開始する。図10では、図5と同じ処理に同じステップ番号を付与している。なお、図11では、カウント値が003hの場合を対象として説明する。また、図11では、カウント値が003hの場合に、関連する箇所にハッチングを施している。
<Processing Operation>
The processing operation of the
ステップS13aでは、転送処理項目ARを取得する。転送処理計算部421bは、転送処理計算部421aと同様、処理テーブル423bから転送処理項目ARを取得する。そして、転送処理計算部421bは、取得した転送処理項目ARを転送合計時間計算部422bに出力する。
In step S13a, the transfer process item AR is obtained. The transfer
ステップS13bでは、転送時間係数αの合計転送時間係数Σαを計算する。転送合計時間計算部422bは、ステップS13aで取得した転送処理項目ARから使用データの転送が必要な処理の処理番号を取得する。また、転送合計時間計算部422bは、取得した処理番号に紐づけられた転送時間係数αを処理テーブル423bから取得する。そして、転送合計時間計算部422bは、取得した全転送時間係数αを合計して、転送時間係数αの総和である合計転送時間係数Σαを計算する。
In step S13b, the total transfer time coefficient Σα of the transfer time coefficient α is calculated. The total transfer
ステップS15aでは、合計転送時間Ttrを算出する。転送合計時間計算部422bは、ステップS13で算出した合計転送時間係数ΣαとステップS14で読み込んだ基本転送時間Tbaを用いて、合計転送時間Ttrを算出する。転送合計時間計算部422bは、基本転送時間Tbaに合計転送時間係数Σαを乗算して合計転送時間Ttrを算出する。合計転送時間Ttr=Tba×Σα(x)である。
In step S15a, the total transfer time Ttr is calculated. The total transfer
図11の例の場合、カウント値003hにおける最終的な合計転送時間係数Σαが11b(=03d)である。また、基本転送時間を010h=(016h)とする。この場合、合計転送時間Ttrは、010h(16d)×11b(=03d)=030h(=048d)と計算される。
In the example of FIG. 11, the final total transfer time coefficient Σα at the
転送タイミングTstは、予測周期Tpdから合計転送時間Ttrを引いた値である。このため、予測周期Tpd0105h(=261d)から合計転送時間Ttr030h(=048d)を引いた0D5h(=213d)が転送タイミングTstとして出力される。また、転送処理項目ARは、処理テーブル423bのカウント値003hにおける転送処理項目ARが読み込まれ、01010001bが出力される。
The transfer timing Tst is the value obtained by subtracting the total transfer time Ttr from the predicted period Tpd. Therefore, 0D5h (=213d), which is obtained by subtracting the total
<効果>
第2実施形態のECUは、ECU100と同様の効果を奏することができる。さらに、第2実施形態のECUは、上記構成とすることで、各使用データの転送にかかる時間を一律ではなくそれぞれ個別に求めることができる。このため、第2実施形態のECUは、転送にかかる時間をECU100よりも高精度の算出できる。
<Effects>
The ECU of the second embodiment can achieve the same effects as the
(第3実施形態)
図12、図13、図14を用いて第3実施形態のECUに関して説明する。本実施形態では、第2実施形態と異なる点に関して説明する。第3実施形態のECUは、タイミング計算部42cの構成および処理動作が第2実施形態と異なる。
Third Embodiment
The ECU of the third embodiment will be described with reference to Figures 12, 13 and 14. In this embodiment, differences from the second embodiment will be described. The ECU of the third embodiment differs from the second embodiment in the configuration and processing operation of a
<構成>
図12に示すように、タイマモジュール4は、タイミング計算部42bのかわりに、タイミング計算部42cを備えている。タイミング計算部42cは、転送合計時間計算部422c、処理テーブル423c、タイミング出力部424cを備えている。
<Configuration>
12, the
転送合計時間計算部422cは、カウント値PCと処理番号が入力される。ここでの処理番号は、次回の角度割込みで転送が必要となる処理を示すものである。このため、転送合計時間計算部422cは、一つの処理番号または複数の処理番号が入力される。本実施形態では、一例として、処理番号03、04の二つの処理番号が入力される例を採用する。
The count value PC and the processing number are input to the total transfer
転送合計時間計算部422cは、処理テーブル423cから、入力された処理番号に紐づけられた転送時間係数αを取得する。そして、転送合計時間計算部422cは、転送合計時間計算部422bと同様に、合計転送時間係数Σαを計算する。転送合計時間計算部422cは、基本転送時間Tbaに、合計転送時間係数Σαをかけることで合計転送時間Ttrを算出する。
The total transfer
処理テーブル423cは、処理テーブル423bと異なり、処理別実行角度配列を有していない。また、処理テーブル423cは、次回の角度割込みで転送を要求する処理番号が入力される。タイミング出力部424cは、タイミング出力部424bと同様である。
Unlike process table 423b, process table 423c does not have a process-specific execution angle array. In addition, a process number that requests transfer at the next angle interrupt is input to process table 423c.
<処理動作>
図13、図14を用いて、タイミング計算部42cの処理動作に関して説明する。タイミング計算部42cは、クランク信号が入力されるたびに図13のフローチャートを開始する。図13では、図10と同じ処理に同じステップ番号を付与している。なお、図14では、カウント値が003hの場合を対象として説明する。また、図11では、カウント値が003hの場合に、関連する箇所にハッチングを施している。
<Processing Operation>
The processing operation of the
ステップS11aでは、予測周期Tpdを読み込む。転送合計時間計算部422cは、周期予測部412で予測された予測周期Tpdを読み込む。ステップS12aでは、転送タイミングTst=Tpdとする。転送合計時間計算部422cは、転送タイミングTstをステップS11aで読み込んだ予測周期Tpdとする。
In step S11a, the predicted period Tpd is read. The total transfer
転送合計時間計算部422cは、全ての処理番号の読み込みが終了するまで、ステップS13c~ステップS18を繰り返し実行する。つまり、転送合計時間計算部422cは、処理番号の入力が停止するまで、ステップS13c~ステップS18を繰り返し実行する。
The total transfer
ステップS13cでは、処理番号を読み込む。転送合計時間計算部422cは、入力された処理番号を読み込む。
In step S13c, the process number is read. The total transfer
ステップS13dでは、処理テーブルにおける処理番号の転送時間係数αを読み込む。転送合計時間計算部422cは、処理テーブル423cから、ステップS13cで読み込んだ処理番号に紐づけられた転送時間係数αを読み込む。
In step S13d, the transfer time coefficient α of the processing number in the processing table is read. The total transfer
ステップS13eでは、合計転送時間係数Σαを計算する。転送合計時間計算部422cは、ステップS13dで読み込んだ転送時間係数αの総和を計算する。つまり、転送合計時間計算部422cは、転送時間係数αを読み込むたびに、転送時間係数αどうしを加算する。このため、タイミング計算部42cは、処理番号が入力されるたびに、ステップS17で転送タイミングTstを更新することになる。
In step S13e, the total transfer time coefficient Σα is calculated. The total transfer
ステップS18では、全処理番号の読み込みが終了したか否かを判定する。転送合計時間計算部422cは、全ての処理番号の読み込みが終了したと判定した場合は図13のフローチャートを終了する。また、転送合計時間計算部422cは、全ての処理番号の読み込みが終了したと判定しなかった場合はステップS13cに戻る。
In step S18, it is determined whether or not reading of all process numbers has been completed. If the total transfer
図14の例では、タイミング計算部42cは、カウント値が003hに更新された場合に上記処理動作を行う。タイミング計算部42cは、カウント値003hで処理番号03、04が入力される。そして、基本転送時間Tbaを010h(=16d)、処理番号03の転送時間係数を011b(=03d)、処理番号04の転送時間係数を10b(=02d)とする。また、予測周期は、0105h(=261d)とする。
In the example of FIG. 14, the
転送合計時間計算部422cは、処理番号が入ってくる毎にその処理番号に紐づいた転送時間係数αを処理テーブル423cから取得する。そして、転送合計時間計算部422cは、その転送時間係数を合計転送時間Ttrに加算していく。合計転送時間Ttrは、処理番号03の処理が入ってきた段階では030h(=048d)、処理番号04の処理が入ってきた段階で050h(=080d)と計算される。
Each time a process number is received, the total transfer
また、転送タイミングTstは、予測周期Tpdから合計転送時間Ttrを引いた値である。このため、最終的な転送タイミングTstは、0105h(=261d)から合計転送時間Ttr050h(=080d)を引いた0B5h(=181d)として出力される。さらに、転送処理項目ARは、処理テーブルが読み込まれ、01010000hが出力される。
The transfer timing Tst is the predicted period Tpd minus the total transfer time Ttr. Therefore, the final transfer timing Tst is output as 0B5h (=181d), which is 0105h (=261d) minus the total
<効果>
第3実施形態のECUは、第2実施形態と同様の効果を奏することができる。さらに、第3実施形態のECUは、各処理がどの角度割込みに同期して実施されるか決まっていなくても、所定の角度での角度割込みタイミングの前に処理番号を入力することで、動的に使用データの事前転送をするかしないかを決定できる。よって、第3実施形態のECUは、設計の自由度が向上するほか、処理テーブルを読み込む処理を軽減することができる。
<Effects>
The ECU of the third embodiment can achieve the same effect as the second embodiment. Furthermore, even if it is not determined with which angle interruption each process is to be executed, the ECU of the third embodiment can dynamically determine whether or not to perform advance transfer of the usage data by inputting a process number before the angle interruption timing at a predetermined angle. Therefore, the ECU of the third embodiment can improve the degree of freedom in design and reduce the process of reading the process table.
(第4実施形態)
図15、図16、図17、図18を用いて第4実施形態のECUに関して説明する。本実施形態では、第1実施形態と異なる点に関して説明する。第4実施形態のECUは、タイミング計算部42dと転送開始指示部43dの構成および処理動作が第1実施形態と異なる。また、第4実施形態のECUは、第1実施形態と異なり、転送タイミングTstを計算しない。つまり、第4実施形態のECUは、タイミング計算部42dが転送タイミングTstを算出することなく、処理で必要となるタイミングよりも前に使用データを転送する。
Fourth Embodiment
The ECU of the fourth embodiment will be described with reference to Figures 15, 16, 17, and 18. In this embodiment, differences from the first embodiment will be described. The ECU of the fourth embodiment differs from the first embodiment in the configurations and processing operations of the
<構成>
図15、図16に示すように、タイマモジュール4は、タイミング計算部42aのかわりに、タイミング計算部42dを備えている。また、タイマモジュール4は、転送開始指示部43aのかわりに、転送開始指示部43dを備えている。
<Configuration>
15 and 16, the
図15に示すように、タイミング計算部42dは、転送処理計算部421dと処理テーブル423dとを備えている。転送処理計算部421dは、カウント値PCが入力される。転送処理計算部421dは、処理テーブル423dから、カウント値PCに紐づけられた転送処理項目ARを取得する。そして、転送処理計算部421dは、取得した転送処理項目ARを出力する。処理テーブル423dは、カウント値ごとの転送処理項目ARを含んでいる。そして、転送処理項目ARは、カウント値と紐づけられている。
As shown in FIG. 15, the
このように、転送処理計算部421dは、転送タイミングTstを算出することなく、カウント値に対応した転送処理項目ARを出力する。
In this way, the transfer
図16に示すように、転送開始指示部43dは、転送処理項目レジスタ431dとリクエスト出力部435dとを備えている。転送処理項目レジスタ431dは、転送処理項目レジスタ431aと同様である。転送開始指示部43dは、終了信号が入力される。終了信号は、リクエスト出力部435dに入力される。また、リクエスト出力部435dは、転送開始信号のかわりに、終了信号が入力されるともいえる。
As shown in FIG. 16, the transfer
終了信号は、角度割込みの発生に伴ってコア11,12が実行した処理が終了したことを示す信号である。CPU1は、上記のように、角度割込みの発生に伴って、第1コア11が処理を実行する。そして、CPU1は、コア11、12による処理の実行が終了すると、終了信号を出力(送信)する。
The end signal is a signal indicating that the processing executed by
<処理動作>
図17を用いて、タイミング計算部42dの処理動作に関して説明する。タイミング計算部42dは、クランク信号が入力されるたびに図17のフローチャートを開始する。
<Processing Operation>
The processing operation of the
ステップS30は、ステップS10と同様である。ステップS31は、ステップS11と同様である。ステップS32は、ステップS12と同様である。 Step S30 is the same as step S10. Step S31 is the same as step S11. Step S32 is the same as step S12.
ステップS33では、転送処理項目ARを取得する。転送処理計算部421dは、処理テーブル423dから、加算カウント値NPCに紐づけられた転送処理項目ARを取得する。
In step S33, the transfer process item AR is obtained. The transfer
なお、転送処理計算部421dは、転送処理項目ARを作成してもよい。この場合、処理テーブル423dは、カウント値PCと、カウント値の角度割込みで実行する処理とが紐づけられている。そして、転送処理計算部421dは、処理テーブル423dから、加算カウント値NPCとなるタイミングで実行される処理を取得する。転送処理計算部421dは、取得した処理に対応するビットを立てて、転送処理項目ARを作成する。
The transfer
図18を用いて、転送開始指示部43dの処理動作に関して説明する。転送開始指示部43dは、クランク信号が入力されるたびに図18のフローチャートを開始する。ステップS40は、ステップS20と同様である。ステップS44は、ステップS24と同様である。
The processing operation of the transfer
ステップS41では、転送処理項目を読み込む。転送開始指示部43dは、転送処理項目レジスタ431dから転送処理項目ARを読み込む。
In step S41, the transfer process item is read. The transfer start
ステップS42では、終了信号を読み込む。転送開始指示部43dは、CPU1から出力された終了信号を読み込む。
In step S42, the end signal is read. The transfer start
ステップS43では、出力完了か否かを判定する。転送開始指示部43dは、CPU1による終了信号の出力が完了したか否かを判定する。転送開始指示部43dは、CPU1による終了信号の出力信が完了したと判定した場合はステップS44へ進み、完了したと判定しない場合はステップS42に戻る。そして、ステップS44では、ステップS24と同様にリクエスト信号を送信する。
In step S43, it is determined whether output is complete. The transfer start
つまり、リクエスト出力部435dは、転送処理項目ARと終了信号が入力されると、リクエスト信号を送信する。このとき、リクエスト出力部435dは、転送処理項目ARが入力され、かつ、例えば終了信号の立上りを検出するとリクエスト信号を送信する。
In other words, the
このように、タイマモジュール4は、終了信号が出力されると、次の角度信号に同期して実行される処理に用いる使用データをRAM3からローカルRAM13に転送する。これによって、タイマモジュール4は、次の角度信号に同期して実行される処理で必要となるタイミングよりも前に使用データを転送する。
In this way, when the end signal is output, the
<効果>
第4実施形態のECUは、ECU100と同様の効果を奏することができる。さらに、第4実施形態のECUは、転送タイミングTstを計算しないため、転送タイミングTstを計算する構成よりも、タイマモジュール4の処理負荷を軽減できる。
<Effects>
The ECU of the fourth embodiment can achieve the same effects as the
(第5実施形態)
図19、図20、図21を用いて第5実施形態のECUに関して説明する。本実施形態では、第1実施形態と異なる点に関して説明する。第5実施形態のECUは、転送開始指示部43eの構成および処理動作が第1実施形態と異なる。つまり、転送開始指示部43eは、一つ一つのデータ転送に対応したリクエスト信号をDMAC5に送信する点が転送開始指示部43aと異なる。
Fifth Embodiment
The ECU of the fifth embodiment will be described with reference to Figures 19, 20, and 21. In this embodiment, differences from the first embodiment will be described. The ECU of the fifth embodiment differs from the first embodiment in the configuration and processing operation of a transfer
<構成>
図19に示すように、転送開始指示部43eは、転送開始指示部43aに加えて、リクエスト更新部436eを備えている。また、転送開始指示部43eは、リクエスト出力部435aのかわりにリクエスト出力部435eを備えている。なお、転送処理項目レジスタ431eは、転送処理項目レジスタ431aと同様である。転送タイミングレジスタ432eは、転送タイミングレジスタ432aと同様である。転送タイミングカウンタ433eは、転送タイミングカウンタ433aと同様である。タイミング比較部434eは、タイミング比較部434aと同様である。
<Configuration>
19, the transfer
リクエスト出力部435eは、処理番号とチャネル番号とが入力される。リクエスト出力部435eは、リクエスト信号を送信する複数のチャネルch1~chnを備えている。リクエスト出力部435eは、入力されたチャネル番号に基づき、リクエスト信号を送信するのに使用するチャネルをチャネルch1~chnから選択する。リクエスト出力部435eは、選択したチャネルから、処理番号に対応するリクエスト信号を送信する。
The
つまり、リクエスト出力部435eは、入力された処理番号が示す処理で用いるデータのリクエスト信号を対応するチャネルch1~chから送信する。なお、リクエスト出力部435eは、例えば、リクエスト信号として、処理番号を送信する。しかしながら、本開示は、これに限定されない。
In other words, the
リクエスト更新部436eは、リクエスト信号を送信するチャネルを更新する部位である。リクエスト更新部436eは、次処理番号レジスタ4361eと、処理チャネルテーブル4362eとを備えている。リクエスト更新部436eは、転送開始指示が入力される。リクエスト更新部436eは、処理番号と、リクエスト信号の送信に使用するチャネルを示すチャネル番号とを出力する。また、リクエスト更新部436eは、転送処理項目レジスタ431eに格納されている転送処理項目ARを参照可能に構成されている。
The
次処理番号レジスタ4361eは、次に転送する処理番号が格納されている。処理チャネルテーブル4362eは、静的に決められた複数の処理番号と、複数のチャネル番号とが個別に紐づけられている。チャネル番号は、複数のチャネルch1~chnのうちどのチャネルを用いてリクエスト信号を送信するかを示すものである。
The next
例えば、処理番号01は、チャネルch1を示すチャネル番号1hが紐づけられている。この場合、リクエスト出力部435eは、処理番号01の処理で用いる使用データのリクエスト信号をチャネルch1から送信する。
For example, process number 01 is linked to
次処理番号レジスタ4361eは、クランク信号の立上りに同期して、転送処理項目ARに基づいて、次に転送する処理番号が格納される。そして、次処理番号レジスタ4361eは、現在格納されている処理番号に対応したチャネル番号が出力され、リクエスト信号が送信されるたびに、次に転送する処理番号が更新される。
The next
リクエスト更新部436eは、リクエスト信号を送信すると、転送処理項目レジスタ431eを参照して、転送処理項目ARの各ビットを順番に確認する。リクエスト更新部436eは、リクエスト信号が未送信である処理番号を次処理番号レジスタ4361eに格納することで、次に転送する処理番号を更新する。このようにすることで、リクエスト更新部436eは、転送処理項目ARにおける使用データの転送が必要となっている処理番号ごとに、リクエスト信号を送信する。なお、次処理番号レジスタ4361eは、現在格納されている処理番号に対応したチャネル番号が出力されるたびに、次に転送する処理番号が更新されてもよい。
When the
リクエスト更新部436eは、転送開始信号が入力されると、処理チャネルテーブル4362eから、次処理番号レジスタ4361eに格納されている処理番号に対応したチャネル番号を取得する。そして、リクエスト更新部436eは、この処理番号とチャネル番号とをリクエスト出力部435eに送信する。
When a transfer start signal is input, the
<処理動作>
図20を用いて、転送開始指示部43eの処理動作に関して説明する。転送開始指示部43eは、クランク信号が入力されるたびに図20のフローチャートを開始する。なお、ステップS50は、ステップS20と同様である。ステップS52は、ステップS21と同様である。ステップS53は、ステップS22と同様である。ステップS54は、ステップS23と同様である。ステップS58は、ステップS24と同様である。よって、タイミング比較部434eは、タイミング比較部434aと同様、カウント値とレジスタ値とが一致すると判定した場合、転送開始信号を出力する。
<Processing Operation>
The processing operation of the transfer
ステップS51では、転送処理項目ARを読み込み、次処理番号レジスタを更新する。リクエスト更新部436eは、クランク信号の立上りに同期して、転送処理項目レジスタ431eを参照して、転送処理項目ARを読み込む。リクエスト更新部436eは、転送処理項目ARから、次に転送する処理番号を次処理番号レジスタ4361eに格納する。
In step S51, the transfer process item AR is read and the next process number register is updated. The
リクエスト更新部436eは、転送開始指示が入力されると、ステップS55を実行する。ステップS55では、次処理番号レジスタを読み込む。リクエスト更新部436eは、次処理番号レジスタ4361eを読み込み、次処理番号レジスタ4361eに格納されている処理番号を取得する。
When a transfer start instruction is input, the
ステップS56では、処理チャネルテーブルを読み込む。リクエスト更新部436eは、処理チャネルテーブル4362eを読み込み、ステップS55で取得した処理番号に対応するチャネル番号を取得する。ステップS55、S56は、今回、リクエスト信号を送信するチャネルを選択するためである。
In step S56, the processing channel table is read. The
ステップS57では、処理番号とチャネル番号を出力する。リクエスト更新部436eは、ステップS55で取得した処理番号と、ステップS56で取得したチャネル番号とを出力する。
In step S57, the processing number and the channel number are output. The
ステップS58では、リクエスト信号を送信する。リクエスト出力部435eは、入力されたチャネル番号に基づいて選択したチャネルから、処理番号に対応するリクエスト信号を送信する。
In step S58, a request signal is transmitted. The
ステップS59では、全リクエスト信号の送信が完了したか否かを判定する。リクエスト更新部436eは、リクエスト信号の送信がすべて完了したか否かを判定する。つまり、すべてのリクエスト信号とは、今回の角度割込みで転送することになっている全使用データ(処理番号)のそれぞれに対応するリクエスト信号である。リクエスト更新部436eは、転送処理項目ARと、送信したリクエスト信号に対応した処理番号とから、全リクエスト信号の送信が完了したか否かを判定することができる。
In step S59, it is determined whether or not the transmission of all request signals has been completed. The
そして、リクエスト更新部436eは、全リクエスト信号の送信が完了したと判定した場合、図20のフローチャートを終了する。また、リクエスト更新部436eは、全リクエスト信号の送信が完了したと判定しなかった場合、ステップS60へ進む。
Then, if the
ステップS60は、次処理番号レジスタを更新する。リクエスト更新部436eは、リクエスト信号を送信すると、次処理番号レジスタを更新する。リクエスト更新部436eは、転送処理項目レジスタ431eを参照して、次処理番号レジスタ4361eにおける次に転送する処理番号を更新する。
Step S60 updates the next process number register. When the
図21の例では、タイミング計算部42aから出力された転送タイミングTstの値を00111101(=61d)とする。転送タイミングレジスタ432eには、クランク信号の立ち上がりに同期して、00111101(=61d)が格納される。また、転送タイミングカウンタ433eは、クランク信号の立ち上がりに同期して、カウントを開始する。
In the example of FIG. 21, the value of the transfer timing Tst output from the
また、リクエスト更新部436eは、タイミング計算部42aから出力された転送処理項目ARに基づき、次処理番号レジスタ4361eを更新する。この時、転送処理項目ARが8ビットで01010101bとすると、先頭から見て2ビット目の処理で使用する使用データの転送を実施することになっている。よって、次処理番号レジスタ4361eには、2が格納される。
The
また、処理チャネルテーブル4362eでは、処理番号02とチャネルch2を示すチャネル番号2hとが紐づけられており、処理番号04とチャネルch4を示すチャネル番号4hとが紐づけられているとする。よって、リクエスト更新部436eは、次処理番号レジスタ4361eに2が格納されている場合、チャネル番号2hを取得する。
In addition, in the processing channel table 4362e, processing number 02 is linked to
そして、リクエスト更新部436eは、上記のように、転送開始指示が入力されて、ステップS54~S58を実行する。このため、リクエスト出力部435eは、処理番号02に対応する第1リクエスト信号を、チャネルch2から送信する。
Then, as described above, the
その後、リクエスト更新部436eは、ステップS59を実行する。リクエスト更新部436eは、次処理番号レジスタ4361eの値を4に更新する。また、リクエスト更新部436eは、次処理番号レジスタ4361eに4が格納されている場合、チャネル番号4hを取得する。そして、リクエスト出力部435eは、処理番号04に対応する第2リクエスト信号を、チャネルch4から送信する。
Then, the
リクエスト更新部436eは、全リクエスト信号の送信が完了するまで、次処理番号レジスタ4361eの更新、チャネル番号の取得、処理番号とチャネル番号の出力、リクエスト信号の送信を繰り返し行う。リクエスト更新部436eは、全リクエスト信号の送信が完了すると、転送タイミングカウンタ433eによるカウント、次処理番号レジスタ4361eの更新を停止する。
The
<効果>
第5実施形態のECUは、ECU100と同様の効果を奏することができる。さらに、第5実施形態のECUは、複数の送信元から複数の送信先にデータの転送を実施したい場合であっても、データ転送を実施することができる。
<Effects>
The ECU of the fifth embodiment can achieve the same effects as the
(第6実施形態)
図22を用いて第6実施形態のECU110に関して説明する。本実施形態では、第1実施形態と異なる点に関して説明する。ECU110は、主にCPU1の構成がECU100と異なる。
Sixth Embodiment
An
CPU1は、二つのコア11,12と、二つのローカルRAM13a,13bを備えている。また、CPU1は、アクセスに要する時間が最短となるコアとローカルRAMとの対を有している。
CPU1 has two
第1コア11は、二つのローカルRAM13a,13bのうち、第1ローカルRAM13aへのアクセスに要する時間が最短となっている。第2コア12は、二つのローカルRAM13a,13bのうち、第2ローカルRAM13bへのアクセスに要する時間が最短となっている。よって、第1コア11は、第1ローカルRAM13aと対をなしているといえる。また、第2コア12は、第2ローカルRAM13bと対をなしているといえる。
Of the two
なお、CPU1は、三つ以上のコアを備えていてもよい。また、CPU1は、三つ以上のローカルRAMを備えていてもよい。
The
タイマモジュール4とDMAC5は、使用データを用いるコアと対をなすローカルRAMに、使用データを転送する。つまり、タイマモジュール4とDMAC5は、第1コア11が処理に用いる使用データを、第1ローカルRAM13aに転送する。また、タイマモジュール4とDMAC5は、第2コア12が処理に用いる使用データを、第2ローカルRAM13bに転送する。
The
第6実施形態のECUは、ECU100と同様の効果を奏することができる。第6実施形態のECUは、対をなしていないローカルRAMに転送する場合より、各コア11,12が使用データの読み込みに要する時間を低減できる。このため、コア11,12は、第1実施形態と同様、複雑な演算を伴う処理や、多くの使用データを用いる処理を実行できる。
The ECU of the sixth embodiment can achieve the same effect as the
本開示は、実施形態に準拠して記述されたが、本開示は当該実施形態や構造に限定されるものではないと理解される。本開示は、様々な変形例や均等範囲内の変形をも包含する。加えて、様々な組み合わせや形態が本開示に示されているが、それらに一要素のみ、それ以上、あるいはそれ以下、を含む他の組み合わせや形態をも、本開示の範畴や思想範囲に入るものである。 Although the present disclosure has been described with reference to an embodiment, it is understood that the present disclosure is not limited to the embodiment or structure. The present disclosure also encompasses various modifications and modifications within the scope of equivalents. In addition, while various combinations and forms are shown in the present disclosure, other combinations and forms including only one element, more, or less are also within the scope and concept of the present disclosure.
10…マイコン、1…CPU、11…第1コア、12…第2コア、13…ローカルRAM、2…ROM、3…RAM、4…タイマモジュール、41…第1タイマ、411…周期計測部、412…周期予測、42a…タイミング計算部、43…第2タイマ、43a…転送開始指示部、5…DMAC、6…ADC、7…I/O、20…電源回路、31…入力回路、32…出力回路、100,110…ECU、200…バッテリ、210…イグナイタ、220…インジェクタ、230…カムセンサ、231…カムシャフト、232…カムロータ、240…クランクセンサ、241…クランクシャフト、242…クランクロータ 10...microcomputer, 1...CPU, 11...first core, 12...second core, 13...local RAM, 2...ROM, 3...RAM, 4...timer module, 41...first timer, 411...period measurement unit, 412...period prediction, 42a...timing calculation unit, 43...second timer, 43a...transfer start instruction unit, 5...DMAC, 6...ADC, 7...I/O, 20...power supply circuit, 31...input circuit, 32...output circuit, 100, 110...ECU, 200...battery, 210...igniter, 220...injector, 230...cam sensor, 231...camshaft, 232...cam rotor, 240...crank sensor, 241...crankshaft, 242...crank rotor
Claims (3)
前記角度に応じた角度信号を取得する取得部(31)と、
前記処理に用いる少なくとも一つのデータを記憶している記憶装置(3)と、
前記角度信号に同期して前記処理を実行する少なくとも一つの演算部(11,12)と、前記演算部が前記記憶装置にアクセスする場合よりも短時間でアクセス可能な少なくとも一つの記憶部(13,13a,13b)とを有する演算処理装置(1)と、
前記演算部が実行予定の前記処理に用いる前記データである使用データを、前記実行予定の前記処理で必要となるタイミングよりも前に、予め前記記憶装置から前記記憶部に転送する転送部(4,5)と、を備え、
前記転送部は、
前記角度信号が入力される予測周期を予測する予測部(412)と、
前記予測周期に基づいて、前記使用データの転送を開始する転送タイミングを取得するタイミング取得部(42a)と、を備え、
前記タイミング取得部は、前記記憶装置から前記記憶部への前記使用データの転送時間に相当する予め決められた転送規定時間を、前記予測周期から減算することで、前記転送タイミングを取得するエンジン制御装置。 An engine control device that performs processing in synchronization with an angle of an engine crankshaft,
an acquisition unit (31) for acquiring an angle signal according to the angle;
A storage device (3) for storing at least one piece of data to be used in the processing;
a processor (1) having at least one processor (11, 12) for executing the process in synchronization with the angle signal, and at least one memory unit (13, 13a, 13b) that can be accessed in a shorter time than when the processor accesses the memory device;
a transfer unit (4, 5) that transfers use data, which is the data used by the calculation unit for the processing to be executed, from the storage device to the storage unit in advance before the use data is required for the processing to be executed ,
The transfer unit is
A prediction unit (412) for predicting a predicted period in which the angle signal is input;
a timing acquisition unit (42a) that acquires a transfer timing for starting the transfer of the usage data based on the predicted period;
The timing acquisition unit acquires the transfer timing by subtracting a predetermined transfer specified time, which corresponds to the transfer time of the usage data from the storage device to the storage unit, from the predicted period .
前記角度に応じた角度信号を取得する取得部(31)と、
前記処理に用いる少なくとも一つのデータを記憶している記憶装置(3)と、
前記角度信号に同期して前記処理を実行する少なくとも一つの演算部(11,12)と、前記演算部が前記記憶装置にアクセスする場合よりも短時間でアクセス可能な少なくとも一つの記憶部(13,13a,13b)とを有する演算処理装置(1)と、
前記演算部が実行予定の前記処理に用いる前記データである使用データを、前記実行予定の前記処理で必要となるタイミングよりも前に、予め前記記憶装置から前記記憶部に転送する転送部(4,5)と、を備え、
前記転送部は、
前記角度信号が入力される予測周期を予測する予測部(412)と、
前記予測周期に基づいて、前記使用データの転送を開始する転送タイミングを取得するタイミング取得部(42a)と、を備え、
前記タイミング取得部は、予め決められた前記データの基本転送時間と、前記実行予定の前記処理の数との乗算を行うことで、前記記憶装置から前記記憶部へ前記使用データを転送するのに要する合計転送時間を算出し、前記合計転送時間を前記予測周期から減算することで、前記転送タイミングを取得するエンジン制御装置。 An engine control device that performs processing in synchronization with an angle of an engine crankshaft,
an acquisition unit (31) for acquiring an angle signal according to the angle;
A storage device (3) for storing at least one piece of data to be used in the processing;
a processor (1) having at least one processor (11, 12) for executing the process in synchronization with the angle signal, and at least one memory unit (13, 13a, 13b) that can be accessed in a shorter time than when the processor accesses the memory device;
a transfer unit (4, 5) that transfers use data, which is the data used by the calculation unit for the processing to be executed, from the storage device to the storage unit in advance before the use data is required for the processing to be executed ,
The transfer unit is
A prediction unit (412) for predicting a predicted period in which the angle signal is input;
a timing acquisition unit (42a) that acquires a transfer timing for starting the transfer of the usage data based on the predicted period;
The timing acquisition unit calculates a total transfer time required to transfer the usage data from the storage device to the storage unit by multiplying a predetermined basic transfer time of the data by the number of processes scheduled to be executed, and acquires the transfer timing by subtracting the total transfer time from the predicted period .
前記角度に応じた角度信号を取得する取得部(31)と、
前記処理に用いる少なくとも一つのデータを記憶している記憶装置(3)と、
前記角度信号に同期して前記処理を実行する少なくとも一つの演算部(11,12)と、前記演算部が前記記憶装置にアクセスする場合よりも短時間でアクセス可能な少なくとも一つの記憶部(13,13a,13b)とを有する演算処理装置(1)と、
前記演算部が実行予定の前記処理に用いる前記データである使用データを、前記実行予定の前記処理で必要となるタイミングよりも前に、予め前記記憶装置から前記記憶部に転送する転送部(4,5)と、を備え、
前記転送部は、
前記角度信号が入力される予測周期を予測する予測部(412)と、
前記予測周期に基づいて、前記使用データの転送を開始する転送タイミングを取得するタイミング取得部(42a)と、を備え、
前記タイミング取得部は、予め決められた前記データの基本転送時間と、実行予定の前記処理で用いられる前記使用データに固有の転送時間情報の乗算を行うことで、前記記憶装置から前記記憶部へ前記使用データを転送するのに要する合計転送時間を算出し、前記合計転送時間を前記予測周期から減算することで、前記転送タイミングを取得するエンジン制御装置。 An engine control device that performs processing in synchronization with an angle of an engine crankshaft,
an acquisition unit (31) for acquiring an angle signal according to the angle;
A storage device (3) for storing at least one piece of data to be used in the processing;
a processor (1) having at least one processor (11, 12) for executing the process in synchronization with the angle signal, and at least one memory unit (13, 13a, 13b) that can be accessed in a shorter time than when the processor accesses the memory device;
a transfer unit (4, 5) that transfers use data, which is the data used by the calculation unit for the processing to be executed, from the storage device to the storage unit in advance before the use data is required for the processing to be executed ,
The transfer unit is
A prediction unit (412) for predicting a predicted period in which the angle signal is input;
a timing acquisition unit (42a) that acquires a transfer timing for starting the transfer of the usage data based on the predicted period;
The timing acquisition unit calculates a total transfer time required to transfer the usage data from the storage device to the storage unit by multiplying a predetermined basic transfer time of the data by transfer time information specific to the usage data used in the process to be executed, and acquires the transfer timing by subtracting the total transfer time from the predicted period.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021016686A JP7517188B2 (en) | 2021-02-04 | 2021-02-04 | Engine Control Unit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021016686A JP7517188B2 (en) | 2021-02-04 | 2021-02-04 | Engine Control Unit |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2022119506A JP2022119506A (en) | 2022-08-17 |
JP7517188B2 true JP7517188B2 (en) | 2024-07-17 |
Family
ID=82848473
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021016686A Active JP7517188B2 (en) | 2021-02-04 | 2021-02-04 | Engine Control Unit |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7517188B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023008524A1 (en) | 2021-07-28 | 2023-02-02 | 三菱ケミカル株式会社 | Resin composition, resin sheet, multilayer body, sheet cured product, and circuit board material |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005215891A (en) | 2004-01-28 | 2005-08-11 | Denso Corp | Engine controller, method for controlling cache for engine controller |
JP2013101563A (en) | 2011-11-09 | 2013-05-23 | Toshiba Corp | Program conversion apparatus, program conversion method and conversion program |
WO2014184959A1 (en) | 2013-05-17 | 2014-11-20 | 三菱電機株式会社 | Control device and remote controller |
JP2018049385A (en) | 2016-09-20 | 2018-03-29 | 東芝メモリ株式会社 | Memory system and processor system |
-
2021
- 2021-02-04 JP JP2021016686A patent/JP7517188B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005215891A (en) | 2004-01-28 | 2005-08-11 | Denso Corp | Engine controller, method for controlling cache for engine controller |
JP2013101563A (en) | 2011-11-09 | 2013-05-23 | Toshiba Corp | Program conversion apparatus, program conversion method and conversion program |
WO2014184959A1 (en) | 2013-05-17 | 2014-11-20 | 三菱電機株式会社 | Control device and remote controller |
JP2018049385A (en) | 2016-09-20 | 2018-03-29 | 東芝メモリ株式会社 | Memory system and processor system |
Also Published As
Publication number | Publication date |
---|---|
JP2022119506A (en) | 2022-08-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4893244A (en) | Predictive spark timing method | |
JP4449760B2 (en) | Engine control device | |
JP4033138B2 (en) | Combustion pressure signal processor | |
JPH0238791B2 (en) | ||
JP7517188B2 (en) | Engine Control Unit | |
JPS6155613B2 (en) | ||
US20050096865A1 (en) | Method and apparatus for detecting an angle of a rotating shaft | |
JPS6132500B2 (en) | ||
EP0616123B1 (en) | An A/D conversion control apparatus for an internal combustion engine | |
JPH1144250A (en) | Control device for vehicle | |
GB2050644A (en) | Digital control system for internal combustion engine | |
JPS598656B2 (en) | fuel injector | |
JP2019035377A (en) | Ad-conversion processor | |
JP4582252B2 (en) | Engine control device | |
EP2667199B1 (en) | Semiconductor data processing apparatus and engine control apparatus | |
JPH0765556B2 (en) | Ignition control device for internal combustion engine | |
JP2001263150A (en) | Engine control device | |
JP2021163425A (en) | Electronic control device | |
JP7314854B2 (en) | engine controller | |
EP0109675A2 (en) | Electronic ignition control system | |
JP4004747B2 (en) | Fuel injection control device | |
JP5678868B2 (en) | Signal processing device | |
JP3490541B2 (en) | Engine speed detector | |
KR100432606B1 (en) | A replacement installation of crank signal | |
JPS6314766B2 (en) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230614 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20231227 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240130 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240326 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20240604 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240617 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7517188 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |