[go: up one dir, main page]

JP7548111B2 - Electronic Control Unit - Google Patents

Electronic Control Unit Download PDF

Info

Publication number
JP7548111B2
JP7548111B2 JP2021067735A JP2021067735A JP7548111B2 JP 7548111 B2 JP7548111 B2 JP 7548111B2 JP 2021067735 A JP2021067735 A JP 2021067735A JP 2021067735 A JP2021067735 A JP 2021067735A JP 7548111 B2 JP7548111 B2 JP 7548111B2
Authority
JP
Japan
Prior art keywords
calculation
map
parallel
processor
control 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
Application number
JP2021067735A
Other languages
Japanese (ja)
Other versions
JP2022162753A (en
Inventor
結翔 中川
智泰 太田
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 Corp
Original Assignee
Denso Corp
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 Corp filed Critical Denso Corp
Priority to JP2021067735A priority Critical patent/JP7548111B2/en
Priority to DE102022108539.2A priority patent/DE102022108539A1/en
Publication of JP2022162753A publication Critical patent/JP2022162753A/en
Application granted granted Critical
Publication of JP7548111B2 publication Critical patent/JP7548111B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0421Multiprocessor system

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Complex Calculations (AREA)

Description

本発明は、電子制御装置に関する。 The present invention relates to an electronic control device.

近年、例えば自動車の電子制御装置では、制御の複雑化によりマイクロコンピュータの処理能力の向上が図られている。その一例として、複数のコアと並列演算処理器とを備えたマイクロコンピュータを搭載し、コアから並列演算処理器に演算命令の集合体である演算命令群を処理要求し、並列演算処理器により演算命令を並列処理することで演算処理の高速化を図るようにしている。 In recent years, for example in electronic control devices for automobiles, efforts are being made to improve the processing power of microcomputers due to the increasing complexity of control. One example is a microcomputer equipped with multiple cores and a parallel processor, where the core requests the parallel processor to process a set of arithmetic instructions, which is a collection of arithmetic instructions, and the parallel processor processes the arithmetic instructions in parallel, thereby speeding up arithmetic processing.

特開2016-95796号公報JP 2016-95796 A

並列演算処理器は、コアから要求された演算命令群から演算命令を抽出し、ハードウェアの機能により複数の演算器に対して最適なリソース配分を自動的に行うことで高速な並列演算を可能としている。これにより、高速処理が必要なタスクを並列演算処理器に処理させることで、コアの処理時間を削減することが可能となる。 The parallel processor extracts an instruction from a set of instructions requested by the core, and uses the hardware functions to automatically allocate optimal resources to multiple processors, enabling high-speed parallel calculations. This makes it possible to reduce the processing time of the core by having the parallel processor process tasks that require high-speed processing.

しかしながら、並列演算処理器の処理に使用する情報は、制御周期毎に共有メモリから並列演算処理器の内部メモリにロードする必要があり、その際に発生するオーバーヘッドによって処理時間が増大し、並列演算処理器を利用した効果が低下してしまう虞がある。 However, the information used for processing by the parallel processor needs to be loaded from the shared memory to the internal memory of the parallel processor for each control period, and the overhead incurred during this process increases processing time, potentially reducing the benefits of using the parallel processor.

本発明は上記事情に鑑みてなされたもので、その目的は、制御部が並列演算処理器で演算命令群を処理する場合に処理時間を短縮することが可能となる電子制御装置を提供することにある。 The present invention was made in consideration of the above circumstances, and its purpose is to provide an electronic control device that can shorten the processing time when a control unit processes a group of arithmetic instructions using a parallel arithmetic processor.

請求項1の発明によれば、制御部(12a~12c)は、制御情報に基づいて制御対象を制御する場合は、並列演算処理器にてマップに基づいて計算する必要が生じた場合には共有メモリのマップ情報を並列演算処理器に設けられる内部メモリ(23)の所定アドレスにロードし、当該制御情報を求めるのに必要となる変数を引数として並列演算処理器(13)に与える。並列演算処理器は、所定アドレスに記憶されたマップ情報、及び、制御部から与えられた引数に基づいて事前計算して記憶し、実際の計算時に与えられた引数に対応して事前計算によるマップ補間値の計算結果が記憶されていた場合は当該計算結果を制御部に与える。制御部は、並列演算処理器から与えられた計算結果に基づいて制御情報を求め、その制御情報により制御対象を制御する。制御部から与えられた引数が事前計算した範囲外である場合には前記制御部に範囲外であることを通知し、マップの次元数や規模に応じて予め決められた制御部と並列演算処理器のいずれかでマップ補間値を計算する。 According to the invention of claim 1, when the control unit (12a-12c) controls the control target based on the control information, if it becomes necessary to perform calculation based on the map in the parallel processor, the control unit (12a-12c) loads the map information in the shared memory to a predetermined address in the internal memory (23) provided in the parallel processor, and provides the parallel processor (13) with variables required for obtaining the control information as arguments. The parallel processor performs pre-calculation and stores the map information stored in the predetermined address and the arguments provided from the control unit, and provides the calculation result to the control unit if a calculation result of the map interpolation value by the pre-calculation is stored corresponding to the arguments provided at the time of actual calculation. The control unit obtains control information based on the calculation result provided from the parallel processor, and controls the control target using the control information. If the argument provided from the control unit is outside the range of the pre-calculation, the control unit is notified that the argument is outside the range, and the map interpolation value is calculated by either the control unit or the parallel processor, which is predetermined according to the number of dimensions and scale of the map.

第1実施形態に係るマイクロコンピュータの構成を示す機能ブロック図FIG. 1 is a functional block diagram showing a configuration of a microcomputer according to a first embodiment; エンジンECUと各ECUとの接続を示すブロック図A block diagram showing the connections between the engine ECU and each ECU. 並列演算処理器の構成を概略的に示すブロック図A block diagram showing the configuration of a parallel arithmetic processor. 演算命令群の構造を示す図A diagram showing the structure of the operation instruction group 事前計算に関連する動作を示す図Diagram showing the operations involved in precomputation 1次元マップを示す図A diagram showing a one-dimensional map 探索方法を示す図Diagram showing the search method 算出ポイントを示す図Diagram showing calculation points 引数周辺の範囲を示す図Diagram showing the scope around the arguments コアと並列演算処理器との間の送受信を示す図A diagram showing transmission and reception between a core and a parallel processor 第2実施形態に係るコアと並列演算処理器との間の送受信を示す図FIG. 13 is a diagram showing transmission and reception between a core and a parallel processor according to the second embodiment. 第3実施形態に係るコアと並列演算処理器との間の送受信を示す図FIG. 13 is a diagram showing transmission and reception between a core and a parallel processor according to the third embodiment. 第4実施形態に係る2次元マップを示す図FIG. 13 is a diagram showing a two-dimensional map according to the fourth embodiment; 算出ポイントを示す図Diagram showing calculation points X軸方向の線形補間を示す図(その1)Diagram showing linear interpolation in the X-axis direction (part 1) X軸方向の線形補間を示す図(その2)Diagram showing linear interpolation in the X-axis direction (part 2) Y軸方向の線形補間を示す図A diagram showing linear interpolation in the Y-axis direction. 引数周辺の範囲を示す図Diagram showing the scope around the arguments

以下、複数の実施形態について図面を参照して説明する。複数の実施形態において、機能的または構造的に対応する部分には同一の参照符号を付与する場合がある。 Several embodiments will be described below with reference to the drawings. In several embodiments, functionally or structurally corresponding parts may be given the same reference numerals.

(第1実施形態)
第1実施形態について図1から図10を参照して説明する。
図2に示すように、車両にはエンジンECU(Electronic Control Unit)1が搭載されている。エンジンECU1は電子制御装置に相当する。このエンジンECU1は、車載LAN2を介して自動変速ECU3、メータECU4、空調ECU5などの他のECUに通信可能に接続されている。車載LAN2のプロトコルは、例えばCAN(Controller Area Network)である。CANは登録商標である。
First Embodiment
The first embodiment will be described with reference to FIGS.
As shown in Fig. 2, the vehicle is equipped with an engine ECU (Electronic Control Unit) 1. The engine ECU 1 corresponds to an electronic control device. The engine ECU 1 is communicably connected to other ECUs, such as an automatic transmission ECU 3, a meter ECU 4, and an air conditioning ECU 5, via an in-vehicle LAN 2. The protocol of the in-vehicle LAN 2 is, for example, CAN (Controller Area Network). CAN is a registered trademark.

エンジンECU1は、マイクロコンピュータ11を主体として構成されている。図1に示すようにマイクロコンピュータ11は、複数のコア12a~12cからなるコア群12や並列演算処理器13を備えて構成されており、それらのコア12a~12cや並列演算処理器13が複数の演算処理を並列処理することで高速処理を実現している。 The engine ECU 1 is mainly composed of a microcomputer 11. As shown in FIG. 1, the microcomputer 11 is composed of a core group 12 consisting of multiple cores 12a to 12c and a parallel calculation processor 13, and these cores 12a to 12c and the parallel calculation processor 13 process multiple calculations in parallel to achieve high-speed processing.

コア12a~12c及び並列演算処理器13は内部バス14を介して互いに接続されていると共に、ROM15、RAM16などのメモリやCANインターフェースなどのI/O17とも接続されている。マイクロコンピュータ11は他のマイクロコンピュータ18やAD変換器などの周辺回路19とも接続されている。 The cores 12a to 12c and the parallel processor 13 are connected to each other via an internal bus 14, and are also connected to memories such as ROM 15 and RAM 16, and to I/O 17 such as a CAN interface. The microcomputer 11 is also connected to other microcomputers 18 and peripheral circuits 19 such as AD converters.

コア12a~12cは、入力回路20を介してエンジンの運転状態を検出するための各種センサからの検出信号を入力し、その検出信号が示す検出値を処理することで出力回路21を介してエンジンを制御するためのアクチュエータを制御したり、通信回路22を介して他のECUと通信信号を送受信したりする。コア12a~12cは、エンジンを制御する上で所定の演算処理が必要となった場合は並列演算処理器13に処理要求する。 The cores 12a to 12c receive detection signals from various sensors for detecting the operating state of the engine via the input circuit 20, and process the detection values indicated by the detection signals to control actuators for controlling the engine via the output circuit 21, and send and receive communication signals with other ECUs via the communication circuit 22. When specific calculation processing is required to control the engine, the cores 12a to 12c request the parallel calculation processor 13 to perform the processing.

図3に示すように並列演算処理器13は、メモリ23、制御回路24、複数の演算器25から構成されている。メモリ23には複数のコア12a~12cから与えられた演算命令群を処理するための情報が順に記憶される。 As shown in FIG. 3, the parallel arithmetic processor 13 is composed of a memory 23, a control circuit 24, and multiple arithmetic units 25. The memory 23 sequentially stores information for processing groups of arithmetic instructions provided by the multiple cores 12a to 12c.

制御回路24は、メモリ23に記憶された演算命令群を演算器25と連携して演算処理する。つまり、制御回路24はスケジューラ機能を有しており、メモリ23に記憶された演算命令群を構成する演算命令を対応する演算器25に自動的に割り振る。 The control circuit 24 performs calculations on the set of calculation instructions stored in the memory 23 in cooperation with the arithmetic unit 25. In other words, the control circuit 24 has a scheduler function and automatically allocates the calculation instructions constituting the set of calculation instructions stored in the memory 23 to the corresponding arithmetic unit 25.

演算器25は、制御回路24により割り振られた演算命令を順に演算処理する。複数の演算器25は同一種類や異なる種類であり、同一種類や異なる種類の演算命令を演算器25に割り振ることで並列処理可能である。演算器25は、演算処理結果をメモリ23に記憶する。 The calculator 25 sequentially processes the calculation instructions assigned by the control circuit 24. The calculators 25 may be of the same type or different types, and parallel processing is possible by assigning the same type or different types of calculation instructions to the calculators 25. The calculator 25 stores the calculation processing results in the memory 23.

複数のコア12a~12cは、演算命令群を処理することを並列演算処理器13に要求した場合はメモリ23を介して演算結果を取得し、その演算結果に基づいて以後の処理を実行する。 When the multiple cores 12a to 12c request the parallel processor 13 to process a group of arithmetic instructions, they obtain the results of the arithmetic via the memory 23 and execute subsequent processing based on the results of the arithmetic.

コア12a~12cが処理要求する演算命令群は、演算命令の処理順序が規定されている。例えば図4に示す演算命令群では、演算命令Aの演算処理が完了してから次の演算命令B~Dをそれぞれ演算処理し、演算命令B~Dの全ての演算処理が完了してから次の演算命令Eを演算処理することを規定している。 The processing order of the calculation instructions requested by the cores 12a to 12c is specified. For example, the calculation instruction group shown in FIG. 4 specifies that the processing of the calculation instruction A is completed before the next calculation instructions B to D are processed, and that the processing of the next calculation instruction E is completed after all the calculation instructions B to D are processed.

さて、コア12a~12cの処理時間を削減するために高速処理が必要なタスクを並列演算処理器13に処理をさせることが考えられるが、並列演算処理器13の処理に使用する情報は、制御周期毎に電子制御装置の共有メモリから並列演算処理器13の内部メモリ23にロードする必要がある。このため、その際に発生するオーバーヘッドによって処理時間が増大し、並列演算処理器13を用いた効果が低下してしまう虞がある。 Now, in order to reduce the processing time of the cores 12a to 12c, it is conceivable to have the parallel processor 13 process tasks that require high-speed processing; however, the information used in the processing of the parallel processor 13 needs to be loaded from the shared memory of the electronic control device to the internal memory 23 of the parallel processor 13 for each control cycle. For this reason, the overhead generated at that time increases the processing time, and there is a risk that the effect of using the parallel processor 13 will be reduced.

このような事情から、本実施形態では、並列演算処理器13で事前計算可能な処理がある場合は並列演算処理器13に予め処理依頼する。この処理依頼の際、事前計算に必要となる情報を並列演算処理器13に渡す。並列演算処理器13は、処理依頼を受けて情報に基づいて事前計算し、計算結果を記憶しておく。事前計算の範囲は情報の特性に応じて決定する。例えば時定数で示されるパラメータを決め、情報の変動範囲が制御周期毎に変化しやすい場合はパラメータを大きく設定することで事前計算の範囲を大きく設定する。 In view of these circumstances, in this embodiment, if there is processing that can be pre-calculated by the parallel arithmetic processor 13, a processing request is made to the parallel arithmetic processor 13 in advance. When making this processing request, information required for the pre-calculation is passed to the parallel arithmetic processor 13. Upon receiving the processing request, the parallel arithmetic processor 13 performs pre-calculation based on the information and stores the calculation results. The range of pre-calculation is determined according to the characteristics of the information. For example, a parameter indicated by a time constant is determined, and if the range of fluctuation of the information is likely to change for each control cycle, the parameter is set large to set a large range of pre-calculation.

以下、並列演算処理器13で事前計算できる処理としてマップ計算を例示するが、マップ計算に限定されることなく事前計算が可能であればどのような処理であってもよい。
図5に示すように電子制御装置の共有メモリ26には制御用のマップ情報が記憶されており、並列演算処理器13でマップに基づいて計算する必要が生じた場合は、並列演算処理器の内部メモリ23の所定アドレスにマップ情報をロードする。
In the following, map calculation is exemplified as a process that can be pre-calculated by the parallel calculation processor 13, but the process is not limited to map calculation and may be any process that can be pre-calculated.
As shown in FIG. 5, map information for control is stored in the shared memory 26 of the electronic control unit, and when it becomes necessary for the parallel processor 13 to perform calculations based on the map, the map information is loaded into a specified address in the internal memory 23 of the parallel processor.

内部メモリ23には要求元のコア12a~12cに対応してマップ情報をロードするアドレスが設定されており、並列演算処理器13にマップ情報をロードする場合は対応するアドレスにロードする。並列演算処理器13は、コア12a~12cから変数が与えられた場合は対応するアドレスに記憶されたマップ情報に基づいてマップ計算し、計算結果をコア12a~12cに返信する。 Addresses for loading map information corresponding to the requesting cores 12a to 12c are set in the internal memory 23, and when loading map information into the parallel arithmetic processor 13, it is loaded into the corresponding address. When a variable is given from the cores 12a to 12c, the parallel arithmetic processor 13 performs map calculations based on the map information stored in the corresponding address and returns the calculation results to the cores 12a to 12c.

以下、上記動作について具体的に説明する。
コア12a~12cは、図6に模式的に示す1次元マップを予め記憶している。この1次元マップは、マップ点Xと対応値点Yとの対応関係を示している。マップ点X1に対応して対応値Y1、マップ値X2に対応して対応値Y2、……マップ値X9に対応して対応値Y9が設定されている。
The above operation will now be described in detail.
The cores 12a to 12c store in advance a one-dimensional map as shown in Fig. 6. This one-dimensional map shows the correspondence between map points X and corresponding value points Y. A corresponding value Y1 is set corresponding to map point X1, a corresponding value Y2 is set corresponding to map value X2, ... a corresponding value Y9 is set corresponding to map value X9.

このような1次元マップを用いて変数に対応するマップ補間値を決定する場合、変数が1次元マップのX軸に規定されているマップ点(X1,X2、……)の場合は対応値(Y1、Y2、……)を直接的に決定することができるが、変数がX軸に規定されていない場合は変数XAからマップ補間値YAを直接的に決定することはできない。 When using such a one-dimensional map to determine a map interpolation value corresponding to a variable, if the variable is a map point (X1, X2, ...) defined on the X-axis of the one-dimensional map, the corresponding value (Y1, Y2, ...) can be directly determined, but if the variable is not defined on the X-axis, the map interpolation value YA cannot be directly determined from the variable XA.

このような場合、マップ点AをX軸及びY軸のマップ点に基づいて補間処理することはできるが、コア12a~12cが1次元マップに基づいて補間処理したのではコア12a~12cの処理時間が長くなり計算に間に合わなくなる虞がある。そこで、高速処理が必要な補間処理を並列演算処理器13に処理させることでコア12a~12cの処理時間の削減を図るようにした。 In such a case, map point A can be interpolated based on the map points of the X-axis and Y-axis, but if cores 12a to 12c were to perform the interpolation based on a one-dimensional map, the processing time of cores 12a to 12c would become too long and there is a risk that they would not be able to keep up with the calculations. Therefore, the interpolation process, which requires high speed processing, is performed by parallel calculation processor 13, thereby reducing the processing time of cores 12a to 12c.

コア12a~12cは、次の周期タスクで変数に対応したマップ補間値を求める場合、現在の変数または現在の変数から次の周期タスクで使用すると予測した変数を引数XAとして並列演算処理器13に与える。
以下、並列演算処理器13にて引数XAに対応するマップ補間値YAを補間処理により計算する方法について説明する。但し、X1≦XA≦X2として説明する。
When the cores 12a to 12c obtain a map interpolation value corresponding to a variable in the next periodic task, they provide the current variable or a variable predicted from the current variable to be used in the next periodic task as an argument XA to the parallel calculation processor 13.
A method of calculating the map interpolation value YA corresponding to the argument XA by the interpolation process in the parallel calculation processor 13 will be described below, where X1≦XA≦X2 is assumed.

並列演算処理器13は、まず軸探索を行う。軸探索では、図7に示すように算出ポイントがマップ点X1~X9のいずれのマップ点間にあるのかをマップ点X9から順に大小判定を実施し、該当する算出ポイントを探索する。軸探索をマップ点X1から開始してもよいし、中間のマップ点から開始してもよい。X9から探索する場合に算出ポイントがX1~X2となった場合は、以後も探索回数が多くなる状態が継続することが予測される。従って、前回の軸探索による算出ポイントに基づいて探索開始ポイントを制御周期毎に変更することで、探索の効率化を図るのが望ましい。 The parallel calculation processor 13 first performs an axis search. In the axis search, as shown in FIG. 7, a magnitude judgment is performed starting from map point X9 to determine whether the calculation point is between map points X1 to X9, and the corresponding calculation point is searched for. The axis search may start from map point X1, or from an intermediate map point. If the calculation point is between X1 and X2 when searching from X9, it is predicted that the number of searches will continue to increase. Therefore, it is desirable to improve the efficiency of the search by changing the search start point for each control cycle based on the calculation point from the previous axis search.

大小判定による軸探索の結果、図8に示すようにX1≦XA≦X2であることを探索した場合は、1次元マップの補間処理を実行する。この補間処理では、マップ点(X1,Y1)、(X2,Y2)から下記の1次式の線形補間式を用いて引数XAに対応したマップ補間値YAを算出する。
YA=((Y2-Y1)/(X2-X1))*(XA-X1)+Y1
以上のようにして引数の軸探索と補間処理とを実行することによりマップ計算し、図6に示すように引数XAに対応したマップ補間値YAを求めることができる。
If the axis search by magnitude judgment finds that X1≦XA≦X2 as shown in Fig. 8, one-dimensional map interpolation processing is executed. In this interpolation processing, a map interpolation value YA corresponding to the argument XA is calculated from map points (X1, Y1) and (X2, Y2) using the following linear interpolation formula of the first degree.
YA=((Y2-Y1)/(X2-X1))*(XA-X1)+Y1
By executing the axis search and interpolation processing of the arguments as described above, map calculation is performed, and a map interpolation value YA corresponding to the argument XA can be obtained as shown in FIG.

次に、X1≦XA≦X2であることから、図9に斜線で示す範囲を引数周辺の範囲と定め、各格子点に対し補間処理をする。X軸における引数周辺は引数の点からX軸方向に±pLSBで表される。LSBはXAを示すRAM値が1変化したときの物理値の変化量、つまり変数の最小変化量である。pは軸の特性を時定数で示すパラメータである。引数周辺の範囲は、制御周期毎の変動を予測して設定する。 Next, since X1≦XA≦X2, the range indicated by diagonal lines in Figure 9 is defined as the range around the argument, and interpolation processing is performed for each lattice point. The range around the argument on the X-axis is expressed as ±pLSB from the argument point in the X-axis direction. LSB is the amount of change in the physical value when the RAM value indicating XA changes by 1, in other words, the minimum amount of change in the variable. p is a parameter that indicates the axis characteristics as a time constant. The range around the argument is set by predicting the fluctuations for each control cycle.

次に、コア12a~12cからの処理依頼に応じて並列演算処理器13でマップ計算する動作について説明する。本実施形態では、並列演算処理器13でマップ補間値を事前計算して保持し、次の周期タスクでコア12a~12cから送信された引数に対応付けたマップ補間値に基づいて処理し、演算結果をコア12a~12cに渡すことを特徴とする。 Next, the operation of performing map calculations in the parallel arithmetic processor 13 in response to processing requests from the cores 12a to 12c will be described. This embodiment is characterized in that the parallel arithmetic processor 13 pre-calculates and stores map interpolation values, processes the next periodic task based on the map interpolation values associated with the arguments sent from the cores 12a to 12c, and passes the calculation results to the cores 12a to 12c.

図10に示すようにコア12a~12cと並列演算処理器13との間で以下のように情報を送受信する。
[事前計算]
(1)コア12a~12cは、次の周期タスクで使用するマップの引数と、引数周辺のマップ情報を送信する。
(2)並列演算処理器13は、引数周辺の軸探索と補間処理とを実行することによりマップ計算し、引数とマップ補間値とを対応付けて保持する。
(3)並列演算処理器13は、マップ補間値を保持している内部メモリ23のアドレスを送信する。
As shown in FIG. 10, information is transmitted and received between the cores 12a to 12c and the parallel processor 13 as follows.
[Precalculation]
(1) The cores 12a to 12c transmit the arguments of the map to be used in the next periodic task and map information around the arguments.
(2) The parallel calculation processor 13 performs map calculations by executing axis search and interpolation processing around the arguments, and stores the arguments and the map interpolated values in association with each other.
(3) The parallel calculation processor 13 transmits the address of the internal memory 23 that holds the map interpolation value.

[周期タスクでの処理]
(4)コア12a~12cは、次の制御周期となると、処理を依頼する。
(5)並列演算処理器13は、コア12a~12cからの引数に対応付けられた計算値を求める処理を行う。このとき、使用するマップは(2)で保存したマップ計算を用いる。
(6)並列演算処理器13は、使用する引数が(2)で保持した値の範囲内の場合は、(5)の計算結果を返信する。一方、使用する引数が範囲外の場合は、コア12a~12cに範囲外であることを通知する。
[Periodic task processing]
(4) When the next control period begins, the cores 12a to 12c request processing.
(5) The parallel processor 13 performs a process to obtain a calculation value associated with the argument from the cores 12a to 12c. At this time, the map used is the map calculation stored in (2).
(6) If the argument to be used is within the range of values stored in (2), the parallel processor 13 returns the calculation result of (5). On the other hand, if the argument to be used is outside the range, the parallel processor 13 notifies the cores 12a to 12c that the argument is outside the range.

(7)コア12a~12cは、範囲外であることを受信した場合は、軸探索と補間処理とを実行することによりマップ計算する。マップの次元数や規模によっては並列演算処理器13で計算した方が早いことから、並列演算処理器13で計算する。マップの次元数や規模に応じてコア12a~12cと並列演算処理器13とのいずれで計算すべきかを予め決めておく。 (7) When cores 12a to 12c receive information indicating that the value is outside the range, they perform axis search and interpolation processing to calculate the map. Depending on the number of dimensions and scale of the map, calculations are performed by parallel processor 13, which may be faster. It is determined in advance whether calculations should be performed by cores 12a to 12c or parallel processor 13, depending on the number of dimensions and scale of the map.

(8)コア12a~12cは、並列演算処理器13で計算させた方が早い場合はマップ補間値及びマップ情報を送信する。
(9)並列演算処理器13は、受信した情報に基づいてマップ計算する。
(10)並列演算処理器13は、計算結果を返信する。これにより、コア12a~12cは、計算結果に基づいて以後の処理を実行する。
(8) The cores 12a to 12c transmit the map interpolation value and the map information when it is faster to have the parallel calculation processor 13 perform the calculation.
(9) The parallel calculation processor 13 performs map calculations based on the received information.
(10) The parallel processor 13 returns the calculation result, so that the cores 12a to 12c execute the subsequent processing based on the calculation result.

[次の周期タスクの事前計算]
(11)コア12a~12cは、再計算したマップについて、次の周期タスクで使用するマップの引数と、引数周辺のマップ情報を送信する。
(12)並列演算処理器13は、(2)と同じ処理をし、保持していた結果を更新する。
(13)並列演算処理器13は、マップ補間値を保持しているアドレスを送信する。
[Precalculate next periodic task]
(11) For the recalculated map, the cores 12a to 12c transmit the arguments of the map to be used in the next periodic task and map information around the arguments.
(12) The parallel calculation processor 13 performs the same process as in (2) and updates the results it has stored.
(13) The parallel calculation processor 13 transmits the address holding the map interpolation value.

このような実施形態によれば、次のような効果を奏することができる。
並列演算処理器13は、コア12a~12cから与えられた引数に基づいて保持しているマップから引数及び引数周辺に対応したマップ補間値を事前計算して保持し、次の周期タスクで与えられた引数に対応する事前計算の計算結果が保持されていた場合は当該計算結果をコア12a~12cに与え、コア12a~12cは、並列演算処理器13から与えられた計算結果に基づいて求めたマップ補間値により以後の処理を実行する。これにより、オーバーヘッドを抑制することができるので、並列演算処理器13を利用した処理時間の短縮を図ることができる。
According to this embodiment, the following effects can be obtained.
The parallel processor 13 pre-calculates and stores map interpolation values corresponding to arguments and their periphery from the stored map based on arguments provided from the cores 12a to 12c, and if a calculation result of the pre-calculation corresponding to an argument provided in the next periodic task is stored, the parallel processor 13 provides the calculation result to the cores 12a to 12c, and the cores 12a to 12c execute subsequent processing using the map interpolation values calculated based on the calculation result provided from the parallel processor 13. This makes it possible to suppress overhead, thereby shortening the processing time using the parallel processor 13.

並列演算処理器13による引数周辺の範囲をマップの軸の特性に応じて設定するようにしたので、引数周辺の範囲を適切に設定することができる。
コア12a~12cは、事前計算後に計算結果を受け取りたいタイミングで引数を送信することで計算結果を受け取ることができるので、以後の処理を迅速に実行することができる。
Since the range around the argument by the parallel calculation processor 13 is set in accordance with the characteristics of the map axis, the range around the argument can be set appropriately.
The cores 12a to 12c can receive the calculation results by transmitting arguments at the desired timing after pre-calculation, so that the subsequent processing can be executed quickly.

並列演算処理器13は、計算結果の受け渡し先に応じて計算結果を記憶する記憶領域を変更するので、コア12a~12cは、任意のタイミングで計算結果を受信することができる。 The parallel computing unit 13 changes the memory area in which the calculation results are stored depending on the destination of the calculation results, so that the cores 12a to 12c can receive the calculation results at any time.

(第2実施形態)
第2実施形態について図11を参照して説明する。第2実施形態は、並列演算処理器13でマップ補間値を事前計算して保持し、次の周期タスクでコア12a~12cから送信された引数に対応付けたマップ補間値をコア12a~12cに渡し、マップ補間値に基づく計算をコア12a~12cで実行することを特徴とする。
Second Embodiment
The second embodiment will be described with reference to Fig. 11. The second embodiment is characterized in that the parallel arithmetic processor 13 pre-calculates and holds map interpolation values, and in the next periodic task, passes the map interpolation values associated with arguments transmitted from the cores 12a to 12c to the cores 12a to 12c, and the cores 12a to 12c execute calculations based on the map interpolation values.

図11に示すようにコア12a~12cと並列演算処理器13との間で以下のように情報を送受信する。
[事前計算]
(1)コア12a~12cは、次の周期タスクで使用するマップの引数と、引数周辺のマップ情報を送信する。
(2)並列演算処理器13は、引数周辺の軸探索と補間処理とを実行することによりマップ計算し、引数とマップ補間値とを対応付けて保持する。
(3)並列演算処理器13は、マップ補間値を保持している内部メモリ23のアドレスを送信する。
As shown in FIG. 11, information is transmitted and received between the cores 12a to 12c and the parallel processor 13 as follows.
[Precalculation]
(1) The cores 12a to 12c transmit the arguments of the map to be used in the next periodic task and map information around the arguments.
(2) The parallel calculation processor 13 performs map calculations by executing axis search and interpolation processing around the arguments, and stores the arguments and the map interpolated values in association with each other.
(3) The parallel calculation processor 13 transmits the address of the internal memory 23 that holds the map interpolation value.

[周期タスクでの処理]
(4)コア12a~12cは、次の制御周期となると、マップの引数を送信する。
(5)並列演算処理器13は、使用する引数が(2)で保持した情報の範囲内であれば、引数に対応付けられたマップ補間値を返信する。一方、使用する引数が(2)で保持した情報の範囲外であれば、範囲外であることを通知する。
[Periodic task processing]
(4) When the next control cycle begins, the cores 12a to 12c transmit the map arguments.
(5) If the argument to be used is within the range of the information held in (2), the parallel processor 13 returns a map interpolation value associated with the argument. On the other hand, if the argument to be used is outside the range of the information held in (2), the parallel processor 13 notifies the user that the argument is outside the range.

(6)コア12a~12cは、受信したマップ補間値に基づいて処理する。一方、範囲外であることを受信した場合、軸探索と補間処理とを実行することによりマップ計算する。マップの次元数や規模によって、並列演算処理器13で計算させたほうが良い場合は並列演算処理器13にマップ情報を送信し、並列演算処理器13で計算する。この場合、マップの次元数や規模に応じていずれで計算すべきかを予め決めておく。 (6) Cores 12a to 12c process based on the received map interpolation value. On the other hand, if it receives information indicating that the value is outside the range, it performs the map calculation by executing axis search and interpolation processing. If it is better to have the calculation performed by the parallel calculation processor 13 due to the number of dimensions and scale of the map, the map information is sent to the parallel calculation processor 13, and the calculation is performed by the parallel calculation processor 13. In this case, it is determined in advance which method should be used for the calculation depending on the number of dimensions and scale of the map.

(7)並列演算処理器13は、マップ計算を並列演算処理器13にさせる場合はマップ情報を送信する。
(8)並列演算処理器13は、マップ計算する。
(9)並列演算処理器13は、マップ補間値を送信する。
(10)コア12a~12cは、受信したマップ補間値を利用して処理する。
(7) The parallel processor 13 transmits map information when the parallel processor 13 is to perform map calculations.
(8) The parallel calculation processor 13 performs map calculations.
(9) The parallel calculation processor 13 transmits the map interpolated value.
(10) The cores 12a to 12c process the received map interpolated values using the interpolated values.

[次の周期タスクの事前計算]
(11)コア12a~12cは、再計算したマップについて、次の周期タスクで使用するマップの引数と、引数周辺のマップ情報を送信する。
(12)並列演算処理器13は、(2)と同じ処理をし、保持していた結果を更新する。
(13)並列演算処理器13は、マップ補間値を保持しているアドレスを送信する。
[Precalculate next periodic task]
(11) For the recalculated map, the cores 12a to 12c transmit the arguments of the map to be used in the next periodic task and map information around the arguments.
(12) The parallel calculation processor 13 performs the same process as in (2) and updates the results it has stored.
(13) The parallel calculation processor 13 transmits the address holding the map interpolation value.

このような実施形態によれば、並列演算処理器13でマップ補間値を事前計算して保持し、次の周期タスクでコア12a~12cから送信された引数に対応付けたマップ補間値をコア12a~12cに渡し、マップ補間値に基づく計算をコア12a~12cで実行するので、並列演算処理器13の処理能力が低下した場合であっても全体の処理時間の短縮を図ることができる。 In this embodiment, the parallel arithmetic processor 13 pre-calculates and stores the map interpolation value, passes the map interpolation value associated with the argument sent from the cores 12a to 12c to the cores 12a to 12c in the next periodic task, and executes calculations based on the map interpolation value in the cores 12a to 12c. Therefore, even if the processing power of the parallel arithmetic processor 13 is reduced, the overall processing time can be shortened.

(第3実施形態)
第3実施形態について図12を参照して説明する。第3実施形態では、並列演算処理器13でマップ補間値を事前計算し、それに関連した情報をコア12a~12cが保持し、次の周期タスクで引数に対応付けたマップ補間値に基づいて処理することを特徴とする。
Third Embodiment
The third embodiment will be described with reference to Fig. 12. The third embodiment is characterized in that the parallel calculation processor 13 pre-calculates map interpolation values, the cores 12a to 12c hold information related to the pre-calculation, and the next periodic task is processed based on the map interpolation values associated with arguments.

[事前計算]
(1)コア12a~12cは、次の周期タスクで使用するマップの引数と、引数周辺のマップ情報を送信する。
(2)並列演算処理器13は、引数周辺の軸探索と補間処理とを実行することによりマップ計算し、引数とマップ補間値を対応付ける。
(3)並列演算処理器13は、(2)の情報を送信する。
(4)コア12a~12cは、受信した情報を保持する。
[Precalculation]
(1) The cores 12a to 12c transmit the arguments of the map to be used in the next periodic task and map information around the arguments.
(2) The parallel calculation processor 13 performs map calculations by executing axis search and interpolation processing around the arguments, and associates the arguments with map interpolated values.
(3) The parallel processor 13 transmits the information in (2).
(4) The cores 12a to 12c store the received information.

[周期タスクでの処理]
(5)コア12a~12cは、保持した情報を利用して処理する。引数に対応する結果を保持していなかった場合は、マップ計算してから処理する。
[Periodic task processing]
(5) The cores 12a to 12c use the stored information to carry out processing. If the result corresponding to the argument is not stored, the cores 12a to 12c perform a map calculation before carrying out processing.

[次の周期タスクの事前計算]
(6)コア12a~12cは、再計算したマップについて、次の周期タスクで使用するマップの引数と、引数周辺のマップ情報を送信する。
(7)並列演算処理器13は、(2)と同じ処理をする。
(8)並列演算処理器13は、処理した情報を送信する。
(9)コア12a~12cは、(4)の情報を更新する。
[Precalculate next periodic task]
(6) For the recalculated map, the cores 12a to 12c transmit the arguments of the map to be used in the next periodic task and map information around the arguments.
(7) The parallel calculation processor 13 performs the same process as in (2).
(8) The parallel processor 13 transmits the processed information.
(9) The cores 12a to 12c update the information in (4).

このような実施形態によれば、並列演算処理器13に引数及びマップ情報を事前に送信することでマップ計算し、それに関連した情報をコア12a~12cが保持し、次の周期タスクで引数に対応付けたマップ補間値に基づいて処理するので、並列演算処理器13の処理能力が極端に低下した場合であっても全体の処理時間の短縮を図ることができる。 In this embodiment, the map is calculated by sending arguments and map information to the parallel arithmetic processor 13 in advance, and the cores 12a to 12c hold the related information. The next periodic task is processed based on the map interpolation value associated with the arguments, so that the overall processing time can be shortened even if the processing capacity of the parallel arithmetic processor 13 is extremely reduced.

(第4実施形態)
第4実施形態について図13から図16を参照して説明する。第4実施形態は、対象マップとして2次元マップを用いることを特徴とする。
(Fourth embodiment)
The fourth embodiment will be described with reference to Figures 13 to 16. The fourth embodiment is characterized in that a two-dimensional map is used as the target map.

図13に示すように2次元マップには、マップ点(X1(X1≦XA≦X2),Y1(Y1≦YA≦Y2))に対応して対応値Z11、マップ点(X2,Y2)に対応して対応値Z12、……マップ点(X9,Y9)に対応して対応値Z99が設定されている。
図14に示すように2次元マップにおける任意の点(XA,YA)の補間値ZAの算出方法は、X軸方向とY軸方向の1次式による線形補間の組み合わせで算出される。
As shown in FIG. 13, in the two-dimensional map, a corresponding value Z11 is set corresponding to map point (X1 (X1≦XA≦X2), Y1 (Y1≦YA≦Y2)), a corresponding value Z12 is set corresponding to map point (X2, Y2), ... a corresponding value Z99 is set corresponding to map point (X9, Y9).
As shown in FIG. 14, the method of calculating an interpolated value ZA of an arbitrary point (XA, YA) in a two-dimensional map is a combination of linear interpolations using linear expressions in the X-axis and Y-axis directions.

即ち、任意の点(XA、YA)のマップ点の算出ポイントを探索すると、図14に示すように算出ポイントを決定することができる。算出ポイントは、4点(X1,Y1,Z11),(X2,Y1,Z12),(X1,Y2,Z21),(X2,Y2,Z22)の間にあることから、下記の補間処理1~3の1次式による線形補間の組み合わせでマップ点(XA,YA)の補間値ZAを算出する。 That is, by searching for the calculation point of the map point of an arbitrary point (XA, YA), the calculation point can be determined as shown in FIG. 14. Since the calculation point is between four points (X1, Y1, Z11), (X2, Y1, Z12), (X1, Y2, Z21), and (X2, Y2, Z22), the interpolated value ZA of the map point (XA, YA) is calculated by combining linear interpolation using the first-order equations of the following interpolation processes 1 to 3.

まず、点(XA,Y1)に対応するZiを補間処理1により求める。
補間処理1は、図15に示すように点(XA(X1≦XA≦X2),Y1)の探索結果より、補間値Ziをマップ点(X1,Y1,Z11),(X2,Y1,Z12)から算出する。
X軸方向の線形補間式は、Zi=((Z12-Z11)/(X2-X1))*(XA-X1)+Z11となる。
First, Zi corresponding to the point (XA, Y1) is found by the interpolation process 1.
In the interpolation process 1, as shown in FIG. 15, an interpolation value Zi is calculated from map points (X1, Y1, Z11), (X2, Y1, Z12) based on the search result of point (XA (X1≦XA≦X2), Y1).
The linear interpolation equation in the X-axis direction is Zi = ((Z12 - Z11) / (X2 - X1)) * (XA - X1) + Z11.

次に、点(XA,Y2)に対応するZiiを補間処理1により求める。
補間処理2は、図16に示すように点(XA(X1≦XA≦X2),Y2)の探索結果より、補間値Ziiをマップ点(X1,Y2,Z21),(X2,Y2,Z22)から算出する。
X軸方向の線形補間式は、Zii=((Z22-Z21)/(X2-X1))*(XA-X1)+Z21となる。
Next, Zii corresponding to point (XA, Y2) is found by the interpolation process 1.
In the second interpolation process, as shown in FIG. 16, an interpolated value Zii is calculated from map points (X1, Y2, Z21), (X2, Y2, Z22) based on the search result of point (XA (X1≦XA≦X2), Y2).
The linear interpolation equation in the X-axis direction is Zii = ((Z22 - Z21) / (X2 - X1)) * (XA - X1) + Z21.

最後に、点YAに対応するZAを補間処理3により求める。
補間処理3は、図17に示すように上記補間処理1,2で算出した補間値の2点(XA,Y1,Zi)、(XA,Y2,Zii)から、点YA(Y1≦YA≦Y2)に対する補間値ZAを算出する。
Y軸方向の線形補間式は、ZA=((Zii-Zi)/(Y2-Y1))*(YA-Y1)+Ziとなる。
X軸方向を補間してからY軸方向を補間するのに代えて、Y軸方向を補間してからX軸方向を補間するようにしてもよい。
Finally, ZA corresponding to point YA is obtained by the interpolation process 3.
As shown in FIG. 17, the interpolation process 3 calculates an interpolation value ZA for a point YA (Y1≦YA≦Y2) from the two points (XA, Y1, Zi) and (XA, Y2, Zii) of the interpolated values calculated in the interpolation processes 1 and 2.
The linear interpolation equation in the Y-axis direction is ZA=((Zii-Zi)/(Y2-Y1))*(YA-Y1)+Zi.
Instead of first interpolating the X-axis direction and then the Y-axis direction, the Y-axis direction may be interpolated first and then the X-axis direction.

図18に示すように例えば引数が点(X(X1≦X≦X2),Y(Y1≦Y≦Y2))であれば、引数周辺を斜線範囲と定め、各格子点に対し補間処理をする。つまり、軸は引数の点からX軸方向に±pLSB、Y軸方向に±qLSBのように計算する。LSBはRAM値が1変化したときの物理値の変化量である。この場合、マップの次元数や規模に応じてどちらで計算すべきかを予め決めておく。例えばX軸が水温、Y軸がエンジン回転数であれば、基本的にはエンジン回転数のほうが変化しやすいパラメータであるため、Y軸のほうが広くなるように設定する。 As shown in Figure 18, for example, if the argument is a point (X (X1 <= X <= X2), Y (Y1 <= Y <= Y2)), the area around the argument is defined as the diagonal line range, and interpolation is performed for each lattice point. In other words, the axis is calculated as ±pLSB in the X-axis direction and ±qLSB in the Y-axis direction from the argument point. LSB is the amount of change in the physical value when the RAM value changes by 1. In this case, which should be calculated is determined in advance depending on the number of dimensions and scale of the map. For example, if the X-axis is water temperature and the Y-axis is engine speed, engine speed is basically the parameter that changes more easily, so the Y-axis is set to be wider.

このような実施形態によれば、対象マップが2次元マップの場合であっても、X軸方向とY軸方向とを順に補間することでマップ計算を適切に行うことができる。 According to this embodiment, even if the target map is a two-dimensional map, map calculations can be performed appropriately by sequentially interpolating the X-axis direction and the Y-axis direction.

(その他の実施形態)
並列演算処理器13は、今回の周期タスクで事前に与えられた引数に対応する計算結果を記憶していない場合は今回与えられた引数に基づいて計算し、その計算結果をコア12a~12cに送信するようにしてもよい。この場合、引数周辺が補間処理されていない場合であっても補間処理を行うことができる。
Other Embodiments
If the parallel processor 13 does not store the calculation result corresponding to the argument given in advance in the current periodic task, the parallel processor 13 may perform a calculation based on the argument given in the current task and transmit the calculation result to the cores 12a to 12c. In this case, the interpolation process can be performed even if the periphery of the argument has not been interpolated.

並列演算処理器13は、次の周期タスクを実行するまでに今回与えられた引数及び引数周辺の演算を行い、記憶していた計算結果を更新するようにしてもよい。この場合、並列演算処理器13が引数に対応する計算結果を記憶していない場合であっても、並列演算処理器13を用いた効果が低下してしまうことを抑制することができる。 The parallel arithmetic processor 13 may perform calculations on the currently given arguments and related arguments before executing the next periodic task, and update the stored calculation results. In this case, even if the parallel arithmetic processor 13 does not store the calculation results corresponding to the arguments, it is possible to prevent the effect of using the parallel arithmetic processor 13 from decreasing.

並列演算処理器13の処理能力に合わせて第1~第3実施形態を組み合わせるようにしてもよい。つまり、並列演算処理器13の処理能力が高い場合は第1実施形態のように動作し、処理能力の低下に応じて第2実施形態、第3実施形態のように動作させるようにしてもよい。 The first to third embodiments may be combined according to the processing capacity of the parallel arithmetic processor 13. In other words, when the processing capacity of the parallel arithmetic processor 13 is high, it may operate as in the first embodiment, and when the processing capacity decreases, it may operate as in the second or third embodiment.

対象マップとして3次元以上のものを用いるようにしてもよい。
電子制御装置としては、エンジンECUに限定されることなく、制御対象を制御する装置であれば適用可能である。
The target map may be three or more dimensional.
The electronic control device is not limited to the engine ECU, and may be any device that controls a controlled object.

本開示は、実施形態に準拠して記述されたが、本開示は当該実施形態や構造に限定されるものではないと理解される。本開示は、様々な変形例や均等範囲内の変形をも包含する。加えて、様々な組み合わせや形態、さらには、それらに一要素のみ、それ以上、あるいはそれ以下、を含む他の組み合わせや形態をも、本開示の範疇や思想範囲に入るものである。 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, various combinations and forms, as well as other combinations and forms including only one element, more than one element, or less than one element, are also within the scope and spirit of the present disclosure.

図面中、1はエンジンECU(電子制御装置)、11はマイクロコンピュータ、12a~12cはコア(制御部)、13は並列演算処理器、25は演算器である。
In the drawing, reference numeral 1 denotes an engine ECU (electronic control unit), 11 denotes a microcomputer, 12a to 12c denote cores (control units), 13 denotes a parallel arithmetic processor, and 25 denotes a computing unit.

Claims (7)

複数の演算器(25)により並列処理が可能な並列演算処理器(13)を搭載したマイクロコンピュータ(11)を備えた電子制御装置であって、
制御用のマップ情報が記憶される共有メモリ(26)と、
制御情報に基づいて制御対象を制御する制御部(12a~12c)と、を備え、
前記制御部は、前記並列演算処理器にてマップに基づいて計算する必要が生じた場合には前記共有メモリのマップ情報を前記並列演算処理器に設けられる内部メモリ(23)の所定アドレスにロードし、前記制御情報を求めるための計算に必要となる変数を引数として前記並列演算処理器に与えると共に、前記並列演算処理器から与えられた計算結果に基づいて前記制御情報を求め、
前記並列演算処理器は、前記所定アドレスに記憶されたマップ情報、及び、前記制御部から与えられた引数に基づいて事前計算して記憶し、前記制御部から実際の計算時に与えられた引数に対応して事前計算によるマップ補間値の計算結果が記憶されていた場合は当該計算結果を前記制御部に与え、前記制御部から与えられた引数が前記事前計算した範囲外である場合には前記制御部に範囲外であることを通知し、前記マップの次元数や規模に応じて予め決められた前記制御部と前記並列演算処理器のいずれかでマップ補間値を計算する電子制御装置。
An electronic control device including a microcomputer (11) equipped with a parallel arithmetic processor (13) capable of performing parallel processing by a plurality of arithmetic units (25),
A shared memory (26) in which map information for control is stored;
A control unit (12a to 12c) that controls a control target based on control information ,
When it becomes necessary for the parallel processor to perform a calculation based on a map, the control unit loads the map information of the shared memory into a predetermined address of an internal memory (23) provided in the parallel processor, provides the parallel processor with variables required for a calculation to obtain the control information as arguments, and obtains the control information based on the calculation result provided by the parallel processor.
The parallel calculation processor performs pre-calculation and stores the map interpolation value based on the map information stored at the specified address and the arguments provided by the control unit, and if a calculation result of a map interpolation value by pre-calculation has been stored corresponding to the arguments provided by the control unit at the time of actual calculation, it provides the calculation result to the control unit , and if the arguments provided by the control unit are outside the pre-calculated range, it notifies the control unit that the arguments are outside the range, and calculates the map interpolation value using either the control unit or the parallel calculation processor, which is predetermined depending on the number of dimensions and scale of the map .
前記並列演算処理器は、事前計算として引数及び当該引数周辺の演算を行う請求項1に記載された電子制御装置。 The electronic control device according to claim 1, wherein the parallel calculation processor performs calculations on arguments and their surroundings as pre-calculation. 記変数は、前記マップの軸として設定され、
前記並列演算処理器による引数周辺の範囲は、前記軸の特性に応じて設定されている請求項2に記載の電子制御装置。
The variables are set as axes of the map;
3. The electronic control device according to claim 2, wherein a range around an argument by the parallel processor is set according to characteristics of the axis.
前記制御部は、前記事前計算後に計算結果を受け取りたいタイミングで引数を送信することで事前計算による計算結果を受け取る請求項1から3のいずれか一項に記載の電子制御装置。 The electronic control device according to any one of claims 1 to 3, wherein the control unit receives the calculation result of the pre-calculation by sending arguments at a timing when the control unit desires to receive the calculation result after the pre-calculation. 前記並列演算処理器は、事前計算による計算結果の受け渡し先に応じて当該計算結果を記憶する記憶領域を変更する請求項4に記載の電子制御装置。 The electronic control device according to claim 4, wherein the parallel processor changes the memory area in which the pre-calculated calculation results are stored depending on the destination of the calculation results. 前記並列演算処理器は、実際の計算時に事前計算で与えられた引数に対応する計算結果を記憶していない場合は、今回与えられた引数に基づいて計算し、その計算結果を前記制御部に送信する請求項1から5のいずれか一項に記載の電子制御装置。 The electronic control device according to any one of claims 1 to 5, wherein, when the parallel arithmetic processor does not store the calculation result corresponding to the argument given in the pre-calculation at the time of the actual calculation, the parallel arithmetic processor performs the calculation based on the currently given argument and transmits the calculation result to the control unit. 前記並列演算処理器は、実際の計算時に事前計算で与えられた引数に対応する計算結果を記憶していない場合に今回与えられた引数に基づいて計算したときは、当該引数及び引数周辺を計算して記憶していた計算結果を更新する請求項6に記載の電子制御装置。 The electronic control device according to claim 6, wherein when the parallel processor performs a calculation based on the currently given argument in a case where the calculation result corresponding to the argument given in the pre-calculation is not stored at the time of the actual calculation, the parallel processor calculates the argument and its surroundings and updates the stored calculation result.
JP2021067735A 2021-04-13 2021-04-13 Electronic Control Unit Active JP7548111B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2021067735A JP7548111B2 (en) 2021-04-13 2021-04-13 Electronic Control Unit
DE102022108539.2A DE102022108539A1 (en) 2021-04-13 2022-04-08 ELECTRONIC CONTROL DEVICE

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021067735A JP7548111B2 (en) 2021-04-13 2021-04-13 Electronic Control Unit

Publications (2)

Publication Number Publication Date
JP2022162753A JP2022162753A (en) 2022-10-25
JP7548111B2 true JP7548111B2 (en) 2024-09-10

Family

ID=83361933

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021067735A Active JP7548111B2 (en) 2021-04-13 2021-04-13 Electronic Control Unit

Country Status (2)

Country Link
JP (1) JP7548111B2 (en)
DE (1) DE102022108539A1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004225668A (en) 2003-01-27 2004-08-12 Denso Corp Electronic control unit and memory device of electronic control unit
JP2016095796A (en) 2014-11-17 2016-05-26 日本電信電話株式会社 Arithmetic unit and arithmetic method
JP2018181144A (en) 2017-04-19 2018-11-15 株式会社デンソー Electronic control unit
JP2019200181A (en) 2018-05-18 2019-11-21 株式会社デンソー Gas flow rate meter and gas flow rate metering method
JP2021026753A (en) 2019-07-31 2021-02-22 ベイジン バイドゥ ネットコム サイエンス アンド テクノロジー カンパニー リミテッド Method, apparatus, device and computer-readable storage medium for reducing storage space of parameter table

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5597884A (en) * 1979-01-17 1980-07-25 Nagoya Dengenshiya:Kk Control system of thyristor power source for resistance welding machine
US5260898A (en) * 1992-03-13 1993-11-09 Sun Microsystems, Inc. Result cache for complex arithmetic units
JP3598521B2 (en) * 1992-09-11 2004-12-08 マツダ株式会社 Data table processing device
WO1996016505A2 (en) * 1994-11-10 1996-05-30 Brooktree Corporation System and method for generating video data and video control data in a computer system

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004225668A (en) 2003-01-27 2004-08-12 Denso Corp Electronic control unit and memory device of electronic control unit
JP2016095796A (en) 2014-11-17 2016-05-26 日本電信電話株式会社 Arithmetic unit and arithmetic method
JP2018181144A (en) 2017-04-19 2018-11-15 株式会社デンソー Electronic control unit
JP2019200181A (en) 2018-05-18 2019-11-21 株式会社デンソー Gas flow rate meter and gas flow rate metering method
US20210054799A1 (en) 2018-05-18 2021-02-25 Denso Corporation Gas flow rate measurement device and gas flow rate measurement method
JP2021026753A (en) 2019-07-31 2021-02-22 ベイジン バイドゥ ネットコム サイエンス アンド テクノロジー カンパニー リミテッド Method, apparatus, device and computer-readable storage medium for reducing storage space of parameter table

Also Published As

Publication number Publication date
DE102022108539A1 (en) 2022-10-13
JP2022162753A (en) 2022-10-25

Similar Documents

Publication Publication Date Title
JP7053891B2 (en) On-chip code breakpoint debugging method, on-chip processor and breakpoint-based chip debugging system
KR102496115B1 (en) Apparatus and Method of Altruistic Scheduling based on Reinforcement Learning
US20220222129A1 (en) System for parallel processing middleware node application algorithms using threads
CN111355779A (en) Service-based Internet of vehicles task unloading method and unloading device thereof
CN115098412A (en) Peripheral access controller, data access device and corresponding method, medium and chip
CN111679286A (en) A Laser Positioning System and Chip Based on Hardware Acceleration
JP7548111B2 (en) Electronic Control Unit
US5414856A (en) Multiprocessor shared resource management system implemented as a virtual task in one of the processors
CN111767995A (en) Computing method, device and related products
CN116052304B (en) Performance evaluation, performance optimization method, device, electronic device and storage medium
JP2012248114A (en) Information processing apparatus, method of controlling the same, and program
CN114143836B (en) Load balancing method, device and terminal based on edge computing gateway
CN103902443A (en) Program running performance analysis method and device
US20070157207A1 (en) Hardwired scheduler for low power wireless device processor and method for using the same
CN114936349A (en) Data processing device and method, processor, chip and computer equipment
CN110308988B (en) Dynamic scheduling method and system applied to heterogeneous computing platform
CN114826817B (en) Communication control method, electronic equipment and storage medium
WO2023013649A1 (en) Data cache device and program
JP7596951B2 (en) Electronic Control Unit
CN114450665A (en) Method for executing program
WO2020192587A1 (en) Artificial intelligence computing device and related product
CN118260035A (en) Task scheduling method, device, computer equipment and storage medium
CN112860417B (en) Data processing method, device, equipment, system and storage medium
JP7294226B2 (en) electronic controller
CN119988808A (en) Matrix multiplication pipeline calculation method, device, AI chip, electronic device and medium

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: 20240131

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240227

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240411

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: 20240730

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240812

R150 Certificate of patent or registration of utility model

Ref document number: 7548111

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150